@flashist/appframework 0.0.266 → 0.0.268
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/display/views/button/SimpleButtonView.js +4 -2
- package/display/views/button/SimpleButtonView.js.map +1 -1
- package/display/views/viewstack/index.d.ts +0 -1
- package/display/views/viewstack/index.js +0 -1
- package/display/views/viewstack/index.js.map +1 -1
- package/index.d.ts +148 -38
- package/index.js +148 -38
- package/index.js.map +1 -1
- package/package.json +2 -1
- package/src/app/AppModule.d.ts +6 -0
- package/src/app/AppModule.js +22 -0
- package/src/app/AppModule.js.map +1 -0
- package/src/app/AppSettings.d.ts +7 -0
- package/src/app/AppSettings.js +8 -0
- package/src/app/AppSettings.js.map +1 -0
- package/src/app/commands/LoadAppConfigCommand.d.ts +5 -0
- package/src/app/commands/LoadAppConfigCommand.js +41 -0
- package/src/app/commands/LoadAppConfigCommand.js.map +1 -0
- package/src/app/commands/ParseStaticItemsConfigCommand.d.ts +4 -0
- package/src/app/commands/ParseStaticItemsConfigCommand.js +43 -0
- package/src/app/commands/ParseStaticItemsConfigCommand.js.map +1 -0
- package/src/app/data/local-storage/IAppModelLocalStorageVO.d.ts +4 -0
- package/src/app/data/local-storage/IAppModelLocalStorageVO.js +2 -0
- package/src/app/data/local-storage/IAppModelLocalStorageVO.js.map +1 -0
- package/src/app/data/state/AppModuleState.d.ts +24 -0
- package/src/app/data/state/AppModuleState.js +25 -0
- package/src/app/data/state/AppModuleState.js.map +1 -0
- package/src/app/managers/AppManager.d.ts +16 -0
- package/src/app/managers/AppManager.js +73 -0
- package/src/app/managers/AppManager.js.map +1 -0
- package/src/app/views/AppMainContainer.d.ts +10 -0
- package/src/app/views/AppMainContainer.js +30 -0
- package/src/app/views/AppMainContainer.js.map +1 -0
- package/src/app/views/AppMainContainerEvent.d.ts +4 -0
- package/src/app/views/AppMainContainerEvent.js +6 -0
- package/src/app/views/AppMainContainerEvent.js.map +1 -0
- package/src/assets/commands/ParseAssetsConfigCommand.d.ts +4 -0
- package/src/assets/commands/ParseAssetsConfigCommand.js +21 -0
- package/src/assets/commands/ParseAssetsConfigCommand.js.map +1 -0
- package/src/base/BaseObjectWithGlobalDispatcher.d.ts +7 -0
- package/src/base/BaseObjectWithGlobalDispatcher.js +15 -0
- package/src/base/BaseObjectWithGlobalDispatcher.js.map +1 -0
- package/src/base/commands/BaseAppCommand.d.ts +7 -0
- package/src/base/commands/BaseAppCommand.js +15 -0
- package/src/base/commands/BaseAppCommand.js.map +1 -0
- package/src/base/managers/BaseAppManager.d.ts +3 -0
- package/src/base/managers/BaseAppManager.js +4 -0
- package/src/base/managers/BaseAppManager.js.map +1 -0
- package/src/base/mediators/BaseAppMediator.d.ts +9 -0
- package/src/base/mediators/BaseAppMediator.js +13 -0
- package/src/base/mediators/BaseAppMediator.js.map +1 -0
- package/src/base/models/BaseAppModel.d.ts +3 -0
- package/src/base/models/BaseAppModel.js +4 -0
- package/src/base/models/BaseAppModel.js.map +1 -0
- package/src/base/modules/AppModulesManager.d.ts +9 -0
- package/src/base/modules/AppModulesManager.js +50 -0
- package/src/base/modules/AppModulesManager.js.map +1 -0
- package/src/base/modules/BaseAppModule.d.ts +6 -0
- package/src/base/modules/BaseAppModule.js +13 -0
- package/src/base/modules/BaseAppModule.js.map +1 -0
- package/src/base/views/BaseAppView.d.ts +8 -0
- package/src/base/views/BaseAppView.js +13 -0
- package/src/base/views/BaseAppView.js.map +1 -0
- package/src/containers/ContainersModule.d.ts +4 -0
- package/src/containers/ContainersModule.js +10 -0
- package/src/containers/ContainersModule.js.map +1 -0
- package/src/containers/managers/ContainersManager.d.ts +8 -0
- package/src/containers/managers/ContainersManager.js +21 -0
- package/src/containers/managers/ContainersManager.js.map +1 -0
- package/src/date/DateSettings.d.ts +6 -0
- package/src/date/DateSettings.js +7 -0
- package/src/date/DateSettings.js.map +1 -0
- package/src/debug/DebugModule.d.ts +5 -0
- package/src/debug/DebugModule.js +22 -0
- package/src/debug/DebugModule.js.map +1 -0
- package/src/debug/data/state/DebugModuleState.d.ts +7 -0
- package/src/debug/data/state/DebugModuleState.js +10 -0
- package/src/debug/data/state/DebugModuleState.js.map +1 -0
- package/src/device/DeviceModule.d.ts +4 -0
- package/src/device/DeviceModule.js +12 -0
- package/src/device/DeviceModule.js.map +1 -0
- package/src/device/data/state/DeviceModuleState.d.ts +4 -0
- package/src/device/data/state/DeviceModuleState.js +5 -0
- package/src/device/data/state/DeviceModuleState.js.map +1 -0
- package/src/display/data/IGetSizable.d.ts +4 -0
- package/src/display/data/IGetSizable.js +2 -0
- package/src/display/data/IGetSizable.js.map +1 -0
- package/src/display/tools/GetSizeTools.d.ts +4 -0
- package/src/display/tools/GetSizeTools.js +20 -0
- package/src/display/tools/GetSizeTools.js.map +1 -0
- package/src/display/views/AppContainer.d.ts +7 -0
- package/src/display/views/AppContainer.js +13 -0
- package/src/display/views/AppContainer.js.map +1 -0
- package/src/display/views/button/BaseBtn.d.ts +32 -0
- package/src/display/views/button/BaseBtn.js +222 -0
- package/src/display/views/button/BaseBtn.js.map +1 -0
- package/src/display/views/button/BaseBtnEvent.d.ts +4 -0
- package/src/display/views/button/BaseBtnEvent.js +5 -0
- package/src/display/views/button/BaseBtnEvent.js.map +1 -0
- package/src/display/views/button/BaseBtnState.d.ts +12 -0
- package/src/display/views/button/BaseBtnState.js +27 -0
- package/src/display/views/button/BaseBtnState.js.map +1 -0
- package/src/display/views/button/BaseBtnView.d.ts +30 -0
- package/src/display/views/button/BaseBtnView.js +155 -0
- package/src/display/views/button/BaseBtnView.js.map +1 -0
- package/src/display/views/button/DefaultButtonViewConfig.d.ts +8 -0
- package/src/display/views/button/DefaultButtonViewConfig.js +10 -0
- package/src/display/views/button/DefaultButtonViewConfig.js.map +1 -0
- package/src/display/views/button/IButtonViewConfig.d.ts +13 -0
- package/src/display/views/button/IButtonViewConfig.js +2 -0
- package/src/display/views/button/IButtonViewConfig.js.map +1 -0
- package/src/display/views/button/SimpleButtonConfig.d.ts +29 -0
- package/src/display/views/button/SimpleButtonConfig.js +54 -0
- package/src/display/views/button/SimpleButtonConfig.js.map +1 -0
- package/src/display/views/button/SimpleButtonState.d.ts +10 -0
- package/src/display/views/button/SimpleButtonState.js +12 -0
- package/src/display/views/button/SimpleButtonState.js.map +1 -0
- package/src/display/views/button/SimpleButtonView.d.ts +45 -0
- package/src/display/views/button/SimpleButtonView.js +260 -0
- package/src/display/views/button/SimpleButtonView.js.map +1 -0
- package/src/display/views/button/simple-image-button/SimpleImageButton.d.ts +33 -0
- package/src/display/views/button/simple-image-button/SimpleImageButton.js +167 -0
- package/src/display/views/button/simple-image-button/SimpleImageButton.js.map +1 -0
- package/src/display/views/button/simple-image-button/SimpleImageButtonConfig.d.ts +8 -0
- package/src/display/views/button/simple-image-button/SimpleImageButtonConfig.js +4 -0
- package/src/display/views/button/simple-image-button/SimpleImageButtonConfig.js.map +1 -0
- package/src/display/views/button/simple-image-button/SimpleImageButtonState.d.ts +22 -0
- package/src/display/views/button/simple-image-button/SimpleImageButtonState.js +56 -0
- package/src/display/views/button/simple-image-button/SimpleImageButtonState.js.map +1 -0
- package/src/display/views/layout/AlignWithMaxSizeLayout.d.ts +8 -0
- package/src/display/views/layout/AlignWithMaxSizeLayout.js +35 -0
- package/src/display/views/layout/AlignWithMaxSizeLayout.js.map +1 -0
- package/src/display/views/layout/BaseLayout.d.ts +22 -0
- package/src/display/views/layout/BaseLayout.js +108 -0
- package/src/display/views/layout/BaseLayout.js.map +1 -0
- package/src/display/views/layout/ColumnLayout.d.ts +42 -0
- package/src/display/views/layout/ColumnLayout.js +93 -0
- package/src/display/views/layout/ColumnLayout.js.map +1 -0
- package/src/display/views/layout/LayoutConfig.d.ts +9 -0
- package/src/display/views/layout/LayoutConfig.js +12 -0
- package/src/display/views/layout/LayoutConfig.js.map +1 -0
- package/src/display/views/layout/MultiColumnLayout.d.ts +14 -0
- package/src/display/views/layout/MultiColumnLayout.js +38 -0
- package/src/display/views/layout/MultiColumnLayout.js.map +1 -0
- package/src/display/views/layout/MultiColumnLayoutConfig.d.ts +4 -0
- package/src/display/views/layout/MultiColumnLayoutConfig.js +4 -0
- package/src/display/views/layout/MultiColumnLayoutConfig.js.map +1 -0
- package/src/display/views/layout/RowLayout.d.ts +38 -0
- package/src/display/views/layout/RowLayout.js +89 -0
- package/src/display/views/layout/RowLayout.js.map +1 -0
- package/src/display/views/layout/container/BaseLayoutableContainer.d.ts +8 -0
- package/src/display/views/layout/container/BaseLayoutableContainer.js +10 -0
- package/src/display/views/layout/container/BaseLayoutableContainer.js.map +1 -0
- package/src/display/views/layout/container/ILayoutableChild.d.ts +2 -0
- package/src/display/views/layout/container/ILayoutableChild.js +2 -0
- package/src/display/views/layout/container/ILayoutableChild.js.map +1 -0
- package/src/display/views/layout/container/ILayoutableContainer.d.ts +15 -0
- package/src/display/views/layout/container/ILayoutableContainer.js +2 -0
- package/src/display/views/layout/container/ILayoutableContainer.js.map +1 -0
- package/src/display/views/resize/AppResizableContainer.d.ts +16 -0
- package/src/display/views/resize/AppResizableContainer.js +62 -0
- package/src/display/views/resize/AppResizableContainer.js.map +1 -0
- package/src/display/views/resize/IResizable.d.ts +5 -0
- package/src/display/views/resize/IResizable.js +2 -0
- package/src/display/views/resize/IResizable.js.map +1 -0
- package/src/display/views/simplelist/ISimpleListItem.d.ts +3 -0
- package/src/display/views/simplelist/ISimpleListItem.js +2 -0
- package/src/display/views/simplelist/ISimpleListItem.js.map +1 -0
- package/src/display/views/simplelist/SimpleList.d.ts +39 -0
- package/src/display/views/simplelist/SimpleList.js +241 -0
- package/src/display/views/simplelist/SimpleList.js.map +1 -0
- package/src/display/views/simplelist/SimpleListEvent.d.ts +4 -0
- package/src/display/views/simplelist/SimpleListEvent.js +5 -0
- package/src/display/views/simplelist/SimpleListEvent.js.map +1 -0
- package/src/display/views/sizedistributor/ISizeDistributorChild.d.ts +4 -0
- package/src/display/views/sizedistributor/ISizeDistributorChild.js +2 -0
- package/src/display/views/sizedistributor/ISizeDistributorChild.js.map +1 -0
- package/src/display/views/sizedistributor/SizeDistributor.d.ts +2 -0
- package/src/display/views/sizedistributor/SizeDistributor.js +3 -0
- package/src/display/views/sizedistributor/SizeDistributor.js.map +1 -0
- package/src/display/views/sizedistributor/SizeDistributorConfig.d.ts +9 -0
- package/src/display/views/sizedistributor/SizeDistributorConfig.js +10 -0
- package/src/display/views/sizedistributor/SizeDistributorConfig.js.map +1 -0
- package/src/display/views/togglegroup/IToggableItem.d.ts +5 -0
- package/src/display/views/togglegroup/IToggableItem.js +2 -0
- package/src/display/views/togglegroup/IToggableItem.js.map +1 -0
- package/src/display/views/togglegroup/IToggleGroupItem.d.ts +5 -0
- package/src/display/views/togglegroup/IToggleGroupItem.js +2 -0
- package/src/display/views/togglegroup/IToggleGroupItem.js.map +1 -0
- package/src/display/views/togglegroup/ToggleGroup.d.ts +18 -0
- package/src/display/views/togglegroup/ToggleGroup.js +110 -0
- package/src/display/views/togglegroup/ToggleGroup.js.map +1 -0
- package/src/display/views/togglegroup/ToggleGroupEvent.d.ts +3 -0
- package/src/display/views/togglegroup/ToggleGroupEvent.js +4 -0
- package/src/display/views/togglegroup/ToggleGroupEvent.js.map +1 -0
- package/src/display/views/viewstack/IViewStackItem.d.ts +4 -0
- package/src/display/views/viewstack/IViewStackItem.js +2 -0
- package/src/display/views/viewstack/IViewStackItem.js.map +1 -0
- package/src/display/views/viewstack/ViewLazyCreationServiceLocatorStack.d.ts +5 -0
- package/src/display/views/viewstack/ViewLazyCreationServiceLocatorStack.js +13 -0
- package/src/display/views/viewstack/ViewLazyCreationServiceLocatorStack.js.map +1 -0
- package/src/display/views/viewstack/ViewLazyCreationStack.d.ts +11 -0
- package/{display/views/viewstack/ViewStackLazyCreation.js → src/display/views/viewstack/ViewLazyCreationStack.js} +11 -6
- package/src/display/views/viewstack/ViewLazyCreationStack.js.map +1 -0
- package/src/display/views/viewstack/ViewStack.d.ts +18 -0
- package/src/display/views/viewstack/ViewStack.js +63 -0
- package/src/display/views/viewstack/ViewStack.js.map +1 -0
- package/src/ecs/ECSModule.d.ts +4 -0
- package/src/ecs/ECSModule.js +10 -0
- package/src/ecs/ECSModule.js.map +1 -0
- package/src/ecs/ecs/components/IComponent.d.ts +3 -0
- package/src/ecs/ecs/components/IComponent.js +2 -0
- package/src/ecs/ecs/components/IComponent.js.map +1 -0
- package/src/ecs/ecs/entities/IEntity.d.ts +7 -0
- package/src/ecs/ecs/entities/IEntity.js +2 -0
- package/src/ecs/ecs/entities/IEntity.js.map +1 -0
- package/src/ecs/ecs/entities/queries/EntitiesQuery.d.ts +11 -0
- package/src/ecs/ecs/entities/queries/EntitiesQuery.js +28 -0
- package/src/ecs/ecs/entities/queries/EntitiesQuery.js.map +1 -0
- package/src/ecs/ecs/entities/queries/EntitiesQueryEvent.d.ts +4 -0
- package/src/ecs/ecs/entities/queries/EntitiesQueryEvent.js +5 -0
- package/src/ecs/ecs/entities/queries/EntitiesQueryEvent.js.map +1 -0
- package/src/ecs/ecs/systems/System.d.ts +16 -0
- package/src/ecs/ecs/systems/System.js +32 -0
- package/src/ecs/ecs/systems/System.js.map +1 -0
- package/src/ecs/managers/ECSManager.d.ts +42 -0
- package/src/ecs/managers/ECSManager.js +142 -0
- package/src/ecs/managers/ECSManager.js.map +1 -0
- package/src/ecs-rendermodule/ECSRenderModule.d.ts +5 -0
- package/src/ecs-rendermodule/ECSRenderModule.js +17 -0
- package/src/ecs-rendermodule/ECSRenderModule.js.map +1 -0
- package/src/ecs-rendermodule/data/RenderModuleRootContainerId.d.ts +1 -0
- package/src/ecs-rendermodule/data/RenderModuleRootContainerId.js +2 -0
- package/src/ecs-rendermodule/data/RenderModuleRootContainerId.js.map +1 -0
- package/src/ecs-rendermodule/ecs/components/RenderComponent.d.ts +12 -0
- package/src/ecs-rendermodule/ecs/components/RenderComponent.js +7 -0
- package/src/ecs-rendermodule/ecs/components/RenderComponent.js.map +1 -0
- package/src/ecs-rendermodule/ecs/systems/RenderSystem.d.ts +14 -0
- package/src/ecs-rendermodule/ecs/systems/RenderSystem.js +38 -0
- package/src/ecs-rendermodule/ecs/systems/RenderSystem.js.map +1 -0
- package/src/events/commands/DispatchGlobalEventCommand.d.ts +8 -0
- package/src/events/commands/DispatchGlobalEventCommand.js +15 -0
- package/src/events/commands/DispatchGlobalEventCommand.js.map +1 -0
- package/src/facade/Facade.d.ts +32 -0
- package/src/facade/Facade.js +172 -0
- package/src/facade/Facade.js.map +1 -0
- package/src/facade/IFacadeOptions.d.ts +6 -0
- package/src/facade/IFacadeOptions.js +2 -0
- package/src/facade/IFacadeOptions.js.map +1 -0
- package/src/global/data/FlashistGlobalVars.d.ts +3 -0
- package/src/global/data/FlashistGlobalVars.js +1 -0
- package/src/global/data/FlashistGlobalVars.js.map +1 -0
- package/src/globaleventdispatcher/GlobalEventDispatcherModule.d.ts +4 -0
- package/src/globaleventdispatcher/GlobalEventDispatcherModule.js +12 -0
- package/src/globaleventdispatcher/GlobalEventDispatcherModule.js.map +1 -0
- package/src/globaleventdispatcher/commands/WaitGlobalEventCommand.d.ts +6 -0
- package/src/globaleventdispatcher/commands/WaitGlobalEventCommand.js +19 -0
- package/src/globaleventdispatcher/commands/WaitGlobalEventCommand.js.map +1 -0
- package/src/globaleventdispatcher/dispatcher/GlobalEventDispatcher.d.ts +10 -0
- package/src/globaleventdispatcher/dispatcher/GlobalEventDispatcher.js +26 -0
- package/src/globaleventdispatcher/dispatcher/GlobalEventDispatcher.js.map +1 -0
- package/src/globaleventdispatcher/dispatcher/GlobalEventDispatcherAgumentsType.d.ts +1 -0
- package/src/globaleventdispatcher/dispatcher/GlobalEventDispatcherAgumentsType.js +2 -0
- package/src/globaleventdispatcher/dispatcher/GlobalEventDispatcherAgumentsType.js.map +1 -0
- package/src/globaleventdispatcher/dispatcher/GlobalEventDispatcherEvent.d.ts +4 -0
- package/src/globaleventdispatcher/dispatcher/GlobalEventDispatcherEvent.js +5 -0
- package/src/globaleventdispatcher/dispatcher/GlobalEventDispatcherEvent.js.map +1 -0
- package/src/globaleventdispatcher/dispatcher/IGlobalDispatchEventVO.d.ts +4 -0
- package/src/globaleventdispatcher/dispatcher/IGlobalDispatchEventVO.js +2 -0
- package/src/globaleventdispatcher/dispatcher/IGlobalDispatchEventVO.js.map +1 -0
- package/src/globaleventdispatcher/managers/GlobalEventsCommandManager.d.ts +5 -0
- package/src/globaleventdispatcher/managers/GlobalEventsCommandManager.js +15 -0
- package/src/globaleventdispatcher/managers/GlobalEventsCommandManager.js.map +1 -0
- package/src/hints/commands/AnimateHintCommand.d.ts +10 -0
- package/src/hints/commands/AnimateHintCommand.js +57 -0
- package/src/hints/commands/AnimateHintCommand.js.map +1 -0
- package/src/hints/data/DefaultHintConfig.d.ts +15 -0
- package/src/hints/data/DefaultHintConfig.js +18 -0
- package/src/hints/data/DefaultHintConfig.js.map +1 -0
- package/src/hints/data/HintContainerId.d.ts +1 -0
- package/src/hints/data/HintContainerId.js +2 -0
- package/src/hints/data/HintContainerId.js.map +1 -0
- package/src/hints/data/IHintConfig.d.ts +15 -0
- package/src/hints/data/IHintConfig.js +2 -0
- package/src/hints/data/IHintConfig.js.map +1 -0
- package/src/html/HTMLModule.d.ts +4 -0
- package/src/html/HTMLModule.js +10 -0
- package/src/html/HTMLModule.js.map +1 -0
- package/src/html/managers/HTMLManager.d.ts +14 -0
- package/src/html/managers/HTMLManager.js +79 -0
- package/src/html/managers/HTMLManager.js.map +1 -0
- package/src/html/managers/HTMLManagerEvent.d.ts +4 -0
- package/src/html/managers/HTMLManagerEvent.js +6 -0
- package/src/html/managers/HTMLManagerEvent.js.map +1 -0
- package/src/init/commands/InitApplicationCommand.d.ts +4 -0
- package/src/init/commands/InitApplicationCommand.js +30 -0
- package/src/init/commands/InitApplicationCommand.js.map +1 -0
- package/src/init/commands/InitApplicationDataCommand.d.ts +8 -0
- package/src/init/commands/InitApplicationDataCommand.js +15 -0
- package/src/init/commands/InitApplicationDataCommand.js.map +1 -0
- package/src/init/commands/InitApplicationDataEvent.d.ts +3 -0
- package/src/init/commands/InitApplicationDataEvent.js +4 -0
- package/src/init/commands/InitApplicationDataEvent.js.map +1 -0
- package/src/init/events/InitApplicationEvent.d.ts +3 -0
- package/src/init/events/InitApplicationEvent.js +4 -0
- package/src/init/events/InitApplicationEvent.js.map +1 -0
- package/src/load/LoadGroupName.d.ts +5 -0
- package/src/load/LoadGroupName.js +8 -0
- package/src/load/LoadGroupName.js.map +1 -0
- package/src/load/LoadModule.d.ts +7 -0
- package/src/load/LoadModule.js +18 -0
- package/src/load/LoadModule.js.map +1 -0
- package/src/local-storage/LocalStorageModule.d.ts +4 -0
- package/src/local-storage/LocalStorageModule.js +10 -0
- package/src/local-storage/LocalStorageModule.js.map +1 -0
- package/src/local-storage/LocalStorageModuleConfig.d.ts +4 -0
- package/src/local-storage/LocalStorageModuleConfig.js +5 -0
- package/src/local-storage/LocalStorageModuleConfig.js.map +1 -0
- package/src/local-storage/managers/LocalStorageManager.d.ts +18 -0
- package/src/local-storage/managers/LocalStorageManager.js +140 -0
- package/src/local-storage/managers/LocalStorageManager.js.map +1 -0
- package/src/locales/LocalesModule.d.ts +4 -0
- package/src/locales/LocalesModule.js +9 -0
- package/src/locales/LocalesModule.js.map +1 -0
- package/src/locales/commands/ParseLocaleConfigCommand.d.ts +4 -0
- package/src/locales/commands/ParseLocaleConfigCommand.js +29 -0
- package/src/locales/commands/ParseLocaleConfigCommand.js.map +1 -0
- package/src/locales/commands/SetAppLocaleCommand.d.ts +4 -0
- package/src/locales/commands/SetAppLocaleCommand.js +12 -0
- package/src/locales/commands/SetAppLocaleCommand.js.map +1 -0
- package/src/pages/PagesModule.d.ts +4 -0
- package/src/pages/PagesModule.js +17 -0
- package/src/pages/PagesModule.js.map +1 -0
- package/src/pages/commands/ChangePageCommand.d.ts +6 -0
- package/src/pages/commands/ChangePageCommand.js +14 -0
- package/src/pages/commands/ChangePageCommand.js.map +1 -0
- package/src/pages/data/state/PagesModuleState.d.ts +14 -0
- package/src/pages/data/state/PagesModuleState.js +8 -0
- package/src/pages/data/state/PagesModuleState.js.map +1 -0
- package/src/pages/views/BasePageView.d.ts +18 -0
- package/src/pages/views/BasePageView.js +80 -0
- package/src/pages/views/BasePageView.js.map +1 -0
- package/src/pages/views/PagesMediator.d.ts +6 -0
- package/src/pages/views/PagesMediator.js +12 -0
- package/src/pages/views/PagesMediator.js.map +1 -0
- package/src/pages/views/PagesView.d.ts +10 -0
- package/src/pages/views/PagesView.js +64 -0
- package/src/pages/views/PagesView.js.map +1 -0
- package/src/pool/ObjectsPoolModule.d.ts +4 -0
- package/src/pool/ObjectsPoolModule.js +11 -0
- package/src/pool/ObjectsPoolModule.js.map +1 -0
- package/src/preloader-page/data/PreloaderPageId.d.ts +1 -0
- package/src/preloader-page/data/PreloaderPageId.js +2 -0
- package/src/preloader-page/data/PreloaderPageId.js.map +1 -0
- package/src/renderer/RendererModule.d.ts +5 -0
- package/src/renderer/RendererModule.js +32 -0
- package/src/renderer/RendererModule.js.map +1 -0
- package/src/renderer/data/RendererManagerConfigVO.d.ts +6 -0
- package/src/renderer/data/RendererManagerConfigVO.js +13 -0
- package/src/renderer/data/RendererManagerConfigVO.js.map +1 -0
- package/src/renderer/events/RendererManagerEvent.d.ts +4 -0
- package/src/renderer/events/RendererManagerEvent.js +5 -0
- package/src/renderer/events/RendererManagerEvent.js.map +1 -0
- package/src/renderer/managers/RendererManager.d.ts +20 -0
- package/src/renderer/managers/RendererManager.js +110 -0
- package/src/renderer/managers/RendererManager.js.map +1 -0
- package/src/size/tools/ViewWithSizeAreaTools.d.ts +5 -0
- package/src/size/tools/ViewWithSizeAreaTools.js +20 -0
- package/src/size/tools/ViewWithSizeAreaTools.js.map +1 -0
- package/src/size/views/IViewWithSizeArea.d.ts +9 -0
- package/src/size/views/IViewWithSizeArea.js +2 -0
- package/src/size/views/IViewWithSizeArea.js.map +1 -0
- package/src/sounds/SoundsModule.d.ts +5 -0
- package/src/sounds/SoundsModule.js +30 -0
- package/src/sounds/SoundsModule.js.map +1 -0
- package/src/sounds/SoundsSettings.d.ts +6 -0
- package/src/sounds/SoundsSettings.js +7 -0
- package/src/sounds/SoundsSettings.js.map +1 -0
- package/src/sounds/managers/BackgroundMusicManager.d.ts +11 -0
- package/src/sounds/managers/BackgroundMusicManager.js +36 -0
- package/src/sounds/managers/BackgroundMusicManager.js.map +1 -0
- package/src/sounds/managers/SoundsStorageManager.d.ts +12 -0
- package/src/sounds/managers/SoundsStorageManager.js +37 -0
- package/src/sounds/managers/SoundsStorageManager.js.map +1 -0
- package/src/state/AppStateModule.d.ts +46 -0
- package/src/state/AppStateModule.js +63 -0
- package/src/state/AppStateModule.js.map +1 -0
- package/{state/commands/WaitAppStorageDataChangeCommand.d.ts → src/state/commands/WaitAppStateDataChangeCommand.d.ts} +3 -3
- package/src/state/commands/WaitAppStateDataChangeCommand.js +29 -0
- package/src/state/commands/WaitAppStateDataChangeCommand.js.map +1 -0
- package/src/state/data/AppStateChangeType.d.ts +7 -0
- package/src/state/data/AppStateChangeType.js +9 -0
- package/src/state/data/AppStateChangeType.js.map +1 -0
- package/src/state/data/AppStateStorage.d.ts +57 -0
- package/src/state/data/AppStateStorage.js +286 -0
- package/src/state/data/AppStateStorage.js.map +1 -0
- package/src/state/data/DeepKeyTypings.d.ts +25 -0
- package/src/state/data/DeepKeyTypings.js +144 -0
- package/src/state/data/DeepKeyTypings.js.map +1 -0
- package/src/state/data/DeepPartialTypings.d.ts +83 -0
- package/src/state/data/DeepPartialTypings.js +2 -0
- package/src/state/data/DeepPartialTypings.js.map +1 -0
- package/src/state/data/DeepReadableTypings.d.ts +58 -0
- package/src/state/data/DeepReadableTypings.js +2 -0
- package/src/state/data/DeepReadableTypings.js.map +1 -0
- package/src/state/data/IAppStateChangeConfigVO.d.ts +8 -0
- package/src/state/data/IAppStateChangeConfigVO.js +2 -0
- package/src/state/data/IAppStateChangeConfigVO.js.map +1 -0
- package/src/state/data/IChangeWrapper.d.ts +4 -0
- package/src/state/data/IChangeWrapper.js +2 -0
- package/src/state/data/IChangeWrapper.js.map +1 -0
- package/src/state/data/IPreChangeHook.d.ts +5 -0
- package/src/state/data/IPreChangeHook.js +2 -0
- package/src/state/data/IPreChangeHook.js.map +1 -0
- package/src/state/tools/AppStateDeepKeyTools.d.ts +6 -0
- package/src/state/tools/AppStateDeepKeyTools.js +70 -0
- package/src/state/tools/AppStateDeepKeyTools.js.map +1 -0
- package/src/state/tools/AppStateEventChangeTools.d.ts +3 -0
- package/src/state/tools/AppStateEventChangeTools.js +9 -0
- package/src/state/tools/AppStateEventChangeTools.js.map +1 -0
- package/src/state/tools/INestedPathHelperVO.d.ts +5 -0
- package/src/state/tools/INestedPathHelperVO.js +2 -0
- package/src/state/tools/INestedPathHelperVO.js.map +1 -0
- package/src/strategy/managers/BaseStrategyManager.d.ts +15 -0
- package/src/strategy/managers/BaseStrategyManager.js +17 -0
- package/src/strategy/managers/BaseStrategyManager.js.map +1 -0
- package/src/strategy/models/BaseStrategyModel.d.ts +12 -0
- package/src/strategy/models/BaseStrategyModel.js +31 -0
- package/src/strategy/models/BaseStrategyModel.js.map +1 -0
- package/src/strategy/strategies/BaseStrategy.d.ts +6 -0
- package/src/strategy/strategies/BaseStrategy.js +17 -0
- package/src/strategy/strategies/BaseStrategy.js.map +1 -0
- package/src/time/TimeModule.d.ts +4 -0
- package/src/time/TimeModule.js +15 -0
- package/src/time/TimeModule.js.map +1 -0
- package/src/time/data/state/TimeModuleAppState.d.ts +11 -0
- package/src/time/data/state/TimeModuleAppState.js +11 -0
- package/src/time/data/state/TimeModuleAppState.js.map +1 -0
- package/src/time/managers/TimeManager.d.ts +10 -0
- package/src/time/managers/TimeManager.js +40 -0
- package/src/time/managers/TimeManager.js.map +1 -0
- package/src/time/managers/TimeManagerEvent.d.ts +3 -0
- package/src/time/managers/TimeManagerEvent.js +6 -0
- package/src/time/managers/TimeManagerEvent.js.map +1 -0
- package/src/windows/data/IWindowConfigVO.d.ts +10 -0
- package/src/windows/data/IWindowConfigVO.js +2 -0
- package/src/windows/data/IWindowConfigVO.js.map +1 -0
- package/src/windows/managers/IShowWindowVO.d.ts +4 -0
- package/src/windows/managers/IShowWindowVO.js +2 -0
- package/src/windows/managers/IShowWindowVO.js.map +1 -0
- package/src/windows/managers/WindowsManager.d.ts +19 -0
- package/src/windows/managers/WindowsManager.js +52 -0
- package/src/windows/managers/WindowsManager.js.map +1 -0
- package/src/windows/views/BaseWindow.d.ts +7 -0
- package/src/windows/views/BaseWindow.js +14 -0
- package/src/windows/views/BaseWindow.js.map +1 -0
- package/display/views/viewstack/ViewStackLazyCreation.d.ts +0 -10
- package/display/views/viewstack/ViewStackLazyCreation.js.map +0 -1
- package/state/commands/WaitAppStorageDataChangeCommand.js +0 -29
- package/state/commands/WaitAppStorageDataChangeCommand.js.map +0 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { BaseObject } from "@flashist/fcore";
|
|
2
|
+
import { getInstance, SoundsManager } from "@flashist/flibs";
|
|
3
|
+
export class BackgroundMusicManager extends BaseObject {
|
|
4
|
+
constructor() {
|
|
5
|
+
super(...arguments);
|
|
6
|
+
this.soundsManager = getInstance(SoundsManager);
|
|
7
|
+
this.fadeInTime = 0.5;
|
|
8
|
+
this.fadeOutTime = 0.5;
|
|
9
|
+
}
|
|
10
|
+
changeMusic(id) {
|
|
11
|
+
if (this.currentMusicId === id) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
this.stopMusic();
|
|
15
|
+
this.currentMusicId = id;
|
|
16
|
+
this.currentMusic = this.soundsManager.getSound(id);
|
|
17
|
+
if (this.currentMusic) {
|
|
18
|
+
// this.currentMusic.setVolume(0);
|
|
19
|
+
this.currentMusic.play({ loop: true });
|
|
20
|
+
this.currentMusic.tweenVolume(1, this.fadeInTime);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
stopMusic() {
|
|
24
|
+
if (!this.currentMusic) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
// Make link-copy of the currently played music, as it might be changed after volume tween
|
|
28
|
+
const currentMusicCopy = this.currentMusic;
|
|
29
|
+
this.currentMusic = null;
|
|
30
|
+
this.currentMusicId = null;
|
|
31
|
+
currentMusicCopy.tweenVolume(0, this.fadeOutTime, () => {
|
|
32
|
+
currentMusicCopy.stop();
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=BackgroundMusicManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackgroundMusicManager.js","sourceRoot":"","sources":["../../../../src/sounds/managers/BackgroundMusicManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,WAAW,EAAS,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAElE,MAAM,OAAO,sBAAuB,SAAQ,UAAU;IAAtD;;QAEc,kBAAa,GAAkB,WAAW,CAAC,aAAa,CAAC,CAAC;QAK7D,eAAU,GAAW,GAAG,CAAC;QACzB,gBAAW,GAAW,GAAG,CAAC;IAoCrC,CAAC;IAlCU,WAAW,CAAC,EAAU;QACzB,IAAI,IAAI,CAAC,cAAc,KAAK,EAAE,EAAE,CAAC;YAC7B,OAAO;QACX,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;QAEjB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,kCAAkC;YAClC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;YACrC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IAEM,SAAS;QACZ,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,OAAO;QACX,CAAC;QAED,0FAA0F;QAC1F,MAAM,gBAAgB,GAAU,IAAI,CAAC,YAAY,CAAC;QAClD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAE3B,gBAAgB,CAAC,WAAW,CACxB,CAAC,EACD,IAAI,CAAC,WAAW,EAChB,GAAG,EAAE;YACD,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC,CACJ,CAAC;IACN,CAAC;CACJ"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BaseObject } from "@flashist/fcore";
|
|
2
|
+
import { SoundsManager } from "@flashist/flibs";
|
|
3
|
+
import { LocalStorageManager } from "../../local-storage/managers/LocalStorageManager";
|
|
4
|
+
export declare class SoundsStorageManager extends BaseObject {
|
|
5
|
+
protected soundsManager: SoundsManager;
|
|
6
|
+
protected storageManager: LocalStorageManager;
|
|
7
|
+
protected construction(...args: any[]): void;
|
|
8
|
+
protected addListeners(): void;
|
|
9
|
+
protected onSoundsDataChange(): void;
|
|
10
|
+
activateCompleteHook(): void;
|
|
11
|
+
protected commitSoundsData(): void;
|
|
12
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { BaseObject } from "@flashist/fcore";
|
|
2
|
+
import { getInstance, SoundsManager, SoundsManagerEvent } from "@flashist/flibs";
|
|
3
|
+
import { LocalStorageManager } from "../../local-storage/managers/LocalStorageManager";
|
|
4
|
+
import { SoundsSettings } from "../SoundsSettings";
|
|
5
|
+
export class SoundsStorageManager extends BaseObject {
|
|
6
|
+
construction(...args) {
|
|
7
|
+
this.soundsManager = getInstance(SoundsManager);
|
|
8
|
+
this.storageManager = getInstance(LocalStorageManager);
|
|
9
|
+
super.construction(...args);
|
|
10
|
+
}
|
|
11
|
+
addListeners() {
|
|
12
|
+
super.addListeners();
|
|
13
|
+
this.eventListenerHelper.addEventListener(this.soundsManager, SoundsManagerEvent.IS_MUTED_CHANGE, this.onSoundsDataChange);
|
|
14
|
+
this.eventListenerHelper.addEventListener(this.soundsManager, SoundsManagerEvent.TAGS_IS_MUTED_CHANGE, this.onSoundsDataChange);
|
|
15
|
+
}
|
|
16
|
+
onSoundsDataChange() {
|
|
17
|
+
this.commitSoundsData();
|
|
18
|
+
}
|
|
19
|
+
activateCompleteHook() {
|
|
20
|
+
const isMuted = this.storageManager.getParam(SoundsSettings.storage.isMutedParamId);
|
|
21
|
+
if (isMuted === true || isMuted === false) {
|
|
22
|
+
this.soundsManager.isMuted = isMuted;
|
|
23
|
+
}
|
|
24
|
+
const mutedTags = this.storageManager.getParam(SoundsSettings.storage.mutedTags);
|
|
25
|
+
if (mutedTags) {
|
|
26
|
+
for (let singleTag of mutedTags) {
|
|
27
|
+
this.soundsManager.setTagIsMuted(singleTag, true);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
this.commitSoundsData();
|
|
31
|
+
}
|
|
32
|
+
commitSoundsData() {
|
|
33
|
+
this.storageManager.setParam(SoundsSettings.storage.isMutedParamId, this.soundsManager.isMuted);
|
|
34
|
+
this.storageManager.setParam(SoundsSettings.storage.mutedTags, this.soundsManager.getTagsMuted());
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=SoundsStorageManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SoundsStorageManager.js","sourceRoot":"","sources":["../../../../src/sounds/managers/SoundsStorageManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,OAAO,oBAAqB,SAAQ,UAAU;IAKtC,YAAY,CAAC,GAAG,IAAI;QAC1B,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,mBAAmB,CAAC,CAAC;QAEvD,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC;IAChC,CAAC;IAES,YAAY;QAClB,KAAK,CAAC,YAAY,EAAE,CAAC;QAErB,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CACrC,IAAI,CAAC,aAAa,EAClB,kBAAkB,CAAC,eAAe,EAClC,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QAEF,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CACrC,IAAI,CAAC,aAAa,EAClB,kBAAkB,CAAC,oBAAoB,EACvC,IAAI,CAAC,kBAAkB,CAC1B,CAAC;IACN,CAAC;IAES,kBAAkB;QACxB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAEM,oBAAoB;QACvB,MAAM,OAAO,GAAY,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAU,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACtG,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;YACxC,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,OAAO,CAAC;QACzC,CAAC;QAED,MAAM,SAAS,GAAa,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAW,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrG,IAAI,SAAS,EAAE,CAAC;YACZ,KAAK,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;gBAC9B,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACtD,CAAC;QACL,CAAC;QAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAES,gBAAgB;QACtB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAChG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,CAAC;IACtG,CAAC;CACJ"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { BaseAppModule } from "../base/modules/BaseAppModule";
|
|
2
|
+
import { AppStateStorage } from "./data/AppStateStorage";
|
|
3
|
+
import { Flatten } from "./data/DeepKeyTypings";
|
|
4
|
+
export declare class AppStateModule extends BaseAppModule {
|
|
5
|
+
init(): void;
|
|
6
|
+
initCompleteHook(): void;
|
|
7
|
+
}
|
|
8
|
+
export declare const appStateStorage: () => AppStateStorage;
|
|
9
|
+
export declare const appStateStorageChangeEvent: <StateType extends object>() => <DeepKeyType extends keyof Flatten<StateType>>(deepKey: DeepKeyType) => string;
|
|
10
|
+
/**
|
|
11
|
+
//
|
|
12
|
+
export const getAppStateStorage = (): AppStateStorage => {
|
|
13
|
+
return getInstance(AppStateStorage);
|
|
14
|
+
};
|
|
15
|
+
export const getAppState = getAppStateStorage().getState.bind;
|
|
16
|
+
// export const appStateInitializeWith = getAppStateStorage().initializeWith;
|
|
17
|
+
|
|
18
|
+
export const getAppStateChangeEventName = <StateType extends object>() => {
|
|
19
|
+
return <DeepKeyType extends keyof Flatten<StateType>>(deepKey: DeepKeyType): string => {
|
|
20
|
+
return AppStateEventChangeTools.getChangeEvent(deepKey)
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// MODIFICATIONS
|
|
25
|
+
|
|
26
|
+
// export const appStateChange = getInstance(AppStateStorage).change;
|
|
27
|
+
export const appStateChange = <StateType extends object>() => {
|
|
28
|
+
return <DeepKeyType extends keyof Flatten<StateType>>(key: DeepKeyType, value: Flatten<StateType>[DeepKeyType]): void => {
|
|
29
|
+
const appStateStorage: AppStateStorage = getAppStateStorage();
|
|
30
|
+
appStateStorage.change({} as StateType, key, value);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// export const appStateDelete = <StateType extends object>(nestedPaths: ObjectNestedPathsType<StateType>) => {
|
|
35
|
+
// getInstance(AppStateStorage).delete<StateType>(nestedPaths);
|
|
36
|
+
// }
|
|
37
|
+
|
|
38
|
+
// export const appStateAddElements = <StateType extends object, ElementType>(nestedPaths: ObjectNestedPathsType<StateType>, ...elements: ElementType[]) => {
|
|
39
|
+
// getInstance(AppStateStorage).addElements<StateType, ElementType>(nestedPaths, ...elements);
|
|
40
|
+
// }
|
|
41
|
+
|
|
42
|
+
// export const appStateRemoveElements = <StateType extends object, ElementType>(nestedPaths: ObjectNestedPathsType<StateType>, ...elements: ElementType[]) => {
|
|
43
|
+
// getInstance(AppStateStorage).removeElements<StateType, ElementType>(nestedPaths, ...elements);
|
|
44
|
+
// }
|
|
45
|
+
|
|
46
|
+
**/
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { getInstance, serviceLocatorAdd } from "@flashist/flibs";
|
|
2
|
+
import { BaseAppModule } from "../base/modules/BaseAppModule";
|
|
3
|
+
import { AppStateStorage } from "./data/AppStateStorage";
|
|
4
|
+
import { AppStateEventChangeTools } from "./tools/AppStateEventChangeTools";
|
|
5
|
+
export class AppStateModule extends BaseAppModule {
|
|
6
|
+
init() {
|
|
7
|
+
super.init();
|
|
8
|
+
serviceLocatorAdd(AppStateStorage, { isSingleton: true });
|
|
9
|
+
}
|
|
10
|
+
initCompleteHook() {
|
|
11
|
+
super.initCompleteHook();
|
|
12
|
+
getInstance(AppStateStorage).initializeComplete();
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export const appStateStorage = () => {
|
|
16
|
+
return getInstance(AppStateStorage);
|
|
17
|
+
};
|
|
18
|
+
export const appStateStorageChangeEvent = () => {
|
|
19
|
+
return (deepKey) => {
|
|
20
|
+
return AppStateEventChangeTools.getChangeEvent(deepKey);
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
//
|
|
24
|
+
window["appStateStorage"] = appStateStorage;
|
|
25
|
+
window["appStateStorageChangeEvent"] = appStateStorageChangeEvent;
|
|
26
|
+
/**
|
|
27
|
+
//
|
|
28
|
+
export const getAppStateStorage = (): AppStateStorage => {
|
|
29
|
+
return getInstance(AppStateStorage);
|
|
30
|
+
};
|
|
31
|
+
export const getAppState = getAppStateStorage().getState.bind;
|
|
32
|
+
// export const appStateInitializeWith = getAppStateStorage().initializeWith;
|
|
33
|
+
|
|
34
|
+
export const getAppStateChangeEventName = <StateType extends object>() => {
|
|
35
|
+
return <DeepKeyType extends keyof Flatten<StateType>>(deepKey: DeepKeyType): string => {
|
|
36
|
+
return AppStateEventChangeTools.getChangeEvent(deepKey)
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// MODIFICATIONS
|
|
41
|
+
|
|
42
|
+
// export const appStateChange = getInstance(AppStateStorage).change;
|
|
43
|
+
export const appStateChange = <StateType extends object>() => {
|
|
44
|
+
return <DeepKeyType extends keyof Flatten<StateType>>(key: DeepKeyType, value: Flatten<StateType>[DeepKeyType]): void => {
|
|
45
|
+
const appStateStorage: AppStateStorage = getAppStateStorage();
|
|
46
|
+
appStateStorage.change({} as StateType, key, value);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// export const appStateDelete = <StateType extends object>(nestedPaths: ObjectNestedPathsType<StateType>) => {
|
|
51
|
+
// getInstance(AppStateStorage).delete<StateType>(nestedPaths);
|
|
52
|
+
// }
|
|
53
|
+
|
|
54
|
+
// export const appStateAddElements = <StateType extends object, ElementType>(nestedPaths: ObjectNestedPathsType<StateType>, ...elements: ElementType[]) => {
|
|
55
|
+
// getInstance(AppStateStorage).addElements<StateType, ElementType>(nestedPaths, ...elements);
|
|
56
|
+
// }
|
|
57
|
+
|
|
58
|
+
// export const appStateRemoveElements = <StateType extends object, ElementType>(nestedPaths: ObjectNestedPathsType<StateType>, ...elements: ElementType[]) => {
|
|
59
|
+
// getInstance(AppStateStorage).removeElements<StateType, ElementType>(nestedPaths, ...elements);
|
|
60
|
+
// }
|
|
61
|
+
|
|
62
|
+
**/
|
|
63
|
+
//# sourceMappingURL=AppStateModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppStateModule.js","sourceRoot":"","sources":["../../../src/state/AppStateModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,MAAM,OAAO,cAAe,SAAQ,aAAa;IAE7C,IAAI;QACA,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,iBAAiB,CAAC,eAAe,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,gBAAgB;QACZ,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAEzB,WAAW,CAAC,eAAe,CAAC,CAAC,kBAAkB,EAAE,CAAC;IACtD,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAChC,OAAO,WAAW,CAAC,eAAe,CAAC,CAAC;AACxC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAA6B,EAAE;IACrE,OAAO,CAA+C,OAAoB,EAAU,EAAE;QAClF,OAAO,wBAAwB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3D,CAAC,CAAA;AACL,CAAC,CAAA;AAED,EAAE;AACF,MAAM,CAAC,iBAAiB,CAAC,GAAG,eAAe,CAAC;AAC5C,MAAM,CAAC,4BAA4B,CAAC,GAAG,0BAA0B,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { BaseAppCommand } from "
|
|
2
|
-
export declare class
|
|
1
|
+
import { BaseAppCommand } from "../../../index";
|
|
2
|
+
export declare class WaitAppStateDataChageCommand extends BaseAppCommand {
|
|
3
3
|
protected deepKey: string;
|
|
4
4
|
protected value: any;
|
|
5
5
|
constructor(deepKey: string, value: any);
|
|
6
6
|
guard(): boolean;
|
|
7
|
-
protected
|
|
7
|
+
protected getAppStateValue(): any;
|
|
8
8
|
protected executeInternal(): void;
|
|
9
9
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BaseAppCommand } from "../../../index";
|
|
2
|
+
import { appStateStorageChangeEvent, appStateStorage } from "../AppStateModule";
|
|
3
|
+
export class WaitAppStateDataChageCommand extends BaseAppCommand {
|
|
4
|
+
constructor(deepKey, value) {
|
|
5
|
+
super();
|
|
6
|
+
this.deepKey = deepKey;
|
|
7
|
+
this.value = value;
|
|
8
|
+
}
|
|
9
|
+
guard() {
|
|
10
|
+
let result = super.guard();
|
|
11
|
+
if (result) {
|
|
12
|
+
if (this.value == this.getAppStateValue()) {
|
|
13
|
+
result = false;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
return result;
|
|
17
|
+
}
|
|
18
|
+
getAppStateValue() {
|
|
19
|
+
return appStateStorage().getValue()(this.deepKey);
|
|
20
|
+
}
|
|
21
|
+
executeInternal() {
|
|
22
|
+
this.eventListenerHelper.addEventListener(this.globalDispatcher, appStateStorageChangeEvent()(this.deepKey), () => {
|
|
23
|
+
if (this.value == this.getAppStateValue()) {
|
|
24
|
+
this.notifyComplete();
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=WaitAppStateDataChangeCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WaitAppStateDataChangeCommand.js","sourceRoot":"","sources":["../../../../src/state/commands/WaitAppStateDataChangeCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhF,MAAM,OAAO,4BAA6B,SAAQ,cAAc;IAC5D,YAAsB,OAAe,EAAY,KAAU;QACvD,KAAK,EAAE,CAAC;QADU,YAAO,GAAP,OAAO,CAAQ;QAAY,UAAK,GAAL,KAAK,CAAK;IAE3D,CAAC;IAED,KAAK;QACD,IAAI,MAAM,GAAY,KAAK,CAAC,KAAK,EAAE,CAAC;QACpC,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;gBACxC,MAAM,GAAG,KAAK,CAAC;YACnB,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAES,gBAAgB;QACtB,OAAQ,eAAe,EAAE,CAAC,QAAQ,EAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpE,CAAC;IAES,eAAe;QACrB,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CACrC,IAAI,CAAC,gBAAgB,EACpB,0BAA0B,EAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EACnD,GAAG,EAAE;YACD,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;gBACxC,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1B,CAAC;QACL,CAAC,CACJ,CAAA;IACL,CAAC;CACJ"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export var AppStateChangeType;
|
|
2
|
+
(function (AppStateChangeType) {
|
|
3
|
+
AppStateChangeType["DELETE"] = "delete";
|
|
4
|
+
AppStateChangeType["CHANGE"] = "change";
|
|
5
|
+
AppStateChangeType["SUBSTITUTE"] = "substitute";
|
|
6
|
+
AppStateChangeType["SPLICE"] = "splice";
|
|
7
|
+
AppStateChangeType["PUSH"] = "push";
|
|
8
|
+
})(AppStateChangeType || (AppStateChangeType = {}));
|
|
9
|
+
//# sourceMappingURL=AppStateChangeType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppStateChangeType.js","sourceRoot":"","sources":["../../../../src/state/data/AppStateChangeType.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC1B,uCAAiB,CAAA;IACjB,uCAAiB,CAAA;IACjB,+CAAyB,CAAA;IACzB,uCAAiB,CAAA;IACjB,mCAAa,CAAA;AACjB,CAAC,EANW,kBAAkB,KAAlB,kBAAkB,QAM7B"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Flatten } from "./DeepKeyTypings";
|
|
2
|
+
import { BaseObjectWithGlobalDispatcher } from "../../base/BaseObjectWithGlobalDispatcher";
|
|
3
|
+
import { IDeepKeyHelperVO } from "../tools/INestedPathHelperVO";
|
|
4
|
+
import { DeepReadonly } from "./DeepReadableTypings";
|
|
5
|
+
import { IPreChangeHook } from "./IPreChangeHook";
|
|
6
|
+
import { IAppStateChangeConfigVO } from "./IAppStateChangeConfigVO";
|
|
7
|
+
import { DeepPartial } from "./DeepPartialTypings";
|
|
8
|
+
export declare class AppStateStorage extends BaseObjectWithGlobalDispatcher {
|
|
9
|
+
/**
|
|
10
|
+
* The purpose of the method is to "prepare" a "wrapper" of a part of a state,
|
|
11
|
+
* to avoid constant writings of the full path. So instead of:
|
|
12
|
+
* change<MyType>()("a.b.c.2.test1", value);
|
|
13
|
+
* change<MyType>()("a.b.c.2.test2", value);
|
|
14
|
+
* change<MyType>()("a.b.c.2.test3", value);
|
|
15
|
+
* change<MyType>()("a.b.c.2.test4", value);
|
|
16
|
+
*
|
|
17
|
+
* You can do
|
|
18
|
+
* const changeWrapper = changePropertyWrapper<MyType>("a.b.c.2");
|
|
19
|
+
* changeWrapper("test1", value)
|
|
20
|
+
* changeWrapper("test2", value)
|
|
21
|
+
* changeWrapper("test3", value)
|
|
22
|
+
* changeWrapper("test4", value)
|
|
23
|
+
*
|
|
24
|
+
* How to use:
|
|
25
|
+
* const testWrapper = this.changePropertyWrapper<TestState>()("b.complexObject");
|
|
26
|
+
testWrapper("test1", "1")
|
|
27
|
+
|
|
28
|
+
* @returns
|
|
29
|
+
*/
|
|
30
|
+
changePropertyWrapper<StateType extends object>(): <WrapperStateType extends Partial<Flatten<StateType>[DeepKeyType]>, DeepKeyType extends keyof Flatten<StateType>>(key: DeepKeyType) => <WrapperDeepKeyType extends keyof Flatten<WrapperStateType>>(wrapperKey: WrapperDeepKeyType, value: DeepPartial<Flatten<WrapperStateType>[WrapperDeepKeyType]>) => void;
|
|
31
|
+
protected isInitialized: boolean;
|
|
32
|
+
protected state: object;
|
|
33
|
+
protected pathsHelperDataCache: {
|
|
34
|
+
[pathJsonText: string]: IDeepKeyHelperVO;
|
|
35
|
+
};
|
|
36
|
+
protected preChangeHooks: IPreChangeHook[];
|
|
37
|
+
initializeWith<StateType extends object>(initState: StateType): void;
|
|
38
|
+
initializeComplete(): void;
|
|
39
|
+
getState<StateType extends object>(): DeepReadonly<StateType>;
|
|
40
|
+
getMutableState<StateType extends object>(): StateType;
|
|
41
|
+
protected dispatchChangeEvents(helperData: IDeepKeyHelperVO): void;
|
|
42
|
+
protected getPathsHelperData(deepKey: string, config?: IAppStateChangeConfigVO): IDeepKeyHelperVO;
|
|
43
|
+
protected triggerPreChangeHooks<StateType, DeepKeyType extends keyof Flatten<StateType>>(stateForTypings: StateType, deepKey: DeepKeyType, config: IAppStateChangeConfigVO): void;
|
|
44
|
+
getValue<StateType extends object>(): <DeepKeyType extends keyof Flatten<StateType>>(key: DeepKeyType) => Partial<Flatten<StateType>[DeepKeyType]>;
|
|
45
|
+
protected innerGetValue<StateType, DeepKeyType extends keyof Flatten<StateType>, ValueType extends Flatten<StateType>[DeepKeyType]>(stateForTypings: StateType, deepKey: DeepKeyType): Partial<ValueType>;
|
|
46
|
+
protected processStateAction<StateType, DeepKeyType extends keyof Flatten<StateType>, ValueType extends Flatten<StateType>[DeepKeyType]>(stateForTypings: StateType, deepKey: DeepKeyType, config: IAppStateChangeConfigVO<ValueType>): any;
|
|
47
|
+
substitute<StateType extends object>(): <DeepKeyType extends keyof Flatten<StateType>>(key: DeepKeyType, value: DeepPartial<Flatten<StateType>[DeepKeyType]>) => void;
|
|
48
|
+
protected innerSubstitute<StateType, DeepKeyType extends keyof Flatten<StateType>, ValueType extends Flatten<StateType>[DeepKeyType]>(stateForTypings: StateType, deepKey: DeepKeyType, value: DeepPartial<ValueType>): void;
|
|
49
|
+
change<StateType extends object>(): <DeepKeyType extends keyof Flatten<StateType>>(key: DeepKeyType, value: DeepPartial<Flatten<StateType>[DeepKeyType]>) => void;
|
|
50
|
+
protected innerChange<StateType, DeepKeyType extends keyof Flatten<StateType>, ValueType extends Flatten<StateType>[DeepKeyType]>(stateForTypings: StateType, deepKey: DeepKeyType, value: DeepPartial<ValueType>): void;
|
|
51
|
+
delete<StateType extends object>(): <DeepKeyType extends keyof Flatten<StateType>, ValueType extends Flatten<StateType>[DeepKeyType] & Array<any> = Flatten<StateType>[DeepKeyType] & Array<any>>(key: DeepKeyType) => Flatten<StateType, never>[DeepKeyType];
|
|
52
|
+
protected innerDelete<StateType, DeepKeyType extends keyof Flatten<StateType>, ValueType extends Flatten<StateType>[DeepKeyType]>(stateForTypings: StateType, deepKey: DeepKeyType): ValueType;
|
|
53
|
+
push<StateType extends object>(): <DeepKeyType extends keyof Flatten<StateType>, ArrayType extends Flatten<StateType>[DeepKeyType] & Array<any> = Flatten<StateType>[DeepKeyType] & Array<any>>(key: DeepKeyType, ...elements: ArrayType) => void;
|
|
54
|
+
protected innerPush<StateType, DeepKeyType extends keyof Flatten<StateType>, ArrayType extends Flatten<StateType>[DeepKeyType] & Array<any> = Flatten<StateType>[DeepKeyType] & Array<any>>(stateForTypings: StateType, deepKey: DeepKeyType, ...elements: ArrayType): void;
|
|
55
|
+
splice<StateType extends object>(): <DeepKeyType extends keyof Flatten<StateType>, ArrayType extends Flatten<StateType>[DeepKeyType] & Array<any> = Flatten<StateType>[DeepKeyType] & Array<any>>(key: DeepKeyType, start: number, deleteCount?: number) => Flatten<StateType, never>[DeepKeyType][];
|
|
56
|
+
protected innerSplice<StateType, DeepKeyType extends keyof Flatten<StateType>, ArrayType extends Flatten<StateType>[DeepKeyType]>(stateForTypings: StateType, deepKey: DeepKeyType, start: number, deleteCount?: number): ArrayType[];
|
|
57
|
+
}
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
import { ObjectTools } from "@flashist/fcore";
|
|
2
|
+
import { BaseObjectWithGlobalDispatcher } from "../../base/BaseObjectWithGlobalDispatcher";
|
|
3
|
+
import { AppStateEventChangeTools } from "../tools/AppStateEventChangeTools";
|
|
4
|
+
import { AppStateDeepKeyTools } from "../tools/AppStateDeepKeyTools";
|
|
5
|
+
import { AppStateChangeType } from "./AppStateChangeType";
|
|
6
|
+
export class AppStateStorage extends BaseObjectWithGlobalDispatcher {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.isInitialized = false;
|
|
10
|
+
this.state = {};
|
|
11
|
+
this.pathsHelperDataCache = {};
|
|
12
|
+
this.preChangeHooks = [];
|
|
13
|
+
// SPLICE: END
|
|
14
|
+
// // public change<StateType extends object, ChangeType>(nestedPaths: ObjectNestedPathsType<StateType>, value: ChangeType): void {
|
|
15
|
+
// public change<StateType, DeepKeyType extends keyof Flatten<StateType>>(obj: StateType, key: DeepKeyType, value: Flatten<StateType>[DeepKeyType]): void {
|
|
16
|
+
// // AS ANY needed to calm compiler and autocomplete
|
|
17
|
+
// let tempObject: StateType = this.state as any;
|
|
18
|
+
// const pathsHelperData: IDeepKeyHelperVO = this.getPathsHelperData(nestedPaths as any);
|
|
19
|
+
// let nestedPathsCount: number = pathsHelperData.splitDeepKeyParts.length;
|
|
20
|
+
// for (let nestedPathIndex: number = 0; nestedPathIndex < nestedPathsCount; nestedPathIndex++) {
|
|
21
|
+
// const singlePath: string | number = pathsHelperData.splitDeepKeyParts[nestedPathIndex];
|
|
22
|
+
// if (nestedPathIndex === (nestedPathsCount - 1)) {
|
|
23
|
+
// // tempObject[singlePath] = value;
|
|
24
|
+
// ObjectTools.copySinglePropFromValue(tempObject, singlePath as string, value);
|
|
25
|
+
// } else {
|
|
26
|
+
// tempObject = tempObject[singlePath];
|
|
27
|
+
// }
|
|
28
|
+
// }
|
|
29
|
+
// this.dispatchChangeEvents(pathsHelperData);
|
|
30
|
+
// }
|
|
31
|
+
// public delete<StateType extends object>(nestedPaths: ObjectNestedPathsType<StateType>): void {
|
|
32
|
+
// // AS ANY needed to calm compiler and autocomplete
|
|
33
|
+
// let tempObject: StateType = this.state as any;
|
|
34
|
+
// const pathsHelperData: IDeepKeyHelperVO = this.getPathsHelperData(nestedPaths as any);
|
|
35
|
+
// let nestedPathsCount: number = pathsHelperData.splitDeepKeyParts.length;
|
|
36
|
+
// for (let nestedPathIndex: number = 0; nestedPathIndex < nestedPathsCount; nestedPathIndex++) {
|
|
37
|
+
// const singlePath: string | number = pathsHelperData.splitDeepKeyParts[nestedPathIndex];
|
|
38
|
+
// if (nestedPathIndex === (nestedPathsCount - 1)) {
|
|
39
|
+
// delete tempObject[singlePath];
|
|
40
|
+
// } else {
|
|
41
|
+
// tempObject = tempObject[singlePath];
|
|
42
|
+
// }
|
|
43
|
+
// }
|
|
44
|
+
// this.dispatchChangeEvents(pathsHelperData);
|
|
45
|
+
// }
|
|
46
|
+
// public addElements<StateType extends object, ElementType>(nestedPaths: ObjectNestedPathsType<StateType>, ...elements: ElementType[]): void {
|
|
47
|
+
// // AS ANY needed to calm compiler and autocomplete
|
|
48
|
+
// let tempObject: StateType = this.state as any;
|
|
49
|
+
// const pathsHelperData: IDeepKeyHelperVO = this.getPathsHelperData(nestedPaths as any);
|
|
50
|
+
// let nestedPathsCount: number = pathsHelperData.splitDeepKeyParts.length;
|
|
51
|
+
// for (let nestedPathIndex: number = 0; nestedPathIndex < nestedPathsCount; nestedPathIndex++) {
|
|
52
|
+
// const singlePath: string | number = pathsHelperData.splitDeepKeyParts[nestedPathIndex];
|
|
53
|
+
// tempObject = tempObject[singlePath];
|
|
54
|
+
// }
|
|
55
|
+
// (tempObject as Array<ElementType>).push(...elements);
|
|
56
|
+
// this.dispatchChangeEvents(pathsHelperData);
|
|
57
|
+
// }
|
|
58
|
+
// public removeElements<StateType extends object, ElementType>(nestedPaths: ObjectNestedPathsType<StateType>, ...elements: ElementType[]): void {
|
|
59
|
+
// // AS ANY needed to calm compiler and autocomplete
|
|
60
|
+
// let tempObject: StateType = this.state as any;
|
|
61
|
+
// const pathsHelperData: IDeepKeyHelperVO = this.getPathsHelperData(nestedPaths as any);
|
|
62
|
+
// let nestedPathsCount: number = pathsHelperData.splitDeepKeyParts.length;
|
|
63
|
+
// for (let nestedPathIndex: number = 0; nestedPathIndex < nestedPathsCount; nestedPathIndex++) {
|
|
64
|
+
// const singlePath: string | number = pathsHelperData.splitDeepKeyParts[nestedPathIndex];
|
|
65
|
+
// tempObject = tempObject[singlePath];
|
|
66
|
+
// }
|
|
67
|
+
// ArrayTools.removeItems((tempObject as Array<ElementType>), elements);
|
|
68
|
+
// this.dispatchChangeEvents(pathsHelperData);
|
|
69
|
+
// }
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* The purpose of the method is to "prepare" a "wrapper" of a part of a state,
|
|
73
|
+
* to avoid constant writings of the full path. So instead of:
|
|
74
|
+
* change<MyType>()("a.b.c.2.test1", value);
|
|
75
|
+
* change<MyType>()("a.b.c.2.test2", value);
|
|
76
|
+
* change<MyType>()("a.b.c.2.test3", value);
|
|
77
|
+
* change<MyType>()("a.b.c.2.test4", value);
|
|
78
|
+
*
|
|
79
|
+
* You can do
|
|
80
|
+
* const changeWrapper = changePropertyWrapper<MyType>("a.b.c.2");
|
|
81
|
+
* changeWrapper("test1", value)
|
|
82
|
+
* changeWrapper("test2", value)
|
|
83
|
+
* changeWrapper("test3", value)
|
|
84
|
+
* changeWrapper("test4", value)
|
|
85
|
+
*
|
|
86
|
+
* How to use:
|
|
87
|
+
* const testWrapper = this.changePropertyWrapper<TestState>()("b.complexObject");
|
|
88
|
+
testWrapper("test1", "1")
|
|
89
|
+
|
|
90
|
+
* @returns
|
|
91
|
+
*/
|
|
92
|
+
changePropertyWrapper() {
|
|
93
|
+
return (key) => {
|
|
94
|
+
return (wrapperKey, value) => {
|
|
95
|
+
this.innerChange({}, (`${key}.${wrapperKey}`), value);
|
|
96
|
+
};
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
initializeWith(initState) {
|
|
100
|
+
if (this.isInitialized) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
ObjectTools.copyProps(this.state, initState);
|
|
104
|
+
}
|
|
105
|
+
initializeComplete() {
|
|
106
|
+
this.isInitialized = true;
|
|
107
|
+
}
|
|
108
|
+
getState() {
|
|
109
|
+
return this.state;
|
|
110
|
+
}
|
|
111
|
+
getMutableState() {
|
|
112
|
+
return this.state;
|
|
113
|
+
}
|
|
114
|
+
dispatchChangeEvents(helperData) {
|
|
115
|
+
for (let singleDispatchingChangePath of helperData.dispatchingChangePaths) {
|
|
116
|
+
const eventName = AppStateEventChangeTools.getChangeEvent(singleDispatchingChangePath);
|
|
117
|
+
this.dispatchEvent(eventName);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
getPathsHelperData(deepKey, config = null) {
|
|
121
|
+
let result = null;
|
|
122
|
+
// Simple data changes can be cached
|
|
123
|
+
if (config && ObjectTools.isSimpleType(config.value)) {
|
|
124
|
+
result = this.pathsHelperDataCache[deepKey];
|
|
125
|
+
if (!result) {
|
|
126
|
+
result = AppStateDeepKeyTools.prepareDeepKeyHelperData(deepKey, config);
|
|
127
|
+
this.pathsHelperDataCache[deepKey] = result;
|
|
128
|
+
}
|
|
129
|
+
// Complex data changes can't be cached and will have to be recalculated every time
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
// TODO: find a way to cach complex-data changes
|
|
133
|
+
// (I am not sure it's possible, because it depends on the value-object structure which can be changed, even if the deepKey is the same)
|
|
134
|
+
result = AppStateDeepKeyTools.prepareDeepKeyHelperData(deepKey, config);
|
|
135
|
+
}
|
|
136
|
+
return result;
|
|
137
|
+
}
|
|
138
|
+
triggerPreChangeHooks(stateForTypings, deepKey, config) {
|
|
139
|
+
if (this.preChangeHooks.length <= 0) {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
this.preChangeHooks.forEach((item) => {
|
|
143
|
+
item(stateForTypings, deepKey, config);
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
getValue() {
|
|
147
|
+
return (key) => {
|
|
148
|
+
return this.innerGetValue({}, key);
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
innerGetValue(stateForTypings, deepKey) {
|
|
152
|
+
let result;
|
|
153
|
+
const pathsHelperData = this.getPathsHelperData(deepKey, null);
|
|
154
|
+
// console.log("AppStateStorage | innerChange __ pathsHelperData: ", pathsHelperData);
|
|
155
|
+
let tempObject = this.state;
|
|
156
|
+
let nestedPathsCount = pathsHelperData.splitDeepKeyParts.length;
|
|
157
|
+
for (let nestedPathIndex = 0; nestedPathIndex < nestedPathsCount; nestedPathIndex++) {
|
|
158
|
+
const singlePath = pathsHelperData.splitDeepKeyParts[nestedPathIndex];
|
|
159
|
+
if (nestedPathIndex === (nestedPathsCount - 1)) {
|
|
160
|
+
result = tempObject[singlePath];
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
tempObject = tempObject[singlePath];
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
return result;
|
|
167
|
+
}
|
|
168
|
+
processStateAction(stateForTypings, deepKey, config) {
|
|
169
|
+
let result;
|
|
170
|
+
const pathsHelperData = this.getPathsHelperData(deepKey, config);
|
|
171
|
+
// console.log("AppStateStorage | innerChange __ pathsHelperData: ", pathsHelperData);
|
|
172
|
+
let tempObject = this.state;
|
|
173
|
+
let nestedPathsCount = pathsHelperData.splitDeepKeyParts.length;
|
|
174
|
+
for (let nestedPathIndex = 0; nestedPathIndex < nestedPathsCount; nestedPathIndex++) {
|
|
175
|
+
const singlePath = pathsHelperData.splitDeepKeyParts[nestedPathIndex];
|
|
176
|
+
if (nestedPathIndex === (nestedPathsCount - 1)) {
|
|
177
|
+
// ObjectTools.copySinglePropFromValue(tempObject, singlePath as string, value);
|
|
178
|
+
if (config.changeType === AppStateChangeType.SUBSTITUTE) {
|
|
179
|
+
delete tempObject[singlePath];
|
|
180
|
+
ObjectTools.copySinglePropFromValue(tempObject, singlePath, config.value);
|
|
181
|
+
}
|
|
182
|
+
else if (config.changeType === AppStateChangeType.CHANGE) {
|
|
183
|
+
ObjectTools.copySinglePropFromValue(tempObject, singlePath, config.value);
|
|
184
|
+
}
|
|
185
|
+
else if (config.changeType === AppStateChangeType.DELETE) {
|
|
186
|
+
result = tempObject[singlePath];
|
|
187
|
+
delete tempObject[singlePath];
|
|
188
|
+
}
|
|
189
|
+
else if (config.changeType === AppStateChangeType.PUSH) {
|
|
190
|
+
tempObject[singlePath].push(...config.elements);
|
|
191
|
+
}
|
|
192
|
+
else if (config.changeType === AppStateChangeType.SPLICE) {
|
|
193
|
+
result = tempObject[singlePath].splice(config.start, config.deleteCount);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
tempObject = tempObject[singlePath];
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
this.dispatchChangeEvents(pathsHelperData);
|
|
201
|
+
return result;
|
|
202
|
+
}
|
|
203
|
+
// SUBSTITUTE: START
|
|
204
|
+
substitute() {
|
|
205
|
+
return (key, value) => {
|
|
206
|
+
this.innerSubstitute({}, key, value);
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
innerSubstitute(stateForTypings, deepKey, value) {
|
|
210
|
+
const config = {
|
|
211
|
+
changeType: AppStateChangeType.SUBSTITUTE,
|
|
212
|
+
value: value
|
|
213
|
+
};
|
|
214
|
+
// Pre Change Hooks: execute pre-change-hooks on every element: e.g. ecs module hooks might change prepare the new ecs components to sort their container-type-keys to make sure they are always the same q
|
|
215
|
+
this.triggerPreChangeHooks(stateForTypings, deepKey, config);
|
|
216
|
+
this.processStateAction(stateForTypings, deepKey, config);
|
|
217
|
+
}
|
|
218
|
+
// SUBSTITUTE: END
|
|
219
|
+
// CHANGE: START
|
|
220
|
+
change() {
|
|
221
|
+
return (key, value) => {
|
|
222
|
+
this.innerChange({}, key, value);
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
innerChange(stateForTypings, deepKey, value) {
|
|
226
|
+
const config = {
|
|
227
|
+
changeType: AppStateChangeType.CHANGE,
|
|
228
|
+
value: value
|
|
229
|
+
};
|
|
230
|
+
// Pre Change Hooks: execute pre-change-hooks on every element: e.g. ecs module hooks might change prepare the new ecs components to sort their container-type-keys to make sure they are always the same q
|
|
231
|
+
this.triggerPreChangeHooks(stateForTypings, deepKey, config);
|
|
232
|
+
this.processStateAction(stateForTypings, deepKey, config);
|
|
233
|
+
}
|
|
234
|
+
// CHANGE: END
|
|
235
|
+
// DELETE: START
|
|
236
|
+
delete() {
|
|
237
|
+
return (key) => {
|
|
238
|
+
return this.innerDelete({}, key);
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
innerDelete(stateForTypings, deepKey) {
|
|
242
|
+
const config = {
|
|
243
|
+
changeType: AppStateChangeType.DELETE
|
|
244
|
+
};
|
|
245
|
+
// Pre Change Hooks: execute pre-change-hooks on every element: e.g. ecs module hooks might change prepare the new ecs components to sort their container-type-keys to make sure they are always the same q
|
|
246
|
+
this.triggerPreChangeHooks(stateForTypings, deepKey, config);
|
|
247
|
+
return this.processStateAction(stateForTypings, deepKey, config);
|
|
248
|
+
}
|
|
249
|
+
// DELETE: END
|
|
250
|
+
// PUSH: START
|
|
251
|
+
push() {
|
|
252
|
+
return (key, ...elements) => {
|
|
253
|
+
return this.innerPush({}, key, ...elements);
|
|
254
|
+
};
|
|
255
|
+
}
|
|
256
|
+
innerPush(stateForTypings, deepKey, ...elements) {
|
|
257
|
+
const config = {
|
|
258
|
+
changeType: AppStateChangeType.PUSH,
|
|
259
|
+
elements: elements
|
|
260
|
+
};
|
|
261
|
+
// Pre Change Hooks: execute pre-change-hooks on every element: e.g. ecs module hooks might change prepare the new ecs components to sort their container-type-keys to make sure they are always the same q
|
|
262
|
+
this.triggerPreChangeHooks(stateForTypings, deepKey, config);
|
|
263
|
+
this.processStateAction(stateForTypings, deepKey, config);
|
|
264
|
+
}
|
|
265
|
+
// PUSH: END
|
|
266
|
+
// SPLICE: START
|
|
267
|
+
splice() {
|
|
268
|
+
return (key, start, deleteCount) => {
|
|
269
|
+
return this.innerSplice({}, key, start, deleteCount);
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
innerSplice(stateForTypings, deepKey, start, deleteCount) {
|
|
273
|
+
if (deleteCount === undefined) {
|
|
274
|
+
deleteCount = Number.MAX_SAFE_INTEGER;
|
|
275
|
+
}
|
|
276
|
+
const config = {
|
|
277
|
+
changeType: AppStateChangeType.SPLICE,
|
|
278
|
+
start: start,
|
|
279
|
+
deleteCount: deleteCount
|
|
280
|
+
};
|
|
281
|
+
// Pre Change Hooks: execute pre-change-hooks on every element: e.g. ecs module hooks might change prepare the new ecs components to sort their container-type-keys to make sure they are always the same q
|
|
282
|
+
this.triggerPreChangeHooks(stateForTypings, deepKey, config);
|
|
283
|
+
return this.processStateAction(stateForTypings, deepKey, config);
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
//# sourceMappingURL=AppStateStorage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppStateStorage.js","sourceRoot":"","sources":["../../../../src/state/data/AppStateStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,8BAA8B,EAAE,MAAM,2CAA2C,CAAC;AAC3F,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAKrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,MAAM,OAAO,eAAgB,SAAQ,8BAA8B;IAAnE;;QA+Bc,kBAAa,GAAY,KAAK,CAAC;QAE/B,UAAK,GAAW,EAAE,CAAC;QAEnB,yBAAoB,GAAiD,EAAE,CAAC;QAExE,mBAAc,GAAqB,EAAE,CAAC;QA8QhD,cAAc;QAEd,mIAAmI;QACnI,2JAA2J;QAC3J,yDAAyD;QACzD,qDAAqD;QACrD,6FAA6F;QAE7F,+EAA+E;QAC/E,qGAAqG;QACrG,kGAAkG;QAElG,4DAA4D;QAC5D,iDAAiD;QACjD,4FAA4F;QAE5F,mBAAmB;QACnB,mDAAmD;QACnD,YAAY;QACZ,QAAQ;QAER,kDAAkD;QAClD,IAAI;QAEJ,iGAAiG;QACjG,yDAAyD;QACzD,qDAAqD;QACrD,6FAA6F;QAE7F,+EAA+E;QAC/E,qGAAqG;QACrG,kGAAkG;QAElG,4DAA4D;QAC5D,6CAA6C;QAE7C,mBAAmB;QACnB,mDAAmD;QACnD,YAAY;QACZ,QAAQ;QAER,kDAAkD;QAClD,IAAI;QAEJ,+IAA+I;QAC/I,yDAAyD;QACzD,qDAAqD;QACrD,6FAA6F;QAE7F,+EAA+E;QAC/E,qGAAqG;QACrG,kGAAkG;QAClG,+CAA+C;QAC/C,QAAQ;QAER,4DAA4D;QAE5D,kDAAkD;QAClD,IAAI;QAEJ,kJAAkJ;QAClJ,yDAAyD;QACzD,qDAAqD;QACrD,6FAA6F;QAE7F,+EAA+E;QAC/E,qGAAqG;QACrG,kGAAkG;QAClG,+CAA+C;QAC/C,QAAQ;QAER,4EAA4E;QAE5E,kDAAkD;QAClD,IAAI;IACR,CAAC;IA5XG;;;;;;;;;;;;;;;;;;;;OAoBG;IACI,qBAAqB;QACxB,OAAO,CAAkH,GAAgB,EAAE,EAAE;YACzI,OAAO,CAA6D,UAA8B,EAAE,KAAiE,EAAQ,EAAE;gBAC3K,IAAI,CAAC,WAAW,CAAC,EAAe,EAAE,CAAC,GAAG,GAAa,IAAI,UAAoB,EAAE,CAAQ,EAAE,KAAK,CAAC,CAAC;YAClG,CAAC,CAAA;QACL,CAAC,CAAA;IACL,CAAC;IAUM,cAAc,CAA2B,SAAoB;QAChE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,OAAO;QACX,CAAC;QAED,WAAW,CAAC,SAAS,CACjB,IAAI,CAAC,KAAK,EACV,SAAS,CACZ,CAAC;IACN,CAAC;IAEM,kBAAkB;QACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC9B,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,KAAY,CAAC;IAC7B,CAAC;IAEM,eAAe;QAClB,OAAO,IAAI,CAAC,KAAY,CAAC;IAC7B,CAAC;IAES,oBAAoB,CAAC,UAA4B;QACvD,KAAK,IAAI,2BAA2B,IAAI,UAAU,CAAC,sBAAsB,EAAE,CAAC;YACxE,MAAM,SAAS,GAAW,wBAAwB,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;YAC/F,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;IACL,CAAC;IAES,kBAAkB,CAAC,OAAe,EAAE,SAAkC,IAAI;QAChF,IAAI,MAAM,GAAqB,IAAI,CAAC;QACpC,oCAAoC;QACpC,IAAI,MAAM,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,MAAM,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBACxE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC;YAChD,CAAC;YAED,mFAAmF;QACvF,CAAC;aAAM,CAAC;YACJ,iDAAiD;YACjD,yIAAyI;YACzI,MAAM,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5E,CAAC;QAGD,OAAO,MAAM,CAAC;IAClB,CAAC;IAES,qBAAqB,CAA0D,eAA0B,EAAE,OAAoB,EAAE,MAA+B;QACtK,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO;QACX,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,OAAO,CACvB,CAAC,IAAoB,EAAE,EAAE;YACrB,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC,CACJ,CAAC;IACN,CAAC;IAEM,QAAQ;QACX,OAAO,CAA+C,GAAgB,EAA4C,EAAE;YAChH,OAAO,IAAI,CAAC,aAAa,CAAC,EAAe,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC,CAAA;IACL,CAAC;IAES,aAAa,CAA6G,eAA0B,EAAE,OAAoB;QAEhL,IAAI,MAA0B,CAAC;QAE/B,MAAM,eAAe,GAAqB,IAAI,CAAC,kBAAkB,CAAC,OAAiB,EAAE,IAAI,CAAC,CAAC;QAC3F,sFAAsF;QAEtF,IAAI,UAAU,GAAQ,IAAI,CAAC,KAAK,CAAC;QACjC,IAAI,gBAAgB,GAAW,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC;QACxE,KAAK,IAAI,eAAe,GAAW,CAAC,EAAE,eAAe,GAAG,gBAAgB,EAAE,eAAe,EAAE,EAAE,CAAC;YAC1F,MAAM,UAAU,GAAoB,eAAe,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;YAEvF,IAAI,eAAe,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC7C,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;YAEnC,CAAC;iBAAM,CAAC;gBACJ,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAES,kBAAkB,CAA6G,eAA0B,EAAE,OAAoB,EAAE,MAA0C;QACjO,IAAI,MAAW,CAAC;QAEhB,MAAM,eAAe,GAAqB,IAAI,CAAC,kBAAkB,CAAC,OAAiB,EAAE,MAAM,CAAC,CAAC;QAC7F,sFAAsF;QAEtF,IAAI,UAAU,GAAQ,IAAI,CAAC,KAAK,CAAC;QACjC,IAAI,gBAAgB,GAAW,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC;QACxE,KAAK,IAAI,eAAe,GAAW,CAAC,EAAE,eAAe,GAAG,gBAAgB,EAAE,eAAe,EAAE,EAAE,CAAC;YAC1F,MAAM,UAAU,GAAoB,eAAe,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;YAEvF,IAAI,eAAe,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC7C,gFAAgF;gBAEhF,IAAI,MAAM,CAAC,UAAU,KAAK,kBAAkB,CAAC,UAAU,EAAE,CAAC;oBACtD,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC;oBAC9B,WAAW,CAAC,uBAAuB,CAAC,UAAU,EAAE,UAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBAExF,CAAC;qBAAM,IAAI,MAAM,CAAC,UAAU,KAAK,kBAAkB,CAAC,MAAM,EAAE,CAAC;oBACzD,WAAW,CAAC,uBAAuB,CAAC,UAAU,EAAE,UAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBAExF,CAAC;qBAAM,IAAI,MAAM,CAAC,UAAU,KAAK,kBAAkB,CAAC,MAAM,EAAE,CAAC;oBACzD,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;oBAChC,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC;gBAElC,CAAC;qBAAM,IAAI,MAAM,CAAC,UAAU,KAAK,kBAAkB,CAAC,IAAI,EAAE,CAAC;oBACvD,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAEpD,CAAC;qBAAM,IAAI,MAAM,CAAC,UAAU,KAAK,kBAAkB,CAAC,MAAM,EAAE,CAAC;oBACzD,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC7E,CAAC;YAEL,CAAC;iBAAM,CAAC;gBACJ,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;QAE3C,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,oBAAoB;IACb,UAAU;QACb,OAAO,CAA+C,GAAgB,EAAE,KAAmD,EAAQ,EAAE;YACjI,IAAI,CAAC,eAAe,CAAC,EAAe,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC,CAAA;IACL,CAAC;IAES,eAAe,CAA6G,eAA0B,EAAE,OAAoB,EAAE,KAA6B;QACjN,MAAM,MAAM,GAA4B;YACpC,UAAU,EAAE,kBAAkB,CAAC,UAAU;YACzC,KAAK,EAAE,KAAK;SACf,CAAC;QAEF,2MAA2M;QAC3M,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE7D,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IACD,kBAAkB;IAGlB,gBAAgB;IAET,MAAM;QACT,OAAO,CAA+C,GAAgB,EAAE,KAAmD,EAAQ,EAAE;YACjI,IAAI,CAAC,WAAW,CAAC,EAAe,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC,CAAA;IACL,CAAC;IAES,WAAW,CAA6G,eAA0B,EAAE,OAAoB,EAAE,KAA6B;QAC7M,MAAM,MAAM,GAA4B;YACpC,UAAU,EAAE,kBAAkB,CAAC,MAAM;YACrC,KAAK,EAAE,KAAK;SACf,CAAC;QAEF,2MAA2M;QAC3M,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE7D,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,cAAc;IAEd,gBAAgB;IACT,MAAM;QACT,OAAO,CAGL,GAAgB,EAAE,EAAE;YAClB,OAAO,IAAI,CAAC,WAAW,CAAC,EAAe,EAAE,GAAG,CAAC,CAAC;QAClD,CAAC,CAAA;IACL,CAAC;IAES,WAAW,CAKf,eAA0B,EAAE,OAAoB;QAElD,MAAM,MAAM,GAA4B;YACpC,UAAU,EAAE,kBAAkB,CAAC,MAAM;SACxC,CAAC;QAEF,2MAA2M;QAC3M,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE7D,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;IACD,cAAc;IAGd,cAAc;IACP,IAAI;QACP,OAAO,CAGL,GAAgB,EAAE,GAAG,QAAmB,EAAE,EAAE;YAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,EAAe,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC;QAC7D,CAAC,CAAA;IACL,CAAC;IAES,SAAS,CAKb,eAA0B,EAAE,OAAoB,EAAE,GAAG,QAAmB;QAE1E,MAAM,MAAM,GAA4B;YACpC,UAAU,EAAE,kBAAkB,CAAC,IAAI;YACnC,QAAQ,EAAE,QAAQ;SACrB,CAAC;QAEF,2MAA2M;QAC3M,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE7D,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IACD,YAAY;IAGZ,gBAAgB;IACT,MAAM;QACT,OAAO,CAGL,GAAgB,EAAE,KAAa,EAAE,WAAoB,EAAE,EAAE;YACvD,OAAO,IAAI,CAAC,WAAW,CAAC,EAAe,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QACtE,CAAC,CAAA;IACL,CAAC;IAES,WAAW,CAKf,eAA0B,EAAE,OAAoB,EAAE,KAAa,EAAE,WAAoB;QAEvF,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAC1C,CAAC;QAED,MAAM,MAAM,GAA4B;YACpC,UAAU,EAAE,kBAAkB,CAAC,MAAM;YACrC,KAAK,EAAE,KAAK;YACZ,WAAW,EAAE,WAAW;SAC3B,CAAC;QAEF,2MAA2M;QAC3M,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE7D,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;CA4EJ"}
|