@saolabs/client 1.0.0 → 1.1.0
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/README.md +52 -195
- package/dist/index.d.ts +20 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -3
- package/dist/index.js.map +1 -1
- package/dist/plugins.d.ts +2 -2
- package/dist/plugins.js +2 -2
- package/dist/src/core/app/Application.d.ts +25 -15
- package/dist/src/core/app/Application.d.ts.map +1 -1
- package/dist/src/core/app/Application.js +55 -18
- package/dist/src/core/app/Application.js.map +1 -1
- package/dist/src/core/bootstrap/app.d.ts +1 -1
- package/dist/src/core/bootstrap/app.d.ts.map +1 -1
- package/dist/src/core/bootstrap/app.js +77 -4
- package/dist/src/core/bootstrap/app.js.map +1 -1
- package/dist/src/core/bootstrap/bundle.d.ts +41 -0
- package/dist/src/core/bootstrap/bundle.d.ts.map +1 -0
- package/dist/src/core/bootstrap/bundle.js +98 -0
- package/dist/src/core/bootstrap/bundle.js.map +1 -0
- package/dist/src/core/bootstrap/providers/ApiServiceProvider.d.ts +1 -1
- package/dist/src/core/bootstrap/providers/ApiServiceProvider.d.ts.map +1 -1
- package/dist/src/core/bootstrap/providers/ApiServiceProvider.js +3 -3
- package/dist/src/core/bootstrap/providers/ApiServiceProvider.js.map +1 -1
- package/dist/src/core/bootstrap/providers/CoreServiceProvider.d.ts +1 -1
- package/dist/src/core/bootstrap/providers/CoreServiceProvider.d.ts.map +1 -1
- package/dist/src/core/bootstrap/providers/CoreServiceProvider.js +11 -8
- package/dist/src/core/bootstrap/providers/CoreServiceProvider.js.map +1 -1
- package/dist/src/core/bootstrap/providers/HelperServiceProvider.d.ts +3 -1
- package/dist/src/core/bootstrap/providers/HelperServiceProvider.d.ts.map +1 -1
- package/dist/src/core/bootstrap/providers/HelperServiceProvider.js +8 -3
- package/dist/src/core/bootstrap/providers/HelperServiceProvider.js.map +1 -1
- package/dist/src/core/bootstrap/providers/RouteServiceProvider.d.ts +2 -1
- package/dist/src/core/bootstrap/providers/RouteServiceProvider.d.ts.map +1 -1
- package/dist/src/core/bootstrap/providers/RouteServiceProvider.js +14 -4
- package/dist/src/core/bootstrap/providers/RouteServiceProvider.js.map +1 -1
- package/dist/src/core/bootstrap/providers/ServiceProvider.d.ts +4 -4
- package/dist/src/core/bootstrap/providers/ServiceProvider.d.ts.map +1 -1
- package/dist/src/core/bootstrap/providers/ServiceProvider.js +5 -5
- package/dist/src/core/bootstrap/providers/ServiceProvider.js.map +1 -1
- package/dist/src/core/bootstrap/providers/ViewServiceProvider.d.ts +1 -1
- package/dist/src/core/bootstrap/providers/ViewServiceProvider.d.ts.map +1 -1
- package/dist/src/core/bootstrap/providers/ViewServiceProvider.js +3 -3
- package/dist/src/core/bootstrap/providers/ViewServiceProvider.js.map +1 -1
- package/dist/src/core/bootstrap/providers/default-providers.d.ts +1 -1
- package/dist/src/core/bootstrap/providers/default-providers.d.ts.map +1 -1
- package/dist/src/core/bootstrap/providers/default-providers.js +44 -11
- package/dist/src/core/bootstrap/providers/default-providers.js.map +1 -1
- package/dist/src/core/bootstrap/providers/index.d.ts +9 -9
- package/dist/src/core/bootstrap/providers/index.d.ts.map +1 -1
- package/dist/src/core/bootstrap/providers/index.js +8 -8
- package/dist/src/core/bootstrap/providers/index.js.map +1 -1
- package/dist/src/core/bootstrap/providers/provider-order.d.ts +1 -1
- package/dist/src/core/bootstrap/providers/provider-order.d.ts.map +1 -1
- package/dist/src/core/bootstrap/ssr.d.ts +47 -0
- package/dist/src/core/bootstrap/ssr.d.ts.map +1 -0
- package/dist/src/core/bootstrap/ssr.js +129 -0
- package/dist/src/core/bootstrap/ssr.js.map +1 -0
- package/dist/src/core/cache/ViewCache.d.ts +1 -1
- package/dist/src/core/cache/ViewCache.d.ts.map +1 -1
- package/dist/src/core/cache/index.d.ts +1 -1
- package/dist/src/core/cache/index.d.ts.map +1 -1
- package/dist/src/core/cache/index.js +1 -1
- package/dist/src/core/cache/index.js.map +1 -1
- package/dist/src/core/contracts/ApplicationInterface.d.ts +15 -11
- package/dist/src/core/contracts/ApplicationInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/BlockInterface.d.ts +10 -10
- package/dist/src/core/contracts/BlockInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/BundleInterface.d.ts +38 -0
- package/dist/src/core/contracts/BundleInterface.d.ts.map +1 -0
- package/dist/src/core/contracts/BundleInterface.js +2 -0
- package/dist/src/core/contracts/BundleInterface.js.map +1 -0
- package/dist/src/core/contracts/ComponentInterface.d.ts +7 -6
- package/dist/src/core/contracts/ComponentInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/ElementInterface.d.ts +91 -27
- package/dist/src/core/contracts/ElementInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/HeadServiceInterface.d.ts +37 -0
- package/dist/src/core/contracts/HeadServiceInterface.d.ts.map +1 -0
- package/dist/src/core/contracts/HeadServiceInterface.js +3 -0
- package/dist/src/core/contracts/HeadServiceInterface.js.map +1 -0
- package/dist/src/core/contracts/HelperInterface.d.ts +9 -1
- package/dist/src/core/contracts/HelperInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/HttpServiceInterface.d.ts +3 -0
- package/dist/src/core/contracts/HttpServiceInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/MarkerInterface.d.ts +29 -44
- package/dist/src/core/contracts/MarkerInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/ReactiveInterface.d.ts +9 -9
- package/dist/src/core/contracts/ReactiveInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/RouterInterface.d.ts +5 -2
- package/dist/src/core/contracts/RouterInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/SectionInterface.d.ts +48 -0
- package/dist/src/core/contracts/SectionInterface.d.ts.map +1 -0
- package/dist/src/core/contracts/SectionInterface.js +2 -0
- package/dist/src/core/contracts/SectionInterface.js.map +1 -0
- package/dist/src/core/contracts/ServiceProviderInterface.d.ts +3 -3
- package/dist/src/core/contracts/ServiceProviderInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/ViewControllerInterface.d.ts +116 -15
- package/dist/src/core/contracts/ViewControllerInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/ViewInterface.d.ts +31 -5
- package/dist/src/core/contracts/ViewInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/ViewManagerInterface.d.ts +47 -5
- package/dist/src/core/contracts/ViewManagerInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/ViewStateInterface.d.ts +39 -2
- package/dist/src/core/contracts/ViewStateInterface.d.ts.map +1 -1
- package/dist/src/core/contracts/common.d.ts +3 -3
- package/dist/src/core/contracts/common.js +3 -3
- package/dist/src/core/contracts/utils.d.ts +19 -19
- package/dist/src/core/contracts/utils.d.ts.map +1 -1
- package/dist/src/core/contracts/views.d.ts +1 -22
- package/dist/src/core/contracts/views.d.ts.map +1 -1
- package/dist/src/core/devtools/hook.d.ts +66 -0
- package/dist/src/core/devtools/hook.d.ts.map +1 -0
- package/dist/src/core/devtools/hook.js +114 -0
- package/dist/src/core/devtools/hook.js.map +1 -0
- package/dist/src/core/devtools/index.d.ts +34 -0
- package/dist/src/core/devtools/index.d.ts.map +1 -0
- package/dist/src/core/devtools/index.js +33 -0
- package/dist/src/core/devtools/index.js.map +1 -0
- package/dist/src/core/devtools/inspector.d.ts +31 -0
- package/dist/src/core/devtools/inspector.d.ts.map +1 -0
- package/dist/src/core/devtools/inspector.js +249 -0
- package/dist/src/core/devtools/inspector.js.map +1 -0
- package/dist/src/core/elements/Block.d.ts +9 -7
- package/dist/src/core/elements/Block.d.ts.map +1 -1
- package/dist/src/core/elements/Block.js +33 -9
- package/dist/src/core/elements/Block.js.map +1 -1
- package/dist/src/core/elements/BlockOutlet.d.ts +19 -8
- package/dist/src/core/elements/BlockOutlet.d.ts.map +1 -1
- package/dist/src/core/elements/BlockOutlet.js +57 -13
- package/dist/src/core/elements/BlockOutlet.js.map +1 -1
- package/dist/src/core/elements/Component.d.ts +83 -11
- package/dist/src/core/elements/Component.d.ts.map +1 -1
- package/dist/src/core/elements/Component.js +334 -13
- package/dist/src/core/elements/Component.js.map +1 -1
- package/dist/src/core/elements/ForeachSlotCache.d.ts +95 -0
- package/dist/src/core/elements/ForeachSlotCache.d.ts.map +1 -0
- package/dist/src/core/elements/ForeachSlotCache.js +149 -0
- package/dist/src/core/elements/ForeachSlotCache.js.map +1 -0
- package/dist/src/core/elements/Fragment.d.ts +19 -13
- package/dist/src/core/elements/Fragment.d.ts.map +1 -1
- package/dist/src/core/elements/Fragment.js +43 -20
- package/dist/src/core/elements/Fragment.js.map +1 -1
- package/dist/src/core/elements/Html.d.ts +89 -12
- package/dist/src/core/elements/Html.d.ts.map +1 -1
- package/dist/src/core/elements/Html.js +707 -106
- package/dist/src/core/elements/Html.js.map +1 -1
- package/dist/src/core/elements/Output.d.ts +34 -10
- package/dist/src/core/elements/Output.d.ts.map +1 -1
- package/dist/src/core/elements/Output.js +141 -26
- package/dist/src/core/elements/Output.js.map +1 -1
- package/dist/src/core/elements/Reactive.d.ts +85 -14
- package/dist/src/core/elements/Reactive.d.ts.map +1 -1
- package/dist/src/core/elements/Reactive.js +315 -41
- package/dist/src/core/elements/Reactive.js.map +1 -1
- package/dist/src/core/elements/TextElement.d.ts +11 -7
- package/dist/src/core/elements/TextElement.d.ts.map +1 -1
- package/dist/src/core/elements/TextElement.js +18 -11
- package/dist/src/core/elements/TextElement.js.map +1 -1
- package/dist/src/core/elements/Wrapper.d.ts +24 -13
- package/dist/src/core/elements/Wrapper.d.ts.map +1 -1
- package/dist/src/core/elements/Wrapper.js +65 -8
- package/dist/src/core/elements/Wrapper.js.map +1 -1
- package/dist/src/core/elements/Yield.d.ts +10 -9
- package/dist/src/core/elements/Yield.d.ts.map +1 -1
- package/dist/src/core/elements/Yield.js +31 -19
- package/dist/src/core/elements/Yield.js.map +1 -1
- package/dist/src/core/elements/helpers.d.ts +7 -7
- package/dist/src/core/elements/helpers.d.ts.map +1 -1
- package/dist/src/core/elements/helpers.js +4 -4
- package/dist/src/core/elements/index.d.ts +12 -11
- package/dist/src/core/elements/index.d.ts.map +1 -1
- package/dist/src/core/elements/index.js +12 -11
- package/dist/src/core/elements/index.js.map +1 -1
- package/dist/src/core/elements/reconcileChildren.d.ts +7 -0
- package/dist/src/core/elements/reconcileChildren.d.ts.map +1 -0
- package/dist/src/core/elements/reconcileChildren.js +74 -0
- package/dist/src/core/elements/reconcileChildren.js.map +1 -0
- package/dist/src/core/helpers/ApiClient.d.ts.map +1 -0
- package/dist/src/core/{hellpers → helpers}/ApiClient.js +10 -1
- package/dist/src/core/helpers/ApiClient.js.map +1 -0
- package/dist/src/core/helpers/app.d.ts +3 -0
- package/dist/src/core/helpers/app.d.ts.map +1 -0
- package/dist/src/core/{hellpers → helpers}/app.js +11 -1
- package/dist/src/core/helpers/app.js.map +1 -0
- package/dist/src/core/helpers/transition.d.ts +34 -0
- package/dist/src/core/helpers/transition.d.ts.map +1 -0
- package/dist/src/core/helpers/transition.js +118 -0
- package/dist/src/core/helpers/transition.js.map +1 -0
- package/dist/src/core/{hellpers → helpers}/utils.d.ts +2 -2
- package/dist/src/core/helpers/utils.d.ts.map +1 -0
- package/dist/src/core/{hellpers → helpers}/utils.js +4 -4
- package/dist/src/core/helpers/utils.js.map +1 -0
- package/dist/src/core/helpers/view.d.ts +39 -0
- package/dist/src/core/helpers/view.d.ts.map +1 -0
- package/dist/src/core/helpers/view.js +286 -0
- package/dist/src/core/helpers/view.js.map +1 -0
- package/dist/src/core/routers/Router.d.ts +108 -7
- package/dist/src/core/routers/Router.d.ts.map +1 -1
- package/dist/src/core/routers/Router.js +444 -68
- package/dist/src/core/routers/Router.js.map +1 -1
- package/dist/src/core/routers/index.d.ts +2 -2
- package/dist/src/core/routers/index.d.ts.map +1 -1
- package/dist/src/core/routers/index.js +1 -1
- package/dist/src/core/routers/index.js.map +1 -1
- package/dist/src/core/services/AssetManager.d.ts +112 -0
- package/dist/src/core/services/AssetManager.d.ts.map +1 -0
- package/dist/src/core/services/AssetManager.js +361 -0
- package/dist/src/core/services/AssetManager.js.map +1 -0
- package/dist/src/core/services/BlockManager.d.ts +73 -2
- package/dist/src/core/services/BlockManager.d.ts.map +1 -1
- package/dist/src/core/services/BlockManager.js +270 -48
- package/dist/src/core/services/BlockManager.js.map +1 -1
- package/dist/src/core/services/DomService.js +3 -3
- package/dist/src/core/services/DomService.js.map +1 -1
- package/dist/src/core/services/HeadService.d.ts +24 -0
- package/dist/src/core/services/HeadService.d.ts.map +1 -0
- package/dist/src/core/services/HeadService.js +120 -0
- package/dist/src/core/services/HeadService.js.map +1 -0
- package/dist/src/core/services/HelperService.d.ts +14 -3
- package/dist/src/core/services/HelperService.d.ts.map +1 -1
- package/dist/src/core/services/HelperService.js +32 -2
- package/dist/src/core/services/HelperService.js.map +1 -1
- package/dist/src/core/services/HttpService.d.ts +8 -0
- package/dist/src/core/services/HttpService.d.ts.map +1 -1
- package/dist/src/core/services/HttpService.js +121 -47
- package/dist/src/core/services/HttpService.js.map +1 -1
- package/dist/src/core/services/MarkerRegistry.d.ts +51 -8
- package/dist/src/core/services/MarkerRegistry.d.ts.map +1 -1
- package/dist/src/core/services/MarkerRegistry.js +135 -14
- package/dist/src/core/services/MarkerRegistry.js.map +1 -1
- package/dist/src/core/services/PageCache.d.ts +101 -0
- package/dist/src/core/services/PageCache.d.ts.map +1 -0
- package/dist/src/core/services/PageCache.js +184 -0
- package/dist/src/core/services/PageCache.js.map +1 -0
- package/dist/src/core/services/SectionManager.d.ts +100 -0
- package/dist/src/core/services/SectionManager.d.ts.map +1 -0
- package/dist/src/core/services/SectionManager.js +408 -0
- package/dist/src/core/services/SectionManager.js.map +1 -0
- package/dist/src/core/services/StorageService.js +1 -1
- package/dist/src/core/services/TranslationService.d.ts +21 -0
- package/dist/src/core/services/TranslationService.d.ts.map +1 -0
- package/dist/src/core/services/TranslationService.js +95 -0
- package/dist/src/core/services/TranslationService.js.map +1 -0
- package/dist/src/core/services/index.d.ts +11 -8
- package/dist/src/core/services/index.d.ts.map +1 -1
- package/dist/src/core/services/index.js +11 -8
- package/dist/src/core/services/index.js.map +1 -1
- package/dist/src/core/types/utils.d.ts +8 -8
- package/dist/src/core/types/utils.d.ts.map +1 -1
- package/dist/src/core/view/LoopContext.d.ts +21 -1
- package/dist/src/core/view/LoopContext.d.ts.map +1 -1
- package/dist/src/core/view/LoopContext.js +36 -0
- package/dist/src/core/view/LoopContext.js.map +1 -1
- package/dist/src/core/view/ResourceScope.d.ts +38 -0
- package/dist/src/core/view/ResourceScope.d.ts.map +1 -0
- package/dist/src/core/view/ResourceScope.js +167 -0
- package/dist/src/core/view/ResourceScope.js.map +1 -0
- package/dist/src/core/view/Section.d.ts +17 -32
- package/dist/src/core/view/Section.d.ts.map +1 -1
- package/dist/src/core/view/Section.js +14 -55
- package/dist/src/core/view/Section.js.map +1 -1
- package/dist/src/core/view/View.d.ts +43 -7
- package/dist/src/core/view/View.d.ts.map +1 -1
- package/dist/src/core/view/View.js +22 -4
- package/dist/src/core/view/View.js.map +1 -1
- package/dist/src/core/view/ViewController.d.ts +313 -40
- package/dist/src/core/view/ViewController.d.ts.map +1 -1
- package/dist/src/core/view/ViewController.js +1002 -147
- package/dist/src/core/view/ViewController.js.map +1 -1
- package/dist/src/core/view/ViewManager.d.ts +318 -27
- package/dist/src/core/view/ViewManager.d.ts.map +1 -1
- package/dist/src/core/view/ViewManager.js +1199 -258
- package/dist/src/core/view/ViewManager.js.map +1 -1
- package/dist/src/core/view/ViewState.d.ts +185 -6
- package/dist/src/core/view/ViewState.d.ts.map +1 -1
- package/dist/src/core/view/ViewState.js +851 -123
- package/dist/src/core/view/ViewState.js.map +1 -1
- package/dist/src/core/view/index.d.ts +5 -5
- package/dist/src/core/view/index.d.ts.map +1 -1
- package/dist/src/core/view/index.js +5 -5
- package/dist/src/core/view/index.js.map +1 -1
- package/dist/src/testing/index.d.ts +69 -0
- package/dist/src/testing/index.d.ts.map +1 -0
- package/dist/src/testing/index.js +140 -0
- package/dist/src/testing/index.js.map +1 -0
- package/index.ts +29 -5
- package/package.json +30 -21
- package/plugins.ts +2 -2
- package/src/core/app/Application.ts +72 -31
- package/src/core/bootstrap/app.ts +84 -6
- package/src/core/bootstrap/bundle.ts +101 -0
- package/src/core/bootstrap/providers/ApiServiceProvider.ts +4 -4
- package/src/core/bootstrap/providers/CoreServiceProvider.ts +14 -8
- package/src/core/bootstrap/providers/HelperServiceProvider.ts +8 -3
- package/src/core/bootstrap/providers/RouteServiceProvider.ts +15 -4
- package/src/core/bootstrap/providers/ServiceProvider.ts +8 -8
- package/src/core/bootstrap/providers/ViewServiceProvider.ts +3 -3
- package/src/core/bootstrap/providers/default-providers.ts +51 -16
- package/src/core/bootstrap/providers/index.ts +9 -9
- package/src/core/bootstrap/providers/provider-order.test.ts +16 -27
- package/src/core/bootstrap/providers/provider-order.ts +1 -1
- package/src/core/bootstrap/ssr.ts +141 -0
- package/src/core/cache/ViewCache.ts +1 -1
- package/src/core/cache/index.ts +1 -1
- package/src/core/contracts/ApplicationInterface.ts +15 -11
- package/src/core/contracts/BlockInterface.ts +18 -18
- package/src/core/contracts/BundleInterface.ts +40 -0
- package/src/core/contracts/ComponentInterface.ts +7 -6
- package/src/core/contracts/ElementInterface.ts +95 -27
- package/src/core/contracts/HeadServiceInterface.ts +41 -0
- package/src/core/contracts/HelperInterface.ts +9 -1
- package/src/core/contracts/HttpServiceInterface.ts +3 -0
- package/src/core/contracts/MarkerInterface.ts +22 -49
- package/src/core/contracts/ReactiveInterface.ts +9 -9
- package/src/core/contracts/RouterInterface.ts +5 -2
- package/src/core/contracts/SectionInterface.ts +49 -0
- package/src/core/contracts/ServiceProviderInterface.ts +3 -3
- package/src/core/contracts/ViewControllerInterface.ts +124 -16
- package/src/core/contracts/ViewInterface.ts +34 -5
- package/src/core/contracts/ViewManagerInterface.ts +40 -5
- package/src/core/contracts/ViewStateInterface.ts +39 -2
- package/src/core/contracts/common.ts +3 -3
- package/src/core/contracts/utils.ts +19 -19
- package/src/core/contracts/views.ts +2 -22
- package/src/core/devtools/hook.ts +142 -0
- package/src/core/devtools/index.ts +38 -0
- package/src/core/devtools/inspector.ts +270 -0
- package/src/core/elements/Block.ts +43 -21
- package/src/core/elements/BlockOutlet.ts +61 -21
- package/src/core/elements/Component.ts +352 -18
- package/src/core/elements/ElementManager.ts +9 -9
- package/src/core/elements/ForeachSlotCache.ts +170 -0
- package/src/core/elements/Fragment.ts +50 -32
- package/src/core/elements/Html.ts +696 -117
- package/src/core/elements/Output.ts +147 -30
- package/src/core/elements/Reactive.ts +329 -52
- package/src/core/elements/TextElement.ts +25 -16
- package/src/core/elements/Wrapper.ts +84 -18
- package/src/core/elements/Yield.ts +35 -24
- package/src/core/elements/helpers.ts +12 -12
- package/src/core/elements/index.ts +25 -24
- package/src/core/elements/reconcileChildren.ts +70 -0
- package/src/core/{hellpers → helpers}/ApiClient.ts +8 -1
- package/src/core/{hellpers → helpers}/app.ts +13 -2
- package/src/core/helpers/transition.ts +127 -0
- package/src/core/{hellpers → helpers}/utils.ts +4 -4
- package/src/core/helpers/view.ts +283 -0
- package/src/core/routers/Router.ts +458 -64
- package/src/core/routers/index.ts +2 -2
- package/src/core/services/AssetManager.ts +387 -0
- package/src/core/services/BlockManager.ts +272 -50
- package/src/core/services/DomService.ts +3 -3
- package/src/core/services/HeadService.ts +124 -0
- package/src/core/services/HelperService.ts +34 -4
- package/src/core/services/HttpService.ts +116 -55
- package/src/core/services/MarkerRegistry.ts +142 -16
- package/src/core/services/PageCache.ts +239 -0
- package/src/core/services/SectionManager.ts +387 -0
- package/src/core/services/StorageService.ts +1 -1
- package/src/core/services/TranslationService.ts +91 -0
- package/src/core/services/index.ts +11 -8
- package/src/core/types/utils.ts +8 -8
- package/src/core/view/LoopContext.ts +38 -1
- package/src/core/view/ResourceScope.ts +174 -0
- package/src/core/view/Section.ts +21 -68
- package/src/core/view/View.ts +57 -8
- package/src/core/view/ViewController.ts +1070 -186
- package/src/core/view/ViewManager.ts +1346 -272
- package/src/core/view/ViewState.ts +834 -116
- package/src/core/view/index.ts +5 -5
- package/src/testing/index.ts +184 -0
- package/dist/src/core/hellpers/ApiClient.d.ts.map +0 -1
- package/dist/src/core/hellpers/ApiClient.js.map +0 -1
- package/dist/src/core/hellpers/app.d.ts +0 -3
- package/dist/src/core/hellpers/app.d.ts.map +0 -1
- package/dist/src/core/hellpers/app.js.map +0 -1
- package/dist/src/core/hellpers/utils.d.ts.map +0 -1
- package/dist/src/core/hellpers/utils.js.map +0 -1
- package/dist/src/core/services/MarkerService.d.ts +0 -299
- package/dist/src/core/services/MarkerService.d.ts.map +0 -1
- package/dist/src/core/services/MarkerService.js +0 -723
- package/dist/src/core/services/MarkerService.js.map +0 -1
- package/src/core/services/MarkerService.ts +0 -923
- /package/dist/src/core/{hellpers → helpers}/ApiClient.d.ts +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ViewController } from "./ViewController";
|
|
1
|
+
import { ViewController } from "./ViewController.js";
|
|
2
2
|
/**
|
|
3
|
-
* View — the base class for all views in
|
|
3
|
+
* View — the base class for all views in SaoView.
|
|
4
4
|
*
|
|
5
5
|
* A View is the unit that the user writes. It contains:
|
|
6
6
|
* - User-defined properties (reactive state, computed values)
|
|
@@ -48,6 +48,24 @@ export class View {
|
|
|
48
48
|
$__setup__(__data__ = {}, systemData = {}) {
|
|
49
49
|
// Override in subclass
|
|
50
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Phát sự kiện lên cha đã `@include` view này.
|
|
53
|
+
*
|
|
54
|
+
* Là method của View (không chỉ hàm trong scope compiled) để template gọi
|
|
55
|
+
* thẳng được: `@click(emit('edit', card['id']))` biên dịch thành
|
|
56
|
+
* `{ handler: 'emit' }`, và ViewController.addEventListener tra handler
|
|
57
|
+
* dạng chuỗi trên chính View.
|
|
58
|
+
*/
|
|
59
|
+
emit(event, ...args) {
|
|
60
|
+
return this.__ctrl__.emit(event, ...args);
|
|
61
|
+
}
|
|
62
|
+
watch(keys, callback, options) {
|
|
63
|
+
return this.__ctrl__.scope.watch(keys, callback, options);
|
|
64
|
+
}
|
|
65
|
+
afterDom(callback) {
|
|
66
|
+
return this.__ctrl__.afterDom(callback);
|
|
67
|
+
}
|
|
68
|
+
get $scope() { return this.__ctrl__.scope; }
|
|
51
69
|
// ─── Convenience Accessors ──────────────────────────────────
|
|
52
70
|
get path() {
|
|
53
71
|
return this.__ctrl__.path;
|
|
@@ -63,10 +81,10 @@ export class View {
|
|
|
63
81
|
get $state() {
|
|
64
82
|
return this.__ctrl__.states;
|
|
65
83
|
}
|
|
66
|
-
get
|
|
84
|
+
get saoType() {
|
|
67
85
|
return 'View';
|
|
68
86
|
}
|
|
69
|
-
set
|
|
87
|
+
set saoType(value) {
|
|
70
88
|
// No-op setter to satisfy the Interface; this property is always 'View'
|
|
71
89
|
}
|
|
72
90
|
get parent() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"View.js","sourceRoot":"","sources":["../../../../src/core/view/View.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"View.js","sourceRoot":"","sources":["../../../../src/core/view/View.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAWrD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,OAAO,IAAI;IAIb,YAAY,IAAY,EAAE,WAAqB,MAAM,EAAE,mBAAyB;QAC5E,MAAM,SAAS,GAAG,mBAAmB,IAAI,cAAc,CAAC;QACxD,MAAM,UAAU,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAEvD,4DAA4D;QAC5D,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE;YACpC,KAAK,EAAE,UAAU;YACjB,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;SACtB,CAAC,CAAC;IACP,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,WAAgC,EAAE,EAAE,aAAkC,EAAE;QAC/E,uBAAuB;IAC3B,CAAC;IA8BD;;;;;;;OAOG;IACH,IAAI,CAAC,KAAa,EAAE,GAAG,IAAW;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,IAAuB,EAAE,QAAuB,EAAE,OAAsB;QAC1E,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED,QAAQ,CAAC,QAAoB;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAE5C,+DAA+D;IAE/D,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC9B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED,6BAA6B;IAC7B,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,4BAA4B;IAC5B,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAChC,CAAC;IACD,IAAI,OAAO;QACP,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,KAAoB;QAC5B,wEAAwE;IAC5E,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IACD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;IAC5C,CAAC;IACD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IACD,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;CACJ"}
|
|
@@ -1,25 +1,29 @@
|
|
|
1
|
-
import type { BlockInterface, BlockOutletInterface, BlockRenderFactory } from "../contracts/BlockInterface";
|
|
2
|
-
import type { FragmentInterface, HtmlInterface,
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
5
|
-
import type {
|
|
6
|
-
import type {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
|
|
1
|
+
import type { BlockInterface, BlockOutletInterface, BlockRenderFactory } from "../contracts/BlockInterface.js";
|
|
2
|
+
import type { FragmentInterface, HtmlInterface, SaoChildrenFactory, SaoChildrenFactoryOutput, SaoChildrenSlotContent, SaoElementEventHandler, SaoNodeInterface, OutputInterface, TextInterface, WrapperInterface, YieldInterface, EventModifier } from "../contracts/ElementInterface.js";
|
|
3
|
+
import type { LoopContextInterface } from "../contracts/LoopContextInterface.js";
|
|
4
|
+
import type { ReactiveChildrenFactory, ReactiveInterface } from "../contracts/ReactiveInterface.js";
|
|
5
|
+
import type { ViewControllerInterface, ViewType, ViewConfig, ViewRuntimeConfig, ViewControllerConfig, ErrorInfo } from "../contracts/ViewControllerInterface.js";
|
|
6
|
+
import type { ViewInterface, ViewRenderFactory } from "../contracts/ViewInterface.js";
|
|
7
|
+
import type { SaoObjectType } from "../types/utils.js";
|
|
8
|
+
import { ViewState } from "./ViewState.js";
|
|
9
|
+
import { ResourceScope } from './ResourceScope.js';
|
|
10
|
+
import { LoopContext } from "./LoopContext.js";
|
|
11
|
+
import { Component } from "../elements/Component.js";
|
|
12
|
+
import type { ViewUserConfig } from "./View.js";
|
|
13
|
+
import { ApplicationInterface } from "../contracts/ApplicationInterface.js";
|
|
14
|
+
import { SectionContentRenderer, SectionContentType, SectionInterface, SectionItemType } from "../contracts/SectionInterface.js";
|
|
15
|
+
import { InitMode } from "../contracts/common.js";
|
|
16
|
+
import { ComponentInterface } from "../contracts/ComponentInterface.js";
|
|
17
|
+
import { ForeachSlotCache } from "../elements/ForeachSlotCache.js";
|
|
18
|
+
type ElementChild = ReactiveInterface | ComponentInterface | HtmlInterface | TextInterface | FragmentInterface | OutputInterface | BlockOutletInterface | YieldInterface | SaoNodeInterface;
|
|
16
19
|
/**
|
|
17
20
|
* ViewController — the brain behind a View.
|
|
18
21
|
*
|
|
19
22
|
* Manages:
|
|
20
23
|
* - Reactive state (ViewState) — useState, subscribe, batch flush
|
|
21
24
|
* - DOM element tree — via Html, Reactive, TextElement, Fragment
|
|
22
|
-
* -
|
|
25
|
+
* - Events — addEventListener TRỰC TIẾP trên từng element (KHÔNG delegation),
|
|
26
|
+
* dọn hàng loạt bằng một AbortController chung. Giống React 17+/Vue/Svelte.
|
|
23
27
|
* - Loop contexts — @foreach, @for, @while with LoopContext stack
|
|
24
28
|
* - Block management — for layout views with @useBlock
|
|
25
29
|
* - Lifecycle — setup, render, destroy
|
|
@@ -35,7 +39,7 @@ type ElementChild = ReactiveInterface | ComponentInterface | HtmlInterface | Tex
|
|
|
35
39
|
* this.__ctrl__.__foreach(items, (item, key, index, loop) => [...])
|
|
36
40
|
*/
|
|
37
41
|
export declare class ViewController implements ViewControllerInterface {
|
|
38
|
-
|
|
42
|
+
saoType: SaoObjectType;
|
|
39
43
|
viewId: string;
|
|
40
44
|
path: string;
|
|
41
45
|
viewType: ViewType;
|
|
@@ -59,6 +63,13 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
59
63
|
originView: ViewControllerInterface | null;
|
|
60
64
|
/** Raw input data from route/parent */
|
|
61
65
|
data: Record<string, any>;
|
|
66
|
+
/**
|
|
67
|
+
* Component (@include) đã dựng view này — null với view gốc của route.
|
|
68
|
+
*
|
|
69
|
+
* Đây là lớp trung gian cha↔con: cha khai báo listener tại thẻ, Component
|
|
70
|
+
* giữ bảng đó, con phát qua {@link emit}.
|
|
71
|
+
*/
|
|
72
|
+
ownerComponent: ComponentInterface | null;
|
|
62
73
|
/** User-defined config from setup() */
|
|
63
74
|
private config;
|
|
64
75
|
/** Typed runtime config from compiled $__setup__ */
|
|
@@ -74,7 +85,7 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
74
85
|
private renderFactory;
|
|
75
86
|
/** Compiled prerender factory — produces the prerender element tree */
|
|
76
87
|
private prerenderFactory;
|
|
77
|
-
childrenFactory:
|
|
88
|
+
childrenFactory: SaoChildrenFactory | null;
|
|
78
89
|
/** Stored render output for lifecycle management */
|
|
79
90
|
renderOutput: any;
|
|
80
91
|
/** Stored prerender output for hydration or caching */
|
|
@@ -89,28 +100,62 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
89
100
|
private hasScheduledUpdate;
|
|
90
101
|
/** Centralized AbortController for all event listeners */
|
|
91
102
|
private eventAbortController;
|
|
103
|
+
/** Exact listener references for cleanup when an individual Html node dies. */
|
|
104
|
+
elementEventHandlers: Map<HTMLElement, Map<string, EventListener[]>>;
|
|
92
105
|
/** Current loop context stack (@foreach, @for, @while) */
|
|
93
106
|
loopContext: LoopContext | null;
|
|
107
|
+
/**
|
|
108
|
+
* Active ForeachSlotCache — được set bởi Reactive.renderForeach() trước khi
|
|
109
|
+
* gọi childrenFactory. __foreach() đọc cache này để quyết định reuse hay create.
|
|
110
|
+
* Reset về null ngay sau khi childrenFactory trả về.
|
|
111
|
+
*/
|
|
112
|
+
_currentForeachCache: ForeachSlotCache | null;
|
|
113
|
+
_foreachSkipRegistry: boolean;
|
|
114
|
+
private foreachRegistry;
|
|
115
|
+
private elementRegistries;
|
|
116
|
+
private inlineForeachCaches;
|
|
117
|
+
/** Deferred child factories retain the row scope in which they were created. */
|
|
118
|
+
private scopeFactory;
|
|
119
|
+
private inForeachScope;
|
|
94
120
|
/** Section management across views */
|
|
95
121
|
sections: Map<string, SectionInterface>;
|
|
96
122
|
/** Block slots in layout views */
|
|
97
123
|
blocks: Map<string, BlockInterface>;
|
|
98
124
|
elements: Map<string, ElementChild>;
|
|
125
|
+
/** element → key của nó trong `elements` (xem registerElement/releaseElement) */
|
|
126
|
+
private elementKeys;
|
|
99
127
|
preloadElement: WrapperInterface | null;
|
|
100
128
|
mainElement: WrapperInterface | null;
|
|
129
|
+
/** Wrapper instance RIÊNG cho render/prerender — dùng chung sẽ làm
|
|
130
|
+
* preloadElement === mainElement → swap skeleton→main destroy nhầm chính nó */
|
|
131
|
+
private wrapperInstances;
|
|
101
132
|
/** Whether this view is currently active (mounted in DOM) */
|
|
102
133
|
isActive: boolean;
|
|
103
134
|
/** Whether initial data has been committed */
|
|
104
135
|
private _isDataCommitted;
|
|
105
136
|
/** Whether the view has been mounted */
|
|
106
137
|
private _isMounted;
|
|
138
|
+
/** Whether the reactive element tree has been started. */
|
|
139
|
+
private _isStarted;
|
|
107
140
|
/** Whether the view has been fully destroyed */
|
|
108
141
|
private _isDestroyed;
|
|
142
|
+
/** Whether this instance's styles/scripts are currently counted in AssetManager
|
|
143
|
+
* (true = đang góp 1 ref vào real DOM). Giữ acquire/release cân bằng. */
|
|
144
|
+
private _assetsLive;
|
|
109
145
|
/** For future use: scanning DOM for bindings */
|
|
110
146
|
protected isScanMode: boolean;
|
|
111
147
|
urlPath: string | null;
|
|
112
148
|
callingMethod: string | null;
|
|
113
149
|
constructor(view: ViewInterface, path?: string, viewType?: ViewType, viewId?: string | null);
|
|
150
|
+
private _scope?;
|
|
151
|
+
get scope(): ResourceScope;
|
|
152
|
+
private afterDomCallbacks;
|
|
153
|
+
private afterDomRAF;
|
|
154
|
+
private afterDomRevision;
|
|
155
|
+
/** One-shot callback after this view's state and DOM queues settle. */
|
|
156
|
+
afterDom(callback: () => void): () => void;
|
|
157
|
+
private flushAfterDom;
|
|
158
|
+
private cancelAfterDom;
|
|
114
159
|
/**
|
|
115
160
|
* Setup — called by compiled $__setup__ with full config.
|
|
116
161
|
*
|
|
@@ -121,8 +166,23 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
121
166
|
getConfig(key?: string, defaultValue?: any): ViewControllerConfig | any;
|
|
122
167
|
/** Set static view config shared by all instances of a compiled view class. */
|
|
123
168
|
setStaticConfig(config: ViewConfig): void;
|
|
169
|
+
/** Đang chạy onError của chính controller này — chặn đệ quy nếu handler tự throw. */
|
|
170
|
+
private _handlingError;
|
|
171
|
+
/**
|
|
172
|
+
* Error boundary: tìm handler gần nhất theo chuỗi `parent`, gọi nó, trả fallback.
|
|
173
|
+
*
|
|
174
|
+
* Bất biến:
|
|
175
|
+
* - handler trả undefined → coi như KHÔNG xử lý, bubble tiếp lên cha
|
|
176
|
+
* (cho phép chỉ log mà không đổi UI).
|
|
177
|
+
* - handler tự throw → bỏ qua boundary đó, bubble tiếp (không lặp vô hạn).
|
|
178
|
+
* - không boundary nào xử lý → { handled:false }, caller giữ hành vi cũ.
|
|
179
|
+
*/
|
|
180
|
+
handleError(err: unknown, info: ErrorInfo): {
|
|
181
|
+
handled: boolean;
|
|
182
|
+
fallback?: any;
|
|
183
|
+
};
|
|
124
184
|
/** Set user-defined properties/methods on the View instance */
|
|
125
|
-
setUserDefinedConfig(userConfig:
|
|
185
|
+
setUserDefinedConfig<T extends object>(userConfig: ViewUserConfig<T>): void;
|
|
126
186
|
/** Set the compiled render factory */
|
|
127
187
|
setRenderFactory(factory: ViewRenderFactory): void;
|
|
128
188
|
/** Set root element — the container this view renders into */
|
|
@@ -140,8 +200,24 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
140
200
|
hydrate(): any;
|
|
141
201
|
hydrateRender(): any;
|
|
142
202
|
hydratePrerender(): any;
|
|
143
|
-
|
|
203
|
+
/** Gọi an toàn một lifecycle hook nếu user có định nghĩa trên View. */
|
|
204
|
+
private callHook;
|
|
205
|
+
/**
|
|
206
|
+
* Mount — instance vào real DOM.
|
|
207
|
+
* - root != null: gắn DOM tree (mainElement/preloadElement) vào root.
|
|
208
|
+
* - root == null: nội dung đã được đặt sẵn (block outlets / component markers),
|
|
209
|
+
* chỉ fire hook + acquire asset.
|
|
210
|
+
* Fire mounting/mounted MỘT lần mỗi vòng đời; pause→resume dùng resuming/resumed.
|
|
211
|
+
*/
|
|
212
|
+
mount(root?: HtmlInterface | null): void;
|
|
213
|
+
/** Unmount — gỡ instance khỏi real DOM (fire hook + release asset). */
|
|
144
214
|
unmount(): void;
|
|
215
|
+
/** Đăng ký style/script của component vào real DOM (insert khi ref 0→1). */
|
|
216
|
+
private acquireAssets;
|
|
217
|
+
/** Gỡ đăng ký style/script (remove khi ref 1→0). */
|
|
218
|
+
private releaseAssets;
|
|
219
|
+
/** Các Element gốc của instance (giữa markers của Wrapper) — để tag scoped style. */
|
|
220
|
+
private getSubtreeRoots;
|
|
145
221
|
/**
|
|
146
222
|
* Start — activate reactive subscriptions throughout the element tree.
|
|
147
223
|
* Called AFTER render() and commitData().
|
|
@@ -150,6 +226,29 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
150
226
|
* This ensures initial state values are set before subscriptions fire.
|
|
151
227
|
*/
|
|
152
228
|
start(): void;
|
|
229
|
+
private _lifecycleState;
|
|
230
|
+
/** Data nhận được trong lúc paused (async fetch về muộn) — apply khi resume */
|
|
231
|
+
private _bufferedData;
|
|
232
|
+
/** Only children paused by this controller may be resumed by it. */
|
|
233
|
+
private _pausedChildren;
|
|
234
|
+
get lifecycleState(): string;
|
|
235
|
+
/**
|
|
236
|
+
* Pause — tạm dừng để vào PageCache:
|
|
237
|
+
* 1. Flush nốt RAF pending (không mất update đang chờ)
|
|
238
|
+
* 2. State listeners → dirty-mode (KHÔNG unsubscribe — ghi sổ key đổi)
|
|
239
|
+
* 3. Hook onPause cho user dọn tài nguyên thô
|
|
240
|
+
* DOM event listeners giữ nguyên — DOM sẽ bị detach nên vô hại.
|
|
241
|
+
*/
|
|
242
|
+
pause(): void;
|
|
243
|
+
/**
|
|
244
|
+
* Resume — khôi phục từ PageCache:
|
|
245
|
+
* 1. Apply buffered data (async về trong lúc paused)
|
|
246
|
+
* 2. Thoát dirty-mode → flush đúng các vùng phụ thuộc dirty keys
|
|
247
|
+
* 3. Hook onResume — nơi user quyết định refetch (theo TTL riêng...)
|
|
248
|
+
*/
|
|
249
|
+
resume(): void;
|
|
250
|
+
/** Flush đồng bộ các reactive update đang chờ RAF */
|
|
251
|
+
flushReactiveUpdatesNow(): void;
|
|
153
252
|
/**
|
|
154
253
|
* Stop — deactivate reactive subscriptions (for caching/deactivation).
|
|
155
254
|
* DOM stays intact but reactive updates are paused.
|
|
@@ -157,20 +256,52 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
157
256
|
stop(): void;
|
|
158
257
|
/** Full destroy — cleanup everything */
|
|
159
258
|
destroy(): void;
|
|
259
|
+
active(): void;
|
|
260
|
+
deactive(): void;
|
|
261
|
+
/**
|
|
262
|
+
* `this` context cho các hàm compiled config (updateVariableData dùng
|
|
263
|
+
* this.config.updateVariableItemData và this.data).
|
|
264
|
+
*/
|
|
265
|
+
private makeConfigThis;
|
|
160
266
|
/**
|
|
161
267
|
* Commit initial data — set initial state values.
|
|
162
268
|
* Called by ViewManager AFTER render + block mounting.
|
|
163
269
|
*
|
|
164
270
|
* Flow: commitConstructorData() → update$xxx(initial) → lockUpdateRealState()
|
|
271
|
+
* FIX(Phase2): trước đây method này RỖNG — compiled commitConstructorData
|
|
272
|
+
* không bao giờ được gọi.
|
|
165
273
|
*/
|
|
166
274
|
commitData(): void;
|
|
167
275
|
/**
|
|
168
|
-
* Update data from external source (navigate same view,
|
|
169
|
-
*
|
|
276
|
+
* Update data from external source (navigate same view, props từ parent...).
|
|
277
|
+
*
|
|
278
|
+
* Contract data vs state (mô hình React — data:props từ ngoài, state:của instance):
|
|
279
|
+
* - TRƯỚC commitData (constructor phase): chỉ merge vào this.data. Factory
|
|
280
|
+
* đã destructure __data__ lúc khởi tạo; state sẽ do commitData() init MỘT
|
|
281
|
+
* lần. KHÔNG chạy updateVariableData ở đây — nếu chạy, sequence
|
|
282
|
+
* unlock→lock của nó làm commitConstructorData về sau thành no-op
|
|
283
|
+
* (update$xxx bị lock chặn) → state init phụ thuộc data rỗng hay không.
|
|
284
|
+
* - SAU commitData: đường props-update chuẩn — unlock → updateVariableData
|
|
285
|
+
* (trait cập nhật biến data + notify các key dẫn xuất từ data) → lock.
|
|
286
|
+
* Instance state (init bằng literal) KHÔNG được reset ở đây — đó là
|
|
287
|
+
* trách nhiệm của compiled updateVariableData (COMPILER_CONTRACT).
|
|
288
|
+
* Khi paused: buffer lại, apply lúc resume (ROUTE_RENDER_FLOW §8.2).
|
|
170
289
|
*/
|
|
171
290
|
updateData(newData: Record<string, any>): void;
|
|
172
291
|
/**
|
|
173
|
-
*
|
|
292
|
+
* Con phát sự kiện lên ĐÚNG cha đã include nó: `emit('edit', card['id'])`.
|
|
293
|
+
*
|
|
294
|
+
* Kênh trực tiếp, không qua App.Event — hai instance cùng view không nghe
|
|
295
|
+
* nhầm của nhau, và không có gì để gỡ đăng ký lúc destroy. Không ai lắng
|
|
296
|
+
* nghe thì im lặng, đúng như một DOM event không listener.
|
|
297
|
+
*
|
|
298
|
+
* Trả về giá trị handler trả về, nên con hỏi cha được (`if (!emit('close'))`).
|
|
299
|
+
*/
|
|
300
|
+
emit(event: string, ...args: any[]): any;
|
|
301
|
+
/** Áp data vào biến data (trait) từng key — không đụng state, không đụng lock */
|
|
302
|
+
private applyDataTrait;
|
|
303
|
+
/**
|
|
304
|
+
* Update single data item — cùng contract với updateData (xem trên).
|
|
174
305
|
*/
|
|
175
306
|
updateDataItem(key: string, value: any): void;
|
|
176
307
|
/**
|
|
@@ -182,19 +313,44 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
182
313
|
* - Object with handler + params: { handler: fn, params: [...] }
|
|
183
314
|
* - Object with string handler (method name on view): { handler: 'handleClick' }
|
|
184
315
|
*/
|
|
185
|
-
|
|
316
|
+
/**
|
|
317
|
+
* Bọc handler theo modifier của `@click.prevent.stop(...)`.
|
|
318
|
+
* `self` kiểm TRƯỚC: event từ element con thì coi như không xảy ra, nên
|
|
319
|
+
* cũng không được preventDefault/stopPropagation (giống Vue).
|
|
320
|
+
* `once` KHÔNG xử lý ở đây — nó là option của addEventListener.
|
|
321
|
+
*/
|
|
322
|
+
private wrapEventModifiers;
|
|
323
|
+
addEventListener(element: HTMLElement, event: string, handlers: SaoElementEventHandler, modifiers?: EventModifier[]): void;
|
|
324
|
+
removeEventListener(element: HTMLElement, event: string): void;
|
|
186
325
|
/**
|
|
187
326
|
* Schedule a reactive region for re-render.
|
|
188
327
|
* Multiple calls in the same frame are batched into a single RAF.
|
|
189
328
|
*/
|
|
190
329
|
scheduleUpdate(reactive: ReactiveInterface): void;
|
|
330
|
+
/**
|
|
331
|
+
* Có vùng reactive nào đang chờ re-render trong frame này không?
|
|
332
|
+
*
|
|
333
|
+
* StateManager dùng để phân biệt "factory ném vì vùng bọc nó sắp bị dựng
|
|
334
|
+
* lại" với lỗi thật (xem StateManager.retryAfterReactiveFlush).
|
|
335
|
+
*/
|
|
336
|
+
hasPendingReactiveUpdate(): boolean;
|
|
191
337
|
private flushReactiveUpdates;
|
|
338
|
+
pushBlockAndSections(): void;
|
|
339
|
+
/**
|
|
340
|
+
* @section(name, ...) — registers content for a matching @yield(name) to
|
|
341
|
+
* consume (possibly in a different controller — page declares, layout
|
|
342
|
+
* yields, same cross-controller relationship as @block/@useBlock).
|
|
343
|
+
*/
|
|
192
344
|
section(name: string, config: {
|
|
193
345
|
type: SectionItemType;
|
|
194
346
|
contentType?: SectionContentType;
|
|
195
347
|
stateKeys?: string[];
|
|
196
348
|
[key: string]: any;
|
|
197
349
|
}, contentRenderFactory: SectionContentRenderer): SectionInterface;
|
|
350
|
+
/** `this.yieldContent(name, default)` — synchronous resolve, used inside attribute/prop binding factories. */
|
|
351
|
+
yieldContent(name: string, defaultValue?: any): any;
|
|
352
|
+
/** Decode a raw SSR echo as RCDATA, preserving literal angle brackets. */
|
|
353
|
+
decodeTextContent(value: string): string;
|
|
198
354
|
block(id: string | null, name: string, contentRenderFactory: BlockRenderFactory): BlockInterface;
|
|
199
355
|
blockOutlet(id: string | null | undefined, name: string, parentElement: HtmlInterface | null): BlockOutletInterface;
|
|
200
356
|
mountBlock(id: string | null | undefined, name: string, parent: HtmlInterface | null): BlockOutletInterface;
|
|
@@ -203,25 +359,68 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
203
359
|
* Creates a Reactive region between markers that will hold the block content.
|
|
204
360
|
* BlockManager.mountAll() later inserts the page view's block content here.
|
|
205
361
|
*/
|
|
206
|
-
useBlock(id: string | null | undefined, name: string, parent: HtmlInterface):
|
|
362
|
+
useBlock(id: string | null | undefined, name: string, parent: HtmlInterface): BlockOutletInterface;
|
|
207
363
|
yield(id: string, name: string, defaultValue?: any, parentElement?: HtmlInterface | null): YieldInterface;
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
fragment(id: string | null | undefined, parentElement: HtmlInterface | null, childrenFactory: OneChildrenFactory): FragmentInterface;
|
|
364
|
+
wrapper(factory: SaoChildrenFactory): WrapperInterface;
|
|
365
|
+
fragment(id: string | null | undefined, parentElement: HtmlInterface | null, childrenFactory: SaoChildrenFactory): FragmentInterface;
|
|
211
366
|
/**
|
|
212
367
|
* Template and Directive Helpers
|
|
213
368
|
* These methods are called by the compiled output for loops, conditionals, and other directives.
|
|
214
369
|
*/
|
|
215
|
-
html(id: string | null | undefined, tagName: string, parentElement: HtmlInterface | null, config: any, childrenFactory?:
|
|
370
|
+
html(id: string | null | undefined, tagName: string, parentElement: HtmlInterface | null, config: any, childrenFactory?: SaoChildrenFactory): SaoNodeInterface;
|
|
216
371
|
reactive(id: string | null, type: string, parentReactive: ReactiveInterface | null, parentElement: HtmlInterface | null, stateKeys: string[], childrenFactory: ReactiveChildrenFactory): ReactiveInterface;
|
|
217
372
|
output(id: string | null, parent: HtmlInterface | null, isEscapeHTML?: boolean, stateKeys?: string[], contentFactory?: () => string): OutputInterface;
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
373
|
+
/**
|
|
374
|
+
* FIX(baseline#2): trả về TextElement (có saoType) thay vì raw Text node.
|
|
375
|
+
* Raw Text node bị mountElementList/Reactive.render bỏ qua → text tĩnh biến mất.
|
|
376
|
+
*/
|
|
377
|
+
text(text: string): TextInterface;
|
|
378
|
+
/**
|
|
379
|
+
* Ghi element vào registry + nhớ key để destroy() gỡ lại được.
|
|
380
|
+
* Key là id THÔ; `element.id` phần lớn đã prefix viewId (`${viewId}-${id}`)
|
|
381
|
+
* nên element KHÔNG tự suy ra key được — WeakMap giữ ánh xạ, không giữ
|
|
382
|
+
* element sống.
|
|
383
|
+
*/
|
|
384
|
+
private registerElement;
|
|
385
|
+
/**
|
|
386
|
+
* Element tự gỡ khỏi registry trong destroy() — nếu không, `elements` chỉ
|
|
387
|
+
* co lại lúc destroy view, còn id sinh theo item (`{hash}-${item.id}`) thì
|
|
388
|
+
* mỗi trang/mỗi lần refresh lại thêm một corpse vĩnh viễn (đo được:
|
|
389
|
+
* 32 → 182 entry sau 6 trang trong khi DOM vẫn 10 item).
|
|
390
|
+
*
|
|
391
|
+
* Guard `=== el` là bắt buộc: pass mới đã ghi element MỚI vào cùng id TRƯỚC
|
|
392
|
+
* khi prunePass destroy element cũ — xoá vô điều kiện sẽ gỡ nhầm bản mới.
|
|
393
|
+
*/
|
|
394
|
+
releaseElement(el: object): void;
|
|
395
|
+
/**
|
|
396
|
+
* Registry guard: element đã destroy không được reuse — trả về corpse
|
|
397
|
+
* (events đã abort, markers đã gỡ) gây render rỗng / stale closure.
|
|
398
|
+
* Xem docs/RUNTIME_CONTRACT.md §2.
|
|
399
|
+
*/
|
|
400
|
+
private aliveFromRegistry;
|
|
401
|
+
/** Deterministic fallback counter for the (contract-violating) missing-id path. */
|
|
402
|
+
private _missingIncludeIdCounter;
|
|
403
|
+
/**
|
|
404
|
+
* Resolve the hydrate id for an @include component.
|
|
405
|
+
*
|
|
406
|
+
* The compiler ALWAYS emits a deterministic id (md5[:8] of the position-based
|
|
407
|
+
* base id) so the client marker `s:c:{viewId}-{id}` matches the server-rendered
|
|
408
|
+
* one. A missing id therefore means a compiler/runtime contract violation — and
|
|
409
|
+
* in HYDRATE mode it guarantees a marker mismatch (claimSSRMarkers finds nothing
|
|
410
|
+
* → silent CSR re-render / duplicated DOM).
|
|
411
|
+
*
|
|
412
|
+
* Never invent a RANDOM id here: a random id also makes every `elements.get(id)`
|
|
413
|
+
* lookup miss, so the component is recreated on each render (cache broken). We
|
|
414
|
+
* surface the violation loudly and fall back to a render-stable deterministic id
|
|
415
|
+
* so behaviour stays idempotent even in the broken case.
|
|
416
|
+
*/
|
|
417
|
+
private resolveIncludeId;
|
|
418
|
+
include(id: string | null | undefined, path: string | undefined, parentElement: HtmlInterface | null, stateKeys: string[], dataFactory: (parentElement: HtmlInterface | null) => Record<string, any>, listeners?: Record<string, (...args: any[]) => any>): Component;
|
|
419
|
+
includeIf(id: string | null | undefined, path: string, parentElement: HtmlInterface | null, stateKeys: string[], dataFactory: (parentElement: HtmlInterface | null) => Record<string, any>, listeners?: Record<string, (...args: any[]) => any>): Component;
|
|
221
420
|
includeWhen(id: string | null, condition: {
|
|
222
421
|
stateKeys: string[];
|
|
223
422
|
checker: () => any;
|
|
224
|
-
}, path: string, parentElement: HtmlInterface | null, stateKeys: string[], dataFactory: (parentElement: HtmlInterface | null) => Record<string, any>): Component;
|
|
423
|
+
}, path: string, parentElement: HtmlInterface | null, stateKeys: string[], dataFactory: (parentElement: HtmlInterface | null) => Record<string, any>, listeners?: Record<string, (...args: any[]) => any>): Component;
|
|
225
424
|
extendView(path: string, data?: Record<string, any>): ViewInterface | null;
|
|
226
425
|
/** Create and push a new LoopContext onto the stack */
|
|
227
426
|
__setLoopContext(length: number): LoopContext;
|
|
@@ -231,14 +430,40 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
231
430
|
* @foreach directive — iterate over array or object.
|
|
232
431
|
* Returns array of children (not HTML string like the old system).
|
|
233
432
|
*
|
|
234
|
-
*
|
|
433
|
+
* # Cache-aware re-render (Phase 5 + 5b)
|
|
434
|
+
* Khi `_currentForeachCache` được set (bởi Reactive), __foreach claim slot
|
|
435
|
+
* cho từng item:
|
|
436
|
+
* - Hit (key khớp + item ref giống) → reuse elements cũ (không recreate DOM)
|
|
437
|
+
* - Miss → gọi callback → tạo elements mới → store vào cache
|
|
438
|
+
*
|
|
439
|
+
* Cache key:
|
|
440
|
+
* - `keyFn` (compiler emit từ @key(expr)) → field keying (`item.id`)
|
|
441
|
+
* - không có → object reference của item (identity keying)
|
|
442
|
+
* Duplicate keys/primitive items phân biệt bằng occurrence (ForeachSlotCache).
|
|
443
|
+
* Ref đổi nhưng key trùng → recreate (closure đóng gói item cũ) — slot cũ
|
|
444
|
+
* được Reactive.prunePass destroy.
|
|
445
|
+
*
|
|
446
|
+
* @example Compiled output (@key(item.id)):
|
|
235
447
|
* ctrl.__foreach(items, (item, key, index, loop) => [
|
|
236
|
-
*
|
|
237
|
-
* ])
|
|
448
|
+
* this.html(`id-${item.id}`, 'div', p, {}, () => [this.text(item.name)])
|
|
449
|
+
* ], (item) => item.id)
|
|
238
450
|
*/
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
451
|
+
/**
|
|
452
|
+
* @children / {{ $children }} — materialize slot content from the parent
|
|
453
|
+
* include only when render traversal reaches ChildrenNode (compiler emit:
|
|
454
|
+
* `...this.__children(__ONE_CHILDREN_CONTENT__, parentElement)`).
|
|
455
|
+
*
|
|
456
|
+
* content có 2 dạng (xem COMPILER _gen_children_slot):
|
|
457
|
+
* - function `(parentElement) => elements` — element factory từ
|
|
458
|
+
* @importInclude/custom tag phía parent. Factory đóng gói `this` của
|
|
459
|
+
* PARENT ctrl → elements thuộc parent scope (state/registry parent),
|
|
460
|
+
* giống React children.
|
|
461
|
+
* - string — SSR data hoặc default '' → render text tĩnh (rỗng → []).
|
|
462
|
+
*/
|
|
463
|
+
__children(content: SaoChildrenSlotContent, parentElement: HtmlInterface | null): SaoChildrenFactoryOutput;
|
|
464
|
+
__foreach<T>(list: T[] | Record<string, T>, callback: (item: T, key: string, index: number, loop: LoopContextInterface, identity: number) => any, keyFn?: (item: T, index: number) => any, reconcile?: boolean, scopeId?: string): any[];
|
|
465
|
+
__forelse<T>(list: T[], callback: (item: T, key: string, index: number, loop: LoopContextInterface) => any, emptyCallback?: () => any): any[];
|
|
466
|
+
__each<T>(list: T[], callback: (item: T, key: string, index: number, loop: LoopContextInterface) => any): any[];
|
|
242
467
|
/**
|
|
243
468
|
* @for directive
|
|
244
469
|
*/
|
|
@@ -247,6 +472,53 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
247
472
|
* @while directive
|
|
248
473
|
*/
|
|
249
474
|
__while(execute: (loop: LoopContext) => any, maxIterations?: number): any;
|
|
475
|
+
/**
|
|
476
|
+
* __styleBinding — tính inline CSS style string cho @style directive.
|
|
477
|
+
*
|
|
478
|
+
* Compiler emit (pre-process trước AST):
|
|
479
|
+
* @style(['color' => $textColor, 'font-size' => $fontSize])
|
|
480
|
+
* → ${this.__styleBinding(['textColor', 'fontSize'], [['color', textColor], ['font-size', fontSize]])}
|
|
481
|
+
*
|
|
482
|
+
* Hành vi:
|
|
483
|
+
* - Lọc bỏ entries có value null / undefined / false / '' (không set prop đó)
|
|
484
|
+
* - Join thành "prop: value; prop: value" string
|
|
485
|
+
*
|
|
486
|
+
* @param _stateKeys - Danh sách state keys (đã encode trong config, không dùng ở đây)
|
|
487
|
+
* @param styles - Mảng [cssProperty, value] pairs
|
|
488
|
+
*
|
|
489
|
+
* @example
|
|
490
|
+
* __styleBinding([], [['color', 'red'], ['font-size', null], ['display', 'block']])
|
|
491
|
+
* // → "color: red; display: block"
|
|
492
|
+
*/
|
|
493
|
+
__styleBinding(_stateKeys: string[], styles: [string, any][]): string;
|
|
494
|
+
/**
|
|
495
|
+
* __classBinding — tính CSS class string cho @class binding (legacy template path).
|
|
496
|
+
*
|
|
497
|
+
* Chỉ được gọi bởi OLD template_processor (flat compiler) fallback path.
|
|
498
|
+
* New AST path (RenderGenerator) emit class config trực tiếp vào options.classes[]
|
|
499
|
+
* → Html.initializeClasses() xử lý, KHÔNG dùng __classBinding.
|
|
500
|
+
*
|
|
501
|
+
* Format input (từ class_binding_handler.py):
|
|
502
|
+
* [{ type: 'static', value: 'foo' },
|
|
503
|
+
* { type: 'binding', value: 'is-active', states: ['isActive'], checker: () => isActive }]
|
|
504
|
+
*
|
|
505
|
+
* @param configs - Mảng class config objects
|
|
506
|
+
* @returns Space-joined class string
|
|
507
|
+
*
|
|
508
|
+
* @example
|
|
509
|
+
* __classBinding([
|
|
510
|
+
* { type: 'static', value: 'btn' },
|
|
511
|
+
* { type: 'binding', value: 'btn-primary', checker: () => isPrimary }
|
|
512
|
+
* ])
|
|
513
|
+
* // isPrimary = true → "btn btn-primary"
|
|
514
|
+
* // isPrimary = false → "btn"
|
|
515
|
+
*/
|
|
516
|
+
__classBinding(configs: Array<{
|
|
517
|
+
type: 'static' | 'binding';
|
|
518
|
+
value: string;
|
|
519
|
+
states?: string[];
|
|
520
|
+
checker?: () => any;
|
|
521
|
+
}>): string;
|
|
250
522
|
setApp(app: ApplicationInterface): void;
|
|
251
523
|
getParentView(): ViewInterface | null;
|
|
252
524
|
getChildrenViews(): ViewInterface[];
|
|
@@ -255,8 +527,9 @@ export declare class ViewController implements ViewControllerInterface {
|
|
|
255
527
|
setOriginView(origin: ViewControllerInterface): void;
|
|
256
528
|
setSuperView(superView: ViewControllerInterface): void;
|
|
257
529
|
setIsSuperView(isSuper: boolean): void;
|
|
258
|
-
setParent(parent: ViewControllerInterface): void;
|
|
530
|
+
setParent(parent: ViewControllerInterface | null): void;
|
|
259
531
|
addChild(child: ViewControllerInterface): void;
|
|
532
|
+
removeChild(child: ViewControllerInterface): void;
|
|
260
533
|
/**
|
|
261
534
|
* For nested views: set the chain of super views up to the root, so each view has a reference to its layout parents.
|
|
262
535
|
* Called by ViewManager after creating the view and its super view(s).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewController.d.ts","sourceRoot":"","sources":["../../../../src/core/view/ViewController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAC5G,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEtN,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACjG,OAAO,KAAK,EAAE,uBAAuB,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AACnJ,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEnF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAIlD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAA0B,sBAAsB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE3I,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAS,WAAW,EAA+B,MAAM,aAAa,CAAC;AAI9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,KAAK,YAAY,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,aAAa,GAAG,aAAa,GAAG,iBAAiB,GAAG,eAAe,GAAG,oBAAoB,GAAG,cAAc,GAAG,gBAAgB,CAAC;AAE5L;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,cAAe,YAAW,uBAAuB;IAG1D,OAAO,EAAE,aAAa,CAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IAG1B,gDAAgD;IACzC,IAAI,EAAE,aAAa,CAAC;IAC3B,6BAA6B;IACtB,MAAM,EAAE,SAAS,CAAC;IACzB,uDAAuD;IACvD,OAAO,CAAC,KAAK,CAAuB;IAGpC,gDAAgD;IACzC,MAAM,EAAE,uBAAuB,GAAG,IAAI,CAAQ;IACrD,gDAAgD;IACzC,QAAQ,EAAE,uBAAuB,EAAE,CAAM;IAChD,uCAAuC;IAChC,SAAS,EAAE,uBAAuB,GAAG,IAAI,CAAQ;IACxD,wDAAwD;IACjD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC3C,0CAA0C;IACnC,WAAW,EAAE,OAAO,CAAS;IACpC,4EAA4E;IACrE,UAAU,EAAE,uBAAuB,GAAG,IAAI,CAAQ;IAIzD,uCAAuC;IAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IACtC,uCAAuC;IACvC,OAAO,CAAC,MAAM,CAAkB;IAChC,oDAAoD;IACpD,OAAO,CAAC,aAAa,CAAgC;IACrD,uEAAuE;IACvE,OAAO,CAAC,aAAa,CAAsC;IAK3D,+DAA+D;IAC/D,OAAO,CAAC,WAAW,CAA8B;IAEjD,OAAO,CAAC,aAAa,CAA8B;IAEnD,yEAAyE;IACzE,OAAO,CAAC,SAAS,CAAa;IAC9B,0DAA0D;IAC1D,OAAO,CAAC,aAAa,CAAkC;IACvD,uEAAuE;IACvE,OAAO,CAAC,gBAAgB,CAAkC;IAEnD,eAAe,EAAE,kBAAkB,GAAG,IAAI,CAAQ;IAEzD,oDAAoD;IAC7C,YAAY,EAAE,GAAG,CAAQ;IAChC,uDAAuD;IAChD,eAAe,EAAE,GAAG,CAAQ;IACnC,0DAA0D;IACnD,WAAW,EAAE,IAAI,EAAE,CAAM;IAChC,qEAAqE;IAC9D,kBAAkB,EAAE,OAAO,CAAS;IACpC,QAAQ,EAAE,QAAQ,CAAY;IAGrC,6DAA6D;IAC7D,OAAO,CAAC,sBAAsB,CAAqC;IACnE,OAAO,CAAC,kBAAkB,CAAS;IACnC,0DAA0D;IAC1D,OAAO,CAAC,oBAAoB,CAA0C;IAGtE,0DAA0D;IACnD,WAAW,EAAE,WAAW,GAAG,IAAI,CAAQ;IAG9C,sCAAsC;IAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAa;IAC3D,kCAAkC;IAC3B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAa;IAEhD,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAa;IAEhD,cAAc,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAC/C,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAEnD,6DAA6D;IACtD,QAAQ,EAAE,OAAO,CAAS;IACjC,8CAA8C;IAC9C,OAAO,CAAC,gBAAgB,CAAS;IACjC,wCAAwC;IACxC,OAAO,CAAC,UAAU,CAAS;IAC3B,gDAAgD;IAChD,OAAO,CAAC,YAAY,CAAS;IAC7B,gDAAgD;IAChD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAS;IAG/B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;gBAK/B,IAAI,EAAE,aAAa,EAAE,IAAI,GAAE,MAAW,EAAE,QAAQ,GAAE,QAAiB,EAAE,MAAM,GAAE,MAAM,GAAG,IAAW;IAW7G;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAoBtC,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,GAAG,oBAAoB,GAAG,GAAG;IAOvE,+EAA+E;IAC/E,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAIzC,+DAA+D;IAC/D,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAU3D,sCAAsC;IACtC,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAIlD,8DAA8D;IAC9D,cAAc,CAAC,WAAW,EAAE,aAAa,GAAG,IAAI;IAIhD,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI;IAIpD;;;;;;OAMG;IACH,MAAM,IAAI,GAAG;IAYb,SAAS,IAAI,GAAG;IAYhB,OAAO,IAAI,GAAG;IAId,aAAa,IAAI,GAAG;IAMpB,gBAAgB,IAAI,GAAG;IAOvB,KAAK,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAI9B,OAAO,IAAI,IAAI;IAIf;;;;;;OAMG;IACH,KAAK,IAAI,IAAI;IAkBb;;;OAGG;IACH,IAAI,IAAI,IAAI;IAkBZ,wCAAwC;IACxC,OAAO,IAAI,IAAI;IA6Cf;;;;;OAKG;IACH,UAAU,IAAI,IAAI;IAGlB;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAI9C;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAK7C;;;;;;;;OAQG;IACH,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,sBAAsB,GAAG,IAAI;IAiD7F;;;OAGG;IACH,cAAc,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAWjD,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE;QAAE,IAAI,EAAE,eAAe,CAAC;QAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,oBAAoB,EAAE,sBAAsB,GAAG,gBAAgB;IAkBpM,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,kBAAkB,GAAG,cAAc;IAmBhG,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,YAAO,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,GAAG,oBAAoB;IAkB9G,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,YAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,GAAG,oBAAoB;IAKtG;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,YAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,WAAW;IAIpF,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,GAAE,GAAU,EAAE,aAAa,GAAE,aAAa,GAAG,IAAW,GAAG,cAAc;IAarH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,GAAE,GAAU,GAAG,GAAG;IAIzD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,gBAAgB;IActD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,YAAO,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,EAAE,eAAe,EAAE,kBAAkB,GAAG,iBAAiB;IAkB/H;;;OAGG;IAEH,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,YAAO,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,CAAC,EAAE,kBAAkB,GAAG,gBAAgB;IAkBzJ,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,GAAG,IAAI,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,uBAAuB,GAAG,iBAAiB;IAwB1M,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,EAAE,YAAY,GAAE,OAAc,EAAE,SAAS,GAAE,MAAM,EAAO,EAAE,cAAc,GAAE,MAAM,MAAiB,GAAG,eAAe;IAsBzK,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIxB,OAAO,CACH,EAAE,EAAE,MAAM,GAAG,IAAI,YAAO,EACxB,IAAI,EAAE,MAAM,YAAK,EACjB,aAAa,EAAE,aAAa,GAAG,IAAI,EACnC,SAAS,EAAE,MAAM,EAAE,EACnB,WAAW,EAAE,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC1E,SAAS;IA0BZ,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,YAAO,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS;IAyBjM,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE;QAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,CAAA;KAAE,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS;IA2BpP,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,aAAa,GAAG,IAAI;IAe9E,uDAAuD;IACvD,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW;IAO7C,kDAAkD;IAClD,kBAAkB,IAAI,WAAW,GAAG,IAAI;IAaxC;;;;;;;;OAQG;IACH,SAAS,CAAC,CAAC,EACP,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAC7B,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,GAAG,GAC1E,GAAG,EAAE;IAqCR,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,GAAG,EAAE,aAAa,GAAE,MAAM,GAAc,GAAG,GAAG,EAAE;IAO9I,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,GAAG,GAAG,GAAG,EAAE;IAItG;;OAEG;IACH,KAAK,CACD,QAAQ,GAAE,WAAW,GAAG,WAAyB,EACjD,KAAK,GAAE,MAAU,EACjB,GAAG,GAAE,MAAU,EACf,OAAO,GAAE,CAAC,IAAI,EAAE,WAAW,KAAK,GAAc,GAC/C,GAAG;IAeN;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,GAAG,EAAE,aAAa,GAAE,MAAc,GAAG,GAAG;IAwBhF,MAAM,CAAC,GAAG,EAAE,oBAAoB,GAAG,IAAI;IAKvC,aAAa,IAAI,aAAa,GAAG,IAAI;IAGrC,gBAAgB,IAAI,aAAa,EAAE;IAInC,YAAY,IAAI,aAAa,GAAG,IAAI;IAIpC,aAAa,IAAI,aAAa,GAAG,IAAI;IAIrC,aAAa,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAGpD,YAAY,CAAC,SAAS,EAAE,uBAAuB,GAAG,IAAI;IAGtD,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAGtC,SAAS,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAGhD,QAAQ,CAAC,KAAK,EAAE,uBAAuB,GAAG,IAAI;IAK9C;;;OAGG;IACH,kBAAkB,IAAI,IAAI;IAO1B;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAQxB,IAAI,GAAG,IAAI,oBAAoB,CAE9B;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAGD,kDAAkD;IAClD,IAAI,YAAY,IAAI,OAAO,CAE1B;IAKD,OAAO,CAAC,cAAc;CAGzB"}
|
|
1
|
+
{"version":3,"file":"ViewController.d.ts","sourceRoot":"","sources":["../../../../src/core/view/ViewController.ts"],"names":[],"mappings":"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"}
|