Merge pull request #26 from duckietm/Dev

Dev
This commit is contained in:
DuckieTM
2026-03-25 07:49:15 +01:00
committed by GitHub
8 changed files with 631 additions and 361 deletions
+1 -1
View File
@@ -35,7 +35,7 @@ export interface IRoomCreator
updateRoomObjectFloorHeight(roomId: number, objectId: number, height: number): boolean; updateRoomObjectFloorHeight(roomId: number, objectId: number, height: number): boolean;
updateRoomObjectFloorExpiration(roomId: number, objectId: number, expires: number): boolean; updateRoomObjectFloorExpiration(roomId: number, objectId: number, expires: number): boolean;
updateRoomObjectWallExpiration(roomId: number, objectId: number, expires: number): boolean; updateRoomObjectWallExpiration(roomId: number, objectId: number, expires: number): boolean;
rollRoomObjectFloor(roomId: number, objectId: number, location: IVector3D, targetLocation: IVector3D, duration?: number, direction?: IVector3D): void; rollRoomObjectFloor(roomId: number, objectId: number, location: IVector3D, targetLocation: IVector3D, duration?: number, direction?: IVector3D, elapsed?: number, anchorObject?: IRoomObjectController, anchorOffset?: IVector3D): void;
addRoomObjectUser(roomId: number, objectId: number, location: IVector3D, direction: IVector3D, headDirection: number, type: number, figure: string): boolean; addRoomObjectUser(roomId: number, objectId: number, location: IVector3D, direction: IVector3D, headDirection: number, type: number, figure: string): boolean;
updateRoomObjectUserLocation(roomId: number, objectId: number, location: IVector3D, targetLocation: IVector3D, canStandUp?: boolean, baseY?: number, direction?: IVector3D, headDirection?: number, skipLocationFix?: boolean, isSlide?: boolean, duration?: number): boolean; updateRoomObjectUserLocation(roomId: number, objectId: number, location: IVector3D, targetLocation: IVector3D, canStandUp?: boolean, baseY?: number, direction?: IVector3D, headDirection?: number, skipLocationFix?: boolean, isSlide?: boolean, duration?: number): boolean;
updateRoomObjectUserAction(roomId: number, objectId: number, action: string, value: number, parameter?: string): boolean; updateRoomObjectUserAction(roomId: number, objectId: number, action: string, value: number, parameter?: string): boolean;
@@ -38,7 +38,7 @@ export class WiredUserMovementData extends ObjectRolling
export class WiredFurniMovementData extends ObjectRolling export class WiredFurniMovementData extends ObjectRolling
{ {
constructor(id: number, location: Vector3d, targetLocation: Vector3d, private _rotation: number, private _duration: number) constructor(id: number, location: Vector3d, targetLocation: Vector3d, private _rotation: number, private _duration: number, private _elapsed: number, private _anchorType: number, private _anchorId: number)
{ {
super(id, location, targetLocation, ObjectRolling.SLIDE); super(id, location, targetLocation, ObjectRolling.SLIDE);
} }
@@ -52,6 +52,21 @@ export class WiredFurniMovementData extends ObjectRolling
{ {
return this._duration; return this._duration;
} }
public get elapsed(): number
{
return this._elapsed;
}
public get anchorType(): number
{
return this._anchorType;
}
public get anchorId(): number
{
return this._anchorId;
}
} }
export class WiredWallItemMovementData export class WiredWallItemMovementData
@@ -163,13 +178,19 @@ export class WiredMovementsParser implements IMessageParser
const id = wrapper.readInt(); const id = wrapper.readInt();
const rotation = wrapper.readInt(); const rotation = wrapper.readInt();
const duration = wrapper.readInt(); const duration = wrapper.readInt();
const elapsed = wrapper.readInt();
const anchorType = wrapper.readInt();
const anchorId = wrapper.readInt();
this._furniMovements.push(new WiredFurniMovementData( this._furniMovements.push(new WiredFurniMovementData(
id, id,
new Vector3d(fromX, fromY, fromZ), new Vector3d(fromX, fromY, fromZ),
new Vector3d(toX, toY, toZ), new Vector3d(toX, toY, toZ),
rotation, rotation,
duration)); duration,
elapsed,
anchorType,
anchorId));
break; break;
} }
case 2: case 2:
+2 -2
View File
@@ -1816,13 +1816,13 @@ export class RoomEngine implements IRoomEngine, IRoomCreator, IRoomEngineService
if(roomOwnObject && roomOwnObject.logic && maskUpdate) roomOwnObject.logic.processUpdateMessage(maskUpdate); if(roomOwnObject && roomOwnObject.logic && maskUpdate) roomOwnObject.logic.processUpdateMessage(maskUpdate);
} }
public rollRoomObjectFloor(roomId: number, objectId: number, location: IVector3D, targetLocation: IVector3D, duration: number = ObjectMoveUpdateMessage.DEFAULT_DURATION, direction: IVector3D = null): void public rollRoomObjectFloor(roomId: number, objectId: number, location: IVector3D, targetLocation: IVector3D, duration: number = ObjectMoveUpdateMessage.DEFAULT_DURATION, direction: IVector3D = null, elapsed: number = 0, anchorObject: IRoomObjectController = null, anchorOffset: IVector3D = null): void
{ {
const object = this.getRoomObjectFloor(roomId, objectId); const object = this.getRoomObjectFloor(roomId, objectId);
if(!object) return; if(!object) return;
object.processUpdateMessage(new ObjectMoveUpdateMessage(location, targetLocation, direction, !!targetLocation, duration)); object.processUpdateMessage(new ObjectMoveUpdateMessage(location, targetLocation, direction, !!targetLocation, duration, elapsed, anchorObject, anchorOffset));
} }
public updateRoomObjectWallLocation(roomId: number, objectId: number, location: IVector3D): boolean public updateRoomObjectWallLocation(roomId: number, objectId: number, location: IVector3D): boolean
+156 -6
View File
@@ -1,5 +1,5 @@
import { AvatarGuideStatus, IConnection, IMessageEvent, IRoomCreator, IVector3D, LegacyDataType, ObjectRolling, PetType, RoomObjectType, RoomObjectUserType, RoomObjectVariable } from '@nitrots/api'; import { AvatarGuideStatus, IConnection, IMessageEvent, IRoomCreator, IRoomObjectController, IVector3D, LegacyDataType, ObjectRolling, PetType, RoomObjectType, RoomObjectUserType, RoomObjectVariable } from '@nitrots/api';
import { AreaHideMessageEvent, DiceValueMessageEvent, FloorHeightMapEvent, FurnitureAliasesComposer, FurnitureAliasesEvent, FurnitureDataEvent, FurnitureFloorAddEvent, FurnitureFloorDataParser, FurnitureFloorEvent, FurnitureFloorRemoveEvent, FurnitureFloorUpdateEvent, FurnitureWallAddEvent, FurnitureWallDataParser, FurnitureWallEvent, FurnitureWallRemoveEvent, FurnitureWallUpdateEvent, GetCommunication, GetRoomEntryDataMessageComposer, GuideSessionEndedMessageEvent, GuideSessionErrorMessageEvent, GuideSessionStartedMessageEvent, IgnoreResultEvent, ItemDataUpdateMessageEvent, ObjectsDataUpdateEvent, ObjectsRollingEvent, OneWayDoorStatusMessageEvent, PetExperienceEvent, PetFigureUpdateEvent, RoomEntryTileMessageEvent, RoomEntryTileMessageParser, RoomHeightMapEvent, RoomHeightMapUpdateEvent, RoomPaintEvent, RoomReadyMessageEvent, RoomUnitChatEvent, RoomUnitChatShoutEvent, RoomUnitChatWhisperEvent, RoomUnitDanceEvent, RoomUnitEffectEvent, RoomUnitEvent, RoomUnitExpressionEvent, RoomUnitHandItemEvent, RoomUnitIdleEvent, RoomUnitInfoEvent, RoomUnitNumberEvent, RoomUnitRemoveEvent, RoomUnitStatusEvent, RoomUnitStatusMessage, RoomUnitTypingEvent, RoomVisualizationSettingsEvent, UserInfoEvent, WiredMovementsEvent, WiredUserDirectionUpdateData, WiredUserMovementData, YouArePlayingGameEvent } from '@nitrots/communication'; import { AreaHideMessageEvent, DiceValueMessageEvent, FloorHeightMapEvent, FurnitureAliasesComposer, FurnitureAliasesEvent, FurnitureDataEvent, FurnitureFloorAddEvent, FurnitureFloorDataParser, FurnitureFloorEvent, FurnitureFloorRemoveEvent, FurnitureFloorUpdateEvent, FurnitureWallAddEvent, FurnitureWallDataParser, FurnitureWallEvent, FurnitureWallRemoveEvent, FurnitureWallUpdateEvent, GetCommunication, GetRoomEntryDataMessageComposer, GuideSessionEndedMessageEvent, GuideSessionErrorMessageEvent, GuideSessionStartedMessageEvent, IgnoreResultEvent, ItemDataUpdateMessageEvent, ObjectsDataUpdateEvent, ObjectsRollingEvent, OneWayDoorStatusMessageEvent, PetExperienceEvent, PetFigureUpdateEvent, RoomEntryTileMessageEvent, RoomEntryTileMessageParser, RoomHeightMapEvent, RoomHeightMapUpdateEvent, RoomPaintEvent, RoomReadyMessageEvent, RoomUnitChatEvent, RoomUnitChatShoutEvent, RoomUnitChatWhisperEvent, RoomUnitDanceEvent, RoomUnitEffectEvent, RoomUnitEvent, RoomUnitExpressionEvent, RoomUnitHandItemEvent, RoomUnitIdleEvent, RoomUnitInfoEvent, RoomUnitNumberEvent, RoomUnitRemoveEvent, RoomUnitStatusEvent, RoomUnitStatusMessage, RoomUnitTypingEvent, RoomVisualizationSettingsEvent, UserInfoEvent, WiredFurniMovementData, WiredMovementsEvent, WiredUserDirectionUpdateData, WiredUserMovementData, YouArePlayingGameEvent } from '@nitrots/communication';
import { GetRoomSessionManager, GetSessionDataManager } from '@nitrots/session'; import { GetRoomSessionManager, GetSessionDataManager } from '@nitrots/session';
import { Vector3d } from '@nitrots/utils'; import { Vector3d } from '@nitrots/utils';
import { GetRoomEngine } from './GetRoomEngine'; import { GetRoomEngine } from './GetRoomEngine';
@@ -9,6 +9,10 @@ import { FurnitureStackingHeightMap, LegacyWallGeometry } from './utils';
export class RoomMessageHandler export class RoomMessageHandler
{ {
private static WIRED_FURNI_ANCHOR_NONE = 0;
private static WIRED_FURNI_ANCHOR_USER = 1;
private static WIRED_FURNI_ANCHOR_FURNI = 2;
private static ROOM_USER_WALK_DURATION = 500;
private static WIRED_MOVEMENT_STATUS_GRACE = 250; private static WIRED_MOVEMENT_STATUS_GRACE = 250;
private static WIRED_MOVEMENT_Z_EPSILON = 0.01; private static WIRED_MOVEMENT_Z_EPSILON = 0.01;
@@ -18,6 +22,7 @@ export class RoomMessageHandler
private _latestEntryTileEvent: RoomEntryTileMessageEvent = null; private _latestEntryTileEvent: RoomEntryTileMessageEvent = null;
private _messageEvents: IMessageEvent[] = []; private _messageEvents: IMessageEvent[] = [];
private _activeWiredUserMovements = new Map<number, { expiresAt: number, targetX: number, targetY: number, targetZ: number }>(); private _activeWiredUserMovements = new Map<number, { expiresAt: number, targetX: number, targetY: number, targetZ: number }>();
private _activeRoomUserWalks = new Map<number, { startedAt: number, targetX: number, targetY: number, targetZ: number, duration: number }>();
private _currentRoomId: number = 0; private _currentRoomId: number = 0;
private _ownUserId: number = 0; private _ownUserId: number = 0;
@@ -104,6 +109,7 @@ export class RoomMessageHandler
this._roomEngine = null; this._roomEngine = null;
this._latestEntryTileEvent = null; this._latestEntryTileEvent = null;
this._activeWiredUserMovements.clear(); this._activeWiredUserMovements.clear();
this._activeRoomUserWalks.clear();
} }
public setRoomId(id: number): void public setRoomId(id: number): void
@@ -116,6 +122,7 @@ export class RoomMessageHandler
this._currentRoomId = id; this._currentRoomId = id;
this._latestEntryTileEvent = null; this._latestEntryTileEvent = null;
this._activeWiredUserMovements.clear(); this._activeWiredUserMovements.clear();
this._activeRoomUserWalks.clear();
} }
public clearRoomId(): void public clearRoomId(): void
@@ -123,6 +130,7 @@ export class RoomMessageHandler
this._currentRoomId = 0; this._currentRoomId = 0;
this._latestEntryTileEvent = null; this._latestEntryTileEvent = null;
this._activeWiredUserMovements.clear(); this._activeWiredUserMovements.clear();
this._activeRoomUserWalks.clear();
} }
private onUserInfoEvent(event: UserInfoEvent): void private onUserInfoEvent(event: UserInfoEvent): void
@@ -404,13 +412,18 @@ export class RoomMessageHandler
{ {
if(!movement) continue; if(!movement) continue;
const resolvedMovement = this.resolveAnchoredFurniMovement(movement);
this._roomEngine.rollRoomObjectFloor( this._roomEngine.rollRoomObjectFloor(
this._currentRoomId, this._currentRoomId,
movement.id, movement.id,
movement.location, resolvedMovement.location,
movement.targetLocation, resolvedMovement.targetLocation,
movement.duration, resolvedMovement.duration,
new Vector3d(movement.rotation)); new Vector3d(movement.rotation),
resolvedMovement.elapsed,
resolvedMovement.anchorObject,
resolvedMovement.anchorOffset);
} }
} }
@@ -449,6 +462,90 @@ export class RoomMessageHandler
} }
} }
private resolveAnchoredFurniMovement(movement: WiredFurniMovementData): { location: IVector3D, targetLocation: IVector3D, duration: number, elapsed: number, anchorObject: IRoomObjectController, anchorOffset: IVector3D }
{
if(!movement || !movement.anchorType || (movement.anchorType === RoomMessageHandler.WIRED_FURNI_ANCHOR_NONE))
{
return {
location: movement.location,
targetLocation: movement.targetLocation,
duration: movement.duration,
elapsed: movement.elapsed,
anchorObject: null,
anchorOffset: null
};
}
const anchorObject = this.getWiredFurniAnchorObject(movement);
const activeUserWalk = (movement.anchorType === RoomMessageHandler.WIRED_FURNI_ANCHOR_USER)
? this.getActiveRoomUserWalk(movement.anchorId)
: null;
if(activeUserWalk)
{
const walkElapsed = Math.max(0, Math.min(activeUserWalk.duration, (Date.now() - activeUserWalk.startedAt)));
return {
location: movement.location,
targetLocation: new Vector3d(activeUserWalk.targetX, activeUserWalk.targetY, activeUserWalk.targetZ),
duration: activeUserWalk.duration,
elapsed: walkElapsed,
anchorObject: null,
anchorOffset: null
};
}
if(!anchorObject)
{
return {
location: movement.location,
targetLocation: movement.targetLocation,
duration: movement.duration,
elapsed: movement.elapsed,
anchorObject: null,
anchorOffset: null
};
}
const anchorLocation = anchorObject.getLocation();
if(!anchorLocation)
{
return {
location: movement.location,
targetLocation: movement.targetLocation,
duration: movement.duration,
elapsed: movement.elapsed,
anchorObject: null,
anchorOffset: null
};
}
return {
location: new Vector3d(anchorLocation.x, anchorLocation.y, anchorLocation.z),
targetLocation: movement.targetLocation,
duration: Math.max(1, movement.duration - Math.max(0, movement.elapsed)),
elapsed: 0,
anchorObject,
anchorOffset: new Vector3d(0, 0, movement.location.z - anchorLocation.z)
};
}
private getWiredFurniAnchorObject(movement: WiredFurniMovementData)
{
if(!movement || !movement.anchorId) return null;
switch(movement.anchorType)
{
case RoomMessageHandler.WIRED_FURNI_ANCHOR_USER:
return this._roomEngine.getRoomObjectUser(this._currentRoomId, movement.anchorId);
case RoomMessageHandler.WIRED_FURNI_ANCHOR_FURNI:
return this._roomEngine.getRoomObjectFloor(this._currentRoomId, movement.anchorId);
default:
return null;
}
}
private applyWiredUserMovement(movement: WiredUserMovementData): void private applyWiredUserMovement(movement: WiredUserMovementData): void
{ {
const isSlide = (movement.movementType === ObjectRolling.SLIDE); const isSlide = (movement.movementType === ObjectRolling.SLIDE);
@@ -842,6 +939,7 @@ export class RoomMessageHandler
{ {
if(!(event instanceof RoomUnitRemoveEvent) || !event.connection || !this._roomEngine) return; if(!(event instanceof RoomUnitRemoveEvent) || !event.connection || !this._roomEngine) return;
this._activeRoomUserWalks.delete(event.getParser().unitId);
this._roomEngine.removeRoomObjectUser(this._currentRoomId, event.getParser().unitId); this._roomEngine.removeRoomObjectUser(this._currentRoomId, event.getParser().unitId);
this.updateGuideMarker(); this.updateGuideMarker();
@@ -876,6 +974,8 @@ export class RoomMessageHandler
if(status.didMove) goal = new Vector3d(status.targetX, status.targetY, status.targetZ); if(status.didMove) goal = new Vector3d(status.targetX, status.targetY, status.targetZ);
this.trackRoomUserWalkStatus(status);
if(!this.shouldSuppressWiredStatusLocation(status)) if(!this.shouldSuppressWiredStatusLocation(status))
{ {
this._roomEngine.updateRoomObjectUserLocation(this._currentRoomId, status.id, location, goal, status.canStandUp, height, direction, status.headDirection); this._roomEngine.updateRoomObjectUserLocation(this._currentRoomId, status.id, location, goal, status.canStandUp, height, direction, status.headDirection);
@@ -958,6 +1058,56 @@ export class RoomMessageHandler
this.updateGuideMarker(); this.updateGuideMarker();
} }
private trackRoomUserWalkStatus(status: RoomUnitStatusMessage): void
{
if(!status) return;
if(status.didMove)
{
this._activeRoomUserWalks.set(status.id, {
startedAt: Date.now(),
targetX: status.targetX,
targetY: status.targetY,
targetZ: status.targetZ,
duration: RoomMessageHandler.ROOM_USER_WALK_DURATION
});
return;
}
const activeWalk = this._activeRoomUserWalks.get(status.id);
if(activeWalk)
{
const walkExpiresAt = (activeWalk.startedAt + activeWalk.duration + RoomMessageHandler.WIRED_MOVEMENT_STATUS_GRACE);
const reachedTrackedTarget = ((status.x === activeWalk.targetX)
&& (status.y === activeWalk.targetY)
&& (Math.abs(status.z - activeWalk.targetZ) <= RoomMessageHandler.WIRED_MOVEMENT_Z_EPSILON));
if(reachedTrackedTarget && (Date.now() < walkExpiresAt)) return;
}
this._activeRoomUserWalks.delete(status.id);
}
private getActiveRoomUserWalk(id: number): { startedAt: number, targetX: number, targetY: number, targetZ: number, duration: number }
{
const activeWalk = this._activeRoomUserWalks.get(id);
if(!activeWalk) return null;
const walkExpiresAt = (activeWalk.startedAt + activeWalk.duration + RoomMessageHandler.WIRED_MOVEMENT_STATUS_GRACE);
if(Date.now() >= walkExpiresAt)
{
this._activeRoomUserWalks.delete(id);
return null;
}
return activeWalk;
}
private onRoomUnitChatEvent(event: RoomUnitChatEvent): void private onRoomUnitChatEvent(event: RoomUnitChatEvent): void
{ {
if(!event.connection || !this._roomEngine) return; if(!event.connection || !this._roomEngine) return;
@@ -9,7 +9,7 @@ export class ObjectAvatarUpdateMessage extends ObjectMoveUpdateMessage
constructor(location: IVector3D, targetLocation: IVector3D, direction: IVector3D, headDirection: number, canStandUp: boolean, baseY: number, isSlide: boolean = false, duration: number = ObjectMoveUpdateMessage.DEFAULT_DURATION) constructor(location: IVector3D, targetLocation: IVector3D, direction: IVector3D, headDirection: number, canStandUp: boolean, baseY: number, isSlide: boolean = false, duration: number = ObjectMoveUpdateMessage.DEFAULT_DURATION)
{ {
super(location, targetLocation, direction, isSlide, duration); super(location, targetLocation, direction, isSlide, duration, 0);
this._headDirection = headDirection; this._headDirection = headDirection;
this._canStandUp = canStandUp; this._canStandUp = canStandUp;
@@ -1,4 +1,4 @@
import { IVector3D } from '@nitrots/api'; import { IRoomObjectController, IVector3D } from '@nitrots/api';
import { RoomObjectUpdateMessage } from './RoomObjectUpdateMessage'; import { RoomObjectUpdateMessage } from './RoomObjectUpdateMessage';
export class ObjectMoveUpdateMessage extends RoomObjectUpdateMessage export class ObjectMoveUpdateMessage extends RoomObjectUpdateMessage
@@ -8,14 +8,20 @@ export class ObjectMoveUpdateMessage extends RoomObjectUpdateMessage
private _targetLocation: IVector3D; private _targetLocation: IVector3D;
private _isSlide: boolean; private _isSlide: boolean;
private _duration: number; private _duration: number;
private _elapsed: number;
private _anchorObject: IRoomObjectController;
private _anchorOffset: IVector3D;
constructor(location: IVector3D, targetLocation: IVector3D, direction: IVector3D, isSlide: boolean = false, duration: number = ObjectMoveUpdateMessage.DEFAULT_DURATION) constructor(location: IVector3D, targetLocation: IVector3D, direction: IVector3D, isSlide: boolean = false, duration: number = ObjectMoveUpdateMessage.DEFAULT_DURATION, elapsed: number = 0, anchorObject: IRoomObjectController = null, anchorOffset: IVector3D = null)
{ {
super(location, direction); super(location, direction);
this._targetLocation = targetLocation; this._targetLocation = targetLocation;
this._isSlide = isSlide; this._isSlide = isSlide;
this._duration = duration; this._duration = duration;
this._elapsed = elapsed;
this._anchorObject = anchorObject;
this._anchorOffset = anchorOffset;
} }
public get targetLocation(): IVector3D public get targetLocation(): IVector3D
@@ -34,4 +40,19 @@ export class ObjectMoveUpdateMessage extends RoomObjectUpdateMessage
{ {
return this._duration; return this._duration;
} }
public get elapsed(): number
{
return this._elapsed;
}
public get anchorObject(): IRoomObjectController
{
return this._anchorObject;
}
public get anchorOffset(): IVector3D
{
return this._anchorOffset;
}
} }
@@ -12,6 +12,8 @@ export class MovingObjectLogic extends RoomObjectLogicBase
private _location: Vector3d; private _location: Vector3d;
private _locationDelta: Vector3d; private _locationDelta: Vector3d;
private _followObject: IRoomObjectController;
private _followOffset: Vector3d;
private _lastUpdateTime: number; private _lastUpdateTime: number;
private _changeTime: number; private _changeTime: number;
private _updateInterval: number; private _updateInterval: number;
@@ -24,6 +26,8 @@ export class MovingObjectLogic extends RoomObjectLogicBase
this._location = new Vector3d(); this._location = new Vector3d();
this._locationDelta = new Vector3d(); this._locationDelta = new Vector3d();
this._followObject = null;
this._followOffset = new Vector3d();
this._lastUpdateTime = 0; this._lastUpdateTime = 0;
this._changeTime = 0; this._changeTime = 0;
this._updateInterval = MovingObjectLogic.DEFAULT_UPDATE_INTERVAL; this._updateInterval = MovingObjectLogic.DEFAULT_UPDATE_INTERVAL;
@@ -75,7 +79,12 @@ export class MovingObjectLogic extends RoomObjectLogicBase
if(difference > this._updateInterval) difference = this._updateInterval; if(difference > this._updateInterval) difference = this._updateInterval;
if(this._locationDelta.length > 0) if(this._followObject)
{
vector.assign(this._followObject.getLocation());
vector.add(this._followOffset);
}
else if(this._locationDelta.length > 0)
{ {
vector.assign(this._locationDelta); vector.assign(this._locationDelta);
vector.multiply((difference / this._updateInterval)); vector.multiply((difference / this._updateInterval));
@@ -92,6 +101,13 @@ export class MovingObjectLogic extends RoomObjectLogicBase
if(difference === this._updateInterval) if(difference === this._updateInterval)
{ {
if(this._followObject)
{
this._location.assign(this.object.getLocation());
this._followObject = null;
this._followOffset.assign(new Vector3d());
}
this._locationDelta.x = 0; this._locationDelta.x = 0;
this._locationDelta.y = 0; this._locationDelta.y = 0;
this._locationDelta.z = 0; this._locationDelta.z = 0;
@@ -112,6 +128,18 @@ export class MovingObjectLogic extends RoomObjectLogicBase
{ {
if(!message) return; if(!message) return;
if(message instanceof ObjectMoveUpdateMessage)
{
const requiresCustomMoveHandling = !!message.anchorObject || (message.elapsed > 0);
if(requiresCustomMoveHandling)
{
if(this.object && message.direction) this.object.setDirection(message.direction);
return this.processMoveMessage(message);
}
}
super.processUpdateMessage(message); super.processUpdateMessage(message);
if(message.location) this._location.assign(message.location); if(message.location) this._location.assign(message.location);
@@ -123,11 +151,61 @@ export class MovingObjectLogic extends RoomObjectLogicBase
{ {
if(!message || !this.object || !message.location) return; if(!message || !this.object || !message.location) return;
this._changeTime = this._lastUpdateTime; const hadActiveInterpolation = this.isInterpolating();
const startLocation = hadActiveInterpolation
? this.object.getLocation()
: message.location;
const elapsed = Math.max(0, Math.min(message.duration, message.elapsed));
this._location.assign(startLocation);
this.object.setLocation(this._location);
this._followObject = message.anchorObject;
if(message.anchorOffset) this._followOffset.assign(message.anchorOffset);
else this._followOffset.assign(new Vector3d());
this._changeTime = (this._lastUpdateTime - elapsed);
this.updateInterval = message.duration; this.updateInterval = message.duration;
this._locationDelta.assign(message.targetLocation); this._locationDelta.assign(message.targetLocation);
this._locationDelta.subtract(this._location); this._locationDelta.subtract(this._location);
if(this._followObject)
{
const vector = MovingObjectLogic.TEMP_VECTOR;
vector.assign(this._followObject.getLocation());
vector.add(this._followOffset);
const locationOffset = this.getLocationOffset();
if(locationOffset) vector.add(locationOffset);
this.object.setLocation(vector);
}
else if(elapsed > 0)
{
const vector = MovingObjectLogic.TEMP_VECTOR;
vector.assign(this._locationDelta);
vector.multiply((elapsed / this._updateInterval));
vector.add(this._location);
const locationOffset = this.getLocationOffset();
if(locationOffset) vector.add(locationOffset);
this.object.setLocation(vector);
}
else if(hadActiveInterpolation && message.isSlide)
{
this.object.setLocation(this._location);
}
}
private isInterpolating(): boolean
{
return (this._locationDelta.length > 0) && ((this.time - this._changeTime) < this._updateInterval);
} }
protected getLocationOffset(): IVector3D protected getLocationOffset(): IVector3D
+345 -345
View File
@@ -357,10 +357,10 @@
"@emnapi/runtime" "^1.7.1" "@emnapi/runtime" "^1.7.1"
"@tybys/wasm-util" "^0.10.1" "@tybys/wasm-util" "^0.10.1"
"@oxc-project/types@=0.120.0": "@oxc-project/types@=0.122.0":
version "0.120.0" version "0.122.0"
resolved "https://registry.yarnpkg.com/@oxc-project/types/-/types-0.120.0.tgz#af521b0e689dd0eaa04fe4feef9b68d98b74783d" resolved "https://registry.yarnpkg.com/@oxc-project/types/-/types-0.122.0.tgz#2f4e77a3b183c87b2a326affd703ef71ba836601"
integrity sha512-k1YNu55DuvAip/MGE1FTsIuU3FUCn6v/ujG9V7Nq5Df/kX2CWb13hhwD0lmJGMGqE+bE1MXvv9SZVnMzEXlWcg== integrity sha512-oLAl5kBpV4w69UtFZ9xqcmTi+GENWOcPF7FCrczTiBbmC0ibXxCwyvZGbO39rCVEuLGAZM84DH0pUIyyv/YJzA==
"@pixi/colord@^2.9.6": "@pixi/colord@^2.9.6":
version "2.9.6" version "2.9.6"
@@ -372,87 +372,87 @@
resolved "https://registry.yarnpkg.com/@pixi/gif/-/gif-3.0.1.tgz#2709d6559d316161cde1821b0f29cc2c05f88794" resolved "https://registry.yarnpkg.com/@pixi/gif/-/gif-3.0.1.tgz#2709d6559d316161cde1821b0f29cc2c05f88794"
integrity sha512-oGl0nkbFAe1vaRLyIvGbJc3fcIrS8vF1E00cwjiV+9f1pYe072D+yijJxHsgYnXs6jdzERh+D0MqSrEag0jRzg== integrity sha512-oGl0nkbFAe1vaRLyIvGbJc3fcIrS8vF1E00cwjiV+9f1pYe072D+yijJxHsgYnXs6jdzERh+D0MqSrEag0jRzg==
"@rolldown/binding-android-arm64@1.0.0-rc.10": "@rolldown/binding-android-arm64@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.10.tgz#0bbd3380f49a6d0dc96c9b32fb7dad26ae0dfaa7" resolved "https://registry.yarnpkg.com/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.11.tgz#25a584227ed97239fd564451c0db2c359751b42a"
integrity sha512-jOHxwXhxmFKuXztiu1ORieJeTbx5vrTkcOkkkn2d35726+iwhrY1w/+nYY/AGgF12thg33qC3R1LMBF5tHTZHg== integrity sha512-SJ+/g+xNnOh6NqYxD0V3uVN4W3VfnrGsC9/hoglicgTNfABFG9JjISvkkU0dNY84MNHLWyOgxP9v9Y9pX4S7+A==
"@rolldown/binding-darwin-arm64@1.0.0-rc.10": "@rolldown/binding-darwin-arm64@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.10.tgz#a30b051784fbb13635e652ba4041c6ce7a4ce7ab" resolved "https://registry.yarnpkg.com/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.11.tgz#dcfa96c4d8c7baa47f5b90294ce8ebf1b0b1dbf9"
integrity sha512-gED05Teg/vtTZbIJBc4VNMAxAFDUPkuO/rAIyyxZjTj1a1/s6z5TII/5yMGZ0uLRCifEtwUQn8OlYzuYc0m70w== integrity sha512-7WQgR8SfOPwmDZGFkThUvsmd/nwAWv91oCO4I5LS7RKrssPZmOt7jONN0cW17ydGC1n/+puol1IpoieKqQidmg==
"@rolldown/binding-darwin-x64@1.0.0-rc.10": "@rolldown/binding-darwin-x64@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.10.tgz#2d9dea982d5be90b95b6d8836ff26a4b0959d94b" resolved "https://registry.yarnpkg.com/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.11.tgz#6e751ea2067cacee0c94f0e8b087761dde62f9ea"
integrity sha512-rI15NcM1mA48lqrIxVkHfAqcyFLcQwyXWThy+BQ5+mkKKPvSO26ir+ZDp36AgYoYVkqvMcdS8zOE6SeBsR9e8A== integrity sha512-39Ks6UvIHq4rEogIfQBoBRusj0Q0nPVWIvqmwBLaT6aqQGIakHdESBVOPRRLacy4WwUPIx4ZKzfZ9PMW+IeyUQ==
"@rolldown/binding-freebsd-x64@1.0.0-rc.10": "@rolldown/binding-freebsd-x64@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.10.tgz#4efc3aca43ae4dfb90729eeca6e84ef6e6b38c4a" resolved "https://registry.yarnpkg.com/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.11.tgz#b7582b959398c5871034b94ba0a8ecde0425a8e7"
integrity sha512-XZRXHdTa+4ME1MuDVp021+doQ+z6Ei4CCFmNc5/sKbqb8YmkiJdj8QKlV3rCI0AJtAeSB5n0WGPuJWNL9p/L2w== integrity sha512-jfsm0ZHfhiqrvWjJAmzsqiIFPz5e7mAoCOPBNTcNgkiid/LaFKiq92+0ojH+nmJmKYkre4t71BWXUZDNp7vsag==
"@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.10": "@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.10.tgz#4a19a5d24537e925b25e9583b6cd575b2ad9fa27" resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.11.tgz#3b8c5e071d6a0ed1cb1880c1948c6fece553502a"
integrity sha512-R0SQMRluISSLzFE20sPWYHVmJdDQnRyc/FzSCN72BqQmh2SOZUFG+N3/vBZpR4C6WpEUVYJLrYUXaj43sJsNLA== integrity sha512-zjQaUtSyq1nVe3nxmlSCuR96T1LPlpvmJ0SZy0WJFEsV4kFbXcq2u68L4E6O0XeFj4aex9bEauqjW8UQBeAvfQ==
"@rolldown/binding-linux-arm64-gnu@1.0.0-rc.10": "@rolldown/binding-linux-arm64-gnu@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.10.tgz#01a41e5e905838353ae9a3da10dc8242dcd61453" resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.11.tgz#2533165620137b077ae4ede92b752a63cd85cfcb"
integrity sha512-Y1reMrV/o+cwpduYhJuOE3OMKx32RMYCidf14y+HssARRmhDuWXJ4yVguDg2R/8SyyGNo+auzz64LnPK9Hq6jg== integrity sha512-WMW1yE6IOnehTcFE9eipFkm3XN63zypWlrJQ2iF7NrQ9b2LDRjumFoOGJE8RJJTJCTBAdmLMnJ8uVitACUUo1Q==
"@rolldown/binding-linux-arm64-musl@1.0.0-rc.10": "@rolldown/binding-linux-arm64-musl@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.10.tgz#bd059e5f83471de29ce35b0ba254995d8091ca40" resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.11.tgz#b04cf5b806a012027a4e8b139e0f86b2ff7621c0"
integrity sha512-vELN+HNb2IzuzSBUOD4NHmP9yrGwl1DVM29wlQvx1OLSclL0NgVWnVDKl/8tEks79EFek/kebQKnNJkIAA4W2g== integrity sha512-jfndI9tsfm4APzjNt6QdBkYwre5lRPUgHeDHoI7ydKUuJvz3lZeCfMsI56BZj+7BYqiKsJm7cfd/6KYV7ubrBg==
"@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.10": "@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.10.tgz#fe726a540631015f269a989c0cfb299283190390" resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.11.tgz#bda9c11fe03482033d5dac6a943802b3e7579550"
integrity sha512-ZqrufYTgzxbHwpqOjzSsb0UV/aV2TFIY5rP8HdsiPTv/CuAgCRjM6s9cYFwQ4CNH+hf9Y4erHW1GjZuZ7WoI7w== integrity sha512-ZlFgw46NOAGMgcdvdYwAGu2Q+SLFA9LzbJLW+iyMOJyhj5wk6P3KEE9Gct4xWwSzFoPI7JCdYmYMzVtlgQ+zfw==
"@rolldown/binding-linux-s390x-gnu@1.0.0-rc.10": "@rolldown/binding-linux-s390x-gnu@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.10.tgz#825ced028bad3f1fa9ce83b1f3dac76e0424367f" resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.11.tgz#55daa2d35f92f62e958fc44e12db1c16e1f271c5"
integrity sha512-gSlmVS1FZJSRicA6IyjoRoKAFK7IIHBs7xJuHRSmjImqk3mPPWbR7RhbnfH2G6bcmMEllCt2vQ/7u9e6bBnByg== integrity sha512-hIOYmuT6ofM4K04XAZd3OzMySEO4K0/nc9+jmNcxNAxRi6c5UWpqfw3KMFV4MVFWL+jQsSh+bGw2VqmaPMTLyw==
"@rolldown/binding-linux-x64-gnu@1.0.0-rc.10": "@rolldown/binding-linux-x64-gnu@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.10.tgz#b700dae69274aa3d54a16ca5e00e30f47a089119" resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.11.tgz#8ca1abf607bbe2f7fdd6f6416192937dc9ea1e54"
integrity sha512-eOCKUpluKgfObT2pHjztnaWEIbUabWzk3qPZ5PuacuPmr4+JtQG4k2vGTY0H15edaTnicgU428XW/IH6AimcQw== integrity sha512-qXBQQO9OvkjjQPLdUVr7Nr2t3QTZI7s4KZtfw7HzBgjbmAPSFwSv4rmET9lLSgq3rH/ndA3ngv3Qb8l2njoPNA==
"@rolldown/binding-linux-x64-musl@1.0.0-rc.10": "@rolldown/binding-linux-x64-musl@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.10.tgz#eb875660ad68a2348acab36a7005699e87f6e9dd" resolved "https://registry.yarnpkg.com/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.11.tgz#36a52beee8ac97a79d1ed8f1b94fab677e3e4d11"
integrity sha512-Xdf2jQbfQowJnLcgYfD/m0Uu0Qj5OdxKallD78/IPPfzaiaI4KRAwZzHcKQ4ig1gtg1SuzC7jovNiM2TzQsBXA== integrity sha512-/tpFfoSTzUkH9LPY+cYbqZBDyyX62w5fICq9qzsHLL8uTI6BHip3Q9Uzft0wylk/i8OOwKik8OxW+QAhDmzwmg==
"@rolldown/binding-openharmony-arm64@1.0.0-rc.10": "@rolldown/binding-openharmony-arm64@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.10.tgz#72aa24b412f83025087bcf83ce09634b2bd93c5c" resolved "https://registry.yarnpkg.com/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.11.tgz#91c74fd23b3f3f3942fe4b3aefc9428ecbaa55fd"
integrity sha512-o1hYe8hLi1EY6jgPFyxQgQ1wcycX+qz8eEbVmot2hFkgUzPxy9+kF0u0NIQBeDq+Mko47AkaFFaChcvZa9UX9Q== integrity sha512-mcp3Rio2w72IvdZG0oQ4bM2c2oumtwHfUfKncUM6zGgz0KgPz4YmDPQfnXEiY5t3+KD/i8HG2rOB/LxdmieK2g==
"@rolldown/binding-wasm32-wasi@1.0.0-rc.10": "@rolldown/binding-wasm32-wasi@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.10.tgz#7f3303a96c5dc01d1f4c539b1dcbc16392c6f17d" resolved "https://registry.yarnpkg.com/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.11.tgz#6520bafe57ff1cd2fb45f8f22b1cb6d57be44e79"
integrity sha512-Ugv9o7qYJudqQO5Y5y2N2SOo6S4WiqiNOpuQyoPInnhVzCY+wi/GHltcLHypG9DEUYMB0iTB/huJrpadiAcNcA== integrity sha512-LXk5Hii1Ph9asuGRjBuz8TUxdc1lWzB7nyfdoRgI0WGPZKmCxvlKk8KfYysqtr4MfGElu/f/pEQRh8fcEgkrWw==
dependencies: dependencies:
"@napi-rs/wasm-runtime" "^1.1.1" "@napi-rs/wasm-runtime" "^1.1.1"
"@rolldown/binding-win32-arm64-msvc@1.0.0-rc.10": "@rolldown/binding-win32-arm64-msvc@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.10.tgz#3419144a04ad12c69c48536b01fc21ac9d87ecf4" resolved "https://registry.yarnpkg.com/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.11.tgz#73dd1c4737473c8270b61cd2e42b05a34453ffc0"
integrity sha512-7UODQb4fQUNT/vmgDZBl3XOBAIOutP5R3O/rkxg0aLfEGQ4opbCgU5vOw/scPe4xOqBwL9fw7/RP1vAMZ6QlAQ== integrity sha512-dDwf5otnx0XgRY1yqxOC4ITizcdzS/8cQ3goOWv3jFAo4F+xQYni+hnMuO6+LssHHdJW7+OCVL3CoU4ycnh35Q==
"@rolldown/binding-win32-x64-msvc@1.0.0-rc.10": "@rolldown/binding-win32-x64-msvc@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.10.tgz#09bee46e6a32c6086beeabc3da12e67be714f882" resolved "https://registry.yarnpkg.com/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.11.tgz#4d922aa6dd6bf27c73eba93fec9a0aed62549095"
integrity sha512-PYxKHMVHOb5NJuDL53vBUl1VwUjymDcYI6rzpIni0C9+9mTiJedvUxSk7/RPp7OOAm3v+EjgMu9bIy3N6b408w== integrity sha512-LN4/skhSggybX71ews7dAj6r2geaMJfm3kMbK2KhFMg9B10AZXnKoLCVVgzhMHL0S+aKtr4p8QbAW8k+w95bAA==
"@rolldown/pluginutils@1.0.0-rc.10": "@rolldown/pluginutils@1.0.0-rc.11":
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.10.tgz#eed997f37f928a3300bbe2161f42687d8a3ae759" resolved "https://registry.yarnpkg.com/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.11.tgz#110d8cc72990c4e36a79791eeafe7cca979e00c9"
integrity sha512-UkVDEFk1w3mveXeKgaTuYfKWtPbvgck1dT8TUG3bnccrH0XtLTuAyfCoks4Q/M5ZGToSVJTIQYCzy2g/atAOeg== integrity sha512-xQO9vbwBecJRv9EUcQ/y0dzSTJgA7Q6UVN7xp6B81+tBGSLVAK03yJ9NkJaUA7JFD91kbjxRSC/mDnmvXzbHoQ==
"@rollup/plugin-typescript@^11.1.6": "@rollup/plugin-typescript@^11.1.6":
version "11.1.6" version "11.1.6"
@@ -471,130 +471,130 @@
estree-walker "^2.0.2" estree-walker "^2.0.2"
picomatch "^4.0.2" picomatch "^4.0.2"
"@rollup/rollup-android-arm-eabi@4.59.1": "@rollup/rollup-android-arm-eabi@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.59.1.tgz#293c7ace931724ea0c893c40b7bfcdce13de1798" resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.60.0.tgz#7e158ddfc16f78da99c0d5ccbae6cae403ef3284"
integrity sha512-xB0b51TB7IfDEzAojXahmr+gfA00uYVInJGgNNkeQG6RPnCPGr7udsylFLTubuIUSRE6FkcI1NElyRt83PP5oQ== integrity sha512-WOhNW9K8bR3kf4zLxbfg6Pxu2ybOUbB2AjMDHSQx86LIF4rH4Ft7vmMwNt0loO0eonglSNy4cpD3MKXXKQu0/A==
"@rollup/rollup-android-arm64@4.59.1": "@rollup/rollup-android-arm64@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.59.1.tgz#d515db16d43c1422b3156af16cccffd9d287cd2e" resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.60.0.tgz#49f4ae0e22b6f9ffbcd3818b9a0758fa2d10b1cd"
integrity sha512-XOjPId0qwSDKHaIsdzHJtKCxX0+nH8MhBwvrNsT7tVyKmdTx1jJ4XzN5RZXCdTzMpufLb+B8llTC0D8uCrLhcw== integrity sha512-u6JHLll5QKRvjciE78bQXDmqRqNs5M/3GVqZeMwvmjaNODJih/WIrJlFVEihvV0MiYFmd+ZyPr9wxOVbPAG2Iw==
"@rollup/rollup-darwin-arm64@4.59.1": "@rollup/rollup-darwin-arm64@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.59.1.tgz#fc78aba712b5551932d6fa0745c9dbff43d9d26d" resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.60.0.tgz#bb200269069acf5c1c4d79ad142524f77e8b8236"
integrity sha512-vQuRd28p0gQpPrS6kppd8IrWmFo42U8Pz1XLRjSZXq5zCqyMDYFABT7/sywL11mO1EL10Qhh7MVPEwkG8GiBeg== integrity sha512-qEF7CsKKzSRc20Ciu2Zw1wRrBz4g56F7r/vRwY430UPp/nt1x21Q/fpJ9N5l47WWvJlkNCPJz3QRVw008fi7yA==
"@rollup/rollup-darwin-x64@4.59.1": "@rollup/rollup-darwin-x64@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.59.1.tgz#7896c8ee8345e41e85f1353225ce661e3c01fc9a" resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.60.0.tgz#1bf7a92b27ebdd5e0d1d48503c7811160773be1a"
integrity sha512-x6VG6U29+Ivlnajrg1IHdzXeAwSoEHBFVO+CtC9Brugx6de712CUJobRUxsIA0KYrQvCmzNrMPFTT1A4CCqNTg== integrity sha512-WADYozJ4QCnXCH4wPB+3FuGmDPoFseVCUrANmA5LWwGmC6FL14BWC7pcq+FstOZv3baGX65tZ378uT6WG8ynTw==
"@rollup/rollup-freebsd-arm64@4.59.1": "@rollup/rollup-freebsd-arm64@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.59.1.tgz#ccab030f0e40371ce6087de438e54726da337564" resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.60.0.tgz#5ccf537b99c5175008444702193ad0b1c36f7f16"
integrity sha512-Sgi0Uo6t1YCHJMNO3Y8+bm+SvOanUGkoZKn/VJPwYUe2kp31X5KnXmzKd/NjW8iA3gFcfNZ64zh14uOGrIllCQ== integrity sha512-6b8wGHJlDrGeSE3aH5mGNHBjA0TTkxdoNHik5EkvPHCt351XnigA4pS7Wsj/Eo9Y8RBU6f35cjN9SYmCFBtzxw==
"@rollup/rollup-freebsd-x64@4.59.1": "@rollup/rollup-freebsd-x64@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.59.1.tgz#337571ea38bcd6ee8a1d7ce2c2e12c2e54d04154" resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.60.0.tgz#1196ecd7bf4e128624ef83cd1f9d785114474a77"
integrity sha512-AM4xnwEZwukdhk7laMWfzWu9JGSVnJd+Fowt6Fd7QW1nrf3h0Hp7Qx5881M4aqrUlKBCybOxz0jofvIIfl7C5g== integrity sha512-h25Ga0t4jaylMB8M/JKAyrvvfxGRjnPQIR8lnCayyzEjEOx2EJIlIiMbhpWxDRKGKF8jbNH01NnN663dH638mA==
"@rollup/rollup-linux-arm-gnueabihf@4.59.1": "@rollup/rollup-linux-arm-gnueabihf@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.59.1.tgz#34a6f3b7886d656085f7453c4c1eeaaa819af693" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.60.0.tgz#cc147633a4af229fee83a737bf2334fbac3dc28e"
integrity sha512-KUizqxpwaR2AZdAUsMWfL/C94pUu7TKpoPd88c8yFVixJ+l9hejkrwoK5Zj3wiNh65UeyryKnJyxL1b7yNqFQA== integrity sha512-RzeBwv0B3qtVBWtcuABtSuCzToo2IEAIQrcyB/b2zMvBWVbjo8bZDjACUpnaafaxhTw2W+imQbP2BD1usasK4g==
"@rollup/rollup-linux-arm-musleabihf@4.59.1": "@rollup/rollup-linux-arm-musleabihf@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.59.1.tgz#cb04403e91011653877a2d6424d37f0c3d865ba1" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.60.0.tgz#3559f9f060153ea54594a42c3b87a297bedcc26e"
integrity sha512-MZoQ/am77ckJtZGFAtPucgUuJWiop3m2R3lw7tC0QCcbfl4DRhQUBUkHWCkcrT3pqy5Mzv5QQgY6Dmlba6iTWg== integrity sha512-Sf7zusNI2CIU1HLzuu9Tc5YGAHEZs5Lu7N1ssJG4Tkw6e0MEsN7NdjUDDfGNHy2IU+ENyWT+L2obgWiguWibWQ==
"@rollup/rollup-linux-arm64-gnu@4.59.1": "@rollup/rollup-linux-arm64-gnu@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.59.1.tgz#3e126c47029b11233e71ba9294cac4d91224bf98" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.60.0.tgz#e91f887b154123485cfc4b59befe2080fcd8f2df"
integrity sha512-Sez95TP6xGjkWB1608EfhCX1gdGrO5wzyN99VqzRtC17x/1bhw5VU1V0GfKUwbW/Xr1J8mSasoFoJa6Y7aGGSA== integrity sha512-DX2x7CMcrJzsE91q7/O02IJQ5/aLkVtYFryqCjduJhUfGKG6yJV8hxaw8pZa93lLEpPTP/ohdN4wFz7yp/ry9A==
"@rollup/rollup-linux-arm64-musl@4.59.1": "@rollup/rollup-linux-arm64-musl@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.59.1.tgz#c64bbccdd0b3f038e623c33390137fc442a436f3" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.60.0.tgz#660752f040df9ba44a24765df698928917c0bf21"
integrity sha512-9Cs2Seq98LWNOJzR89EGTZoiP8EkZ9UbQhBlDgfAkM6asVna1xJ04W2CLYWDN/RpUgOjtQvcv8wQVi1t5oQazA== integrity sha512-09EL+yFVbJZlhcQfShpswwRZ0Rg+z/CsSELFCnPt3iK+iqwGsI4zht3secj5vLEs957QvFFXnzAT0FFPIxSrkQ==
"@rollup/rollup-linux-loong64-gnu@4.59.1": "@rollup/rollup-linux-loong64-gnu@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.59.1.tgz#464182db5a8678651c5b4b3abb1ad2388f9662ac" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.60.0.tgz#cb0e939a5fa479ccef264f3f45b31971695f869c"
integrity sha512-n9yqttftgFy7IrNEnHy1bOp6B4OSe8mJDiPkT7EqlM9FnKOwUMnCK62ixW0Kd9Clw0/wgvh8+SqaDXMFvw3KqQ== integrity sha512-i9IcCMPr3EXm8EQg5jnja0Zyc1iFxJjZWlb4wr7U2Wx/GrddOuEafxRdMPRYVaXjgbhvqalp6np07hN1w9kAKw==
"@rollup/rollup-linux-loong64-musl@4.59.1": "@rollup/rollup-linux-loong64-musl@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.59.1.tgz#6aee3f801d78ae757b157b843b44adda8661ba17" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.60.0.tgz#42f86fbc82cd1a81be2d346476dd3231cf5ee442"
integrity sha512-SfpNXDzVTqs/riak4xXcLpq5gIQWsqGWMhN1AGRQKB4qGSs4r0sEs3ervXPcE1O9RsQ5bm8Muz6zmQpQnPss1g== integrity sha512-DGzdJK9kyJ+B78MCkWeGnpXJ91tK/iKA6HwHxF4TAlPIY7GXEvMe8hBFRgdrR9Ly4qebR/7gfUs9y2IoaVEyog==
"@rollup/rollup-linux-ppc64-gnu@4.59.1": "@rollup/rollup-linux-ppc64-gnu@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.59.1.tgz#e042401f8bc3c113151adf4a1e34b8d9a77733a5" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.60.0.tgz#39776a647a789dc95ea049277c5ef8f098df77f9"
integrity sha512-LjaChED0wQnjKZU+tsmGbN+9nN1XhaWUkAlSbTdhpEseCS4a15f/Q8xC2BN4GDKRzhhLZpYtJBZr2NZhR0jvNw== integrity sha512-RwpnLsqC8qbS8z1H1AxBA1H6qknR4YpPR9w2XX0vo2Sz10miu57PkNcnHVaZkbqyw/kUWfKMI73jhmfi9BRMUQ==
"@rollup/rollup-linux-ppc64-musl@4.59.1": "@rollup/rollup-linux-ppc64-musl@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.59.1.tgz#054f97093ecdba6818b7e6c679867848a4bc2ef3" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.60.0.tgz#466f20029a8e8b3bb2954c7ddebc9586420cac2c"
integrity sha512-ojW7iTJSIs4pwB2xV6QXGwNyDctvXOivYllttuPbXguuKDX5vwpqYJsHc6D2LZzjDGHML414Tuj3LvVPe1CT1A== integrity sha512-Z8pPf54Ly3aqtdWC3G4rFigZgNvd+qJlOE52fmko3KST9SoGfAdSRCwyoyG05q1HrrAblLbk1/PSIV+80/pxLg==
"@rollup/rollup-linux-riscv64-gnu@4.59.1": "@rollup/rollup-linux-riscv64-gnu@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.59.1.tgz#9afb36238568332f487b5969c98443022e38ce4a" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.60.0.tgz#cff9877c78f12e7aa6246f6902ad913e99edb2b7"
integrity sha512-FP+Q6WTcxxvsr0wQczhSE+tOZvFPV8A/mUE6mhZYFW9/eea/y/XqAgRoLLMuE9Cz0hfX5bi7p116IWoB+P237A== integrity sha512-3a3qQustp3COCGvnP4SvrMHnPQ9d1vzCakQVRTliaz8cIp/wULGjiGpbcqrkv0WrHTEp8bQD/B3HBjzujVWLOA==
"@rollup/rollup-linux-riscv64-musl@4.59.1": "@rollup/rollup-linux-riscv64-musl@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.59.1.tgz#2eeed50b44113daa9e1971dd3129c19d471a7d3e" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.60.0.tgz#9a762fb99b5a82a921017f56491b7e892b9fb17d"
integrity sha512-L1uD9b/Ig8Z+rn1KttCJjwhN1FgjRMBKsPaBsDKkfUl7GfFq71pU4vWCnpOsGljycFEbkHWARZLf4lMYg3WOLw== integrity sha512-pjZDsVH/1VsghMJ2/kAaxt6dL0psT6ZexQVrijczOf+PeP2BUqTHYejk3l6TlPRydggINOeNRhvpLa0AYpCWSQ==
"@rollup/rollup-linux-s390x-gnu@4.59.1": "@rollup/rollup-linux-s390x-gnu@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.59.1.tgz#a3e8847717146787221cd05bc9ad32250b785850" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.60.0.tgz#9d25ad8ac7dab681935baf78ac5ea92d14629cdf"
integrity sha512-EZc9NGTk/oSUzzOD4nYY4gIjteo2M3CiozX6t1IXGCOdgxJTlVu/7EdPeiqeHPSIrxkLhavqpBAUCfvC6vBOug== integrity sha512-3ObQs0BhvPgiUVZrN7gqCSvmFuMWvWvsjG5ayJ3Lraqv+2KhOsp+pUbigqbeWqueGIsnn+09HBw27rJ+gYK4VQ==
"@rollup/rollup-linux-x64-gnu@4.59.1": "@rollup/rollup-linux-x64-gnu@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.59.1.tgz#4932391a94e114d83ec4acbf265437dc4a17e8b2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.60.0.tgz#5e5139e11819fa38a052368da79422cb4afcf466"
integrity sha512-NQ9KyU1Anuy59L8+HHOKM++CoUxrQWrZWXRik4BJFm+7i5NP6q/SW43xIBr80zzt+PDBJ7LeNmloQGfa0JGk0w== integrity sha512-EtylprDtQPdS5rXvAayrNDYoJhIz1/vzN2fEubo3yLE7tfAw+948dO0g4M0vkTVFhKojnF+n6C8bDNe+gDRdTg==
"@rollup/rollup-linux-x64-musl@4.59.1": "@rollup/rollup-linux-x64-musl@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.59.1.tgz#9992b9dfc520f95eb03c81f217431c89ca0afbd7" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.60.0.tgz#b6211d46e11b1f945f5504cc794fce839331ed08"
integrity sha512-GZkLk2t6naywsveSFBsEb0PLU+JC9ggVjbndsbG20VPhar6D1gkMfCx4NfP9owpovBXTN+eRdqGSkDGIxPHhmQ== integrity sha512-k09oiRCi/bHU9UVFqD17r3eJR9bn03TyKraCrlz5ULFJGdJGi7VOmm9jl44vOJvRJ6P7WuBi/s2A97LxxHGIdw==
"@rollup/rollup-openbsd-x64@4.59.1": "@rollup/rollup-openbsd-x64@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.59.1.tgz#df6aab9b141c17bdff023ce6a33ef15cdf4262f7" resolved "https://registry.yarnpkg.com/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.60.0.tgz#e6e09eebaa7012bb9c7331b437a9e992bd94ca35"
integrity sha512-1hjG9Jpl2KDOetr64iQd8AZAEjkDUUK5RbDkYWsViYLC1op1oNzdjMJeFiofcGhqbNTaY2kfgqowE7DILifsrA== integrity sha512-1o/0/pIhozoSaDJoDcec+IVLbnRtQmHwPV730+AOD29lHEEo4F5BEUB24H0OBdhbBBDwIOSuf7vgg0Ywxdfiiw==
"@rollup/rollup-openharmony-arm64@4.59.1": "@rollup/rollup-openharmony-arm64@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.59.1.tgz#04c1d306cd793d7a323a074b592f24eec464d0de" resolved "https://registry.yarnpkg.com/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.60.0.tgz#f7d99ae857032498e57a5e7259fb7100fd24a87e"
integrity sha512-ARoKfflk0SiiYm3r1fmF73K/yB+PThmOwfWCk1sr7x/k9dc3uGLWuEE9if+Pw21el8MSpp3TMnG5vLNsJ/MMGQ== integrity sha512-pESDkos/PDzYwtyzB5p/UoNU/8fJo68vcXM9ZW2V0kjYayj1KaaUfi1NmTUTUpMn4UhU4gTuK8gIaFO4UGuMbA==
"@rollup/rollup-win32-arm64-msvc@4.59.1": "@rollup/rollup-win32-arm64-msvc@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.59.1.tgz#09fbfdea44141969362ca2efa81f0ec5b09907e1" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.60.0.tgz#41e392f5d9f3bf1253fdaf2f6d6f6b1bfc452856"
integrity sha512-oOST61G6VM45Mz2vdzWMr1s2slI7y9LqxEV5fCoWi2MDONmMvgsJVHSXxce/I2xOSZPTZ47nDPOl1tkwKWSHcw== integrity sha512-hj1wFStD7B1YBeYmvY+lWXZ7ey73YGPcViMShYikqKT1GtstIKQAtfUI6yrzPjAy/O7pO0VLXGmUVWXQMaYgTQ==
"@rollup/rollup-win32-ia32-msvc@4.59.1": "@rollup/rollup-win32-ia32-msvc@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.59.1.tgz#4ee44062f006cb4fbaece8b80df8763b579b7e12" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.60.0.tgz#f41b0490be0e5d3cf459b4dc076a192b532adea9"
integrity sha512-x5WgLi5dWpRz7WclKBGEF15LcWTh0ewrHM6Cq4A+WUbkysUMZNeqt05bwPonOQ3ihPS/WMhAZV5zB1DfnI4Sxg== integrity sha512-SyaIPFoxmUPlNDq5EHkTbiKzmSEmq/gOYFI/3HHJ8iS/v1mbugVa7dXUzcJGQfoytp9DJFLhHH4U3/eTy2Bq4w==
"@rollup/rollup-win32-x64-gnu@4.59.1": "@rollup/rollup-win32-x64-gnu@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.59.1.tgz#674ceffec300d70a3461a33d0b5d51f4f5124174" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.60.0.tgz#0fcf9f1fcb750f0317b13aac3b3231687e6397a5"
integrity sha512-wS+zHAJRVP5zOL0e+a3V3E/NTEwM2HEvvNKoDy5Xcfs0o8lljxn+EAFPkUsxihBdmDq1JWzXmmB9cbssCPdxxw== integrity sha512-RdcryEfzZr+lAr5kRm2ucN9aVlCCa2QNq4hXelZxb8GG0NJSazq44Z3PCCc8wISRuCVnGs0lQJVX5Vp6fKA+IA==
"@rollup/rollup-win32-x64-msvc@4.59.1": "@rollup/rollup-win32-x64-msvc@4.60.0":
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.59.1.tgz#09b227bf65891604476aa31d3762ba2ef830597d" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.60.0.tgz#3afdb30405f6d4248df5e72e1ca86c5eab55fab8"
integrity sha512-rhHyrMeLpErT/C7BxcEsU4COHQUzHyrPYW5tOZUeUhziNtRuYxmDWvqQqzpuUt8xpOgmbKa1btGXfnA/ANVO+g== integrity sha512-PrsWNQ8BuE00O3Xsx3ALh2Df8fAj9+cvvX9AIA6o4KpATR98c9mud4XtDWVvsEuyia5U4tVSTKygawyJkjm60w==
"@standard-schema/spec@^1.1.0": "@standard-schema/spec@^1.1.0":
version "1.1.0" version "1.1.0"
@@ -658,109 +658,109 @@
resolved "https://registry.yarnpkg.com/@types/pako/-/pako-2.0.4.tgz#c3575ef8125e176c345fa0e7b301c1db41170c15" resolved "https://registry.yarnpkg.com/@types/pako/-/pako-2.0.4.tgz#c3575ef8125e176c345fa0e7b301c1db41170c15"
integrity sha512-VWDCbrLeVXJM9fihYodcLiIv0ku+AlOa/TQ1SvYOaBuyrSKgEcro95LJyIsJ4vSo6BXIxOKxiJAat04CmST9Fw== integrity sha512-VWDCbrLeVXJM9fihYodcLiIv0ku+AlOa/TQ1SvYOaBuyrSKgEcro95LJyIsJ4vSo6BXIxOKxiJAat04CmST9Fw==
"@typescript-eslint/eslint-plugin@8.57.1": "@typescript-eslint/eslint-plugin@8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.57.1.tgz#ddfdfb30f8b5ccee7f3c21798b377c51370edd55" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.57.2.tgz#ad0dcefeca9c2ecbe09f730d478063666aee010b"
integrity sha512-Gn3aqnvNl4NGc6x3/Bqk1AOn0thyTU9bqDRhiRnUWezgvr2OnhYCWCgC8zXXRVqBsIL1pSDt7T9nJUe0oM0kDQ== integrity sha512-NZZgp0Fm2IkD+La5PR81sd+g+8oS6JwJje+aRWsDocxHkjyRw0J5L5ZTlN3LI1LlOcGL7ph3eaIUmTXMIjLk0w==
dependencies: dependencies:
"@eslint-community/regexpp" "^4.12.2" "@eslint-community/regexpp" "^4.12.2"
"@typescript-eslint/scope-manager" "8.57.1" "@typescript-eslint/scope-manager" "8.57.2"
"@typescript-eslint/type-utils" "8.57.1" "@typescript-eslint/type-utils" "8.57.2"
"@typescript-eslint/utils" "8.57.1" "@typescript-eslint/utils" "8.57.2"
"@typescript-eslint/visitor-keys" "8.57.1" "@typescript-eslint/visitor-keys" "8.57.2"
ignore "^7.0.5" ignore "^7.0.5"
natural-compare "^1.4.0" natural-compare "^1.4.0"
ts-api-utils "^2.4.0" ts-api-utils "^2.4.0"
"@typescript-eslint/parser@8.57.1": "@typescript-eslint/parser@8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.57.1.tgz#d523e559b148264055c0a49a29d5f50c7de659c2" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.57.2.tgz#b819955e39f976c0d4f95b5ed67fe22f85cd6898"
integrity sha512-k4eNDan0EIMTT/dUKc/g+rsJ6wcHYhNPdY19VoX/EOtaAG8DLtKCykhrUnuHPYvinn5jhAPgD2Qw9hXBwrahsw== integrity sha512-30ScMRHIAD33JJQkgfGW1t8CURZtjc2JpTrq5n2HFhOefbAhb7ucc7xJwdWcrEtqUIYJ73Nybpsggii6GtAHjA==
dependencies: dependencies:
"@typescript-eslint/scope-manager" "8.57.1" "@typescript-eslint/scope-manager" "8.57.2"
"@typescript-eslint/types" "8.57.1" "@typescript-eslint/types" "8.57.2"
"@typescript-eslint/typescript-estree" "8.57.1" "@typescript-eslint/typescript-estree" "8.57.2"
"@typescript-eslint/visitor-keys" "8.57.1" "@typescript-eslint/visitor-keys" "8.57.2"
debug "^4.4.3" debug "^4.4.3"
"@typescript-eslint/project-service@8.57.1": "@typescript-eslint/project-service@8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/project-service/-/project-service-8.57.1.tgz#16af9fe16eedbd7085e4fdc29baa73715c0c55c5" resolved "https://registry.yarnpkg.com/@typescript-eslint/project-service/-/project-service-8.57.2.tgz#dfbc7777f9f633f2b06b558cda3836e76f856e3c"
integrity sha512-vx1F37BRO1OftsYlmG9xay1TqnjNVlqALymwWVuYTdo18XuKxtBpCj1QlzNIEHlvlB27osvXFWptYiEWsVdYsg== integrity sha512-FuH0wipFywXRTHf+bTTjNyuNQQsQC3qh/dYzaM4I4W0jrCqjCVuUh99+xd9KamUfmCGPvbO8NDngo/vsnNVqgw==
dependencies: dependencies:
"@typescript-eslint/tsconfig-utils" "^8.57.1" "@typescript-eslint/tsconfig-utils" "^8.57.2"
"@typescript-eslint/types" "^8.57.1" "@typescript-eslint/types" "^8.57.2"
debug "^4.4.3" debug "^4.4.3"
"@typescript-eslint/scope-manager@8.57.1": "@typescript-eslint/scope-manager@8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.57.1.tgz#4524d7e7b420cb501807499684d435ae129aaf35" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.57.2.tgz#734dcde40677f430b5d963108337295bdbc09dae"
integrity sha512-hs/QcpCwlwT2L5S+3fT6gp0PabyGk4Q0Rv2doJXA0435/OpnSR3VRgvrp8Xdoc3UAYSg9cyUjTeFXZEPg/3OKg== integrity sha512-snZKH+W4WbWkrBqj4gUNRIGb/jipDW3qMqVJ4C9rzdFc+wLwruxk+2a5D+uoFcKPAqyqEnSb4l2ULuZf95eSkw==
dependencies: dependencies:
"@typescript-eslint/types" "8.57.1" "@typescript-eslint/types" "8.57.2"
"@typescript-eslint/visitor-keys" "8.57.1" "@typescript-eslint/visitor-keys" "8.57.2"
"@typescript-eslint/tsconfig-utils@8.57.1", "@typescript-eslint/tsconfig-utils@^8.57.1": "@typescript-eslint/tsconfig-utils@8.57.2", "@typescript-eslint/tsconfig-utils@^8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.57.1.tgz#9233443ec716882a6f9e240fd900a73f0235f3d7" resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.57.2.tgz#cf82dc11e884103ec13188a7352591efaa1a887e"
integrity sha512-0lgOZB8cl19fHO4eI46YUx2EceQqhgkPSuCGLlGi79L2jwYY1cxeYc1Nae8Aw1xjgW3PKVDLlr3YJ6Bxx8HkWg== integrity sha512-3Lm5DSM+DCowsUOJC+YqHHnKEfFh5CoGkj5Z31NQSNF4l5wdOwqGn99wmwN/LImhfY3KJnmordBq/4+VDe2eKw==
"@typescript-eslint/type-utils@8.57.1": "@typescript-eslint/type-utils@8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.57.1.tgz#c49af1347b5869ca85155547a8f34f84ab386fd9" resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.57.2.tgz#3ec65a94e73776252991a3cf0a15d220734c28f5"
integrity sha512-+Bwwm0ScukFdyoJsh2u6pp4S9ktegF98pYUU0hkphOOqdMB+1sNQhIz8y5E9+4pOioZijrkfNO/HUJVAFFfPKA== integrity sha512-Co6ZCShm6kIbAM/s+oYVpKFfW7LBc6FXoPXjTRQ449PPNBY8U0KZXuevz5IFuuUj2H9ss40atTaf9dlGLzbWZg==
dependencies: dependencies:
"@typescript-eslint/types" "8.57.1" "@typescript-eslint/types" "8.57.2"
"@typescript-eslint/typescript-estree" "8.57.1" "@typescript-eslint/typescript-estree" "8.57.2"
"@typescript-eslint/utils" "8.57.1" "@typescript-eslint/utils" "8.57.2"
debug "^4.4.3" debug "^4.4.3"
ts-api-utils "^2.4.0" ts-api-utils "^2.4.0"
"@typescript-eslint/types@8.57.1", "@typescript-eslint/types@^8.57.1": "@typescript-eslint/types@8.57.2", "@typescript-eslint/types@^8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.57.1.tgz#54b27a8a25a7b45b4f978c3f8e00c4c78f11142c" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.57.2.tgz#efe0da4c28b505ed458f113aa960dce2c5c671f4"
integrity sha512-S29BOBPJSFUiblEl6RzPPjJt6w25A6XsBqRVDt53tA/tlL8q7ceQNZHTjPeONt/3S7KRI4quk+yP9jK2WjBiPQ== integrity sha512-/iZM6FnM4tnx9csuTxspMW4BOSegshwX5oBDznJ7S4WggL7Vczz5d2W11ecc4vRrQMQHXRSxzrCsyG5EsPPTbA==
"@typescript-eslint/typescript-estree@8.57.1": "@typescript-eslint/typescript-estree@8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.57.1.tgz#a9fd28d4a0ec896aa9a9a7e0cead62ea24f99e76" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.57.2.tgz#432e61a6cf2ab565837da387e5262c159672abea"
integrity sha512-ybe2hS9G6pXpqGtPli9Gx9quNV0TWLOmh58ADlmZe9DguLq0tiAKVjirSbtM1szG6+QH6rVXyU6GTLQbWnMY+g== integrity sha512-2MKM+I6g8tJxfSmFKOnHv2t8Sk3T6rF20A1Puk0svLK+uVapDZB/4pfAeB7nE83uAZrU6OxW+HmOd5wHVdXwXA==
dependencies: dependencies:
"@typescript-eslint/project-service" "8.57.1" "@typescript-eslint/project-service" "8.57.2"
"@typescript-eslint/tsconfig-utils" "8.57.1" "@typescript-eslint/tsconfig-utils" "8.57.2"
"@typescript-eslint/types" "8.57.1" "@typescript-eslint/types" "8.57.2"
"@typescript-eslint/visitor-keys" "8.57.1" "@typescript-eslint/visitor-keys" "8.57.2"
debug "^4.4.3" debug "^4.4.3"
minimatch "^10.2.2" minimatch "^10.2.2"
semver "^7.7.3" semver "^7.7.3"
tinyglobby "^0.2.15" tinyglobby "^0.2.15"
ts-api-utils "^2.4.0" ts-api-utils "^2.4.0"
"@typescript-eslint/utils@8.57.1": "@typescript-eslint/utils@8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.57.1.tgz#e40f5a7fcff02fd24092a7b52bd6ec029fb50465" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.57.2.tgz#46a8974c24326fb8899486728428a0f1a3115014"
integrity sha512-XUNSJ/lEVFttPMMoDVA2r2bwrl8/oPx8cURtczkSEswY5T3AeLmCy+EKWQNdL4u0MmAHOjcWrqJp2cdvgjn8dQ== integrity sha512-krRIbvPK1ju1WBKIefiX+bngPs+odIQUtR7kymzPfo1POVw3jlF+nLkmexdSSd4UCbDcQn+wMBATOOmpBbqgKg==
dependencies: dependencies:
"@eslint-community/eslint-utils" "^4.9.1" "@eslint-community/eslint-utils" "^4.9.1"
"@typescript-eslint/scope-manager" "8.57.1" "@typescript-eslint/scope-manager" "8.57.2"
"@typescript-eslint/types" "8.57.1" "@typescript-eslint/types" "8.57.2"
"@typescript-eslint/typescript-estree" "8.57.1" "@typescript-eslint/typescript-estree" "8.57.2"
"@typescript-eslint/visitor-keys@8.57.1": "@typescript-eslint/visitor-keys@8.57.2":
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.57.1.tgz#3af4f88118924d3be983d4b8ae84803f11fe4563" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.57.2.tgz#a5c9605774247336c0412beb7dc288ab2a07c11e"
integrity sha512-YWnmJkXbofiz9KbnbbwuA2rpGkFPLbAIetcCNO6mJ8gdhdZ/v7WDXsoGFAJuM6ikUFKTlSQnjWnVO4ux+UzS6A== integrity sha512-zhahknjobV2FiD6Ee9iLbS7OV9zi10rG26odsQdfBO/hjSzUQbkIYgda+iNKK1zNiW2ey+Lf8MU5btN17V3dUw==
dependencies: dependencies:
"@typescript-eslint/types" "8.57.1" "@typescript-eslint/types" "8.57.2"
eslint-visitor-keys "^5.0.0" eslint-visitor-keys "^5.0.0"
"@vitest/coverage-v8@^4.0.18": "@vitest/coverage-v8@^4.0.18":
version "4.1.0" version "4.1.1"
resolved "https://registry.yarnpkg.com/@vitest/coverage-v8/-/coverage-v8-4.1.0.tgz#7ef70bc23e588564fd0ff7e755cbdcd627de8e6c" resolved "https://registry.yarnpkg.com/@vitest/coverage-v8/-/coverage-v8-4.1.1.tgz#579ba2f997b8863a37b6689221ba74e364d53118"
integrity sha512-nDWulKeik2bL2Va/Wl4x7DLuTKAXa906iRFooIRPR+huHkcvp9QDkPQ2RJdmjOFrqOqvNfoSQLF68deE3xC3CQ== integrity sha512-nZ4RWwGCoGOQRMmU/Q9wlUY540RVRxJZ9lxFsFfy0QV7Zmo5VVBhB6Sl9Xa0KIp2iIs3zWfPlo9LcY1iqbpzCw==
dependencies: dependencies:
"@bcoe/v8-coverage" "^1.0.2" "@bcoe/v8-coverage" "^1.0.2"
"@vitest/utils" "4.1.0" "@vitest/utils" "4.1.1"
ast-v8-to-istanbul "^1.0.0" ast-v8-to-istanbul "^1.0.0"
istanbul-lib-coverage "^3.2.2" istanbul-lib-coverage "^3.2.2"
istanbul-lib-report "^3.0.1" istanbul-lib-report "^3.0.1"
@@ -770,63 +770,63 @@
std-env "^4.0.0-rc.1" std-env "^4.0.0-rc.1"
tinyrainbow "^3.0.3" tinyrainbow "^3.0.3"
"@vitest/expect@4.1.0": "@vitest/expect@4.1.1":
version "4.1.0" version "4.1.1"
resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-4.1.0.tgz#2f6c7d19cfbe778bfb42d73f77663ec22163fcbb" resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-4.1.1.tgz#875b3fcfa3e8803d6a69cf6ddb58613eab7ae772"
integrity sha512-EIxG7k4wlWweuCLG9Y5InKFwpMEOyrMb6ZJ1ihYu02LVj/bzUwn2VMU+13PinsjRW75XnITeFrQBMH5+dLvCDA== integrity sha512-xAV0fqBTk44Rn6SjJReEQkHP3RrqbJo6JQ4zZ7/uVOiJZRarBtblzrOfFIZeYUrukp2YD6snZG6IBqhOoHTm+A==
dependencies: dependencies:
"@standard-schema/spec" "^1.1.0" "@standard-schema/spec" "^1.1.0"
"@types/chai" "^5.2.2" "@types/chai" "^5.2.2"
"@vitest/spy" "4.1.0" "@vitest/spy" "4.1.1"
"@vitest/utils" "4.1.0" "@vitest/utils" "4.1.1"
chai "^6.2.2" chai "^6.2.2"
tinyrainbow "^3.0.3" tinyrainbow "^3.0.3"
"@vitest/mocker@4.1.0": "@vitest/mocker@4.1.1":
version "4.1.0" version "4.1.1"
resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-4.1.0.tgz#2aabf6079ad472f89a212d322f7d5da7ad628a0e" resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-4.1.1.tgz#fe804fbb561e6638864ea8ac4f16a71f5a6f1b91"
integrity sha512-evxREh+Hork43+Y4IOhTo+h5lGmVRyjqI739Rz4RlUPqwrkFFDF6EMvOOYjTx4E8Tl6gyCLRL8Mu7Ry12a13Tw== integrity sha512-h3BOylsfsCLPeceuCPAAJ+BvNwSENgJa4hXoXu4im0bs9Lyp4URc4JYK4pWLZ4pG/UQn7AT92K6IByi6rE6g3A==
dependencies: dependencies:
"@vitest/spy" "4.1.0" "@vitest/spy" "4.1.1"
estree-walker "^3.0.3" estree-walker "^3.0.3"
magic-string "^0.30.21" magic-string "^0.30.21"
"@vitest/pretty-format@4.1.0": "@vitest/pretty-format@4.1.1":
version "4.1.0" version "4.1.1"
resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-4.1.0.tgz#b6ccf2868130a647d24af3696d58c09a95eb83c1" resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-4.1.1.tgz#ec0e5e7c1def39c5fac037429166278ef2f85de8"
integrity sha512-3RZLZlh88Ib0J7NQTRATfc/3ZPOnSUn2uDBUoGNn5T36+bALixmzphN26OUD3LRXWkJu4H0s5vvUeqBiw+kS0A== integrity sha512-GM+TEQN5WhOygr1lp7skeVjdLPqqWMHsfzXrcHAqZJi/lIVh63H0kaRCY8MDhNWikx19zBUK8ceaLB7X5AH9NQ==
dependencies: dependencies:
tinyrainbow "^3.0.3" tinyrainbow "^3.0.3"
"@vitest/runner@4.1.0": "@vitest/runner@4.1.1":
version "4.1.0" version "4.1.1"
resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-4.1.0.tgz#4e12c0f086eb3a4ae3fae84d9d68b22d02942cbf" resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-4.1.1.tgz#bedc6eef9f932788a0253c97f7bee82c0b52334c"
integrity sha512-Duvx2OzQ7d6OjchL+trw+aSrb9idh7pnNfxrklo14p3zmNL4qPCDeIJAK+eBKYjkIwG96Bc6vYuxhqDXQOWpoQ== integrity sha512-f7+FPy75vN91QGWsITueq0gedwUZy1fLtHOCMeQpjs8jTekAHeKP80zfDEnhrleviLHzVSDXIWuCIOFn3D3f8A==
dependencies: dependencies:
"@vitest/utils" "4.1.0" "@vitest/utils" "4.1.1"
pathe "^2.0.3" pathe "^2.0.3"
"@vitest/snapshot@4.1.0": "@vitest/snapshot@4.1.1":
version "4.1.0" version "4.1.1"
resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-4.1.0.tgz#67372979da692ccf5dfa4a3bb603f683c0640202" resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-4.1.1.tgz#ffc080d1aa15ce976bf61dcef29dbe489099be69"
integrity sha512-0Vy9euT1kgsnj1CHttwi9i9o+4rRLEaPRSOJ5gyv579GJkNpgJK+B4HSv/rAWixx2wdAFci1X4CEPjiu2bXIMg== integrity sha512-kMVSgcegWV2FibXEx9p9WIKgje58lcTbXgnJixfcg15iK8nzCXhmalL0ZLtTWLW9PH1+1NEDShiFFedB3tEgWg==
dependencies: dependencies:
"@vitest/pretty-format" "4.1.0" "@vitest/pretty-format" "4.1.1"
"@vitest/utils" "4.1.0" "@vitest/utils" "4.1.1"
magic-string "^0.30.21" magic-string "^0.30.21"
pathe "^2.0.3" pathe "^2.0.3"
"@vitest/spy@4.1.0": "@vitest/spy@4.1.1":
version "4.1.0" version "4.1.1"
resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-4.1.0.tgz#b9143a63cca83de34ac1777c733f8561b73fa9ba" resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-4.1.1.tgz#7eb25de32a3d65810cb9adb31a2872c1e8341be5"
integrity sha512-pz77k+PgNpyMDv2FV6qmk5ZVau6c3R8HC8v342T2xlFxQKTrSeYw9waIJG8KgV9fFwAtTu4ceRzMivPTH6wSxw== integrity sha512-6Ti/KT5OVaiupdIZEuZN7l3CZcR0cxnxt70Z0//3CtwgObwA6jZhmVBA3yrXSVN3gmwjgd7oDNLlsXz526gpRA==
"@vitest/utils@4.1.0": "@vitest/utils@4.1.1":
version "4.1.0" version "4.1.1"
resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-4.1.0.tgz#2baf26a2a28c4aabe336315dc59722df2372c38d" resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-4.1.1.tgz#1c8b1f3405008a10bc2cf74eb8ba1b32c1dbc789"
integrity sha512-XfPXT6a8TZY3dcGY8EdwsBulFCIw+BeeX0RZn2x/BtiY/75YGh8FeWGG8QISN/WhaqSrE2OrlDgtF8q5uhOTmw== integrity sha512-cNxAlaB3sHoCdL6pj6yyUXv9Gry1NHNg0kFTXdvSIZXLHsqKH7chiWOkwJ5s5+d/oMwcoG9T0bKU38JZWKusrQ==
dependencies: dependencies:
"@vitest/pretty-format" "4.1.0" "@vitest/pretty-format" "4.1.1"
convert-source-map "^2.0.0" convert-source-map "^2.0.0"
tinyrainbow "^3.0.3" tinyrainbow "^3.0.3"
@@ -1763,9 +1763,9 @@ picocolors@^1.1.1:
integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==
picomatch@^4.0.2, picomatch@^4.0.3: picomatch@^4.0.2, picomatch@^4.0.3:
version "4.0.3" version "4.0.4"
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.3.tgz#796c76136d1eead715db1e7bad785dedd695a042" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.4.tgz#fd6f5e00a143086e074dffe4c924b8fb293b0589"
integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== integrity sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==
pixi-filters@^6.1.5: pixi-filters@^6.1.5:
version "6.1.5" version "6.1.5"
@@ -1828,62 +1828,62 @@ resolve@^1.22.1:
path-parse "^1.0.7" path-parse "^1.0.7"
supports-preserve-symlinks-flag "^1.0.0" supports-preserve-symlinks-flag "^1.0.0"
rolldown@1.0.0-rc.10: rolldown@1.0.0-rc.11:
version "1.0.0-rc.10" version "1.0.0-rc.11"
resolved "https://registry.yarnpkg.com/rolldown/-/rolldown-1.0.0-rc.10.tgz#41c55e52d833c52c90131973047250548e35f2bf" resolved "https://registry.yarnpkg.com/rolldown/-/rolldown-1.0.0-rc.11.tgz#6eaf091b1bbb5ed92e5302171a3d59f0d026d9c0"
integrity sha512-q7j6vvarRFmKpgJUT8HCAUljkgzEp4LAhPlJUvQhA5LA1SUL36s5QCysMutErzL3EbNOZOkoziSx9iZC4FddKA== integrity sha512-NRjoKMusSjfRbSYiH3VSumlkgFe7kYAa3pzVOsVYVFY3zb5d7nS+a3KGQ7hJKXuYWbzJKPVQ9Wxq2UvyK+ENpw==
dependencies: dependencies:
"@oxc-project/types" "=0.120.0" "@oxc-project/types" "=0.122.0"
"@rolldown/pluginutils" "1.0.0-rc.10" "@rolldown/pluginutils" "1.0.0-rc.11"
optionalDependencies: optionalDependencies:
"@rolldown/binding-android-arm64" "1.0.0-rc.10" "@rolldown/binding-android-arm64" "1.0.0-rc.11"
"@rolldown/binding-darwin-arm64" "1.0.0-rc.10" "@rolldown/binding-darwin-arm64" "1.0.0-rc.11"
"@rolldown/binding-darwin-x64" "1.0.0-rc.10" "@rolldown/binding-darwin-x64" "1.0.0-rc.11"
"@rolldown/binding-freebsd-x64" "1.0.0-rc.10" "@rolldown/binding-freebsd-x64" "1.0.0-rc.11"
"@rolldown/binding-linux-arm-gnueabihf" "1.0.0-rc.10" "@rolldown/binding-linux-arm-gnueabihf" "1.0.0-rc.11"
"@rolldown/binding-linux-arm64-gnu" "1.0.0-rc.10" "@rolldown/binding-linux-arm64-gnu" "1.0.0-rc.11"
"@rolldown/binding-linux-arm64-musl" "1.0.0-rc.10" "@rolldown/binding-linux-arm64-musl" "1.0.0-rc.11"
"@rolldown/binding-linux-ppc64-gnu" "1.0.0-rc.10" "@rolldown/binding-linux-ppc64-gnu" "1.0.0-rc.11"
"@rolldown/binding-linux-s390x-gnu" "1.0.0-rc.10" "@rolldown/binding-linux-s390x-gnu" "1.0.0-rc.11"
"@rolldown/binding-linux-x64-gnu" "1.0.0-rc.10" "@rolldown/binding-linux-x64-gnu" "1.0.0-rc.11"
"@rolldown/binding-linux-x64-musl" "1.0.0-rc.10" "@rolldown/binding-linux-x64-musl" "1.0.0-rc.11"
"@rolldown/binding-openharmony-arm64" "1.0.0-rc.10" "@rolldown/binding-openharmony-arm64" "1.0.0-rc.11"
"@rolldown/binding-wasm32-wasi" "1.0.0-rc.10" "@rolldown/binding-wasm32-wasi" "1.0.0-rc.11"
"@rolldown/binding-win32-arm64-msvc" "1.0.0-rc.10" "@rolldown/binding-win32-arm64-msvc" "1.0.0-rc.11"
"@rolldown/binding-win32-x64-msvc" "1.0.0-rc.10" "@rolldown/binding-win32-x64-msvc" "1.0.0-rc.11"
rollup@^4.20.0: rollup@^4.20.0:
version "4.59.1" version "4.60.0"
resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.59.1.tgz#959b5db53876a9d0d009cc70cb81b47fdc79f095" resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.60.0.tgz#d7d68c8cda873e96e08b2443505609b7e7be9eb8"
integrity sha512-iZKH8BeoCwTCBTZBZWQQMreekd4mdomwdjIQ40GC1oZm6o+8PnNMIxFOiCsGMWeS8iDJ7KZcl7KwmKk/0HOQpA== integrity sha512-yqjxruMGBQJ2gG4HtjZtAfXArHomazDHoFwFFmZZl0r7Pdo7qCIXKqKHZc8yeoMgzJJ+pO6pEEHa+V7uzWlrAQ==
dependencies: dependencies:
"@types/estree" "1.0.8" "@types/estree" "1.0.8"
optionalDependencies: optionalDependencies:
"@rollup/rollup-android-arm-eabi" "4.59.1" "@rollup/rollup-android-arm-eabi" "4.60.0"
"@rollup/rollup-android-arm64" "4.59.1" "@rollup/rollup-android-arm64" "4.60.0"
"@rollup/rollup-darwin-arm64" "4.59.1" "@rollup/rollup-darwin-arm64" "4.60.0"
"@rollup/rollup-darwin-x64" "4.59.1" "@rollup/rollup-darwin-x64" "4.60.0"
"@rollup/rollup-freebsd-arm64" "4.59.1" "@rollup/rollup-freebsd-arm64" "4.60.0"
"@rollup/rollup-freebsd-x64" "4.59.1" "@rollup/rollup-freebsd-x64" "4.60.0"
"@rollup/rollup-linux-arm-gnueabihf" "4.59.1" "@rollup/rollup-linux-arm-gnueabihf" "4.60.0"
"@rollup/rollup-linux-arm-musleabihf" "4.59.1" "@rollup/rollup-linux-arm-musleabihf" "4.60.0"
"@rollup/rollup-linux-arm64-gnu" "4.59.1" "@rollup/rollup-linux-arm64-gnu" "4.60.0"
"@rollup/rollup-linux-arm64-musl" "4.59.1" "@rollup/rollup-linux-arm64-musl" "4.60.0"
"@rollup/rollup-linux-loong64-gnu" "4.59.1" "@rollup/rollup-linux-loong64-gnu" "4.60.0"
"@rollup/rollup-linux-loong64-musl" "4.59.1" "@rollup/rollup-linux-loong64-musl" "4.60.0"
"@rollup/rollup-linux-ppc64-gnu" "4.59.1" "@rollup/rollup-linux-ppc64-gnu" "4.60.0"
"@rollup/rollup-linux-ppc64-musl" "4.59.1" "@rollup/rollup-linux-ppc64-musl" "4.60.0"
"@rollup/rollup-linux-riscv64-gnu" "4.59.1" "@rollup/rollup-linux-riscv64-gnu" "4.60.0"
"@rollup/rollup-linux-riscv64-musl" "4.59.1" "@rollup/rollup-linux-riscv64-musl" "4.60.0"
"@rollup/rollup-linux-s390x-gnu" "4.59.1" "@rollup/rollup-linux-s390x-gnu" "4.60.0"
"@rollup/rollup-linux-x64-gnu" "4.59.1" "@rollup/rollup-linux-x64-gnu" "4.60.0"
"@rollup/rollup-linux-x64-musl" "4.59.1" "@rollup/rollup-linux-x64-musl" "4.60.0"
"@rollup/rollup-openbsd-x64" "4.59.1" "@rollup/rollup-openbsd-x64" "4.60.0"
"@rollup/rollup-openharmony-arm64" "4.59.1" "@rollup/rollup-openharmony-arm64" "4.60.0"
"@rollup/rollup-win32-arm64-msvc" "4.59.1" "@rollup/rollup-win32-arm64-msvc" "4.60.0"
"@rollup/rollup-win32-ia32-msvc" "4.59.1" "@rollup/rollup-win32-ia32-msvc" "4.60.0"
"@rollup/rollup-win32-x64-gnu" "4.59.1" "@rollup/rollup-win32-x64-gnu" "4.60.0"
"@rollup/rollup-win32-x64-msvc" "4.59.1" "@rollup/rollup-win32-x64-msvc" "4.60.0"
fsevents "~2.3.2" fsevents "~2.3.2"
saxes@^6.0.0: saxes@^6.0.0:
@@ -2024,14 +2024,14 @@ type-check@^0.4.0, type-check@~0.4.0:
prelude-ls "^1.2.1" prelude-ls "^1.2.1"
typescript-eslint@^8.26.1: typescript-eslint@^8.26.1:
version "8.57.1" version "8.57.2"
resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.57.1.tgz#573f97d3e48bbb67290b47dde1b7cb3b5d01dc4f" resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.57.2.tgz#d64c6648dda5b15176708701537ab0b55ba3c83d"
integrity sha512-fLvZWf+cAGw3tqMCYzGIU6yR8K+Y9NT2z23RwOjlNFF2HwSB3KhdEFI5lSBv8tNmFkkBShSjsCjzx1vahZfISA== integrity sha512-VEPQ0iPgWO/sBaZOU1xo4nuNdODVOajPnTIbog2GKYr31nIlZ0fWPoCQgGfF3ETyBl1vn63F/p50Um9Z4J8O8A==
dependencies: dependencies:
"@typescript-eslint/eslint-plugin" "8.57.1" "@typescript-eslint/eslint-plugin" "8.57.2"
"@typescript-eslint/parser" "8.57.1" "@typescript-eslint/parser" "8.57.2"
"@typescript-eslint/typescript-estree" "8.57.1" "@typescript-eslint/typescript-estree" "8.57.2"
"@typescript-eslint/utils" "8.57.1" "@typescript-eslint/utils" "8.57.2"
typescript@~5.5.4: typescript@~5.5.4:
version "5.5.4" version "5.5.4"
@@ -2071,31 +2071,31 @@ vite@^5.4.9:
optionalDependencies: optionalDependencies:
fsevents "~2.3.3" fsevents "~2.3.3"
"vite@^6.0.0 || ^7.0.0 || ^8.0.0-0": "vite@^6.0.0 || ^7.0.0 || ^8.0.0":
version "8.0.1" version "8.0.2"
resolved "https://registry.yarnpkg.com/vite/-/vite-8.0.1.tgz#015cef9a747c07c0cf9cf553f37571885504e9d3" resolved "https://registry.yarnpkg.com/vite/-/vite-8.0.2.tgz#fcee428eb0ad3d4aa9843d7f7ba981679bbe5edc"
integrity sha512-wt+Z2qIhfFt85uiyRt5LPU4oVEJBXj8hZNWKeqFG4gRG/0RaRGJ7njQCwzFVjO+v4+Ipmf5CY7VdmZRAYYBPHw== integrity sha512-1gFhNi+bHhRE/qKZOJXACm6tX4bA3Isy9KuKF15AgSRuRazNBOJfdDemPBU16/mpMxApDPrWvZ08DcLPEoRnuA==
dependencies: dependencies:
lightningcss "^1.32.0" lightningcss "^1.32.0"
picomatch "^4.0.3" picomatch "^4.0.3"
postcss "^8.5.8" postcss "^8.5.8"
rolldown "1.0.0-rc.10" rolldown "1.0.0-rc.11"
tinyglobby "^0.2.15" tinyglobby "^0.2.15"
optionalDependencies: optionalDependencies:
fsevents "~2.3.3" fsevents "~2.3.3"
vitest@^4.0.18: vitest@^4.0.18:
version "4.1.0" version "4.1.1"
resolved "https://registry.yarnpkg.com/vitest/-/vitest-4.1.0.tgz#b598abbe83f0c9e93d18cf3c5f23c75a525f8e82" resolved "https://registry.yarnpkg.com/vitest/-/vitest-4.1.1.tgz#04700de9cb16898640ebfb4613abecfa83fac4fc"
integrity sha512-YbDrMF9jM2Lqc++2530UourxZHmkKLxrs4+mYhEwqWS97WJ7wOYEkcr+QfRgJ3PW9wz3odRijLZjHEaRLTNbqw== integrity sha512-yF+o4POL41rpAzj5KVILUxm1GCjKnELvaqmU9TLLUbMfDzuN0UpUR9uaDs+mCtjPe+uYPksXDRLQGGPvj1cTmA==
dependencies: dependencies:
"@vitest/expect" "4.1.0" "@vitest/expect" "4.1.1"
"@vitest/mocker" "4.1.0" "@vitest/mocker" "4.1.1"
"@vitest/pretty-format" "4.1.0" "@vitest/pretty-format" "4.1.1"
"@vitest/runner" "4.1.0" "@vitest/runner" "4.1.1"
"@vitest/snapshot" "4.1.0" "@vitest/snapshot" "4.1.1"
"@vitest/spy" "4.1.0" "@vitest/spy" "4.1.1"
"@vitest/utils" "4.1.0" "@vitest/utils" "4.1.1"
es-module-lexer "^2.0.0" es-module-lexer "^2.0.0"
expect-type "^1.3.0" expect-type "^1.3.0"
magic-string "^0.30.21" magic-string "^0.30.21"
@@ -2107,7 +2107,7 @@ vitest@^4.0.18:
tinyexec "^1.0.2" tinyexec "^1.0.2"
tinyglobby "^0.2.15" tinyglobby "^0.2.15"
tinyrainbow "^3.0.3" tinyrainbow "^3.0.3"
vite "^6.0.0 || ^7.0.0 || ^8.0.0-0" vite "^6.0.0 || ^7.0.0 || ^8.0.0"
why-is-node-running "^2.3.0" why-is-node-running "^2.3.0"
w3c-xmlserializer@^5.0.0: w3c-xmlserializer@^5.0.0: