From 24289c4ae5b42bdff2dc05dcba416c585c14f421 Mon Sep 17 00:00:00 2001 From: duckietm Date: Fri, 26 May 2023 11:11:06 +0200 Subject: [PATCH 01/39] Fix: Club Gift alert screen --- src/common/index.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/index.scss b/src/common/index.scss index 0db39154..344c0608 100644 --- a/src/common/index.scss +++ b/src/common/index.scss @@ -705,7 +705,7 @@ } .notification-height { - max-height: 85px; + max-height: 12vh; } .remove-outline { From 1e30f14ef9a0fdd6c9130fdfce2b42231dbd2e61 Mon Sep 17 00:00:00 2001 From: duckietm Date: Fri, 26 May 2023 11:20:35 +0200 Subject: [PATCH 02/39] Fix: Tooltip Currency `OverlayTrigger` error --- src/components/purse/views/CurrencyView.tsx | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/src/components/purse/views/CurrencyView.tsx b/src/components/purse/views/CurrencyView.tsx index 994112be..a47534e6 100644 --- a/src/components/purse/views/CurrencyView.tsx +++ b/src/components/purse/views/CurrencyView.tsx @@ -23,17 +23,5 @@ export const CurrencyView: FC = props => ); }, [ amount, short, type ]); - if(!short) return element; - - return ( - - { LocalizeFormattedNumber(amount) } - - }> - { element } - - ); + return element; } From ef0435ca140958e3df44bd45752c121b069a5f5e Mon Sep 17 00:00:00 2001 From: duckietm Date: Sat, 27 May 2023 16:13:06 +0200 Subject: [PATCH 03/39] Update CurrencyView From 95d68182bc18eab8793ef63b30123c8229186905 Mon Sep 17 00:00:00 2001 From: duckietm Date: Sat, 27 May 2023 16:15:52 +0200 Subject: [PATCH 04/39] Update Bootstrap Updatet Bootstrap to version: 2.7.2, fully tested! This will fix alot of small errors. https://github.com/react-bootstrap/react-bootstrap/blob/master/CHANGELOG.md --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index d0aa5eb1..7a19f141 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "@nitrots/nitro-renderer": "^1.6.6", "@tanstack/react-virtual": "^3.0.0-alpha.0", "react": "^18.2.0", - "react-bootstrap": "^2.2.2", + "react-bootstrap": "^2.7.2", "react-dom": "^18.2.0", "react-icons": "^4.7.1", "react-slider": "^2.0.0", From e5bd91e3539f15350f24103b89a0f86094ebe883 Mon Sep 17 00:00:00 2001 From: duckietm Date: Mon, 8 Jan 2024 11:19:53 +0100 Subject: [PATCH 05/39] Fix Duplicate friends --- src/hooks/friends/useFriends.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hooks/friends/useFriends.ts b/src/hooks/friends/useFriends.ts index c40f22c0..4be3d46e 100644 --- a/src/hooks/friends/useFriends.ts +++ b/src/hooks/friends/useFriends.ts @@ -209,7 +209,7 @@ const useFriendsState = () => { const index = newValue.findIndex(existing => (existing.requesterUserId === request.requesterUserId)); - if(index > 0) + if(index >= 0) { newValue[index] = CloneObject(newValue[index]); newValue[index].populate(request); From 2d8f669680c63970c31949c490887b0a21c1faf3 Mon Sep 17 00:00:00 2001 From: duckietm Date: Fri, 8 Mar 2024 12:57:02 +0100 Subject: [PATCH 06/39] Updates & Fixing - Updated Bootstrap - Fxing Scroller - Fixed Avatareditor - Added Renderer to the build - Added images # Dev Build is ready to be used to develop --- package-lock.json | 4903 ----------------- package.json | 34 +- src/assets/images/buttons/accept.png | Bin 0 -> 1700 bytes src/assets/images/buttons/button.png | Bin 0 -> 1669 bytes src/assets/images/buttons/button_active.png | Bin 0 -> 1668 bytes src/assets/images/buttons/button_gray.png | Bin 0 -> 4637 bytes .../images/buttons/button_gray_active.png | Bin 0 -> 4637 bytes .../images/buttons/button_gray_hover.png | Bin 0 -> 4645 bytes src/assets/images/buttons/button_hover.png | Bin 0 -> 1665 bytes src/assets/images/buttons/button_inactive.png | Bin 0 -> 4569 bytes src/assets/images/buttons/button_success.png | Bin 0 -> 4567 bytes .../images/buttons/button_success_active.png | Bin 0 -> 4574 bytes .../images/buttons/button_success_hover.png | Bin 0 -> 4568 bytes src/assets/images/buttons/checkbox.png | Bin 0 -> 1627 bytes .../images/buttons/checkbox_checked.png | Bin 0 -> 1713 bytes src/assets/images/buttons/decline.png | Bin 0 -> 1708 bytes src/assets/images/buttons/toggle_bg.png | Bin 0 -> 1678 bytes src/assets/images/buttons/toggle_left.png | Bin 0 -> 1648 bytes src/assets/images/buttons/toggle_right.png | Bin 0 -> 1661 bytes src/assets/images/buttons/volter_bold_btn.png | Bin 0 -> 1693 bytes .../images/buttons/volter_bold_btn_active.png | Bin 0 -> 4399 bytes .../images/buttons/volter_bold_btn_hover.png | Bin 0 -> 1910 bytes .../images/buttons/volter_normal_btn.png | Bin 0 -> 1659 bytes .../buttons/volter_normal_btn_active.png | Bin 0 -> 4581 bytes .../buttons/volter_normal_btn_hover.png | Bin 0 -> 4577 bytes src/assets/images/room/arrow-left.png | Bin 0 -> 1832 bytes src/assets/images/room/arrow-right.png | Bin 0 -> 1837 bytes src/assets/images/room/chatinput.png | Bin 0 -> 1699 bytes .../images/room/chatstyles_selector.png | Bin 0 -> 2308 bytes .../room/chatstyles_selector_window.png | Bin 0 -> 1793 bytes src/assets/images/room/context_menu_arrow.png | Bin 0 -> 1620 bytes .../images/room/context_menu_arrow_hover.png | Bin 0 -> 1620 bytes .../images/room/context_menu_arrow_up.png | Bin 0 -> 1620 bytes .../room/context_menu_arrow_up_hover.png | Bin 0 -> 1620 bytes src/assets/images/room/context_menu_bg.png | Bin 0 -> 1737 bytes .../images/room/context_menu_btn_bg.png | Bin 0 -> 1601 bytes .../images/room/context_pointer_after.png | Bin 0 -> 1681 bytes src/assets/images/room/infostand_buttons.png | Bin 0 -> 1689 bytes .../images/room/infostand_buttons_active.png | Bin 0 -> 1645 bytes .../images/room/infostand_buttons_hover.png | Bin 0 -> 1684 bytes src/assets/images/room/name_bg.png | Bin 0 -> 1719 bytes src/assets/images/room/pointer_after.png | Bin 0 -> 1676 bytes src/assets/images/room/report-room.png | Bin 0 -> 222 bytes src/assets/styles/bootstrap/_accordion.scss | 9 +- src/assets/styles/bootstrap/_alert.scss | 5 +- src/assets/styles/bootstrap/_breadcrumb.scss | 9 +- .../styles/bootstrap/_button-group.scss | 23 +- src/assets/styles/bootstrap/_buttons.scss | 160 +- src/assets/styles/bootstrap/_card.scss | 22 +- src/assets/styles/bootstrap/_carousel.scss | 19 +- src/assets/styles/bootstrap/_close.scss | 3 +- src/assets/styles/bootstrap/_dropdown.scss | 1 - src/assets/styles/bootstrap/_functions.scss | 140 +- src/assets/styles/bootstrap/_images.scss | 3 +- src/assets/styles/bootstrap/_list-group.scss | 19 +- src/assets/styles/bootstrap/_modal.scss | 24 +- src/assets/styles/bootstrap/_nav.scss | 207 +- src/assets/styles/bootstrap/_navbar.scss | 7 +- src/assets/styles/bootstrap/_offcanvas.scss | 14 +- src/assets/styles/bootstrap/_pagination.scss | 22 +- .../styles/bootstrap/_placeholders.scss | 11 +- src/assets/styles/bootstrap/_popover.scss | 46 +- src/assets/styles/bootstrap/_progress.scss | 4 +- src/assets/styles/bootstrap/_reboot.scss | 374 +- src/assets/styles/bootstrap/_spinners.scss | 4 +- src/assets/styles/bootstrap/_tables.scss | 16 +- src/assets/styles/bootstrap/_toasts.scss | 6 +- src/assets/styles/bootstrap/_tooltip.scss | 14 +- src/assets/styles/bootstrap/_type.scss | 2 - src/assets/styles/bootstrap/_utilities.scss | 553 +- src/assets/styles/bootstrap/_variables.scss | 9 +- .../styles/bootstrap/bootstrap-grid.scss | 2 +- .../styles/bootstrap/forms/_form-check.scss | 16 +- .../styles/bootstrap/forms/_form-control.scss | 46 +- .../styles/bootstrap/forms/_form-range.scss | 15 +- .../styles/bootstrap/forms/_form-select.scss | 51 +- .../styles/bootstrap/forms/_input-group.scss | 11 +- .../bootstrap/helpers/_colored-links.scss | 6 +- .../styles/bootstrap/mixins/_backdrop.scss | 8 +- .../bootstrap/mixins/_border-radius.scss | 3 +- .../styles/bootstrap/mixins/_breakpoints.scss | 24 +- .../styles/bootstrap/mixins/_buttons.scss | 51 +- .../styles/bootstrap/mixins/_deprecate.scss | 7 +- .../styles/bootstrap/mixins/_forms.scss | 18 +- .../styles/bootstrap/mixins/_gradients.scss | 72 +- src/assets/styles/bootstrap/mixins/_grid.scss | 36 +- .../styles/bootstrap/mixins/_image.scss | 1 - .../styles/bootstrap/mixins/_transition.scss | 7 +- .../styles/bootstrap/mixins/_utilities.scss | 35 +- .../styles/bootstrap/utilities/_api.scss | 13 +- src/assets/styles/bootstrap/vendor/_rfs.scss | 11 +- src/common/InfiniteScroll.tsx | 48 +- .../views/AvatarEditorWardrobeView.tsx | 2 +- submodules/renderer/.browserslistrc | 12 + submodules/renderer/.editorconfig | 16 + submodules/renderer/.eslintrc.json | 135 + submodules/renderer/.gitignore | 51 + submodules/renderer/.gitlab-ci.yml | 25 + submodules/renderer/.vscode/settings.json | 32 + submodules/renderer/LICENSE | 674 +++ submodules/renderer/README.md | 17 + submodules/renderer/index.ts | 1 + submodules/renderer/package.json | 73 + submodules/renderer/src/api/INitroCore.ts | 9 + .../renderer/src/api/asset/AssetManager.ts | 205 + .../renderer/src/api/asset/GetAssetManager.ts | 3 + .../renderer/src/api/asset/GraphicAsset.ts | 148 + .../src/api/asset/GraphicAssetCollection.ts | 392 ++ .../api/asset/GraphicAssetGifCollection.ts | 11 + .../src/api/asset/GraphicAssetPalette.ts | 61 + submodules/renderer/src/api/asset/IAsset.ts | 9 + .../renderer/src/api/asset/IAssetAlias.ts | 6 + .../renderer/src/api/asset/IAssetData.ts | 23 + .../renderer/src/api/asset/IAssetManager.ts | 18 + .../renderer/src/api/asset/IAssetPalette.ts | 12 + .../renderer/src/api/asset/IGraphicAsset.ts | 19 + .../src/api/asset/IGraphicAssetCollection.ts | 25 + .../api/asset/IGraphicAssetGifCollection.ts | 8 + .../src/api/asset/IGraphicAssetPalette.ts | 9 + .../api/asset/animation/IAssetAnimation.ts | 23 + .../api/asset/animation/IAssetAnimationAdd.ts | 8 + .../asset/animation/IAssetAnimationAvatar.ts | 6 + .../animation/IAssetAnimationDirection.ts | 4 + .../asset/animation/IAssetAnimationFrame.ts | 8 + .../animation/IAssetAnimationFramePart.ts | 14 + .../animation/IAssetAnimationFramePartItem.ts | 5 + .../animation/IAssetAnimationOverride.ts | 8 + .../asset/animation/IAssetAnimationRemove.ts | 4 + .../asset/animation/IAssetAnimationShadow.ts | 4 + .../asset/animation/IAssetAnimationSprite.ts | 11 + .../IAssetAnimationSpriteDirection.ts | 7 + .../renderer/src/api/asset/animation/index.ts | 12 + submodules/renderer/src/api/asset/index.ts | 26 + .../api/asset/logic/IAssetLogicCustomVars.ts | 4 + .../src/api/asset/logic/IAssetLogicData.ts | 17 + .../asset/logic/IAssetLogicPlanetSystem.ts | 11 + .../src/api/asset/logic/ISoundSample.ts | 5 + .../renderer/src/api/asset/logic/index.ts | 6 + .../api/asset/logic/model/IAssetDimension.ts | 6 + .../api/asset/logic/model/IAssetLogicModel.ts | 7 + .../src/api/asset/logic/model/index.ts | 2 + .../logic/particlesystem/IParticleSystem.ts | 11 + .../particlesystem/IParticleSystemEmitter.ts | 15 + .../particlesystem/IParticleSystemParticle.ts | 7 + .../IParticleSystemSimulation.ts | 9 + .../api/asset/logic/particlesystem/index.ts | 4 + .../asset/room-visualization/IAssetPlane.ts | 8 + .../room-visualization/IAssetPlaneMask.ts | 7 + .../room-visualization/IAssetPlaneMaskData.ts | 6 + .../IAssetPlaneMaskVisualization.ts | 7 + .../room-visualization/IAssetPlaneMaterial.ts | 7 + .../IAssetPlaneMaterialCell.ts | 7 + .../IAssetPlaneMaterialCellColumn.ts | 8 + .../IAssetPlaneMaterialCellExtraItemData.ts | 6 + .../IAssetPlaneMaterialCellMatrix.ts | 12 + .../room-visualization/IAssetPlaneTexture.ts | 7 + .../IAssetPlaneTextureBitmap.ts | 8 + .../IAssetPlaneVisualization.ts | 10 + .../IAssetPlaneVisualizationAnimatedLayer.ts | 6 + ...ssetPlaneVisualizationAnimatedLayerItem.ts | 11 + .../IAssetPlaneVisualizationData.ts | 10 + .../IAssetPlaneVisualizationLayer.ts | 7 + .../IAssetRoomVisualizationData.ts | 10 + .../src/api/asset/room-visualization/index.ts | 17 + .../api/asset/spritesheet/ISpritesheetData.ts | 7 + .../asset/spritesheet/ISpritesheetFrame.ts | 25 + .../api/asset/spritesheet/ISpritesheetMeta.ts | 12 + .../src/api/asset/spritesheet/index.ts | 3 + .../visualization/IAssetVisualizationData.ts | 20 + .../IAssetVisualizationDirection.ts | 6 + .../visualization/IAssetVisualizationLayer.ts | 10 + .../animation/IAssetVisualAnimation.ts | 10 + .../animation/IAssetVisualAnimationLayer.ts | 9 + .../IAssetVisualAnimationSequence.ts | 8 + .../IAssetVisualAnimationSequenceFrame.ts | 11 + ...AssetVisualAnimationSequenceFrameOffset.ts | 6 + .../asset/visualization/animation/index.ts | 5 + .../asset/visualization/color/IAssetColor.ts | 6 + .../visualization/color/IAssetColorLayer.ts | 4 + .../api/asset/visualization/color/index.ts | 2 + .../visualization/gestures/IAssetGesture.ts | 5 + .../api/asset/visualization/gestures/index.ts | 1 + .../src/api/asset/visualization/index.ts | 7 + .../visualization/postures/IAssetPosture.ts | 5 + .../api/asset/visualization/postures/index.ts | 1 + .../renderer/src/api/common/IDisposable.ts | 5 + .../src/api/common/IEventDispatcher.ts | 10 + .../src/api/common/ILinkEventTracker.ts | 5 + .../renderer/src/api/common/INitroEvent.ts | 4 + .../renderer/src/api/common/INitroManager.ts | 10 + .../src/api/common/IUpdateReceiver.ts | 6 + .../renderer/src/api/common/NitroLogger.ts | 48 + submodules/renderer/src/api/common/index.ts | 7 + .../renderer/src/api/communication/ICodec.ts | 9 + .../communication/ICommunicationManager.ts | 8 + .../src/api/communication/IConnection.ts | 19 + .../communication/IConnectionStateListener.ts | 4 + .../src/api/communication/IMessageComposer.ts | 5 + .../communication/IMessageConfiguration.ts | 5 + .../api/communication/IMessageDataWrapper.ts | 15 + .../src/api/communication/IMessageEvent.ts | 11 + .../src/api/communication/IMessageParser.ts | 7 + .../enums/ClientDeviceCategoryEnum.ts | 5 + .../communication/enums/ClientPlatformEnum.ts | 7 + .../communication/enums/WebSocketEventEnum.ts | 7 + .../src/api/communication/enums/index.ts | 3 + .../renderer/src/api/communication/index.ts | 10 + .../configuration/IConfigurationManager.ts | 3 + .../api/configuration/NitroConfiguration.ts | 114 + .../renderer/src/api/configuration/index.ts | 2 + submodules/renderer/src/api/index.ts | 48 + .../avatar/IAvatarAssetDownloadLibrary.ts | 8 + .../api/nitro/avatar/IAvatarEffectListener.ts | 6 + .../nitro/avatar/IAvatarFigureContainer.ts | 10 + .../src/api/nitro/avatar/IAvatarImage.ts | 36 + .../api/nitro/avatar/IAvatarImageListener.ts | 6 + .../api/nitro/avatar/IAvatarRenderManager.ts | 26 + .../avatar/IEffectAssetDownloadLibrary.ts | 10 + .../renderer/src/api/nitro/avatar/IOutfit.ts | 5 + .../nitro/avatar/actions/IActionDefinition.ts | 19 + .../nitro/avatar/actions/IActiveActionData.ts | 11 + .../src/api/nitro/avatar/actions/index.ts | 2 + .../api/nitro/avatar/animation/IAnimation.ts | 11 + .../avatar/animation/IAnimationLayerData.ts | 12 + .../avatar/animation/IAnimationManager.ts | 9 + .../avatar/animation/IAvatarDataContainer.ts | 12 + .../avatar/animation/ISpriteDataContainer.ts | 14 + .../src/api/nitro/avatar/animation/index.ts | 5 + .../src/api/nitro/avatar/enum/AvatarAction.ts | 127 + .../nitro/avatar/enum/AvatarDirectionAngle.ts | 7 + .../avatar/enum/AvatarEditorFigureCategory.ts | 10 + .../avatar/enum/AvatarEditorInstanceId.ts | 7 + .../avatar/enum/AvatarEditorSideCategory.ts | 5 + .../nitro/avatar/enum/AvatarFigurePartType.ts | 29 + .../nitro/avatar/enum/AvatarGuideStatus.ts | 6 + .../api/nitro/avatar/enum/AvatarScaleType.ts | 5 + .../api/nitro/avatar/enum/AvatarSetType.ts | 6 + .../src/api/nitro/avatar/enum/GeometryType.ts | 8 + .../src/api/nitro/avatar/enum/RenderMode.ts | 7 + .../src/api/nitro/avatar/enum/index.ts | 11 + .../nitro/avatar/figuredata/IFigureData.ts | 8 + .../avatar/figuredata/IFigureDataColor.ts | 8 + .../figuredata/IFigureDataHiddenLayer.ts | 4 + .../avatar/figuredata/IFigureDataPalette.ts | 7 + .../avatar/figuredata/IFigureDataPart.ts | 8 + .../nitro/avatar/figuredata/IFigureDataSet.ts | 15 + .../avatar/figuredata/IFigureDataSetType.ts | 12 + .../src/api/nitro/avatar/figuredata/index.ts | 7 + .../renderer/src/api/nitro/avatar/index.ts | 14 + .../api/nitro/avatar/pet/IPetCustomPart.ts | 6 + .../src/api/nitro/avatar/pet/PetType.ts | 38 + .../src/api/nitro/avatar/pet/index.ts | 2 + .../api/nitro/avatar/structure/IFigurePart.ts | 9 + .../nitro/avatar/structure/IFigurePartSet.ts | 16 + .../nitro/avatar/structure/IFigureSetData.ts | 7 + .../api/nitro/avatar/structure/IPalette.ts | 9 + .../api/nitro/avatar/structure/IPartColor.ts | 8 + .../api/nitro/avatar/structure/ISetType.ts | 12 + .../nitro/avatar/structure/IStructureData.ts | 12 + .../src/api/nitro/avatar/structure/index.ts | 7 + .../nitro/camera/IRoomCameraWidgetEffect.ts | 11 + .../nitro/camera/IRoomCameraWidgetManager.ts | 13 + .../camera/IRoomCameraWidgetSelectedEffect.ts | 7 + .../renderer/src/api/nitro/camera/index.ts | 3 + .../communication/INitroCommunicationDemo.ts | 3 + .../INitroCommunicationManager.ts | 11 + .../src/api/nitro/communication/index.ts | 2 + .../api/nitro/enums/RelationshipStatusEnum.ts | 10 + .../src/api/nitro/enums/ToolbarIconEnum.ts | 10 + .../renderer/src/api/nitro/enums/index.ts | 2 + submodules/renderer/src/api/nitro/index.ts | 20 + .../localization/INitroLocalizationManager.ts | 17 + .../src/api/nitro/localization/index.ts | 1 + .../src/api/nitro/room/IGetImageListener.ts | 7 + .../src/api/nitro/room/IImageResult.ts | 9 + .../src/api/nitro/room/IPetColorResult.ts | 10 + .../api/nitro/room/IRoomContentListener.ts | 4 + .../src/api/nitro/room/IRoomContentLoader.ts | 34 + .../src/api/nitro/room/IRoomCreator.ts | 53 + .../src/api/nitro/room/IRoomEngine.ts | 103 + .../src/api/nitro/room/IRoomEngineServices.ts | 47 + .../api/nitro/room/IRoomObjectEventManager.ts | 6 + .../api/nitro/room/ISelectedRoomObjectData.ts | 18 + .../enums/FriendFurniEngravingWidgetType.ts | 8 + .../room/enums/RoomObjectPlacementSource.ts | 5 + .../src/api/nitro/room/enums/index.ts | 2 + .../renderer/src/api/nitro/room/index.ts | 15 + .../api/nitro/room/object/IPetFigureData.ts | 10 + .../src/api/nitro/room/object/IRoomMapData.ts | 14 + .../nitro/room/object/RoomObjectCategory.ts | 9 + .../nitro/room/object/RoomObjectLogicType.ts | 74 + .../room/object/RoomObjectOperationType.ts | 15 + .../api/nitro/room/object/RoomObjectType.ts | 7 + .../nitro/room/object/RoomObjectUserType.ts | 40 + .../nitro/room/object/RoomObjectVariable.ts | 145 + .../object/RoomObjectVisualizationType.ts | 40 + .../api/nitro/room/object/data/IObjectData.ts | 17 + .../nitro/room/object/data/ObjectDataBase.ts | 99 + .../room/object/data/ObjectDataFactory.ts | 44 + .../nitro/room/object/data/ObjectDataFlags.ts | 4 + .../nitro/room/object/data/ObjectDataKey.ts | 11 + .../src/api/nitro/room/object/data/index.ts | 6 + .../object/data/type/CrackableDataType.ts | 74 + .../room/object/data/type/EmptyDataType.ts | 39 + .../room/object/data/type/HighScoreData.ts | 36 + .../object/data/type/HighScoreDataType.ts | 131 + .../room/object/data/type/LegacyDataType.ts | 59 + .../room/object/data/type/MapDataType.ts | 90 + .../room/object/data/type/NumberDataType.ts | 91 + .../room/object/data/type/StringDataType.ts | 90 + .../room/object/data/type/VoteDataType.ts | 66 + .../api/nitro/room/object/data/type/index.ts | 9 + .../src/api/nitro/room/object/index.ts | 11 + .../room/utils/IFurnitureStackingHeightMap.ts | 11 + .../nitro/room/utils/ILegacyWallGeometry.ts | 18 + .../api/nitro/room/utils/ITileObjectMap.ts | 11 + .../src/api/nitro/room/utils/ObjectRolling.ts | 40 + .../src/api/nitro/room/utils/index.ts | 4 + .../src/api/nitro/session/FurnitureType.ts | 10 + .../src/api/nitro/session/IFurnitureData.ts | 33 + .../nitro/session/IFurnitureDataListener.ts | 4 + .../nitro/session/IGroupInformationManager.ts | 7 + .../api/nitro/session/IIgnoredUsersManager.ts | 9 + .../src/api/nitro/session/IPollChoice.ts | 6 + .../src/api/nitro/session/IPollQuestion.ts | 14 + .../src/api/nitro/session/IProductData.ts | 6 + .../api/nitro/session/IProductDataListener.ts | 6 + .../src/api/nitro/session/IQuestion.ts | 12 + .../api/nitro/session/IRoomHandlerListener.ts | 10 + .../nitro/session/IRoomModerationSettings.ts | 6 + .../src/api/nitro/session/IRoomPetData.ts | 30 + .../src/api/nitro/session/IRoomSession.ts | 68 + .../api/nitro/session/IRoomSessionManager.ts | 13 + .../src/api/nitro/session/IRoomUserData.ts | 26 + .../api/nitro/session/ISessionDataManager.ts | 58 + .../src/api/nitro/session/IUserDataManager.ts | 26 + .../nitro/session/enum/GenericErrorEnum.ts | 5 + .../nitro/session/enum/NoobnessLevelEnum.ts | 6 + .../nitro/session/enum/RoomControllerLevel.ts | 9 + .../session/enum/RoomTradingLevelEnum.ts | 22 + .../api/nitro/session/enum/SecurityLevel.ts | 13 + .../src/api/nitro/session/enum/index.ts | 5 + .../renderer/src/api/nitro/session/index.ts | 19 + .../src/api/nitro/sound/IMusicController.ts | 25 + .../api/nitro/sound/IPlaylistController.ts | 15 + .../src/api/nitro/sound/ISoundManager.ts | 8 + .../src/api/nitro/sound/common/ISongInfo.ts | 12 + .../src/api/nitro/sound/common/index.ts | 1 + .../renderer/src/api/nitro/sound/index.ts | 4 + .../src/api/room/IPetBreedingResultData.ts | 10 + .../renderer/src/api/room/IRoomGeometry.ts | 21 + .../renderer/src/api/room/IRoomInstance.ts | 27 + .../src/api/room/IRoomInstanceContainer.ts | 8 + .../renderer/src/api/room/IRoomManager.ts | 18 + .../src/api/room/IRoomManagerListener.ts | 6 + .../src/api/room/IRoomObjectManager.ts | 14 + .../src/api/room/IRoomObjectUpdateMessage.ts | 7 + .../src/api/room/IRoomSpriteMouseEvent.ts | 17 + submodules/renderer/src/api/room/IVector3D.ts | 10 + .../src/api/room/RoomObjectSpriteData.ts | 18 + submodules/renderer/src/api/room/Vector3d.ts | 189 + submodules/renderer/src/api/room/index.ts | 17 + .../src/api/room/object/IRoomObject.ts | 22 + .../api/room/object/IRoomObjectController.ts | 18 + .../src/api/room/object/IRoomObjectModel.ts | 8 + .../room/object/IRoomObjectModelController.ts | 11 + .../api/room/object/enum/AlphaTolerance.ts | 6 + .../room/object/enum/RoomObjectSpriteType.ts | 7 + .../src/api/room/object/enum/index.ts | 2 + .../renderer/src/api/room/object/index.ts | 7 + .../object/logic/IRoomObjectEventHandler.ts | 19 + .../object/logic/IRoomObjectLogicFactory.ts | 10 + .../object/logic/IRoomObjectMouseHandler.ts | 7 + .../src/api/room/object/logic/index.ts | 3 + .../object/visualization/IPlaneDrawingData.ts | 14 + .../visualization/IPlaneVisualization.ts | 6 + .../IRoomObjectGraphicVisualization.ts | 7 + .../object/visualization/IRoomObjectSprite.ts | 33 + .../IRoomObjectSpriteVisualization.ts | 12 + .../visualization/IRoomObjectVisualization.ts | 18 + .../IRoomObjectVisualizationData.ts | 7 + .../IRoomObjectVisualizationFactory.ts | 9 + .../room/object/visualization/IRoomPlane.ts | 13 + .../object/visualization/ISortableSprite.ts | 9 + .../api/room/object/visualization/index.ts | 10 + .../room/renderer/IRoomCanvasMouseListener.ts | 8 + .../src/api/room/renderer/IRoomRenderer.ts | 9 + .../api/room/renderer/IRoomRendererBase.ts | 10 + .../api/room/renderer/IRoomRendererFactory.ts | 6 + .../api/room/renderer/IRoomRenderingCanvas.ts | 39 + .../renderer/IRoomSpriteCanvasContainer.ts | 8 + .../renderer/src/api/room/renderer/index.ts | 6 + .../renderer/src/api/ui/MouseEventType.ts | 12 + .../renderer/src/api/ui/TouchEventType.ts | 8 + submodules/renderer/src/api/ui/index.ts | 4 + .../ui/widget/enums/AvatarExpressionEnum.ts | 28 + .../api/ui/widget/enums/ContextMenuEnum.ts | 12 + .../FriendWidgetEngravingWidgetTypeEnum.ts | 8 + .../src/api/ui/widget/enums/RoomWidgetEnum.ts | 57 + .../RoomWidgetEnumItemExtradataParameter.ts | 10 + .../RoomWidgetFurniInfoUsagePolicyEnum.ts | 6 + .../ui/widget/enums/SystemChatStyleEnum.ts | 6 + .../renderer/src/api/ui/widget/enums/index.ts | 7 + .../renderer/src/api/ui/widget/index.ts | 1 + .../renderer/src/api/utils/AdvancedMap.ts | 159 + .../src/api/utils/ArrayBufferToBase64.ts | 11 + .../renderer/src/api/utils/BinaryReader.ts | 82 + .../renderer/src/api/utils/BinaryWriter.ts | 109 + submodules/renderer/src/api/utils/Dict.ts | 3 + .../renderer/src/api/utils/IAdvancedMap.ts | 22 + .../renderer/src/api/utils/IBinaryReader.ts | 12 + .../renderer/src/api/utils/IBinaryWriter.ts | 11 + .../renderer/src/api/utils/NitroBundle.ts | 60 + submodules/renderer/src/api/utils/index.ts | 9 + submodules/renderer/src/core/NitroCore.ts | 41 + submodules/renderer/src/core/NitroVersion.ts | 30 + .../renderer/src/core/common/Disposable.ts | 40 + .../src/core/common/EventDispatcher.ts | 106 + .../renderer/src/core/common/NitroManager.ts | 66 + submodules/renderer/src/core/common/index.ts | 3 + .../communication/CommunicationManager.ts | 50 + .../core/communication/SocketConnection.ts | 355 ++ .../src/core/communication/codec/Byte.ts | 14 + .../src/core/communication/codec/Short.ts | 14 + .../codec/evawire/EvaWireDataWrapper.ts | 78 + .../codec/evawire/EvaWireFormat.ts | 88 + .../core/communication/codec/evawire/index.ts | 2 + .../src/core/communication/codec/index.ts | 3 + .../renderer/src/core/communication/index.ts | 5 + .../messages/MessageClassManager.ts | 128 + .../src/core/communication/messages/index.ts | 1 + .../core/configuration/ConfigurationEvent.ts | 12 + .../configuration/ConfigurationManager.ts | 93 + .../renderer/src/core/configuration/index.ts | 2 + submodules/renderer/src/core/index.ts | 8 + .../renderer/src/events/NitroSettingsEvent.ts | 116 + .../renderer/src/events/NitroSoundEvent.ts | 19 + .../events/NitroToolbarAnimateIconEvent.ts | 34 + .../renderer/src/events/NitroToolbarEvent.ts | 35 + .../avatar/AvatarRenderEffectLibraryEvent.ts | 21 + .../src/events/avatar/AvatarRenderEvent.ts | 4 + .../events/avatar/AvatarRenderLibraryEvent.ts | 21 + .../renderer/src/events/avatar/index.ts | 3 + .../camera/RoomCameraWidgetManagerEvent.ts | 11 + .../renderer/src/events/camera/index.ts | 1 + .../NitroCommunicationDemoEvent.ts | 27 + .../src/events/communication/index.ts | 1 + .../renderer/src/events/core/MessageEvent.ts | 55 + .../renderer/src/events/core/NitroEvent.ts | 16 + .../src/events/core/SocketConnectionEvent.ts | 31 + submodules/renderer/src/events/core/index.ts | 3 + submodules/renderer/src/events/index.ts | 11 + .../localization/NitroLocalizationEvent.ts | 12 + .../renderer/src/events/localization/index.ts | 1 + .../events/room/RoomBackgroundColorEvent.ts | 34 + .../src/events/room/RoomContentLoadedEvent.ts | 22 + .../renderer/src/events/room/RoomDragEvent.ts | 27 + .../events/room/RoomEngineDimmerStateEvent.ts | 48 + .../src/events/room/RoomEngineEvent.ts | 26 + .../src/events/room/RoomEngineObjectEvent.ts | 39 + .../room/RoomEngineObjectPlacedEvent.ts | 74 + .../room/RoomEngineObjectPlacedOnUserEvent.ts | 25 + .../room/RoomEngineObjectPlaySoundEvent.ts | 28 + .../src/events/room/RoomEngineRoomAdEvent.ts | 9 + .../room/RoomEngineSamplePlaybackEvent.ts | 30 + .../room/RoomEngineTriggerWidgetEvent.ts | 58 + .../events/room/RoomEngineUseProductEvent.ts | 28 + .../events/room/RoomObjectBadgeAssetEvent.ts | 28 + .../events/room/RoomObjectDataRequestEvent.ts | 13 + .../room/RoomObjectDimmerStateUpdateEvent.ts | 49 + .../src/events/room/RoomObjectEvent.ts | 33 + .../events/room/RoomObjectFloorHoleEvent.ts | 13 + .../room/RoomObjectFurnitureActionEvent.ts | 20 + .../room/RoomObjectHSLColorEnableEvent.ts | 42 + .../room/RoomObjectHSLColorEnabledEvent.ts | 41 + .../src/events/room/RoomObjectMouseEvent.ts | 100 + .../src/events/room/RoomObjectMoveEvent.ts | 13 + .../events/room/RoomObjectPlaySoundIdEvent.ts | 29 + .../src/events/room/RoomObjectRoomAdEvent.ts | 32 + .../room/RoomObjectSamplePlaybackEvent.ts | 31 + .../room/RoomObjectSoundMachineEvent.ts | 13 + .../room/RoomObjectStateChangedEvent.ts | 22 + .../events/room/RoomObjectTileMouseEvent.ts | 48 + .../events/room/RoomObjectWallMouseEvent.ts | 59 + .../room/RoomObjectWidgetRequestEvent.ts | 48 + .../src/events/room/RoomSpriteMouseEvent.ts | 117 + .../src/events/room/RoomToObjectEvent.ts | 9 + .../room/RoomToObjectOwnAvatarMoveEvent.ts | 21 + .../renderer/src/events/room/RoomZoomEvent.ts | 34 + submodules/renderer/src/events/room/index.ts | 35 + .../events/session/BadgeImageReadyEvent.ts | 28 + .../session/MysteryBoxKeysUpdateEvent.ts | 27 + .../src/events/session/PerksUpdatedEvent.ts | 11 + .../events/session/RoomSessionChatEvent.ts | 69 + .../RoomSessionConfirmPetBreedingEvent.ts | 50 + ...oomSessionConfirmPetBreedingResultEvent.ts | 28 + .../events/session/RoomSessionDanceEvent.ts | 28 + .../session/RoomSessionDimmerPresetsEvent.ts | 45 + ...RoomSessionDimmerPresetsEventPresetItem.ts | 35 + .../session/RoomSessionDoorbellEvent.ts | 23 + .../session/RoomSessionErrorMessageEvent.ts | 32 + .../src/events/session/RoomSessionEvent.ts | 31 + .../RoomSessionFavoriteGroupUpdateEvent.ts | 42 + .../session/RoomSessionFriendRequestEvent.ts | 35 + .../RoomSessionNestBreedingSuccessEvent.ts | 28 + .../session/RoomSessionPetBreedingEvent.ts | 35 + .../RoomSessionPetBreedingResultEvent.ts | 28 + .../RoomSessionPetCommandsUpdateEvent.ts | 35 + .../RoomSessionPetFigureUpdateEvent.ts | 28 + .../session/RoomSessionPetInfoUpdateEvent.ts | 21 + .../session/RoomSessionPetLevelUpdateEvent.ts | 28 + .../session/RoomSessionPetPackageEvent.ts | 43 + .../RoomSessionPetStatusUpdateEvent.ts | 49 + .../events/session/RoomSessionPollEvent.ts | 100 + .../events/session/RoomSessionPresentEvent.ts | 64 + .../session/RoomSessionPropertyUpdateEvent.ts | 12 + .../events/session/RoomSessionQueueEvent.ts | 57 + .../session/RoomSessionSpectatorModeEvent.ts | 12 + .../session/RoomSessionUserBadgesEvent.ts | 29 + .../session/RoomSessionUserDataUpdateEvent.ts | 21 + .../RoomSessionUserFigureUpdateEvent.ts | 49 + .../session/RoomSessionUserTagsEvent.ts | 27 + .../events/session/RoomSessionVoteEvent.ts | 50 + .../session/RoomSessionWordQuizEvent.ts | 111 + .../session/SessionDataPreferencesEvent.ts | 20 + .../src/events/session/UserNameUpdateEvent.ts | 20 + .../renderer/src/events/session/index.ts | 36 + submodules/renderer/src/index.ts | 6 + submodules/renderer/src/nitro/INitro.ts | 31 + submodules/renderer/src/nitro/Nitro.ts | 365 ++ submodules/renderer/src/nitro/Plugins.ts | 23 + .../avatar/AvatarAssetDownloadLibrary.ts | 72 + .../avatar/AvatarAssetDownloadManager.ts | 337 ++ .../src/nitro/avatar/AvatarFigureContainer.ts | 116 + .../renderer/src/nitro/avatar/AvatarImage.ts | 1100 ++++ .../avatar/AvatarImageBodyPartContainer.ts | 89 + .../nitro/avatar/AvatarImagePartContainer.ts | 136 + .../src/nitro/avatar/AvatarRenderManager.ts | 468 ++ .../src/nitro/avatar/AvatarStructure.ts | 635 +++ .../avatar/EffectAssetDownloadLibrary.ts | 83 + .../avatar/EffectAssetDownloadManager.ts | 297 + .../nitro/avatar/PlaceHolderAvatarImage.ts | 18 + .../nitro/avatar/actions/ActionDefinition.ts | 224 + .../src/nitro/avatar/actions/ActionType.ts | 44 + .../nitro/avatar/actions/ActiveActionData.ts | 73 + .../avatar/actions/AvatarActionManager.ts | 186 + .../src/nitro/avatar/actions/index.ts | 4 + .../src/nitro/avatar/alias/AssetAlias.ts | 37 + .../avatar/alias/AssetAliasCollection.ts | 89 + .../renderer/src/nitro/avatar/alias/index.ts | 2 + .../avatar/animation/AddDataContainer.ts | 61 + .../src/nitro/avatar/animation/Animation.ts | 311 ++ .../avatar/animation/AnimationManager.ts | 49 + .../animation/AvatarAnimationLayerData.ts | 109 + .../avatar/animation/AvatarDataContainer.ts | 136 + .../animation/DirectionDataContainer.ts | 16 + .../avatar/animation/SpriteDataContainer.ts | 94 + .../src/nitro/avatar/animation/index.ts | 7 + .../avatar/cache/AvatarImageActionCache.ts | 57 + .../avatar/cache/AvatarImageBodyPartCache.ts | 96 + .../nitro/avatar/cache/AvatarImageCache.ts | 522 ++ .../avatar/cache/AvatarImageDirectionCache.ts | 59 + .../src/nitro/avatar/cache/ImageData.ts | 67 + .../renderer/src/nitro/avatar/cache/index.ts | 5 + .../avatar/data/HabboAvatarAnimations.ts | 827 +++ .../nitro/avatar/data/HabboAvatarGeometry.ts | 1830 ++++++ .../nitro/avatar/data/HabboAvatarPartSets.ts | 418 ++ .../avatar/geometry/AvatarModelGeometry.ts | 287 + .../src/nitro/avatar/geometry/AvatarSet.ts | 92 + .../nitro/avatar/geometry/GeometryBodyPart.ts | 194 + .../src/nitro/avatar/geometry/GeometryItem.ts | 55 + .../src/nitro/avatar/geometry/Matrix4x4.ts | 133 + .../src/nitro/avatar/geometry/Node3D.ts | 33 + .../src/nitro/avatar/geometry/Vector3D.ts | 120 + .../src/nitro/avatar/geometry/index.ts | 7 + submodules/renderer/src/nitro/avatar/index.ts | 24 + .../src/nitro/avatar/pets/PetCustomPart.ts | 45 + .../src/nitro/avatar/pets/PetFigureData.ts | 229 + .../renderer/src/nitro/avatar/pets/index.ts | 2 + .../avatar/structure/AvatarAnimationData.ts | 57 + .../nitro/avatar/structure/AvatarCanvas.ts | 47 + .../structure/AvatarStructureDownload.ts | 52 + .../nitro/avatar/structure/FigureSetData.ts | 129 + .../nitro/avatar/structure/PartSetsData.ts | 118 + .../structure/animation/AnimationAction.ts | 138 + .../animation/AnimationActionPart.ts | 30 + .../animation/AvatarAnimationFrame.ts | 21 + .../nitro/avatar/structure/animation/index.ts | 3 + .../avatar/structure/figure/FigurePart.ts | 58 + .../avatar/structure/figure/FigurePartSet.ts | 141 + .../nitro/avatar/structure/figure/Palette.ts | 45 + .../avatar/structure/figure/PartColor.ts | 46 + .../nitro/avatar/structure/figure/SetType.ts | 103 + .../nitro/avatar/structure/figure/index.ts | 5 + .../src/nitro/avatar/structure/index.ts | 8 + .../avatar/structure/parts/ActivePartSet.ts | 26 + .../avatar/structure/parts/PartDefinition.ts | 64 + .../src/nitro/avatar/structure/parts/index.ts | 2 + .../nitro/camera/RoomCameraWidgetEffect.ts | 61 + .../nitro/camera/RoomCameraWidgetManager.ts | 106 + .../camera/RoomCameraWidgetSelectedEffect.ts | 23 + submodules/renderer/src/nitro/camera/index.ts | 3 + .../communication/NitroCommunicationDemo.ts | 191 + .../NitroCommunicationManager.ts | 117 + .../src/nitro/communication/NitroMessages.ts | 1179 ++++ .../renderer/src/nitro/communication/index.ts | 4 + .../messages/incoming/IncomingHeader.ts | 473 ++ .../advertisement/InterstitialMessageEvent.ts | 16 + .../advertisement/RoomAdErrorEvent.ts | 16 + .../messages/incoming/advertisement/index.ts | 2 + .../AvailabilityStatusMessageEvent.ts | 16 + .../AvailabilityTimeMessageEvent.ts | 16 + .../availability/HotelClosedAndOpensEvent.ts | 16 + .../HotelClosesAndWillOpenAtEvent.ts | 16 + .../HotelWillCloseInMinutesEvent.ts | 16 + .../MaintenanceStatusMessageEvent.ts | 16 + .../messages/incoming/availability/index.ts | 6 + .../ChangeUserNameResultMessageEvent.ts | 25 + .../avatar/CheckUserNameResultMessageEvent.ts | 16 + .../incoming/avatar/FigureUpdateEvent.ts | 16 + .../incoming/avatar/WardrobeMessageEvent.ts | 16 + .../messages/incoming/avatar/index.ts | 4 + .../incoming/bots/BotAddedToInventoryEvent.ts | 16 + .../incoming/bots/BotInventoryMessageEvent.ts | 16 + .../incoming/bots/BotReceivedMessageEvent.ts | 16 + .../bots/BotRemovedFromInventoryEvent.ts | 16 + .../messages/incoming/bots/index.ts | 4 + .../callforhelp/CfhSanctionMessageEvent.ts | 16 + .../callforhelp/CfhTopicsInitEvent.ts | 16 + .../callforhelp/SanctionStatusEvent.ts | 16 + .../messages/incoming/callforhelp/index.ts | 3 + .../camera/CameraPublishStatusMessageEvent.ts | 16 + .../camera/CameraPurchaseOKMessageEvent.ts | 16 + .../camera/CameraSnapshotMessageEvent.ts | 16 + .../camera/CameraStorageUrlMessageEvent.ts | 16 + .../camera/CompetitionStatusMessageEvent.ts | 16 + .../incoming/camera/InitCameraMessageEvent.ts | 16 + .../camera/ThumbnailStatusMessageEvent.ts | 16 + .../messages/incoming/camera/index.ts | 7 + .../CampaignCalendarDataMessageEvent.ts | 16 + .../CampaignCalendarDoorOpenedMessageEvent.ts | 16 + .../messages/incoming/campaign/index.ts | 2 + .../catalog/BonusRareInfoMessageEvent.ts | 16 + .../BuildersClubFurniCountMessageEvent.ts | 16 + ...ldersClubSubscriptionStatusMessageEvent.ts | 16 + .../BundleDiscountRulesetMessageEvent.ts | 16 + .../catalog/CatalogPageExpirationEvent.ts | 16 + .../catalog/CatalogPageMessageEvent.ts | 16 + ...talogPageWithEarliestExpiryMessageEvent.ts | 16 + .../incoming/catalog/CatalogPagesListEvent.ts | 16 + .../catalog/CatalogPublishedMessageEvent.ts | 16 + .../incoming/catalog/ClubGiftInfoEvent.ts | 16 + .../incoming/catalog/ClubGiftSelectedEvent.ts | 16 + .../DirectSMSClubBuyAvailableMessageEvent.ts | 16 + .../catalog/FireworkChargeDataEvent.ts | 16 + .../catalog/GiftReceiverNotFoundEvent.ts | 16 + .../catalog/GiftWrappingConfigurationEvent.ts | 16 + .../HabboClubExtendOfferMessageEvent.ts | 16 + .../catalog/HabboClubOffersMessageEvent.ts | 16 + .../catalog/IsOfferGiftableMessageEvent.ts | 16 + .../catalog/LimitedEditionSoldOutEvent.ts | 16 + .../LimitedOfferAppearingNextMessageEvent.ts | 16 + .../catalog/NotEnoughBalanceMessageEvent.ts | 16 + .../incoming/catalog/ProductOfferEvent.ts | 16 + .../catalog/PurchaseErrorMessageEvent.ts | 16 + .../catalog/PurchaseNotAllowedMessageEvent.ts | 16 + .../catalog/PurchaseOKMessageEvent.ts | 16 + .../catalog/RoomAdPurchaseInfoEvent.ts | 16 + .../SeasonalCalendarDailyOfferMessageEvent.ts | 16 + .../SellablePetPalettesMessageEvent.ts | 16 + .../incoming/catalog/TargetedOfferEvent.ts | 16 + .../catalog/TargetedOfferNotFoundEvent.ts | 16 + .../catalog/VoucherRedeemErrorMessageEvent.ts | 16 + .../catalog/VoucherRedeemOkMessageEvent.ts | 16 + .../messages/incoming/catalog/index.ts | 32 + .../incoming/client/ClientPingEvent.ts | 16 + .../messages/incoming/client/index.ts | 1 + .../CompetitionEntrySubmitResultEvent.ts | 16 + .../CompetitionVotingInfoMessageEvent.ts | 16 + .../CurrentTimingCodeMessageEvent.ts | 16 + .../IsUserPartOfCompetitionMessageEvent.ts | 16 + .../NoOwnedRoomsAlertMessageEvent.ts | 16 + .../competition/SecondsUntilMessageEvent.ts | 16 + .../messages/incoming/competition/index.ts | 6 + .../crafting/CraftableProductsEvent.ts | 16 + .../incoming/crafting/CraftingRecipeEvent.ts | 16 + .../crafting/CraftingRecipesAvailableEvent.ts | 16 + .../incoming/crafting/CraftingResultEvent.ts | 16 + .../messages/incoming/crafting/index.ts | 4 + .../incoming/desktop/DesktopViewEvent.ts | 16 + .../messages/incoming/desktop/index.ts | 1 + .../friendlist/AcceptFriendResultEvent.ts | 16 + .../FindFriendsProcessResultEvent.ts | 16 + .../friendlist/FollowFriendFailedEvent.ts | 16 + .../friendlist/FriendListFragmentEvent.ts | 16 + .../friendlist/FriendListUpdateEvent.ts | 16 + .../friendlist/FriendNotificationEvent.ts | 16 + .../friendlist/FriendRequestsEvent.ts | 16 + .../friendlist/HabboSearchResultEvent.ts | 16 + .../friendlist/InstantMessageErrorEvent.ts | 16 + .../incoming/friendlist/MessageErrorEvent.ts | 16 + .../incoming/friendlist/MessengerInitEvent.ts | 16 + .../friendlist/MiniMailNewMessageEvent.ts | 16 + .../friendlist/MiniMailUnreadCountEvent.ts | 16 + .../friendlist/NewConsoleMessageEvent.ts | 16 + .../friendlist/NewFriendRequestEvent.ts | 16 + .../friendlist/RoomInviteErrorEvent.ts | 16 + .../incoming/friendlist/RoomInviteEvent.ts | 16 + .../messages/incoming/friendlist/index.ts | 17 + .../Game2AccountGameStatusMessageEvent.ts | 16 + .../Game2GameDirectoryStatusMessageEvent.ts | 16 + .../Game2InArenaQueueMessageEvent.ts | 16 + .../Game2JoiningGameFailedMessageEvent.ts | 16 + .../Game2StartingGameFailedMessageEvent.ts | 16 + .../directory/Game2StopCounterMessageEvent.ts | 16 + .../Game2UserLeftGameMessageEvent.ts | 16 + .../messages/incoming/game/directory/index.ts | 7 + .../messages/incoming/game/index.ts | 3 + ...ievementResolutionCompletedMessageEvent.ts | 16 + ...hievementResolutionProgressMessageEvent.ts | 16 + .../AchievementResolutionsMessageEvent.ts | 16 + .../lobby/GameAchievementsMessageEvent.ts | 16 + .../game/lobby/GameInviteMessageEvent.ts | 16 + .../game/lobby/GameListMessageEvent.ts | 16 + .../game/lobby/GameStatusMessageEvent.ts | 16 + .../game/lobby/JoinedQueueMessageEvent.ts | 16 + .../lobby/JoiningQueueFailedMessageEvent.ts | 16 + .../game/lobby/LeftQueueMessageEvent.ts | 16 + .../game/lobby/LoadGameMessageEvent.ts | 16 + .../incoming/game/lobby/LoadGameUrlEvent.ts | 16 + .../game/lobby/UnloadGameMessageEvent.ts | 16 + .../lobby/UserGameAchievementsMessageEvent.ts | 16 + .../messages/incoming/game/lobby/index.ts | 14 + .../Game2WeeklyFriendsLeaderboardEvent.ts | 16 + .../game/score/Game2WeeklyLeaderboardEvent.ts | 16 + ...eeklyCompetitiveFriendsLeaderboardEvent.ts | 16 + .../WeeklyCompetitiveLeaderboardEvent.ts | 16 + .../game/score/WeeklyGameRewardEvent.ts | 16 + .../score/WeeklyGameRewardWinnersEvent.ts | 16 + .../messages/incoming/game/score/index.ts | 6 + .../incoming/generic/GenericErrorEvent.ts | 16 + .../messages/incoming/generic/index.ts | 1 + .../gifts/PhoneCollectionStateMessageEvent.ts | 16 + .../gifts/TryPhoneNumberResultMessageEvent.ts | 16 + .../TryVerificationCodeResultMessageEvent.ts | 16 + .../messages/incoming/gifts/index.ts | 3 + .../incoming/group/GroupBadgePartsEvent.ts | 16 + .../incoming/group/GroupBuyDataEvent.ts | 16 + .../group/GroupConfirmMemberRemoveEvent.ts | 16 + .../incoming/group/GroupInformationEvent.ts | 16 + .../incoming/group/GroupMembersEvent.ts | 16 + .../incoming/group/GroupPurchasedEvent.ts | 16 + .../incoming/group/GroupSettingsEvent.ts | 16 + .../HabboGroupDeactivatedMessageEvent.ts | 16 + .../messages/incoming/group/index.ts | 8 + .../groupforums/ForumDataMessageEvent.ts | 16 + .../groupforums/ForumsListMessageEvent.ts | 16 + .../groupforums/GuildForumThreadsEvent.ts | 16 + .../groupforums/PostMessageMessageEvent.ts | 16 + .../groupforums/PostThreadMessageEvent.ts | 16 + .../groupforums/ThreadMessagesMessageEvent.ts | 16 + .../UnreadForumsCountMessageEvent.ts | 16 + .../groupforums/UpdateMessageMessageEvent.ts | 16 + .../groupforums/UpdateThreadMessageEvent.ts | 16 + .../messages/incoming/groupforums/index.ts | 9 + .../handshake/CompleteDiffieHandshakeEvent.ts | 16 + .../handshake/DisconnectReasonEnum.ts | 46 + .../handshake/DisconnectReasonEvent.ts | 33 + .../handshake/IdentityAccountsEvent.ts | 16 + .../handshake/InitDiffieHandshakeEvent.ts | 16 + .../handshake/NoobnessLevelMessageEvent.ts | 16 + .../messages/incoming/handshake/index.ts | 6 + .../CallForHelpDisabledNotifyMessageEvent.ts | 16 + ...lForHelpPendingCallsDeletedMessageEvent.ts | 16 + .../CallForHelpPendingCallsMessageEvent.ts | 16 + .../help/CallForHelpReplyMessageEvent.ts | 16 + .../help/CallForHelpResultMessageEvent.ts | 16 + .../ChatReviewSessionDetachedMessageEvent.ts | 16 + ...ReviewSessionOfferedToGuideMessageEvent.ts | 16 + .../ChatReviewSessionResultsMessageEvent.ts | 16 + .../ChatReviewSessionStartedMessageEvent.ts | 16 + ...atReviewSessionVotingStatusMessageEvent.ts | 16 + .../help/GuideOnDutyStatusMessageEvent.ts | 16 + .../help/GuideReportingStatusMessageEvent.ts | 16 + .../help/GuideSessionAttachedMessageEvent.ts | 16 + .../help/GuideSessionDetachedMessageEvent.ts | 16 + .../help/GuideSessionEndedMessageEvent.ts | 16 + .../help/GuideSessionErrorMessageEvent.ts | 16 + ...deSessionInvitedToGuideRoomMessageEvent.ts | 16 + .../help/GuideSessionMessageMessageEvent.ts | 16 + ...GuideSessionPartnerIsTypingMessageEvent.ts | 16 + .../GuideSessionRequesterRoomMessageEvent.ts | 16 + .../help/GuideSessionStartedMessageEvent.ts | 16 + .../GuideTicketCreationResultMessageEvent.ts | 16 + .../help/GuideTicketResolutionMessageEvent.ts | 16 + .../help/HotelMergeNameChangeEvent.ts | 16 + .../IssueCloseNotificationMessageEvent.ts | 16 + .../incoming/help/QuizDataMessageEvent.ts | 16 + .../incoming/help/QuizResultsMessageEvent.ts | 16 + .../messages/incoming/help/index.ts | 27 + .../communication/messages/incoming/index.ts | 75 + .../achievements/AchievementEvent.ts | 16 + .../achievements/AchievementsEvent.ts | 16 + .../achievements/AchievementsScoreEvent.ts | 16 + .../incoming/inventory/achievements/index.ts | 3 + .../AvatarEffectActivatedEvent.ts | 16 + .../avatareffect/AvatarEffectAddedEvent.ts | 16 + .../avatareffect/AvatarEffectExpiredEvent.ts | 16 + .../avatareffect/AvatarEffectSelectedEvent.ts | 16 + .../avatareffect/AvatarEffectsEvent.ts | 16 + .../incoming/inventory/avatareffect/index.ts | 5 + .../inventory/badges/BadgePointLimitsEvent.ts | 16 + .../inventory/badges/BadgeReceivedEvent.ts | 16 + .../incoming/inventory/badges/BadgesEvent.ts | 16 + .../badges/IsBadgeRequestFulfilledEvent.ts | 16 + .../incoming/inventory/badges/index.ts | 4 + .../clothes/FigureSetIdsMessageEvent.ts | 16 + .../incoming/inventory/clothes/_Str_16135.ts | 16 + .../incoming/inventory/clothes/_Str_17532.ts | 16 + .../incoming/inventory/clothes/index.ts | 3 + .../furni/FurnitureListAddOrUpdateEvent.ts | 16 + .../inventory/furni/FurnitureListEvent.ts | 16 + .../furni/FurnitureListInvalidateEvent.ts | 16 + .../furni/FurnitureListRemovedEvent.ts | 16 + .../furni/FurniturePostItPlacedEvent.ts | 16 + .../furni/gifts/PresentOpenedMessageEvent.ts | 16 + .../incoming/inventory/furni/gifts/index.ts | 1 + .../incoming/inventory/furni/index.ts | 6 + .../messages/incoming/inventory/index.ts | 8 + .../pets/ConfirmBreedingRequestEvent.ts | 16 + .../pets/ConfirmBreedingResultEvent.ts | 16 + .../pets/GoToBreedingNestFailureEvent.ts | 16 + .../pets/NestBreedingSuccessEvent.ts | 16 + .../pets/PetAddedToInventoryEvent.ts | 16 + .../inventory/pets/PetInventoryEvent.ts | 16 + .../inventory/pets/PetReceivedMessageEvent.ts | 16 + .../pets/PetRemovedFromInventoryEvent.ts | 16 + .../messages/incoming/inventory/pets/index.ts | 8 + .../inventory/trading/TradingAcceptEvent.ts | 26 + .../inventory/trading/TradingCloseEvent.ts | 21 + .../trading/TradingCompletedEvent.ts | 16 + .../trading/TradingConfirmationEvent.ts | 16 + .../inventory/trading/TradingListItemEvent.ts | 56 + .../trading/TradingNoSuchItemEvent.ts | 16 + .../inventory/trading/TradingNotOpenEvent.ts | 16 + .../inventory/trading/TradingOpenEvent.ts | 36 + .../trading/TradingOpenFailedEvent.ts | 16 + .../trading/TradingOtherNotAllowedEvent.ts | 16 + .../trading/TradingYouAreNotAllowedEvent.ts | 16 + .../incoming/inventory/trading/index.ts | 11 + .../landingview/PromoArticlesMessageEvent.ts | 16 + .../messages/incoming/landingview/index.ts | 2 + .../votes/CommunityGoalVoteMessageEvent.ts | 16 + .../incoming/landingview/votes/index.ts | 1 + .../MarketplaceBuyOfferResultEvent.ts | 17 + .../MarketplaceCanMakeOfferResult.ts | 17 + .../MarketplaceCancelOfferResultEvent.ts | 16 + .../MarketplaceConfigurationEvent.ts | 16 + .../marketplace/MarketplaceItemStatsEvent.ts | 16 + .../marketplace/MarketplaceMakeOfferResult.ts | 17 + .../marketplace/MarketplaceOffersEvent.ts | 16 + .../marketplace/MarketplaceOwnOffersEvent.ts | 16 + .../messages/incoming/marketplace/index.ts | 8 + .../incoming/moderation/CfhChatlogEvent.ts | 16 + .../moderation/IssueDeletedMessageEvent.ts | 16 + .../moderation/IssueInfoMessageEvent.ts | 16 + .../moderation/IssuePickFailedMessageEvent.ts | 16 + .../ModeratorActionResultMessageEvent.ts | 16 + .../moderation/ModeratorCautionEvent.ts | 16 + .../moderation/ModeratorInitMessageEvent.ts | 16 + .../moderation/ModeratorMessageEvent.ts | 16 + .../moderation/ModeratorRoomInfoEvent.ts | 16 + .../ModeratorToolPreferencesEvent.ts | 16 + .../moderation/ModeratorUserInfoEvent.ts | 16 + .../incoming/moderation/RoomChatlogEvent.ts | 16 + .../incoming/moderation/RoomVisitsEvent.ts | 16 + .../moderation/UserBannedMessageEvent.ts | 16 + .../incoming/moderation/UserChatlogEvent.ts | 16 + .../messages/incoming/moderation/index.ts | 15 + .../CancelMysteryBoxWaitMessageEvent.ts | 16 + .../GotMysteryBoxPrizeMessageEvent.ts | 16 + .../mysterybox/MysteryBoxKeysEvent.ts | 16 + .../ShowMysteryBoxWaitMessageEvent.ts | 16 + .../messages/incoming/mysterybox/index.ts | 4 + .../incoming/navigator/CanCreateRoomEvent.ts | 16 + .../navigator/CanCreateRoomEventEvent.ts | 16 + .../CategoriesWithVisitorCountEvent.ts | 16 + .../CompetitionRoomsDataMessageEvent.ts | 16 + .../navigator/ConvertedRoomIdEvent.ts | 16 + .../navigator/DoorbellMessageEvent.ts | 21 + .../navigator/FavouriteChangedEvent.ts | 16 + .../incoming/navigator/FavouritesEvent.ts | 16 + .../navigator/FlatAccessDeniedMessageEvent.ts | 16 + .../incoming/navigator/FlatCreatedEvent.ts | 16 + .../navigator/GetGuestRoomResultEvent.ts | 16 + .../navigator/GuestRoomSearchResultEvent.ts | 16 + .../navigator/NavigatorCollapsedEvent.ts | 16 + .../navigator/NavigatorHomeRoomEvent.ts | 16 + .../navigator/NavigatorLiftedEvent.ts | 16 + .../navigator/NavigatorMetadataEvent.ts | 16 + .../NavigatorOpenRoomCreatorEvent.ts | 16 + .../navigator/NavigatorSearchEvent.ts | 16 + .../navigator/NavigatorSearchesEvent.ts | 16 + .../navigator/NavigatorSettingsEvent.ts | 16 + .../navigator/PopularRoomTagsResultEvent.ts | 16 + .../navigator/RoomEventCancelEvent.ts | 16 + .../incoming/navigator/RoomEventEvent.ts | 16 + .../RoomFilterSettingsMessageEvent.ts | 16 + .../navigator/RoomSettingsUpdatedEvent.ts | 16 + .../RoomThumbnailUpdateResultEvent.ts | 16 + .../incoming/navigator/UserEventCatsEvent.ts | 16 + .../incoming/navigator/UserFlatCatsEvent.ts | 16 + .../messages/incoming/navigator/index.ts | 28 + .../AchievementNotificationMessageEvent.ts | 16 + .../ActivityPointNotificationMessageEvent.ts | 16 + .../incoming/notifications/BotErrorEvent.ts | 16 + .../ClubGiftNotificationEvent.ts | 16 + .../notifications/ConnectionErrorEvent.ts | 16 + .../ElementPointerMessageEvent.ts | 16 + .../HabboBroadcastMessageEvent.ts | 16 + .../notifications/HotelWillShutdownEvent.ts | 16 + .../InfoFeedEnableMessageEvent.ts | 16 + .../notifications/MOTDNotificationEvent.ts | 16 + .../NotificationDialogMessageEvent.ts | 16 + .../OfferRewardDeliveredMessageEvent.ts | 16 + .../PetLevelNotificationEvent.ts | 16 + .../notifications/PetPlacingErrorEvent.ts | 16 + .../RestoreClientMessageEvent.ts | 16 + .../notifications/SimpleAlertMessageEvent.ts | 16 + .../notifications/UnseenItemsEvent.ts | 16 + .../messages/incoming/notifications/index.ts | 17 + .../incoming/nux/NewUserExperienceGift.ts | 37 + .../NewUserExperienceGiftOfferMessageEvent.ts | 16 + .../nux/NewUserExperienceGiftOptions.ts | 40 + .../nux/NewUserExperienceNotCompleteEvent.ts | 16 + .../messages/incoming/nux/ProductOffer.ts | 28 + .../messages/incoming/nux/index.ts | 5 + .../perk/PerkAllowancesMessageEvent.ts | 16 + .../messages/incoming/perk/index.ts | 1 + .../OpenPetPackageRequestedMessageEvent.ts | 16 + .../pet/OpenPetPackageResultMessageEvent.ts | 16 + .../pet/PetLevelUpdateMessageEvent.ts | 16 + .../pet/PetScratchFailedMessageEvent.ts | 16 + .../pet/PetTrainingPanelMessageEvent.ts | 16 + .../pet/breeding/PetBreedingMessageEvent.ts | 16 + .../messages/incoming/pet/breeding/index.ts | 1 + .../messages/incoming/pet/index.ts | 6 + .../incoming/poll/PollContentsEvent.ts | 16 + .../messages/incoming/poll/PollErrorEvent.ts | 16 + .../messages/incoming/poll/PollOfferEvent.ts | 16 + .../incoming/poll/QuestionAnsweredEvent.ts | 16 + .../messages/incoming/poll/QuestionEvent.ts | 16 + .../incoming/poll/QuestionFinishedEvent.ts | 16 + .../incoming/poll/RoomPollResultEvent.ts | 16 + .../incoming/poll/StartRoomPollEvent.ts | 16 + .../messages/incoming/poll/index.ts | 8 + .../CommunityGoalEarnedPrizesMessageEvent.ts | 16 + .../CommunityGoalHallOfFameMessageEvent.ts | 16 + .../CommunityGoalProgressMessageEvent.ts | 16 + ...ConcurrentUsersGoalProgressMessageEvent.ts | 16 + .../incoming/quest/EpicPopupMessageEvent.ts | 16 + .../quest/QuestCancelledMessageEvent.ts | 16 + .../quest/QuestCompletedMessageEvent.ts | 16 + .../incoming/quest/QuestDailyMessageEvent.ts | 16 + .../incoming/quest/QuestMessageEvent.ts | 16 + .../incoming/quest/QuestsMessageEvent.ts | 16 + .../quest/SeasonalQuestsMessageEvent.ts | 16 + .../messages/incoming/quest/index.ts | 11 + .../recycler/RecyclerFinishedMessageEvent.ts | 19 + .../recycler/RecyclerStatusMessageEvent.ts | 20 + .../messages/incoming/recycler/index.ts | 2 + .../room/access/RoomEnterErrorEvent.ts | 16 + .../incoming/room/access/RoomEnterEvent.ts | 16 + .../incoming/room/access/RoomForwardEvent.ts | 16 + .../doorbell/RoomDoorbellAcceptedEvent.ts | 16 + .../incoming/room/access/doorbell/index.ts | 1 + .../messages/incoming/room/access/index.ts | 5 + .../access/rights/RoomRightsClearEvent.ts | 16 + .../room/access/rights/RoomRightsEvent.ts | 16 + .../access/rights/RoomRightsOwnerEvent.ts | 16 + .../incoming/room/access/rights/index.ts | 3 + .../room/bots/BotCommandConfigurationEvent.ts | 16 + .../room/bots/BotForceOpenContextMenuEvent.ts | 16 + .../room/bots/BotSkillListUpdateEvent.ts | 16 + .../messages/incoming/room/bots/index.ts | 3 + .../room/data/RoomChatSettingsEvent.ts | 16 + .../room/data/RoomEntryInfoMessageEvent.ts | 16 + .../incoming/room/data/RoomScoreEvent.ts | 16 + .../messages/incoming/room/data/index.ts | 3 + .../FavoriteMembershipUpdateMessageEvent.ts | 16 + .../room/engine/ObjectsDataUpdateEvent.ts | 16 + .../room/engine/ObjectsRollingEvent.ts | 16 + .../messages/incoming/room/engine/index.ts | 3 + .../CustomUserNotificationMessageEvent.ts | 16 + .../room/furniture/DiceValueMessageEvent.ts | 16 + .../FurniRentOrBuyoutOfferMessageEvent.ts | 16 + .../room/furniture/FurnitureAliasesEvent.ts | 16 + .../room/furniture/FurnitureDataEvent.ts | 16 + .../furniture/FurnitureStackHeightEvent.ts | 16 + .../GroupFurniContextMenuInfoMessageEvent.ts | 16 + .../furniture/ItemDataUpdateMessageEvent.ts | 16 + .../furniture/LoveLockFurniFinishedEvent.ts | 16 + .../LoveLockFurniFriendConfirmedEvent.ts | 16 + .../room/furniture/LoveLockFurniStartEvent.ts | 16 + .../furniture/OneWayDoorStatusMessageEvent.ts | 16 + .../RentableSpaceRentFailedMessageEvent.ts | 16 + .../RentableSpaceRentOkMessageEvent.ts | 16 + .../RentableSpaceStatusMessageEvent.ts | 16 + .../RequestSpamWallPostItMessageEvent.ts | 16 + .../RoomDimmerPresetsMessageEvent.ts | 16 + .../RoomMessageNotificationMessageEvent.ts | 16 + .../room/furniture/WelcomeGiftStatusEvent.ts | 16 + .../furniture/floor/FurnitureFloorAddEvent.ts | 16 + .../furniture/floor/FurnitureFloorEvent.ts | 16 + .../floor/FurnitureFloorRemoveEvent.ts | 16 + .../floor/FurnitureFloorUpdateEvent.ts | 16 + .../incoming/room/furniture/floor/index.ts | 4 + .../messages/incoming/room/furniture/index.ts | 22 + .../furniture/wall/FurnitureWallAddEvent.ts | 16 + .../room/furniture/wall/FurnitureWallEvent.ts | 16 + .../wall/FurnitureWallRemoveEvent.ts | 16 + .../wall/FurnitureWallUpdateEvent.ts | 16 + .../incoming/room/furniture/wall/index.ts | 4 + .../YoutubeControlVideoMessageEvent.ts | 16 + .../youtube/YoutubeDisplayPlaylistsEvent.ts | 16 + .../YoutubeDisplayVideoMessageEvent.ts | 16 + .../incoming/room/furniture/youtube/index.ts | 3 + .../messages/incoming/room/index.ts | 15 + .../room/mapping/FloorHeightMapEvent.ts | 16 + .../room/mapping/RoomEntryTileMessageEvent.ts | 16 + .../room/mapping/RoomHeightMapEvent.ts | 16 + .../room/mapping/RoomHeightMapUpdateEvent.ts | 16 + .../mapping/RoomOccupiedTilesMessageEvent.ts | 16 + .../incoming/room/mapping/RoomPaintEvent.ts | 16 + .../room/mapping/RoomReadyMessageEvent.ts | 16 + .../mapping/RoomVisualizationSettingsEvent.ts | 16 + .../messages/incoming/room/mapping/index.ts | 8 + .../room/pet/PetBreedingResultEvent.ts | 16 + .../incoming/room/pet/PetExperienceEvent.ts | 16 + .../incoming/room/pet/PetFigureUpdateEvent.ts | 16 + .../incoming/room/pet/PetInfoEvent.ts | 16 + .../incoming/room/pet/PetStatusUpdateEvent.ts | 16 + .../messages/incoming/room/pet/index.ts | 5 + .../room/session/YouArePlayingGameEvent.ts | 16 + .../session/YouAreSpectatorMessageEvent.ts | 16 + .../messages/incoming/room/session/index.ts | 2 + .../incoming/room/unit/RoomUnitDanceEvent.ts | 16 + .../incoming/room/unit/RoomUnitEffectEvent.ts | 16 + .../incoming/room/unit/RoomUnitEvent.ts | 16 + .../room/unit/RoomUnitExpressionEvent.ts | 16 + .../room/unit/RoomUnitHandItemEvent.ts | 16 + .../unit/RoomUnitHandItemReceivedEvent.ts | 16 + .../incoming/room/unit/RoomUnitIdleEvent.ts | 16 + .../incoming/room/unit/RoomUnitInfoEvent.ts | 16 + .../incoming/room/unit/RoomUnitNumberEvent.ts | 16 + .../incoming/room/unit/RoomUnitRemoveEvent.ts | 16 + .../incoming/room/unit/RoomUnitStatusEvent.ts | 16 + .../room/unit/chat/FloodControlEvent.ts | 16 + .../room/unit/chat/RemainingMuteEvent.ts | 16 + .../room/unit/chat/RoomUnitChatEvent.ts | 16 + .../room/unit/chat/RoomUnitChatShoutEvent.ts | 16 + .../unit/chat/RoomUnitChatWhisperEvent.ts | 16 + .../room/unit/chat/RoomUnitTypingEvent.ts | 16 + .../messages/incoming/room/unit/chat/index.ts | 6 + .../messages/incoming/room/unit/index.ts | 12 + .../roomevents/WiredFurniActionEvent.ts | 16 + .../roomevents/WiredFurniConditionEvent.ts | 16 + .../roomevents/WiredFurniTriggerEvent.ts | 16 + .../incoming/roomevents/WiredOpenEvent.ts | 16 + .../WiredRewardResultMessageEvent.ts | 19 + .../roomevents/WiredSaveSuccessEvent.ts | 16 + .../roomevents/WiredValidationErrorEvent.ts | 16 + .../messages/incoming/roomevents/index.ts | 7 + .../roomsettings/BannedUsersFromRoomEvent.ts | 16 + .../roomsettings/FlatControllerAddedEvent.ts | 16 + .../FlatControllerRemovedEvent.ts | 16 + .../roomsettings/FlatControllersEvent.ts | 16 + .../roomsettings/MuteAllInRoomEvent.ts | 16 + .../incoming/roomsettings/NoSuchFlatEvent.ts | 16 + .../roomsettings/RoomSettingsDataEvent.ts | 16 + .../roomsettings/RoomSettingsErrorEvent.ts | 16 + .../RoomSettingsSaveErrorEvent.ts | 16 + .../roomsettings/RoomSettingsSavedEvent.ts | 16 + .../ShowEnforceRoomCategoryDialogEvent.ts | 16 + .../roomsettings/UserUnbannedFromRoomEvent.ts | 16 + .../messages/incoming/roomsettings/index.ts | 12 + .../incoming/security/AuthenticatedEvent.ts | 16 + .../messages/incoming/security/index.ts | 1 + .../sound/JukeboxPlayListFullMessageEvent.ts | 16 + .../sound/JukeboxSongDisksMessageEvent.ts | 16 + .../incoming/sound/NowPlayingMessageEvent.ts | 16 + .../sound/OfficialSongIdMessageEvent.ts | 16 + .../incoming/sound/PlayListMessageEvent.ts | 16 + .../sound/PlayListSongAddedMessageEvent.ts | 16 + .../sound/TraxSongInfoMessageEvent.ts | 16 + .../UserSongDisksInventoryMessageEvent.ts | 16 + .../messages/incoming/sound/index.ts | 8 + .../incoming/talent/TalentLevelUpEvent.ts | 16 + .../talent/TalentTrackLevelMessageEvent.ts | 16 + .../talent/TalentTrackMessageEvent.ts | 16 + .../messages/incoming/talent/index.ts | 3 + ...countSafetyLockStatusChangeMessageEvent.ts | 16 + .../incoming/user/ApproveNameMessageEvent.ts | 16 + .../incoming/user/ChangeEmailResultEvent.ts | 16 + .../incoming/user/EmailStatusResultEvent.ts | 16 + .../ExtendedProfileChangedMessageEvent.ts | 16 + .../user/GroupDetailsChangedMessageEvent.ts | 16 + .../GroupMembershipRequestedMessageEvent.ts | 16 + .../user/GuildEditFailedMessageEvent.ts | 16 + .../user/GuildMemberMgmtFailedMessageEvent.ts | 16 + .../user/GuildMembershipsMessageEvent.ts | 16 + .../user/HabboGroupBadgesMessageEvent.ts | 16 + .../user/HabboGroupJoinFailedMessageEvent.ts | 16 + .../incoming/user/IgnoreResultEvent.ts | 16 + .../incoming/user/IgnoredUsersEvent.ts | 16 + .../incoming/user/InClientLinkEvent.ts | 16 + .../messages/incoming/user/MemberData.ts | 70 + .../user/PetRespectNoficationEvent.ts | 16 + .../user/PetSupplementedNotificationEvent.ts | 16 + .../incoming/user/RespectReceivedEvent.ts | 16 + .../user/ScrSendKickbackInfoMessageEvent.ts | 16 + .../user/WelcomeGiftChangeEmailResultEvent.ts | 16 + .../user/access/UserPermissionsEvent.ts | 16 + .../messages/incoming/user/access/index.ts | 1 + .../user/data/RelationshipStatusInfoEvent.ts | 16 + .../user/data/UserCurrentBadgesEvent.ts | 16 + .../incoming/user/data/UserInfoEvent.ts | 16 + .../user/data/UserNameChangeMessageEvent.ts | 16 + .../incoming/user/data/UserProfileEvent.ts | 16 + .../incoming/user/data/UserSettingsEvent.ts | 16 + .../user/data/UserTagsMessageEvent.ts | 16 + .../messages/incoming/user/data/index.ts | 7 + .../messages/incoming/user/index.ts | 27 + .../inventory/currency/UserCreditsEvent.ts | 16 + .../inventory/currency/UserCurrencyEvent.ts | 16 + .../incoming/user/inventory/currency/index.ts | 2 + .../messages/incoming/user/inventory/index.ts | 2 + .../subscription/UserSubscriptionEvent.ts | 16 + .../user/inventory/subscription/index.ts | 1 + .../user/wardrobe/UserWardrobePageEvent.ts | 16 + .../messages/incoming/user/wardrobe/index.ts | 1 + .../UserClassificationMessageEvent.ts | 16 + .../incoming/userclassification/index.ts | 1 + .../src/nitro/communication/messages/index.ts | 3 + .../messages/outgoing/OutgoingHeader.ts | 471 ++ .../GetInterstitialMessageComposer.ts | 21 + .../InterstitialShownMessageComposer.ts | 21 + .../RequestAchievementsMessageComposer.ts | 21 + .../messages/outgoing/advertisement/index.ts | 3 + .../avatar/ChangeUserNameMessageComposer.ts | 21 + .../avatar/CheckUserNameMessageComposer.ts | 21 + .../avatar/GetWardrobeMessageComposer.ts | 21 + .../SaveWardrobeOutfitMessageComposer.ts | 21 + .../messages/outgoing/avatar/index.ts | 4 + .../camera/PhotoCompetitionMessageComposer.ts | 21 + .../camera/PublishPhotoMessageComposer.ts | 21 + .../camera/PurchasePhotoMessageComposer.ts | 21 + .../camera/RenderRoomMessageComposer.ts | 43 + .../RenderRoomThumbnailMessageComposer.ts | 9 + .../RequestCameraConfigurationComposer.ts | 21 + .../messages/outgoing/camera/index.ts | 6 + ...OpenCampaignCalendarDoorAsStaffComposer.ts | 21 + .../OpenCampaignCalendarDoorComposer.ts | 21 + .../messages/outgoing/campaign/index.ts | 2 + ...uildersClubPlaceRoomItemMessageComposer.ts | 21 + ...uildersClubPlaceWallItemMessageComposer.ts | 21 + ...ldersClubQueryFurniCountMessageComposer.ts | 21 + .../GetBonusRareInfoMessageComposer.ts | 21 + .../GetBundleDiscountRulesetComposer.ts | 21 + .../catalog/GetCatalogIndexComposer.ts | 21 + .../catalog/GetCatalogPageComposer.ts | 21 + .../GetCatalogPageExpirationComposer.ts | 21 + ...etCatalogPageWithEarliestExpiryComposer.ts | 21 + .../outgoing/catalog/GetClubGiftInfo.ts | 21 + .../catalog/GetClubOffersMessageComposer.ts | 21 + .../GetDirectClubBuyAvailableComposer.ts | 21 + .../GetGiftWrappingConfigurationComposer.ts | 21 + ...HabboBasicMembershipExtendOfferComposer.ts | 21 + .../GetHabboClubExtendOfferMessageComposer.ts | 21 + .../catalog/GetIsOfferGiftableComposer.ts | 21 + .../GetLimitedOfferAppearingNextComposer.ts | 21 + .../catalog/GetNextTargetedOfferComposer.ts | 21 + .../catalog/GetProductOfferComposer.ts | 21 + .../catalog/GetRoomAdPurchaseInfoComposer.ts | 21 + .../GetSeasonalCalendarDailyOfferComposer.ts | 21 + .../catalog/GetSellablePetPalettesComposer.ts | 21 + .../catalog/GetTargetedOfferComposer.ts | 21 + ...rkCatalogNewAdditionsPageOpenedComposer.ts | 21 + ...urchaseBasicMembershipExtensionComposer.ts | 21 + .../PurchaseFromCatalogAsGiftComposer.ts | 21 + .../catalog/PurchaseFromCatalogComposer.ts | 21 + .../catalog/PurchaseRoomAdMessageComposer.ts | 21 + .../catalog/PurchaseTargetedOfferComposer.ts | 21 + .../PurchaseVipMembershipExtensionComposer.ts | 21 + .../catalog/RedeemVoucherMessageComposer.ts | 21 + .../RoomAdPurchaseInitiatedComposer.ts | 21 + .../catalog/SelectClubGiftComposer.ts | 21 + .../catalog/SetTargetedOfferStateComposer.ts | 21 + .../ShopTargetedOfferViewedComposer.ts | 21 + .../messages/outgoing/catalog/index.ts | 35 + ...orwardToACompetitionRoomMessageComposer.ts | 21 + ...orwardToASubmittableRoomMessageComposer.ts | 21 + ...dToRandomCompetitionRoomMessageComposer.ts | 21 + .../GetCurrentTimingCodeMessageComposer.ts | 21 + ...tIsUserPartOfCompetitionMessageComposer.ts | 21 + .../GetSecondsUntilMessageComposer.ts | 21 + .../RoomCompetitionInitMessageComposer.ts | 21 + .../SubmitRoomToCompetitionMessageComposer.ts | 26 + .../competition/VoteForRoomMessageComposer.ts | 21 + .../messages/outgoing/competition/index.ts | 9 + .../outgoing/crafting/CraftComposer.ts | 21 + .../outgoing/crafting/CraftSecretComposer.ts | 21 + .../crafting/GetCraftableProductsComposer.ts | 21 + .../crafting/GetCraftingRecipeComposer.ts | 21 + .../GetCraftingRecipesAvailableComposer.ts | 21 + .../messages/outgoing/crafting/index.ts | 5 + .../outgoing/desktop/DesktopViewComposer.ts | 21 + .../messages/outgoing/desktop/index.ts | 1 + .../FriendFurniConfirmLockMessageComposer.ts | 21 + .../messages/outgoing/friendfurni/index.ts | 1 + .../friendlist/AcceptFriendMessageComposer.ts | 21 + .../DeclineFriendMessageComposer.ts | 21 + .../FindNewFriendsMessageComposer.ts | 21 + .../friendlist/FollowFriendMessageComposer.ts | 21 + .../friendlist/FriendListUpdateComposer.ts | 21 + .../friendlist/GetFriendRequestsComposer.ts | 21 + .../friendlist/HabboSearchComposer.ts | 21 + .../friendlist/MessengerInitComposer.ts | 21 + .../friendlist/RemoveFriendComposer.ts | 21 + .../friendlist/RequestFriendComposer.ts | 21 + .../friendlist/SendMessageComposer.ts | 21 + .../friendlist/SendRoomInviteComposer.ts | 21 + .../SetRelationshipStatusComposer.ts | 21 + .../outgoing/friendlist/VisitUserComposer.ts | 21 + .../messages/outgoing/friendlist/index.ts | 14 + .../arena/Game2ExitGameMessageComposer.ts | 21 + .../arena/Game2GameChatMessageComposer.ts | 21 + .../Game2LoadStageReadyMessageComposer.ts | 21 + .../arena/Game2PlayAgainMessageComposer.ts | 21 + .../messages/outgoing/game/arena/index.ts | 4 + ...CheckGameDirectoryStatusMessageComposer.ts | 21 + ...ame2GetAccountGameStatusMessageComposer.ts | 21 + .../messages/outgoing/game/directory/index.ts | 2 + .../messages/outgoing/game/index.ts | 5 + ...2RequestFullStatusUpdateMessageComposer.ts | 21 + .../messages/outgoing/game/ingame/index.ts | 1 + .../lobby/AcceptGameInviteMessageComposer.ts | 21 + .../game/lobby/GameUnloadedMessageComposer.ts | 21 + .../GetGameAchievementsMessageComposer.ts | 21 + .../game/lobby/GetGameListMessageComposer.ts | 21 + .../lobby/GetGameStatusMessageComposer.ts | 21 + ...etResolutionAchievementsMessageComposer.ts | 21 + .../GetUserGameAchievementsMessageComposer.ts | 21 + .../game/lobby/JoinQueueMessageComposer.ts | 21 + .../game/lobby/LeaveQueueMessageComposer.ts | 21 + ...setResolutionAchievementMessageComposer.ts | 21 + .../messages/outgoing/game/lobby/index.ts | 10 + ...ame2GetWeeklyFriendsLeaderboardComposer.ts | 21 + .../Game2GetWeeklyLeaderboardComposer.ts | 21 + .../game/score/GetWeeklyGameRewardComposer.ts | 21 + .../GetWeeklyGameRewardWinnersComposer.ts | 21 + .../messages/outgoing/game/score/index.ts | 4 + .../outgoing/gifts/GetGiftMessageComposer.ts | 23 + .../ResetPhoneNumberStateMessageComposer.ts | 21 + ...NumberVerificationStatusMessageComposer.ts | 23 + .../gifts/TryPhoneNumberMessageComposer.ts | 21 + .../gifts/VerifyCodeMessageComposer.ts | 21 + .../messages/outgoing/gifts/index.ts | 5 + ...oveAllMembershipRequestsMessageComposer.ts | 21 + .../outgoing/group/GroupAdminGiveComposer.ts | 21 + .../outgoing/group/GroupAdminTakeComposer.ts | 21 + .../outgoing/group/GroupBadgePartsComposer.ts | 21 + .../outgoing/group/GroupBuyComposer.ts | 21 + .../outgoing/group/GroupBuyDataComposer.ts | 21 + .../group/GroupConfirmRemoveMemberComposer.ts | 21 + .../outgoing/group/GroupDeleteComposer.ts | 21 + .../outgoing/group/GroupFavoriteComposer.ts | 21 + .../group/GroupInformationComposer.ts | 21 + .../outgoing/group/GroupJoinComposer.ts | 21 + .../outgoing/group/GroupMembersComposer.ts | 21 + .../group/GroupMembershipAcceptComposer.ts | 21 + .../group/GroupMembershipDeclineComposer.ts | 21 + .../group/GroupRemoveMemberComposer.ts | 21 + .../outgoing/group/GroupSaveBadgeComposer.ts | 21 + .../outgoing/group/GroupSaveColorsComposer.ts | 21 + .../group/GroupSaveInformationComposer.ts | 21 + .../group/GroupSavePreferencesComposer.ts | 21 + .../outgoing/group/GroupSettingsComposer.ts | 21 + .../outgoing/group/GroupUnfavoriteComposer.ts | 21 + .../messages/outgoing/group/index.ts | 21 + .../GetForumStatsMessageComposer.ts | 21 + .../GetForumsListMessageComposer.ts | 21 + .../groupforums/GetMessagesMessageComposer.ts | 21 + .../groupforums/GetThreadMessageComposer.ts | 21 + .../groupforums/GetThreadsMessageComposer.ts | 21 + .../GetUnreadForumsCountMessageComposer.ts | 21 + .../ModerateMessageMessageComposer.ts | 21 + .../ModerateThreadMessageComposer.ts | 21 + .../groupforums/PostMessageMessageComposer.ts | 21 + .../UpdateForumReadMarkerMessageComposer.ts | 33 + .../UpdateForumSettingsMessageComposer.ts | 21 + .../UpdateThreadMessageComposer.ts | 21 + .../messages/outgoing/groupforums/index.ts | 12 + .../AuthenticationMessageComposer.ts | 32 + .../handshake/ClientHelloMessageComposer.ts | 22 + .../CompleteDiffieHandshakeMessageComposer.ts | 21 + .../handshake/DisconnectMessageComposer.ts | 21 + .../handshake/InfoRetrieveMessageComposer.ts | 21 + .../InitDiffieHandshakeMessageComposer.ts | 21 + .../outgoing/handshake/PongMessageComposer.ts | 21 + .../handshake/SSOTicketMessageComposer.ts | 21 + .../handshake/UniqueIDMessageComposer.ts | 21 + .../handshake/VersionCheckMessageComposer.ts | 21 + .../messages/outgoing/handshake/index.ts | 10 + ...lForHelpFromForumMessageMessageComposer.ts | 21 + ...llForHelpFromForumThreadMessageComposer.ts | 21 + .../help/CallForHelpFromIMMessageComposer.ts | 21 + .../CallForHelpFromPhotoMessageComposer.ts | 21 + .../CallForHelpFromSelfieMessageComposer.ts | 21 + .../help/CallForHelpMessageComposer.ts | 21 + ...eviewGuideDecidesOnOfferMessageComposer.ts | 21 + .../ChatReviewGuideDetachedMessageComposer.ts | 21 + .../ChatReviewGuideVoteMessageComposer.ts | 21 + .../ChatReviewSessionCreateMessageComposer.ts | 21 + ...eletePendingCallsForHelpMessageComposer.ts | 21 + .../help/GetCfhStatusMessageComposer.ts | 21 + .../help/GetFaqCategoryMessageComposer.ts | 21 + .../help/GetFaqTextMessageComposer.ts | 21 + .../GetGuideReportingStatusMessageComposer.ts | 21 + .../GetPendingCallsForHelpMessageComposer.ts | 21 + .../outgoing/help/GetQuizQuestionsComposer.ts | 21 + .../help/GuideSessionCreateMessageComposer.ts | 21 + .../GuideSessionFeedbackMessageComposer.ts | 21 + ...eSessionGetRequesterRoomMessageComposer.ts | 21 + ...GuideSessionGuideDecidesMessageComposer.ts | 21 + ...deSessionInviteRequesterMessageComposer.ts | 21 + .../GuideSessionIsTypingMessageComposer.ts | 21 + .../GuideSessionMessageMessageComposer.ts | 21 + ...GuideSessionOnDutyUpdateMessageComposer.ts | 21 + .../help/GuideSessionReportMessageComposer.ts | 21 + ...eSessionRequesterCancelsMessageComposer.ts | 21 + .../GuideSessionResolvedMessageComposer.ts | 21 + .../outgoing/help/PostQuizAnswersComposer.ts | 21 + .../help/SearchFaqsMessageComposer.ts | 21 + .../messages/outgoing/help/index.ts | 30 + .../communication/messages/outgoing/index.ts | 73 + .../AvatarEffectActivatedComposer.ts | 21 + .../AvatarEffectSelectedComposer.ts | 21 + .../outgoing/inventory/avatareffect/index.ts | 2 + .../badges/GetBadgePointLimitsComposer.ts | 21 + .../GetIsBadgeRequestFulfilledComposer.ts | 21 + .../inventory/badges/RequestABadgeComposer.ts | 21 + .../inventory/badges/RequestBadgesComposer.ts | 21 + .../badges/SetActivatedBadgesComposer.ts | 29 + .../outgoing/inventory/badges/index.ts | 5 + .../inventory/bots/GetBotInventoryComposer.ts | 21 + .../messages/outgoing/inventory/bots/index.ts | 1 + .../inventory/furni/FurnitureListComposer.ts | 21 + ...uestFurniInventoryWhenNotInRoomComposer.ts | 21 + .../outgoing/inventory/furni/index.ts | 2 + .../messages/outgoing/inventory/index.ts | 7 + .../pets/CancelPetBreedingComposer.ts | 21 + .../pets/ConfirmPetBreedingComposer.ts | 21 + .../inventory/pets/RequestPetsComposer.ts | 21 + .../messages/outgoing/inventory/pets/index.ts | 3 + .../trading/TradingAcceptComposer.ts | 21 + .../trading/TradingCancelComposer.ts | 21 + .../inventory/trading/TradingCloseComposer.ts | 21 + .../trading/TradingConfirmationComposer.ts | 21 + .../trading/TradingListAddItemComposer.ts | 21 + .../trading/TradingListAddItemsComposer.ts | 21 + .../trading/TradingListRemoveItemComposer.ts | 21 + .../inventory/trading/TradingOpenComposer.ts | 21 + .../trading/TradingUnacceptComposer.ts | 21 + .../outgoing/inventory/trading/index.ts | 9 + .../unseen/UnseenResetCategoryComposer.ts | 21 + .../unseen/UnseenResetItemsComposer.ts | 21 + .../outgoing/inventory/unseen/index.ts | 2 + .../landingview/GetPromoArticlesComposer.ts | 21 + .../messages/outgoing/landingview/index.ts | 2 + .../votes/CommunityGoalVoteMessageComposer.ts | 21 + .../outgoing/landingview/votes/index.ts | 1 + .../BuyMarketplaceOfferMessageComposer.ts | 21 + .../BuyMarketplaceTokensMessageComposer.ts | 21 + .../CancelMarketplaceOfferMessageComposer.ts | 21 + .../GetMarketplaceCanMakeOfferComposer.ts | 21 + ...MarketplaceConfigurationMessageComposer.ts | 21 + .../GetMarketplaceItemStatsComposer.ts | 21 + .../GetMarketplaceOffersMessageComposer.ts | 21 + .../GetMarketplaceOwnOffersMessageComposer.ts | 21 + .../marketplace/MakeOfferMessageComposer.ts | 21 + ...mMarketplaceOfferCreditsMessageComposer.ts | 21 + .../messages/outgoing/marketplace/index.ts | 10 + .../CloseIssueDefaultActionMessageComposer.ts | 21 + .../moderation/CloseIssuesMessageComposer.ts | 25 + .../DefaultSanctionMessageComposer.ts | 26 + .../GetCfhChatlogMessageComposer.ts | 22 + .../GetModeratorRoomInfoMessageComposer.ts | 21 + .../GetModeratorUserInfoMessageComposer.ts | 21 + .../GetRoomChatlogMessageComposer.ts | 21 + .../GetRoomVisitsMessageComposer.ts | 21 + .../GetUserChatlogMessageComposer.ts | 21 + .../moderation/ModAlertMessageComposer.ts | 26 + .../moderation/ModBanMessageComposer.ts | 27 + .../moderation/ModKickMessageComposer.ts | 27 + .../moderation/ModMessageMessageComposer.ts | 30 + .../moderation/ModMuteMessageComposer.ts | 26 + .../moderation/ModToolPreferencesComposer.ts | 21 + .../moderation/ModToolSanctionComposer.ts | 21 + .../ModTradingLockMessageComposer.ts | 27 + .../moderation/ModerateRoomMessageComposer.ts | 21 + .../ModeratorActionMessageComposer.ts | 28 + .../moderation/PickIssuesMessageComposer.ts | 21 + .../ReleaseIssuesMessageComposer.ts | 21 + .../messages/outgoing/moderation/index.ts | 21 + ...ysteryBoxWaitingCanceledMessageComposer.ts | 21 + .../messages/outgoing/mysterybox/index.ts | 1 + .../AddFavouriteRoomMessageComposer.ts | 21 + .../navigator/CanCreateRoomMessageComposer.ts | 21 + .../navigator/CancelEventMessageComposer.ts | 21 + .../CompetitionRoomsSearchMessageComposer.ts | 21 + .../navigator/ConvertGlobalRoomIdComposer.ts | 21 + .../navigator/CreateFlatMessageComposer.ts | 21 + .../DeleteFavouriteRoomMessageComposer.ts | 21 + .../navigator/EditEventMessageComposer.ts | 21 + ...ardToARandomPromotedRoomMessageComposer.ts | 21 + .../ForwardToSomeRoomMessageComposer.ts | 21 + ...tCategoriesWithUserCountMessageComposer.ts | 21 + .../GetCustomRoomFilterMessageComposer.ts | 21 + .../navigator/GetGuestRoomMessageComposer.ts | 21 + .../GetOfficialRoomsMessageComposer.ts | 21 + .../GetPopularRoomTagsMessageComposer.ts | 21 + .../GetUserEventCatsMessageComposer.ts | 21 + .../GetUserFlatCatsMessageComposer.ts | 21 + .../GuildBaseSearchMessageComposer.ts | 21 + .../MyFavouriteRoomsSearchMessageComposer.ts | 21 + ...requentRoomHistorySearchMessageComposer.ts | 21 + .../MyFriendsRoomsSearchMessageComposer.ts | 21 + .../MyGuildBasesSearchMessageComposer.ts | 21 + .../MyRecommendedRoomsMessageComposer.ts | 21 + .../MyRoomHistorySearchMessageComposer.ts | 21 + .../MyRoomRightsSearchMessageComposer.ts | 21 + .../navigator/MyRoomsSearchMessageComposer.ts | 21 + .../NavigatorCategoryListModeComposer.ts | 21 + .../NavigatorDeleteSavedSearchComposer.ts | 21 + .../navigator/NavigatorInitComposer.ts | 21 + .../navigator/NavigatorSearchCloseComposer.ts | 21 + .../navigator/NavigatorSearchComposer.ts | 21 + .../navigator/NavigatorSearchOpenComposer.ts | 21 + .../navigator/NavigatorSearchSaveComposer.ts | 21 + .../NavigatorSettingsSaveComposer.ts | 21 + .../PopularRoomsSearchMessageComposer.ts | 21 + .../navigator/RateFlatMessageComposer.ts | 21 + .../RemoveOwnRoomRightsRoomMessageComposer.ts | 21 + .../RoomAdEventTabAdClickedComposer.ts | 21 + .../navigator/RoomAdEventTabViewedComposer.ts | 21 + .../navigator/RoomAdSearchMessageComposer.ts | 21 + .../RoomTextSearchMessageComposer.ts | 21 + ...sWhereMyFriendsAreSearchMessageComposer.ts | 21 + ...msWithHighestScoreSearchMessageComposer.ts | 21 + .../SetRoomSessionTagsMessageComposer.ts | 21 + .../ToggleStaffPickMessageComposer.ts | 21 + .../UpdateHomeRoomMessageComposer.ts | 21 + .../UpdateRoomFilterMessageComposer.ts | 21 + .../UpdateRoomThumbnailMessageComposer.ts | 21 + .../messages/outgoing/navigator/index.ts | 48 + .../nux/NewUserExperienceGetGiftsComposer.ts | 28 + .../nux/NewUserExperienceGetGiftsSelection.ts | 28 + .../NewUserExperienceScriptProceedComposer.ts | 21 + .../messages/outgoing/nux/index.ts | 3 + .../outgoing/pet/GetPetCommandsComposer.ts | 21 + .../messages/outgoing/pet/PetMountComposer.ts | 21 + .../outgoing/pet/PetRespectComposer.ts | 21 + .../outgoing/pet/PetSupplementComposer.ts | 21 + .../outgoing/pet/RemovePetSaddleComposer.ts | 21 + .../outgoing/pet/RequestPetInfoComposer.ts | 21 + .../outgoing/pet/TogglePetBreedingComposer.ts | 21 + .../outgoing/pet/TogglePetRidingComposer.ts | 21 + .../outgoing/pet/UsePetProductComposer.ts | 21 + .../messages/outgoing/pet/index.ts | 9 + .../outgoing/poll/PollAnswerComposer.ts | 21 + .../outgoing/poll/PollRejectComposer.ts | 21 + .../outgoing/poll/PollStartComposer.ts | 21 + .../poll/VotePollCounterMessageComposer.ts | 21 + .../messages/outgoing/poll/index.ts | 4 + .../quest/AcceptQuestMessageComposer.ts | 21 + .../quest/ActivateQuestMessageComposer.ts | 21 + .../quest/CancelQuestMessageComposer.ts | 21 + ...iendRequestQuestCompleteMessageComposer.ts | 21 + ...ommunityGoalEarnedPrizesMessageComposer.ts | 21 + ...tCommunityGoalHallOfFameMessageComposer.ts | 21 + ...GetCommunityGoalProgressMessageComposer.ts | 21 + ...currentUsersGoalProgressMessageComposer.ts | 21 + ...GetConcurrentUsersRewardMessageComposer.ts | 21 + .../quest/GetDailyQuestMessageComposer.ts | 21 + .../quest/GetQuestsMessageComposer.ts | 21 + .../GetSeasonalQuestsOnlyMessageComposer.ts | 21 + .../quest/OpenQuestTrackerMessageComposer.ts | 21 + ...RedeemCommunityGoalPrizeMessageComposer.ts | 21 + .../quest/RejectQuestMessageComposer.ts | 21 + .../quest/StartCampaignMessageComposer.ts | 21 + .../messages/outgoing/quest/index.ts | 16 + .../GetRecyclerStatusMessageComposer.ts | 21 + .../recycler/RecycleItemsMessageComposer.ts | 31 + .../messages/outgoing/recycler/index.ts | 2 + .../room/RedeemItemClothingComposer.ts | 21 + .../room/access/RoomDoorbellAccessComposer.ts | 21 + .../outgoing/room/access/RoomEnterComposer.ts | 21 + .../messages/outgoing/room/access/index.ts | 2 + .../action/RemoveAllRightsMessageComposer.ts | 21 + .../action/RoomAmbassadorAlertComposer.ts | 21 + .../room/action/RoomBanUserComposer.ts | 21 + .../room/action/RoomDeleteComposer.ts | 21 + .../room/action/RoomGiveRightsComposer.ts | 21 + .../room/action/RoomKickUserComposer.ts | 21 + .../room/action/RoomMuteUserComposer.ts | 21 + .../room/action/RoomTakeRightsComposer.ts | 21 + .../room/action/RoomUnbanUserComposer.ts | 21 + .../messages/outgoing/room/action/index.ts | 9 + .../bots/RequestBotConfigurationComposer.ts | 21 + .../messages/outgoing/room/bots/index.ts | 1 + .../room/data/RoomBannedUsersComposer.ts | 21 + .../room/data/RoomSettingsComposer.ts | 21 + .../room/data/RoomUsersWithRightsComposer.ts | 21 + .../room/data/SaveRoomSettingsComposer.ts | 81 + .../messages/outgoing/room/data/index.ts | 4 + .../outgoing/room/engine/BotPlaceComposer.ts | 21 + .../outgoing/room/engine/BotRemoveComposer.ts | 21 + .../room/engine/BotSkillSaveComposer.ts | 21 + .../engine/CompostPlantMessageComposer.ts | 9 + .../room/engine/GetItemDataComposer.ts | 21 + .../room/engine/HarvestPetMessageComposer.ts | 9 + .../room/engine/PetMessageComposer.ts | 21 + .../outgoing/room/engine/PetMoveComposer.ts | 21 + .../outgoing/room/engine/PetPlaceComposer.ts | 21 + .../outgoing/room/engine/PetRemoveComposer.ts | 21 + .../room/engine/RemoveWallItemComposer.ts | 21 + .../SetClothingChangeDataMessageComposer.ts | 21 + .../room/engine/SetItemDataMessageComposer.ts | 21 + .../engine/SetObjectDataMessageComposer.ts | 23 + .../messages/outgoing/room/engine/index.ts | 14 + .../AddSpamWallPostItMessageComposer.ts | 21 + .../ExtendRentOrBuyoutFurniMessageComposer.ts | 21 + ...endRentOrBuyoutStripItemMessageComposer.ts | 21 + .../furniture/FurnitureAliasesComposer.ts | 21 + .../furniture/FurnitureGroupInfoComposer.ts | 21 + .../room/furniture/FurniturePickupComposer.ts | 21 + .../room/furniture/FurniturePlaceComposer.ts | 39 + .../furniture/FurniturePlacePaintComposer.ts | 21 + .../furniture/FurniturePostItPlaceComposer.ts | 21 + .../GetRentOrBuyoutOfferMessageComposer.ts | 21 + .../OpenMysteryTrophyMessageComposer.ts | 21 + .../OpenPetPackageMessageComposer.ts | 21 + .../room/furniture/OpenWelcomeGiftComposer.ts | 21 + .../RentableSpaceCancelRentMessageComposer.ts | 21 + .../RentableSpaceRentMessageComposer.ts | 21 + .../RentableSpaceStatusMessageComposer.ts | 21 + .../dimmer/MoodlightSettingsComposer.ts | 21 + .../dimmer/MoodlightSettingsSaveComposer.ts | 21 + .../dimmer/MoodlightTogggleStateComposer.ts | 21 + .../outgoing/room/furniture/dimmer/index.ts | 3 + .../floor/FurnitureFloorUpdateComposer.ts | 21 + .../outgoing/room/furniture/floor/index.ts | 1 + .../messages/outgoing/room/furniture/index.ts | 24 + .../logic/FurnitureColorWheelComposer.ts | 21 + .../logic/FurnitureDiceActivateComposer.ts | 21 + .../logic/FurnitureDiceDeactivateComposer.ts | 21 + .../logic/FurnitureExchangeComposer.ts | 21 + .../logic/FurnitureMultiStateComposer.ts | 21 + .../logic/FurnitureOneWayDoorComposer.ts | 21 + .../logic/FurnitureRandomStateComposer.ts | 21 + .../logic/FurnitureStackHeightComposer.ts | 21 + .../logic/FurnitureWallMultiStateComposer.ts | 21 + .../outgoing/room/furniture/logic/index.ts | 9 + .../FurnitureMannequinSaveLookComposer.ts | 21 + .../FurnitureMannequinSaveNameComposer.ts | 21 + .../room/furniture/mannequin/index.ts | 2 + .../furniture/presents/OpenPresentComposer.ts | 21 + .../outgoing/room/furniture/presents/index.ts | 1 + .../furniture/toner/ApplyTonerComposer.ts | 21 + .../outgoing/room/furniture/toner/index.ts | 1 + .../wall/FurnitureWallUpdateComposer.ts | 21 + .../outgoing/room/furniture/wall/index.ts | 1 + ...olYoutubeDisplayPlaybackMessageComposer.ts | 21 + .../GetYoutubeDisplayStatusMessageComposer.ts | 21 + ...etYoutubeDisplayPlaylistMessageComposer.ts | 21 + .../outgoing/room/furniture/youtube/index.ts | 3 + .../messages/outgoing/room/index.ts | 19 + .../layout/GetOccupiedTilesMessageComposer.ts | 21 + .../layout/GetRoomEntryDataMessageComposer.ts | 21 + .../layout/GetRoomEntryTileMessageComposer.ts | 21 + .../UpdateFloorPropertiesMessageComposer.ts | 21 + .../messages/outgoing/room/layout/index.ts | 4 + .../room/pets/BreedPetsMessageComposer.ts | 25 + .../room/pets/PetSelectedMessageComposer.ts | 21 + .../messages/outgoing/room/pets/index.ts | 2 + .../session/ChangeQueueMessageComposer.ts | 21 + .../room/session/GoToFlatMessageComposer.ts | 21 + .../messages/outgoing/room/session/index.ts | 2 + .../room/unit/RoomUnitActionComposer.ts | 21 + .../room/unit/RoomUnitDanceComposer.ts | 21 + .../room/unit/RoomUnitDropHandItemComposer.ts | 21 + .../room/unit/RoomUnitGiveHandItemComposer.ts | 21 + .../unit/RoomUnitGiveHandItemPetComposer.ts | 21 + .../room/unit/RoomUnitLookComposer.ts | 21 + .../room/unit/RoomUnitPostureComposer.ts | 21 + .../room/unit/RoomUnitSignComposer.ts | 21 + .../room/unit/RoomUnitWalkComposer.ts | 21 + .../room/unit/chat/RoomUnitChatComposer.ts | 21 + .../unit/chat/RoomUnitChatShoutComposer.ts | 21 + .../unit/chat/RoomUnitChatStyleComposer.ts | 21 + .../unit/chat/RoomUnitChatWhisperComposer.ts | 21 + .../unit/chat/RoomUnitTypingStartComposer.ts | 21 + .../unit/chat/RoomUnitTypingStopComposer.ts | 21 + .../messages/outgoing/room/unit/chat/index.ts | 6 + .../messages/outgoing/room/unit/index.ts | 10 + ...oomNetworkOpenConnectionMessageComposer.ts | 21 + .../messages/outgoing/roomdirectory/index.ts | 1 + .../ApplySnapshotMessageComposer.ts | 21 + .../roomevents/OpenMessageComposer.ts | 21 + .../outgoing/roomevents/RoomMuteComposer.ts | 21 + .../roomevents/UpdateActionMessageComposer.ts | 21 + .../UpdateConditionMessageComposer.ts | 21 + .../UpdateTriggerMessageComposer.ts | 21 + .../messages/outgoing/roomevents/index.ts | 6 + .../roomsettings/SaveableRoomSettingsData.ts | 267 + ...ateRoomCategoryAndTradeSettingsComposer.ts | 21 + .../messages/outgoing/roomsettings/index.ts | 2 + .../outgoing/sound/AddJukeboxDiskComposer.ts | 21 + .../GetJukeboxPlayListMessageComposer.ts | 21 + .../sound/GetNowPlayingMessageComposer.ts | 21 + .../sound/GetOfficialSongIdMessageComposer.ts | 21 + .../sound/GetSongInfoMessageComposer.ts | 21 + .../GetSoundMachinePlayListMessageComposer.ts | 21 + .../sound/GetSoundSettingsComposer.ts | 21 + .../sound/GetUserSongDisksMessageComposer.ts | 21 + .../sound/RemoveJukeboxDiskComposer.ts | 21 + .../messages/outgoing/sound/index.ts | 9 + .../GetTalentTrackLevelMessageComposer.ts | 21 + .../outgoing/talent/TalentTrackComposer.ts | 21 + .../messages/outgoing/talent/index.ts | 2 + .../LagWarningReportMessageComposer.ts | 21 + .../tracking/PerformanceLogMessageComposer.ts | 21 + .../messages/outgoing/tracking/index.ts | 2 + .../user/ApproveNameMessageComposer.ts | 21 + .../outgoing/user/CatalogGroupsComposer.ts | 21 + .../outgoing/user/ChangeEmailComposer.ts | 21 + .../outgoing/user/GetEmailStatusComposer.ts | 21 + .../GetHabboGroupBadgesMessageComposer.ts | 21 + .../user/ScrGetKickbackInfoMessageComposer.ts | 21 + .../user/UnblockGroupMemberMessageComposer.ts | 21 + .../outgoing/user/UserRespectComposer.ts | 21 + .../user/WelcomeGiftChangeEmailComposer.ts | 21 + ...GetExtendedProfileByNameMessageComposer.ts | 21 + .../user/data/GetIgnoredUsersComposer.ts | 21 + .../outgoing/user/data/GetUserTagsComposer.ts | 21 + .../outgoing/user/data/IgnoreUserComposer.ts | 21 + .../user/data/IgnoreUserIdComposer.ts | 21 + .../user/data/UnignoreUserComposer.ts | 21 + .../user/data/UserCurrentBadgesComposer.ts | 21 + .../outgoing/user/data/UserFigureComposer.ts | 21 + .../outgoing/user/data/UserMottoComposer.ts | 21 + .../outgoing/user/data/UserProfileComposer.ts | 21 + .../user/data/UserRelationshipsComposer.ts | 21 + .../messages/outgoing/user/data/index.ts | 11 + .../messages/outgoing/user/index.ts | 14 + .../currency/UserCurrencyComposer.ts | 21 + .../outgoing/user/inventory/currency/index.ts | 1 + .../messages/outgoing/user/inventory/index.ts | 2 + .../subscription/UserSubscriptionComposer.ts | 21 + .../user/inventory/subscription/index.ts | 1 + .../UserSettingsCameraFollowComposer.ts | 21 + .../settings/UserSettingsOldChatComposer.ts | 21 + .../UserSettingsRoomInvitesComposer.ts | 21 + .../settings/UserSettingsSoundComposer.ts | 21 + .../messages/outgoing/user/settings/index.ts | 4 + .../PeerUsersClassificationMessageComposer.ts | 21 + .../RoomUsersClassificationMessageComposer.ts | 21 + .../outgoing/userclassification/index.ts | 2 + .../InterstitialMessageParser.ts | 27 + .../advertisement/RoomAdErrorMessageParser.ts | 35 + .../messages/parser/advertisement/index.ts | 2 + .../AvailabilityStatusMessageParser.ts | 47 + .../AvailabilityTimeMessageParser.ts | 35 + .../HotelClosedAndOpensMessageParser.ts | 35 + .../HotelClosesAndWillOpenAtMessageParser.ts | 43 + .../HotelWillCloseInMinutesMessageParser.ts | 27 + .../MaintenanceStatusMessageParser.ts | 47 + .../messages/parser/availability/index.ts | 6 + .../ChangeUserNameResultMessageParser.ts | 51 + .../CheckUserNameResultMessageParser.ts | 51 + .../parser/avatar/FigureUpdateParser.ts | 37 + .../messages/parser/avatar/OutfitData.ts | 30 + .../parser/avatar/WardrobeMessageParser.ts | 44 + .../messages/parser/avatar/index.ts | 5 + .../parser/bots/BotAddedToInventoryParser.ts | 36 + .../messages/parser/bots/BotData.ts | 46 + .../parser/bots/BotInventoryMessageParser.ts | 37 + .../parser/bots/BotReceivedMessageParser.ts | 36 + .../bots/BotRemovedFromInventoryParser.ts | 27 + .../messages/parser/bots/index.ts | 5 + .../callforhelp/CallForHelpCategoryData.ts | 48 + .../callforhelp/CallForHelpTopicData.ts | 31 + .../callforhelp/CfhSanctionMessageParser.ts | 44 + .../parser/callforhelp/CfhSanctionTypeData.ts | 49 + .../callforhelp/CfhTopicsInitMessageParser.ts | 37 + .../SanctionStatusMessageParser.ts | 114 + .../messages/parser/callforhelp/index.ts | 6 + .../CameraPublishStatusMessageParser.ts | 44 + .../camera/CameraPurchaseOKMessageParser.ts | 16 + .../camera/CameraSnapshotMessageParser.ts | 35 + .../camera/CameraStorageUrlMessageParser.ts | 27 + .../camera/CompetitionStatusMessageParser.ts | 35 + .../parser/camera/InitCameraMessageParser.ts | 44 + .../camera/ThumbnailStatusMessageParser.ts | 37 + .../messages/parser/camera/index.ts | 7 + .../parser/campaign/CampaignCalendarData.ts | 114 + .../CampaignCalendarDataMessageParser.ts | 29 + ...CampaignCalendarDoorOpenedMessageParser.ts | 51 + .../messages/parser/campaign/index.ts | 3 + .../catalog/BonusRareInfoMessageParser.ts | 49 + .../BuildersClubFurniCountMessageParser.ts | 27 + ...dersClubSubscriptionStatusMessageParser.ts | 53 + .../parser/catalog/BundleDiscountRuleset.ts | 53 + .../BundleDiscountRulesetMessageParser.ts | 28 + .../catalog/CatalogIndexMessageParser.ts | 42 + .../parser/catalog/CatalogLocalizationData.ts | 41 + .../catalog/CatalogPageExpirationParser.ts | 51 + .../catalog/CatalogPageMessageOfferData.ts | 105 + .../catalog/CatalogPageMessageParser.ts | 106 + .../catalog/CatalogPageMessageProductData.ts | 98 + ...alogPageWithEarliestExpiryMessageParser.ts | 43 + .../catalog/CatalogPublishedMessageParser.ts | 36 + .../messages/parser/catalog/ClubGiftData.ts | 37 + .../parser/catalog/ClubGiftInfoParser.ts | 77 + .../parser/catalog/ClubGiftSelectedParser.ts | 44 + .../messages/parser/catalog/ClubOfferData.ts | 105 + .../parser/catalog/ClubOfferExtendData.ts | 50 + .../DirectSMSClubBuyAvailableMessageParser.ts | 53 + .../parser/catalog/FireworkChargeData.ts | 51 + .../catalog/FireworkChargeDataParser.ts | 28 + .../messages/parser/catalog/FrontPageItem.ts | 109 + .../catalog/GiftReceiverNotFoundParser.ts | 20 + .../GiftWrappingConfigurationParser.ts | 105 + .../HabboClubExtendOfferMessageParser.ts | 28 + .../catalog/HabboClubOffersMessageParser.ts | 35 + .../messages/parser/catalog/INodeData.ts | 10 + .../catalog/IsOfferGiftableMessageParser.ts | 35 + .../catalog/LimitedEditionSoldOutParser.ts | 16 + .../LimitedOfferAppearingNextMessageParser.ts | 51 + .../messages/parser/catalog/NodeData.ts | 99 + .../catalog/NotEnoughBalanceMessageParser.ts | 44 + .../catalog/ProductOfferMessageParser.ts | 28 + .../catalog/PurchaseErrorMessageParser.ts | 27 + .../PurchaseNotAllowedMessageParser.ts | 27 + .../catalog/PurchaseOKMessageOfferData.ts | 117 + .../parser/catalog/PurchaseOKMessageParser.ts | 28 + .../catalog/RoomAdPurchaseInfoEventParser.ts | 44 + ...SeasonalCalendarDailyOfferMessageParser.ts | 36 + .../parser/catalog/SellablePetPaletteData.ts | 67 + .../catalog/SellablePetPalettesParser.ts | 44 + .../parser/catalog/TargetedOfferData.ts | 153 + .../catalog/TargetedOfferNotFoundParser.ts | 16 + .../parser/catalog/TargetedOfferParser.ts | 28 + .../VoucherRedeemErrorMessageParser.ts | 26 + .../catalog/VoucherRedeemOkMessageParser.ts | 34 + .../messages/parser/catalog/index.ts | 46 + .../parser/client/ClientPingParser.ts | 16 + .../messages/parser/client/index.ts | 1 + ...mpetitionEntrySubmitResultMessageParser.ts | 83 + .../CompetitionVotingInfoMessageParser.ts | 55 + .../CompetitionVotingInfoResult.ts | 6 + .../CurrentTimingCodeMessageParser.ts | 33 + .../IsUserPartOfCompetitionMessageParser.ts | 33 + .../NoOwnedRoomsAlertMessageParser.ts | 14 + .../competition/SecondsUntilMessageParser.ts | 33 + .../messages/parser/competition/index.ts | 7 + .../CraftableProductsMessageParser.ts | 52 + .../CraftingRecipeIngredientParser.ts | 23 + .../crafting/CraftingRecipeMessageParser.ts | 34 + .../CraftingRecipesAvailableMessageParser.ts | 32 + .../crafting/CraftingResultMessageParser.ts | 35 + .../crafting/CraftingResultObjectParser.ts | 23 + .../messages/parser/crafting/index.ts | 6 + .../parser/desktop/DesktopViewParser.ts | 16 + .../messages/parser/desktop/index.ts | 1 + .../friendlist/AcceptFriendFailureData.ts | 25 + .../friendlist/AcceptFriendResultParser.ts | 35 + .../FindFriendsProcessResultParser.ts | 27 + .../friendlist/FollowFriendFailedParser.ts | 27 + .../parser/friendlist/FriendCategoryData.ts | 25 + .../FriendListFragmentMessageParser.ts | 52 + .../friendlist/FriendListUpdateParser.ts | 81 + .../friendlist/FriendNotificationParser.ts | 43 + .../parser/friendlist/FriendParser.ts | 109 + .../parser/friendlist/FriendRequestData.ts | 39 + .../parser/friendlist/FriendRequestsParser.ts | 44 + .../friendlist/HabboSearchResultData.ts | 76 + .../friendlist/HabboSearchResultParser.ts | 51 + .../friendlist/InstantMessageErrorParser.ts | 43 + .../parser/friendlist/MessageErrorParser.ts | 35 + .../parser/friendlist/MessengerInitParser.ts | 59 + .../friendlist/MiniMailNewMessageParser.ts | 16 + .../friendlist/MiniMailUnreadCountParser.ts | 27 + .../friendlist/NewConsoleMessageParser.ts | 55 + .../NewFriendRequestMessageParser.ts | 28 + .../friendlist/RoomInviteErrorParser.ts | 43 + .../friendlist/RoomInviteMessageParser.ts | 35 + .../messages/parser/friendlist/index.ts | 22 + .../Game2AccountGameStatusMessageParser.ts | 45 + .../Game2GameDirectoryStatusMessageParser.ts | 61 + .../Game2InArenaQueueMessageParser.ts | 27 + .../Game2JoiningGameFailedMessageParser.ts | 36 + .../Game2StartingGameFailedMessageParser.ts | 30 + .../Game2StopCounterMessageParser.ts | 16 + .../Game2UserLeftGameMessageParser.ts | 27 + .../messages/parser/game/directory/index.ts | 7 + .../messages/parser/game/index.ts | 3 + ...evementResolutionCompletedMessageParser.ts | 32 + ...ievementResolutionProgressMessageParser.ts | 66 + .../AchievementResolutionsMessageParser.ts | 46 + .../parser/game/lobby/GameAchievementData.ts | 35 + .../lobby/GameAchievementsMessageParser.ts | 43 + .../game/lobby/GameConfigurationData.ts | 49 + .../game/lobby/GameInviteMessageParser.ts | 32 + .../game/lobby/GameListMessageParser.ts | 43 + .../game/lobby/GameStatusMessageParser.ts | 40 + .../game/lobby/JoinedQueueMessageParser.ts | 25 + .../lobby/JoiningQueueFailedMessageParser.ts | 34 + .../game/lobby/LeftQueueMessageParser.ts | 25 + .../game/lobby/LoadGameMessageParser.ts | 88 + .../parser/game/lobby/LoadGameUrlParser.ts | 43 + .../game/lobby/UnloadGameMessageParser.ts | 32 + .../UserGameAchievementsMessageParser.ts | 21 + .../messages/parser/game/lobby/index.ts | 16 + .../score/Game2WeeklyLeaderboardParser.ts | 59 + .../game/score/GameRewardWinnerEntry.ts | 44 + .../parser/game/score/LeaderboardEntry.ts | 51 + .../game/score/WeeklyGameRewardParser.ts | 59 + .../score/WeeklyGameRewardWinnersParser.ts | 42 + .../messages/parser/game/score/index.ts | 5 + .../parser/generic/GenericErrorParser.ts | 26 + .../messages/parser/generic/index.ts | 1 + .../gifts/PhoneCollectionStateParser.ts | 41 + .../gifts/TryPhoneNumberResultParser.ts | 33 + .../gifts/TryVerificationCodeResultParser.ts | 34 + .../messages/parser/gifts/index.ts | 3 + .../parser/group/GroupBadgePartsParser.ts | 109 + .../parser/group/GroupBuyDataParser.ts | 45 + .../group/GroupConfirmMemberRemoveParser.ts | 35 + .../parser/group/GroupInformationParser.ts | 156 + .../parser/group/GroupMembersParser.ts | 116 + .../parser/group/GroupPurchasedParser.ts | 35 + .../parser/group/GroupSettingsParser.ts | 149 + .../HabboGroupDeactivatedMessageParser.ts | 23 + .../messages/parser/group/index.ts | 9 + .../parser/group/utils/GroupDataBadgePart.ts | 22 + .../parser/group/utils/GroupMemberParser.ts | 76 + .../messages/parser/group/utils/index.ts | 2 + .../parser/groupforums/ExtendedForumData.ts | 118 + .../messages/parser/groupforums/ForumData.ts | 135 + .../groupforums/ForumDataMessageParser.ts | 28 + .../groupforums/GetForumsListMessageParser.ts | 69 + .../parser/groupforums/GuildForumThread.ts | 217 + .../groupforums/GuildForumThreadsParser.ts | 61 + .../parser/groupforums/MessageData.ts | 179 + .../groupforums/PostMessageMessageParser.ts | 44 + .../groupforums/PostThreadMessageParser.ts | 36 + .../ThreadMessagesMessageParser.ts | 74 + .../UnreadForumsCountMessageParser.ts | 27 + .../groupforums/UpdateMessageMessageParser.ts | 44 + .../groupforums/UpdateThreadMessageParser.ts | 36 + .../messages/parser/groupforums/index.ts | 13 + .../CompleteDiffieHandshakeParser.ts | 36 + .../handshake/DisconnectReasonParser.ts | 32 + .../handshake/IdentityAccountsParser.ts | 39 + .../handshake/InitDiffieHandshakeParser.ts | 32 + .../handshake/NoobnessLevelMessageParser.ts | 27 + .../messages/parser/handshake/index.ts | 5 + .../CallForHelpDisabledNotifyMessageParser.ts | 25 + ...ForHelpPendingCallsDeletedMessageParser.ts | 14 + .../CallForHelpPendingCallsMessageParser.ts | 46 + .../help/CallForHelpReplyMessageParser.ts | 23 + .../help/CallForHelpResultMessageParser.ts | 35 + .../ChatReviewSessionDetachedMessageParser.ts | 15 + ...eviewSessionOfferedToGuideMessageParser.ts | 23 + .../ChatReviewSessionResultsMessageParser.ts | 47 + .../ChatReviewSessionStartedMessageParser.ts | 29 + ...tReviewSessionVotingStatusMessageParser.ts | 38 + .../help/GuideOnDutyStatusMessageParser.ts | 51 + .../help/GuideReportingStatusMessageParser.ts | 49 + .../help/GuideSessionAttachedMessageParser.ts | 51 + .../help/GuideSessionDetachedMessageParser.ts | 16 + .../help/GuideSessionEndedMessageParser.ts | 27 + .../help/GuideSessionErrorMessageParser.ts | 33 + ...eSessionInvitedToGuideRoomMessageParser.ts | 35 + .../help/GuideSessionMessageMessageParser.ts | 35 + ...uideSessionPartnerIsTypingMessageParser.ts | 27 + .../GuideSessionRequesterRoomMessageParser.ts | 27 + .../help/GuideSessionStartedMessageParser.ts | 67 + .../GuideTicketCreationResultMessageParser.ts | 32 + .../GuideTicketResolutionMessageParser.ts | 31 + .../parser/help/HotelMergeNameChangeParser.ts | 16 + .../IssueCloseNotificationMessageParser.ts | 34 + .../parser/help/PendingGuideTicketData.ts | 91 + .../parser/help/QuizDataMessageParser.ts | 40 + .../parser/help/QuizResultsMessageParser.ts | 40 + .../messages/parser/help/index.ts | 28 + .../communication/messages/parser/index.ts | 76 + .../inventory/achievements/AchievementData.ts | 156 + .../achievements/AchievementParser.ts | 28 + .../achievements/AchievementResolutionData.ts | 59 + .../achievements/AchievementsParser.ts | 46 + .../achievements/AchievementsScoreParser.ts | 27 + .../parser/inventory/achievements/index.ts | 5 + .../inventory/avatareffect/AvatarEffect.ts | 69 + .../AvatarEffectActivatedParser.ts | 43 + .../avatareffect/AvatarEffectAddedParser.ts | 51 + .../avatareffect/AvatarEffectExpiredParser.ts | 27 + .../AvatarEffectSelectedParser.ts | 27 + .../avatareffect/AvatarEffectsParser.ts | 44 + .../parser/inventory/avatareffect/index.ts | 6 + .../inventory/badges/BadgeAndPointLimit.ts | 25 + .../badges/BadgePointLimitsParser.ts | 45 + .../inventory/badges/BadgeReceivedParser.ts | 35 + .../parser/inventory/badges/BadgesParser.ts | 68 + .../badges/IsBadgeRequestFulfilledParser.ts | 32 + .../messages/parser/inventory/badges/index.ts | 5 + .../clothing/FigureSetIdsMessageParser.ts | 50 + .../parser/inventory/clothing/_Str_8728.ts | 27 + .../parser/inventory/clothing/_Str_9021.ts | 27 + .../parser/inventory/clothing/index.ts | 3 + .../FurnitureListAddOrUpdateParser.ts | 28 + .../FurnitureListInvalidateParser.ts | 16 + .../furniture/FurnitureListItemParser.ts | 218 + .../furniture/FurnitureListParser.ts | 54 + .../furniture/FurnitureListRemovedParser.ts | 27 + .../furniture/FurniturePostItPlacedParser.ts | 35 + .../inventory/furniture/IFurnitureItemData.ts | 28 + .../furniture/PresentOpenedMessageParser.ts | 70 + .../parser/inventory/furniture/index.ts | 8 + .../messages/parser/inventory/index.ts | 8 + .../pets/ConfirmBreedingRequestParser.ts | 81 + .../pets/ConfirmBreedingResultParser.ts | 35 + .../pets/GoToBreedingNestFailureParser.ts | 25 + .../pets/NestBreedingSuccessParser.ts | 33 + .../pets/PetAddedToInventoryParser.ts | 34 + .../pets/PetBreedingMessageParser.ts | 47 + .../messages/parser/inventory/pets/PetData.ts | 70 + .../inventory/pets/PetFigureDataParser.ts | 73 + .../inventory/pets/PetInventoryParser.ts | 52 + .../pets/PetReceivedMessageParser.ts | 34 + .../pets/PetRemovedFromInventoryParser.ts | 25 + .../messages/parser/inventory/pets/index.ts | 11 + .../purse/UserCreditsMessageParser.ts | 25 + .../messages/parser/inventory/purse/index.ts | 1 + .../inventory/trading/ItemDataStructure.ts | 162 + .../inventory/trading/TradingAcceptParser.ts | 35 + .../inventory/trading/TradingCloseParser.ts | 34 + .../trading/TradingCompletedParser.ts | 16 + .../trading/TradingConfirmationParser.ts | 16 + .../trading/TradingListItemParser.ts | 105 + .../trading/TradingNoSuchItemParser.ts | 16 + .../inventory/trading/TradingNotOpenParser.ts | 16 + .../trading/TradingOpenFailedParser.ts | 35 + .../inventory/trading/TradingOpenParser.ts | 51 + .../trading/TradingOtherNotAllowedParser.ts | 16 + .../trading/TradingYouAreNotAllowedParser.ts | 16 + .../parser/inventory/trading/index.ts | 12 + .../parser/landingview/PromoArticleData.ts | 62 + .../landingview/PromoArticlesMessageParser.ts | 32 + .../messages/parser/landingview/index.ts | 3 + .../votes/CommunityVoteReceivedParser.ts | 23 + .../parser/landingview/votes/index.ts | 1 + .../MarketplaceBuyOfferResultParser.ts | 50 + .../MarketplaceCanMakeOfferResultParser.ts | 35 + .../MarketplaceCancelOfferResultParser.ts | 35 + .../MarketplaceConfigurationMessageParser.ts | 83 + .../MarketplaceItemPostedParser.ts | 27 + .../marketplace/MarketplaceItemStatsParser.ts | 92 + .../parser/marketplace/MarketplaceOffer.ts | 84 + .../marketplace/MarketplaceOfferData.ts | 128 + .../marketplace/MarketplaceOffersParser.ts | 89 + .../marketplace/MarketplaceOwnOffersParser.ts | 88 + .../messages/parser/marketplace/index.ts | 10 + .../parser/moderation/CfhChatlogData.ts | 45 + .../moderation/CfhChatlogMessageParser.ts | 28 + .../parser/moderation/ChatRecordData.ts | 110 + .../parser/moderation/ChatlineData.ts | 42 + .../messages/parser/moderation/INamed.ts | 4 + .../moderation/IssueDeletedMessageParser.ts | 22 + .../moderation/IssueInfoMessageParser.ts | 52 + .../parser/moderation/IssueMessageData.ts | 163 + .../IssuePickFailedMessageParser.ts | 50 + .../messages/parser/moderation/ModRoomData.ts | 64 + .../moderation/ModerationCautionParser.ts | 35 + .../ModeratorActionResultMessageParser.ts | 32 + .../parser/moderation/ModeratorInitData.ts | 138 + .../moderation/ModeratorInitMessageParser.ts | 23 + .../moderation/ModeratorMessageParser.ts | 35 + .../ModeratorRoomInfoMessageParser.ts | 28 + .../ModeratorToolPreferencesMessageParser.ts | 47 + .../moderation/ModeratorUserInfoData.ts | 145 + .../ModeratorUserInfoMessageParser.ts | 28 + .../parser/moderation/PatternMatchData.ts | 44 + .../moderation/RoomChatlogMessageParser.ts | 27 + .../parser/moderation/RoomModerationData.ts | 72 + .../parser/moderation/RoomVisitData.ts | 37 + .../parser/moderation/RoomVisitsData.ts | 38 + .../moderation/RoomVisitsMessageParser.ts | 23 + .../moderation/UserBannedMessageParser.ts | 27 + .../parser/moderation/UserChatlogData.ts | 35 + .../moderation/UserChatlogMessageParser.ts | 28 + .../messages/parser/moderation/index.ts | 28 + .../CancelMysteryBoxWaitMessageParser.ts | 21 + .../GotMysteryBoxPrizeMessageParser.ts | 33 + .../parser/mysterybox/MysteryBoxKeysParser.ts | 35 + .../ShowMysteryBoxWaitMessageParser.ts | 21 + .../messages/parser/mysterybox/index.ts | 4 + .../navigator/CanCreateRoomEventParser.ts | 35 + .../navigator/CanCreateRoomMessageParser.ts | 35 + .../CategoriesWithVisitorCountParser.ts | 26 + .../CompetitionRoomsDataMessageParser.ts | 26 + .../navigator/ConvertedRoomIdMessageParser.ts | 32 + .../parser/navigator/DoorbellMessageParser.ts | 27 + .../FavouriteChangedMessageParser.ts | 32 + .../navigator/FavouritesMessageParser.ts | 39 + .../FlatAccessDeniedMessageParser.ts | 27 + .../navigator/FlatCreatedMessageParser.ts | 35 + .../GetGuestRoomResultMessageParser.ts | 79 + .../GuestRoomSearchResultMessageParser.ts | 27 + .../navigator/NavigatorCategoryDataParser.ts | 83 + .../navigator/NavigatorCollapsedParser.ts | 34 + .../NavigatorEventCategoryDataParser.ts | 51 + .../navigator/NavigatorHomeRoomParser.ts | 35 + .../navigator/NavigatorLiftedDataParser.ts | 59 + .../parser/navigator/NavigatorLiftedParser.ts | 35 + .../navigator/NavigatorMetadataParser.ts | 35 + .../NavigatorOpenRoomCreatorParser.ts | 16 + .../parser/navigator/NavigatorSearchParser.ts | 28 + .../navigator/NavigatorSearchesParser.ts | 35 + .../navigator/NavigatorSettingsParser.ts | 67 + .../parser/navigator/PopularRoomTagsData.ts | 46 + .../PopularRoomTagsResultMessageParser.ts | 28 + .../parser/navigator/PopularTagData.ts | 23 + .../navigator/RoomEventCancelMessageParser.ts | 15 + .../navigator/RoomEventMessageParser.ts | 23 + .../RoomFilterSettingsMessageParser.ts | 34 + .../navigator/RoomSettingsUpdatedParser.ts | 27 + .../RoomThumbnailUpdateResultMessageParser.ts | 30 + .../navigator/UserEventCatsMessageParser.ts | 35 + .../navigator/UserFlatCatsMessageParser.ts | 35 + .../messages/parser/navigator/index.ts | 34 + .../utils/CategoriesWithVisitorCountData.ts | 34 + .../navigator/utils/CompetitionRoomsData.ts | 36 + .../utils/GuestRoomSearchResultData.ts | 76 + .../navigator/utils/NavigatorSavedSearch.ts | 59 + .../utils/NavigatorSearchResultList.ts | 84 + .../utils/NavigatorSearchResultSet.ts | 60 + .../utils/NavigatorTopLevelContext.ts | 52 + .../navigator/utils/OfficialRoomEntryData.ts | 148 + .../parser/navigator/utils/RoomEventData.ts | 104 + .../messages/parser/navigator/utils/index.ts | 9 + .../notifications/AchievementLevelUpData.ts | 93 + .../AchievementNotificationMessageParser.ts | 28 + .../ActivityPointNotificationParser.ts | 43 + .../notifications/BotErrorEventParser.ts | 26 + .../ClubGiftNotificationParser.ts | 27 + .../ConnectionErrorMessageParser.ts | 43 + .../ElementPointerMessageParser.ts | 26 + .../HabboBroadcastMessageParser.ts | 27 + .../notifications/HotelWillShutdownParser.ts | 27 + .../InfoFeedEnableMessageParser.ts | 27 + .../notifications/MOTDNotificationParser.ts | 34 + .../NotificationDialogMessageParser.ts | 43 + .../OfferRewardDeliveredMessageParser.ts | 51 + .../PetLevelNotificationParser.ts | 52 + .../PetPlacingErrorEventParser.ts | 26 + .../RestoreClientMessageParser.ts | 14 + .../notifications/SimpleAlertMessageParser.ts | 37 + .../parser/notifications/UnseenItemsParser.ts | 51 + .../messages/parser/notifications/index.ts | 18 + ...NewUserExperienceGiftOfferMessageParser.ts | 34 + .../nux/NewUserExperienceNotCompleteParser.ts | 16 + .../messages/parser/nux/index.ts | 2 + .../perk/PerkAllowancesMessageParser.ts | 52 + .../messages/parser/perk/common/PerkData.ts | 28 + .../messages/parser/perk/common/PerkEnum.ts | 15 + .../messages/parser/perk/common/index.ts | 2 + .../messages/parser/perk/index.ts | 2 + .../OpenPetPackageRequestedMessageParser.ts | 37 + .../pet/OpenPetPackageResultMessageParser.ts | 41 + .../parser/pet/PetLevelUpdateMessageParser.ts | 41 + .../pet/PetScratchFailedMessageParser.ts | 33 + .../parser/pet/PetTrainingMessageParser.ts | 57 + .../messages/parser/pet/index.ts | 5 + .../messages/parser/poll/PollChoice.ts | 45 + .../parser/poll/PollContentsParser.ts | 98 + .../messages/parser/poll/PollErrorParser.ts | 14 + .../messages/parser/poll/PollOfferParser.ts | 46 + .../messages/parser/poll/PollQuestion.ts | 111 + .../parser/poll/QuestionAnsweredParser.ts | 49 + .../parser/poll/QuestionFinishedParser.ts | 39 + .../messages/parser/poll/QuestionParser.ts | 77 + .../parser/poll/RoomPollDataParser.ts | 41 + .../parser/poll/RoomPollResultParser.ts | 59 + .../messages/parser/poll/index.ts | 10 + .../parser/quest/CommunityGoalData.ts | 95 + .../CommunityGoalEarnedPrizesMessageParser.ts | 30 + .../quest/CommunityGoalHallOfFameData.ts | 41 + .../CommunityGoalHallOfFameMessageParser.ts | 26 + .../CommunityGoalProgressMessageParser.ts | 26 + ...oncurrentUsersGoalProgressMessageParser.ts | 41 + .../parser/quest/EpicPopupMessageParser.ts | 25 + .../parser/quest/HallOfFameEntryData.ts | 45 + .../parser/quest/ILandingPageUserEntry.ts | 6 + .../messages/parser/quest/PrizeData.ts | 51 + .../quest/QuestCancelledMessageParser.ts | 24 + .../quest/QuestCompletedMessageParser.ts | 33 + .../parser/quest/QuestDailyMessageParser.ts | 44 + .../messages/parser/quest/QuestMessageData.ts | 186 + .../parser/quest/QuestMessageParser.ts | 26 + .../parser/quest/QuestsMessageParser.ts | 40 + .../parser/quest/SeasonalQuestsParser.ts | 32 + .../messages/parser/quest/index.ts | 17 + .../recycler/RecyclerFinishedMessageParser.ts | 34 + .../recycler/RecyclerStatusMessageParser.ts | 34 + .../messages/parser/recycler/index.ts | 2 + .../room/access/CantConnectMessageParser.ts | 40 + .../parser/room/access/RoomEnterParser.ts | 16 + .../parser/room/access/RoomFowardParser.ts | 27 + .../doorbell/RoomDoorbellAcceptedParser.ts | 27 + .../parser/room/access/doorbell/index.ts | 1 + .../messages/parser/room/access/index.ts | 5 + .../access/rights/RoomRightsClearParser.ts | 16 + .../access/rights/RoomRightsOwnerParser.ts | 16 + .../room/access/rights/RoomRightsParser.ts | 27 + .../parser/room/access/rights/index.ts | 3 + .../bots/BotCommandConfigurationParser.ts | 42 + .../bots/BotForceOpenContextMenuParser.ts | 27 + .../messages/parser/room/bots/BotSkillData.ts | 23 + .../room/bots/BotSkillListUpdateParser.ts | 44 + .../messages/parser/room/bots/index.ts | 4 + .../room/data/RoomChatSettingsParser.ts | 28 + .../parser/room/data/RoomDataParser.ts | 301 + .../room/data/RoomEntryInfoMessageParser.ts | 35 + .../parser/room/data/RoomScoreParser.ts | 35 + .../messages/parser/room/data/index.ts | 4 + .../FavoriteMembershipUpdateMessageParser.ts | 51 + .../messages/parser/room/engine/ObjectData.ts | 30 + .../room/engine/ObjectsDataUpdateParser.ts | 40 + .../room/engine/ObjectsRollingParser.ts | 79 + .../messages/parser/room/engine/index.ts | 4 + .../CustomUserNotificationMessageParser.ts | 27 + .../room/furniture/DiceValueMessageParser.ts | 35 + .../FurniRentOrBuyoutOfferMessageParser.ts | 67 + .../room/furniture/FurnitureAliasesParser.ts | 34 + .../room/furniture/FurnitureDataParser.ts | 48 + .../furniture/FurnitureStackHeightParser.ts | 35 + .../GroupFurniContextMenuInfoMessageParser.ts | 67 + .../furniture/ItemDataUpdateMessageParser.ts | 35 + .../furniture/LoveLockFurniFinishedParser.ts | 23 + .../LoveLockFurniFriendConfirmedParser.ts | 23 + .../furniture/LoveLockFurniStartParser.ts | 31 + .../OneWayDoorStatusMessageParser.ts | 35 + .../RentableSpaceRentFailedMessageParser.ts | 25 + .../RentableSpaceRentOkMessageParser.ts | 25 + .../RentableSpaceStatusMessageParser.ts | 92 + .../RequestSpamWallPostItMessageParser.ts | 35 + .../furniture/RoomDimmerPresetsMessageData.ts | 9 + .../RoomDimmerPresetsMessageParser.ts | 57 + .../RoomMessageNotificationMessageParser.ts | 43 + .../room/furniture/WelcomeGiftStatusParser.ts | 59 + .../floor/FurnitureFloorAddParser.ts | 29 + .../floor/FurnitureFloorDataParser.ts | 159 + .../furniture/floor/FurnitureFloorParser.ts | 68 + .../floor/FurnitureFloorRemoveParser.ts | 51 + .../floor/FurnitureFloorUpdateParser.ts | 28 + .../parser/room/furniture/floor/index.ts | 5 + .../messages/parser/room/furniture/index.ts | 23 + .../furniture/wall/FurnitureWallAddParser.ts | 29 + .../furniture/wall/FurnitureWallDataParser.ts | 228 + .../furniture/wall/FurnitureWallParser.ts | 68 + .../wall/FurnitureWallRemoveParser.ts | 35 + .../wall/FurnitureWallUpdateParser.ts | 28 + .../parser/room/furniture/wall/index.ts | 5 + .../YoutubeControlVideoMessageParser.ts | 31 + .../youtube/YoutubeDisplayPlaylist.ts | 28 + .../YoutubeDisplayPlaylistsMessageParser.ts | 45 + .../YoutubeDisplayVideoMessageParser.ts | 50 + .../parser/room/furniture/youtube/index.ts | 4 + .../messages/parser/room/index.ts | 15 + .../mapping/FloorHeightMapMessageParser.ts | 167 + .../mapping/RoomEntryTileMessageParser.ts | 43 + .../room/mapping/RoomHeightMapParser.ts | 88 + .../room/mapping/RoomHeightMapUpdateParser.ts | 75 + .../mapping/RoomOccupiedTilesMessageParser.ts | 39 + .../parser/room/mapping/RoomPaintParser.ts | 65 + .../room/mapping/RoomReadyMessageParser.ts | 35 + .../RoomVisualizationSettingsParser.ts | 50 + .../messages/parser/room/mapping/index.ts | 8 + .../parser/room/pet/BreedingPetInfo.ts | 55 + .../parser/room/pet/PetBreedingResultData.ts | 58 + .../room/pet/PetBreedingResultParser.ts | 35 + .../parser/room/pet/PetExperienceParser.ts | 42 + .../parser/room/pet/PetFigureUpdateParser.ts | 54 + .../messages/parser/room/pet/PetInfoParser.ts | 220 + .../parser/room/pet/PetStatusUpdateParser.ts | 67 + .../parser/room/pet/RarityCategoryData.ts | 40 + .../messages/parser/room/pet/index.ts | 8 + .../room/session/YouArePlayingGameParser.ts | 27 + .../session/YouAreSpectatorMessageParser.ts | 14 + .../messages/parser/room/session/index.ts | 2 + .../parser/room/unit/RoomUnitDanceParser.ts | 35 + .../parser/room/unit/RoomUnitEffectParser.ts | 43 + .../room/unit/RoomUnitExpressionParser.ts | 35 + .../room/unit/RoomUnitHandItemParser.ts | 35 + .../unit/RoomUnitHandItemReceivedParser.ts | 35 + .../parser/room/unit/RoomUnitIdleParser.ts | 35 + .../parser/room/unit/RoomUnitInfoParser.ts | 59 + .../parser/room/unit/RoomUnitNumberParser.ts | 35 + .../parser/room/unit/RoomUnitParser.ts | 186 + .../parser/room/unit/RoomUnitRemoveParser.ts | 27 + .../parser/room/unit/RoomUnitStatusAction.ts | 21 + .../parser/room/unit/RoomUnitStatusMessage.ts | 100 + .../parser/room/unit/RoomUnitStatusParser.ts | 119 + .../parser/room/unit/UserMessageData.ts | 412 ++ .../room/unit/chat/FloodControlParser.ts | 27 + .../room/unit/chat/RemainingMuteParser.ts | 27 + .../room/unit/chat/RoomUnitChatParser.ts | 87 + .../room/unit/chat/RoomUnitTypingParser.ts | 35 + .../messages/parser/room/unit/chat/index.ts | 4 + .../messages/parser/room/unit/index.ts | 15 + .../parser/roomevents/ConditionDefinition.ts | 24 + .../parser/roomevents/TriggerDefinition.ts | 35 + .../messages/parser/roomevents/Triggerable.ts | 100 + .../roomevents/WiredActionDefinition.ts | 47 + .../roomevents/WiredFurniActionParser.ts | 28 + .../roomevents/WiredFurniConditionParser.ts | 28 + .../roomevents/WiredFurniTriggerParser.ts | 28 + .../parser/roomevents/WiredOpenParser.ts | 27 + .../WiredRewardResultMessageParser.ts | 27 + .../roomevents/WiredSaveSuccessParser.ts | 16 + .../roomevents/WiredValidationErrorParser.ts | 27 + .../messages/parser/roomevents/index.ts | 11 + .../parser/roomsettings/BannedUserData.ts | 24 + .../roomsettings/BannedUsersFromRoomParser.ts | 44 + .../roomsettings/FlatControllerAddedParser.ts | 36 + .../parser/roomsettings/FlatControllerData.ts | 35 + .../FlatControllerRemovedParser.ts | 35 + .../roomsettings/FlatControllersParser.ts | 46 + .../messages/parser/roomsettings/IFlatUser.ts | 5 + .../roomsettings/MuteAllInRoomParser.ts | 25 + .../parser/roomsettings/NoSuchFlatParser.ts | 27 + .../parser/roomsettings/RoomChatSettings.ts | 57 + .../roomsettings/RoomModerationSettings.ts | 34 + .../parser/roomsettings/RoomSettingsData.ts | 332 ++ .../roomsettings/RoomSettingsDataParser.ts | 59 + .../roomsettings/RoomSettingsErrorParser.ts | 35 + .../RoomSettingsSaveErrorParser.ts | 57 + .../roomsettings/RoomSettingsSavedParser.ts | 27 + .../ShowEnforceRoomCategoryDialogParser.ts | 27 + .../UserUnbannedFromRoomParser.ts | 35 + .../messages/parser/roomsettings/index.ts | 18 + .../parser/security/AuthenticatedParser.ts | 16 + .../messages/parser/security/index.ts | 1 + .../sound/JukeboxPlayListFullMessageParser.ts | 14 + .../sound/JukeboxSongDisksMessageParser.ts | 37 + .../parser/sound/NowPlayingMessageParser.ts | 56 + .../sound/OfficialSongIdMessageParser.ts | 31 + .../messages/parser/sound/PlayListEntry.ts | 46 + .../parser/sound/PlayListMessageParser.ts | 40 + .../sound/PlayListSongAddedMessageParser.ts | 24 + .../messages/parser/sound/SongInfoEntry.ts | 17 + .../parser/sound/TraxSongInfoMessageParser.ts | 35 + .../UserSongDisksInventoryMessageParser.ts | 46 + .../messages/parser/sound/index.ts | 10 + .../talent/TalentLevelUpMessageParser.ts | 74 + .../parser/talent/TalentTrackLevel.ts | 45 + .../talent/TalentTrackLevelMessageParser.ts | 43 + .../parser/talent/TalentTrackParser.ts | 79 + .../parser/talent/TalentTrackRewardPerk.ts | 16 + .../parser/talent/TalentTrackRewardProduct.ts | 21 + .../messages/parser/talent/TalentTrackTask.ts | 49 + .../messages/parser/talent/index.ts | 7 + .../AccountSafetyLockStatusChangeParser.ts | 28 + .../parser/user/ApproveNameResultParser.ts | 35 + .../parser/user/ChangeEmailResultParser.ts | 29 + .../messages/parser/user/EmailStatusParser.ts | 43 + .../ExtendedProfileChangedMessageParser.ts | 27 + .../user/GroupDetailsChangedMessageParser.ts | 27 + .../GroupMembershipRequestedMessageParser.ts | 36 + .../user/GuildEditFailedMessageParser.ts | 29 + .../GuildMemberMgmtFailedMessageParser.ts | 35 + .../user/GuildMembershipsMessageParser.ts | 35 + .../user/HabboGroupBadgesMessageParser.ts | 36 + .../parser/user/HabboGroupEntryData.ts | 65 + .../user/HabboGroupJoinFailedMessageParser.ts | 29 + .../parser/user/IgnoreResultParser.ts | 35 + .../parser/user/IgnoredUsersParser.ts | 36 + .../parser/user/InClientLinkParser.ts | 25 + .../user/PetRespectNotificationParser.ts | 49 + .../parser/user/PetSupplementTypeEnum.ts | 8 + .../user/PetSupplementedNotificationParser.ts | 43 + .../parser/user/RespectReceivedParser.ts | 35 + .../messages/parser/user/RoomEntryData.ts | 28 + .../messages/parser/user/ScrKickbackData.ts | 72 + .../user/ScrSendKickbackInfoMessageParser.ts | 23 + .../WelcomeGiftChangeEmailResultParser.ts | 27 + .../user/access/UserPermissionsParser.ts | 43 + .../messages/parser/user/access/index.ts | 1 + .../user/data/RelationshipStatusInfo.ts | 67 + .../RelationshipStatusInfoMessageParser.ts | 45 + .../user/data/UserCurrentBadgesParser.ts | 46 + .../parser/user/data/UserFigureParser.ts | 35 + .../parser/user/data/UserInfoDataParser.ts | 139 + .../parser/user/data/UserInfoParser.ts | 30 + .../user/data/UserNameChangeMessageParser.ts | 43 + .../parser/user/data/UserProfileParser.ts | 130 + .../parser/user/data/UserSettingsParser.ts | 83 + .../parser/user/data/UserTagsParser.ts | 43 + .../messages/parser/user/data/index.ts | 10 + .../messages/parser/user/index.ts | 30 + .../inventory/currency/UserCreditsParser.ts | 27 + .../inventory/currency/UserCurrencyParser.ts | 34 + .../parser/user/inventory/currency/index.ts | 2 + .../messages/parser/user/inventory/index.ts | 2 + .../subscription/UserSubscriptionParser.ts | 113 + .../user/inventory/subscription/index.ts | 1 + .../user/wardrobe/UserWardrobePageParser.ts | 40 + .../messages/parser/user/wardrobe/index.ts | 1 + .../UserClassificationMessageParser.ts | 57 + .../parser/userclassification/index.ts | 1 + .../LegacyExternalInterface.ts | 118 + .../src/nitro/externalInterface/index.ts | 1 + .../src/nitro/game/GameMessageHandler.ts | 22 + submodules/renderer/src/nitro/game/index.ts | 1 + submodules/renderer/src/nitro/index.ts | 13 + .../nitro/localization/BadgeBaseAndLevel.ts | 53 + .../localization/NitroLocalizationManager.ts | 345 ++ .../renderer/src/nitro/localization/index.ts | 2 + .../renderer/src/nitro/room/ImageResult.ts | 19 + .../renderer/src/nitro/room/PetColorResult.ts | 61 + .../src/nitro/room/RoomContentLoader.ts | 704 +++ .../renderer/src/nitro/room/RoomEngine.ts | 3619 ++++++++++++ .../src/nitro/room/RoomMessageHandler.ts | 1006 ++++ .../src/nitro/room/RoomObjectEventHandler.ts | 2224 ++++++++ .../src/nitro/room/RoomObjectLogicFactory.ts | 324 ++ .../src/nitro/room/RoomVariableEnum.ts | 14 + submodules/renderer/src/nitro/room/index.ts | 12 + .../room/messages/ObjectAdUpdateMessage.ts | 21 + .../ObjectAvatarCarryObjectUpdateMessage.ts | 25 + .../messages/ObjectAvatarChatUpdateMessage.ts | 18 + .../ObjectAvatarDanceUpdateMessage.ts | 18 + .../ObjectAvatarEffectUpdateMessage.ts | 25 + .../ObjectAvatarExperienceUpdateMessage.ts | 18 + .../ObjectAvatarExpressionUpdateMessage.ts | 18 + .../ObjectAvatarFigureUpdateMessage.ts | 39 + .../ObjectAvatarFlatControlUpdateMessage.ts | 18 + .../ObjectAvatarGestureUpdateMessage.ts | 18 + .../ObjectAvatarGuideStatusUpdateMessage.ts | 18 + .../ObjectAvatarMutedUpdateMessage.ts | 18 + .../room/messages/ObjectAvatarOwnMessage.ts | 4 + .../ObjectAvatarPetGestureUpdateMessage.ts | 18 + .../ObjectAvatarPlayerValueUpdateMessage.ts | 18 + .../ObjectAvatarPlayingGameUpdateMessage.ts | 18 + .../ObjectAvatarPostureUpdateMessage.ts | 25 + .../messages/ObjectAvatarSelectedMessage.ts | 18 + .../messages/ObjectAvatarSignUpdateMessage.ts | 18 + .../ObjectAvatarSleepUpdateMessage.ts | 18 + .../ObjectAvatarTypingUpdateMessage.ts | 18 + .../messages/ObjectAvatarUpdateMessage.ts | 33 + .../ObjectAvatarUseObjectUpdateMessage.ts | 18 + .../room/messages/ObjectDataUpdateMessage.ts | 33 + .../messages/ObjectGroupBadgeUpdateMessage.ts | 27 + .../messages/ObjectHeightUpdateMessage.ts | 19 + .../messages/ObjectItemDataUpdateMessage.ts | 18 + .../messages/ObjectModelDataUpdateMessage.ts | 25 + .../room/messages/ObjectMoveUpdateMessage.ts | 28 + .../messages/ObjectRoomColorUpdateMessage.ts | 41 + .../ObjectRoomFloorHoleUpdateMessage.ts | 56 + .../messages/ObjectRoomMapUpdateMessage.ts | 28 + .../messages/ObjectRoomMaskUpdateMessage.ts | 53 + .../ObjectRoomPlanePropertyUpdateMessage.ts | 28 + .../ObjectRoomPlaneVisibilityUpdateMessage.ts | 28 + .../room/messages/ObjectRoomUpdateMessage.ts | 29 + .../room/messages/ObjectSelectedMessage.ts | 18 + .../room/messages/ObjectStateUpdateMessage.ts | 9 + .../messages/ObjectTileCursorUpdateMessage.ts | 40 + .../messages/ObjectVisibilityUpdateMessage.ts | 21 + .../renderer/src/nitro/room/messages/index.ts | 40 + .../src/nitro/room/object/RoomFloorHole.ts | 35 + .../src/nitro/room/object/RoomMapData.ts | 126 + .../src/nitro/room/object/RoomMapMaskData.ts | 16 + .../object/RoomObjectVisualizationFactory.ts | 231 + .../room/object/RoomPlaneBitmapMaskData.ts | 55 + .../room/object/RoomPlaneBitmapMaskParser.ts | 147 + .../src/nitro/room/object/RoomPlaneData.ts | 201 + .../nitro/room/object/RoomPlaneMaskData.ts | 35 + .../src/nitro/room/object/RoomPlaneParser.ts | 1699 ++++++ .../src/nitro/room/object/RoomWallData.ts | 181 + .../renderer/src/nitro/room/object/index.ts | 27 + .../room/object/logic/MovingObjectLogic.ts | 147 + .../room/object/logic/avatar/AvatarLogic.ts | 505 ++ .../nitro/room/object/logic/avatar/index.ts | 1 + .../FurnitureAchievementResolutionLogic.ts | 72 + .../furniture/FurnitureBadgeDisplayLogic.ts | 64 + .../FurnitureChangeStateWhenStepOnLogic.ts | 53 + .../furniture/FurnitureClothingChangeLogic.ts | 48 + .../furniture/FurnitureCounterClockLogic.ts | 51 + .../furniture/FurnitureCrackableLogic.ts | 18 + .../furniture/FurnitureCraftingGizmoLogic.ts | 10 + .../logic/furniture/FurnitureCreditLogic.ts | 38 + .../furniture/FurnitureCuckooClockLogic.ts | 38 + .../FurnitureCustomStackHeightLogic.ts | 31 + .../logic/furniture/FurnitureDiceLogic.ts | 69 + .../furniture/FurnitureEcotronBoxLogic.ts | 21 + .../FurnitureEditableInternalLinkLogic.ts | 82 + .../FurnitureEditableRoomLinkLogic.ts | 76 + .../furniture/FurnitureEffectBoxLogic.ts | 27 + .../furniture/FurnitureExternalImageLogic.ts | 44 + .../furniture/FurnitureFireworksLogic.ts | 64 + .../furniture/FurnitureFloorHoleLogic.ts | 109 + .../furniture/FurnitureFriendFurniLogic.ts | 71 + .../FurnitureGroupForumTerminalLogic.ts | 31 + .../FurnitureGuildCustomizedLogic.ts | 94 + .../furniture/FurnitureHabboWheelLogic.ts | 19 + .../furniture/FurnitureHighScoreLogic.ts | 48 + .../furniture/FurnitureHockeyScoreLogic.ts | 59 + .../furniture/FurnitureHweenLovelockLogic.ts | 10 + .../logic/furniture/FurnitureIceStormLogic.ts | 72 + .../furniture/FurnitureInternalLinkLogic.ts | 78 + .../logic/furniture/FurnitureJukeboxLogic.ts | 98 + .../object/logic/furniture/FurnitureLogic.ts | 423 ++ .../logic/furniture/FurnitureLoveLockLogic.ts | 10 + .../furniture/FurnitureMannequinLogic.ts | 51 + .../FurnitureMonsterplantSeedLogic.ts | 25 + .../furniture/FurnitureMultiHeightLogic.ts | 12 + .../furniture/FurnitureMultiStateLogic.ts | 30 + .../furniture/FurnitureMysteryBoxLogic.ts | 25 + .../furniture/FurnitureMysteryTrophyLogic.ts | 25 + .../furniture/FurnitureOneWayDoorLogic.ts | 19 + .../FurniturePetCustomizationLogic.ts | 33 + .../furniture/FurniturePlaceholderLogic.ts | 21 + .../furniture/FurniturePlanetSystemLogic.ts | 18 + .../logic/furniture/FurniturePresentLogic.ts | 112 + .../FurniturePurchaseableClothingLogic.ts | 28 + .../logic/furniture/FurniturePushableLogic.ts | 113 + .../furniture/FurnitureRandomStateLogic.ts | 21 + .../furniture/FurnitureRandomTeleportLogic.ts | 10 + .../furniture/FurnitureRentableSpaceLogic.ts | 46 + .../FurnitureRoomBackgroundColorLogic.ts | 106 + .../furniture/FurnitureRoomBackgroundLogic.ts | 10 + .../furniture/FurnitureRoomBillboardLogic.ts | 31 + .../furniture/FurnitureRoomBrandingLogic.ts | 236 + .../furniture/FurnitureRoomDimmerLogic.ts | 141 + .../logic/furniture/FurnitureScoreLogic.ts | 71 + .../logic/furniture/FurnitureSongDiskLogic.ts | 19 + .../furniture/FurnitureSoundBlockLogic.ts | 120 + .../furniture/FurnitureSoundMachineLogic.ts | 89 + .../logic/furniture/FurnitureStickieLogic.ts | 61 + .../logic/furniture/FurnitureTrophyLogic.ts | 19 + .../furniture/FurnitureVoteCounterLogic.ts | 96 + .../furniture/FurnitureVoteMajorityLogic.ts | 21 + .../furniture/FurnitureWelcomeGiftLogic.ts | 18 + .../logic/furniture/FurnitureWindowLogic.ts | 20 + .../logic/furniture/FurnitureYoutubeLogic.ts | 33 + .../room/object/logic/furniture/index.ts | 62 + .../src/nitro/room/object/logic/index.ts | 5 + .../nitro/room/object/logic/pet/PetLogic.ts | 239 + .../src/nitro/room/object/logic/pet/index.ts | 1 + .../nitro/room/object/logic/room/RoomLogic.ts | 451 ++ .../object/logic/room/SelectionArrowLogic.ts | 35 + .../room/object/logic/room/TileCursorLogic.ts | 64 + .../src/nitro/room/object/logic/room/index.ts | 3 + .../avatar/AvatarVisualization.ts | 1135 ++++ .../avatar/AvatarVisualizationData.ts | 55 + .../avatar/additions/ExpressionAddition.ts | 47 + .../additions/ExpressionAdditionFactory.ts | 22 + .../avatar/additions/FloatingHeartAddition.ts | 169 + .../avatar/additions/FloatingIdleZAddition.ts | 162 + .../additions/GameClickTargetAddition.ts | 61 + .../additions/GuideStatusBubbleAddition.ts | 98 + .../avatar/additions/IAvatarAddition.ts | 9 + .../avatar/additions/IExpressionAddition.ts | 6 + .../avatar/additions/MutedBubbleAddition.ts | 80 + .../avatar/additions/NumberBubbleAddition.ts | 183 + .../avatar/additions/TypingBubbleAddition.ts | 99 + .../visualization/avatar/additions/index.ts | 11 + .../room/object/visualization/avatar/index.ts | 3 + .../visualization/data/AnimationData.ts | 191 + .../visualization/data/AnimationFrame.ts | 118 + .../visualization/data/AnimationFrameData.ts | 64 + .../data/AnimationFrameDirectionalData.ts | 33 + .../data/AnimationFrameSequenceData.ts | 111 + .../visualization/data/AnimationLayerData.ts | 156 + .../visualization/data/AnimationSizeData.ts | 158 + .../visualization/data/AnimationStateData.ts | 184 + .../object/visualization/data/ColorData.ts | 43 + .../visualization/data/DirectionData.ts | 196 + .../data/DirectionalOffsetData.ts | 35 + .../object/visualization/data/LayerData.ts | 116 + .../data/ParticleSystemParticle.ts | 9 + .../object/visualization/data/PetSizeData.ts | 139 + .../object/visualization/data/SizeData.ts | 284 + .../room/object/visualization/data/index.ts | 15 + .../FurnitureAnimatedVisualization.ts | 411 ++ .../FurnitureAnimatedVisualizationData.ts | 90 + .../furniture/FurnitureBBVisualization.ts | 19 + .../FurnitureBadgeDisplayVisualization.ts | 99 + .../furniture/FurnitureBottleVisualization.ts | 62 + .../FurnitureBrandedImageVisualization.ts | 304 + ...urnitureBuilderPlaceholderVisualization.ts | 6 + .../FurnitureCounterClockVisualization.ts | 29 + .../furniture/FurnitureCuboidVisualization.ts | 6 + .../FurnitureDynamicThumbnailVisualization.ts | 57 + .../FurnitureExternalImageVisualization.ts | 51 + .../FurnitureFireworksVisualization.ts | 109 + ...nitureGiftWrappedFireworksVisualization.ts | 78 + .../FurnitureGiftWrappedVisualization.ts | 60 + .../FurnitureGuildCustomizedVisualization.ts | 89 + ...rnitureGuildIsometricBadgeVisualization.ts | 145 + .../FurnitureHabboWheelVisualization.ts | 64 + .../FurnitureIsometricBBVisualization.ts | 165 + .../FurnitureMannequinVisualization.ts | 174 + .../FurnitureMannequinVisualizationData.ts | 37 + .../furniture/FurnitureParticleSystem.ts | 333 ++ .../FurnitureParticleSystemEmitter.ts | 277 + .../FurnitureParticleSystemParticle.ts | 196 + .../FurniturePartyBeamerVisualization.ts | 160 + .../FurniturePlanetSystemVisualization.ts | 133 + ...rePlanetSystemVisualizationPlanetObject.ts | 91 + .../furniture/FurniturePosterVisualization.ts | 6 + .../FurnitureQueueTileVisualization.ts | 50 + ...FurnitureResettingAnimatedVisualization.ts | 9 + .../FurnitureRoomBackgroundVisualization.ts | 64 + .../FurnitureScoreBoardVisualization.ts | 24 + .../FurnitureSoundBlockVisualization.ts | 16 + .../FurnitureStickieVisualization.ts | 12 + .../FurnitureValRandomizerVisualization.ts | 76 + .../furniture/FurnitureVisualization.ts | 588 ++ .../furniture/FurnitureVisualizationData.ts | 291 + .../FurnitureVoteCounterVisualization.ts | 51 + .../FurnitureVoteMajorityVisualization.ts | 45 + .../FurnitureWaterAreaVisualization.ts | 6 + .../FurnitureYoutubeVisualization.ts | 18 + .../IsometricImageFurniVisualization.ts | 173 + .../object/visualization/furniture/index.ts | 41 + .../nitro/room/object/visualization/index.ts | 5 + .../visualization/pet/ExperienceData.ts | 77 + .../visualization/pet/PetVisualization.ts | 599 ++ .../visualization/pet/PetVisualizationData.ts | 125 + .../room/object/visualization/pet/index.ts | 3 + .../visualization/room/PlaneDrawingData.ts | 103 + .../object/visualization/room/RoomPlane.ts | 890 +++ .../visualization/room/RoomPlaneBitmapMask.ts | 28 + .../room/RoomPlaneRectangleMask.ts | 35 + .../visualization/room/RoomVisualization.ts | 939 ++++ .../room/RoomVisualizationData.ts | 121 + .../room/TileCursorVisualization.ts | 26 + .../room/object/visualization/room/index.ts | 12 + .../visualization/room/mask/PlaneMask.ts | 119 + .../room/mask/PlaneMaskBitmap.ts | 52 + .../room/mask/PlaneMaskManager.ts | 205 + .../room/mask/PlaneMaskVisualization.ts | 49 + .../object/visualization/room/mask/index.ts | 4 + .../room/rasterizer/IPlaneRasterizer.ts | 14 + .../room/rasterizer/animated/AnimationItem.ts | 53 + .../rasterizer/animated/LandscapePlane.ts | 62 + .../animated/LandscapeRasterizer.ts | 231 + .../PlaneVisualizationAnimationLayer.ts | 121 + .../room/rasterizer/animated/index.ts | 4 + .../room/rasterizer/basic/FloorPlane.ts | 38 + .../room/rasterizer/basic/FloorRasterizer.ts | 60 + .../room/rasterizer/basic/Plane.ts | 112 + .../room/rasterizer/basic/PlaneMaterial.ts | 94 + .../rasterizer/basic/PlaneMaterialCell.ts | 193 + .../basic/PlaneMaterialCellColumn.ts | 457 ++ .../basic/PlaneMaterialCellMatrix.ts | 654 +++ .../room/rasterizer/basic/PlaneRasterizer.ts | 606 ++ .../room/rasterizer/basic/PlaneTexture.ts | 66 + .../rasterizer/basic/PlaneTextureBitmap.ts | 59 + .../rasterizer/basic/PlaneVisualization.ts | 159 + .../basic/PlaneVisualizationLayer.ts | 95 + .../room/rasterizer/basic/WallPlane.ts | 30 + .../room/rasterizer/basic/WallRasterizer.ts | 70 + .../room/rasterizer/basic/index.ts | 14 + .../visualization/room/rasterizer/index.ts | 3 + .../room/utils/PlaneBitmapData.ts | 28 + .../visualization/room/utils/Randomizer.ts | 128 + .../object/visualization/room/utils/index.ts | 2 + .../src/nitro/room/preview/RoomPreviewer.ts | 875 +++ .../renderer/src/nitro/room/preview/index.ts | 1 + .../room/utils/FurnitureStackingHeightMap.ts | 121 + .../nitro/room/utils/LegacyWallGeometry.ts | 321 ++ .../src/nitro/room/utils/RoomCamera.ts | 287 + .../renderer/src/nitro/room/utils/RoomData.ts | 59 + .../src/nitro/room/utils/RoomFurnitureData.ts | 118 + .../src/nitro/room/utils/RoomInstanceData.ts | 234 + .../RoomObjectBadgeImageAssetListener.ts | 23 + .../room/utils/SelectedRoomObjectData.ts | 94 + .../nitro/room/utils/SpriteDataCollector.ts | 453 ++ .../src/nitro/room/utils/TileObjectMap.ts | 121 + .../renderer/src/nitro/room/utils/index.ts | 10 + .../nitro/session/GroupInformationManager.ts | 67 + .../src/nitro/session/HabboClubLevelEnum.ts | 6 + .../src/nitro/session/IgnoredUsersManager.ts | 124 + .../renderer/src/nitro/session/RoomPetData.ts | 297 + .../renderer/src/nitro/session/RoomSession.ts | 463 ++ .../src/nitro/session/RoomSessionManager.ts | 232 + .../src/nitro/session/RoomUserData.ts | 258 + .../src/nitro/session/SessionDataManager.ts | 729 +++ .../src/nitro/session/UserDataManager.ts | 218 + .../nitro/session/badge/BadgeImageManager.ts | 258 + .../src/nitro/session/badge/BadgeInfo.ts | 23 + .../src/nitro/session/badge/GroupBadge.ts | 23 + .../src/nitro/session/badge/GroupBadgePart.ts | 66 + .../renderer/src/nitro/session/badge/index.ts | 4 + .../nitro/session/furniture/FurnitureData.ts | 222 + .../session/furniture/FurnitureDataLoader.ts | 130 + .../src/nitro/session/furniture/index.ts | 2 + .../src/nitro/session/handler/BaseHandler.ts | 44 + .../session/handler/GenericErrorHandler.ts | 42 + .../session/handler/PetPackageHandler.ts | 45 + .../src/nitro/session/handler/PollHandler.ts | 114 + .../nitro/session/handler/RoomChatHandler.ts | 173 + .../nitro/session/handler/RoomDataHandler.ts | 40 + .../handler/RoomDimmerPresetsHandler.ts | 44 + .../session/handler/RoomPermissionsHandler.ts | 48 + .../session/handler/RoomPresentHandler.ts | 35 + .../session/handler/RoomSessionHandler.ts | 118 + .../nitro/session/handler/RoomUsersHandler.ts | 475 ++ .../nitro/session/handler/WordQuizHandler.ts | 79 + .../src/nitro/session/handler/index.ts | 12 + .../renderer/src/nitro/session/index.ts | 13 + .../src/nitro/session/product/ProductData.ts | 30 + .../session/product/ProductDataLoader.ts | 57 + .../src/nitro/session/product/index.ts | 2 + .../renderer/src/nitro/sound/SoundManager.ts | 234 + .../src/nitro/sound/common/SongDataEntry.ts | 54 + .../sound/common/SongStartRequestData.ts | 52 + .../renderer/src/nitro/sound/common/index.ts | 2 + .../sound/events/NotifyPlayedSongEvent.ts | 27 + .../src/nitro/sound/events/NowPlayingEvent.ts | 35 + .../nitro/sound/events/PlayListStatusEvent.ts | 12 + .../events/SongDiskInventoryReceivedEvent.ts | 11 + .../sound/events/SongInfoReceivedEvent.ts | 19 + .../nitro/sound/events/SoundManagerEvent.ts | 19 + .../renderer/src/nitro/sound/events/index.ts | 6 + submodules/renderer/src/nitro/sound/index.ts | 5 + .../sound/music/JukeboxPlaylistController.ts | 195 + .../src/nitro/sound/music/MusicController.ts | 580 ++ .../src/nitro/sound/music/MusicPlayer.ts | 241 + .../src/nitro/sound/music/MusicPriorities.ts | 8 + .../renderer/src/nitro/sound/music/index.ts | 3 + .../src/nitro/sound/trax/TraxChannel.ts | 23 + .../src/nitro/sound/trax/TraxChannelItem.ts | 21 + .../renderer/src/nitro/sound/trax/TraxData.ts | 97 + .../renderer/src/nitro/sound/trax/index.ts | 3 + .../src/nitro/utils/FigureDataContainer.ts | 241 + .../src/nitro/utils/FixedSizeStack.ts | 65 + .../renderer/src/nitro/utils/FriendlyTime.ts | 47 + .../renderer/src/nitro/utils/FurniId.ts | 9 + .../renderer/src/nitro/utils/HabboWebTools.ts | 338 ++ submodules/renderer/src/nitro/utils/Int32.ts | 13 + submodules/renderer/src/nitro/utils/index.ts | 6 + submodules/renderer/src/nitro/window/index.ts | 1 + .../src/nitro/window/motion/Callback.ts | 30 + .../renderer/src/nitro/window/motion/Combo.ts | 61 + .../src/nitro/window/motion/Dispose.ts | 21 + .../src/nitro/window/motion/DropBounce.ts | 60 + .../renderer/src/nitro/window/motion/Ease.ts | 34 + .../src/nitro/window/motion/EaseOut.ts | 15 + .../src/nitro/window/motion/EaseRate.ts | 14 + .../src/nitro/window/motion/Interval.ts | 47 + .../src/nitro/window/motion/JumpBy.ts | 37 + .../src/nitro/window/motion/Motion.ts | 61 + .../src/nitro/window/motion/Motions.ts | 193 + .../src/nitro/window/motion/MoveBy.ts | 17 + .../src/nitro/window/motion/MoveTo.ts | 35 + .../renderer/src/nitro/window/motion/Queue.ts | 71 + .../src/nitro/window/motion/ResizeTo.ts | 35 + .../renderer/src/nitro/window/motion/Wait.ts | 37 + .../renderer/src/nitro/window/motion/index.ts | 16 + .../src/pixi-proxy/CopyChannelFilter.ts | 49 + .../renderer/src/pixi-proxy/GetTicker.ts | 3 + .../renderer/src/pixi-proxy/GetTickerFPS.ts | 3 + .../renderer/src/pixi-proxy/GetTickerTime.ts | 3 + .../renderer/src/pixi-proxy/INitroPoint.ts | 3 + .../src/pixi-proxy/NitroAlphaFilter.ts | 4 + .../src/pixi-proxy/NitroBaseTexture.ts | 4 + .../renderer/src/pixi-proxy/NitroContainer.ts | 4 + .../renderer/src/pixi-proxy/NitroFilter.ts | 4 + .../renderer/src/pixi-proxy/NitroPoint.ts | 5 + .../renderer/src/pixi-proxy/NitroPolygon.ts | 4 + .../renderer/src/pixi-proxy/NitroRectangle.ts | 4 + .../src/pixi-proxy/NitroRenderTexture.ts | 4 + .../renderer/src/pixi-proxy/NitroSprite.ts | 5 + .../src/pixi-proxy/NitroSpritesheet.ts | 4 + .../renderer/src/pixi-proxy/NitroTexture.ts | 4 + .../renderer/src/pixi-proxy/NitroTilemap.ts | 6 + .../src/pixi-proxy/PaletteMapFilter.ts | 94 + .../src/pixi-proxy/PixiApplicationProxy.ts | 18 + .../pixi-proxy/PixiInteractionEventProxy.ts | 4 + .../src/pixi-proxy/RoomTextureUtils.ts | 129 + .../renderer/src/pixi-proxy/TextureUtils.ts | 128 + .../adjustment-filter/AdjustmentFilter.ts | 120 + .../src/pixi-proxy/adjustment-filter/index.ts | 1 + submodules/renderer/src/pixi-proxy/index.ts | 24 + submodules/renderer/src/room/RoomInstance.ts | 294 + submodules/renderer/src/room/RoomManager.ts | 403 ++ .../renderer/src/room/RoomObjectManager.ts | 129 + submodules/renderer/src/room/index.ts | 11 + .../room/messages/RoomObjectUpdateMessage.ts | 23 + .../renderer/src/room/messages/index.ts | 1 + .../renderer/src/room/object/RoomObject.ts | 245 + .../src/room/object/RoomObjectModel.ts | 53 + submodules/renderer/src/room/object/index.ts | 4 + .../room/object/logic/RoomObjectLogicBase.ts | 132 + .../renderer/src/room/object/logic/index.ts | 1 + .../object/visualization/RoomObjectSprite.ts | 422 ++ .../RoomObjectSpriteVisualization.ts | 304 + .../src/room/object/visualization/index.ts | 2 + .../src/room/renderer/RoomRenderer.ts | 169 + .../src/room/renderer/RoomRendererFactory.ts | 10 + .../src/room/renderer/RoomSpriteCanvas.ts | 1276 +++++ .../room/renderer/cache/RoomObjectCache.ts | 146 + .../renderer/cache/RoomObjectCacheItem.ts | 52 + .../cache/RoomObjectLocationCacheItem.ts | 95 + .../RoomObjectSortableSpriteCacheItem.ts | 78 + .../renderer/src/room/renderer/cache/index.ts | 4 + .../renderer/src/room/renderer/index.ts | 5 + .../src/room/renderer/utils/ExtendedSprite.ts | 206 + .../room/renderer/utils/ObjectMouseData.ts | 31 + .../src/room/renderer/utils/SortableSprite.ts | 79 + .../renderer/src/room/renderer/utils/index.ts | 3 + .../renderer/src/room/utils/ColorConverter.ts | 353 ++ .../renderer/src/room/utils/NumberBank.ts | 54 + .../renderer/src/room/utils/PointMath.ts | 19 + .../renderer/src/room/utils/Rasterizer.ts | 130 + .../src/room/utils/RoomEnterEffect.ts | 78 + .../renderer/src/room/utils/RoomGeometry.ts | 431 ++ submodules/renderer/src/room/utils/RoomId.ts | 14 + .../src/room/utils/RoomRotatingEffect.ts | 75 + .../src/room/utils/RoomShakingEffect.ts | 75 + .../src/room/utils/SpriteUtilities.ts | 20 + submodules/renderer/src/room/utils/index.ts | 10 + submodules/renderer/tsconfig.json | 35 + submodules/renderer/vite.config.js | 36 + submodules/renderer/yarn.lock | 1564 ++++++ tsconfig.json | 11 +- vite.config.js | 31 - vite.config.mjs | 32 + yarn.lock | 2656 --------- 2754 files changed, 124942 insertions(+), 8472 deletions(-) delete mode 100644 package-lock.json create mode 100644 src/assets/images/buttons/accept.png create mode 100644 src/assets/images/buttons/button.png create mode 100644 src/assets/images/buttons/button_active.png create mode 100644 src/assets/images/buttons/button_gray.png create mode 100644 src/assets/images/buttons/button_gray_active.png create mode 100644 src/assets/images/buttons/button_gray_hover.png create mode 100644 src/assets/images/buttons/button_hover.png create mode 100644 src/assets/images/buttons/button_inactive.png create mode 100644 src/assets/images/buttons/button_success.png create mode 100644 src/assets/images/buttons/button_success_active.png create mode 100644 src/assets/images/buttons/button_success_hover.png create mode 100644 src/assets/images/buttons/checkbox.png create mode 100644 src/assets/images/buttons/checkbox_checked.png create mode 100644 src/assets/images/buttons/decline.png create mode 100644 src/assets/images/buttons/toggle_bg.png create mode 100644 src/assets/images/buttons/toggle_left.png create mode 100644 src/assets/images/buttons/toggle_right.png create mode 100644 src/assets/images/buttons/volter_bold_btn.png create mode 100644 src/assets/images/buttons/volter_bold_btn_active.png create mode 100644 src/assets/images/buttons/volter_bold_btn_hover.png create mode 100644 src/assets/images/buttons/volter_normal_btn.png create mode 100644 src/assets/images/buttons/volter_normal_btn_active.png create mode 100644 src/assets/images/buttons/volter_normal_btn_hover.png create mode 100644 src/assets/images/room/arrow-left.png create mode 100644 src/assets/images/room/arrow-right.png create mode 100644 src/assets/images/room/chatinput.png create mode 100644 src/assets/images/room/chatstyles_selector.png create mode 100644 src/assets/images/room/chatstyles_selector_window.png create mode 100644 src/assets/images/room/context_menu_arrow.png create mode 100644 src/assets/images/room/context_menu_arrow_hover.png create mode 100644 src/assets/images/room/context_menu_arrow_up.png create mode 100644 src/assets/images/room/context_menu_arrow_up_hover.png create mode 100644 src/assets/images/room/context_menu_bg.png create mode 100644 src/assets/images/room/context_menu_btn_bg.png create mode 100644 src/assets/images/room/context_pointer_after.png create mode 100644 src/assets/images/room/infostand_buttons.png create mode 100644 src/assets/images/room/infostand_buttons_active.png create mode 100644 src/assets/images/room/infostand_buttons_hover.png create mode 100644 src/assets/images/room/name_bg.png create mode 100644 src/assets/images/room/pointer_after.png create mode 100644 src/assets/images/room/report-room.png create mode 100644 submodules/renderer/.browserslistrc create mode 100644 submodules/renderer/.editorconfig create mode 100644 submodules/renderer/.eslintrc.json create mode 100644 submodules/renderer/.gitignore create mode 100644 submodules/renderer/.gitlab-ci.yml create mode 100644 submodules/renderer/.vscode/settings.json create mode 100644 submodules/renderer/LICENSE create mode 100644 submodules/renderer/README.md create mode 100644 submodules/renderer/index.ts create mode 100644 submodules/renderer/package.json create mode 100644 submodules/renderer/src/api/INitroCore.ts create mode 100644 submodules/renderer/src/api/asset/AssetManager.ts create mode 100644 submodules/renderer/src/api/asset/GetAssetManager.ts create mode 100644 submodules/renderer/src/api/asset/GraphicAsset.ts create mode 100644 submodules/renderer/src/api/asset/GraphicAssetCollection.ts create mode 100644 submodules/renderer/src/api/asset/GraphicAssetGifCollection.ts create mode 100644 submodules/renderer/src/api/asset/GraphicAssetPalette.ts create mode 100644 submodules/renderer/src/api/asset/IAsset.ts create mode 100644 submodules/renderer/src/api/asset/IAssetAlias.ts create mode 100644 submodules/renderer/src/api/asset/IAssetData.ts create mode 100644 submodules/renderer/src/api/asset/IAssetManager.ts create mode 100644 submodules/renderer/src/api/asset/IAssetPalette.ts create mode 100644 submodules/renderer/src/api/asset/IGraphicAsset.ts create mode 100644 submodules/renderer/src/api/asset/IGraphicAssetCollection.ts create mode 100644 submodules/renderer/src/api/asset/IGraphicAssetGifCollection.ts create mode 100644 submodules/renderer/src/api/asset/IGraphicAssetPalette.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimation.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationAdd.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationAvatar.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationDirection.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationFrame.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationFramePart.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationFramePartItem.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationOverride.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationRemove.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationShadow.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationSprite.ts create mode 100644 submodules/renderer/src/api/asset/animation/IAssetAnimationSpriteDirection.ts create mode 100644 submodules/renderer/src/api/asset/animation/index.ts create mode 100644 submodules/renderer/src/api/asset/index.ts create mode 100644 submodules/renderer/src/api/asset/logic/IAssetLogicCustomVars.ts create mode 100644 submodules/renderer/src/api/asset/logic/IAssetLogicData.ts create mode 100644 submodules/renderer/src/api/asset/logic/IAssetLogicPlanetSystem.ts create mode 100644 submodules/renderer/src/api/asset/logic/ISoundSample.ts create mode 100644 submodules/renderer/src/api/asset/logic/index.ts create mode 100644 submodules/renderer/src/api/asset/logic/model/IAssetDimension.ts create mode 100644 submodules/renderer/src/api/asset/logic/model/IAssetLogicModel.ts create mode 100644 submodules/renderer/src/api/asset/logic/model/index.ts create mode 100644 submodules/renderer/src/api/asset/logic/particlesystem/IParticleSystem.ts create mode 100644 submodules/renderer/src/api/asset/logic/particlesystem/IParticleSystemEmitter.ts create mode 100644 submodules/renderer/src/api/asset/logic/particlesystem/IParticleSystemParticle.ts create mode 100644 submodules/renderer/src/api/asset/logic/particlesystem/IParticleSystemSimulation.ts create mode 100644 submodules/renderer/src/api/asset/logic/particlesystem/index.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlane.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneMask.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneMaskData.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneMaskVisualization.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneMaterial.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneMaterialCell.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneMaterialCellColumn.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneMaterialCellExtraItemData.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneMaterialCellMatrix.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneTexture.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneTextureBitmap.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneVisualization.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneVisualizationAnimatedLayer.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneVisualizationAnimatedLayerItem.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneVisualizationData.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetPlaneVisualizationLayer.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/IAssetRoomVisualizationData.ts create mode 100644 submodules/renderer/src/api/asset/room-visualization/index.ts create mode 100644 submodules/renderer/src/api/asset/spritesheet/ISpritesheetData.ts create mode 100644 submodules/renderer/src/api/asset/spritesheet/ISpritesheetFrame.ts create mode 100644 submodules/renderer/src/api/asset/spritesheet/ISpritesheetMeta.ts create mode 100644 submodules/renderer/src/api/asset/spritesheet/index.ts create mode 100644 submodules/renderer/src/api/asset/visualization/IAssetVisualizationData.ts create mode 100644 submodules/renderer/src/api/asset/visualization/IAssetVisualizationDirection.ts create mode 100644 submodules/renderer/src/api/asset/visualization/IAssetVisualizationLayer.ts create mode 100644 submodules/renderer/src/api/asset/visualization/animation/IAssetVisualAnimation.ts create mode 100644 submodules/renderer/src/api/asset/visualization/animation/IAssetVisualAnimationLayer.ts create mode 100644 submodules/renderer/src/api/asset/visualization/animation/IAssetVisualAnimationSequence.ts create mode 100644 submodules/renderer/src/api/asset/visualization/animation/IAssetVisualAnimationSequenceFrame.ts create mode 100644 submodules/renderer/src/api/asset/visualization/animation/IAssetVisualAnimationSequenceFrameOffset.ts create mode 100644 submodules/renderer/src/api/asset/visualization/animation/index.ts create mode 100644 submodules/renderer/src/api/asset/visualization/color/IAssetColor.ts create mode 100644 submodules/renderer/src/api/asset/visualization/color/IAssetColorLayer.ts create mode 100644 submodules/renderer/src/api/asset/visualization/color/index.ts create mode 100644 submodules/renderer/src/api/asset/visualization/gestures/IAssetGesture.ts create mode 100644 submodules/renderer/src/api/asset/visualization/gestures/index.ts create mode 100644 submodules/renderer/src/api/asset/visualization/index.ts create mode 100644 submodules/renderer/src/api/asset/visualization/postures/IAssetPosture.ts create mode 100644 submodules/renderer/src/api/asset/visualization/postures/index.ts create mode 100644 submodules/renderer/src/api/common/IDisposable.ts create mode 100644 submodules/renderer/src/api/common/IEventDispatcher.ts create mode 100644 submodules/renderer/src/api/common/ILinkEventTracker.ts create mode 100644 submodules/renderer/src/api/common/INitroEvent.ts create mode 100644 submodules/renderer/src/api/common/INitroManager.ts create mode 100644 submodules/renderer/src/api/common/IUpdateReceiver.ts create mode 100644 submodules/renderer/src/api/common/NitroLogger.ts create mode 100644 submodules/renderer/src/api/common/index.ts create mode 100644 submodules/renderer/src/api/communication/ICodec.ts create mode 100644 submodules/renderer/src/api/communication/ICommunicationManager.ts create mode 100644 submodules/renderer/src/api/communication/IConnection.ts create mode 100644 submodules/renderer/src/api/communication/IConnectionStateListener.ts create mode 100644 submodules/renderer/src/api/communication/IMessageComposer.ts create mode 100644 submodules/renderer/src/api/communication/IMessageConfiguration.ts create mode 100644 submodules/renderer/src/api/communication/IMessageDataWrapper.ts create mode 100644 submodules/renderer/src/api/communication/IMessageEvent.ts create mode 100644 submodules/renderer/src/api/communication/IMessageParser.ts create mode 100644 submodules/renderer/src/api/communication/enums/ClientDeviceCategoryEnum.ts create mode 100644 submodules/renderer/src/api/communication/enums/ClientPlatformEnum.ts create mode 100644 submodules/renderer/src/api/communication/enums/WebSocketEventEnum.ts create mode 100644 submodules/renderer/src/api/communication/enums/index.ts create mode 100644 submodules/renderer/src/api/communication/index.ts create mode 100644 submodules/renderer/src/api/configuration/IConfigurationManager.ts create mode 100644 submodules/renderer/src/api/configuration/NitroConfiguration.ts create mode 100644 submodules/renderer/src/api/configuration/index.ts create mode 100644 submodules/renderer/src/api/index.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/IAvatarAssetDownloadLibrary.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/IAvatarEffectListener.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/IAvatarFigureContainer.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/IAvatarImage.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/IAvatarImageListener.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/IAvatarRenderManager.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/IEffectAssetDownloadLibrary.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/IOutfit.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/actions/IActionDefinition.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/actions/IActiveActionData.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/actions/index.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/animation/IAnimation.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/animation/IAnimationLayerData.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/animation/IAnimationManager.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/animation/IAvatarDataContainer.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/animation/ISpriteDataContainer.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/animation/index.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/AvatarAction.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/AvatarDirectionAngle.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/AvatarEditorFigureCategory.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/AvatarEditorInstanceId.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/AvatarEditorSideCategory.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/AvatarFigurePartType.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/AvatarGuideStatus.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/AvatarScaleType.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/AvatarSetType.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/GeometryType.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/RenderMode.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/enum/index.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/figuredata/IFigureData.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/figuredata/IFigureDataColor.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/figuredata/IFigureDataHiddenLayer.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/figuredata/IFigureDataPalette.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/figuredata/IFigureDataPart.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/figuredata/IFigureDataSet.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/figuredata/IFigureDataSetType.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/figuredata/index.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/index.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/pet/IPetCustomPart.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/pet/PetType.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/pet/index.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/structure/IFigurePart.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/structure/IFigurePartSet.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/structure/IFigureSetData.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/structure/IPalette.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/structure/IPartColor.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/structure/ISetType.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/structure/IStructureData.ts create mode 100644 submodules/renderer/src/api/nitro/avatar/structure/index.ts create mode 100644 submodules/renderer/src/api/nitro/camera/IRoomCameraWidgetEffect.ts create mode 100644 submodules/renderer/src/api/nitro/camera/IRoomCameraWidgetManager.ts create mode 100644 submodules/renderer/src/api/nitro/camera/IRoomCameraWidgetSelectedEffect.ts create mode 100644 submodules/renderer/src/api/nitro/camera/index.ts create mode 100644 submodules/renderer/src/api/nitro/communication/INitroCommunicationDemo.ts create mode 100644 submodules/renderer/src/api/nitro/communication/INitroCommunicationManager.ts create mode 100644 submodules/renderer/src/api/nitro/communication/index.ts create mode 100644 submodules/renderer/src/api/nitro/enums/RelationshipStatusEnum.ts create mode 100644 submodules/renderer/src/api/nitro/enums/ToolbarIconEnum.ts create mode 100644 submodules/renderer/src/api/nitro/enums/index.ts create mode 100644 submodules/renderer/src/api/nitro/index.ts create mode 100644 submodules/renderer/src/api/nitro/localization/INitroLocalizationManager.ts create mode 100644 submodules/renderer/src/api/nitro/localization/index.ts create mode 100644 submodules/renderer/src/api/nitro/room/IGetImageListener.ts create mode 100644 submodules/renderer/src/api/nitro/room/IImageResult.ts create mode 100644 submodules/renderer/src/api/nitro/room/IPetColorResult.ts create mode 100644 submodules/renderer/src/api/nitro/room/IRoomContentListener.ts create mode 100644 submodules/renderer/src/api/nitro/room/IRoomContentLoader.ts create mode 100644 submodules/renderer/src/api/nitro/room/IRoomCreator.ts create mode 100644 submodules/renderer/src/api/nitro/room/IRoomEngine.ts create mode 100644 submodules/renderer/src/api/nitro/room/IRoomEngineServices.ts create mode 100644 submodules/renderer/src/api/nitro/room/IRoomObjectEventManager.ts create mode 100644 submodules/renderer/src/api/nitro/room/ISelectedRoomObjectData.ts create mode 100644 submodules/renderer/src/api/nitro/room/enums/FriendFurniEngravingWidgetType.ts create mode 100644 submodules/renderer/src/api/nitro/room/enums/RoomObjectPlacementSource.ts create mode 100644 submodules/renderer/src/api/nitro/room/enums/index.ts create mode 100644 submodules/renderer/src/api/nitro/room/index.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/IPetFigureData.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/IRoomMapData.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/RoomObjectCategory.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/RoomObjectLogicType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/RoomObjectOperationType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/RoomObjectType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/RoomObjectUserType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/RoomObjectVariable.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/RoomObjectVisualizationType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/IObjectData.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/ObjectDataBase.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/ObjectDataFactory.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/ObjectDataFlags.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/ObjectDataKey.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/index.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/CrackableDataType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/EmptyDataType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/HighScoreData.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/HighScoreDataType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/LegacyDataType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/MapDataType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/NumberDataType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/StringDataType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/VoteDataType.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/data/type/index.ts create mode 100644 submodules/renderer/src/api/nitro/room/object/index.ts create mode 100644 submodules/renderer/src/api/nitro/room/utils/IFurnitureStackingHeightMap.ts create mode 100644 submodules/renderer/src/api/nitro/room/utils/ILegacyWallGeometry.ts create mode 100644 submodules/renderer/src/api/nitro/room/utils/ITileObjectMap.ts create mode 100644 submodules/renderer/src/api/nitro/room/utils/ObjectRolling.ts create mode 100644 submodules/renderer/src/api/nitro/room/utils/index.ts create mode 100644 submodules/renderer/src/api/nitro/session/FurnitureType.ts create mode 100644 submodules/renderer/src/api/nitro/session/IFurnitureData.ts create mode 100644 submodules/renderer/src/api/nitro/session/IFurnitureDataListener.ts create mode 100644 submodules/renderer/src/api/nitro/session/IGroupInformationManager.ts create mode 100644 submodules/renderer/src/api/nitro/session/IIgnoredUsersManager.ts create mode 100644 submodules/renderer/src/api/nitro/session/IPollChoice.ts create mode 100644 submodules/renderer/src/api/nitro/session/IPollQuestion.ts create mode 100644 submodules/renderer/src/api/nitro/session/IProductData.ts create mode 100644 submodules/renderer/src/api/nitro/session/IProductDataListener.ts create mode 100644 submodules/renderer/src/api/nitro/session/IQuestion.ts create mode 100644 submodules/renderer/src/api/nitro/session/IRoomHandlerListener.ts create mode 100644 submodules/renderer/src/api/nitro/session/IRoomModerationSettings.ts create mode 100644 submodules/renderer/src/api/nitro/session/IRoomPetData.ts create mode 100644 submodules/renderer/src/api/nitro/session/IRoomSession.ts create mode 100644 submodules/renderer/src/api/nitro/session/IRoomSessionManager.ts create mode 100644 submodules/renderer/src/api/nitro/session/IRoomUserData.ts create mode 100644 submodules/renderer/src/api/nitro/session/ISessionDataManager.ts create mode 100644 submodules/renderer/src/api/nitro/session/IUserDataManager.ts create mode 100644 submodules/renderer/src/api/nitro/session/enum/GenericErrorEnum.ts create mode 100644 submodules/renderer/src/api/nitro/session/enum/NoobnessLevelEnum.ts create mode 100644 submodules/renderer/src/api/nitro/session/enum/RoomControllerLevel.ts create mode 100644 submodules/renderer/src/api/nitro/session/enum/RoomTradingLevelEnum.ts create mode 100644 submodules/renderer/src/api/nitro/session/enum/SecurityLevel.ts create mode 100644 submodules/renderer/src/api/nitro/session/enum/index.ts create mode 100644 submodules/renderer/src/api/nitro/session/index.ts create mode 100644 submodules/renderer/src/api/nitro/sound/IMusicController.ts create mode 100644 submodules/renderer/src/api/nitro/sound/IPlaylistController.ts create mode 100644 submodules/renderer/src/api/nitro/sound/ISoundManager.ts create mode 100644 submodules/renderer/src/api/nitro/sound/common/ISongInfo.ts create mode 100644 submodules/renderer/src/api/nitro/sound/common/index.ts create mode 100644 submodules/renderer/src/api/nitro/sound/index.ts create mode 100644 submodules/renderer/src/api/room/IPetBreedingResultData.ts create mode 100644 submodules/renderer/src/api/room/IRoomGeometry.ts create mode 100644 submodules/renderer/src/api/room/IRoomInstance.ts create mode 100644 submodules/renderer/src/api/room/IRoomInstanceContainer.ts create mode 100644 submodules/renderer/src/api/room/IRoomManager.ts create mode 100644 submodules/renderer/src/api/room/IRoomManagerListener.ts create mode 100644 submodules/renderer/src/api/room/IRoomObjectManager.ts create mode 100644 submodules/renderer/src/api/room/IRoomObjectUpdateMessage.ts create mode 100644 submodules/renderer/src/api/room/IRoomSpriteMouseEvent.ts create mode 100644 submodules/renderer/src/api/room/IVector3D.ts create mode 100644 submodules/renderer/src/api/room/RoomObjectSpriteData.ts create mode 100644 submodules/renderer/src/api/room/Vector3d.ts create mode 100644 submodules/renderer/src/api/room/index.ts create mode 100644 submodules/renderer/src/api/room/object/IRoomObject.ts create mode 100644 submodules/renderer/src/api/room/object/IRoomObjectController.ts create mode 100644 submodules/renderer/src/api/room/object/IRoomObjectModel.ts create mode 100644 submodules/renderer/src/api/room/object/IRoomObjectModelController.ts create mode 100644 submodules/renderer/src/api/room/object/enum/AlphaTolerance.ts create mode 100644 submodules/renderer/src/api/room/object/enum/RoomObjectSpriteType.ts create mode 100644 submodules/renderer/src/api/room/object/enum/index.ts create mode 100644 submodules/renderer/src/api/room/object/index.ts create mode 100644 submodules/renderer/src/api/room/object/logic/IRoomObjectEventHandler.ts create mode 100644 submodules/renderer/src/api/room/object/logic/IRoomObjectLogicFactory.ts create mode 100644 submodules/renderer/src/api/room/object/logic/IRoomObjectMouseHandler.ts create mode 100644 submodules/renderer/src/api/room/object/logic/index.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/IPlaneDrawingData.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/IPlaneVisualization.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/IRoomObjectGraphicVisualization.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/IRoomObjectSprite.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/IRoomObjectSpriteVisualization.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/IRoomObjectVisualization.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/IRoomObjectVisualizationData.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/IRoomObjectVisualizationFactory.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/IRoomPlane.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/ISortableSprite.ts create mode 100644 submodules/renderer/src/api/room/object/visualization/index.ts create mode 100644 submodules/renderer/src/api/room/renderer/IRoomCanvasMouseListener.ts create mode 100644 submodules/renderer/src/api/room/renderer/IRoomRenderer.ts create mode 100644 submodules/renderer/src/api/room/renderer/IRoomRendererBase.ts create mode 100644 submodules/renderer/src/api/room/renderer/IRoomRendererFactory.ts create mode 100644 submodules/renderer/src/api/room/renderer/IRoomRenderingCanvas.ts create mode 100644 submodules/renderer/src/api/room/renderer/IRoomSpriteCanvasContainer.ts create mode 100644 submodules/renderer/src/api/room/renderer/index.ts create mode 100644 submodules/renderer/src/api/ui/MouseEventType.ts create mode 100644 submodules/renderer/src/api/ui/TouchEventType.ts create mode 100644 submodules/renderer/src/api/ui/index.ts create mode 100644 submodules/renderer/src/api/ui/widget/enums/AvatarExpressionEnum.ts create mode 100644 submodules/renderer/src/api/ui/widget/enums/ContextMenuEnum.ts create mode 100644 submodules/renderer/src/api/ui/widget/enums/FriendWidgetEngravingWidgetTypeEnum.ts create mode 100644 submodules/renderer/src/api/ui/widget/enums/RoomWidgetEnum.ts create mode 100644 submodules/renderer/src/api/ui/widget/enums/RoomWidgetEnumItemExtradataParameter.ts create mode 100644 submodules/renderer/src/api/ui/widget/enums/RoomWidgetFurniInfoUsagePolicyEnum.ts create mode 100644 submodules/renderer/src/api/ui/widget/enums/SystemChatStyleEnum.ts create mode 100644 submodules/renderer/src/api/ui/widget/enums/index.ts create mode 100644 submodules/renderer/src/api/ui/widget/index.ts create mode 100644 submodules/renderer/src/api/utils/AdvancedMap.ts create mode 100644 submodules/renderer/src/api/utils/ArrayBufferToBase64.ts create mode 100644 submodules/renderer/src/api/utils/BinaryReader.ts create mode 100644 submodules/renderer/src/api/utils/BinaryWriter.ts create mode 100644 submodules/renderer/src/api/utils/Dict.ts create mode 100644 submodules/renderer/src/api/utils/IAdvancedMap.ts create mode 100644 submodules/renderer/src/api/utils/IBinaryReader.ts create mode 100644 submodules/renderer/src/api/utils/IBinaryWriter.ts create mode 100644 submodules/renderer/src/api/utils/NitroBundle.ts create mode 100644 submodules/renderer/src/api/utils/index.ts create mode 100644 submodules/renderer/src/core/NitroCore.ts create mode 100644 submodules/renderer/src/core/NitroVersion.ts create mode 100644 submodules/renderer/src/core/common/Disposable.ts create mode 100644 submodules/renderer/src/core/common/EventDispatcher.ts create mode 100644 submodules/renderer/src/core/common/NitroManager.ts create mode 100644 submodules/renderer/src/core/common/index.ts create mode 100644 submodules/renderer/src/core/communication/CommunicationManager.ts create mode 100644 submodules/renderer/src/core/communication/SocketConnection.ts create mode 100644 submodules/renderer/src/core/communication/codec/Byte.ts create mode 100644 submodules/renderer/src/core/communication/codec/Short.ts create mode 100644 submodules/renderer/src/core/communication/codec/evawire/EvaWireDataWrapper.ts create mode 100644 submodules/renderer/src/core/communication/codec/evawire/EvaWireFormat.ts create mode 100644 submodules/renderer/src/core/communication/codec/evawire/index.ts create mode 100644 submodules/renderer/src/core/communication/codec/index.ts create mode 100644 submodules/renderer/src/core/communication/index.ts create mode 100644 submodules/renderer/src/core/communication/messages/MessageClassManager.ts create mode 100644 submodules/renderer/src/core/communication/messages/index.ts create mode 100644 submodules/renderer/src/core/configuration/ConfigurationEvent.ts create mode 100644 submodules/renderer/src/core/configuration/ConfigurationManager.ts create mode 100644 submodules/renderer/src/core/configuration/index.ts create mode 100644 submodules/renderer/src/core/index.ts create mode 100644 submodules/renderer/src/events/NitroSettingsEvent.ts create mode 100644 submodules/renderer/src/events/NitroSoundEvent.ts create mode 100644 submodules/renderer/src/events/NitroToolbarAnimateIconEvent.ts create mode 100644 submodules/renderer/src/events/NitroToolbarEvent.ts create mode 100644 submodules/renderer/src/events/avatar/AvatarRenderEffectLibraryEvent.ts create mode 100644 submodules/renderer/src/events/avatar/AvatarRenderEvent.ts create mode 100644 submodules/renderer/src/events/avatar/AvatarRenderLibraryEvent.ts create mode 100644 submodules/renderer/src/events/avatar/index.ts create mode 100644 submodules/renderer/src/events/camera/RoomCameraWidgetManagerEvent.ts create mode 100644 submodules/renderer/src/events/camera/index.ts create mode 100644 submodules/renderer/src/events/communication/NitroCommunicationDemoEvent.ts create mode 100644 submodules/renderer/src/events/communication/index.ts create mode 100644 submodules/renderer/src/events/core/MessageEvent.ts create mode 100644 submodules/renderer/src/events/core/NitroEvent.ts create mode 100644 submodules/renderer/src/events/core/SocketConnectionEvent.ts create mode 100644 submodules/renderer/src/events/core/index.ts create mode 100644 submodules/renderer/src/events/index.ts create mode 100644 submodules/renderer/src/events/localization/NitroLocalizationEvent.ts create mode 100644 submodules/renderer/src/events/localization/index.ts create mode 100644 submodules/renderer/src/events/room/RoomBackgroundColorEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomContentLoadedEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomDragEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineDimmerStateEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineObjectEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineObjectPlacedEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineObjectPlacedOnUserEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineObjectPlaySoundEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineRoomAdEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineSamplePlaybackEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineTriggerWidgetEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomEngineUseProductEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectBadgeAssetEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectDataRequestEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectDimmerStateUpdateEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectFloorHoleEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectFurnitureActionEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectHSLColorEnableEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectHSLColorEnabledEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectMouseEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectMoveEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectPlaySoundIdEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectRoomAdEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectSamplePlaybackEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectSoundMachineEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectStateChangedEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectTileMouseEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectWallMouseEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomObjectWidgetRequestEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomSpriteMouseEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomToObjectEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomToObjectOwnAvatarMoveEvent.ts create mode 100644 submodules/renderer/src/events/room/RoomZoomEvent.ts create mode 100644 submodules/renderer/src/events/room/index.ts create mode 100644 submodules/renderer/src/events/session/BadgeImageReadyEvent.ts create mode 100644 submodules/renderer/src/events/session/MysteryBoxKeysUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/PerksUpdatedEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionChatEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionConfirmPetBreedingEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionConfirmPetBreedingResultEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionDanceEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionDimmerPresetsEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionDimmerPresetsEventPresetItem.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionDoorbellEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionErrorMessageEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionFavoriteGroupUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionFriendRequestEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionNestBreedingSuccessEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPetBreedingEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPetBreedingResultEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPetCommandsUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPetFigureUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPetInfoUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPetLevelUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPetPackageEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPetStatusUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPollEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPresentEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionPropertyUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionQueueEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionSpectatorModeEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionUserBadgesEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionUserDataUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionUserFigureUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionUserTagsEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionVoteEvent.ts create mode 100644 submodules/renderer/src/events/session/RoomSessionWordQuizEvent.ts create mode 100644 submodules/renderer/src/events/session/SessionDataPreferencesEvent.ts create mode 100644 submodules/renderer/src/events/session/UserNameUpdateEvent.ts create mode 100644 submodules/renderer/src/events/session/index.ts create mode 100644 submodules/renderer/src/index.ts create mode 100644 submodules/renderer/src/nitro/INitro.ts create mode 100644 submodules/renderer/src/nitro/Nitro.ts create mode 100644 submodules/renderer/src/nitro/Plugins.ts create mode 100644 submodules/renderer/src/nitro/avatar/AvatarAssetDownloadLibrary.ts create mode 100644 submodules/renderer/src/nitro/avatar/AvatarAssetDownloadManager.ts create mode 100644 submodules/renderer/src/nitro/avatar/AvatarFigureContainer.ts create mode 100644 submodules/renderer/src/nitro/avatar/AvatarImage.ts create mode 100644 submodules/renderer/src/nitro/avatar/AvatarImageBodyPartContainer.ts create mode 100644 submodules/renderer/src/nitro/avatar/AvatarImagePartContainer.ts create mode 100644 submodules/renderer/src/nitro/avatar/AvatarRenderManager.ts create mode 100644 submodules/renderer/src/nitro/avatar/AvatarStructure.ts create mode 100644 submodules/renderer/src/nitro/avatar/EffectAssetDownloadLibrary.ts create mode 100644 submodules/renderer/src/nitro/avatar/EffectAssetDownloadManager.ts create mode 100644 submodules/renderer/src/nitro/avatar/PlaceHolderAvatarImage.ts create mode 100644 submodules/renderer/src/nitro/avatar/actions/ActionDefinition.ts create mode 100644 submodules/renderer/src/nitro/avatar/actions/ActionType.ts create mode 100644 submodules/renderer/src/nitro/avatar/actions/ActiveActionData.ts create mode 100644 submodules/renderer/src/nitro/avatar/actions/AvatarActionManager.ts create mode 100644 submodules/renderer/src/nitro/avatar/actions/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/alias/AssetAlias.ts create mode 100644 submodules/renderer/src/nitro/avatar/alias/AssetAliasCollection.ts create mode 100644 submodules/renderer/src/nitro/avatar/alias/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/animation/AddDataContainer.ts create mode 100644 submodules/renderer/src/nitro/avatar/animation/Animation.ts create mode 100644 submodules/renderer/src/nitro/avatar/animation/AnimationManager.ts create mode 100644 submodules/renderer/src/nitro/avatar/animation/AvatarAnimationLayerData.ts create mode 100644 submodules/renderer/src/nitro/avatar/animation/AvatarDataContainer.ts create mode 100644 submodules/renderer/src/nitro/avatar/animation/DirectionDataContainer.ts create mode 100644 submodules/renderer/src/nitro/avatar/animation/SpriteDataContainer.ts create mode 100644 submodules/renderer/src/nitro/avatar/animation/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/cache/AvatarImageActionCache.ts create mode 100644 submodules/renderer/src/nitro/avatar/cache/AvatarImageBodyPartCache.ts create mode 100644 submodules/renderer/src/nitro/avatar/cache/AvatarImageCache.ts create mode 100644 submodules/renderer/src/nitro/avatar/cache/AvatarImageDirectionCache.ts create mode 100644 submodules/renderer/src/nitro/avatar/cache/ImageData.ts create mode 100644 submodules/renderer/src/nitro/avatar/cache/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/data/HabboAvatarAnimations.ts create mode 100644 submodules/renderer/src/nitro/avatar/data/HabboAvatarGeometry.ts create mode 100644 submodules/renderer/src/nitro/avatar/data/HabboAvatarPartSets.ts create mode 100644 submodules/renderer/src/nitro/avatar/geometry/AvatarModelGeometry.ts create mode 100644 submodules/renderer/src/nitro/avatar/geometry/AvatarSet.ts create mode 100644 submodules/renderer/src/nitro/avatar/geometry/GeometryBodyPart.ts create mode 100644 submodules/renderer/src/nitro/avatar/geometry/GeometryItem.ts create mode 100644 submodules/renderer/src/nitro/avatar/geometry/Matrix4x4.ts create mode 100644 submodules/renderer/src/nitro/avatar/geometry/Node3D.ts create mode 100644 submodules/renderer/src/nitro/avatar/geometry/Vector3D.ts create mode 100644 submodules/renderer/src/nitro/avatar/geometry/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/pets/PetCustomPart.ts create mode 100644 submodules/renderer/src/nitro/avatar/pets/PetFigureData.ts create mode 100644 submodules/renderer/src/nitro/avatar/pets/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/AvatarAnimationData.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/AvatarCanvas.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/AvatarStructureDownload.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/FigureSetData.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/PartSetsData.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/animation/AnimationAction.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/animation/AnimationActionPart.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/animation/AvatarAnimationFrame.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/animation/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/figure/FigurePart.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/figure/FigurePartSet.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/figure/Palette.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/figure/PartColor.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/figure/SetType.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/figure/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/index.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/parts/ActivePartSet.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/parts/PartDefinition.ts create mode 100644 submodules/renderer/src/nitro/avatar/structure/parts/index.ts create mode 100644 submodules/renderer/src/nitro/camera/RoomCameraWidgetEffect.ts create mode 100644 submodules/renderer/src/nitro/camera/RoomCameraWidgetManager.ts create mode 100644 submodules/renderer/src/nitro/camera/RoomCameraWidgetSelectedEffect.ts create mode 100644 submodules/renderer/src/nitro/camera/index.ts create mode 100644 submodules/renderer/src/nitro/communication/NitroCommunicationDemo.ts create mode 100644 submodules/renderer/src/nitro/communication/NitroCommunicationManager.ts create mode 100644 submodules/renderer/src/nitro/communication/NitroMessages.ts create mode 100644 submodules/renderer/src/nitro/communication/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/IncomingHeader.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/advertisement/InterstitialMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/advertisement/RoomAdErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/advertisement/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/availability/AvailabilityStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/availability/AvailabilityTimeMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/availability/HotelClosedAndOpensEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/availability/HotelClosesAndWillOpenAtEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/availability/HotelWillCloseInMinutesEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/availability/MaintenanceStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/availability/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/avatar/ChangeUserNameResultMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/avatar/CheckUserNameResultMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/avatar/FigureUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/avatar/WardrobeMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/avatar/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/bots/BotAddedToInventoryEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/bots/BotInventoryMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/bots/BotReceivedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/bots/BotRemovedFromInventoryEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/bots/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/callforhelp/CfhSanctionMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/callforhelp/CfhTopicsInitEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/callforhelp/SanctionStatusEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/callforhelp/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/camera/CameraPublishStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/camera/CameraPurchaseOKMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/camera/CameraSnapshotMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/camera/CameraStorageUrlMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/camera/CompetitionStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/camera/InitCameraMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/camera/ThumbnailStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/camera/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/campaign/CampaignCalendarDataMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/campaign/CampaignCalendarDoorOpenedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/campaign/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/BonusRareInfoMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/BuildersClubFurniCountMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/BuildersClubSubscriptionStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/BundleDiscountRulesetMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/CatalogPageExpirationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/CatalogPageMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/CatalogPageWithEarliestExpiryMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/CatalogPagesListEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/CatalogPublishedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/ClubGiftInfoEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/ClubGiftSelectedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/DirectSMSClubBuyAvailableMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/FireworkChargeDataEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/GiftReceiverNotFoundEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/GiftWrappingConfigurationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/HabboClubExtendOfferMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/HabboClubOffersMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/IsOfferGiftableMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/LimitedEditionSoldOutEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/LimitedOfferAppearingNextMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/NotEnoughBalanceMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/ProductOfferEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/PurchaseErrorMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/PurchaseNotAllowedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/PurchaseOKMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/RoomAdPurchaseInfoEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/SeasonalCalendarDailyOfferMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/SellablePetPalettesMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/TargetedOfferEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/TargetedOfferNotFoundEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/VoucherRedeemErrorMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/VoucherRedeemOkMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/catalog/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/client/ClientPingEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/client/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/competition/CompetitionEntrySubmitResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/competition/CompetitionVotingInfoMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/competition/CurrentTimingCodeMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/competition/IsUserPartOfCompetitionMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/competition/NoOwnedRoomsAlertMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/competition/SecondsUntilMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/competition/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/crafting/CraftableProductsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/crafting/CraftingRecipeEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/crafting/CraftingRecipesAvailableEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/crafting/CraftingResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/crafting/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/desktop/DesktopViewEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/desktop/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/AcceptFriendResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/FindFriendsProcessResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/FollowFriendFailedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/FriendListFragmentEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/FriendListUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/FriendNotificationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/FriendRequestsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/HabboSearchResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/InstantMessageErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/MessageErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/MessengerInitEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/MiniMailNewMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/MiniMailUnreadCountEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/NewConsoleMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/NewFriendRequestEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/RoomInviteErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/RoomInviteEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/friendlist/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/directory/Game2AccountGameStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/directory/Game2GameDirectoryStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/directory/Game2InArenaQueueMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/directory/Game2JoiningGameFailedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/directory/Game2StartingGameFailedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/directory/Game2StopCounterMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/directory/Game2UserLeftGameMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/directory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/AchievementResolutionCompletedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/AchievementResolutionProgressMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/AchievementResolutionsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/GameAchievementsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/GameInviteMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/GameListMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/GameStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/JoinedQueueMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/JoiningQueueFailedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/LeftQueueMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/LoadGameMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/LoadGameUrlEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/UnloadGameMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/UserGameAchievementsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/lobby/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/score/Game2WeeklyFriendsLeaderboardEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/score/Game2WeeklyLeaderboardEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/score/WeeklyCompetitiveFriendsLeaderboardEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/score/WeeklyCompetitiveLeaderboardEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/score/WeeklyGameRewardEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/score/WeeklyGameRewardWinnersEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/game/score/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/generic/GenericErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/generic/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/gifts/PhoneCollectionStateMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/gifts/TryPhoneNumberResultMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/gifts/TryVerificationCodeResultMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/gifts/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/group/GroupBadgePartsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/group/GroupBuyDataEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/group/GroupConfirmMemberRemoveEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/group/GroupInformationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/group/GroupMembersEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/group/GroupPurchasedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/group/GroupSettingsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/group/HabboGroupDeactivatedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/group/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/ForumDataMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/ForumsListMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/GuildForumThreadsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/PostMessageMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/PostThreadMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/ThreadMessagesMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/UnreadForumsCountMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/UpdateMessageMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/UpdateThreadMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/groupforums/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/handshake/CompleteDiffieHandshakeEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/handshake/DisconnectReasonEnum.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/handshake/DisconnectReasonEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/handshake/IdentityAccountsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/handshake/InitDiffieHandshakeEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/handshake/NoobnessLevelMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/handshake/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/CallForHelpDisabledNotifyMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/CallForHelpPendingCallsDeletedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/CallForHelpPendingCallsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/CallForHelpReplyMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/CallForHelpResultMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/ChatReviewSessionDetachedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/ChatReviewSessionOfferedToGuideMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/ChatReviewSessionResultsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/ChatReviewSessionStartedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/ChatReviewSessionVotingStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideOnDutyStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideReportingStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideSessionAttachedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideSessionDetachedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideSessionEndedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideSessionErrorMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideSessionInvitedToGuideRoomMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideSessionMessageMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideSessionPartnerIsTypingMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideSessionRequesterRoomMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideSessionStartedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideTicketCreationResultMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/GuideTicketResolutionMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/HotelMergeNameChangeEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/IssueCloseNotificationMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/QuizDataMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/QuizResultsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/help/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/achievements/AchievementEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/achievements/AchievementsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/achievements/AchievementsScoreEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/achievements/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/avatareffect/AvatarEffectActivatedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/avatareffect/AvatarEffectAddedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/avatareffect/AvatarEffectExpiredEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/avatareffect/AvatarEffectSelectedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/avatareffect/AvatarEffectsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/avatareffect/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/badges/BadgePointLimitsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/badges/BadgeReceivedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/badges/BadgesEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/badges/IsBadgeRequestFulfilledEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/badges/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/clothes/FigureSetIdsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/clothes/_Str_16135.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/clothes/_Str_17532.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/clothes/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/furni/FurnitureListAddOrUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/furni/FurnitureListEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/furni/FurnitureListInvalidateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/furni/FurnitureListRemovedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/furni/FurniturePostItPlacedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/furni/gifts/PresentOpenedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/furni/gifts/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/furni/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/pets/ConfirmBreedingRequestEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/pets/ConfirmBreedingResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/pets/GoToBreedingNestFailureEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/pets/NestBreedingSuccessEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/pets/PetAddedToInventoryEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/pets/PetInventoryEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/pets/PetReceivedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/pets/PetRemovedFromInventoryEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/pets/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingAcceptEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingCloseEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingCompletedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingConfirmationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingListItemEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingNoSuchItemEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingNotOpenEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingOpenEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingOpenFailedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingOtherNotAllowedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/TradingYouAreNotAllowedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/inventory/trading/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/landingview/PromoArticlesMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/landingview/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/landingview/votes/CommunityGoalVoteMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/landingview/votes/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/marketplace/MarketplaceBuyOfferResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/marketplace/MarketplaceCanMakeOfferResult.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/marketplace/MarketplaceCancelOfferResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/marketplace/MarketplaceConfigurationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/marketplace/MarketplaceItemStatsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/marketplace/MarketplaceMakeOfferResult.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/marketplace/MarketplaceOffersEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/marketplace/MarketplaceOwnOffersEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/marketplace/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/CfhChatlogEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/IssueDeletedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/IssueInfoMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/IssuePickFailedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/ModeratorActionResultMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/ModeratorCautionEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/ModeratorInitMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/ModeratorMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/ModeratorRoomInfoEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/ModeratorToolPreferencesEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/ModeratorUserInfoEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/RoomChatlogEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/RoomVisitsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/UserBannedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/UserChatlogEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/moderation/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/mysterybox/CancelMysteryBoxWaitMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/mysterybox/GotMysteryBoxPrizeMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/mysterybox/MysteryBoxKeysEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/mysterybox/ShowMysteryBoxWaitMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/mysterybox/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/CanCreateRoomEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/CanCreateRoomEventEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/CategoriesWithVisitorCountEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/CompetitionRoomsDataMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/ConvertedRoomIdEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/DoorbellMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/FavouriteChangedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/FavouritesEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/FlatAccessDeniedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/FlatCreatedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/GetGuestRoomResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/GuestRoomSearchResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/NavigatorCollapsedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/NavigatorHomeRoomEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/NavigatorLiftedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/NavigatorMetadataEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/NavigatorOpenRoomCreatorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/NavigatorSearchEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/NavigatorSearchesEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/NavigatorSettingsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/PopularRoomTagsResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/RoomEventCancelEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/RoomEventEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/RoomFilterSettingsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/RoomSettingsUpdatedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/RoomThumbnailUpdateResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/UserEventCatsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/UserFlatCatsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/navigator/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/AchievementNotificationMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/ActivityPointNotificationMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/BotErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/ClubGiftNotificationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/ConnectionErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/ElementPointerMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/HabboBroadcastMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/HotelWillShutdownEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/InfoFeedEnableMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/MOTDNotificationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/NotificationDialogMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/OfferRewardDeliveredMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/PetLevelNotificationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/PetPlacingErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/RestoreClientMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/SimpleAlertMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/UnseenItemsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/notifications/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/nux/NewUserExperienceGift.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/nux/NewUserExperienceGiftOfferMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/nux/NewUserExperienceGiftOptions.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/nux/NewUserExperienceNotCompleteEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/nux/ProductOffer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/nux/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/perk/PerkAllowancesMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/perk/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/pet/OpenPetPackageRequestedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/pet/OpenPetPackageResultMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/pet/PetLevelUpdateMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/pet/PetScratchFailedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/pet/PetTrainingPanelMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/pet/breeding/PetBreedingMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/pet/breeding/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/pet/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/poll/PollContentsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/poll/PollErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/poll/PollOfferEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/poll/QuestionAnsweredEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/poll/QuestionEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/poll/QuestionFinishedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/poll/RoomPollResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/poll/StartRoomPollEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/poll/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/CommunityGoalEarnedPrizesMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/CommunityGoalHallOfFameMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/CommunityGoalProgressMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/ConcurrentUsersGoalProgressMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/EpicPopupMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/QuestCancelledMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/QuestCompletedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/QuestDailyMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/QuestMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/QuestsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/SeasonalQuestsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/quest/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/recycler/RecyclerFinishedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/recycler/RecyclerStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/recycler/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/RoomEnterErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/RoomEnterEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/RoomForwardEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/doorbell/RoomDoorbellAcceptedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/doorbell/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/rights/RoomRightsClearEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/rights/RoomRightsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/rights/RoomRightsOwnerEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/access/rights/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/bots/BotCommandConfigurationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/bots/BotForceOpenContextMenuEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/bots/BotSkillListUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/bots/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/data/RoomChatSettingsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/data/RoomEntryInfoMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/data/RoomScoreEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/data/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/engine/FavoriteMembershipUpdateMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/engine/ObjectsDataUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/engine/ObjectsRollingEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/engine/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/CustomUserNotificationMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/DiceValueMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/FurniRentOrBuyoutOfferMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/FurnitureAliasesEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/FurnitureDataEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/FurnitureStackHeightEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/GroupFurniContextMenuInfoMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/ItemDataUpdateMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/LoveLockFurniFinishedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/LoveLockFurniFriendConfirmedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/LoveLockFurniStartEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/OneWayDoorStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/RentableSpaceRentFailedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/RentableSpaceRentOkMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/RentableSpaceStatusMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/RequestSpamWallPostItMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/RoomDimmerPresetsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/RoomMessageNotificationMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/WelcomeGiftStatusEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/floor/FurnitureFloorAddEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/floor/FurnitureFloorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/floor/FurnitureFloorRemoveEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/floor/FurnitureFloorUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/floor/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/wall/FurnitureWallAddEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/wall/FurnitureWallEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/wall/FurnitureWallRemoveEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/wall/FurnitureWallUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/wall/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/youtube/YoutubeControlVideoMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/youtube/YoutubeDisplayPlaylistsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/youtube/YoutubeDisplayVideoMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/furniture/youtube/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/mapping/FloorHeightMapEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/mapping/RoomEntryTileMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/mapping/RoomHeightMapEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/mapping/RoomHeightMapUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/mapping/RoomOccupiedTilesMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/mapping/RoomPaintEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/mapping/RoomReadyMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/mapping/RoomVisualizationSettingsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/mapping/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/pet/PetBreedingResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/pet/PetExperienceEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/pet/PetFigureUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/pet/PetInfoEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/pet/PetStatusUpdateEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/pet/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/session/YouArePlayingGameEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/session/YouAreSpectatorMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/session/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitDanceEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitEffectEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitExpressionEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitHandItemEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitHandItemReceivedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitIdleEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitInfoEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitNumberEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitRemoveEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/RoomUnitStatusEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/chat/FloodControlEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/chat/RemainingMuteEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/chat/RoomUnitChatEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/chat/RoomUnitChatShoutEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/chat/RoomUnitChatWhisperEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/chat/RoomUnitTypingEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/chat/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/room/unit/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomevents/WiredFurniActionEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomevents/WiredFurniConditionEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomevents/WiredFurniTriggerEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomevents/WiredOpenEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomevents/WiredRewardResultMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomevents/WiredSaveSuccessEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomevents/WiredValidationErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomevents/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/BannedUsersFromRoomEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/FlatControllerAddedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/FlatControllerRemovedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/FlatControllersEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/MuteAllInRoomEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/NoSuchFlatEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/RoomSettingsDataEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/RoomSettingsErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/RoomSettingsSaveErrorEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/RoomSettingsSavedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/ShowEnforceRoomCategoryDialogEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/UserUnbannedFromRoomEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/roomsettings/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/security/AuthenticatedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/security/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/sound/JukeboxPlayListFullMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/sound/JukeboxSongDisksMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/sound/NowPlayingMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/sound/OfficialSongIdMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/sound/PlayListMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/sound/PlayListSongAddedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/sound/TraxSongInfoMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/sound/UserSongDisksInventoryMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/sound/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/talent/TalentLevelUpEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/talent/TalentTrackLevelMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/talent/TalentTrackMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/talent/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/AccountSafetyLockStatusChangeMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/ApproveNameMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/ChangeEmailResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/EmailStatusResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/ExtendedProfileChangedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/GroupDetailsChangedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/GroupMembershipRequestedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/GuildEditFailedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/GuildMemberMgmtFailedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/GuildMembershipsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/HabboGroupBadgesMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/HabboGroupJoinFailedMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/IgnoreResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/IgnoredUsersEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/InClientLinkEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/MemberData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/PetRespectNoficationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/PetSupplementedNotificationEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/RespectReceivedEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/ScrSendKickbackInfoMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/WelcomeGiftChangeEmailResultEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/access/UserPermissionsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/access/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/data/RelationshipStatusInfoEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/data/UserCurrentBadgesEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/data/UserInfoEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/data/UserNameChangeMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/data/UserProfileEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/data/UserSettingsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/data/UserTagsMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/data/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/inventory/currency/UserCreditsEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/inventory/currency/UserCurrencyEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/inventory/currency/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/inventory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/inventory/subscription/UserSubscriptionEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/inventory/subscription/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/wardrobe/UserWardrobePageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/user/wardrobe/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/userclassification/UserClassificationMessageEvent.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/incoming/userclassification/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/OutgoingHeader.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/advertisement/GetInterstitialMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/advertisement/InterstitialShownMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/advertisement/RequestAchievementsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/advertisement/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/avatar/ChangeUserNameMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/avatar/CheckUserNameMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/avatar/GetWardrobeMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/avatar/SaveWardrobeOutfitMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/avatar/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/camera/PhotoCompetitionMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/camera/PublishPhotoMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/camera/PurchasePhotoMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/camera/RenderRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/camera/RenderRoomThumbnailMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/camera/RequestCameraConfigurationComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/camera/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/campaign/OpenCampaignCalendarDoorAsStaffComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/campaign/OpenCampaignCalendarDoorComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/campaign/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/BuildersClubPlaceRoomItemMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/BuildersClubPlaceWallItemMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/BuildersClubQueryFurniCountMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetBonusRareInfoMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetBundleDiscountRulesetComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetCatalogIndexComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetCatalogPageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetCatalogPageExpirationComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetCatalogPageWithEarliestExpiryComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetClubGiftInfo.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetClubOffersMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetDirectClubBuyAvailableComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetGiftWrappingConfigurationComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetHabboBasicMembershipExtendOfferComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetHabboClubExtendOfferMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetIsOfferGiftableComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetLimitedOfferAppearingNextComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetNextTargetedOfferComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetProductOfferComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetRoomAdPurchaseInfoComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetSeasonalCalendarDailyOfferComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetSellablePetPalettesComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/GetTargetedOfferComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/MarkCatalogNewAdditionsPageOpenedComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/PurchaseBasicMembershipExtensionComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/PurchaseFromCatalogAsGiftComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/PurchaseFromCatalogComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/PurchaseRoomAdMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/PurchaseTargetedOfferComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/PurchaseVipMembershipExtensionComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/RedeemVoucherMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/RoomAdPurchaseInitiatedComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/SelectClubGiftComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/SetTargetedOfferStateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/ShopTargetedOfferViewedComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/catalog/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/ForwardToACompetitionRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/ForwardToASubmittableRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/ForwardToRandomCompetitionRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/GetCurrentTimingCodeMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/GetIsUserPartOfCompetitionMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/GetSecondsUntilMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/RoomCompetitionInitMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/SubmitRoomToCompetitionMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/VoteForRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/competition/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/crafting/CraftComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/crafting/CraftSecretComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/crafting/GetCraftableProductsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/crafting/GetCraftingRecipeComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/crafting/GetCraftingRecipesAvailableComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/crafting/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/desktop/DesktopViewComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/desktop/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendfurni/FriendFurniConfirmLockMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendfurni/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/AcceptFriendMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/DeclineFriendMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/FindNewFriendsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/FollowFriendMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/FriendListUpdateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/GetFriendRequestsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/HabboSearchComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/MessengerInitComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/RemoveFriendComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/RequestFriendComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/SendMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/SendRoomInviteComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/SetRelationshipStatusComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/VisitUserComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/friendlist/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/arena/Game2ExitGameMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/arena/Game2GameChatMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/arena/Game2LoadStageReadyMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/arena/Game2PlayAgainMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/arena/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/directory/Game2CheckGameDirectoryStatusMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/directory/Game2GetAccountGameStatusMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/directory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/ingame/Game2RequestFullStatusUpdateMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/ingame/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/AcceptGameInviteMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/GameUnloadedMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/GetGameAchievementsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/GetGameListMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/GetGameStatusMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/GetResolutionAchievementsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/GetUserGameAchievementsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/JoinQueueMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/LeaveQueueMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/ResetResolutionAchievementMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/lobby/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/score/Game2GetWeeklyFriendsLeaderboardComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/score/Game2GetWeeklyLeaderboardComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/score/GetWeeklyGameRewardComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/score/GetWeeklyGameRewardWinnersComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/game/score/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/gifts/GetGiftMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/gifts/ResetPhoneNumberStateMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/gifts/SetPhoneNumberVerificationStatusMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/gifts/TryPhoneNumberMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/gifts/VerifyCodeMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/gifts/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/ApproveAllMembershipRequestsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupAdminGiveComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupAdminTakeComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupBadgePartsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupBuyComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupBuyDataComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupConfirmRemoveMemberComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupDeleteComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupFavoriteComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupInformationComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupJoinComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupMembersComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupMembershipAcceptComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupMembershipDeclineComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupRemoveMemberComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupSaveBadgeComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupSaveColorsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupSaveInformationComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupSavePreferencesComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupSettingsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/GroupUnfavoriteComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/group/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/GetForumStatsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/GetForumsListMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/GetMessagesMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/GetThreadMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/GetThreadsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/GetUnreadForumsCountMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/ModerateMessageMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/ModerateThreadMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/PostMessageMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/UpdateForumReadMarkerMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/UpdateForumSettingsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/UpdateThreadMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/groupforums/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/AuthenticationMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/ClientHelloMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/CompleteDiffieHandshakeMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/DisconnectMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/InfoRetrieveMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/InitDiffieHandshakeMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/PongMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/SSOTicketMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/UniqueIDMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/VersionCheckMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/handshake/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/CallForHelpFromForumMessageMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/CallForHelpFromForumThreadMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/CallForHelpFromIMMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/CallForHelpFromPhotoMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/CallForHelpFromSelfieMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/CallForHelpMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/ChatReviewGuideDecidesOnOfferMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/ChatReviewGuideDetachedMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/ChatReviewGuideVoteMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/ChatReviewSessionCreateMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/DeletePendingCallsForHelpMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GetCfhStatusMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GetFaqCategoryMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GetFaqTextMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GetGuideReportingStatusMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GetPendingCallsForHelpMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GetQuizQuestionsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionCreateMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionFeedbackMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionGetRequesterRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionGuideDecidesMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionInviteRequesterMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionIsTypingMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionMessageMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionOnDutyUpdateMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionReportMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionRequesterCancelsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/GuideSessionResolvedMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/PostQuizAnswersComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/SearchFaqsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/help/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/avatareffect/AvatarEffectActivatedComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/avatareffect/AvatarEffectSelectedComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/avatareffect/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/badges/GetBadgePointLimitsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/badges/GetIsBadgeRequestFulfilledComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/badges/RequestABadgeComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/badges/RequestBadgesComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/badges/SetActivatedBadgesComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/badges/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/bots/GetBotInventoryComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/bots/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/furni/FurnitureListComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/furni/RequestFurniInventoryWhenNotInRoomComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/furni/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/pets/CancelPetBreedingComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/pets/ConfirmPetBreedingComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/pets/RequestPetsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/pets/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/TradingAcceptComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/TradingCancelComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/TradingCloseComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/TradingConfirmationComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/TradingListAddItemComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/TradingListAddItemsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/TradingListRemoveItemComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/TradingOpenComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/TradingUnacceptComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/trading/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/unseen/UnseenResetCategoryComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/unseen/UnseenResetItemsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/inventory/unseen/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/landingview/GetPromoArticlesComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/landingview/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/landingview/votes/CommunityGoalVoteMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/landingview/votes/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/BuyMarketplaceOfferMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/BuyMarketplaceTokensMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/CancelMarketplaceOfferMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/GetMarketplaceCanMakeOfferComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/GetMarketplaceConfigurationMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/GetMarketplaceItemStatsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/GetMarketplaceOffersMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/GetMarketplaceOwnOffersMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/MakeOfferMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/RedeemMarketplaceOfferCreditsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/marketplace/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/CloseIssueDefaultActionMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/CloseIssuesMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/DefaultSanctionMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/GetCfhChatlogMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/GetModeratorRoomInfoMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/GetModeratorUserInfoMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/GetRoomChatlogMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/GetRoomVisitsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/GetUserChatlogMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModAlertMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModBanMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModKickMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModMessageMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModMuteMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModToolPreferencesComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModToolSanctionComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModTradingLockMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModerateRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ModeratorActionMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/PickIssuesMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/ReleaseIssuesMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/moderation/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/mysterybox/MysteryBoxWaitingCanceledMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/mysterybox/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/AddFavouriteRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/CanCreateRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/CancelEventMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/CompetitionRoomsSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/ConvertGlobalRoomIdComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/CreateFlatMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/DeleteFavouriteRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/EditEventMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/ForwardToARandomPromotedRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/ForwardToSomeRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/GetCategoriesWithUserCountMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/GetCustomRoomFilterMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/GetGuestRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/GetOfficialRoomsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/GetPopularRoomTagsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/GetUserEventCatsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/GetUserFlatCatsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/GuildBaseSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/MyFavouriteRoomsSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/MyFrequentRoomHistorySearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/MyFriendsRoomsSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/MyGuildBasesSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/MyRecommendedRoomsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/MyRoomHistorySearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/MyRoomRightsSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/MyRoomsSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/NavigatorCategoryListModeComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/NavigatorDeleteSavedSearchComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/NavigatorInitComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/NavigatorSearchCloseComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/NavigatorSearchComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/NavigatorSearchOpenComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/NavigatorSearchSaveComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/NavigatorSettingsSaveComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/PopularRoomsSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/RateFlatMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/RemoveOwnRoomRightsRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/RoomAdEventTabAdClickedComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/RoomAdEventTabViewedComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/RoomAdSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/RoomTextSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/RoomsWhereMyFriendsAreSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/RoomsWithHighestScoreSearchMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/SetRoomSessionTagsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/ToggleStaffPickMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/UpdateHomeRoomMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/UpdateRoomFilterMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/UpdateRoomThumbnailMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/navigator/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/nux/NewUserExperienceGetGiftsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/nux/NewUserExperienceGetGiftsSelection.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/nux/NewUserExperienceScriptProceedComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/nux/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/GetPetCommandsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/PetMountComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/PetRespectComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/PetSupplementComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/RemovePetSaddleComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/RequestPetInfoComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/TogglePetBreedingComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/TogglePetRidingComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/UsePetProductComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/pet/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/poll/PollAnswerComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/poll/PollRejectComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/poll/PollStartComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/poll/VotePollCounterMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/poll/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/AcceptQuestMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/ActivateQuestMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/CancelQuestMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/FriendRequestQuestCompleteMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/GetCommunityGoalEarnedPrizesMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/GetCommunityGoalHallOfFameMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/GetCommunityGoalProgressMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/GetConcurrentUsersGoalProgressMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/GetConcurrentUsersRewardMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/GetDailyQuestMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/GetQuestsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/GetSeasonalQuestsOnlyMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/OpenQuestTrackerMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/RedeemCommunityGoalPrizeMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/RejectQuestMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/StartCampaignMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/quest/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/recycler/GetRecyclerStatusMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/recycler/RecycleItemsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/recycler/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/RedeemItemClothingComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/access/RoomDoorbellAccessComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/access/RoomEnterComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/access/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/RemoveAllRightsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/RoomAmbassadorAlertComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/RoomBanUserComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/RoomDeleteComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/RoomGiveRightsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/RoomKickUserComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/RoomMuteUserComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/RoomTakeRightsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/RoomUnbanUserComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/action/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/bots/RequestBotConfigurationComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/bots/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/data/RoomBannedUsersComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/data/RoomSettingsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/data/RoomUsersWithRightsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/data/SaveRoomSettingsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/data/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/BotPlaceComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/BotRemoveComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/BotSkillSaveComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/CompostPlantMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/GetItemDataComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/HarvestPetMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/PetMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/PetMoveComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/PetPlaceComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/PetRemoveComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/RemoveWallItemComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/SetClothingChangeDataMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/SetItemDataMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/SetObjectDataMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/engine/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/AddSpamWallPostItMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/ExtendRentOrBuyoutFurniMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/ExtendRentOrBuyoutStripItemMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/FurnitureAliasesComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/FurnitureGroupInfoComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/FurniturePickupComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/FurniturePlaceComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/FurniturePlacePaintComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/FurniturePostItPlaceComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/GetRentOrBuyoutOfferMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/OpenMysteryTrophyMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/OpenPetPackageMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/OpenWelcomeGiftComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/RentableSpaceCancelRentMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/RentableSpaceRentMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/RentableSpaceStatusMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/dimmer/MoodlightSettingsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/dimmer/MoodlightSettingsSaveComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/dimmer/MoodlightTogggleStateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/dimmer/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/floor/FurnitureFloorUpdateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/floor/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/FurnitureColorWheelComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/FurnitureDiceActivateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/FurnitureDiceDeactivateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/FurnitureExchangeComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/FurnitureMultiStateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/FurnitureOneWayDoorComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/FurnitureRandomStateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/FurnitureStackHeightComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/FurnitureWallMultiStateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/logic/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/mannequin/FurnitureMannequinSaveLookComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/mannequin/FurnitureMannequinSaveNameComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/mannequin/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/presents/OpenPresentComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/presents/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/toner/ApplyTonerComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/toner/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/wall/FurnitureWallUpdateComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/wall/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/youtube/ControlYoutubeDisplayPlaybackMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/youtube/GetYoutubeDisplayStatusMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/youtube/SetYoutubeDisplayPlaylistMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/furniture/youtube/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/layout/GetOccupiedTilesMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/layout/GetRoomEntryDataMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/layout/GetRoomEntryTileMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/layout/UpdateFloorPropertiesMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/layout/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/pets/BreedPetsMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/pets/PetSelectedMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/pets/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/session/ChangeQueueMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/session/GoToFlatMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/session/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/RoomUnitActionComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/RoomUnitDanceComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/RoomUnitDropHandItemComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/RoomUnitGiveHandItemComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/RoomUnitGiveHandItemPetComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/RoomUnitLookComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/RoomUnitPostureComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/RoomUnitSignComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/RoomUnitWalkComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/chat/RoomUnitChatComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/chat/RoomUnitChatShoutComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/chat/RoomUnitChatStyleComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/chat/RoomUnitChatWhisperComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/chat/RoomUnitTypingStartComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/chat/RoomUnitTypingStopComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/chat/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/room/unit/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomdirectory/RoomNetworkOpenConnectionMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomdirectory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomevents/ApplySnapshotMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomevents/OpenMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomevents/RoomMuteComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomevents/UpdateActionMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomevents/UpdateConditionMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomevents/UpdateTriggerMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomevents/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomsettings/SaveableRoomSettingsData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomsettings/UpdateRoomCategoryAndTradeSettingsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/roomsettings/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/AddJukeboxDiskComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/GetJukeboxPlayListMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/GetNowPlayingMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/GetOfficialSongIdMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/GetSongInfoMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/GetSoundMachinePlayListMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/GetSoundSettingsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/GetUserSongDisksMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/RemoveJukeboxDiskComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/sound/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/talent/GetTalentTrackLevelMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/talent/TalentTrackComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/talent/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/tracking/LagWarningReportMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/tracking/PerformanceLogMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/tracking/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/ApproveNameMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/CatalogGroupsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/ChangeEmailComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/GetEmailStatusComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/GetHabboGroupBadgesMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/ScrGetKickbackInfoMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/UnblockGroupMemberMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/UserRespectComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/WelcomeGiftChangeEmailComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/GetExtendedProfileByNameMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/GetIgnoredUsersComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/GetUserTagsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/IgnoreUserComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/IgnoreUserIdComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/UnignoreUserComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/UserCurrentBadgesComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/UserFigureComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/UserMottoComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/UserProfileComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/UserRelationshipsComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/data/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/inventory/currency/UserCurrencyComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/inventory/currency/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/inventory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/inventory/subscription/UserSubscriptionComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/inventory/subscription/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/settings/UserSettingsCameraFollowComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/settings/UserSettingsOldChatComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/settings/UserSettingsRoomInvitesComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/settings/UserSettingsSoundComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/user/settings/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/userclassification/PeerUsersClassificationMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/userclassification/RoomUsersClassificationMessageComposer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/outgoing/userclassification/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/advertisement/InterstitialMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/advertisement/RoomAdErrorMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/advertisement/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/availability/AvailabilityStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/availability/AvailabilityTimeMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/availability/HotelClosedAndOpensMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/availability/HotelClosesAndWillOpenAtMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/availability/HotelWillCloseInMinutesMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/availability/MaintenanceStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/availability/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/avatar/ChangeUserNameResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/avatar/CheckUserNameResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/avatar/FigureUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/avatar/OutfitData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/avatar/WardrobeMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/avatar/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/bots/BotAddedToInventoryParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/bots/BotData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/bots/BotInventoryMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/bots/BotReceivedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/bots/BotRemovedFromInventoryParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/bots/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/callforhelp/CallForHelpCategoryData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/callforhelp/CallForHelpTopicData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/callforhelp/CfhSanctionMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/callforhelp/CfhSanctionTypeData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/callforhelp/CfhTopicsInitMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/callforhelp/SanctionStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/callforhelp/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/camera/CameraPublishStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/camera/CameraPurchaseOKMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/camera/CameraSnapshotMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/camera/CameraStorageUrlMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/camera/CompetitionStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/camera/InitCameraMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/camera/ThumbnailStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/camera/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/campaign/CampaignCalendarData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/campaign/CampaignCalendarDataMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/campaign/CampaignCalendarDoorOpenedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/campaign/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/BonusRareInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/BuildersClubFurniCountMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/BuildersClubSubscriptionStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/BundleDiscountRuleset.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/BundleDiscountRulesetMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/CatalogIndexMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/CatalogLocalizationData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/CatalogPageExpirationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/CatalogPageMessageOfferData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/CatalogPageMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/CatalogPageMessageProductData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/CatalogPageWithEarliestExpiryMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/CatalogPublishedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/ClubGiftData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/ClubGiftInfoParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/ClubGiftSelectedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/ClubOfferData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/ClubOfferExtendData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/DirectSMSClubBuyAvailableMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/FireworkChargeData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/FireworkChargeDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/FrontPageItem.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/GiftReceiverNotFoundParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/GiftWrappingConfigurationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/HabboClubExtendOfferMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/HabboClubOffersMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/INodeData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/IsOfferGiftableMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/LimitedEditionSoldOutParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/LimitedOfferAppearingNextMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/NodeData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/NotEnoughBalanceMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/ProductOfferMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/PurchaseErrorMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/PurchaseNotAllowedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/PurchaseOKMessageOfferData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/PurchaseOKMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/RoomAdPurchaseInfoEventParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/SeasonalCalendarDailyOfferMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/SellablePetPaletteData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/SellablePetPalettesParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/TargetedOfferData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/TargetedOfferNotFoundParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/TargetedOfferParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/VoucherRedeemErrorMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/VoucherRedeemOkMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/catalog/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/client/ClientPingParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/client/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/competition/CompetitionEntrySubmitResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/competition/CompetitionVotingInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/competition/CompetitionVotingInfoResult.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/competition/CurrentTimingCodeMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/competition/IsUserPartOfCompetitionMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/competition/NoOwnedRoomsAlertMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/competition/SecondsUntilMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/competition/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/crafting/CraftableProductsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/crafting/CraftingRecipeIngredientParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/crafting/CraftingRecipeMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/crafting/CraftingRecipesAvailableMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/crafting/CraftingResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/crafting/CraftingResultObjectParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/crafting/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/desktop/DesktopViewParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/desktop/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/AcceptFriendFailureData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/AcceptFriendResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/FindFriendsProcessResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/FollowFriendFailedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/FriendCategoryData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/FriendListFragmentMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/FriendListUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/FriendNotificationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/FriendParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/FriendRequestData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/FriendRequestsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/HabboSearchResultData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/HabboSearchResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/InstantMessageErrorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/MessageErrorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/MessengerInitParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/MiniMailNewMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/MiniMailUnreadCountParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/NewConsoleMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/NewFriendRequestMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/RoomInviteErrorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/RoomInviteMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/friendlist/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/directory/Game2AccountGameStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/directory/Game2GameDirectoryStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/directory/Game2InArenaQueueMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/directory/Game2JoiningGameFailedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/directory/Game2StartingGameFailedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/directory/Game2StopCounterMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/directory/Game2UserLeftGameMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/directory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/AchievementResolutionCompletedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/AchievementResolutionProgressMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/AchievementResolutionsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/GameAchievementData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/GameAchievementsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/GameConfigurationData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/GameInviteMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/GameListMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/GameStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/JoinedQueueMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/JoiningQueueFailedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/LeftQueueMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/LoadGameMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/LoadGameUrlParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/UnloadGameMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/UserGameAchievementsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/lobby/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/score/Game2WeeklyLeaderboardParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/score/GameRewardWinnerEntry.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/score/LeaderboardEntry.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/score/WeeklyGameRewardParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/score/WeeklyGameRewardWinnersParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/game/score/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/generic/GenericErrorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/generic/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/gifts/PhoneCollectionStateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/gifts/TryPhoneNumberResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/gifts/TryVerificationCodeResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/gifts/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/GroupBadgePartsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/GroupBuyDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/GroupConfirmMemberRemoveParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/GroupInformationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/GroupMembersParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/GroupPurchasedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/GroupSettingsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/HabboGroupDeactivatedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/utils/GroupDataBadgePart.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/utils/GroupMemberParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/group/utils/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/ExtendedForumData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/ForumData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/ForumDataMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/GetForumsListMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/GuildForumThread.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/GuildForumThreadsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/MessageData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/PostMessageMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/PostThreadMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/ThreadMessagesMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/UnreadForumsCountMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/UpdateMessageMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/UpdateThreadMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/groupforums/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/handshake/CompleteDiffieHandshakeParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/handshake/DisconnectReasonParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/handshake/IdentityAccountsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/handshake/InitDiffieHandshakeParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/handshake/NoobnessLevelMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/handshake/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/CallForHelpDisabledNotifyMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/CallForHelpPendingCallsDeletedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/CallForHelpPendingCallsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/CallForHelpReplyMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/CallForHelpResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/ChatReviewSessionDetachedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/ChatReviewSessionOfferedToGuideMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/ChatReviewSessionResultsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/ChatReviewSessionStartedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/ChatReviewSessionVotingStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideOnDutyStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideReportingStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideSessionAttachedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideSessionDetachedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideSessionEndedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideSessionErrorMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideSessionInvitedToGuideRoomMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideSessionMessageMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideSessionPartnerIsTypingMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideSessionRequesterRoomMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideSessionStartedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideTicketCreationResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/GuideTicketResolutionMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/HotelMergeNameChangeParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/IssueCloseNotificationMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/PendingGuideTicketData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/QuizDataMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/QuizResultsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/help/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/achievements/AchievementData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/achievements/AchievementParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/achievements/AchievementResolutionData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/achievements/AchievementsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/achievements/AchievementsScoreParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/achievements/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/avatareffect/AvatarEffect.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/avatareffect/AvatarEffectActivatedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/avatareffect/AvatarEffectAddedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/avatareffect/AvatarEffectExpiredParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/avatareffect/AvatarEffectSelectedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/avatareffect/AvatarEffectsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/avatareffect/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/badges/BadgeAndPointLimit.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/badges/BadgePointLimitsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/badges/BadgeReceivedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/badges/BadgesParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/badges/IsBadgeRequestFulfilledParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/badges/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/clothing/FigureSetIdsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/clothing/_Str_8728.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/clothing/_Str_9021.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/clothing/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/furniture/FurnitureListAddOrUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/furniture/FurnitureListInvalidateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/furniture/FurnitureListItemParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/furniture/FurnitureListParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/furniture/FurnitureListRemovedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/furniture/FurniturePostItPlacedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/furniture/IFurnitureItemData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/furniture/PresentOpenedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/furniture/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/ConfirmBreedingRequestParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/ConfirmBreedingResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/GoToBreedingNestFailureParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/NestBreedingSuccessParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/PetAddedToInventoryParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/PetBreedingMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/PetData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/PetFigureDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/PetInventoryParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/PetReceivedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/PetRemovedFromInventoryParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/pets/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/purse/UserCreditsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/purse/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/ItemDataStructure.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingAcceptParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingCloseParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingCompletedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingConfirmationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingListItemParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingNoSuchItemParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingNotOpenParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingOpenFailedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingOpenParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingOtherNotAllowedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/TradingYouAreNotAllowedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/inventory/trading/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/landingview/PromoArticleData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/landingview/PromoArticlesMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/landingview/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/landingview/votes/CommunityVoteReceivedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/landingview/votes/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceBuyOfferResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceCanMakeOfferResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceCancelOfferResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceConfigurationMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceItemPostedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceItemStatsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceOffer.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceOfferData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceOffersParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/MarketplaceOwnOffersParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/marketplace/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/CfhChatlogData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/CfhChatlogMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ChatRecordData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ChatlineData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/INamed.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/IssueDeletedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/IssueInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/IssueMessageData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/IssuePickFailedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModRoomData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModerationCautionParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModeratorActionResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModeratorInitData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModeratorInitMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModeratorMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModeratorRoomInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModeratorToolPreferencesMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModeratorUserInfoData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/ModeratorUserInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/PatternMatchData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/RoomChatlogMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/RoomModerationData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/RoomVisitData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/RoomVisitsData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/RoomVisitsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/UserBannedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/UserChatlogData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/UserChatlogMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/moderation/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/mysterybox/CancelMysteryBoxWaitMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/mysterybox/GotMysteryBoxPrizeMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/mysterybox/MysteryBoxKeysParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/mysterybox/ShowMysteryBoxWaitMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/mysterybox/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/CanCreateRoomEventParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/CanCreateRoomMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/CategoriesWithVisitorCountParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/CompetitionRoomsDataMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/ConvertedRoomIdMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/DoorbellMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/FavouriteChangedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/FavouritesMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/FlatAccessDeniedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/FlatCreatedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/GetGuestRoomResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/GuestRoomSearchResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorCategoryDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorCollapsedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorEventCategoryDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorHomeRoomParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorLiftedDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorLiftedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorMetadataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorOpenRoomCreatorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorSearchParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorSearchesParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/NavigatorSettingsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/PopularRoomTagsData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/PopularRoomTagsResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/PopularTagData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/RoomEventCancelMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/RoomEventMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/RoomFilterSettingsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/RoomSettingsUpdatedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/RoomThumbnailUpdateResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/UserEventCatsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/UserFlatCatsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/CategoriesWithVisitorCountData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/CompetitionRoomsData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/GuestRoomSearchResultData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/NavigatorSavedSearch.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/NavigatorSearchResultList.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/NavigatorSearchResultSet.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/NavigatorTopLevelContext.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/OfficialRoomEntryData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/RoomEventData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/navigator/utils/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/AchievementLevelUpData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/AchievementNotificationMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/ActivityPointNotificationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/BotErrorEventParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/ClubGiftNotificationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/ConnectionErrorMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/ElementPointerMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/HabboBroadcastMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/HotelWillShutdownParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/InfoFeedEnableMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/MOTDNotificationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/NotificationDialogMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/OfferRewardDeliveredMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/PetLevelNotificationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/PetPlacingErrorEventParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/RestoreClientMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/SimpleAlertMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/UnseenItemsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/notifications/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/nux/NewUserExperienceGiftOfferMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/nux/NewUserExperienceNotCompleteParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/nux/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/perk/PerkAllowancesMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/perk/common/PerkData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/perk/common/PerkEnum.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/perk/common/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/perk/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/pet/OpenPetPackageRequestedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/pet/OpenPetPackageResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/pet/PetLevelUpdateMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/pet/PetScratchFailedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/pet/PetTrainingMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/pet/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/PollChoice.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/PollContentsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/PollErrorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/PollOfferParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/PollQuestion.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/QuestionAnsweredParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/QuestionFinishedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/QuestionParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/RoomPollDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/RoomPollResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/poll/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/CommunityGoalData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/CommunityGoalEarnedPrizesMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/CommunityGoalHallOfFameData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/CommunityGoalHallOfFameMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/CommunityGoalProgressMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/ConcurrentUsersGoalProgressMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/EpicPopupMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/HallOfFameEntryData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/ILandingPageUserEntry.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/PrizeData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/QuestCancelledMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/QuestCompletedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/QuestDailyMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/QuestMessageData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/QuestMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/QuestsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/SeasonalQuestsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/quest/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/recycler/RecyclerFinishedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/recycler/RecyclerStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/recycler/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/CantConnectMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/RoomEnterParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/RoomFowardParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/doorbell/RoomDoorbellAcceptedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/doorbell/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/rights/RoomRightsClearParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/rights/RoomRightsOwnerParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/rights/RoomRightsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/access/rights/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/bots/BotCommandConfigurationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/bots/BotForceOpenContextMenuParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/bots/BotSkillData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/bots/BotSkillListUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/bots/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/data/RoomChatSettingsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/data/RoomDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/data/RoomEntryInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/data/RoomScoreParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/data/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/engine/FavoriteMembershipUpdateMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/engine/ObjectData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/engine/ObjectsDataUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/engine/ObjectsRollingParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/engine/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/CustomUserNotificationMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/DiceValueMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/FurniRentOrBuyoutOfferMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/FurnitureAliasesParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/FurnitureDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/FurnitureStackHeightParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/GroupFurniContextMenuInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/ItemDataUpdateMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/LoveLockFurniFinishedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/LoveLockFurniFriendConfirmedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/LoveLockFurniStartParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/OneWayDoorStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/RentableSpaceRentFailedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/RentableSpaceRentOkMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/RentableSpaceStatusMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/RequestSpamWallPostItMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/RoomDimmerPresetsMessageData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/RoomDimmerPresetsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/RoomMessageNotificationMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/WelcomeGiftStatusParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/floor/FurnitureFloorAddParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/floor/FurnitureFloorDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/floor/FurnitureFloorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/floor/FurnitureFloorRemoveParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/floor/FurnitureFloorUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/floor/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/wall/FurnitureWallAddParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/wall/FurnitureWallDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/wall/FurnitureWallParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/wall/FurnitureWallRemoveParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/wall/FurnitureWallUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/wall/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/youtube/YoutubeControlVideoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/youtube/YoutubeDisplayPlaylist.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/youtube/YoutubeDisplayPlaylistsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/youtube/YoutubeDisplayVideoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/furniture/youtube/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/mapping/FloorHeightMapMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/mapping/RoomEntryTileMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/mapping/RoomHeightMapParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/mapping/RoomHeightMapUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/mapping/RoomOccupiedTilesMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/mapping/RoomPaintParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/mapping/RoomReadyMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/mapping/RoomVisualizationSettingsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/mapping/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/pet/BreedingPetInfo.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/pet/PetBreedingResultData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/pet/PetBreedingResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/pet/PetExperienceParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/pet/PetFigureUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/pet/PetInfoParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/pet/PetStatusUpdateParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/pet/RarityCategoryData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/pet/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/session/YouArePlayingGameParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/session/YouAreSpectatorMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/session/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitDanceParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitEffectParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitExpressionParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitHandItemParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitHandItemReceivedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitIdleParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitInfoParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitNumberParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitRemoveParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitStatusAction.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitStatusMessage.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/RoomUnitStatusParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/UserMessageData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/chat/FloodControlParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/chat/RemainingMuteParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/chat/RoomUnitChatParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/chat/RoomUnitTypingParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/chat/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/room/unit/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/ConditionDefinition.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/TriggerDefinition.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/Triggerable.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/WiredActionDefinition.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/WiredFurniActionParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/WiredFurniConditionParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/WiredFurniTriggerParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/WiredOpenParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/WiredRewardResultMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/WiredSaveSuccessParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/WiredValidationErrorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomevents/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/BannedUserData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/BannedUsersFromRoomParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/FlatControllerAddedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/FlatControllerData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/FlatControllerRemovedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/FlatControllersParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/IFlatUser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/MuteAllInRoomParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/NoSuchFlatParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/RoomChatSettings.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/RoomModerationSettings.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/RoomSettingsData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/RoomSettingsDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/RoomSettingsErrorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/RoomSettingsSaveErrorParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/RoomSettingsSavedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/ShowEnforceRoomCategoryDialogParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/UserUnbannedFromRoomParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/roomsettings/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/security/AuthenticatedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/security/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/JukeboxPlayListFullMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/JukeboxSongDisksMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/NowPlayingMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/OfficialSongIdMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/PlayListEntry.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/PlayListMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/PlayListSongAddedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/SongInfoEntry.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/TraxSongInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/UserSongDisksInventoryMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/sound/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/talent/TalentLevelUpMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/talent/TalentTrackLevel.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/talent/TalentTrackLevelMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/talent/TalentTrackParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/talent/TalentTrackRewardPerk.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/talent/TalentTrackRewardProduct.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/talent/TalentTrackTask.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/talent/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/AccountSafetyLockStatusChangeParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/ApproveNameResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/ChangeEmailResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/EmailStatusParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/ExtendedProfileChangedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/GroupDetailsChangedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/GroupMembershipRequestedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/GuildEditFailedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/GuildMemberMgmtFailedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/GuildMembershipsMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/HabboGroupBadgesMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/HabboGroupEntryData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/HabboGroupJoinFailedMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/IgnoreResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/IgnoredUsersParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/InClientLinkParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/PetRespectNotificationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/PetSupplementTypeEnum.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/PetSupplementedNotificationParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/RespectReceivedParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/RoomEntryData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/ScrKickbackData.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/ScrSendKickbackInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/WelcomeGiftChangeEmailResultParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/access/UserPermissionsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/access/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/RelationshipStatusInfo.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/RelationshipStatusInfoMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/UserCurrentBadgesParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/UserFigureParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/UserInfoDataParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/UserInfoParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/UserNameChangeMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/UserProfileParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/UserSettingsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/UserTagsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/data/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/inventory/currency/UserCreditsParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/inventory/currency/UserCurrencyParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/inventory/currency/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/inventory/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/inventory/subscription/UserSubscriptionParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/inventory/subscription/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/wardrobe/UserWardrobePageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/user/wardrobe/index.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/userclassification/UserClassificationMessageParser.ts create mode 100644 submodules/renderer/src/nitro/communication/messages/parser/userclassification/index.ts create mode 100644 submodules/renderer/src/nitro/externalInterface/LegacyExternalInterface.ts create mode 100644 submodules/renderer/src/nitro/externalInterface/index.ts create mode 100644 submodules/renderer/src/nitro/game/GameMessageHandler.ts create mode 100644 submodules/renderer/src/nitro/game/index.ts create mode 100644 submodules/renderer/src/nitro/index.ts create mode 100644 submodules/renderer/src/nitro/localization/BadgeBaseAndLevel.ts create mode 100644 submodules/renderer/src/nitro/localization/NitroLocalizationManager.ts create mode 100644 submodules/renderer/src/nitro/localization/index.ts create mode 100644 submodules/renderer/src/nitro/room/ImageResult.ts create mode 100644 submodules/renderer/src/nitro/room/PetColorResult.ts create mode 100644 submodules/renderer/src/nitro/room/RoomContentLoader.ts create mode 100644 submodules/renderer/src/nitro/room/RoomEngine.ts create mode 100644 submodules/renderer/src/nitro/room/RoomMessageHandler.ts create mode 100644 submodules/renderer/src/nitro/room/RoomObjectEventHandler.ts create mode 100644 submodules/renderer/src/nitro/room/RoomObjectLogicFactory.ts create mode 100644 submodules/renderer/src/nitro/room/RoomVariableEnum.ts create mode 100644 submodules/renderer/src/nitro/room/index.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAdUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarCarryObjectUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarChatUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarDanceUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarEffectUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarExperienceUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarExpressionUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarFigureUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarFlatControlUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarGestureUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarGuideStatusUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarMutedUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarOwnMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarPetGestureUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarPlayerValueUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarPlayingGameUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarPostureUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarSelectedMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarSignUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarSleepUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarTypingUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectAvatarUseObjectUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectDataUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectGroupBadgeUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectHeightUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectItemDataUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectModelDataUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectMoveUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectRoomColorUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectRoomFloorHoleUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectRoomMapUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectRoomMaskUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectRoomPlanePropertyUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectRoomPlaneVisibilityUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectRoomUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectSelectedMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectStateUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectTileCursorUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/ObjectVisibilityUpdateMessage.ts create mode 100644 submodules/renderer/src/nitro/room/messages/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomFloorHole.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomMapData.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomMapMaskData.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomObjectVisualizationFactory.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomPlaneBitmapMaskData.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomPlaneBitmapMaskParser.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomPlaneData.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomPlaneMaskData.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomPlaneParser.ts create mode 100644 submodules/renderer/src/nitro/room/object/RoomWallData.ts create mode 100644 submodules/renderer/src/nitro/room/object/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/MovingObjectLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/avatar/AvatarLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/avatar/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureAchievementResolutionLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureBadgeDisplayLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureChangeStateWhenStepOnLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureClothingChangeLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureCounterClockLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureCrackableLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureCraftingGizmoLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureCreditLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureCuckooClockLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureCustomStackHeightLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureDiceLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureEcotronBoxLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureEditableInternalLinkLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureEditableRoomLinkLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureEffectBoxLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureExternalImageLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureFireworksLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureFloorHoleLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureFriendFurniLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureGroupForumTerminalLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureGuildCustomizedLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureHabboWheelLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureHighScoreLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureHockeyScoreLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureHweenLovelockLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureIceStormLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureInternalLinkLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureJukeboxLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureLoveLockLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureMannequinLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureMonsterplantSeedLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureMultiHeightLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureMultiStateLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureMysteryBoxLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureMysteryTrophyLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureOneWayDoorLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurniturePetCustomizationLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurniturePlaceholderLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurniturePlanetSystemLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurniturePresentLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurniturePurchaseableClothingLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurniturePushableLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureRandomStateLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureRandomTeleportLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureRentableSpaceLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureRoomBackgroundColorLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureRoomBackgroundLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureRoomBillboardLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureRoomBrandingLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureRoomDimmerLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureScoreLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureSongDiskLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureSoundBlockLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureSoundMachineLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureStickieLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureTrophyLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureVoteCounterLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureVoteMajorityLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureWelcomeGiftLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureWindowLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/FurnitureYoutubeLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/furniture/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/pet/PetLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/pet/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/room/RoomLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/room/SelectionArrowLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/room/TileCursorLogic.ts create mode 100644 submodules/renderer/src/nitro/room/object/logic/room/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/AvatarVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/AvatarVisualizationData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/ExpressionAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/ExpressionAdditionFactory.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/FloatingHeartAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/FloatingIdleZAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/GameClickTargetAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/GuideStatusBubbleAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/IAvatarAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/IExpressionAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/MutedBubbleAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/NumberBubbleAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/TypingBubbleAddition.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/additions/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/avatar/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/AnimationData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/AnimationFrame.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/AnimationFrameData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/AnimationFrameDirectionalData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/AnimationFrameSequenceData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/AnimationLayerData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/AnimationSizeData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/AnimationStateData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/ColorData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/DirectionData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/DirectionalOffsetData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/LayerData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/ParticleSystemParticle.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/PetSizeData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/SizeData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/data/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureAnimatedVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureAnimatedVisualizationData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureBBVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureBadgeDisplayVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureBottleVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureBrandedImageVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureBuilderPlaceholderVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureCounterClockVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureCuboidVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureDynamicThumbnailVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureExternalImageVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureFireworksVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureGiftWrappedFireworksVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureGiftWrappedVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureGuildCustomizedVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureGuildIsometricBadgeVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureHabboWheelVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureIsometricBBVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureMannequinVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureMannequinVisualizationData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureParticleSystem.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureParticleSystemEmitter.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureParticleSystemParticle.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurniturePartyBeamerVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurniturePlanetSystemVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurniturePlanetSystemVisualizationPlanetObject.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurniturePosterVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureQueueTileVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureResettingAnimatedVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureRoomBackgroundVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureScoreBoardVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureSoundBlockVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureStickieVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureValRandomizerVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureVisualizationData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureVoteCounterVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureVoteMajorityVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureWaterAreaVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/FurnitureYoutubeVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/IsometricImageFurniVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/furniture/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/pet/ExperienceData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/pet/PetVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/pet/PetVisualizationData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/pet/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/PlaneDrawingData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/RoomPlane.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/RoomPlaneBitmapMask.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/RoomPlaneRectangleMask.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/RoomVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/RoomVisualizationData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/TileCursorVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/mask/PlaneMask.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/mask/PlaneMaskBitmap.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/mask/PlaneMaskManager.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/mask/PlaneMaskVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/mask/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/IPlaneRasterizer.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/animated/AnimationItem.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/animated/LandscapePlane.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/animated/LandscapeRasterizer.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/animated/PlaneVisualizationAnimationLayer.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/animated/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/FloorPlane.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/FloorRasterizer.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/Plane.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/PlaneMaterial.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/PlaneMaterialCell.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/PlaneMaterialCellColumn.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/PlaneMaterialCellMatrix.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/PlaneRasterizer.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/PlaneTexture.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/PlaneTextureBitmap.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/PlaneVisualization.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/PlaneVisualizationLayer.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/WallPlane.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/WallRasterizer.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/basic/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/rasterizer/index.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/utils/PlaneBitmapData.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/utils/Randomizer.ts create mode 100644 submodules/renderer/src/nitro/room/object/visualization/room/utils/index.ts create mode 100644 submodules/renderer/src/nitro/room/preview/RoomPreviewer.ts create mode 100644 submodules/renderer/src/nitro/room/preview/index.ts create mode 100644 submodules/renderer/src/nitro/room/utils/FurnitureStackingHeightMap.ts create mode 100644 submodules/renderer/src/nitro/room/utils/LegacyWallGeometry.ts create mode 100644 submodules/renderer/src/nitro/room/utils/RoomCamera.ts create mode 100644 submodules/renderer/src/nitro/room/utils/RoomData.ts create mode 100644 submodules/renderer/src/nitro/room/utils/RoomFurnitureData.ts create mode 100644 submodules/renderer/src/nitro/room/utils/RoomInstanceData.ts create mode 100644 submodules/renderer/src/nitro/room/utils/RoomObjectBadgeImageAssetListener.ts create mode 100644 submodules/renderer/src/nitro/room/utils/SelectedRoomObjectData.ts create mode 100644 submodules/renderer/src/nitro/room/utils/SpriteDataCollector.ts create mode 100644 submodules/renderer/src/nitro/room/utils/TileObjectMap.ts create mode 100644 submodules/renderer/src/nitro/room/utils/index.ts create mode 100644 submodules/renderer/src/nitro/session/GroupInformationManager.ts create mode 100644 submodules/renderer/src/nitro/session/HabboClubLevelEnum.ts create mode 100644 submodules/renderer/src/nitro/session/IgnoredUsersManager.ts create mode 100644 submodules/renderer/src/nitro/session/RoomPetData.ts create mode 100644 submodules/renderer/src/nitro/session/RoomSession.ts create mode 100644 submodules/renderer/src/nitro/session/RoomSessionManager.ts create mode 100644 submodules/renderer/src/nitro/session/RoomUserData.ts create mode 100644 submodules/renderer/src/nitro/session/SessionDataManager.ts create mode 100644 submodules/renderer/src/nitro/session/UserDataManager.ts create mode 100644 submodules/renderer/src/nitro/session/badge/BadgeImageManager.ts create mode 100644 submodules/renderer/src/nitro/session/badge/BadgeInfo.ts create mode 100644 submodules/renderer/src/nitro/session/badge/GroupBadge.ts create mode 100644 submodules/renderer/src/nitro/session/badge/GroupBadgePart.ts create mode 100644 submodules/renderer/src/nitro/session/badge/index.ts create mode 100644 submodules/renderer/src/nitro/session/furniture/FurnitureData.ts create mode 100644 submodules/renderer/src/nitro/session/furniture/FurnitureDataLoader.ts create mode 100644 submodules/renderer/src/nitro/session/furniture/index.ts create mode 100644 submodules/renderer/src/nitro/session/handler/BaseHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/GenericErrorHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/PetPackageHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/PollHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/RoomChatHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/RoomDataHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/RoomDimmerPresetsHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/RoomPermissionsHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/RoomPresentHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/RoomSessionHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/RoomUsersHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/WordQuizHandler.ts create mode 100644 submodules/renderer/src/nitro/session/handler/index.ts create mode 100644 submodules/renderer/src/nitro/session/index.ts create mode 100644 submodules/renderer/src/nitro/session/product/ProductData.ts create mode 100644 submodules/renderer/src/nitro/session/product/ProductDataLoader.ts create mode 100644 submodules/renderer/src/nitro/session/product/index.ts create mode 100644 submodules/renderer/src/nitro/sound/SoundManager.ts create mode 100644 submodules/renderer/src/nitro/sound/common/SongDataEntry.ts create mode 100644 submodules/renderer/src/nitro/sound/common/SongStartRequestData.ts create mode 100644 submodules/renderer/src/nitro/sound/common/index.ts create mode 100644 submodules/renderer/src/nitro/sound/events/NotifyPlayedSongEvent.ts create mode 100644 submodules/renderer/src/nitro/sound/events/NowPlayingEvent.ts create mode 100644 submodules/renderer/src/nitro/sound/events/PlayListStatusEvent.ts create mode 100644 submodules/renderer/src/nitro/sound/events/SongDiskInventoryReceivedEvent.ts create mode 100644 submodules/renderer/src/nitro/sound/events/SongInfoReceivedEvent.ts create mode 100644 submodules/renderer/src/nitro/sound/events/SoundManagerEvent.ts create mode 100644 submodules/renderer/src/nitro/sound/events/index.ts create mode 100644 submodules/renderer/src/nitro/sound/index.ts create mode 100644 submodules/renderer/src/nitro/sound/music/JukeboxPlaylistController.ts create mode 100644 submodules/renderer/src/nitro/sound/music/MusicController.ts create mode 100644 submodules/renderer/src/nitro/sound/music/MusicPlayer.ts create mode 100644 submodules/renderer/src/nitro/sound/music/MusicPriorities.ts create mode 100644 submodules/renderer/src/nitro/sound/music/index.ts create mode 100644 submodules/renderer/src/nitro/sound/trax/TraxChannel.ts create mode 100644 submodules/renderer/src/nitro/sound/trax/TraxChannelItem.ts create mode 100644 submodules/renderer/src/nitro/sound/trax/TraxData.ts create mode 100644 submodules/renderer/src/nitro/sound/trax/index.ts create mode 100644 submodules/renderer/src/nitro/utils/FigureDataContainer.ts create mode 100644 submodules/renderer/src/nitro/utils/FixedSizeStack.ts create mode 100644 submodules/renderer/src/nitro/utils/FriendlyTime.ts create mode 100644 submodules/renderer/src/nitro/utils/FurniId.ts create mode 100644 submodules/renderer/src/nitro/utils/HabboWebTools.ts create mode 100644 submodules/renderer/src/nitro/utils/Int32.ts create mode 100644 submodules/renderer/src/nitro/utils/index.ts create mode 100644 submodules/renderer/src/nitro/window/index.ts create mode 100644 submodules/renderer/src/nitro/window/motion/Callback.ts create mode 100644 submodules/renderer/src/nitro/window/motion/Combo.ts create mode 100644 submodules/renderer/src/nitro/window/motion/Dispose.ts create mode 100644 submodules/renderer/src/nitro/window/motion/DropBounce.ts create mode 100644 submodules/renderer/src/nitro/window/motion/Ease.ts create mode 100644 submodules/renderer/src/nitro/window/motion/EaseOut.ts create mode 100644 submodules/renderer/src/nitro/window/motion/EaseRate.ts create mode 100644 submodules/renderer/src/nitro/window/motion/Interval.ts create mode 100644 submodules/renderer/src/nitro/window/motion/JumpBy.ts create mode 100644 submodules/renderer/src/nitro/window/motion/Motion.ts create mode 100644 submodules/renderer/src/nitro/window/motion/Motions.ts create mode 100644 submodules/renderer/src/nitro/window/motion/MoveBy.ts create mode 100644 submodules/renderer/src/nitro/window/motion/MoveTo.ts create mode 100644 submodules/renderer/src/nitro/window/motion/Queue.ts create mode 100644 submodules/renderer/src/nitro/window/motion/ResizeTo.ts create mode 100644 submodules/renderer/src/nitro/window/motion/Wait.ts create mode 100644 submodules/renderer/src/nitro/window/motion/index.ts create mode 100644 submodules/renderer/src/pixi-proxy/CopyChannelFilter.ts create mode 100644 submodules/renderer/src/pixi-proxy/GetTicker.ts create mode 100644 submodules/renderer/src/pixi-proxy/GetTickerFPS.ts create mode 100644 submodules/renderer/src/pixi-proxy/GetTickerTime.ts create mode 100644 submodules/renderer/src/pixi-proxy/INitroPoint.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroAlphaFilter.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroBaseTexture.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroContainer.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroFilter.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroPoint.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroPolygon.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroRectangle.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroRenderTexture.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroSprite.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroSpritesheet.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroTexture.ts create mode 100644 submodules/renderer/src/pixi-proxy/NitroTilemap.ts create mode 100644 submodules/renderer/src/pixi-proxy/PaletteMapFilter.ts create mode 100644 submodules/renderer/src/pixi-proxy/PixiApplicationProxy.ts create mode 100644 submodules/renderer/src/pixi-proxy/PixiInteractionEventProxy.ts create mode 100644 submodules/renderer/src/pixi-proxy/RoomTextureUtils.ts create mode 100644 submodules/renderer/src/pixi-proxy/TextureUtils.ts create mode 100644 submodules/renderer/src/pixi-proxy/adjustment-filter/AdjustmentFilter.ts create mode 100644 submodules/renderer/src/pixi-proxy/adjustment-filter/index.ts create mode 100644 submodules/renderer/src/pixi-proxy/index.ts create mode 100644 submodules/renderer/src/room/RoomInstance.ts create mode 100644 submodules/renderer/src/room/RoomManager.ts create mode 100644 submodules/renderer/src/room/RoomObjectManager.ts create mode 100644 submodules/renderer/src/room/index.ts create mode 100644 submodules/renderer/src/room/messages/RoomObjectUpdateMessage.ts create mode 100644 submodules/renderer/src/room/messages/index.ts create mode 100644 submodules/renderer/src/room/object/RoomObject.ts create mode 100644 submodules/renderer/src/room/object/RoomObjectModel.ts create mode 100644 submodules/renderer/src/room/object/index.ts create mode 100644 submodules/renderer/src/room/object/logic/RoomObjectLogicBase.ts create mode 100644 submodules/renderer/src/room/object/logic/index.ts create mode 100644 submodules/renderer/src/room/object/visualization/RoomObjectSprite.ts create mode 100644 submodules/renderer/src/room/object/visualization/RoomObjectSpriteVisualization.ts create mode 100644 submodules/renderer/src/room/object/visualization/index.ts create mode 100644 submodules/renderer/src/room/renderer/RoomRenderer.ts create mode 100644 submodules/renderer/src/room/renderer/RoomRendererFactory.ts create mode 100644 submodules/renderer/src/room/renderer/RoomSpriteCanvas.ts create mode 100644 submodules/renderer/src/room/renderer/cache/RoomObjectCache.ts create mode 100644 submodules/renderer/src/room/renderer/cache/RoomObjectCacheItem.ts create mode 100644 submodules/renderer/src/room/renderer/cache/RoomObjectLocationCacheItem.ts create mode 100644 submodules/renderer/src/room/renderer/cache/RoomObjectSortableSpriteCacheItem.ts create mode 100644 submodules/renderer/src/room/renderer/cache/index.ts create mode 100644 submodules/renderer/src/room/renderer/index.ts create mode 100644 submodules/renderer/src/room/renderer/utils/ExtendedSprite.ts create mode 100644 submodules/renderer/src/room/renderer/utils/ObjectMouseData.ts create mode 100644 submodules/renderer/src/room/renderer/utils/SortableSprite.ts create mode 100644 submodules/renderer/src/room/renderer/utils/index.ts create mode 100644 submodules/renderer/src/room/utils/ColorConverter.ts create mode 100644 submodules/renderer/src/room/utils/NumberBank.ts create mode 100644 submodules/renderer/src/room/utils/PointMath.ts create mode 100644 submodules/renderer/src/room/utils/Rasterizer.ts create mode 100644 submodules/renderer/src/room/utils/RoomEnterEffect.ts create mode 100644 submodules/renderer/src/room/utils/RoomGeometry.ts create mode 100644 submodules/renderer/src/room/utils/RoomId.ts create mode 100644 submodules/renderer/src/room/utils/RoomRotatingEffect.ts create mode 100644 submodules/renderer/src/room/utils/RoomShakingEffect.ts create mode 100644 submodules/renderer/src/room/utils/SpriteUtilities.ts create mode 100644 submodules/renderer/src/room/utils/index.ts create mode 100644 submodules/renderer/tsconfig.json create mode 100644 submodules/renderer/vite.config.js create mode 100644 submodules/renderer/yarn.lock delete mode 100644 vite.config.js create mode 100644 vite.config.mjs delete mode 100644 yarn.lock diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 1ff87c5a..00000000 --- a/package-lock.json +++ /dev/null @@ -1,4903 +0,0 @@ -{ - "name": "nitro-react", - "version": "2.1.1", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "nitro-react", - "version": "2.1.1", - "dependencies": { - "@nitrots/nitro-renderer": "^1.6.6", - "@tanstack/react-virtual": "^3.0.0-alpha.0", - "react": "^18.2.0", - "react-bootstrap": "^2.2.2", - "react-dom": "^18.2.0", - "react-icons": "^4.7.1", - "react-slider": "^2.0.0", - "react-youtube": "^7.13.1", - "typescript": "^4.3.5", - "use-between": "^1.3.4" - }, - "devDependencies": { - "@types/node": "^18.6.1", - "@types/react": "^18.0.15", - "@types/react-dom": "^18.0.6", - "@types/react-slider": "^1.3.1", - "@typescript-eslint/eslint-plugin": "^5.30.7", - "@typescript-eslint/parser": "^5.30.7", - "@vitejs/plugin-react": "^3.0.0", - "eslint": "^8.20.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsx-a11y": "^6.6.0", - "eslint-plugin-react": "^7.30.1", - "eslint-plugin-react-hooks": "^4.6.0", - "sass": "^1.56.2", - "vite": "^4.0.1" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.5.tgz", - "integrity": "sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.5.tgz", - "integrity": "sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-module-transforms": "^7.20.2", - "@babel/helpers": "^7.20.5", - "@babel/parser": "^7.20.5", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz", - "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.20.5", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", - "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.20.0", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", - "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.6.tgz", - "integrity": "sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz", - "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz", - "integrity": "sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.19.6.tgz", - "integrity": "sha512-RpAi004QyMNisst/pvSanoRdJ4q+jMCWyk9zdw/CyLB9j8RXEahodR6l2GyttDRyEVWZtbN+TpLiHJ3t34LbsQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.6.tgz", - "integrity": "sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==", - "dependencies": { - "regenerator-runtime": "^0.13.11" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/runtime-corejs3": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.20.6.tgz", - "integrity": "sha512-tqeujPiuEfcH067mx+7otTQWROVMKHXEaOQcAeNV5dDdbPWvPcFA8/W9LXw2NfjNmOetqLl03dfnG2WALPlsRQ==", - "dev": true, - "dependencies": { - "core-js-pure": "^3.25.1", - "regenerator-runtime": "^0.13.11" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.5.tgz", - "integrity": "sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.5", - "@babel/types": "^7.20.5", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz", - "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.7.tgz", - "integrity": "sha512-yhzDbiVcmq6T1/XEvdcJIVcXHdLjDJ5cQ0Dp9R9p9ERMBTeO1dR5tc8YYv8zwDeBw1xZm+Eo3MRo8cwclhBS0g==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.7.tgz", - "integrity": "sha512-tYFw0lBJSEvLoGzzYh1kXuzoX1iPkbOk3O29VqzQb0HbOy7t/yw1hGkvwoJhXHwzQUPsShyYcTgRf6bDBcfnTw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.7.tgz", - "integrity": "sha512-3P2OuTxwAtM3k/yEWTNUJRjMPG1ce8rXs51GTtvEC5z1j8fC1plHeVVczdeHECU7aM2/Buc0MwZ6ciM/zysnWg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.7.tgz", - "integrity": "sha512-VUb9GK23z8jkosHU9yJNUgQpsfJn+7ZyBm6adi2Ec5/U241eR1tAn82QicnUzaFDaffeixiHwikjmnec/YXEZg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.7.tgz", - "integrity": "sha512-duterlv3tit3HI9vhzMWnSVaB1B6YsXpFq1Ntd6Fou82BB1l4tucYy3FI9dHv3tvtDuS0NiGf/k6XsdBqPZ01w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.7.tgz", - "integrity": "sha512-9kkycpBFes/vhi7B7o0cf+q2WdJi+EpVzpVTqtWFNiutARWDFFLcB93J8PR1cG228sucsl3B+7Ts27izE6qiaQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.7.tgz", - "integrity": "sha512-5Ahf6jzWXJ4J2uh9dpy5DKOO+PeRUE/9DMys6VuYfwgQzd6n5+pVFm58L2Z2gRe611RX6SdydnNaiIKM3svY7g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.7.tgz", - "integrity": "sha512-QqJnyCfu5OF78Olt7JJSZ7OSv/B4Hf+ZJWp4kkq9xwMsgu7yWq3crIic8gGOpDYTqVKKMDAVDgRXy5Wd/nWZyQ==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.7.tgz", - "integrity": "sha512-2wv0xYDskk2+MzIm/AEprDip39a23Chptc4mL7hsHg26P0gD8RUhzmDu0KCH2vMThUI1sChXXoK9uH0KYQKaDg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.7.tgz", - "integrity": "sha512-APVYbEilKbD5ptmKdnIcXej2/+GdV65TfTjxR2Uk8t1EsOk49t6HapZW6DS/Bwlvh5hDwtLapdSumIVNGxgqLg==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.7.tgz", - "integrity": "sha512-5wPUAGclplQrAW7EFr3F84Y/d++7G0KykohaF4p54+iNWhUnMVU8Bh2sxiEOXUy4zKIdpHByMgJ5/Ko6QhtTUw==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.7.tgz", - "integrity": "sha512-hxzlXtWF6yWfkE/SMTscNiVqLOAn7fOuIF3q/kiZaXxftz1DhZW/HpnTmTTWrzrS7zJWQxHHT4QSxyAj33COmA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.7.tgz", - "integrity": "sha512-WM83Dac0LdXty5xPhlOuCD5Egfk1xLND/oRLYeB7Jb/tY4kzFSDgLlq91wYbHua/s03tQGA9iXvyjgymMw62Vw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.7.tgz", - "integrity": "sha512-3nkNnNg4Ax6MS/l8O8Ynq2lGEVJYyJ2EoY3PHjNJ4PuZ80EYLMrFTFZ4L/Hc16AxgtXKwmNP9TM0YKNiBzBiJQ==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.7.tgz", - "integrity": "sha512-3SA/2VJuv0o1uD7zuqxEP+RrAyRxnkGddq0bwHQ98v1KNlzXD/JvxwTO3T6GM5RH6JUd29RTVQTOJfyzMkkppA==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.7.tgz", - "integrity": "sha512-xi/tbqCqvPIzU+zJVyrpz12xqciTAPMi2fXEWGnapZymoGhuL2GIWIRXg4O2v5BXaYA5TSaiKYE14L0QhUTuQg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.7.tgz", - "integrity": "sha512-NUsYbq3B+JdNKn8SXkItFvdes9qTwEoS3aLALtiWciW/ystiCKM20Fgv9XQBOXfhUHyh5CLEeZDXzLOrwBXuCQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.7.tgz", - "integrity": "sha512-qjwzsgeve9I8Tbsko2FEkdSk2iiezuNGFgipQxY/736NePXDaDZRodIejYGWOlbYXugdxb0nif5yvypH6lKBmA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.7.tgz", - "integrity": "sha512-mFWDz4RoBTzPphTCkM7Kc7Qpa0o/Z01acajR+Ai7LdfKgcP/C6jYOaKwv7nKzD0+MjOT20j7You9g4ozYy1dKQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.7.tgz", - "integrity": "sha512-m39UmX19RvEIuC8sYZ0M+eQtdXw4IePDSZ78ZQmYyFaXY9krq4YzQCK2XWIJomNLtg4q+W5aXr8bW3AbqWNoVg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.7.tgz", - "integrity": "sha512-1cbzSEZA1fANwmT6rjJ4G1qQXHxCxGIcNYFYR9ctI82/prT38lnwSRZ0i5p/MVXksw9eMlHlet6pGu2/qkXFCg==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.7.tgz", - "integrity": "sha512-QaQ8IH0JLacfGf5cf0HCCPnQuCTd/dAI257vXBgb/cccKGbH/6pVtI1gwhdAQ0Y48QSpTIFrh9etVyNdZY+zzw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", - "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.15.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.19.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", - "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "node_modules/@nitrots/nitro-renderer": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/@nitrots/nitro-renderer/-/nitro-renderer-1.6.6.tgz", - "integrity": "sha512-VMxn4gAV49G1nnOrtL6koLnJglHdp83zILcKe8DTZsZXX6GOGU2wST1sSnHvdcH28KpesqrCP5dyJGKC/0ylYQ==", - "dependencies": { - "@pixi/app": "~6.5.0", - "@pixi/basis": "~6.5.0", - "@pixi/canvas-display": "~6.5.0", - "@pixi/canvas-extract": "~6.5.0", - "@pixi/canvas-renderer": "~6.5.0", - "@pixi/constants": "~6.5.0", - "@pixi/core": "~6.5.0", - "@pixi/display": "~6.5.0", - "@pixi/events": "~6.5.0", - "@pixi/extensions": "~6.5.0", - "@pixi/extract": "~6.5.0", - "@pixi/filter-alpha": "~6.5.0", - "@pixi/filter-color-matrix": "~6.5.0", - "@pixi/graphics": "~6.5.0", - "@pixi/graphics-extras": "~6.5.0", - "@pixi/interaction": "~6.5.0", - "@pixi/loaders": "~6.5.0", - "@pixi/math": "~6.5.0", - "@pixi/math-extras": "~6.5.0", - "@pixi/mixin-cache-as-bitmap": "~6.5.0", - "@pixi/mixin-get-child-by-name": "~6.5.0", - "@pixi/mixin-get-global-position": "~6.5.0", - "@pixi/polyfill": "~6.5.0", - "@pixi/runner": "~6.5.0", - "@pixi/settings": "~6.5.0", - "@pixi/sprite": "~6.5.0", - "@pixi/sprite-tiling": "~6.5.0", - "@pixi/spritesheet": "~6.5.0", - "@pixi/text": "~6.5.0", - "@pixi/ticker": "~6.5.0", - "@pixi/tilemap": "^3.2.2", - "@pixi/utils": "~6.5.0", - "gifuct-js": "^2.1.2", - "howler": "^2.2.3", - "pako": "^2.0.4" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@pixi/app": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/app/-/app-6.5.8.tgz", - "integrity": "sha512-pDPkamtYDaPhscNxack+bHNqazCwrqw6cAotKyoz1mvLXeGhxqTntOcfgGLZR2fNbnY8EBmdduLvH7n2jI/LTg==", - "peerDependencies": { - "@pixi/core": "6.5.8", - "@pixi/display": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/basis": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/basis/-/basis-6.5.8.tgz", - "integrity": "sha512-j4j08fZsdg8b3F1Cs1cE478m6aVk6ix53pTrv+kxq0Givl3ctO+wwWEU07BFAuvsGGySKrhAEt4vmz78cRK9KQ==", - "peerDependencies": { - "@pixi/compressed-textures": "6.5.8", - "@pixi/constants": "6.5.8", - "@pixi/core": "6.5.8", - "@pixi/loaders": "6.5.8", - "@pixi/runner": "6.5.8", - "@pixi/settings": "6.5.8" - } - }, - "node_modules/@pixi/canvas-display": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/canvas-display/-/canvas-display-6.5.8.tgz", - "integrity": "sha512-7kgFmN2dCWBhgo+CEKpZDmgqRkYCQeHoVsyOSyxSvTqHDnMjFane1OwTBg6p4PlsE+Jn1BEx/3V2ja/XbR9XOg==", - "peerDependencies": { - "@pixi/display": "6.5.8" - } - }, - "node_modules/@pixi/canvas-extract": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/canvas-extract/-/canvas-extract-6.5.8.tgz", - "integrity": "sha512-9jRVlQpumyj0QWF9CQzsDqg7QkqYxLhX/Xu87o5bWfpwrocF6AlJJak0zc6WMLvDEJ1ZI3mNdV2P1AW9ba4+WA==", - "peerDependencies": { - "@pixi/canvas-renderer": "6.5.8", - "@pixi/core": "6.5.8", - "@pixi/display": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/canvas-renderer": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/canvas-renderer/-/canvas-renderer-6.5.8.tgz", - "integrity": "sha512-W+qp05VNtPIoE1/azAyAcYLYXONdql15ts72bsGssRvGJGmECzfhOKq389S4j9X5uVKm51CZhChE7yReWkbUEw==", - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/core": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/settings": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/compressed-textures": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/compressed-textures/-/compressed-textures-6.5.8.tgz", - "integrity": "sha512-nW74kcvdEoe4a2U7Ekx4egqdH1tYKC2kCOZxKWYcUARqz26tS0ddwSRyIs05In6EChmXHXGy/MtShdueMH38TA==", - "peer": true, - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/core": "6.5.8", - "@pixi/loaders": "6.5.8", - "@pixi/settings": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/constants": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/constants/-/constants-6.5.8.tgz", - "integrity": "sha512-yYRCebBPqajm1kn5f8QQTTvl7oDRDk1nppfO+JpqbrFXg0W7oqIMurec3KeG9RdZW5foOiXDoz1Gw+VtolYIEw==" - }, - "node_modules/@pixi/core": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/core/-/core-6.5.8.tgz", - "integrity": "sha512-Gconik7/PpFPMpCpOddXVIPx5C2StWKw7lQ4YX19yQ+cRRmecCea2cV0xTBtpEjjx0ilX7nBfIEuZ4zIlMmlbA==", - "dependencies": { - "@types/offscreencanvas": "^2019.6.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/pixijs" - }, - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/extensions": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/runner": "6.5.8", - "@pixi/settings": "6.5.8", - "@pixi/ticker": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/display": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/display/-/display-6.5.8.tgz", - "integrity": "sha512-2K8YOG8s0iF8x/k2Q0RTFmoMJ9biI6PXEh76nH3EqUFdpyrIIgrG5aOMnCkVDvOxlgVRrKG8Q3JBHlSievTmuw==", - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/settings": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/events": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/events/-/events-6.5.8.tgz", - "integrity": "sha512-9pnL1Z/YBynIEk2I5f3ZvcB+fnqxeZ0dP5m1OKZ8GpKnkZz6/2FZ9hbelyeZgW9iHUPNy98A+Nrfv4oE7lB5Dg==", - "peerDependencies": { - "@pixi/display": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/extensions": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/extensions/-/extensions-6.5.8.tgz", - "integrity": "sha512-6vEV801Vn/EkU/qjFiZ76OZWPq5KsBR2r+P5gfKv4YLnaDc3A+0IpUOJ7sLBAJqmr0iw68g6xV6MnuqVjNGjFg==" - }, - "node_modules/@pixi/extract": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/extract/-/extract-6.5.8.tgz", - "integrity": "sha512-qbuuD/iBA4J+TCBgrbMe8oDUFbCriyy9LTKEtQp+pghKD5MEMvJ3nO6Osumxqiqta2kYU6WldFLTldKyHEiQ7Q==", - "peerDependencies": { - "@pixi/core": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/filter-alpha": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/filter-alpha/-/filter-alpha-6.5.8.tgz", - "integrity": "sha512-W4IkFTLTP84H+DS9XIdBGunAEpaXLrasDc4CQBeyp4c4hBlGlzriUZp30vkmqm7GPmFhzPe7aiJtNYgUpxKQBQ==", - "peerDependencies": { - "@pixi/core": "6.5.8" - } - }, - "node_modules/@pixi/filter-color-matrix": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/filter-color-matrix/-/filter-color-matrix-6.5.8.tgz", - "integrity": "sha512-iix+a/KEi6HAwZwkUH3nkIzyLu0ln3HBuHEFLUUhug7xrQgQgGrTQZ32iWlfpJD/BZuKphIGfzlxMFfvyQmkVw==", - "peerDependencies": { - "@pixi/core": "6.5.8" - } - }, - "node_modules/@pixi/graphics": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/graphics/-/graphics-6.5.8.tgz", - "integrity": "sha512-DUuUXHO4t5fg+n+srMkHX38QEH3WtS1IMXtovBGFJkkopG0Z0xjxSp5XvsPPw1J//4fzkHZI5OBrlN613p9+sg==", - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/core": "6.5.8", - "@pixi/display": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/sprite": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/graphics-extras": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/graphics-extras/-/graphics-extras-6.5.8.tgz", - "integrity": "sha512-RdrAucGr6etEzz64TiViPcxlEpUfwJTj62j8eMDU1BjCwSaNDs5TN3LerY/en7IRRsUsrVLMn/3z52B25P+rjQ==", - "peerDependencies": { - "@pixi/graphics": "6.5.8", - "@pixi/math": "6.5.8" - } - }, - "node_modules/@pixi/interaction": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/interaction/-/interaction-6.5.8.tgz", - "integrity": "sha512-uP247r0f47vo9WSpEnsUfeD1izxVGpjtg4iAyGT/02ezWse2vD1aEL8AbxFa65TL0IXOKsHEQudCVL+wjnbSKQ==", - "peerDependencies": { - "@pixi/core": "6.5.8", - "@pixi/display": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/ticker": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/loaders": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/loaders/-/loaders-6.5.8.tgz", - "integrity": "sha512-mj11UPKsqWaTEPMpCnFugr6heKkQeNFuVSddSwE8crg19l46zcMhk3ucpQX15RDpAdDJjtl3OraevQCHHbNENw==", - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/core": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/math": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/math/-/math-6.5.8.tgz", - "integrity": "sha512-9493KEH5ITnjOZvQZbaU22lD0kcg/XhNh+309KYfwFX787zA1BN/7is06oHEgHBDb2NemqioYi6sw1WnECgQig==" - }, - "node_modules/@pixi/math-extras": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/math-extras/-/math-extras-6.5.8.tgz", - "integrity": "sha512-Vkc1OHPZKoVI89mHigAtpBma6bU3z6t4XJfXwG6RkHX/D955gtnZ80BBeu3wt482z1iMedYLgHv9eqW70ROtxg==", - "peerDependencies": { - "@pixi/math": "6.5.8" - } - }, - "node_modules/@pixi/mixin-cache-as-bitmap": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/mixin-cache-as-bitmap/-/mixin-cache-as-bitmap-6.5.8.tgz", - "integrity": "sha512-5TTv4w8v7guI6z3gKz5ppUCbNMRw+8RRNru/aq65qUl6kcUaJiYwQdBFJ/vJwpI9ePEScWrCuLVEc8QtX6xjNw==", - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/core": "6.5.8", - "@pixi/display": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/settings": "6.5.8", - "@pixi/sprite": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/mixin-get-child-by-name": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/mixin-get-child-by-name/-/mixin-get-child-by-name-6.5.8.tgz", - "integrity": "sha512-b15HTdHpW4ErDBpf7wm1vvWHrTv5kQzElXrwAPBCnLgvronfSL9mL7npOUkZOybUorCoEBq/7oNVjkimsQc5gw==", - "peerDependencies": { - "@pixi/display": "6.5.8" - } - }, - "node_modules/@pixi/mixin-get-global-position": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/mixin-get-global-position/-/mixin-get-global-position-6.5.8.tgz", - "integrity": "sha512-Y5epEW5mRrgpDOHvfc92t0PaBgboBKXR4n/AzOOFt0h9GRNTmVKYBpUQPp/HO+r1Bxq+XbaGm1CyfkjUUxnORA==", - "peerDependencies": { - "@pixi/display": "6.5.8", - "@pixi/math": "6.5.8" - } - }, - "node_modules/@pixi/polyfill": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/polyfill/-/polyfill-6.5.8.tgz", - "integrity": "sha512-z2klHelxTZExMyO4oiLdxJMGzzXnToEIDn7Dwfy3FY+98LbxSa2dVFCgzDsYeiiS8fSMsni2Ru7aZT/DFsRDcA==", - "dependencies": { - "object-assign": "^4.1.1", - "promise-polyfill": "^8.2.0" - } - }, - "node_modules/@pixi/runner": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/runner/-/runner-6.5.8.tgz", - "integrity": "sha512-/9KVgQjTKiBa1qHdNmhP9I+AHgC/Eu9QiKcc+oakLCJtpYi79lx+nDFrpLUamIi2c7lP0hDWVe0XqlQeYmSwag==" - }, - "node_modules/@pixi/settings": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/settings/-/settings-6.5.8.tgz", - "integrity": "sha512-gmnwHkg9+tlQRuFNOdimzl73Dup2fdEo/VYaF7spT+8womE4KWAvARCBMqY/10aAx1iYeYuo5av/RfqrePB5Hg==", - "peerDependencies": { - "@pixi/constants": "6.5.8" - } - }, - "node_modules/@pixi/sprite": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/sprite/-/sprite-6.5.8.tgz", - "integrity": "sha512-ywvbrNgjK+K93X9cvHtDCnsBtU7B9JD/3wg+1G6v1Ktrr2E1gwVIQK1NANBrjzt6cYGphz5EqGAW68d0rMBliw==", - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/core": "6.5.8", - "@pixi/display": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/settings": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/sprite-tiling": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/sprite-tiling/-/sprite-tiling-6.5.8.tgz", - "integrity": "sha512-PG3tiWI6uUest/d7HAz4/3I8NjpYyeMUL2WDy86nMXCJ6bLdTs/s9Nq3DLckaUsyIMTGsVbj/BXjE8LP1WDTog==", - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/core": "6.5.8", - "@pixi/display": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/sprite": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/spritesheet": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/spritesheet/-/spritesheet-6.5.8.tgz", - "integrity": "sha512-WiJd4fKpSitD3A+/u5q8IPoHXMFT8++bsluhuJvDwzo//s0PHb9qExlF2xos7zUmekmydEFMkDnrl4+lWn2cyg==", - "peerDependencies": { - "@pixi/core": "6.5.8", - "@pixi/loaders": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/text": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/text/-/text-6.5.8.tgz", - "integrity": "sha512-7AZPj5+vWcUjK0QzQ3ehiEwEqywiWR8NhDmnnN5nRNHR9u5IOOnqCQtBTdDffYPN0uMgCi8MzUPwTJhGuyOeww==", - "peerDependencies": { - "@pixi/core": "6.5.8", - "@pixi/math": "6.5.8", - "@pixi/settings": "6.5.8", - "@pixi/sprite": "6.5.8", - "@pixi/utils": "6.5.8" - } - }, - "node_modules/@pixi/ticker": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/ticker/-/ticker-6.5.8.tgz", - "integrity": "sha512-7VKq5hfnRDSv6a16pATqZAmpQfEu4G171iUTloy3QZfbnPw0s3JervZSih1yJJD84GXEF4VzYB26pJ/x3arGjQ==", - "peerDependencies": { - "@pixi/extensions": "6.5.8", - "@pixi/settings": "6.5.8" - } - }, - "node_modules/@pixi/tilemap": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@pixi/tilemap/-/tilemap-3.2.2.tgz", - "integrity": "sha512-svdmMyJP63vdae3t66tCmE8IWeO/6lD1xXU+5gzfxqxJS5seTp2bm8mQok2c8PF0O6l/NYlLz6BRklOuEuHboQ==", - "peerDependencies": { - "@pixi/constants": "^6.0.4", - "@pixi/core": "^6.0.4", - "@pixi/display": "^6.0.4", - "@pixi/graphics": "^6.0.4", - "@pixi/math": "^6.0.4", - "@pixi/utils": "^6.0.4" - } - }, - "node_modules/@pixi/utils": { - "version": "6.5.8", - "resolved": "https://registry.npmjs.org/@pixi/utils/-/utils-6.5.8.tgz", - "integrity": "sha512-zLnvmVQBWPDnwkfvrSpBBF2XpWSMt+kQAsX562eqjuME63ic9M6fK4u/IaA8csdlG2wtcjBvSYWrpWmPq0bWag==", - "dependencies": { - "@types/earcut": "^2.1.0", - "earcut": "^2.2.4", - "eventemitter3": "^3.1.0", - "url": "^0.11.0" - }, - "peerDependencies": { - "@pixi/constants": "6.5.8", - "@pixi/settings": "6.5.8" - } - }, - "node_modules/@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@reach/observe-rect": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@reach/observe-rect/-/observe-rect-1.2.0.tgz", - "integrity": "sha512-Ba7HmkFgfQxZqqaeIWWkNK0rEhpxVQHIoVyW1YDSkGsGIXzcaW4deC8B0pZrNSSyLTdIk7y+5olKt5+g0GmFIQ==" - }, - "node_modules/@react-aria/ssr": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.4.0.tgz", - "integrity": "sha512-qzuGk14/fUyUAoW/EBwgFcuMkVNXJVGlezTgZ1HovpCZ+p9844E7MUFHE7CuzFzPEIkVeqhBNIoIu+VJJ8YCOA==", - "dependencies": { - "@babel/runtime": "^7.6.2" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@restart/hooks": { - "version": "0.4.7", - "resolved": "https://registry.npmjs.org/@restart/hooks/-/hooks-0.4.7.tgz", - "integrity": "sha512-ZbjlEHcG+FQtpDPHd7i4FzNNvJf2enAwZfJbpM8CW7BhmOAbsHpZe3tsHwfQUrBuyrxWqPYp2x5UMnilWcY22A==", - "dependencies": { - "dequal": "^2.0.2" - }, - "peerDependencies": { - "react": ">=16.8.0" - } - }, - "node_modules/@restart/ui": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@restart/ui/-/ui-1.4.1.tgz", - "integrity": "sha512-J7wFOx2DcmkBqCqiZgDsggLO7faiNh4Nv1/v80FmbRgP+MYpwaVDKKXLC69DA4+ejgNIsBP5ORtC74EZqO1j8A==", - "dependencies": { - "@babel/runtime": "^7.18.3", - "@popperjs/core": "^2.11.5", - "@react-aria/ssr": "^3.2.0", - "@restart/hooks": "^0.4.7", - "@types/warning": "^3.0.0", - "dequal": "^2.0.2", - "dom-helpers": "^5.2.0", - "uncontrollable": "^7.2.1", - "warning": "^4.0.3" - }, - "peerDependencies": { - "react": ">=16.14.0", - "react-dom": ">=16.14.0" - } - }, - "node_modules/@tanstack/react-virtual": { - "version": "3.0.0-alpha.0", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.0-alpha.0.tgz", - "integrity": "sha512-WpHU/dt34NwZZ8qtiE05TF+nX/b1W6qrWZarO+s8jJFpPVicrTbJKp5Bjt4eSJuk7aYw272oEfsH3ABBRgj+3A==", - "dependencies": { - "@babel/runtime": "^7.16.7", - "@reach/observe-rect": "^1.1.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - }, - "peerDependencies": { - "react": ">=16" - } - }, - "node_modules/@types/earcut": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/earcut/-/earcut-2.1.1.tgz", - "integrity": "sha512-w8oigUCDjElRHRRrMvn/spybSMyX8MTkKA5Dv+tS1IE/TgmNZPqUYtvYBXGY8cieSE66gm+szeK+bnbxC2xHTQ==" - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "node_modules/@types/node": { - "version": "18.11.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.15.tgz", - "integrity": "sha512-VkhBbVo2+2oozlkdHXLrb3zjsRkpdnaU2bXmX8Wgle3PUi569eLRaHGlgETQHR7lLL1w7GiG3h9SnePhxNDecw==", - "dev": true - }, - "node_modules/@types/offscreencanvas": { - "version": "2019.7.0", - "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.0.tgz", - "integrity": "sha512-PGcyveRIpL1XIqK8eBsmRBt76eFgtzuPiSTyKHZxnGemp2yzGzWpjYKAfK3wIMiU7eH+851yEpiuP8JZerTmWg==" - }, - "node_modules/@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" - }, - "node_modules/@types/react": { - "version": "18.0.26", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.26.tgz", - "integrity": "sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug==", - "dependencies": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "18.0.9", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.9.tgz", - "integrity": "sha512-qnVvHxASt/H7i+XG1U1xMiY5t+IHcPGUK7TDMDzom08xa7e86eCeKOiLZezwCKVxJn6NEiiy2ekgX8aQssjIKg==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/react-slider": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@types/react-slider/-/react-slider-1.3.1.tgz", - "integrity": "sha512-4X2yK7RyCIy643YCFL+bc6XNmcnBtt8n88uuyihvcn5G7Lut23eNQU3q3KmwF7MWIfKfsW5NxCjw0SeDZRtgaA==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/react-transition-group": { - "version": "4.4.5", - "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz", - "integrity": "sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/scheduler": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", - "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" - }, - "node_modules/@types/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", - "dev": true - }, - "node_modules/@types/warning": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/warning/-/warning-3.0.0.tgz", - "integrity": "sha512-t/Tvs5qR47OLOr+4E9ckN8AmP2Tf16gWq+/qA4iUGS/OOyHVO8wv2vjJuX8SNOUTJyWb+2t7wJm6cXILFnOROA==" - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.46.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.46.1.tgz", - "integrity": "sha512-YpzNv3aayRBwjs4J3oz65eVLXc9xx0PDbIRisHj+dYhvBn02MjYOD96P8YGiWEIFBrojaUjxvkaUpakD82phsA==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.46.1", - "@typescript-eslint/type-utils": "5.46.1", - "@typescript-eslint/utils": "5.46.1", - "debug": "^4.3.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "regexpp": "^3.2.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "5.46.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.46.1.tgz", - "integrity": "sha512-RelQ5cGypPh4ySAtfIMBzBGyrNerQcmfA1oJvPj5f+H4jI59rl9xxpn4bonC0tQvUKOEN7eGBFWxFLK3Xepneg==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.46.1", - "@typescript-eslint/types": "5.46.1", - "@typescript-eslint/typescript-estree": "5.46.1", - "debug": "^4.3.4" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.46.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.46.1.tgz", - "integrity": "sha512-iOChVivo4jpwUdrJZyXSMrEIM/PvsbbDOX1y3UCKjSgWn+W89skxWaYXACQfxmIGhPVpRWK/VWPYc+bad6smIA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.46.1", - "@typescript-eslint/visitor-keys": "5.46.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "5.46.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.46.1.tgz", - "integrity": "sha512-V/zMyfI+jDmL1ADxfDxjZ0EMbtiVqj8LUGPAGyBkXXStWmCUErMpW873zEHsyguWCuq2iN4BrlWUkmuVj84yng==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "5.46.1", - "@typescript-eslint/utils": "5.46.1", - "debug": "^4.3.4", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "5.46.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.46.1.tgz", - "integrity": "sha512-Z5pvlCaZgU+93ryiYUwGwLl9AQVB/PQ1TsJ9NZ/gHzZjN7g9IAn6RSDkpCV8hqTwAiaj6fmCcKSQeBPlIpW28w==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.46.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.46.1.tgz", - "integrity": "sha512-j9W4t67QiNp90kh5Nbr1w92wzt+toiIsaVPnEblB2Ih2U9fqBTyqV9T3pYWZBRt6QoMh/zVWP59EpuCjc4VRBg==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.46.1", - "@typescript-eslint/visitor-keys": "5.46.1", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "5.46.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.46.1.tgz", - "integrity": "sha512-RBdBAGv3oEpFojaCYT4Ghn4775pdjvwfDOfQ2P6qzNVgQOVrnSPe5/Pb88kv7xzYQjoio0eKHKB9GJ16ieSxvA==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.46.1", - "@typescript-eslint/types": "5.46.1", - "@typescript-eslint/typescript-estree": "5.46.1", - "eslint-scope": "^5.1.1", - "eslint-utils": "^3.0.0", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.46.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.46.1.tgz", - "integrity": "sha512-jczZ9noovXwy59KjRTk1OftT78pwygdcmCuBf8yMoWt/8O8l+6x2LSEze0E4TeepXK4MezW3zGSyoDRZK7Y9cg==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.46.1", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@vitejs/plugin-react": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-3.0.0.tgz", - "integrity": "sha512-1mvyPc0xYW5G8CHQvJIJXLoMjl5Ct3q2g5Y2s6Ccfgwm45y48LBvsla7az+GkkAtYikWQ4Lxqcsq5RHLcZgtNQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.20.5", - "@babel/plugin-transform-react-jsx-self": "^7.18.6", - "@babel/plugin-transform-react-jsx-source": "^7.19.6", - "magic-string": "^0.27.0", - "react-refresh": "^0.14.0" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "peerDependencies": { - "vite": "^4.0.0" - } - }, - "node_modules/acorn": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", - "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/aria-query": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", - "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.10.2", - "@babel/runtime-corejs3": "^7.10.2" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/array-includes": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", - "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", - "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", - "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz", - "integrity": "sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.1.3" - } - }, - "node_modules/ast-types-flow": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==", - "dev": true - }, - "node_modules/axe-core": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.6.1.tgz", - "integrity": "sha512-lCZN5XRuOnpG4bpMq8v0khrWtUOn+i8lZSb6wHZH56ZfbIEv6XwJV84AAueh9/zi7qPVJ/E4yz6fmsiyOmXR4w==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/axobject-query": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", - "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==", - "dev": true - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", - "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001441", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz", - "integrity": "sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/classnames": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", - "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "node_modules/core-js-pure": { - "version": "3.26.1", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.26.1.tgz", - "integrity": "sha512-VVXcDpp/xJ21KdULRq/lXdLzQAtX7+37LzpyfFM973il0tWSsDEoyzG38G14AjTpK9VTfiNM9jnFauq/CpaWGQ==", - "dev": true, - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/csstype": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" - }, - "node_modules/damerau-levenshtein": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/dom-helpers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", - "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", - "dependencies": { - "@babel/runtime": "^7.8.7", - "csstype": "^3.0.2" - } - }, - "node_modules/earcut": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.4.tgz", - "integrity": "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==" - }, - "node_modules/electron-to-chromium": { - "version": "1.4.284", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", - "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "node_modules/es-abstract": { - "version": "1.20.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.5.tgz", - "integrity": "sha512-7h8MM2EQhsCA7pU/Nv78qOXFpD8Rhqd12gYiSJVkrH9+e8VuA8JlPJK/hQjjlLv6pJvx/z1iRFKzYb0XT/RuAQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "unbox-primitive": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/esbuild": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.7.tgz", - "integrity": "sha512-P6OBFYFSQOGzfApqCeYKqfKRRbCIRsdppTXFo4aAvtiW3o8TTyiIplBvHJI171saPAiy3WlawJHCveJVIOIx1A==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/android-arm": "0.16.7", - "@esbuild/android-arm64": "0.16.7", - "@esbuild/android-x64": "0.16.7", - "@esbuild/darwin-arm64": "0.16.7", - "@esbuild/darwin-x64": "0.16.7", - "@esbuild/freebsd-arm64": "0.16.7", - "@esbuild/freebsd-x64": "0.16.7", - "@esbuild/linux-arm": "0.16.7", - "@esbuild/linux-arm64": "0.16.7", - "@esbuild/linux-ia32": "0.16.7", - "@esbuild/linux-loong64": "0.16.7", - "@esbuild/linux-mips64el": "0.16.7", - "@esbuild/linux-ppc64": "0.16.7", - "@esbuild/linux-riscv64": "0.16.7", - "@esbuild/linux-s390x": "0.16.7", - "@esbuild/linux-x64": "0.16.7", - "@esbuild/netbsd-x64": "0.16.7", - "@esbuild/openbsd-x64": "0.16.7", - "@esbuild/sunos-x64": "0.16.7", - "@esbuild/win32-arm64": "0.16.7", - "@esbuild/win32-ia32": "0.16.7", - "@esbuild/win32-x64": "0.16.7" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint": { - "version": "8.29.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.29.0.tgz", - "integrity": "sha512-isQ4EEiyUjZFbEKvEGJKKGBwXtvXX+zJbkVKCgTuB9t/+jUBcy8avhkEwWJecI15BkRkOYmvIM5ynbhRjEkoeg==", - "dev": true, - "dependencies": { - "@eslint/eslintrc": "^1.3.3", - "@humanwhocodes/config-array": "^0.11.6", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.15.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", - "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "resolve": "^1.20.0" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-module-utils": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", - "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", - "dev": true, - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.26.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", - "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.4", - "array.prototype.flat": "^1.2.5", - "debug": "^2.6.9", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-module-utils": "^2.7.3", - "has": "^1.0.3", - "is-core-module": "^2.8.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.values": "^1.1.5", - "resolve": "^1.22.0", - "tsconfig-paths": "^3.14.1" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz", - "integrity": "sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.18.9", - "aria-query": "^4.2.2", - "array-includes": "^3.1.5", - "ast-types-flow": "^0.0.7", - "axe-core": "^4.4.3", - "axobject-query": "^2.2.0", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "has": "^1.0.3", - "jsx-ast-utils": "^3.3.2", - "language-tags": "^1.0.5", - "minimatch": "^3.1.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.31.11", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.11.tgz", - "integrity": "sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "array.prototype.tosorted": "^1.1.1", - "doctrine": "^2.1.0", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "object.hasown": "^1.1.2", - "object.values": "^1.1.6", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.3", - "semver": "^6.3.0", - "string.prototype.matchall": "^4.0.8" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-react-hooks": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", - "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", - "dev": true, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" - } - }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", - "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/eslint-plugin-react/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.19.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", - "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", - "dev": true, - "dependencies": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eventemitter3": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", - "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", - "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-intrinsic": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", - "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gifuct-js": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/gifuct-js/-/gifuct-js-2.1.2.tgz", - "integrity": "sha512-rI2asw77u0mGgwhV3qA+OEgYqaDn5UNqgs+Bx0FGwSpuqfYn+Ir6RQY5ENNQ8SbIiG/m5gVa7CD5RriO4f4Lsg==", - "dependencies": { - "js-binary-schema-parser": "^2.0.3" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "dev": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/howler": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/howler/-/howler-2.2.3.tgz", - "integrity": "sha512-QM0FFkw0LRX1PR8pNzJVAY25JhIWvbKMBFM4gqk+QdV+kPXOhleWGCB6AiAF/goGjIHK2e/nIElplvjQwhr0jg==" - }, - "node_modules/ignore": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.1.tgz", - "integrity": "sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/internal-slot": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz", - "integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/js-binary-schema-parser": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/js-binary-schema-parser/-/js-binary-schema-parser-2.0.3.tgz", - "integrity": "sha512-xezGJmOb4lk/M1ZZLTR/jaBHQ4gG/lqQnJqdIv4721DMggsa1bDVlHXNeHYogaIEHD9vCRv0fcL4hMA+Coarkg==" - }, - "node_modules/js-sdsl": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", - "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsx-ast-utils": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", - "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.5", - "object.assign": "^4.1.3" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/language-subtag-registry": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", - "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", - "dev": true - }, - "node_modules/language-tags": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.7.tgz", - "integrity": "sha512-bSytju1/657hFjgUzPAPqszxH62ouE8nQFoFaVlIQfne4wO/wXC9A4+m8jYve7YBBvi59eq0SUpcshvG8h5Usw==", - "dev": true, - "dependencies": { - "language-subtag-registry": "^0.3.20" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/load-script": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/load-script/-/load-script-1.0.0.tgz", - "integrity": "sha512-kPEjMFtZvwL9TaZo0uZ2ml+Ye9HUMmPwbYRJ324qF9tqMejwykJ5ggTyvzmrbBeapCAbk98BSbTeovHEEP1uCA==" - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/magic-string": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", - "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", - "dev": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.13" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, - "node_modules/node-releases": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.7.tgz", - "integrity": "sha512-EJ3rzxL9pTWPjk5arA0s0dgXpnyiAbJDE6wHT62g7VsgrgQgmmZ+Ru++M1BFofncWja+Pnn3rEr3fieRySAdKQ==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", - "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", - "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.hasown": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", - "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.values": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", - "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pako": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", - "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/postcss": { - "version": "8.4.20", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.20.tgz", - "integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/promise-polyfill": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.2.3.tgz", - "integrity": "sha512-Og0+jCRQetV84U8wVjMNccfGCnMQ9mGs9Hv78QFe+pSDD3gWTpz0y+1QCuxy5d/vBFuZ3iwP2eycAkvqIMPmWg==" - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "node_modules/prop-types-extra": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/prop-types-extra/-/prop-types-extra-1.1.1.tgz", - "integrity": "sha512-59+AHNnHYCdiC+vMwY52WmvP5dM3QLeoumYuEyceQDi9aEhtwN9zIQ2ZNo25sMyXnbh32h+P1ezDsUpUH3JAew==", - "dependencies": { - "react-is": "^16.3.2", - "warning": "^4.0.0" - }, - "peerDependencies": { - "react": ">=0.14.0" - } - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", - "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-bootstrap": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-2.7.0.tgz", - "integrity": "sha512-Jcrn6aUuRVBeSB6dzKODKZU1TONOdhAxu0IDm4Sv74SJUm98dMdhSotF2SNvFEADANoR+stV+7TK6SNX1wWu5w==", - "dependencies": { - "@babel/runtime": "^7.17.2", - "@restart/hooks": "^0.4.6", - "@restart/ui": "^1.4.1", - "@types/react-transition-group": "^4.4.4", - "classnames": "^2.3.1", - "dom-helpers": "^5.2.1", - "invariant": "^2.2.4", - "prop-types": "^15.8.1", - "prop-types-extra": "^1.1.0", - "react-transition-group": "^4.4.2", - "uncontrollable": "^7.2.1", - "warning": "^4.0.3" - }, - "peerDependencies": { - "@types/react": ">=16.14.8", - "react": ">=16.14.0", - "react-dom": ">=16.14.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" - }, - "peerDependencies": { - "react": "^18.2.0" - } - }, - "node_modules/react-icons": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.7.1.tgz", - "integrity": "sha512-yHd3oKGMgm7zxo3EA7H2n7vxSoiGmHk5t6Ou4bXsfcgWyhfDKMpyKfhHR6Bjnn63c+YXBLBPUql9H4wPJM6sXw==", - "peerDependencies": { - "react": "*" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, - "node_modules/react-lifecycles-compat": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" - }, - "node_modules/react-refresh": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", - "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-slider": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/react-slider/-/react-slider-2.0.4.tgz", - "integrity": "sha512-sWwQD01n6v+MbeLCYthJGZPc0kzOyhQHyd0bSo0edg+IAxTVQmj3Oy4SBK65eX6gNwS9meUn6Z5sIBUVmwAd9g==", - "dependencies": { - "prop-types": "^15.8.1" - }, - "peerDependencies": { - "react": "^16 || ^17 || ^18" - } - }, - "node_modules/react-transition-group": { - "version": "4.4.5", - "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", - "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", - "dependencies": { - "@babel/runtime": "^7.5.5", - "dom-helpers": "^5.0.1", - "loose-envify": "^1.4.0", - "prop-types": "^15.6.2" - }, - "peerDependencies": { - "react": ">=16.6.0", - "react-dom": ">=16.6.0" - } - }, - "node_modules/react-youtube": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/react-youtube/-/react-youtube-7.14.0.tgz", - "integrity": "sha512-SUHZ4F4pd1EHmQu0CV0KSQvAs5KHOT5cfYaq4WLCcDbU8fBo1ouTXaAOIASWbrz8fHwg+G1evfoSIYpV2AwSAg==", - "dependencies": { - "fast-deep-equal": "3.1.3", - "prop-types": "15.7.2", - "youtube-player": "5.5.2" - }, - "engines": { - "node": ">= 10.x" - }, - "peerDependencies": { - "react": ">=0.14.1" - } - }, - "node_modules/react-youtube/node_modules/prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, - "node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rollup": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.7.4.tgz", - "integrity": "sha512-jN9rx3k5pfg9H9al0r0y1EYKSeiRANZRYX32SuNXAnKzh6cVyf4LZVto1KAuDnbHT03E1CpsgqDKaqQ8FZtgxw==", - "dev": true, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=14.18.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/sass": { - "version": "1.56.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.2.tgz", - "integrity": "sha512-ciEJhnyCRwzlBCB+h5cCPM6ie/6f8HrhZMQOf5vlU60Y1bI1rx5Zb0vlDZvaycHsg/MqFfF1Eq2eokAa32iw8w==", - "dev": true, - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/scheduler": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", - "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", - "dependencies": { - "loose-envify": "^1.1.0" - } - }, - "node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/sister": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/sister/-/sister-3.0.2.tgz", - "integrity": "sha512-p19rtTs+NksBRKW9qn0UhZ8/TUI9BPw9lmtHny+Y3TinWlOa9jWh9xB0AtPSdmOy49NJJJSSe0Ey4C7h0TrcYA==" - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", - "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tsconfig-paths": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", - "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typescript": { - "version": "4.9.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", - "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/uncontrollable": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-7.2.1.tgz", - "integrity": "sha512-svtcfoTADIB0nT9nltgjujTi7BzVmwjZClOmskKu/E8FW9BXzg9os8OLr4f8Dlnk0rYWJIWr4wv9eKUXiQvQwQ==", - "dependencies": { - "@babel/runtime": "^7.6.3", - "@types/react": ">=16.9.11", - "invariant": "^2.2.4", - "react-lifecycles-compat": "^3.0.4" - }, - "peerDependencies": { - "react": ">=15.0.0" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", - "dependencies": { - "punycode": "1.3.2", - "querystring": "0.2.0" - } - }, - "node_modules/url/node_modules/punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" - }, - "node_modules/use-between": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/use-between/-/use-between-1.3.4.tgz", - "integrity": "sha512-jtLCBVeytJUjAc9+/r/0SREuNLyn3KO9VjvSi7eozeThPfnbOedKuH9qep/C+jgfJ9Ohx4bf714ri78Hev9BGA==", - "peerDependencies": { - "react": ">=16.8.0" - } - }, - "node_modules/vite": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.1.tgz", - "integrity": "sha512-kZQPzbDau35iWOhy3CpkrRC7It+HIHtulAzBhMqzGHKRf/4+vmh8rPDDdv98SWQrFWo6//3ozwsRmwQIPZsK9g==", - "dev": true, - "dependencies": { - "esbuild": "^0.16.3", - "postcss": "^8.4.20", - "resolve": "^1.22.1", - "rollup": "^3.7.0" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - }, - "peerDependencies": { - "@types/node": ">= 14", - "less": "*", - "sass": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "sass": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, - "node_modules/warning": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", - "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/youtube-player": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/youtube-player/-/youtube-player-5.5.2.tgz", - "integrity": "sha512-ZGtsemSpXnDky2AUYWgxjaopgB+shFHgXVpiJFeNB5nWEugpW1KWYDaHKuLqh2b67r24GtP6HoSW5swvf0fFIQ==", - "dependencies": { - "debug": "^2.6.6", - "load-script": "^1.0.0", - "sister": "^3.0.0" - } - }, - "node_modules/youtube-player/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/youtube-player/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } -} diff --git a/package.json b/package.json index 7a19f141..c8e75f4b 100644 --- a/package.json +++ b/package.json @@ -10,31 +10,33 @@ "eslint": "eslint src --ext .ts,.tsx" }, "dependencies": { - "@nitrots/nitro-renderer": "^1.6.6", - "@tanstack/react-virtual": "^3.0.0-alpha.0", + "@nitrots/nitro-renderer": "file:submodules/renderer", + "@tanstack/react-virtual": "^3.0.0-beta.60", "react": "^18.2.0", "react-bootstrap": "^2.7.2", "react-dom": "^18.2.0", - "react-icons": "^4.7.1", + "react-icons": "^5.0.1", "react-slider": "^2.0.0", "react-youtube": "^7.13.1", "typescript": "^4.3.5", - "use-between": "^1.3.4" + "use-between": "^1.3.4", + "yarn": "^1.22.19" }, "devDependencies": { - "@types/node": "^18.6.1", - "@types/react": "^18.0.15", - "@types/react-dom": "^18.0.6", + "@types/node": "^18.15.3", + "@types/react": "^18.0.28", + "@types/react-dom": "^18.0.11", "@types/react-slider": "^1.3.1", - "@typescript-eslint/eslint-plugin": "^5.30.7", - "@typescript-eslint/parser": "^5.30.7", - "@vitejs/plugin-react": "^3.0.0", - "eslint": "^8.20.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsx-a11y": "^6.6.0", - "eslint-plugin-react": "^7.30.1", + "@typescript-eslint/eslint-plugin": "^5.55.0", + "@typescript-eslint/parser": "^5.55.0", + "@vitejs/plugin-react": "^4.2.1", + "eslint": "^8.36.0", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-react": "^7.32.2", "eslint-plugin-react-hooks": "^4.6.0", - "sass": "^1.56.2", - "vite": "^4.0.1" + "sass": "1.64.2", + "vite": "^5.0.11" } } + diff --git a/src/assets/images/buttons/accept.png b/src/assets/images/buttons/accept.png new file mode 100644 index 0000000000000000000000000000000000000000..3e14c0552cdd9569dbb3d6fa6872a64e5a4960ab GIT binary patch literal 1700 zcmcIlO^n+_6n48}1*I!0A*jj$Ebk(96BudXkPzerIPt4?x3bm_TuoQc2fAhWX zz3=(uqs@(17LGh~M3SV1+IqFlugApt(RqIU>dGHW{PI}5{#GhUPd_hyhidhuJCgLs z&q1S^HQm=7!onP;%!6D%j5%78POtQ1Om-lXJ!l0{S^4wI4~iVnvhrrZ)!euO?O=T` zfvvrb2HD#oHdR($lu!2^P7p$d<$l5hP)16i^r-W4eU<)*tSS6BkF zmD3T?G)=bboTvFE4{YrP+0YDK)eTiIAVYVIf}mCdZ!znt=)^>T6vEBy~r;R}jY8_J6O$e;*LX<5|f>AQv z8+Vh=FjGoY=s?I}DHo7WZFg^d8Y0motg$ff$El}4|VbVRYtm^fMWlsbtxm9 zV_GA}1T*gybsbTwWTGN5i>Or06GTlP3I#t8rd67-y`BX8>%pD-S%oUf84cS414;%e zniP=98y$I?O^^pB##X*qDtWwGlsG<1Ld-iQ2yqM4IBF^KziKM1!xEQKUh}-@XU@*E zSPxQe-eCNNY{5I@RVR>#ZRcPjy1lFrVKY!={5W_(^=8vKqV2VTlOACH2$nKG>)`}e zTfEXUw3qrY`6=E#Sp00(|F7c5r6p|~wSW&$RT1f^V$h6?QUB}N@ZEhwX#(eyPAsQG zmfuXrG(?;_;Y0YTR{bI$;Cr>|YUAW5U+!OBcvm|*ckTBdkA45er&dKfKX~blQ>z!7 zKP}tK-Nj%2esw>5eEaU)wc8&q&0T7}clbEE{`pP$T(}H(<}07A4z`{+d*bp{ilsxh zHs?S1>-g8Vj-EYHz3p#bI&=9OxbfX@hkyNe@yX}V%DwRY3(cGNF6^?m_n&Py&)*gQ OBek`S>bGaM&;0||n;ew@ literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/button.png b/src/assets/images/buttons/button.png new file mode 100644 index 0000000000000000000000000000000000000000..6b778ab19ef39eb43656617f75ac84cd7bd4565e GIT binary patch literal 1669 zcmcIlO>Epm6m~^HCA0?=QDv!wEay^6{WrGPKdNa%HjqU)MCnQdamnn=c-P9>V{9k8 z$pI>Q0&(dTMVwj*2?-&%RN+7_J=04L9FZzcs2nOGZuEKAYbw-6dtoHoGvjZ*_q`uK zf4;u<&bhf)=LA7G*IsRH!1E=z&YyXqygvvDJYGy!Kg?l&zPwHeUmYw6!t?i|&StS0 zyyp=fE12>wQ$}$LXhFDgb(CVV%?h#0dQsv_fBy8dBu3PiKCl8UNS9eZTHVjs_5HOD z+21BEm9D-iUKx2n5VHb{qj-?y-pH56ydKQUZB-J-kYd}HmP&)-X0R?U^NfkMqRT|n zG|_gIt`<67=4zKkq#<3^k*ZrV(miB(x+PXa0(%(^y^Yq}l{HxTQokrtPgRG*p)xcS zp7m7SbzN0MDnc?Ka*!iHW+(K ziOL2n23QWl^x9O~=LOIE{26}KuWN5oZ#iSQ;8}K7GV7>%-L$YSb$n5B*hmdEOZ)m!wX%lDwwLo!!X9IH@g?qC=gTQMid4Utc+AUuK zQA!k1j}ptZT;|BSZR@g0Q7F3>+?uv)8IBVg7S+eP;Czddoic#s`AO+gPJpA1k%w($ zlF(|(j5clAA*L<6wre9vb~>0@b%!qldPpG3XHC08r0HknP5z0v#B-Z zE^;)vX*wY>v1T_JsG`IRc@|@+lqkkMrlv_x68}}R%m+LRIE9!SWjzBsc(EGgki5O> z3%Sldu4aQs9G9JkNm=c_M9MTXDplLjQ=&JU&I#?X&w%uVn00}x=phL zs55B75AQ48~>cWdus7uYisN8Papjr99%j+K5i_)XyCa!w{NGH zKKbj9#?8Y+@45NczSWPu>HhG_k4Fo?eC=Pj*8B48z553@=8qoy_UjjCZZ;aXoYTf- Y;qLb@-|K4cj(-&Gm9^G)Z*6_{7(|2%-~a#s literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/button_active.png b/src/assets/images/buttons/button_active.png new file mode 100644 index 0000000000000000000000000000000000000000..449b5eac5d36dcb9283adcfaea22e95543f78c2d GIT binary patch literal 1668 zcmcIlONit|7|wvJ&aMsaDvOUx%v@&CN~-eMPQtXq*gZSbV8&s#!SR7?rBdk*(@Di7 zGu=H05j}`U8BabC1-%IBo&`lv*zvTNJuV1}H}T*}6xKieh>PqFeKAm}O69BX|Nck* zyuH1(Q9J$EX-Sf5?akH>%x7SnzyIFy{!7SUT1+=z$YKAXax6&ieej4Row^=%c8gu_ zS(k}erGfCdI*e05OVY~fFr{pd7qZX0QPNO;|N2`+j)I2ryyampZSr2Ud6@Cbhg%(X zxW}A8S$$ew8M;6a^McC5xS!}$eJEN3qJ3JTr8RP2*JSmoD#sXHIP4~0@*wcV% zyw78RD3CWDVFT%AhnTKzy4ZOV6BpwN)Pq_GXhG)#iy#U|^FTe%Z6|p_6UN)Eh61A0 zC<`E*Wb2R#m?CnSFY%SBiWXvWvN5a~I}OS_x= zoF1Gke!kTIui~enWj&g7IW$mBDc#Y^Ml(r__TQY1-`&=fW^m|q<+5tB@KCjBo&a?Q zO?cP-wGIvZ#dd40v;59)M^|gF;|K1!bv7RzeWbqsxBu~X3yY6FSUdGHb$&cP_~ZLa z8?}vv>o4tndSOwz_VCgt@5aq@pB>$}@3lX#u5{U7KN#OU@nw7Y_}1CaAAj@s=Fj?9 aXI|-@`w;!K`d0a$Xs>UzzIf)!8~*@j8x3s$ literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/button_gray.png b/src/assets/images/buttons/button_gray.png new file mode 100644 index 0000000000000000000000000000000000000000..b2ca49c8d3fb02fc93373f8424e4732fdc22a9c3 GIT binary patch literal 4637 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/button_gray_active.png b/src/assets/images/buttons/button_gray_active.png new file mode 100644 index 0000000000000000000000000000000000000000..0b60ede90af8893b0b42b3edc343a146230f8433 GIT binary patch literal 4637 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/button_gray_hover.png b/src/assets/images/buttons/button_gray_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..c6170ec9bf21b1bb6d5ae39d887e6abcfe4e639c GIT binary patch literal 4645 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/button_hover.png b/src/assets/images/buttons/button_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..e708bbd3efeb09f17825ef23760c8b4b8b2d852c GIT binary patch literal 1665 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 bax@B9$$)&WSSBINopTO0TdZ$VJP-UI;QfAh literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/button_success_active.png b/src/assets/images/buttons/button_success_active.png new file mode 100644 index 0000000000000000000000000000000000000000..adb2d1bc104236456f527b6d675e91bc5f4bd48d GIT binary patch literal 4574 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/button_success_hover.png b/src/assets/images/buttons/button_success_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..e41d1152421e74e2630452c968542e91140088fb GIT binary patch literal 4568 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/checkbox.png b/src/assets/images/buttons/checkbox.png new file mode 100644 index 0000000000000000000000000000000000000000..657dea8acac33f16fcb3472883ba91545c87523b GIT binary patch literal 1627 zcmcIkzmMER6gCA>h&T~Nf&!#4I3R@|V~>BW*Cr-9ZVzrzd^ueXI@h0WBuJ1|JAg|e@h2@^ zWHK`-mx(ZDSpjHGyL5S0P_{2>l!#H9NBTcM{-mRnNBVnSOyXigjMJ^-Qd~RU9(qGDxQ)TzvoVx);Ys3RT3F0#mqmNu`NNdixl(&&94aWyz9gt;p!c~CO3c_{Mw!ZH|V?cU;`oXj)j%oG!m z0jvUHRvW4q%UV`r`H(!?&uunExKRpP%W@#)Wa-t;k_Fk0;h>8#WofQ>Usjr$Euu$j z5$Vb|Ogv270hs1lVBM?44hdO6V`v6WYq}a(@^pB#3N((xeqPlyXQJPWbP#2vDGx2~ zbO=pcOeuG<%K{fC!lyV%9Nu+_V2SO|b;16gWCyB%YX72lxn#i6)+kIof0$T_hb_{z zuAE-&b_aKc zi6=x*z;w&7>GNaHbX+}rFEb@_#?yA|46IsTRL(Lu4&%h3Gx6%sCJ8J%rYvQA3 zHA&ID?Lx{_w?{ftHVdvduhR!qZ#A6@+UZyT=?Ug9V3i!!Q(B7k5mb7G_A(zPzoLgH zi(k$9M=HK4EgRE(Bw&J?x=P1XgJxljdB11#Z}$wPB^)N5TDDUb9@;rAa-c3@3g3GE z-Pg40j_@ag)^D}VfY>l6{MeEnVa@we}Puy+1G e>#skrKljb`b5BpNp8ZUX|NiE7@B24D{N#UGr~8-y literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/checkbox_checked.png b/src/assets/images/buttons/checkbox_checked.png new file mode 100644 index 0000000000000000000000000000000000000000..606ea5ba82af2548edbfd47d2fcc9bc89b40f9c8 GIT binary patch literal 1713 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/toggle_left.png b/src/assets/images/buttons/toggle_left.png new file mode 100644 index 0000000000000000000000000000000000000000..52c4e587ebac8b108e9c39383ac307ad8591f0a8 GIT binary patch literal 1648 zcmcIlJ&fE$6gG;2j+3q+0t%|ZIV2Dn+hebHZ4;9myBBVy_&D8dltW6vc>KI;-P&Vp z-|gNhMFa(+iIfsiAZi2!1qBpzR1_4@q)U;S6M`ZXi0AzyLdj_xEZH7=zW2TF{rLHl zo$YtlR$pFK6lJZu)!D`Svv{to)Ytnz-gWTyT)y>QsVFbKTA$B!ch^r9<^0b{Z@=0P zu6shJ8joZM+BnS-ttgkTjB_pypdumklgw9t`~C-&B$2P)v;!l^+b~GBP72sN+3tyx z1K~#MmAA;{v4;dHRGf^{VODx$U!CxJxUOI8Dw#m417F>!9g_WEhqPq@q@^(`48tHT zR|}2U3Bffk5z{c4&P<)z)MTD%d(0-YLq&f@6nnd!Ycp^79VkVSU9#+1JTBkvz`GPhpXNkg;>0_Sj zOf%}B=D;908=9sIbXjd4p_iH7ClZ&v;~ex|DCJ=xVDkvF>f+p4Bo?;$VKJOU8VMbS zkRq%^VQk?lAIM6U1NoFV7Tb$xa<5$guVm4aayT#5&YXpqmS&RI0xpuQ=6$`^G&6w? zufSKaZYDJv)L=bkd$!@(>83}Xrnuoog;@#VlWO5)>Xph4huv$EoufNsZEQIwV> zkp~VmU4WQ2TnK5S83A<~7K#gP%M})5P6QKOXy1|IuufoYKW*Je3glSi$aA>Gd2EI> zG!3Ak({N~LnJxvp<;2{zO}xz6-YpXRdid~h)>>7BjIL!`HfwS!oTy0~931Lk+f(K` z%mmgHt{tf)5?(Belw+qPDer@xXML6YtEMf7vIt~^Ik)P5Ms|#1D=D#f$FnbF4?dW! zh6$OpoySGp?Y=7NG6VXVzD}Nyz2$UH?MDMZ(ld%bg_Sa{M!bNHK4yA}_R^mwzvM?} zi(jtv|Eu^}YQ=zOeZT>#t93YfJ!qzd(f?bs$=+i_X%5FpS1%Vs79SR48Zx9Va0st& z{MyC=ey!Wt=&gL3-hK1J9rD7t)~y?>=^vNwU;U!L_To>c>ks4K@1@_ZKcX!qIsftV z55E2U!s$nQH+tWEb^F%2+kdh7*3}qCtX|1}OzC1%l$LL!zcc^iWV;vy6AW=7jE|ZLl=w+NM=q2P5Q^xargnm zEL9L;5mhE>&e4Lfd1sO%d_pTRqJt#!r9Xf8Q4$m4OCMPw2=gu-CVLkJJ-XQMblGka(SLrXd-9jttCT1OI##*m9R{#8BxSeD_`PT7fz&kOPiHVpm@mC3CdMX z0ku<0U>IHvP16=#Ry$|hN~8C=#AW|Hr|Kas*=d34&Kb?BTT5dEw`cRyVl?-ZV3m$& z%3&oJrnRQ>A*)z9WH0ce-EO_fVYi^DVnv^^(K1yBOBPW#6kWU>BAjG3?_0H|<_HZ? zMSY3qO_zZw1Ff%F(9)o0z72E;zyccbS|F%GtAQCw;`3FYVF-I!S)mNmUf@eyl#(O_ zdUj;Ru3^dqXhb%3%abD~!m{ZgY$6mJwu9%o`1ye0(>j3l`9tU!qv+>5=W|6Ptb!L61qGENh#rI}jsu|A!>q zz7w?8vvv2FO?X(rlzXf)3}b_@T9G%mSrhOQ#1_<1WY%h3=d(H&Q2H_EG0=0X915u&WJtU&m3839Xk=mC2f=z zff6B8hB#K#3d)_D09|)?Xc(60G+W#dRtmj0B~DwLF;mu9%KHgniyJJ;W+%odDfh=Yov;9{TG7B^7n2~$ zc^}L*6+$4I_=^WDzI!uu6lKe3&<$gB637c<= zNKa8-%B|$5cw=|*)204@6<>swba2#WqJb)M?v9c-nsH*3|K@D;?S`f_fs0O;Ps=7N z7G;}ek)TdQ6TbBAC)Y#+Pn(VTR{hoAzd1kiJUH;uPupj{iqA-A&ma5xw)d7U-}Ce9 z@BaAyGy9s|(-Qjp(9@5f-t*NZ}(5AOCPTs z1m^X(y6}sgyF1_g`R1jadyjr}F}$$-!y6y`b|HN6;$P@4skRzDdHw2V-S6`sNON(e K@#)c1FZ=^{WFkrc literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/volter_bold_btn_active.png b/src/assets/images/buttons/volter_bold_btn_active.png new file mode 100644 index 0000000000000000000000000000000000000000..43b2ab110f5316f6ae94488fe06bce783f68e633 GIT binary patch literal 4399 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 D^e11P literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/volter_bold_btn_hover.png b/src/assets/images/buttons/volter_bold_btn_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..355bcce8f6c12b47aab247b680bcfbdc448ab944 GIT binary patch literal 1910 zcmcIlUx?g99L~KIE#8wTqAwv;sDEZNnIxA@xNW`OUcD{Nd2Uzl3R;}ZOm^dKGBL^B z?j072dQdAO2tq4J^`Vcg^s$P6K;MKu=u3qIDfmzyw1#2~?HdK7 zq?{WsC*47&l&GxBLIF#KFs%#~cX-Cr4&Nq^@^hI@>`W&NXFO?f-W|1Se#9apy@KTZ zE+#>g^FE$yDyFbH&R9(meM0~m0Kt}~JBIBb^dv+MghQw+yg+e={|h!8s5`p-FEFQp zzq%W!>pG1n&2U6mqh3>ls7eq}$M>mWAcKGj&D4P5O&9>{ItHEwb?E!1VNyKMCFa*T zSOU5ANR1nyaFM z(XgmxVx0m=un7!oF@WJj6_}LjnAyHv#fBnN;`lrXv2aQd;x<#`sIAEVsF~(np17Qf zn(Mir1-r;%Hb_PDR*MyKjJ;Znx`8~for6j4_L@TSHZ!UeuY)bBw>zCf+FpkV(jA&V zgr(fidN^TIZBgl6*h}3`eu`Ii7GFiSFmzQ+x6m(wRLyB*g73G-#3RoQ}49k;M;9`tZ3%omDsrRVR>eV zhw{{6k*HK6&XiAozHmdFM<*NgsaEx!U%tOQ{*8R!`t={X*FQeHZg$SCo7djZPMkUY zQ?@a)|H!$8E1L_8zv&I>><`R`w77^BJqSujEq2i)FMnr~HZAL9bq36K-Hvp75#PM`G6_4$i%Di@ zb}w6`7r{$U9z1wbyx2pJ7U`wlL<`k};6?DLwBW&8@ykpm7HOBc7)bK|{NC^TeSh-h zJHeLN<~b8viY60; zkl1pRJ_^_R%t3F6I?^>&(^buqbDK$DX4O44h({$p-Ix9i*jQRtkilRNnG^yGp25{f{${-HuhLro}3$_q&b_7^5N7| zN>nyv3BU>vrZuLrh?l&G_+$KNwi|CUx1BRw^1R3SaGt8IIg6+piY}fGFp1NOceT<~ zA7MT&nI}QsbQzhlj(VEmTF5og>qvJInn44o1&T|&7?{&I++PG51a3DiN}Lkb^*sqh zDRE3)LR%&=3{7^{kRzLhiDk#ep-eR^3`4VJ!tzuXocB2yRROHd&q|ka0vt_@T$9;p@S}hgmCC6c}||w@tE!WP%MWn>Mp$ zj3`V)&BBx-)?%QF5;x>|f}v941P_>+r2|R)S52D_c^+^IF*mAu26phG6Bm%Y{rU^J z$Udw`!&sb_or_6T?Vd!cG&3sI%kd+kx0ucu?KomUdPMSPu!4u>80Tz#0Fhpxywu0Z zFYw;c;ulN(|0=!?Es1bCV9-ESsd7iH8qF**>VI=K-Fv7h&Ee4Ls$tV)VbZi|mI8GS zP5AZ?=bnQG{%+S_@14H(=iQqtSI{%dzn!_=`Q>nF@a5-Ak@WtFvD*F1Gf9t{b%cIX$|5&~I S>qhl^=x%KK*Wdi$qkjNEl?)O9 literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/volter_normal_btn_active.png b/src/assets/images/buttons/volter_normal_btn_active.png new file mode 100644 index 0000000000000000000000000000000000000000..f7f81be60eb2dfc6ce8d480c8d66bd21abd5448e GIT binary patch literal 4581 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/buttons/volter_normal_btn_hover.png b/src/assets/images/buttons/volter_normal_btn_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..fbaf75c3e95f2f657a513767fee4814f7907138c GIT binary patch literal 4577 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 Q^;y>2-tB(>_D7%p1H#@p+5i9m literal 0 HcmV?d00001 diff --git a/src/assets/images/room/arrow-right.png b/src/assets/images/room/arrow-right.png new file mode 100644 index 0000000000000000000000000000000000000000..f7610eded0a60b4699a1d90bab2ee902d33432c4 GIT binary patch literal 1837 zcmcIlO>f*p7&c#38mS;aaNuOQMFPRtGvlwd)uj#DlwApjXuA@DQ^zyoT`Oykv7PKD z;sR0+k>JLqr~UvW4qPjNIB@BKJ2!3|srUhe*ZW0_k|?TFOSZ@3=Y8Ji{g|2Ko$ZgV ztiQFcY1)-ux6_CBOK`8RU4rMA!FL#5my7Oam8QMtB1MX_xM&gWY;J`Z(k& zGnr7aG^besXid9*V_Go2Cu=>H!!&Oje?9ow&{NSiK6N7;6`OLDc8^MV`)GT>kM?*V zj2j>5*QX&6WU^-ZG#lqtIBgp<-Vnykv}NcsNWIrKHX4WeZnUFss#5B{Nf5^v>waLy zIBCT)!0+o6Q(_Tn5f@PsQa2>7zPJqVSBfO;cWy1b!B^WD)pZeC)?_jvD&ZO256lJkrgZ2yjmm*Qf5tAVG$EI zK`nt%bUrl8R_LnUIsh*Vy{8gagTq2veOamflFO|Fnb%jB&IDiC7W?IR7OCKt9Lo$~ z6$m3MSH(!xsv4;?;#mD&MN@>ErDU}#2TF~XrP^7t=+ri;{!YYrnm4@fHkuYDvcqcG zHlS`4VF%IHfY_mpLxSJKG{krgji46$D9J zWu~bJZIUFE`T}w3ddTr9MghYVF~>_BU$*=fv1hu#zN7ellfcG)-nv3@;8^7dg7H1> z`YuY6R)UD@*oeiRjfA8gWxhySPOxPAq)cJ;u<_%pjVb|*PLK#0Q?SM!sPb9_F%R_7 zI3dy{zMF`ap$i@+s>~R4N}92uw2FLa=>MtNRAW^}Nh&)P0zyy^C~!J9HmVJxQ8Q?hq4opajBNCN3O#h=3}mDCef%8emp`U34`oh83w z2j`2A6Hhvc?;$&u5;@#H*<)-x5qVCN&24<&4%mhtrAT&$DN4(Exr z^>np3JshjqH|Kq3{l5ig{~p_8p_sEN*tnbF>db(T)u|(M$W#eu%JFM|{0`@l)9Y*u z*6wA$k(afbYtR4k>&eNzJ@eMFckP9{KV~<-`TqV-#T&0b=)U;q?w|eRhw|j}%i1en Y1#7Q9{O8-hn**)4wcYvQ!#iL93tkgE)&Kwi literal 0 HcmV?d00001 diff --git a/src/assets/images/room/chatinput.png b/src/assets/images/room/chatinput.png new file mode 100644 index 0000000000000000000000000000000000000000..235c3ceee7758a2e0b972420c075abcd61e6f89e GIT binary patch literal 1699 zcmcIlUx?g99F9s`TPy`dt<{GiwNS6k-%WO#c=0%QPj}T^&+AtA9z-WIlihHeOiXgO zyGJYa`g969i#@qh4EN&x3qCxSQR7?m2(4$KJTUlnTOQNBFp}vH0{YLD+RI zXtuJJ`-+WdC__v=BKO0Xp#@=jrXNGJOfuk+b`Uw@?_Yc+f&e?>>!z!^ag}s}`dUIx zt<5*l+A^}RIP)Bs?%RwYBpC$#up6az-w}trHkAoM4`W4>RqoUn=(;;Y!>~Z7+1x6#lIy)IaoQZjL|G&$T}cp`TP0C;cx()#;%vN< zbcdc|q>wHN87yVOw8B)}p&3m(^d5c`+l4o=T}=qgXwsy#J5JTYm<8x1SqDd5h=Pdo zKEpNTM@S83#1UEEbV)TN)oQAiZJM@W98+~$RYy>l)dGeYoD58H;14E&x~|=b(hNq3 zG-{5>M9D#bZQmfefpkkU3>`^E2@=VI1WT4@;EGv-WeXWYUF>{~q7@!MetuNCm?Fke z#K^`P#=e2d680=4RV3NuE7ctk@cl6=iC zGie%;PGDq65E+)KS4zn9D9&+xD>OPmv}uhcIHJr zNLlg*`4@7Eyq(Xw0T`B@4H2()M?^f$1dI9W;4aadOy`KU*CC8_hvbi7DfP1+Ovr4T zMS6nrQtl-`g{wP@pDgwNtN1*$r~{)mVGUFfxjPDPG^4~Q|IOKO?~bN4hOte`w|{wK Qn*T-`bMv*&o_}loAFazFaR2}S literal 0 HcmV?d00001 diff --git a/src/assets/images/room/chatstyles_selector.png b/src/assets/images/room/chatstyles_selector.png new file mode 100644 index 0000000000000000000000000000000000000000..35c2f9a8cdc4c93df13667979d6e5e64ea94beb3 GIT binary patch literal 2308 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 YiJz|xEWe(c!{JXV(?6)Zzwf2$KSJD7HUIzs literal 0 HcmV?d00001 diff --git a/src/assets/images/room/context_menu_arrow.png b/src/assets/images/room/context_menu_arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..f7e6a5fce6c5b67e3e4ff1456454c8143d6186ee GIT binary patch literal 1620 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/room/context_pointer_after.png b/src/assets/images/room/context_pointer_after.png new file mode 100644 index 0000000000000000000000000000000000000000..46c7fbac995ab59733c9f19192a9278e7e33fbef GIT binary patch literal 1681 zcmcIlO^Do798Z^R>Gs2dhf+jJNGsHjm%L;$Gnvr1j+@mTFzYfM>Do*C^4`l#*hyZR zWOruwR8|mrD4qn5MfOk-#IKvHo`ix@dr%LG2-a)0w;n9$Kl5dgcA1NTB=04^|L_0% zf8?L5E6cAQJ@nKeNs^8>mfR-X55qZk@BmzYXFsB1lPtZNNz(CWigRD1dHS9t?Y|wi zR`XTwHJge^B~18S?MDfqCF$&ZKOuCD=d#b+VeBY>e*Tprhs;sVmp$wy3%nC9ZKeF& z)^dw(t{p=-LK>1AZ-wo$hAvOGEz@Rzc{Zo03Gyur>tk4)R@8L8BN0^4@E2&jKmk~xubyAVGvO=p^dXq zq9A2jpCp>D;v%Rq(DU|&M$rVF<%=8OWu*6!#93=I;aZbtVm+mNaf8SCsj)LgC$`CY z+8sp7sK&cI0$2vZ^ogsaBXW^-#AD)^yq-jp*b6Bqxky_=bjPJy8MDYnNj2m%9-(1e z@IG5;8kumHw@HrjJO)s360t1b#ILbP}*J+v{lvUk~X%%vz{oz^EHOwRD0}rE1oY zSv5<@CjscwNu^{}Oo}U1kr}lEkwyeMC5%X$Yf0Qz@s@NZ|n{ul;$yW!SbC*HmG&Np*cUOM7lY~K9-PW_|9$F_esc(S{(``+U5 z2S;Y#{^kD6)$r+WzuVclc>Q$x^RX{y8{NO^GrM#9XLj!PpZw$c-J8#Sar><|ev%IC ws-J%F>)&^_FDUOjpItlu$^4BgCugmFmo0baM&s5K#ZRNLxa@xT@}=#60Nqv=YXATM literal 0 HcmV?d00001 diff --git a/src/assets/images/room/infostand_buttons.png b/src/assets/images/room/infostand_buttons.png new file mode 100644 index 0000000000000000000000000000000000000000..278e06559eaba69606f0bf8ed9dd05cba35bc352 GIT binary patch literal 1689 zcmcIlO^Do79FIy@U2HEF6-73riWPmy%S&daFE+O8&gzVs>2`LCD<1Uay_cD=NnT8{ zJF^P~6`^>j6tw8cgW#baic+Z1B7$GN2o^+-dMtv_9u#^KU*^jq?J^ew$@|Ff{r&M*cy`#HDs>#QpJN_y2N{7V>{!k z+pP}WUZ z1QbH3*0Aow;DFCDd{RXanTClBvjULmpo(Kw)bXWBdl?IycKzA0HMw%NUQwiuVf6cb zy>ICv>l!A;*nr4D2uK9Tw~~SkK$7p9Fw}WYvoI|}k*Fmj@x?~rYEtXSi8!6oCiyr} zGGxYpq=u=((y0m1^LB>D@f4jG%bU{5Sno}V^UhYvjW*B4Mn?JaCQpie6Jv}{&!!t$ zH1w2FgGW4;uv`i=r>4@LC`8^9xA0^7dg@K;EM=S&BI^hdO;WWoVNsE#BXz$=Xqc3| zkC&RpM|hnS+|^{>5P&v-xMS8Fv+5xG35XmBM^I1J0wV>P4J=p~Y|R4oJg1rD1xYAx z)?H1C(!-EB)`0+`icNrxDF!yg9AL|;0EPqK4{FRpJ{jtg=j(!QlmRTyk4l#bDmkVx zaxkr-N>F70S1krA+@=86tSZ1LupshTfFPf+9mzuZ^^oXB)>0Ldj6St2)5i#)TFnMF zV^u(KU;?=!7PpvbnNk&_P9UxDc2dTQ>>cUOKce;&={R{iWVuf6pT DtC$*8 literal 0 HcmV?d00001 diff --git a/src/assets/images/room/infostand_buttons_active.png b/src/assets/images/room/infostand_buttons_active.png new file mode 100644 index 0000000000000000000000000000000000000000..48097811d0f29516c558ef005f13249c63974847 GIT binary patch literal 1645 zcmcIlL66%+6gG!Nuwq+rsZdqGxFCUGY|kWdVykAgBwIEFFUxKu7EX+3o)c?hkFmX* zWF-*ltw;rN;DUNWAS5Kpi338217|1~PW%XvxIM@a+l#39|Ns>vlrd`>bWRx92sfRF#Q{VXG`yUNG=DzVpBd~+44a0cnG>3!J-99@# zVlFo}U(~NmJV}s1N%cuGN(*n|8#7){uGM49&}WeH$TzlBK>aY-)7v5ky=h{^Y}?kG zt{K`*gk=@yu1j;+45|5oR4Oia%RB@ z5(z7$FuV+v4Mi!6p}0>T%k5=0nb*#NmLl&9Fk!U#$@3k-j+KGx{JeF!V3K3$kw*Zt7BB}v zqh3dh)gwe(Ef+=9VHi_~0>XUdv82Z0z+F~T~Kyc}KP4%;6ms#w@g)H8*dP5H2ooY3T z^;z3_l&Nm_4W`Nr+^8PM_i%4Dopajp5G3gt#h=3p5tU<_!`47Ly+V6g_mf}Hle5LI zR{H-{d}S>g(sTfFfLex1$5Ml4UKs1YHJk0-HIx=`IqB4LIb`L{a!f-isdG7mFKvGM zwH)B>ZfC3i*eBn9h|g(HJ@V7dzyG=Y-P&ib+C?cL6;m)^d12X##Y1^@s6 literal 0 HcmV?d00001 diff --git a/src/assets/images/room/infostand_buttons_hover.png b/src/assets/images/room/infostand_buttons_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..307cbbe6c72f1d03b0a7ca57eff4f21e7bb2d7e3 GIT binary patch literal 1684 zcmcIlO^Do79FK^LF0Bg{O3_k6+G0iDBzZ|Dd9h=e-C3Q1W?i>~yMl@@@4d{#o#drS zc4ua#SiKZsg?bQ*+JpFk2icy4q7*^Acu{ZSMem~6i+U4ZW-?=ucA1NTF$DuXByXh}MKW{_aA$#U6eoiMH`zkl(iB8Rl5tXrPuB}=RuHg{5X zZfB)Ub~Xv3%9$tR(*su!L@dYhAnL`LJE$omURTVEZB>y+kbJYI)C+_1hPNs&@s!DS zMF&LFG}%TKUkeo$4*4als3-F zK#7p41DvROMJt?|06lMiXcSG+S-!k2tdx3hOPsZb2~*ct#M#F)6COrjR1dj4I`Jc$?_WrgKc&?=nHUPx8mGj0brir>x!) zk)ENv)H}(~@b>=VXG{J6D!vRY>EgJjm|IOLx-7QUN0vDaGm`L=IDy0k1l&*#rQ!k?4owdTi394Pr=m*bLb)Jdye}%$Mti~1cxLQx zzW@6l{=Kubc;?9DBa?z49H}mpm-+kv9}iC4!|y*H{fqJG-gsdx6@+7tXXCEw^2~37 zFn&3xt+G|;1q;(Khdk<%Tqle)7W|UeTTkP^$e4Ra(MbL$?bz3ZD2EnSc1mK4>N{}Q>q#PhA?@^gJ_d}oUd#$rpB z+wFF)t>tJ^m!WBzvZBhWDshCAZbb}rq$r&pFqBD(lOSdRjX=hTT-su`$hG#I2;(7b zl=cI~Lne1nEW@0VIW+(}&cV#2uj(j*~=rCb;snu;5g(X>JD;K%Uw(3{wrPY7Z(sZrV-q-trv0#q%hf|Cxy zL6q@6m1*i9A!WpfE%Lmnl9HDcqXwY`O-t9GR#Zz-dQgYgf`=Fy4NSej-x>w#I94@E z8HzBemTi%X$_0UExtdYP7Z8*bs2Eb-*L}&re4BSQw`gjvicG(&i=Qu3+{yx&o$r;d zM=|FZ#>nyvR4hWR$bBoil0otX37JrnbW9A>M9?S59I(BZ1pMnk&0ASBRUT(7AX71Y z&6RwN6|SmaNXT#%$@L9Sb&=_5h9LqETRu%f#49BTQJu(fR2RX&YUXK^CJyy@%(bkZ zIXm}aAxL@hw)$Vl3fbtdngQsRorQ2#?Y4-sG!swkKMrmaz0q{`Xxk0KNe@VV50+A& zwNXM!bsp&v%1geJ{1j~-EPk}q|F7cvp~Vdp)d_E)vY5FeXN{(p82P_B>%P0CDGlJf z(`CzHljWOXnfyIOI5+XW8JDK6UVQIv?ZVaH+Yfy_bG|n7&HnW6@%^)Ndq064{fT$Z z!Qx~vr;WEGS;$s{k?e6X+E?Pk|~VAkdJq1%f(nVGy7_azgP z?7p|pgR*$>P`xN9f=lsiPu`>`*o*B&K?Es?2k|CVym-@@_YsS<%exquWM=Z4-~adj z$UpCFZajDD#Mu*)B%Nxk`%V5l$;a`Thxq*$@&gcyZ2fW}NwZIh@j#>b+k`|Zx8N%DNltbE%)4Fo!i!T*9CUxZ{D}X_^LOb#LAg7lG z8!bH8#x7Bo&dZB^j}s)cL~=jrriIt9D??t7&&9T;$U{iEU00TcL3u0Klvh|zWn0w& zh7iiOtA;RgLh8b2WdjagN9}pfFnS$mzJmx(qewX;L`%JCki?Qw`RhttQ*{G?8{B(eDoC@A& zgr@Nk>Z6j@6`nT(KodZxrRyFvJZPO0cQ}FuycP&5(R5%&;%ILgXb^afv?x)EX~VB8 zT$CEe#Iq4~O`Aplxo!kZ)1| zz3~@viM~Fbbz^y0b{@i_+Up7yX{JOOZ^!qD-gG)gw7m}Hq=zJb1S?on_E1ij+dR@! zl$Ult`32fNT>NyY|6j$ALyJ2oZByPrHAT3iiAFO@jP~E04d30>lqPWA>BO{ZvV2js zX_|8CoHt?f!L@`p@UY=8x8^>$^4@pHzmgw5rhRnbiBErEalo5xjK5L0$$04(7(c?O{<`FRpvLROugJl33Yr=|reXiKvT}N#46Z z+hzC;OniA{{_Xc+1^U}B*Z7{llX3rH0rOj@S7E_QX_jWUJ6NaaFzjbdI&>UpG=rzB KpUXO@geCx!mr8;F literal 0 HcmV?d00001 diff --git a/src/assets/styles/bootstrap/_accordion.scss b/src/assets/styles/bootstrap/_accordion.scss index fc62ceb8..2d6ab38b 100644 --- a/src/assets/styles/bootstrap/_accordion.scss +++ b/src/assets/styles/bootstrap/_accordion.scss @@ -93,7 +93,6 @@ padding: $accordion-body-padding-y $accordion-body-padding-x; } - // Flush accordion items // // Remove borders and border-radius to keep accordion items edge-to-edge. @@ -108,8 +107,12 @@ border-left: 0; @include border-radius(0); - &:first-child { border-top: 0; } - &:last-child { border-bottom: 0; } + &:first-child { + border-top: 0; + } + &:last-child { + border-bottom: 0; + } .accordion-button { @include border-radius(0); diff --git a/src/assets/styles/bootstrap/_alert.scss b/src/assets/styles/bootstrap/_alert.scss index 34f1e84e..670a7bfe 100644 --- a/src/assets/styles/bootstrap/_alert.scss +++ b/src/assets/styles/bootstrap/_alert.scss @@ -1,3 +1,4 @@ +@use 'sass:math'; // // Base styles // @@ -21,7 +22,6 @@ font-weight: $alert-link-font-weight; } - // Dismissible alerts // // Expand the right padding and account for the close button's positioning. @@ -39,7 +39,6 @@ } } - // scss-docs-start alert-modifiers // Generate contextual modifier classes for colorizing the alert. @@ -48,7 +47,7 @@ $alert-border: shift-color($value, $alert-border-scale); $alert-color: shift-color($value, $alert-color-scale); @if (contrast-ratio($alert-background, $alert-color) < $min-contrast-ratio) { - $alert-color: mix($value, color-contrast($alert-background), abs($alert-color-scale)); + $alert-color: mix($value, color-contrast($alert-background), math.abs($alert-color-scale)); } .alert-#{$state} { @include alert-variant($alert-background, $alert-border, $alert-color); diff --git a/src/assets/styles/bootstrap/_breadcrumb.scss b/src/assets/styles/bootstrap/_breadcrumb.scss index f7fafe74..bbd55520 100644 --- a/src/assets/styles/bootstrap/_breadcrumb.scss +++ b/src/assets/styles/bootstrap/_breadcrumb.scss @@ -18,7 +18,14 @@ float: left; // Suppress inline spacings and underlining of the separator padding-right: $breadcrumb-item-padding-x; color: $breadcrumb-divider-color; - content: var(--#{$variable-prefix}breadcrumb-divider, escape-svg($breadcrumb-divider)) #{"/* rtl:"} var(--#{$variable-prefix}breadcrumb-divider, escape-svg($breadcrumb-divider-flipped)) #{"*/"}; + content: var( + --#{$variable-prefix}breadcrumb-divider, + escape-svg($breadcrumb-divider) + ) + #{"/* rtl:"} var( + --#{$variable-prefix}breadcrumb-divider, + escape-svg($breadcrumb-divider-flipped) + ) #{"*/"}; } } diff --git a/src/assets/styles/bootstrap/_button-group.scss b/src/assets/styles/bootstrap/_button-group.scss index 13aa0569..e7b961ca 100644 --- a/src/assets/styles/bootstrap/_button-group.scss +++ b/src/assets/styles/bootstrap/_button-group.scss @@ -61,17 +61,20 @@ // // Remix the default button sizing classes into new ones for easier manipulation. -.btn-group-sm > .btn { @extend .btn-sm; } -.btn-group-lg > .btn { @extend .btn-lg; } - +.btn-group-sm > .btn { + @extend .btn-sm; +} +.btn-group-lg > .btn { + @extend .btn-lg; +} // // Split button dropdowns // .dropdown-toggle-split { - padding-right: $btn-padding-x * .75; - padding-left: $btn-padding-x * .75; + padding-right: $btn-padding-x * 0.75; + padding-left: $btn-padding-x * 0.75; &::after, .dropup &::after, @@ -85,16 +88,15 @@ } .btn-sm + .dropdown-toggle-split { - padding-right: $btn-padding-x-sm * .75; - padding-left: $btn-padding-x-sm * .75; + padding-right: $btn-padding-x-sm * 0.75; + padding-left: $btn-padding-x-sm * 0.75; } .btn-lg + .dropdown-toggle-split { - padding-right: $btn-padding-x-lg * .75; - padding-left: $btn-padding-x-lg * .75; + padding-right: $btn-padding-x-lg * 0.75; + padding-left: $btn-padding-x-lg * 0.75; } - // The clickable button for toggling the menu // Set the same inset shadow as the :active state .btn-group.show .dropdown-toggle { @@ -106,7 +108,6 @@ } } - // // Vertical button groups // diff --git a/src/assets/styles/bootstrap/_buttons.scss b/src/assets/styles/bootstrap/_buttons.scss index c0d5fcf5..672fd60c 100644 --- a/src/assets/styles/bootstrap/_buttons.scss +++ b/src/assets/styles/bootstrap/_buttons.scss @@ -3,88 +3,76 @@ // .btn { - border-image-source: url("@/assets/flash/buttons/button.png"); - border-image-slice: 4 4 4 4 fill; - border-image-width: 4px 4px 4px 4px; - padding: .375rem .75rem; - min-height: 22px; - color: #000; - font-size: 13px; - cursor: pointer; + display: inline-block; + font-family: $btn-font-family; + font-weight: $btn-font-weight; + line-height: $btn-line-height; + color: $body-color; + text-align: center; + text-decoration: if($link-decoration == none, null, none); + white-space: $btn-white-space; + vertical-align: middle; + cursor: if($enable-button-pointers, pointer, null); + user-select: none; + background-color: transparent; + border: $btn-border-width solid transparent; + @include button-size( + $btn-padding-y, + $btn-padding-x, + $btn-font-size, + $btn-border-radius + ); + @include transition($btn-transition); &:hover { - border-image-source: url("@/assets/flash/buttons/button_hover.png"); + color: $body-color; + text-decoration: if($link-hover-decoration == underline, none, null); } - &:active { - border-image-source: url("@/assets/flash/buttons/button_active.png"); + .btn-check:focus + &, + &:focus { + outline: 0; + box-shadow: $btn-focus-box-shadow; + } + .btn-check:checked + &, + .btn-check:active + &, + &:active, + &.active { + @include box-shadow($btn-active-box-shadow); + + &:focus { + @include box-shadow($btn-focus-box-shadow, $btn-active-box-shadow); + } } &:disabled, &.disabled, fieldset:disabled & { pointer-events: none; - border-image-source: url("@/assets/flash/buttons/button_inactive.png"); - border-image-slice: 4 4 4 4 fill; - border-image-width: 4px 4px 4px 4px; - color: #b1b1ac; + opacity: $btn-disabled-opacity; + @include box-shadow(none); } } - // // Alternate buttons // // scss-docs-start btn-variant-loops - -.btn-success { - border-image-source: url("@/assets/flash/buttons/button_success.png"); - color: #fff; - font-family: ubuntuBold; - - &:hover { - border-image-source: url("@/assets/flash/buttons/button_success_hover.png"); - } - - &:active { - border-image-source: url("@/assets/flash/buttons/button_success_active.png"); - } - -} - -.btn-gray { - border-image-source: url("@/assets/flash/buttons/button_gray.png"); - color: #fff; - font-family: ubuntuBold; - - &:hover { - border-image-source: url("@/assets/flash/buttons/button_gray_hover.png"); - } - - &:active { - border-image-source: url("@/assets/flash/buttons/button_gray_active.png"); +@each $color, $value in $theme-colors { + .btn-#{$color} { + @include button-variant($value, $value); } } -.btn-mod-tools { - border-image-source: url("@/assets/flash/modtools/button.png"); - color: #fff; - font-family: ubuntuBold; - - &:hover { - border-image-source: url("@/assets/flash/modtools/button_hover.png"); - } - - &:active { - border-image-source: url("@/assets/flash/modtools/button_active.png"); +@each $color, $value in $theme-colors { + .btn-outline-#{$color} { + @include button-outline-variant($value); } } - // scss-docs-end btn-variant-loops - // // Link buttons // @@ -117,13 +105,12 @@ // No need for an active state here } - // // Button Sizes // .btn-toggle { - border-image-source: url("@/assets/flash/buttons/toggle_bg.png"); + border-image-source: url("@/assets/images/buttons/toggle_bg.png"); border-image-slice: 6 6 6 6 fill; border-image-width: 6px 6px 6px 6px; cursor: pointer; @@ -134,76 +121,72 @@ height: 8px; &.left { - background-image: url("@/assets/flash/buttons/toggle_left.png"); + background-image: url("@/assets/images/buttons/toggle_left.png"); } &.right { - background-image: url("@/assets/flash/buttons/toggle_right.png"); + background-image: url("@/assets/images/buttons/toggle_right.png"); } } } .infostand-buttons { - border-image-source: url(@/assets/flash/room/infostand_buttons.png); + border-image-source: url(@/assets/images/room/infostand_buttons.png); border-image-slice: 3 3 3 3 fill; border-image-width: 3px 3px 3px 3px; - font-family: Goldfish; font-size: 9px; color: #ffffff; height: 25px; margin-top: 5px; &:hover { - border-image-source: url(@/assets/flash/room/infostand_buttons_hover.png); + border-image-source: url(@/assets/images/room/infostand_buttons_hover.png); } &:active { - border-image-source: url(@/assets/flash/room/infostand_buttons_active.png); + border-image-source: url(@/assets/images/room/infostand_buttons_active.png); } } .volter-bold-button { - border-image-source: url(@/assets/flash/buttons/volter_bold_btn.png); + border-image-source: url(@/assets/images/buttons/volter_bold_btn.png); border-image-slice: 6 6 6 6 fill; border-image-width: 6px 6px 6px 6px; - font-family: Goldfish-bold; font-size: 9px; height: 20px; margin-top: 5px; &:hover { - border-image-source: url(@/assets/flash/buttons/volter_bold_btn_hover.png); + border-image-source: url(@/assets/images/buttons/volter_bold_btn_hover.png); } &:active { - border-image-source: url(@/assets/flash/buttons/volter_bold_btn_active.png); + border-image-source: url(@/assets/images/buttons/volter_bold_btn_active.png); } } .volter-button { - border-image-source: url(@/assets/flash/buttons/volter_normal_btn.png); + border-image-source: url(@/assets/images/buttons/volter_normal_btn.png); border-image-slice: 4 4 4 4 fill; border-image-width: 4px 4px 4px 4px; - font-family: Goldfish; font-size: 9px; height: 20px; margin-top: 5px; &:hover { - border-image-source: url(@/assets/flash/buttons/volter_normal_btn_hover.png); + border-image-source: url(@/assets/images/buttons/volter_normal_btn_hover.png); } &:active { - border-image-source: url(@/assets/flash/buttons/volter_normal_btn_active.png); + border-image-source: url(@/assets/images/buttons/volter_normal_btn_active.png); } - &.active { - border-image-source: url(@/assets/flash/buttons/volter_normal_btn_active.png); + border-image-source: url(@/assets/images/buttons/volter_normal_btn_active.png); } } .notification-buttons { - border-image-source: url(@/assets/flash/room/infostand_buttons.png); + border-image-source: url(@/assets/images/room/infostand_buttons.png); border-image-slice: 3 3 3 3 fill; border-image-width: 3px 3px 3px 3px; color: #ffffff; @@ -213,11 +196,11 @@ border-radius: 13px; &:hover { - border-image-source: url(@/assets/flash/room/infostand_buttons_hover.png); + border-image-source: url(@/assets/images/room/infostand_buttons_hover.png); } &:active { - border-image-source: url(@/assets/flash/room/infostand_buttons_active.png); + border-image-source: url(@/assets/images/room/infostand_buttons_active.png); } } @@ -229,9 +212,24 @@ outline: 1px solid #000; border: 3px solid #fff; min-height: 22px; - min-width: 27px; + min-width: 23px; - &.active { - border: 5px solid #fff; - } +} + +.btn-lg { + @include button-size( + $btn-padding-y-lg, + $btn-padding-x-lg, + $btn-font-size-lg, + $btn-border-radius-lg + ); +} + +.btn-sm { + @include button-size( + $btn-padding-y-sm, + $btn-padding-x-sm, + $btn-font-size-sm, + $btn-border-radius-sm + ); } diff --git a/src/assets/styles/bootstrap/_card.scss b/src/assets/styles/bootstrap/_card.scss index 22890f5c..94f1b4c3 100644 --- a/src/assets/styles/bootstrap/_card.scss +++ b/src/assets/styles/bootstrap/_card.scss @@ -29,7 +29,7 @@ @include border-top-radius($card-inner-border-radius); } - &:last-child { + &:last-child { border-bottom-width: 0; @include border-bottom-radius($card-inner-border-radius); } @@ -56,7 +56,7 @@ } .card-subtitle { - margin-top: -$card-title-spacer-y * .5; + margin-top: -$card-title-spacer-y * 0.5; margin-bottom: 0; } @@ -86,7 +86,9 @@ border-bottom: $card-border-width solid $card-border-color; &:first-child { - @include border-radius($card-inner-border-radius $card-inner-border-radius 0 0); + @include border-radius( + $card-inner-border-radius $card-inner-border-radius 0 0 + ); } } @@ -97,19 +99,20 @@ border-top: $card-border-width solid $card-border-color; &:last-child { - @include border-radius(0 0 $card-inner-border-radius $card-inner-border-radius); + @include border-radius( + 0 0 $card-inner-border-radius $card-inner-border-radius + ); } } - // // Header navs // .card-header-tabs { - margin-right: -$card-cap-padding-x * .5; + margin-right: -$card-cap-padding-x * 0.5; margin-bottom: -$card-cap-padding-y; - margin-left: -$card-cap-padding-x * .5; + margin-left: -$card-cap-padding-x * 0.5; border-bottom: 0; @if $nav-tabs-link-active-bg != $card-bg { @@ -121,8 +124,8 @@ } .card-header-pills { - margin-right: -$card-cap-padding-x * .5; - margin-left: -$card-cap-padding-x * .5; + margin-right: -$card-cap-padding-x * 0.5; + margin-left: -$card-cap-padding-x * 0.5; } // Card image @@ -152,7 +155,6 @@ @include border-bottom-radius($card-inner-border-radius); } - // // Card groups // diff --git a/src/assets/styles/bootstrap/_carousel.scss b/src/assets/styles/bootstrap/_carousel.scss index 3d8fb15a..6ea3d65e 100644 --- a/src/assets/styles/bootstrap/_carousel.scss +++ b/src/assets/styles/bootstrap/_carousel.scss @@ -55,7 +55,6 @@ /* rtl:end:ignore */ - // // Alternate transitions // @@ -82,7 +81,6 @@ } } - // // Left/right controls for nav // @@ -117,11 +115,19 @@ } .carousel-control-prev { left: 0; - background-image: if($enable-gradients, linear-gradient(90deg, rgba($black, .25), rgba($black, .001)), null); + background-image: if( + $enable-gradients, + linear-gradient(90deg, rgba($black, 0.25), rgba($black, 0.001)), + null + ); } .carousel-control-next { right: 0; - background-image: if($enable-gradients, linear-gradient(270deg, rgba($black, .25), rgba($black, .001)), null); + background-image: if( + $enable-gradients, + linear-gradient(270deg, rgba($black, 0.25), rgba($black, 0.001)), + null + ); } // Icons for within @@ -195,16 +201,15 @@ } } - // Optional captions // // .carousel-caption { position: absolute; - right: (100% - $carousel-caption-width) * .5; + right: (100% - $carousel-caption-width) * 0.5; bottom: $carousel-caption-spacer; - left: (100% - $carousel-caption-width) * .5; + left: (100% - $carousel-caption-width) * 0.5; padding-top: $carousel-caption-padding-y; padding-bottom: $carousel-caption-padding-y; color: $carousel-caption-color; diff --git a/src/assets/styles/bootstrap/_close.scss b/src/assets/styles/bootstrap/_close.scss index 32a0f68c..27fc146b 100644 --- a/src/assets/styles/bootstrap/_close.scss +++ b/src/assets/styles/bootstrap/_close.scss @@ -9,7 +9,8 @@ height: $btn-close-height; padding: $btn-close-padding-y $btn-close-padding-x; color: $btn-close-color; - background: transparent escape-svg($btn-close-bg) center / $btn-close-width auto no-repeat; // include transparent for button elements + background: transparent escape-svg($btn-close-bg) center / $btn-close-width + auto no-repeat; // include transparent for button elements border: 0; // for button elements @include border-radius(); opacity: $btn-close-opacity; diff --git a/src/assets/styles/bootstrap/_dropdown.scss b/src/assets/styles/bootstrap/_dropdown.scss index adc11432..d3fbf680 100644 --- a/src/assets/styles/bootstrap/_dropdown.scss +++ b/src/assets/styles/bootstrap/_dropdown.scss @@ -116,7 +116,6 @@ } } - // Dividers (basically an `
`) within the dropdown .dropdown-divider { height: 0; diff --git a/src/assets/styles/bootstrap/_functions.scss b/src/assets/styles/bootstrap/_functions.scss index 977f0eed..893c6823 100644 --- a/src/assets/styles/bootstrap/_functions.scss +++ b/src/assets/styles/bootstrap/_functions.scss @@ -1,3 +1,4 @@ +@use 'sass:math'; // Bootstrap functions // // Utility mixins and functions for evaluating source code across our variables, maps, and mixins. @@ -38,7 +39,10 @@ } @function rgba-css-var($identifier, $target) { - @return rgba(var(--#{$variable-prefix}#{$identifier}-rgb), var(--#{$variable-prefix}#{$target}-opacity)); + @return rgba( + var(--#{$variable-prefix}#{$identifier}-rgb), + var(--#{$variable-prefix}#{$target}-opacity) + ); } // stylelint-disable scss/dollar-variable-pattern @@ -49,10 +53,18 @@ // allow to pass the $key and $value of the map as an function argument $_args: (); @each $arg in $args { - $_args: append($_args, if($arg == "$key", $key, if($arg == "$value", $value, $arg))); + $_args: append( + $_args, + if($arg == "$key", $key, if($arg == "$value", $value, $arg)) + ); } - $_map: map-merge($_map, ($key: call(get-function($func), $_args...))); + $_map: map-merge( + $_map, + ( + $key: call(get-function($func), $_args...), + ) + ); } @return $_map; @@ -84,7 +96,12 @@ $result: (); @each $key, $value in $map { @if (index($values, $key) != null) { - $result: map-merge($result, ($key: $value)); + $result: map-merge( + $result, + ( + $key: $value, + ) + ); } } @return $result; @@ -112,7 +129,12 @@ $index: str-index($string, $search); @if $index { - @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace); + @return str-slice($string, 1, $index - 1) + $replace + + str-replace( + str-slice($string, $index + str-length($search)), + $search, + $replace + ); } @return $string; @@ -142,9 +164,37 @@ // A list of pre-calculated numbers of pow(divide((divide($value, 255) + .055), 1.055), 2.4). (from 0 to 255) // stylelint-disable-next-line scss/dollar-variable-default, scss/dollar-variable-pattern -$_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003 .0033 .0037 .004 .0044 .0048 .0052 .0056 .006 .0065 .007 .0075 .008 .0086 .0091 .0097 .0103 .011 .0116 .0123 .013 .0137 .0144 .0152 .016 .0168 .0176 .0185 .0194 .0203 .0212 .0222 .0232 .0242 .0252 .0262 .0273 .0284 .0296 .0307 .0319 .0331 .0343 .0356 .0369 .0382 .0395 .0409 .0423 .0437 .0452 .0467 .0482 .0497 .0513 .0529 .0545 .0561 .0578 .0595 .0612 .063 .0648 .0666 .0685 .0704 .0723 .0742 .0762 .0782 .0802 .0823 .0844 .0865 .0887 .0908 .0931 .0953 .0976 .0999 .1022 .1046 .107 .1095 .1119 .1144 .117 .1195 .1221 .1248 .1274 .1301 .1329 .1356 .1384 .1413 .1441 .147 .15 .1529 .1559 .159 .162 .1651 .1683 .1714 .1746 .1779 .1812 .1845 .1878 .1912 .1946 .1981 .2016 .2051 .2086 .2122 .2159 .2195 .2232 .227 .2307 .2346 .2384 .2423 .2462 .2502 .2542 .2582 .2623 .2664 .2705 .2747 .2789 .2831 .2874 .2918 .2961 .3005 .305 .3095 .314 .3185 .3231 .3278 .3325 .3372 .3419 .3467 .3515 .3564 .3613 .3663 .3712 .3763 .3813 .3864 .3916 .3968 .402 .4072 .4125 .4179 .4233 .4287 .4342 .4397 .4452 .4508 .4564 .4621 .4678 .4735 .4793 .4851 .491 .4969 .5029 .5089 .5149 .521 .5271 .5333 .5395 .5457 .552 .5583 .5647 .5711 .5776 .5841 .5906 .5972 .6038 .6105 .6172 .624 .6308 .6376 .6445 .6514 .6584 .6654 .6724 .6795 .6867 .6939 .7011 .7084 .7157 .7231 .7305 .7379 .7454 .7529 .7605 .7682 .7758 .7835 .7913 .7991 .807 .8148 .8228 .8308 .8388 .8469 .855 .8632 .8714 .8796 .8879 .8963 .9047 .9131 .9216 .9301 .9387 .9473 .956 .9647 .9734 .9823 .9911 1; - -@function color-contrast($background, $color-contrast-dark: $color-contrast-dark, $color-contrast-light: $color-contrast-light, $min-contrast-ratio: $min-contrast-ratio) { +$_luminance-list: 0.0008 0.001 0.0011 0.0013 0.0015 0.0017 0.002 0.0022 0.0025 + 0.0027 0.003 0.0033 0.0037 0.004 0.0044 0.0048 0.0052 0.0056 0.006 0.0065 + 0.007 0.0075 0.008 0.0086 0.0091 0.0097 0.0103 0.011 0.0116 0.0123 0.013 + 0.0137 0.0144 0.0152 0.016 0.0168 0.0176 0.0185 0.0194 0.0203 0.0212 0.0222 + 0.0232 0.0242 0.0252 0.0262 0.0273 0.0284 0.0296 0.0307 0.0319 0.0331 0.0343 + 0.0356 0.0369 0.0382 0.0395 0.0409 0.0423 0.0437 0.0452 0.0467 0.0482 0.0497 + 0.0513 0.0529 0.0545 0.0561 0.0578 0.0595 0.0612 0.063 0.0648 0.0666 0.0685 + 0.0704 0.0723 0.0742 0.0762 0.0782 0.0802 0.0823 0.0844 0.0865 0.0887 0.0908 + 0.0931 0.0953 0.0976 0.0999 0.1022 0.1046 0.107 0.1095 0.1119 0.1144 0.117 + 0.1195 0.1221 0.1248 0.1274 0.1301 0.1329 0.1356 0.1384 0.1413 0.1441 0.147 + 0.15 0.1529 0.1559 0.159 0.162 0.1651 0.1683 0.1714 0.1746 0.1779 0.1812 + 0.1845 0.1878 0.1912 0.1946 0.1981 0.2016 0.2051 0.2086 0.2122 0.2159 0.2195 + 0.2232 0.227 0.2307 0.2346 0.2384 0.2423 0.2462 0.2502 0.2542 0.2582 0.2623 + 0.2664 0.2705 0.2747 0.2789 0.2831 0.2874 0.2918 0.2961 0.3005 0.305 0.3095 + 0.314 0.3185 0.3231 0.3278 0.3325 0.3372 0.3419 0.3467 0.3515 0.3564 0.3613 + 0.3663 0.3712 0.3763 0.3813 0.3864 0.3916 0.3968 0.402 0.4072 0.4125 0.4179 + 0.4233 0.4287 0.4342 0.4397 0.4452 0.4508 0.4564 0.4621 0.4678 0.4735 0.4793 + 0.4851 0.491 0.4969 0.5029 0.5089 0.5149 0.521 0.5271 0.5333 0.5395 0.5457 + 0.552 0.5583 0.5647 0.5711 0.5776 0.5841 0.5906 0.5972 0.6038 0.6105 0.6172 + 0.624 0.6308 0.6376 0.6445 0.6514 0.6584 0.6654 0.6724 0.6795 0.6867 0.6939 + 0.7011 0.7084 0.7157 0.7231 0.7305 0.7379 0.7454 0.7529 0.7605 0.7682 0.7758 + 0.7835 0.7913 0.7991 0.807 0.8148 0.8228 0.8308 0.8388 0.8469 0.855 0.8632 + 0.8714 0.8796 0.8879 0.8963 0.9047 0.9131 0.9216 0.9301 0.9387 0.9473 0.956 + 0.9647 0.9734 0.9823 0.9911 1; + +@function color-contrast( + $background, + $color-contrast-dark: $color-contrast-dark, + $color-contrast-light: $color-contrast-light, + $min-contrast-ratio: $min-contrast-ratio +) { $foregrounds: $color-contrast-light, $color-contrast-dark, $white, $black; $max-ratio: 0; $max-ratio-color: null; @@ -168,7 +218,11 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003 $l1: luminance($background); $l2: luminance(opaque($background, $foreground)); - @return if($l1 > $l2, divide($l1 + .05, $l2 + .05), divide($l2 + .05, $l1 + .05)); + @return if( + $l1 > $l2, + divide($l1 + 0.05, $l2 + 0.05), + divide($l2 + 0.05, $l1 + 0.05) + ); } // Return WCAG2.0 relative luminance @@ -178,15 +232,25 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003 $rgb: ( "r": red($color), "g": green($color), - "b": blue($color) + "b": blue($color), ); @each $name, $value in $rgb { - $value: if(divide($value, 255) < .03928, divide(divide($value, 255), 12.92), nth($_luminance-list, $value + 1)); - $rgb: map-merge($rgb, ($name: $value)); + $value: if( + divide($value, 255) < 0.03928, + divide(divide($value, 255), 12.92), + nth($_luminance-list, $value + 1) + ); + $rgb: map-merge( + $rgb, + ( + $name: $value, + ) + ); } - @return (map-get($rgb, "r") * .2126) + (map-get($rgb, "g") * .7152) + (map-get($rgb, "b") * .0722); + @return (map-get($rgb, "r") * 0.2126) + (map-get($rgb, "g") * 0.7152) + + (map-get($rgb, "b") * 0.0722); } // Return opaque color @@ -208,7 +272,11 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003 // Shade the color if the weight is positive, else tint it @function shift-color($color, $weight) { - @return if($weight * 1% > 0, shade-color($color, $weight), tint-color($color, -$weight)); + @return if( + $weight * 1% > 0, + shade-color($color, $weight), + tint-color($color, -$weight) + ); } // scss-docs-end color-functions @@ -222,11 +290,20 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003 @return $value1; } - @if type-of($value1) == number and type-of($value2) == number and comparable($value1, $value2) { + @if type-of($value1) == + number and + type-of($value2) == + number and + comparable($value1, $value2) + { @return $value1 + $value2; } - @return if($return-calc == true, calc(#{$value1} + #{$value2}), $value1 + unquote(" + ") + $value2); + @return if( + $return-calc == true, + calc(#{$value1} + #{$value2}), + $value1 + unquote(" + ") + $value2 + ); } @function subtract($value1, $value2, $return-calc: true) { @@ -242,7 +319,12 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003 @return $value1; } - @if type-of($value1) == number and type-of($value2) == number and comparable($value1, $value2) { + @if type-of($value1) == + number and + type-of($value2) == + number and + comparable($value1, $value2) + { @return $value1 - $value2; } @@ -250,13 +332,21 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003 $value2: unquote("(") + $value2 + unquote(")"); } - @return if($return-calc == true, calc(#{$value1} - #{$value2}), $value1 + unquote(" - ") + $value2); + @return if( + $return-calc == true, + calc(#{$value1} - #{$value2}), + $value1 + unquote(" - ") + $value2 + ); } @function divide($dividend, $divisor, $precision: 10) { - $sign: if($dividend > 0 and $divisor > 0 or $dividend < 0 and $divisor < 0, 1, -1); - $dividend: abs($dividend); - $divisor: abs($divisor); + $sign: if( + $dividend > 0 and $divisor > 0 or $dividend < 0 and $divisor < 0, + 1, + -1 + ); + $dividend: math.abs($dividend); + $divisor: math.abs($divisor); @if $dividend == 0 { @return 0; } @@ -273,7 +363,7 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003 $quotient: $quotient + 1; } $result: $result * 10 + $quotient; - $factor: $factor * .1; + $factor: $factor * 0.1; $remainder: $remainder * 10; $precision: $precision - 1; @if ($precision < 0 and $remainder >= $divisor * 5) { @@ -287,9 +377,11 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003 "px": 1px, "rem": 1rem, "em": 1em, - "%": 1% + "%": 1%, ); - @if ($dividend-unit != $divisor-unit and map-has-key($unit-map, $dividend-unit)) { + @if ( + $dividend-unit != $divisor-unit and map-has-key($unit-map, $dividend-unit) + ) { $result: $result * map-get($unit-map, $dividend-unit); } @return $result; diff --git a/src/assets/styles/bootstrap/_images.scss b/src/assets/styles/bootstrap/_images.scss index 3d6a1014..61677acd 100644 --- a/src/assets/styles/bootstrap/_images.scss +++ b/src/assets/styles/bootstrap/_images.scss @@ -9,7 +9,6 @@ @include img-fluid(); } - // Image thumbnails .img-thumbnail { padding: $thumbnail-padding; @@ -32,7 +31,7 @@ } .figure-img { - margin-bottom: $spacer * .5; + margin-bottom: $spacer * 0.5; line-height: 1; } diff --git a/src/assets/styles/bootstrap/_list-group.scss b/src/assets/styles/bootstrap/_list-group.scss index dcd61d2b..b4a9730d 100644 --- a/src/assets/styles/bootstrap/_list-group.scss +++ b/src/assets/styles/bootstrap/_list-group.scss @@ -1,3 +1,4 @@ +@use 'sass:math'; // Base class // // Easily usable on
    ,
      , or
      . @@ -23,7 +24,6 @@ } } - // Interactive list items // // Use anchor or button elements instead of `li`s or `div`s to create interactive @@ -49,7 +49,6 @@ } } - // Individual list items // // Use on `li`s or `div`s within the `.list-group` parent. @@ -96,7 +95,6 @@ } } - // Horizontal // // Change the layout of list group items from vertical (default) to horizontal. @@ -137,7 +135,6 @@ } } - // Flush list items // // Remove borders and border-radius to keep list group items edge-to-edge. Most @@ -155,7 +152,6 @@ } } - // scss-docs-start list-group-modifiers // List group contextual variants // @@ -165,10 +161,17 @@ @each $state, $value in $theme-colors { $list-group-variant-bg: shift-color($value, $list-group-item-bg-scale); $list-group-variant-color: shift-color($value, $list-group-item-color-scale); - @if (contrast-ratio($list-group-variant-bg, $list-group-variant-color) < $min-contrast-ratio) { - $list-group-variant-color: mix($value, color-contrast($list-group-variant-bg), abs($list-group-item-color-scale)); + @if ( + contrast-ratio($list-group-variant-bg, $list-group-variant-color) < + $min-contrast-ratio + ) { + $list-group-variant-color: mix($value, color-contrast($list-group-variant-bg), math.abs($list-group-item-color-scale)); } - @include list-group-item-variant($state, $list-group-variant-bg, $list-group-variant-color); + @include list-group-item-variant( + $state, + $list-group-variant-bg, + $list-group-variant-color + ); } // scss-docs-end list-group-modifiers diff --git a/src/assets/styles/bootstrap/_modal.scss b/src/assets/styles/bootstrap/_modal.scss index 21e1258f..da87f9cf 100644 --- a/src/assets/styles/bootstrap/_modal.scss +++ b/src/assets/styles/bootstrap/_modal.scss @@ -3,7 +3,6 @@ // .modal-dialog - positioning shell for the actual modal // .modal-content - actual modal w/ bg and corners and stuff - // Container that the modal scrolls within .modal { position: fixed; @@ -85,7 +84,11 @@ // Modal background .modal-backdrop { - @include overlay-backdrop($zindex-modal-backdrop, $modal-backdrop-bg, $modal-backdrop-opacity); + @include overlay-backdrop( + $zindex-modal-backdrop, + $modal-backdrop-bg, + $modal-backdrop-opacity + ); } // Modal header @@ -100,8 +103,9 @@ @include border-top-radius($modal-content-inner-border-radius); .btn-close { - padding: ($modal-header-padding-y * .5) ($modal-header-padding-x * .5); - margin: ($modal-header-padding-y * -.5) ($modal-header-padding-x * -.5) ($modal-header-padding-y * -.5) auto; + padding: ($modal-header-padding-y * 0.5) ($modal-header-padding-x * 0.5); + margin: ($modal-header-padding-y * -0.5) ($modal-header-padding-x * -0.5) + ($modal-header-padding-y * -0.5) auto; } } @@ -128,7 +132,7 @@ flex-shrink: 0; align-items: center; // vertically center justify-content: flex-end; // Right align buttons with flex property because text-align doesn't work on flex items - padding: $modal-inner-padding - $modal-footer-margin-between * .5; + padding: $modal-inner-padding - $modal-footer-margin-between * 0.5; border-top: $modal-footer-border-width solid $modal-footer-border-color; @include border-bottom-radius($modal-content-inner-border-radius); @@ -136,7 +140,7 @@ // This solution is far from ideal because of the universal selector usage, // but is needed to fix https://github.com/twbs/bootstrap/issues/24800 > * { - margin: $modal-footer-margin-between * .5; + margin: $modal-footer-margin-between * 0.5; } } @@ -160,7 +164,9 @@ @include box-shadow($modal-content-box-shadow-sm-up); } - .modal-sm { max-width: $modal-sm; } + .modal-sm { + max-width: $modal-sm; + } } @include media-breakpoint-up(lg) { @@ -171,7 +177,9 @@ } @include media-breakpoint-up(xl) { - .modal-xl { max-width: $modal-xl; } + .modal-xl { + max-width: $modal-xl; + } } // scss-docs-start modal-fullscreen-loop diff --git a/src/assets/styles/bootstrap/_nav.scss b/src/assets/styles/bootstrap/_nav.scss index c7974dc6..365a143e 100644 --- a/src/assets/styles/bootstrap/_nav.scss +++ b/src/assets/styles/bootstrap/_nav.scss @@ -4,37 +4,37 @@ // `