smart-lifecycle 0.1.1
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/LICENSE +21 -0
- package/README.md +275 -0
- package/dist/behaviors/initializer-factory.d.ts +101 -0
- package/dist/behaviors/initializer-factory.d.ts.map +1 -0
- package/dist/behaviors/initializer-factory.js +183 -0
- package/dist/behaviors/initializer-factory.js.map +1 -0
- package/dist/behaviors/initializer.base.d.ts +21 -0
- package/dist/behaviors/initializer.base.d.ts.map +1 -0
- package/dist/behaviors/initializer.base.js +32 -0
- package/dist/behaviors/initializer.base.js.map +1 -0
- package/dist/behaviors/initializer.d.ts +21 -0
- package/dist/behaviors/initializer.d.ts.map +1 -0
- package/dist/behaviors/initializer.interface.d.ts +2 -0
- package/dist/behaviors/initializer.interface.d.ts.map +1 -0
- package/dist/behaviors/initializer.interface.js +2 -0
- package/dist/behaviors/initializer.interface.js.map +1 -0
- package/dist/behaviors/initializer.js +26 -0
- package/dist/behaviors/initializer.js.map +1 -0
- package/dist/behaviors/injection-helper.d.ts +90 -0
- package/dist/behaviors/injection-helper.d.ts.map +1 -0
- package/dist/behaviors/injection-helper.js +136 -0
- package/dist/behaviors/injection-helper.js.map +1 -0
- package/dist/behaviors/lifecycle-manager-factory.d.ts +126 -0
- package/dist/behaviors/lifecycle-manager-factory.d.ts.map +1 -0
- package/dist/behaviors/lifecycle-manager-factory.js +211 -0
- package/dist/behaviors/lifecycle-manager-factory.js.map +1 -0
- package/dist/behaviors/lifecycle-manager.base.d.ts +115 -0
- package/dist/behaviors/lifecycle-manager.base.d.ts.map +1 -0
- package/dist/behaviors/lifecycle-manager.base.js +156 -0
- package/dist/behaviors/lifecycle-manager.base.js.map +1 -0
- package/dist/behaviors/lifecycle-manager.d.ts +114 -0
- package/dist/behaviors/lifecycle-manager.d.ts.map +1 -0
- package/dist/behaviors/lifecycle-manager.interface.d.ts +2 -0
- package/dist/behaviors/lifecycle-manager.interface.d.ts.map +1 -0
- package/dist/behaviors/lifecycle-manager.interface.js +2 -0
- package/dist/behaviors/lifecycle-manager.interface.js.map +1 -0
- package/dist/behaviors/lifecycle-manager.js +157 -0
- package/dist/behaviors/lifecycle-manager.js.map +1 -0
- package/dist/bootstrap.d.ts +9 -0
- package/dist/bootstrap.d.ts.map +1 -0
- package/dist/bootstrap.js +8 -0
- package/dist/bootstrap.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +228 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/components/smart-action/smart-action-element.d.ts +15 -0
- package/dist/components/smart-action/smart-action-element.d.ts.map +1 -0
- package/dist/components/smart-action/smart-action-element.js +149 -0
- package/dist/components/smart-action/smart-action-element.js.map +1 -0
- package/dist/components/smart-action/smart-action.component.d.ts +10 -0
- package/dist/components/smart-action/smart-action.component.d.ts.map +1 -0
- package/dist/components/smart-action/smart-action.component.js +68 -0
- package/dist/components/smart-action/smart-action.component.js.map +1 -0
- package/dist/components/smart-action/smart-action.lifecycle-manager.d.ts +27 -0
- package/dist/components/smart-action/smart-action.lifecycle-manager.d.ts.map +1 -0
- package/dist/components/smart-action/smart-action.lifecycle-manager.js +140 -0
- package/dist/components/smart-action/smart-action.lifecycle-manager.js.map +1 -0
- package/dist/components/smart-action.d.ts +66 -0
- package/dist/components/smart-action.d.ts.map +1 -0
- package/dist/components/smart-action.js +111 -0
- package/dist/components/smart-action.js.map +1 -0
- package/dist/components/smart-for/diff-keys.d.ts +36 -0
- package/dist/components/smart-for/diff-keys.d.ts.map +1 -0
- package/dist/components/smart-for/diff-keys.js +39 -0
- package/dist/components/smart-for/diff-keys.js.map +1 -0
- package/dist/components/smart-for/item-dom-context.d.ts +27 -0
- package/dist/components/smart-for/item-dom-context.d.ts.map +1 -0
- package/dist/components/smart-for/item-dom-context.js +52 -0
- package/dist/components/smart-for/item-dom-context.js.map +1 -0
- package/dist/components/smart-for/smart-for-element.d.ts +38 -0
- package/dist/components/smart-for/smart-for-element.d.ts.map +1 -0
- package/dist/components/smart-for/smart-for-element.js +216 -0
- package/dist/components/smart-for/smart-for-element.js.map +1 -0
- package/dist/components/smart-for/smart-for-item-scope.d.ts +52 -0
- package/dist/components/smart-for/smart-for-item-scope.d.ts.map +1 -0
- package/dist/components/smart-for/smart-for-item-scope.js +94 -0
- package/dist/components/smart-for/smart-for-item-scope.js.map +1 -0
- package/dist/components/smart-for/smart-for.component.d.ts +10 -0
- package/dist/components/smart-for/smart-for.component.d.ts.map +1 -0
- package/dist/components/smart-for/smart-for.component.js +69 -0
- package/dist/components/smart-for/smart-for.component.js.map +1 -0
- package/dist/components/smart-for/smart-for.lifecycle-manager.d.ts +97 -0
- package/dist/components/smart-for/smart-for.lifecycle-manager.d.ts.map +1 -0
- package/dist/components/smart-for/smart-for.lifecycle-manager.js +369 -0
- package/dist/components/smart-for/smart-for.lifecycle-manager.js.map +1 -0
- package/dist/components/smart-link/smart-link-element.d.ts +36 -0
- package/dist/components/smart-link/smart-link-element.d.ts.map +1 -0
- package/dist/components/smart-link/smart-link-element.js +101 -0
- package/dist/components/smart-link/smart-link-element.js.map +1 -0
- package/dist/components/smart-link/smart-link.component.d.ts +21 -0
- package/dist/components/smart-link/smart-link.component.d.ts.map +1 -0
- package/dist/components/smart-link/smart-link.component.js +78 -0
- package/dist/components/smart-link/smart-link.component.js.map +1 -0
- package/dist/components/smart-link/smart-link.lifecycle-manager.d.ts +23 -0
- package/dist/components/smart-link/smart-link.lifecycle-manager.d.ts.map +1 -0
- package/dist/components/smart-link/smart-link.lifecycle-manager.js +53 -0
- package/dist/components/smart-link/smart-link.lifecycle-manager.js.map +1 -0
- package/dist/components/smart-link.d.ts +2 -0
- package/dist/components/smart-link.d.ts.map +1 -0
- package/dist/components/smart-link.js +2 -0
- package/dist/components/smart-link.js.map +1 -0
- package/dist/components/smart-router/navigation-service.interface.d.ts +22 -0
- package/dist/components/smart-router/navigation-service.interface.d.ts.map +1 -0
- package/dist/components/smart-router/navigation-service.interface.js +2 -0
- package/dist/components/smart-router/navigation-service.interface.js.map +1 -0
- package/dist/components/smart-router/navigation.d.ts +57 -0
- package/dist/components/smart-router/navigation.d.ts.map +1 -0
- package/dist/components/smart-router/navigation.js +75 -0
- package/dist/components/smart-router/navigation.js.map +1 -0
- package/dist/components/smart-router/smart-router-element.d.ts +42 -0
- package/dist/components/smart-router/smart-router-element.d.ts.map +1 -0
- package/dist/components/smart-router/smart-router-element.js +188 -0
- package/dist/components/smart-router/smart-router-element.js.map +1 -0
- package/dist/components/smart-router/smart-router.component.d.ts +27 -0
- package/dist/components/smart-router/smart-router.component.d.ts.map +1 -0
- package/dist/components/smart-router/smart-router.component.js +89 -0
- package/dist/components/smart-router/smart-router.component.js.map +1 -0
- package/dist/components/smart-router/smart-router.lifecycle-manager.d.ts +25 -0
- package/dist/components/smart-router/smart-router.lifecycle-manager.d.ts.map +1 -0
- package/dist/components/smart-router/smart-router.lifecycle-manager.js +115 -0
- package/dist/components/smart-router/smart-router.lifecycle-manager.js.map +1 -0
- package/dist/components/smart-router.d.ts +28 -0
- package/dist/components/smart-router.d.ts.map +1 -0
- package/dist/components/smart-router.js +45 -0
- package/dist/components/smart-router.js.map +1 -0
- package/dist/components/smart-select/smart-select-element.d.ts +49 -0
- package/dist/components/smart-select/smart-select-element.d.ts.map +1 -0
- package/dist/components/smart-select/smart-select-element.js +130 -0
- package/dist/components/smart-select/smart-select-element.js.map +1 -0
- package/dist/components/smart-select/smart-select.component.d.ts +35 -0
- package/dist/components/smart-select/smart-select.component.d.ts.map +1 -0
- package/dist/components/smart-select/smart-select.component.js +92 -0
- package/dist/components/smart-select/smart-select.component.js.map +1 -0
- package/dist/components/smart-select/smart-select.lifecycle-manager.d.ts +52 -0
- package/dist/components/smart-select/smart-select.lifecycle-manager.d.ts.map +1 -0
- package/dist/components/smart-select/smart-select.lifecycle-manager.js +144 -0
- package/dist/components/smart-select/smart-select.lifecycle-manager.js.map +1 -0
- package/dist/components/smart-select.d.ts +3 -0
- package/dist/components/smart-select.d.ts.map +1 -0
- package/dist/components/smart-select.js +3 -0
- package/dist/components/smart-select.js.map +1 -0
- package/dist/core/component-instance-registry.d.ts +102 -0
- package/dist/core/component-instance-registry.d.ts.map +1 -0
- package/dist/core/component-instance-registry.js +85 -0
- package/dist/core/component-instance-registry.js.map +1 -0
- package/dist/core/component-metadata-registry.d.ts +100 -0
- package/dist/core/component-metadata-registry.d.ts.map +1 -0
- package/dist/core/component-metadata-registry.interface.d.ts +44 -0
- package/dist/core/component-metadata-registry.interface.d.ts.map +1 -0
- package/dist/core/component-metadata-registry.interface.js +2 -0
- package/dist/core/component-metadata-registry.interface.js.map +1 -0
- package/dist/core/component-metadata-registry.js +113 -0
- package/dist/core/component-metadata-registry.js.map +1 -0
- package/dist/core/component-metadata-source.interface.d.ts +40 -0
- package/dist/core/component-metadata-source.interface.d.ts.map +1 -0
- package/dist/core/component-metadata-source.interface.js +2 -0
- package/dist/core/component-metadata-source.interface.js.map +1 -0
- package/dist/core/component-metadata.d.ts +57 -0
- package/dist/core/component-metadata.d.ts.map +1 -0
- package/dist/core/component-metadata.js +2 -0
- package/dist/core/component-metadata.js.map +1 -0
- package/dist/core/smart-component.d.ts +80 -0
- package/dist/core/smart-component.d.ts.map +1 -0
- package/dist/core/smart-component.js +86 -0
- package/dist/core/smart-component.js.map +1 -0
- package/dist/decorators/component.decorator.d.ts +136 -0
- package/dist/decorators/component.decorator.d.ts.map +1 -0
- package/dist/decorators/component.decorator.js +35 -0
- package/dist/decorators/component.decorator.js.map +1 -0
- package/dist/decorators/host-listener.decorator.d.ts +30 -0
- package/dist/decorators/host-listener.decorator.d.ts.map +1 -0
- package/dist/decorators/host-listener.decorator.js +117 -0
- package/dist/decorators/host-listener.decorator.js.map +1 -0
- package/dist/decorators/index.d.ts +13 -0
- package/dist/decorators/index.d.ts.map +1 -0
- package/dist/decorators/index.js +8 -0
- package/dist/decorators/index.js.map +1 -0
- package/dist/decorators/listen/listener-initializer.d.ts +23 -0
- package/dist/decorators/listen/listener-initializer.d.ts.map +1 -0
- package/dist/decorators/listen/listener-initializer.interface.d.ts +20 -0
- package/dist/decorators/listen/listener-initializer.interface.d.ts.map +1 -0
- package/dist/decorators/listen/listener-initializer.interface.js +2 -0
- package/dist/decorators/listen/listener-initializer.interface.js.map +1 -0
- package/dist/decorators/listen/listener-initializer.js +53 -0
- package/dist/decorators/listen/listener-initializer.js.map +1 -0
- package/dist/decorators/listen/listener-metadata-registry.d.ts +27 -0
- package/dist/decorators/listen/listener-metadata-registry.d.ts.map +1 -0
- package/dist/decorators/listen/listener-metadata-registry.interface.d.ts +26 -0
- package/dist/decorators/listen/listener-metadata-registry.interface.d.ts.map +1 -0
- package/dist/decorators/listen/listener-metadata-registry.interface.js +2 -0
- package/dist/decorators/listen/listener-metadata-registry.interface.js.map +1 -0
- package/dist/decorators/listen/listener-metadata-registry.js +51 -0
- package/dist/decorators/listen/listener-metadata-registry.js.map +1 -0
- package/dist/decorators/listen.decorator.d.ts +66 -0
- package/dist/decorators/listen.decorator.d.ts.map +1 -0
- package/dist/decorators/listen.decorator.js +72 -0
- package/dist/decorators/listen.decorator.js.map +1 -0
- package/dist/decorators/listener-initializer.d.ts +33 -0
- package/dist/decorators/listener-initializer.d.ts.map +1 -0
- package/dist/decorators/listener-initializer.js +67 -0
- package/dist/decorators/listener-initializer.js.map +1 -0
- package/dist/decorators/reactive.decorator.d.ts +45 -0
- package/dist/decorators/reactive.decorator.d.ts.map +1 -0
- package/dist/decorators/reactive.decorator.js +86 -0
- package/dist/decorators/reactive.decorator.js.map +1 -0
- package/dist/decorators/smart/capture-config.d.ts +10 -0
- package/dist/decorators/smart/capture-config.d.ts.map +1 -0
- package/dist/decorators/smart/capture-config.js +70 -0
- package/dist/decorators/smart/capture-config.js.map +1 -0
- package/dist/decorators/smart/dynamic-initializer.d.ts +14 -0
- package/dist/decorators/smart/dynamic-initializer.d.ts.map +1 -0
- package/dist/decorators/smart/dynamic-initializer.js +35 -0
- package/dist/decorators/smart/dynamic-initializer.js.map +1 -0
- package/dist/decorators/smart/dynamic-lifecycle.d.ts +17 -0
- package/dist/decorators/smart/dynamic-lifecycle.d.ts.map +1 -0
- package/dist/decorators/smart/dynamic-lifecycle.js +45 -0
- package/dist/decorators/smart/dynamic-lifecycle.js.map +1 -0
- package/dist/decorators/smart/enhanced-class.d.ts +21 -0
- package/dist/decorators/smart/enhanced-class.d.ts.map +1 -0
- package/dist/decorators/smart/enhanced-class.js +93 -0
- package/dist/decorators/smart/enhanced-class.js.map +1 -0
- package/dist/decorators/smart/smart-component-factory.d.ts +59 -0
- package/dist/decorators/smart/smart-component-factory.d.ts.map +1 -0
- package/dist/decorators/smart/smart-component-factory.interface.d.ts +48 -0
- package/dist/decorators/smart/smart-component-factory.interface.d.ts.map +1 -0
- package/dist/decorators/smart/smart-component-factory.interface.js +2 -0
- package/dist/decorators/smart/smart-component-factory.interface.js.map +1 -0
- package/dist/decorators/smart/smart-component-factory.js +271 -0
- package/dist/decorators/smart/smart-component-factory.js.map +1 -0
- package/dist/decorators/smart/types.d.ts +81 -0
- package/dist/decorators/smart/types.d.ts.map +1 -0
- package/dist/decorators/smart/types.js +2 -0
- package/dist/decorators/smart/types.js.map +1 -0
- package/dist/decorators/smart-render.decorator.d.ts +27 -0
- package/dist/decorators/smart-render.decorator.d.ts.map +1 -0
- package/dist/decorators/smart-render.decorator.js +41 -0
- package/dist/decorators/smart-render.decorator.js.map +1 -0
- package/dist/decorators/smart.decorator.d.ts +20 -0
- package/dist/decorators/smart.decorator.d.ts.map +1 -0
- package/dist/decorators/smart.decorator.js +45 -0
- package/dist/decorators/smart.decorator.js.map +1 -0
- package/dist/decorators/view-child.decorator.d.ts +21 -0
- package/dist/decorators/view-child.decorator.d.ts.map +1 -0
- package/dist/decorators/view-child.decorator.js +56 -0
- package/dist/decorators/view-child.decorator.js.map +1 -0
- package/dist/events/action-publisher.interface.d.ts +69 -0
- package/dist/events/action-publisher.interface.d.ts.map +1 -0
- package/dist/events/action-publisher.interface.js +2 -0
- package/dist/events/action-publisher.interface.js.map +1 -0
- package/dist/events/event-bus.d.ts +11 -0
- package/dist/events/event-bus.d.ts.map +1 -0
- package/dist/events/event-bus.interface.d.ts +66 -0
- package/dist/events/event-bus.interface.d.ts.map +1 -0
- package/dist/events/event-bus.interface.js +2 -0
- package/dist/events/event-bus.interface.js.map +1 -0
- package/dist/events/event-bus.js +11 -0
- package/dist/events/event-bus.js.map +1 -0
- package/dist/events/event-object.d.ts +33 -0
- package/dist/events/event-object.d.ts.map +1 -0
- package/dist/events/event-object.js +35 -0
- package/dist/events/event-object.js.map +1 -0
- package/dist/events/event-payload.d.ts +16 -0
- package/dist/events/event-payload.d.ts.map +1 -0
- package/dist/events/event-payload.js +2 -0
- package/dist/events/event-payload.js.map +1 -0
- package/dist/events/event-store.d.ts +99 -0
- package/dist/events/event-store.d.ts.map +1 -0
- package/dist/events/event-store.js +95 -0
- package/dist/events/event-store.js.map +1 -0
- package/dist/events/rx-event-bus.d.ts +109 -0
- package/dist/events/rx-event-bus.d.ts.map +1 -0
- package/dist/events/rx-event-bus.js +210 -0
- package/dist/events/rx-event-bus.js.map +1 -0
- package/dist/html/register-smart-behavior.d.ts +27 -0
- package/dist/html/register-smart-behavior.d.ts.map +1 -0
- package/dist/html/register-smart-behavior.js +42 -0
- package/dist/html/register-smart-behavior.js.map +1 -0
- package/dist/html/register-smart-element.d.ts +26 -0
- package/dist/html/register-smart-element.d.ts.map +1 -0
- package/dist/html/register-smart-element.js +28 -0
- package/dist/html/register-smart-element.js.map +1 -0
- package/dist/html/services-bootstrap.d.ts +17 -0
- package/dist/html/services-bootstrap.d.ts.map +1 -0
- package/dist/html/services-bootstrap.js +40 -0
- package/dist/html/services-bootstrap.js.map +1 -0
- package/dist/html/smart-element-factory.d.ts +51 -0
- package/dist/html/smart-element-factory.d.ts.map +1 -0
- package/dist/html/smart-element-factory.interface.d.ts +17 -0
- package/dist/html/smart-element-factory.interface.d.ts.map +1 -0
- package/dist/html/smart-element-factory.interface.js +2 -0
- package/dist/html/smart-element-factory.interface.js.map +1 -0
- package/dist/html/smart-element-factory.js +118 -0
- package/dist/html/smart-element-factory.js.map +1 -0
- package/dist/html/smart-element-registrar.d.ts +43 -0
- package/dist/html/smart-element-registrar.d.ts.map +1 -0
- package/dist/html/smart-element-registrar.interface.d.ts +17 -0
- package/dist/html/smart-element-registrar.interface.d.ts.map +1 -0
- package/dist/html/smart-element-registrar.interface.js +2 -0
- package/dist/html/smart-element-registrar.interface.js.map +1 -0
- package/dist/html/smart-element-registrar.js +77 -0
- package/dist/html/smart-element-registrar.js.map +1 -0
- package/dist/html/smart-tags.d.ts +16 -0
- package/dist/html/smart-tags.d.ts.map +1 -0
- package/dist/html/smart-tags.js +30 -0
- package/dist/html/smart-tags.js.map +1 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +31 -0
- package/dist/index.js.map +1 -0
- package/dist/observers/document-locale-observer.d.ts +15 -0
- package/dist/observers/document-locale-observer.d.ts.map +1 -0
- package/dist/observers/document-locale-observer.js +43 -0
- package/dist/observers/document-locale-observer.js.map +1 -0
- package/dist/observers/document-theme-observer.d.ts +17 -0
- package/dist/observers/document-theme-observer.d.ts.map +1 -0
- package/dist/observers/document-theme-observer.js +64 -0
- package/dist/observers/document-theme-observer.js.map +1 -0
- package/dist/observers/locale-observer.interface.d.ts +21 -0
- package/dist/observers/locale-observer.interface.d.ts.map +1 -0
- package/dist/observers/locale-observer.interface.js +2 -0
- package/dist/observers/locale-observer.interface.js.map +1 -0
- package/dist/observers/theme-observer.interface.d.ts +21 -0
- package/dist/observers/theme-observer.interface.d.ts.map +1 -0
- package/dist/observers/theme-observer.interface.js +2 -0
- package/dist/observers/theme-observer.interface.js.map +1 -0
- package/dist/providers/adapters/index.d.ts +19 -0
- package/dist/providers/adapters/index.d.ts.map +1 -0
- package/dist/providers/adapters/index.js +19 -0
- package/dist/providers/adapters/index.js.map +1 -0
- package/dist/providers/adapters/tsyringe-adapter.d.ts +139 -0
- package/dist/providers/adapters/tsyringe-adapter.d.ts.map +1 -0
- package/dist/providers/adapters/tsyringe-adapter.js +151 -0
- package/dist/providers/adapters/tsyringe-adapter.js.map +1 -0
- package/dist/providers/app-services.d.ts +131 -0
- package/dist/providers/app-services.d.ts.map +1 -0
- package/dist/providers/app-services.js +174 -0
- package/dist/providers/app-services.js.map +1 -0
- package/dist/providers/default-service-provider.d.ts +57 -0
- package/dist/providers/default-service-provider.d.ts.map +1 -0
- package/dist/providers/default-service-provider.js +89 -0
- package/dist/providers/default-service-provider.js.map +1 -0
- package/dist/providers/framework-bootstrap.d.ts +58 -0
- package/dist/providers/framework-bootstrap.d.ts.map +1 -0
- package/dist/providers/framework-bootstrap.js +153 -0
- package/dist/providers/framework-bootstrap.js.map +1 -0
- package/dist/providers/framework-element-registration.d.ts +2 -0
- package/dist/providers/framework-element-registration.d.ts.map +1 -0
- package/dist/providers/framework-element-registration.js +42 -0
- package/dist/providers/framework-element-registration.js.map +1 -0
- package/dist/providers/service-provider.d.ts +70 -0
- package/dist/providers/service-provider.d.ts.map +1 -0
- package/dist/providers/service-provider.interface.d.ts +55 -0
- package/dist/providers/service-provider.interface.d.ts.map +1 -0
- package/dist/providers/service-provider.interface.js +2 -0
- package/dist/providers/service-provider.interface.js.map +1 -0
- package/dist/providers/service-provider.js +102 -0
- package/dist/providers/service-provider.js.map +1 -0
- package/dist/reactive/dependency-tracker.d.ts +34 -0
- package/dist/reactive/dependency-tracker.d.ts.map +1 -0
- package/dist/reactive/dependency-tracker.interface.d.ts +34 -0
- package/dist/reactive/dependency-tracker.interface.d.ts.map +1 -0
- package/dist/reactive/dependency-tracker.interface.js +2 -0
- package/dist/reactive/dependency-tracker.interface.js.map +1 -0
- package/dist/reactive/dependency-tracker.js +47 -0
- package/dist/reactive/dependency-tracker.js.map +1 -0
- package/dist/reactive/index.d.ts +5 -0
- package/dist/reactive/index.d.ts.map +1 -0
- package/dist/reactive/index.js +4 -0
- package/dist/reactive/index.js.map +1 -0
- package/dist/reactive/observable.d.ts +15 -0
- package/dist/reactive/observable.d.ts.map +1 -0
- package/dist/reactive/observable.js +2 -0
- package/dist/reactive/observable.js.map +1 -0
- package/dist/reactive/operators.d.ts +6 -0
- package/dist/reactive/operators.d.ts.map +1 -0
- package/dist/reactive/operators.js +11 -0
- package/dist/reactive/operators.js.map +1 -0
- package/dist/reactive/signal.d.ts +41 -0
- package/dist/reactive/signal.d.ts.map +1 -0
- package/dist/reactive/signal.js +37 -0
- package/dist/reactive/signal.js.map +1 -0
- package/dist/reactive/subject.d.ts +30 -0
- package/dist/reactive/subject.d.ts.map +1 -0
- package/dist/reactive/subject.js +53 -0
- package/dist/reactive/subject.js.map +1 -0
- package/dist/reactive/subscription.d.ts +33 -0
- package/dist/reactive/subscription.d.ts.map +1 -0
- package/dist/reactive/subscription.js +53 -0
- package/dist/reactive/subscription.js.map +1 -0
- package/dist/registration/register-smart-behavior.d.ts +27 -0
- package/dist/registration/register-smart-behavior.d.ts.map +1 -0
- package/dist/registration/register-smart-behavior.js +42 -0
- package/dist/registration/register-smart-behavior.js.map +1 -0
- package/dist/registration/register-smart-element.d.ts +27 -0
- package/dist/registration/register-smart-element.d.ts.map +1 -0
- package/dist/registration/register-smart-element.js +26 -0
- package/dist/registration/register-smart-element.js.map +1 -0
- package/dist/registration/smart-element-factory.d.ts +46 -0
- package/dist/registration/smart-element-factory.d.ts.map +1 -0
- package/dist/registration/smart-element-factory.interface.d.ts +17 -0
- package/dist/registration/smart-element-factory.interface.d.ts.map +1 -0
- package/dist/registration/smart-element-factory.interface.js +2 -0
- package/dist/registration/smart-element-factory.interface.js.map +1 -0
- package/dist/registration/smart-element-factory.js +146 -0
- package/dist/registration/smart-element-factory.js.map +1 -0
- package/dist/registration/smart-element-registrar.d.ts +41 -0
- package/dist/registration/smart-element-registrar.d.ts.map +1 -0
- package/dist/registration/smart-element-registrar.interface.d.ts +17 -0
- package/dist/registration/smart-element-registrar.interface.d.ts.map +1 -0
- package/dist/registration/smart-element-registrar.interface.js +2 -0
- package/dist/registration/smart-element-registrar.interface.js.map +1 -0
- package/dist/registration/smart-element-registrar.js +56 -0
- package/dist/registration/smart-element-registrar.js.map +1 -0
- package/dist/registration/smart-tags.d.ts +16 -0
- package/dist/registration/smart-tags.d.ts.map +1 -0
- package/dist/registration/smart-tags.js +30 -0
- package/dist/registration/smart-tags.js.map +1 -0
- package/dist/rendering/bindings/binding-resolver.d.ts +90 -0
- package/dist/rendering/bindings/binding-resolver.d.ts.map +1 -0
- package/dist/rendering/bindings/binding-resolver.interface.d.ts +31 -0
- package/dist/rendering/bindings/binding-resolver.interface.d.ts.map +1 -0
- package/dist/rendering/bindings/binding-resolver.interface.js +2 -0
- package/dist/rendering/bindings/binding-resolver.interface.js.map +1 -0
- package/dist/rendering/bindings/binding-resolver.js +232 -0
- package/dist/rendering/bindings/binding-resolver.js.map +1 -0
- package/dist/rendering/bindings/expresion-resolver.d.ts +55 -0
- package/dist/rendering/bindings/expresion-resolver.d.ts.map +1 -0
- package/dist/rendering/bindings/expresion-resolver.interface.d.ts +25 -0
- package/dist/rendering/bindings/expresion-resolver.interface.d.ts.map +1 -0
- package/dist/rendering/bindings/expresion-resolver.interface.js +2 -0
- package/dist/rendering/bindings/expresion-resolver.interface.js.map +1 -0
- package/dist/rendering/bindings/expresion-resolver.js +175 -0
- package/dist/rendering/bindings/expresion-resolver.js.map +1 -0
- package/dist/rendering/bindings/expression-resolver.d.ts +48 -0
- package/dist/rendering/bindings/expression-resolver.d.ts.map +1 -0
- package/dist/rendering/bindings/expression-resolver.interface.d.ts +25 -0
- package/dist/rendering/bindings/expression-resolver.interface.d.ts.map +1 -0
- package/dist/rendering/bindings/expression-resolver.interface.js +2 -0
- package/dist/rendering/bindings/expression-resolver.interface.js.map +1 -0
- package/dist/rendering/bindings/expression-resolver.js +169 -0
- package/dist/rendering/bindings/expression-resolver.js.map +1 -0
- package/dist/rendering/bindings/property-extractor.d.ts +36 -0
- package/dist/rendering/bindings/property-extractor.d.ts.map +1 -0
- package/dist/rendering/bindings/property-extractor.interface.d.ts +21 -0
- package/dist/rendering/bindings/property-extractor.interface.d.ts.map +1 -0
- package/dist/rendering/bindings/property-extractor.interface.js +2 -0
- package/dist/rendering/bindings/property-extractor.interface.js.map +1 -0
- package/dist/rendering/bindings/property-extractor.js +69 -0
- package/dist/rendering/bindings/property-extractor.js.map +1 -0
- package/dist/rendering/bindings/rules-resolver.d.ts +29 -0
- package/dist/rendering/bindings/rules-resolver.d.ts.map +1 -0
- package/dist/rendering/bindings/rules-resolver.interface.d.ts +16 -0
- package/dist/rendering/bindings/rules-resolver.interface.d.ts.map +1 -0
- package/dist/rendering/bindings/rules-resolver.interface.js +2 -0
- package/dist/rendering/bindings/rules-resolver.interface.js.map +1 -0
- package/dist/rendering/bindings/rules-resolver.js +69 -0
- package/dist/rendering/bindings/rules-resolver.js.map +1 -0
- package/dist/rendering/bindings/smart-input-store.d.ts +11 -0
- package/dist/rendering/bindings/smart-input-store.d.ts.map +1 -0
- package/dist/rendering/bindings/smart-input-store.interface.d.ts +54 -0
- package/dist/rendering/bindings/smart-input-store.interface.d.ts.map +1 -0
- package/dist/rendering/bindings/smart-input-store.interface.js +5 -0
- package/dist/rendering/bindings/smart-input-store.interface.js.map +1 -0
- package/dist/rendering/bindings/smart-input-store.js +92 -0
- package/dist/rendering/bindings/smart-input-store.js.map +1 -0
- package/dist/rendering/bindings/static-binding-resolver.d.ts +28 -0
- package/dist/rendering/bindings/static-binding-resolver.d.ts.map +1 -0
- package/dist/rendering/bindings/static-binding-resolver.interface.d.ts +15 -0
- package/dist/rendering/bindings/static-binding-resolver.interface.d.ts.map +1 -0
- package/dist/rendering/bindings/static-binding-resolver.interface.js +2 -0
- package/dist/rendering/bindings/static-binding-resolver.interface.js.map +1 -0
- package/dist/rendering/bindings/static-binding-resolver.js +65 -0
- package/dist/rendering/bindings/static-binding-resolver.js.map +1 -0
- package/dist/rendering/dom/browser-dom-adapter.d.ts +30 -0
- package/dist/rendering/dom/browser-dom-adapter.d.ts.map +1 -0
- package/dist/rendering/dom/browser-dom-adapter.js +40 -0
- package/dist/rendering/dom/browser-dom-adapter.js.map +1 -0
- package/dist/rendering/dom/dom-adapter.interface.d.ts +39 -0
- package/dist/rendering/dom/dom-adapter.interface.d.ts.map +1 -0
- package/dist/rendering/dom/dom-adapter.interface.js +2 -0
- package/dist/rendering/dom/dom-adapter.interface.js.map +1 -0
- package/dist/rendering/dom/index.d.ts +9 -0
- package/dist/rendering/dom/index.d.ts.map +1 -0
- package/dist/rendering/dom/index.js +8 -0
- package/dist/rendering/dom/index.js.map +1 -0
- package/dist/rendering/dom/node-types.d.ts +21 -0
- package/dist/rendering/dom/node-types.d.ts.map +1 -0
- package/dist/rendering/dom/node-types.js +21 -0
- package/dist/rendering/dom/node-types.js.map +1 -0
- package/dist/rendering/dom-context/dom-context-factory.d.ts +31 -0
- package/dist/rendering/dom-context/dom-context-factory.d.ts.map +1 -0
- package/dist/rendering/dom-context/dom-context-factory.interface.d.ts +14 -0
- package/dist/rendering/dom-context/dom-context-factory.interface.d.ts.map +1 -0
- package/dist/rendering/dom-context/dom-context-factory.interface.js +2 -0
- package/dist/rendering/dom-context/dom-context-factory.interface.js.map +1 -0
- package/dist/rendering/dom-context/dom-context-factory.js +20 -0
- package/dist/rendering/dom-context/dom-context-factory.js.map +1 -0
- package/dist/rendering/dom-context/dom-context-host-resolver.d.ts +55 -0
- package/dist/rendering/dom-context/dom-context-host-resolver.d.ts.map +1 -0
- package/dist/rendering/dom-context/dom-context-host-resolver.js +90 -0
- package/dist/rendering/dom-context/dom-context-host-resolver.js.map +1 -0
- package/dist/rendering/dom-context/dom-context.d.ts +168 -0
- package/dist/rendering/dom-context/dom-context.d.ts.map +1 -0
- package/dist/rendering/dom-context/dom-context.interface.d.ts +156 -0
- package/dist/rendering/dom-context/dom-context.interface.d.ts.map +1 -0
- package/dist/rendering/dom-context/dom-context.interface.js +17 -0
- package/dist/rendering/dom-context/dom-context.interface.js.map +1 -0
- package/dist/rendering/dom-context/dom-context.js +225 -0
- package/dist/rendering/dom-context/dom-context.js.map +1 -0
- package/dist/rendering/dom-context/host-resolver.interface.d.ts +47 -0
- package/dist/rendering/dom-context/host-resolver.interface.d.ts.map +1 -0
- package/dist/rendering/dom-context/host-resolver.interface.js +2 -0
- package/dist/rendering/dom-context/host-resolver.interface.js.map +1 -0
- package/dist/rendering/dom-context/index.d.ts +5 -0
- package/dist/rendering/dom-context/index.d.ts.map +1 -0
- package/dist/rendering/dom-context/index.js +4 -0
- package/dist/rendering/dom-context/index.js.map +1 -0
- package/dist/rendering/errors/error-render-options.interface.d.ts +29 -0
- package/dist/rendering/errors/error-render-options.interface.d.ts.map +1 -0
- package/dist/rendering/errors/error-render-options.interface.js +2 -0
- package/dist/rendering/errors/error-render-options.interface.js.map +1 -0
- package/dist/rendering/errors/error-renderer.d.ts +71 -0
- package/dist/rendering/errors/error-renderer.d.ts.map +1 -0
- package/dist/rendering/errors/error-renderer.interface.d.ts +29 -0
- package/dist/rendering/errors/error-renderer.interface.d.ts.map +1 -0
- package/dist/rendering/errors/error-renderer.interface.js +2 -0
- package/dist/rendering/errors/error-renderer.interface.js.map +1 -0
- package/dist/rendering/errors/error-renderer.js +127 -0
- package/dist/rendering/errors/error-renderer.js.map +1 -0
- package/dist/rendering/expression-parser/dependency-extractor.d.ts +36 -0
- package/dist/rendering/expression-parser/dependency-extractor.d.ts.map +1 -0
- package/dist/rendering/expression-parser/dependency-extractor.js +83 -0
- package/dist/rendering/expression-parser/dependency-extractor.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/ast.evaluator.d.ts +54 -0
- package/dist/rendering/expression-parser/evaluators/ast.evaluator.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/ast.evaluator.js +92 -0
- package/dist/rendering/expression-parser/evaluators/ast.evaluator.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/base.d.ts +20 -0
- package/dist/rendering/expression-parser/evaluators/base.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/base.js +2 -0
- package/dist/rendering/expression-parser/evaluators/base.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/binary.evaluator.d.ts +29 -0
- package/dist/rendering/expression-parser/evaluators/binary.evaluator.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/binary.evaluator.js +55 -0
- package/dist/rendering/expression-parser/evaluators/binary.evaluator.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/call.evaluator.d.ts +38 -0
- package/dist/rendering/expression-parser/evaluators/call.evaluator.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/call.evaluator.js +62 -0
- package/dist/rendering/expression-parser/evaluators/call.evaluator.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/conditional.evaluator.d.ts +29 -0
- package/dist/rendering/expression-parser/evaluators/conditional.evaluator.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/conditional.evaluator.js +38 -0
- package/dist/rendering/expression-parser/evaluators/conditional.evaluator.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/identifier.evaluator.d.ts +28 -0
- package/dist/rendering/expression-parser/evaluators/identifier.evaluator.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/identifier.evaluator.js +33 -0
- package/dist/rendering/expression-parser/evaluators/identifier.evaluator.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/index.d.ts +10 -0
- package/dist/rendering/expression-parser/evaluators/index.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/index.js +9 -0
- package/dist/rendering/expression-parser/evaluators/index.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/literal.evaluator.d.ts +27 -0
- package/dist/rendering/expression-parser/evaluators/literal.evaluator.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/literal.evaluator.js +29 -0
- package/dist/rendering/expression-parser/evaluators/literal.evaluator.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/member.evaluator.d.ts +29 -0
- package/dist/rendering/expression-parser/evaluators/member.evaluator.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/member.evaluator.js +39 -0
- package/dist/rendering/expression-parser/evaluators/member.evaluator.js.map +1 -0
- package/dist/rendering/expression-parser/evaluators/unary.evaluator.d.ts +29 -0
- package/dist/rendering/expression-parser/evaluators/unary.evaluator.d.ts.map +1 -0
- package/dist/rendering/expression-parser/evaluators/unary.evaluator.js +44 -0
- package/dist/rendering/expression-parser/evaluators/unary.evaluator.js.map +1 -0
- package/dist/rendering/expression-parser/expression-cache.d.ts +65 -0
- package/dist/rendering/expression-parser/expression-cache.d.ts.map +1 -0
- package/dist/rendering/expression-parser/expression-cache.js +79 -0
- package/dist/rendering/expression-parser/expression-cache.js.map +1 -0
- package/dist/rendering/expression-parser/expression-parser.factory.d.ts +105 -0
- package/dist/rendering/expression-parser/expression-parser.factory.d.ts.map +1 -0
- package/dist/rendering/expression-parser/expression-parser.factory.js +113 -0
- package/dist/rendering/expression-parser/expression-parser.factory.js.map +1 -0
- package/dist/rendering/expression-parser/expression-parser.service.d.ts +30 -0
- package/dist/rendering/expression-parser/expression-parser.service.d.ts.map +1 -0
- package/dist/rendering/expression-parser/expression-parser.service.js +96 -0
- package/dist/rendering/expression-parser/expression-parser.service.js.map +1 -0
- package/dist/rendering/expression-parser/host-projector.d.ts +80 -0
- package/dist/rendering/expression-parser/host-projector.d.ts.map +1 -0
- package/dist/rendering/expression-parser/host-projector.js +97 -0
- package/dist/rendering/expression-parser/host-projector.js.map +1 -0
- package/dist/rendering/expression-parser/index.d.ts +6 -0
- package/dist/rendering/expression-parser/index.d.ts.map +1 -0
- package/dist/rendering/expression-parser/index.js +15 -0
- package/dist/rendering/expression-parser/index.js.map +1 -0
- package/dist/rendering/expression-parser/interfaces.d.ts +41 -0
- package/dist/rendering/expression-parser/interfaces.d.ts.map +1 -0
- package/dist/rendering/expression-parser/interfaces.js +2 -0
- package/dist/rendering/expression-parser/interfaces.js.map +1 -0
- package/dist/rendering/expression-parser/parser.d.ts +135 -0
- package/dist/rendering/expression-parser/parser.d.ts.map +1 -0
- package/dist/rendering/expression-parser/parser.js +345 -0
- package/dist/rendering/expression-parser/parser.js.map +1 -0
- package/dist/rendering/expression-parser/safe-method-validator.interface.d.ts +23 -0
- package/dist/rendering/expression-parser/safe-method-validator.interface.d.ts.map +1 -0
- package/dist/rendering/expression-parser/safe-method-validator.interface.js +2 -0
- package/dist/rendering/expression-parser/safe-method-validator.interface.js.map +1 -0
- package/dist/rendering/expression-parser/safe-methods.d.ts +29 -0
- package/dist/rendering/expression-parser/safe-methods.d.ts.map +1 -0
- package/dist/rendering/expression-parser/safe-methods.js +136 -0
- package/dist/rendering/expression-parser/safe-methods.js.map +1 -0
- package/dist/rendering/expression-parser/tokenizer.d.ts +68 -0
- package/dist/rendering/expression-parser/tokenizer.d.ts.map +1 -0
- package/dist/rendering/expression-parser/tokenizer.js +282 -0
- package/dist/rendering/expression-parser/tokenizer.js.map +1 -0
- package/dist/rendering/expression-parser/types.d.ts +234 -0
- package/dist/rendering/expression-parser/types.d.ts.map +1 -0
- package/dist/rendering/expression-parser/types.js +33 -0
- package/dist/rendering/expression-parser/types.js.map +1 -0
- package/dist/rendering/host-projection/host-projection-registry.interface.d.ts +54 -0
- package/dist/rendering/host-projection/host-projection-registry.interface.d.ts.map +1 -0
- package/dist/rendering/host-projection/host-projection-registry.interface.js +2 -0
- package/dist/rendering/host-projection/host-projection-registry.interface.js.map +1 -0
- package/dist/rendering/host-projection/host-projection.registry.d.ts +67 -0
- package/dist/rendering/host-projection/host-projection.registry.d.ts.map +1 -0
- package/dist/rendering/host-projection/host-projection.registry.js +96 -0
- package/dist/rendering/host-projection/host-projection.registry.js.map +1 -0
- package/dist/rendering/host-projection/index.d.ts +3 -0
- package/dist/rendering/host-projection/index.d.ts.map +1 -0
- package/dist/rendering/host-projection/index.js +2 -0
- package/dist/rendering/host-projection/index.js.map +1 -0
- package/dist/rendering/host-resolver/dom-context-host-resolver.d.ts +55 -0
- package/dist/rendering/host-resolver/dom-context-host-resolver.d.ts.map +1 -0
- package/dist/rendering/host-resolver/dom-context-host-resolver.js +90 -0
- package/dist/rendering/host-resolver/dom-context-host-resolver.js.map +1 -0
- package/dist/rendering/host-resolver/host-resolver.interface.d.ts +47 -0
- package/dist/rendering/host-resolver/host-resolver.interface.d.ts.map +1 -0
- package/dist/rendering/host-resolver/host-resolver.interface.js +2 -0
- package/dist/rendering/host-resolver/host-resolver.interface.js.map +1 -0
- package/dist/rendering/host-resolver/index.d.ts +3 -0
- package/dist/rendering/host-resolver/index.d.ts.map +1 -0
- package/dist/rendering/host-resolver/index.js +2 -0
- package/dist/rendering/host-resolver/index.js.map +1 -0
- package/dist/rendering/index.d.ts +34 -0
- package/dist/rendering/index.d.ts.map +1 -0
- package/dist/rendering/index.js +27 -0
- package/dist/rendering/index.js.map +1 -0
- package/dist/rendering/inputs/smart-input-store.d.ts +11 -0
- package/dist/rendering/inputs/smart-input-store.d.ts.map +1 -0
- package/dist/rendering/inputs/smart-input-store.interface.d.ts +54 -0
- package/dist/rendering/inputs/smart-input-store.interface.d.ts.map +1 -0
- package/dist/rendering/inputs/smart-input-store.interface.js +5 -0
- package/dist/rendering/inputs/smart-input-store.interface.js.map +1 -0
- package/dist/rendering/inputs/smart-input-store.js +92 -0
- package/dist/rendering/inputs/smart-input-store.js.map +1 -0
- package/dist/rendering/lifecycle/lifecycle-coordinator.d.ts +94 -0
- package/dist/rendering/lifecycle/lifecycle-coordinator.d.ts.map +1 -0
- package/dist/rendering/lifecycle/lifecycle-coordinator.js +142 -0
- package/dist/rendering/lifecycle/lifecycle-coordinator.js.map +1 -0
- package/dist/rendering/lifecycle/mount-context.interface.d.ts +50 -0
- package/dist/rendering/lifecycle/mount-context.interface.d.ts.map +1 -0
- package/dist/rendering/lifecycle/mount-context.interface.js +2 -0
- package/dist/rendering/lifecycle/mount-context.interface.js.map +1 -0
- package/dist/rendering/lifecycle/mount-session.d.ts +49 -0
- package/dist/rendering/lifecycle/mount-session.d.ts.map +1 -0
- package/dist/rendering/lifecycle/mount-session.js +71 -0
- package/dist/rendering/lifecycle/mount-session.js.map +1 -0
- package/dist/rendering/managed-host/host-style-migrator.d.ts +55 -0
- package/dist/rendering/managed-host/host-style-migrator.d.ts.map +1 -0
- package/dist/rendering/managed-host/host-style-migrator.interface.d.ts +42 -0
- package/dist/rendering/managed-host/host-style-migrator.interface.d.ts.map +1 -0
- package/dist/rendering/managed-host/host-style-migrator.interface.js +2 -0
- package/dist/rendering/managed-host/host-style-migrator.interface.js.map +1 -0
- package/dist/rendering/managed-host/host-style-migrator.js +105 -0
- package/dist/rendering/managed-host/host-style-migrator.js.map +1 -0
- package/dist/rendering/managed-host/index.d.ts +18 -0
- package/dist/rendering/managed-host/index.d.ts.map +1 -0
- package/dist/rendering/managed-host/index.js +14 -0
- package/dist/rendering/managed-host/index.js.map +1 -0
- package/dist/rendering/managed-host/input-attribute-policy.d.ts +60 -0
- package/dist/rendering/managed-host/input-attribute-policy.d.ts.map +1 -0
- package/dist/rendering/managed-host/input-attribute-policy.interface.d.ts +43 -0
- package/dist/rendering/managed-host/input-attribute-policy.interface.d.ts.map +1 -0
- package/dist/rendering/managed-host/input-attribute-policy.interface.js +2 -0
- package/dist/rendering/managed-host/input-attribute-policy.interface.js.map +1 -0
- package/dist/rendering/managed-host/input-attribute-policy.js +114 -0
- package/dist/rendering/managed-host/input-attribute-policy.js.map +1 -0
- package/dist/rendering/managed-host/managed-element-registry.d.ts +35 -0
- package/dist/rendering/managed-host/managed-element-registry.d.ts.map +1 -0
- package/dist/rendering/managed-host/managed-element-registry.js +103 -0
- package/dist/rendering/managed-host/managed-element-registry.js.map +1 -0
- package/dist/rendering/managed-host/managed-element-resolver.d.ts +27 -0
- package/dist/rendering/managed-host/managed-element-resolver.d.ts.map +1 -0
- package/dist/rendering/managed-host/managed-element-resolver.interface.d.ts +36 -0
- package/dist/rendering/managed-host/managed-element-resolver.interface.d.ts.map +1 -0
- package/dist/rendering/managed-host/managed-element-resolver.interface.js +2 -0
- package/dist/rendering/managed-host/managed-element-resolver.interface.js.map +1 -0
- package/dist/rendering/managed-host/managed-element-resolver.js +31 -0
- package/dist/rendering/managed-host/managed-element-resolver.js.map +1 -0
- package/dist/rendering/managed-host/managed-host-context.interface.d.ts +31 -0
- package/dist/rendering/managed-host/managed-host-context.interface.d.ts.map +1 -0
- package/dist/rendering/managed-host/managed-host-context.interface.js +2 -0
- package/dist/rendering/managed-host/managed-host-context.interface.js.map +1 -0
- package/dist/rendering/managed-host/outlet-resolver.d.ts +43 -0
- package/dist/rendering/managed-host/outlet-resolver.d.ts.map +1 -0
- package/dist/rendering/managed-host/outlet-resolver.interface.d.ts +28 -0
- package/dist/rendering/managed-host/outlet-resolver.interface.d.ts.map +1 -0
- package/dist/rendering/managed-host/outlet-resolver.interface.js +2 -0
- package/dist/rendering/managed-host/outlet-resolver.interface.js.map +1 -0
- package/dist/rendering/managed-host/outlet-resolver.js +59 -0
- package/dist/rendering/managed-host/outlet-resolver.js.map +1 -0
- package/dist/rendering/pipeline/error-renderer.d.ts +107 -0
- package/dist/rendering/pipeline/error-renderer.d.ts.map +1 -0
- package/dist/rendering/pipeline/error-renderer.js +127 -0
- package/dist/rendering/pipeline/error-renderer.js.map +1 -0
- package/dist/rendering/pipeline/render-pipeline.d.ts +87 -0
- package/dist/rendering/pipeline/render-pipeline.d.ts.map +1 -0
- package/dist/rendering/pipeline/render-pipeline.interface.d.ts +54 -0
- package/dist/rendering/pipeline/render-pipeline.interface.d.ts.map +1 -0
- package/dist/rendering/pipeline/render-pipeline.interface.js +2 -0
- package/dist/rendering/pipeline/render-pipeline.interface.js.map +1 -0
- package/dist/rendering/pipeline/render-pipeline.js +201 -0
- package/dist/rendering/pipeline/render-pipeline.js.map +1 -0
- package/dist/rendering/refs/get-component-host.d.ts +25 -0
- package/dist/rendering/refs/get-component-host.d.ts.map +1 -0
- package/dist/rendering/refs/get-component-host.js +27 -0
- package/dist/rendering/refs/get-component-host.js.map +1 -0
- package/dist/rendering/refs/host-ref-registry.d.ts +43 -0
- package/dist/rendering/refs/host-ref-registry.d.ts.map +1 -0
- package/dist/rendering/refs/host-ref-registry.js +38 -0
- package/dist/rendering/refs/host-ref-registry.js.map +1 -0
- package/dist/rendering/refs/ref-resolver.d.ts +44 -0
- package/dist/rendering/refs/ref-resolver.d.ts.map +1 -0
- package/dist/rendering/refs/ref-resolver.js +54 -0
- package/dist/rendering/refs/ref-resolver.js.map +1 -0
- package/dist/rendering/render-engine-facade.d.ts +80 -0
- package/dist/rendering/render-engine-facade.d.ts.map +1 -0
- package/dist/rendering/render-engine-facade.js +90 -0
- package/dist/rendering/render-engine-facade.js.map +1 -0
- package/dist/rendering/render-engine-factory.d.ts +158 -0
- package/dist/rendering/render-engine-factory.d.ts.map +1 -0
- package/dist/rendering/render-engine-factory.js +225 -0
- package/dist/rendering/render-engine-factory.js.map +1 -0
- package/dist/rendering/render-engine.d.ts +200 -0
- package/dist/rendering/render-engine.d.ts.map +1 -0
- package/dist/rendering/render-engine.js +205 -0
- package/dist/rendering/render-engine.js.map +1 -0
- package/dist/rendering/skeleton/skeleton-renderer.d.ts +91 -0
- package/dist/rendering/skeleton/skeleton-renderer.d.ts.map +1 -0
- package/dist/rendering/skeleton/skeleton-renderer.interface.d.ts +33 -0
- package/dist/rendering/skeleton/skeleton-renderer.interface.d.ts.map +1 -0
- package/dist/rendering/skeleton/skeleton-renderer.interface.js +2 -0
- package/dist/rendering/skeleton/skeleton-renderer.interface.js.map +1 -0
- package/dist/rendering/skeleton/skeleton-renderer.js +188 -0
- package/dist/rendering/skeleton/skeleton-renderer.js.map +1 -0
- package/dist/rendering/skeleton/skeleton-validator.d.ts +51 -0
- package/dist/rendering/skeleton/skeleton-validator.d.ts.map +1 -0
- package/dist/rendering/skeleton/skeleton-validator.interface.d.ts +23 -0
- package/dist/rendering/skeleton/skeleton-validator.interface.d.ts.map +1 -0
- package/dist/rendering/skeleton/skeleton-validator.interface.js +2 -0
- package/dist/rendering/skeleton/skeleton-validator.interface.js.map +1 -0
- package/dist/rendering/skeleton/skeleton-validator.js +215 -0
- package/dist/rendering/skeleton/skeleton-validator.js.map +1 -0
- package/dist/rendering/slots/index.d.ts +2 -0
- package/dist/rendering/slots/index.d.ts.map +1 -0
- package/dist/rendering/slots/index.js +2 -0
- package/dist/rendering/slots/index.js.map +1 -0
- package/dist/rendering/slots/slot-content.registry.d.ts +58 -0
- package/dist/rendering/slots/slot-content.registry.d.ts.map +1 -0
- package/dist/rendering/slots/slot-content.registry.js +77 -0
- package/dist/rendering/slots/slot-content.registry.js.map +1 -0
- package/dist/rendering/styles/shared-styles-registry.d.ts +68 -0
- package/dist/rendering/styles/shared-styles-registry.d.ts.map +1 -0
- package/dist/rendering/styles/shared-styles-registry.js +55 -0
- package/dist/rendering/styles/shared-styles-registry.js.map +1 -0
- package/dist/rendering/support/error-render-options.interface.d.ts +29 -0
- package/dist/rendering/support/error-render-options.interface.d.ts.map +1 -0
- package/dist/rendering/support/error-render-options.interface.js +2 -0
- package/dist/rendering/support/error-render-options.interface.js.map +1 -0
- package/dist/rendering/support/error-renderer.d.ts +56 -0
- package/dist/rendering/support/error-renderer.d.ts.map +1 -0
- package/dist/rendering/support/error-renderer.interface.d.ts +29 -0
- package/dist/rendering/support/error-renderer.interface.d.ts.map +1 -0
- package/dist/rendering/support/error-renderer.interface.js +2 -0
- package/dist/rendering/support/error-renderer.interface.js.map +1 -0
- package/dist/rendering/support/error-renderer.js +92 -0
- package/dist/rendering/support/error-renderer.js.map +1 -0
- package/dist/rendering/support/safe-methods.d.ts +46 -0
- package/dist/rendering/support/safe-methods.d.ts.map +1 -0
- package/dist/rendering/support/safe-methods.js +138 -0
- package/dist/rendering/support/safe-methods.js.map +1 -0
- package/dist/rendering/support/smart-input-store.d.ts +11 -0
- package/dist/rendering/support/smart-input-store.d.ts.map +1 -0
- package/dist/rendering/support/smart-input-store.interface.d.ts +54 -0
- package/dist/rendering/support/smart-input-store.interface.d.ts.map +1 -0
- package/dist/rendering/support/smart-input-store.interface.js +5 -0
- package/dist/rendering/support/smart-input-store.interface.js.map +1 -0
- package/dist/rendering/support/smart-input-store.js +92 -0
- package/dist/rendering/support/smart-input-store.js.map +1 -0
- package/dist/rendering/templates/compiled-template.interface.d.ts +34 -0
- package/dist/rendering/templates/compiled-template.interface.d.ts.map +1 -0
- package/dist/rendering/templates/compiled-template.interface.js +2 -0
- package/dist/rendering/templates/compiled-template.interface.js.map +1 -0
- package/dist/rendering/templates/composite-token-extractor.d.ts +10 -0
- package/dist/rendering/templates/composite-token-extractor.d.ts.map +1 -0
- package/dist/rendering/templates/composite-token-extractor.js +16 -0
- package/dist/rendering/templates/composite-token-extractor.js.map +1 -0
- package/dist/rendering/templates/delimited-token-extractor.d.ts +12 -0
- package/dist/rendering/templates/delimited-token-extractor.d.ts.map +1 -0
- package/dist/rendering/templates/delimited-token-extractor.js +44 -0
- package/dist/rendering/templates/delimited-token-extractor.js.map +1 -0
- package/dist/rendering/templates/host-projector.interface.d.ts +25 -0
- package/dist/rendering/templates/host-projector.interface.d.ts.map +1 -0
- package/dist/rendering/templates/host-projector.interface.js +2 -0
- package/dist/rendering/templates/host-projector.interface.js.map +1 -0
- package/dist/rendering/templates/html-aware-token-extractor.d.ts +56 -0
- package/dist/rendering/templates/html-aware-token-extractor.d.ts.map +1 -0
- package/dist/rendering/templates/html-aware-token-extractor.js +78 -0
- package/dist/rendering/templates/html-aware-token-extractor.js.map +1 -0
- package/dist/rendering/templates/html-fragment-parser.interface.d.ts +19 -0
- package/dist/rendering/templates/html-fragment-parser.interface.d.ts.map +1 -0
- package/dist/rendering/templates/html-fragment-parser.interface.js +2 -0
- package/dist/rendering/templates/html-fragment-parser.interface.js.map +1 -0
- package/dist/rendering/templates/interpolable-content-selector.interface.d.ts +33 -0
- package/dist/rendering/templates/interpolable-content-selector.interface.d.ts.map +1 -0
- package/dist/rendering/templates/interpolable-content-selector.interface.js +2 -0
- package/dist/rendering/templates/interpolable-content-selector.interface.js.map +1 -0
- package/dist/rendering/templates/parse5-fragment-parser.d.ts +31 -0
- package/dist/rendering/templates/parse5-fragment-parser.d.ts.map +1 -0
- package/dist/rendering/templates/parse5-fragment-parser.js +36 -0
- package/dist/rendering/templates/parse5-fragment-parser.js.map +1 -0
- package/dist/rendering/templates/safe-content-selector.d.ts +50 -0
- package/dist/rendering/templates/safe-content-selector.d.ts.map +1 -0
- package/dist/rendering/templates/safe-content-selector.js +138 -0
- package/dist/rendering/templates/safe-content-selector.js.map +1 -0
- package/dist/rendering/templates/simple-template-analyzer.d.ts +29 -0
- package/dist/rendering/templates/simple-template-analyzer.d.ts.map +1 -0
- package/dist/rendering/templates/simple-template-analyzer.js +59 -0
- package/dist/rendering/templates/simple-template-analyzer.js.map +1 -0
- package/dist/rendering/templates/template-analyzer.d.ts +60 -0
- package/dist/rendering/templates/template-analyzer.d.ts.map +1 -0
- package/dist/rendering/templates/template-analyzer.interface.d.ts +15 -0
- package/dist/rendering/templates/template-analyzer.interface.d.ts.map +1 -0
- package/dist/rendering/templates/template-analyzer.interface.js +2 -0
- package/dist/rendering/templates/template-analyzer.interface.js.map +1 -0
- package/dist/rendering/templates/template-analyzer.js +74 -0
- package/dist/rendering/templates/template-analyzer.js.map +1 -0
- package/dist/rendering/templates/template-compilation-cache.d.ts +96 -0
- package/dist/rendering/templates/template-compilation-cache.d.ts.map +1 -0
- package/dist/rendering/templates/template-compilation-cache.js +125 -0
- package/dist/rendering/templates/template-compilation-cache.js.map +1 -0
- package/dist/rendering/templates/template-compiler.d.ts +76 -0
- package/dist/rendering/templates/template-compiler.d.ts.map +1 -0
- package/dist/rendering/templates/template-compiler.interface.d.ts +35 -0
- package/dist/rendering/templates/template-compiler.interface.d.ts.map +1 -0
- package/dist/rendering/templates/template-compiler.interface.js +2 -0
- package/dist/rendering/templates/template-compiler.interface.js.map +1 -0
- package/dist/rendering/templates/template-compiler.js +136 -0
- package/dist/rendering/templates/template-compiler.js.map +1 -0
- package/dist/rendering/templates/template-provider.d.ts +112 -0
- package/dist/rendering/templates/template-provider.d.ts.map +1 -0
- package/dist/rendering/templates/template-provider.factory.d.ts +35 -0
- package/dist/rendering/templates/template-provider.factory.d.ts.map +1 -0
- package/dist/rendering/templates/template-provider.factory.js +42 -0
- package/dist/rendering/templates/template-provider.factory.js.map +1 -0
- package/dist/rendering/templates/template-provider.interface.d.ts +32 -0
- package/dist/rendering/templates/template-provider.interface.d.ts.map +1 -0
- package/dist/rendering/templates/template-provider.interface.js +2 -0
- package/dist/rendering/templates/template-provider.interface.js.map +1 -0
- package/dist/rendering/templates/template-provider.js +104 -0
- package/dist/rendering/templates/template-provider.js.map +1 -0
- package/dist/rendering/templates/template-token.interface.d.ts +38 -0
- package/dist/rendering/templates/template-token.interface.d.ts.map +1 -0
- package/dist/rendering/templates/template-token.interface.js +2 -0
- package/dist/rendering/templates/template-token.interface.js.map +1 -0
- package/dist/types/interfaces.d.ts +204 -0
- package/dist/types/interfaces.d.ts.map +1 -0
- package/dist/types/interfaces.js +2 -0
- package/dist/types/interfaces.js.map +1 -0
- package/dist/utils/dom-utils.d.ts +71 -0
- package/dist/utils/dom-utils.d.ts.map +1 -0
- package/dist/utils/dom-utils.js +119 -0
- package/dist/utils/dom-utils.js.map +1 -0
- package/dist/utils/object-registry.d.ts +71 -0
- package/dist/utils/object-registry.d.ts.map +1 -0
- package/dist/utils/object-registry.js +126 -0
- package/dist/utils/object-registry.js.map +1 -0
- package/package.json +79 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import type { IExpressionCache } from './interfaces.js';
|
|
2
|
+
import type { ParsedExpression } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Implements the responsibility of caching parsed expressions for performance optimization.
|
|
5
|
+
* Uses an in-memory Map to store parsed expressions, following ISP by focusing solely
|
|
6
|
+
* on caching operations without mixing with parsing logic.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ExpressionCache implements IExpressionCache {
|
|
9
|
+
private readonly cache;
|
|
10
|
+
/**
|
|
11
|
+
* Retrieves a cached parsed expression by its string representation.
|
|
12
|
+
*
|
|
13
|
+
* @param expression - The expression string to look up in the cache
|
|
14
|
+
* @returns The cached parsed expression or undefined if not found
|
|
15
|
+
* @throws Error if expression is null or undefined
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const cache = new ExpressionCache();
|
|
20
|
+
* const parsed = cache.get('x + 1');
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
get(expression: string): ParsedExpression | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Stores a parsed expression in the cache.
|
|
26
|
+
*
|
|
27
|
+
* @param expression - The expression string to use as the cache key
|
|
28
|
+
* @param parsed - The parsed expression to store in the cache
|
|
29
|
+
* @throws Error if expression or parsed is null/undefined
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const cache = new ExpressionCache();
|
|
34
|
+
* const parsed = { ast: astNode, dependencies: ['x'], originalExpression: 'x + 1' };
|
|
35
|
+
* cache.set('x + 1', parsed);
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
set(expression: string, parsed: ParsedExpression): void;
|
|
39
|
+
/**
|
|
40
|
+
* Checks whether a parsed expression exists in the cache.
|
|
41
|
+
*
|
|
42
|
+
* @param expression - The expression string to check for in the cache
|
|
43
|
+
* @returns true if the expression is cached, false otherwise
|
|
44
|
+
* @throws Error if expression is null or undefined
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* const cache = new ExpressionCache();
|
|
49
|
+
* const exists = cache.has('x + 1');
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
has(expression: string): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Clears all cached expressions from memory.
|
|
55
|
+
* This method completely empties the cache, removing all stored entries.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```typescript
|
|
59
|
+
* const cache = new ExpressionCache();
|
|
60
|
+
* cache.clear();
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
clear(): void;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=expression-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-cache.d.ts","sourceRoot":"","sources":["../../../src/rendering/expression-parser/expression-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,gBAAgB;IACtD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAE7D;;;;;;;;;;;;OAYG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAKrD;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAOvD;;;;;;;;;;;;OAYG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAKhC;;;;;;;;;OASG;IACH,KAAK,IAAI,IAAI;CAGd"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Implements the responsibility of caching parsed expressions for performance optimization.
|
|
3
|
+
* Uses an in-memory Map to store parsed expressions, following ISP by focusing solely
|
|
4
|
+
* on caching operations without mixing with parsing logic.
|
|
5
|
+
*/
|
|
6
|
+
export class ExpressionCache {
|
|
7
|
+
cache = new Map();
|
|
8
|
+
/**
|
|
9
|
+
* Retrieves a cached parsed expression by its string representation.
|
|
10
|
+
*
|
|
11
|
+
* @param expression - The expression string to look up in the cache
|
|
12
|
+
* @returns The cached parsed expression or undefined if not found
|
|
13
|
+
* @throws Error if expression is null or undefined
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* const cache = new ExpressionCache();
|
|
18
|
+
* const parsed = cache.get('x + 1');
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
get(expression) {
|
|
22
|
+
if (!expression)
|
|
23
|
+
throw new Error('Expression key is required');
|
|
24
|
+
return this.cache.get(expression);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Stores a parsed expression in the cache.
|
|
28
|
+
*
|
|
29
|
+
* @param expression - The expression string to use as the cache key
|
|
30
|
+
* @param parsed - The parsed expression to store in the cache
|
|
31
|
+
* @throws Error if expression or parsed is null/undefined
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* const cache = new ExpressionCache();
|
|
36
|
+
* const parsed = { ast: astNode, dependencies: ['x'], originalExpression: 'x + 1' };
|
|
37
|
+
* cache.set('x + 1', parsed);
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
set(expression, parsed) {
|
|
41
|
+
if (!expression)
|
|
42
|
+
throw new Error('Expression key is required');
|
|
43
|
+
if (!parsed)
|
|
44
|
+
throw new Error('Parsed expression is required');
|
|
45
|
+
this.cache.set(expression, parsed);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Checks whether a parsed expression exists in the cache.
|
|
49
|
+
*
|
|
50
|
+
* @param expression - The expression string to check for in the cache
|
|
51
|
+
* @returns true if the expression is cached, false otherwise
|
|
52
|
+
* @throws Error if expression is null or undefined
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* ```typescript
|
|
56
|
+
* const cache = new ExpressionCache();
|
|
57
|
+
* const exists = cache.has('x + 1');
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
has(expression) {
|
|
61
|
+
if (!expression)
|
|
62
|
+
throw new Error('Expression key is required');
|
|
63
|
+
return this.cache.has(expression);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Clears all cached expressions from memory.
|
|
67
|
+
* This method completely empties the cache, removing all stored entries.
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* ```typescript
|
|
71
|
+
* const cache = new ExpressionCache();
|
|
72
|
+
* cache.clear();
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
clear() {
|
|
76
|
+
this.cache.clear();
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=expression-cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-cache.js","sourceRoot":"","sources":["../../../src/rendering/expression-parser/expression-cache.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,OAAO,eAAe;IACT,KAAK,GAAG,IAAI,GAAG,EAA4B,CAAC;IAE7D;;;;;;;;;;;;OAYG;IACH,GAAG,CAAC,UAAkB;QACpB,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAC,UAAkB,EAAE,MAAwB;QAC9C,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC/D,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAE9D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,GAAG,CAAC,UAAkB;QACpB,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import type { IExpressionCache, IDependencyExtractor, IEvaluator } from './interfaces.js';
|
|
2
|
+
import { ExpressionParserService } from './expression-parser.service.js';
|
|
3
|
+
/**
|
|
4
|
+
* Defines the configuration options for the ExpressionParserFactory.
|
|
5
|
+
* Allows customization of the factory's component implementations.
|
|
6
|
+
*/
|
|
7
|
+
export interface ExpressionParserFactoryOptions {
|
|
8
|
+
/** Custom cache implementation to override the default */
|
|
9
|
+
cache?: IExpressionCache;
|
|
10
|
+
/** Custom dependency extractor implementation to override the default */
|
|
11
|
+
dependencyExtractor?: IDependencyExtractor;
|
|
12
|
+
/** Custom evaluator implementation to override the default */
|
|
13
|
+
evaluator?: IEvaluator;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Implements the responsibility of creating configured expression parser instances.
|
|
17
|
+
* Follows the Factory Pattern to encapsulate object creation logic and enable
|
|
18
|
+
* dependency injection. Provides centralized configuration and instantiation
|
|
19
|
+
* of all expression parsing components.
|
|
20
|
+
*/
|
|
21
|
+
export declare class ExpressionParserFactory {
|
|
22
|
+
private readonly options;
|
|
23
|
+
/**
|
|
24
|
+
* Initializes a new instance of ExpressionParserFactory.
|
|
25
|
+
*
|
|
26
|
+
* @param options - Configuration options for customizing component implementations
|
|
27
|
+
*/
|
|
28
|
+
constructor(options?: ExpressionParserFactoryOptions);
|
|
29
|
+
/**
|
|
30
|
+
* Creates a new expression cache instance.
|
|
31
|
+
* Returns the configured cache implementation or a default ExpressionCache.
|
|
32
|
+
*
|
|
33
|
+
* @returns An expression cache implementation
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* const factory = new ExpressionParserFactory();
|
|
38
|
+
* const cache = factory.createCache();
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
createCache(): IExpressionCache;
|
|
42
|
+
/**
|
|
43
|
+
* Creates a new dependency extractor instance.
|
|
44
|
+
* Returns the configured dependency extractor or a default DependencyExtractor.
|
|
45
|
+
*
|
|
46
|
+
* @returns A dependency extractor implementation
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```typescript
|
|
50
|
+
* const factory = new ExpressionParserFactory();
|
|
51
|
+
* const extractor = factory.createDependencyExtractor();
|
|
52
|
+
* ```
|
|
53
|
+
*/
|
|
54
|
+
createDependencyExtractor(): IDependencyExtractor;
|
|
55
|
+
/**
|
|
56
|
+
* Creates a new evaluator instance.
|
|
57
|
+
* Returns the configured evaluator or a default ASTEvaluator.
|
|
58
|
+
*
|
|
59
|
+
* @returns An evaluator implementation
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const factory = new ExpressionParserFactory();
|
|
64
|
+
* const evaluator = factory.createEvaluator();
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
createEvaluator(): IEvaluator;
|
|
68
|
+
/**
|
|
69
|
+
* Creates a new parser service with configured dependencies.
|
|
70
|
+
* Assembles cache and dependency extractor into a complete parser service.
|
|
71
|
+
*
|
|
72
|
+
* @returns A fully configured expression parser service
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* const factory = new ExpressionParserFactory();
|
|
77
|
+
* const service = factory.createParserService();
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
createParserService(): ExpressionParserService;
|
|
81
|
+
/**
|
|
82
|
+
* Creates a complete parser instance with all necessary components.
|
|
83
|
+
* Convenience method that returns all components needed for expression parsing.
|
|
84
|
+
*
|
|
85
|
+
* @returns Object containing all configured parser components
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```typescript
|
|
89
|
+
* const factory = new ExpressionParserFactory();
|
|
90
|
+
* const { service, evaluator, cache, dependencyExtractor } = factory.createParser();
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
createParser(): {
|
|
94
|
+
service: ExpressionParserService;
|
|
95
|
+
evaluator: IEvaluator;
|
|
96
|
+
cache: IExpressionCache;
|
|
97
|
+
dependencyExtractor: IDependencyExtractor;
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Default factory instance for convenience.
|
|
102
|
+
* Can be replaced or configured as needed for different use cases.
|
|
103
|
+
*/
|
|
104
|
+
export declare const defaultParserFactory: ExpressionParserFactory;
|
|
105
|
+
//# sourceMappingURL=expression-parser.factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-parser.factory.d.ts","sourceRoot":"","sources":["../../../src/rendering/expression-parser/expression-parser.factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI1F,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC7C,0DAA0D;IAC1D,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,yEAAyE;IACzE,mBAAmB,CAAC,EAAE,oBAAoB,CAAC;IAC3C,8DAA8D;IAC9D,SAAS,CAAC,EAAE,UAAU,CAAC;CACxB;AAED;;;;;GAKG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IAEzD;;;;OAIG;gBACS,OAAO,GAAE,8BAAmC;IAIxD;;;;;;;;;;;OAWG;IACH,WAAW,IAAI,gBAAgB;IAI/B;;;;;;;;;;;OAWG;IACH,yBAAyB,IAAI,oBAAoB;IAIjD;;;;;;;;;;;OAWG;IACH,eAAe,IAAI,UAAU;IAI7B;;;;;;;;;;;OAWG;IACH,mBAAmB,IAAI,uBAAuB;IAM9C;;;;;;;;;;;OAWG;IACH,YAAY,IAAI;QACd,OAAO,EAAE,uBAAuB,CAAC;QACjC,SAAS,EAAE,UAAU,CAAC;QACtB,KAAK,EAAE,gBAAgB,CAAC;QACxB,mBAAmB,EAAE,oBAAoB,CAAC;KAC3C;CAaF;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,yBAAgC,CAAC"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { ExpressionCache } from './expression-cache.js';
|
|
2
|
+
import { DependencyExtractor } from './dependency-extractor.js';
|
|
3
|
+
import { ASTEvaluator } from './evaluators/ast.evaluator.js';
|
|
4
|
+
import { ExpressionParserService } from './expression-parser.service.js';
|
|
5
|
+
/**
|
|
6
|
+
* Implements the responsibility of creating configured expression parser instances.
|
|
7
|
+
* Follows the Factory Pattern to encapsulate object creation logic and enable
|
|
8
|
+
* dependency injection. Provides centralized configuration and instantiation
|
|
9
|
+
* of all expression parsing components.
|
|
10
|
+
*/
|
|
11
|
+
export class ExpressionParserFactory {
|
|
12
|
+
options;
|
|
13
|
+
/**
|
|
14
|
+
* Initializes a new instance of ExpressionParserFactory.
|
|
15
|
+
*
|
|
16
|
+
* @param options - Configuration options for customizing component implementations
|
|
17
|
+
*/
|
|
18
|
+
constructor(options = {}) {
|
|
19
|
+
this.options = options;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Creates a new expression cache instance.
|
|
23
|
+
* Returns the configured cache implementation or a default ExpressionCache.
|
|
24
|
+
*
|
|
25
|
+
* @returns An expression cache implementation
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* const factory = new ExpressionParserFactory();
|
|
30
|
+
* const cache = factory.createCache();
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
createCache() {
|
|
34
|
+
return this.options.cache || new ExpressionCache();
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Creates a new dependency extractor instance.
|
|
38
|
+
* Returns the configured dependency extractor or a default DependencyExtractor.
|
|
39
|
+
*
|
|
40
|
+
* @returns A dependency extractor implementation
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```typescript
|
|
44
|
+
* const factory = new ExpressionParserFactory();
|
|
45
|
+
* const extractor = factory.createDependencyExtractor();
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
createDependencyExtractor() {
|
|
49
|
+
return this.options.dependencyExtractor || new DependencyExtractor();
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Creates a new evaluator instance.
|
|
53
|
+
* Returns the configured evaluator or a default ASTEvaluator.
|
|
54
|
+
*
|
|
55
|
+
* @returns An evaluator implementation
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```typescript
|
|
59
|
+
* const factory = new ExpressionParserFactory();
|
|
60
|
+
* const evaluator = factory.createEvaluator();
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
createEvaluator() {
|
|
64
|
+
return this.options.evaluator || new ASTEvaluator();
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Creates a new parser service with configured dependencies.
|
|
68
|
+
* Assembles cache and dependency extractor into a complete parser service.
|
|
69
|
+
*
|
|
70
|
+
* @returns A fully configured expression parser service
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* const factory = new ExpressionParserFactory();
|
|
75
|
+
* const service = factory.createParserService();
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
createParserService() {
|
|
79
|
+
const cache = this.createCache();
|
|
80
|
+
const dependencyExtractor = this.createDependencyExtractor();
|
|
81
|
+
return new ExpressionParserService(cache, dependencyExtractor);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Creates a complete parser instance with all necessary components.
|
|
85
|
+
* Convenience method that returns all components needed for expression parsing.
|
|
86
|
+
*
|
|
87
|
+
* @returns Object containing all configured parser components
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```typescript
|
|
91
|
+
* const factory = new ExpressionParserFactory();
|
|
92
|
+
* const { service, evaluator, cache, dependencyExtractor } = factory.createParser();
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
95
|
+
createParser() {
|
|
96
|
+
const cache = this.createCache();
|
|
97
|
+
const dependencyExtractor = this.createDependencyExtractor();
|
|
98
|
+
const service = new ExpressionParserService(cache, dependencyExtractor);
|
|
99
|
+
const evaluator = this.createEvaluator();
|
|
100
|
+
return {
|
|
101
|
+
service,
|
|
102
|
+
evaluator,
|
|
103
|
+
cache,
|
|
104
|
+
dependencyExtractor
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Default factory instance for convenience.
|
|
110
|
+
* Can be replaced or configured as needed for different use cases.
|
|
111
|
+
*/
|
|
112
|
+
export const defaultParserFactory = new ExpressionParserFactory();
|
|
113
|
+
//# sourceMappingURL=expression-parser.factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-parser.factory.js","sourceRoot":"","sources":["../../../src/rendering/expression-parser/expression-parser.factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAezE;;;;;GAKG;AACH,MAAM,OAAO,uBAAuB;IACjB,OAAO,CAAiC;IAEzD;;;;OAIG;IACH,YAAY,UAA0C,EAAE;QACtD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;OAWG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,eAAe,EAAE,CAAC;IACrD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,yBAAyB;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,IAAI,mBAAmB,EAAE,CAAC;IACvE,CAAC;IAED;;;;;;;;;;;OAWG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,YAAY,EAAE,CAAC;IACtD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,mBAAmB;QACjB,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACjC,MAAM,mBAAmB,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC7D,OAAO,IAAI,uBAAuB,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;;;;;OAWG;IACH,YAAY;QAMV,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACjC,MAAM,mBAAmB,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC7D,MAAM,OAAO,GAAG,IAAI,uBAAuB,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;QACxE,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAEzC,OAAO;YACL,OAAO;YACP,SAAS;YACT,KAAK;YACL,mBAAmB;SACpB,CAAC;IACJ,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,uBAAuB,EAAE,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { IExpressionParser } from "./interfaces.js";
|
|
2
|
+
import type { ParsedExpression } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Implements the responsibility of parsing expression strings into structured representations.
|
|
5
|
+
* Coordinates tokenization, AST construction, dependency analysis, and result caching.
|
|
6
|
+
* Cache and dependency extraction are implementation details private to this class.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ExpressionParserService implements IExpressionParser {
|
|
9
|
+
private readonly cache;
|
|
10
|
+
/**
|
|
11
|
+
* Parses an expression string, utilizing caching for performance.
|
|
12
|
+
* If the expression has been parsed before, returns the cached result.
|
|
13
|
+
* Otherwise, parses the expression and stores it in the cache.
|
|
14
|
+
*
|
|
15
|
+
* @param expression - The expression string to parse
|
|
16
|
+
* @returns The parsed expression containing AST, dependencies, and original expression
|
|
17
|
+
* @throws Error if expression is null/undefined or contains syntax errors
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const service = new ExpressionParserService();
|
|
22
|
+
* const parsed = service.parse('x + y * 2');
|
|
23
|
+
* // Returns { ast: ASTNode, dependencies: ['x', 'y'], originalExpression: 'x + y * 2' }
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
parse(expression: string): ParsedExpression;
|
|
27
|
+
private extractDependencies;
|
|
28
|
+
private traverseForDependencies;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=expression-parser.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-parser.service.d.ts","sourceRoot":"","sources":["../../../src/rendering/expression-parser/expression-parser.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAQV,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAIpB;;;;GAIG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAC/D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAE7D;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB;IAwB3C,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,uBAAuB;CAmDhC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { Tokenizer } from "./tokenizer.js";
|
|
2
|
+
import { Parser } from "./parser.js";
|
|
3
|
+
/**
|
|
4
|
+
* Implements the responsibility of parsing expression strings into structured representations.
|
|
5
|
+
* Coordinates tokenization, AST construction, dependency analysis, and result caching.
|
|
6
|
+
* Cache and dependency extraction are implementation details private to this class.
|
|
7
|
+
*/
|
|
8
|
+
export class ExpressionParserService {
|
|
9
|
+
cache = new Map();
|
|
10
|
+
/**
|
|
11
|
+
* Parses an expression string, utilizing caching for performance.
|
|
12
|
+
* If the expression has been parsed before, returns the cached result.
|
|
13
|
+
* Otherwise, parses the expression and stores it in the cache.
|
|
14
|
+
*
|
|
15
|
+
* @param expression - The expression string to parse
|
|
16
|
+
* @returns The parsed expression containing AST, dependencies, and original expression
|
|
17
|
+
* @throws Error if expression is null/undefined or contains syntax errors
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const service = new ExpressionParserService();
|
|
22
|
+
* const parsed = service.parse('x + y * 2');
|
|
23
|
+
* // Returns { ast: ASTNode, dependencies: ['x', 'y'], originalExpression: 'x + y * 2' }
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
parse(expression) {
|
|
27
|
+
if (!expression)
|
|
28
|
+
throw new Error("Expression string is required");
|
|
29
|
+
const cached = this.cache.get(expression);
|
|
30
|
+
if (cached) {
|
|
31
|
+
return cached;
|
|
32
|
+
}
|
|
33
|
+
const tokenizer = new Tokenizer(expression);
|
|
34
|
+
const tokens = tokenizer.tokenize();
|
|
35
|
+
const parser = new Parser(tokens);
|
|
36
|
+
const ast = parser.parse();
|
|
37
|
+
const dependencies = this.extractDependencies(ast);
|
|
38
|
+
const parsed = {
|
|
39
|
+
ast,
|
|
40
|
+
dependencies,
|
|
41
|
+
originalExpression: expression,
|
|
42
|
+
};
|
|
43
|
+
this.cache.set(expression, parsed);
|
|
44
|
+
return parsed;
|
|
45
|
+
}
|
|
46
|
+
extractDependencies(node) {
|
|
47
|
+
const deps = new Set();
|
|
48
|
+
this.traverseForDependencies(node, deps);
|
|
49
|
+
return Array.from(deps);
|
|
50
|
+
}
|
|
51
|
+
traverseForDependencies(node, deps) {
|
|
52
|
+
switch (node.type) {
|
|
53
|
+
case "Identifier":
|
|
54
|
+
deps.add(node.name);
|
|
55
|
+
break;
|
|
56
|
+
case "MemberExpression": {
|
|
57
|
+
const memberExpr = node;
|
|
58
|
+
if (memberExpr.object.type === "Identifier") {
|
|
59
|
+
deps.add(memberExpr.object.name);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
this.traverseForDependencies(memberExpr.object, deps);
|
|
63
|
+
}
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
case "CallExpression": {
|
|
67
|
+
const callExpr = node;
|
|
68
|
+
this.traverseForDependencies(callExpr.callee, deps);
|
|
69
|
+
callExpr.arguments.forEach((arg) => this.traverseForDependencies(arg, deps));
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
case "BinaryExpression": {
|
|
73
|
+
const binaryExpr = node;
|
|
74
|
+
this.traverseForDependencies(binaryExpr.left, deps);
|
|
75
|
+
this.traverseForDependencies(binaryExpr.right, deps);
|
|
76
|
+
break;
|
|
77
|
+
}
|
|
78
|
+
case "UnaryExpression": {
|
|
79
|
+
const unaryExpr = node;
|
|
80
|
+
this.traverseForDependencies(unaryExpr.argument, deps);
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
case "ConditionalExpression": {
|
|
84
|
+
const conditionalExpr = node;
|
|
85
|
+
this.traverseForDependencies(conditionalExpr.test, deps);
|
|
86
|
+
this.traverseForDependencies(conditionalExpr.consequent, deps);
|
|
87
|
+
this.traverseForDependencies(conditionalExpr.alternate, deps);
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
case "Literal":
|
|
91
|
+
// No dependencies for literal values
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=expression-parser.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-parser.service.js","sourceRoot":"","sources":["../../../src/rendering/expression-parser/expression-parser.service.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;GAIG;AACH,MAAM,OAAO,uBAAuB;IACjB,KAAK,GAAG,IAAI,GAAG,EAA4B,CAAC;IAE7D;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,UAAkB;QACtB,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAElE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAEnD,MAAM,MAAM,GAAqB;YAC/B,GAAG;YACH,YAAY;YACZ,kBAAkB,EAAE,UAAU;SAC/B,CAAC;QAEF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,mBAAmB,CAAC,IAAa;QACvC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEO,uBAAuB,CAAC,IAAa,EAAE,IAAiB;QAC9D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,YAAY;gBACf,IAAI,CAAC,GAAG,CAAE,IAAuB,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM;YAER,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,UAAU,GAAG,IAA4B,CAAC;gBAChD,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAC5C,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACnC,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACxD,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,QAAQ,GAAG,IAA0B,CAAC;gBAC5C,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACpD,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CACjC,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,IAAI,CAAC,CACxC,CAAC;gBACF,MAAM;YACR,CAAC;YAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,UAAU,GAAG,IAA4B,CAAC;gBAChD,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACpD,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACrD,MAAM;YACR,CAAC;YAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,MAAM,SAAS,GAAG,IAA2B,CAAC;gBAC9C,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACvD,MAAM;YACR,CAAC;YAED,KAAK,uBAAuB,CAAC,CAAC,CAAC;gBAC7B,MAAM,eAAe,GAAG,IAAiC,CAAC;gBAC1D,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACzD,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBAC/D,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAC9D,MAAM;YACR,CAAC;YAED,KAAK,SAAS;gBACZ,qCAAqC;gBACrC,MAAM;QACV,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { SmartComponent } from '../../core/smart-component.js';
|
|
2
|
+
import { IDomAdapter } from '../dom/dom-adapter.interface.js';
|
|
3
|
+
import type { IHostProjectionRegistry } from '../host-projection/host-projection-registry.interface.js';
|
|
4
|
+
/**
|
|
5
|
+
* Implements the responsibility of handling host content projection.
|
|
6
|
+
*
|
|
7
|
+
* @description
|
|
8
|
+
* Implements host content projection mechanism, replacing <smart-host> elements
|
|
9
|
+
* with projected content from the component's Light DOM. Supports both named
|
|
10
|
+
* and default hosts with fallback content.
|
|
11
|
+
*
|
|
12
|
+
* @architecture
|
|
13
|
+
* Host Projection Rules:
|
|
14
|
+
* - **Default host**: <smart-host> receives all content without host attribute
|
|
15
|
+
* - **Named hosts**: <smart-host name="x"> receives content with host="x" attribute
|
|
16
|
+
* - **Fallback content**: Host innerHTML used if no matching content
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Defines the responsibility of projecting content into <smart-host> elements.
|
|
20
|
+
*
|
|
21
|
+
* @description
|
|
22
|
+
* Defines the contract for projecting content into <smart-host> elements,
|
|
23
|
+
* handling both named and default hosts according to SmartComponents standards.
|
|
24
|
+
*/
|
|
25
|
+
export interface IHostProjector {
|
|
26
|
+
/**
|
|
27
|
+
* Projects captured host content into template hosts.
|
|
28
|
+
*
|
|
29
|
+
* @param element - Template root element containing <smart-host> elements
|
|
30
|
+
* @param component - Component instance with captured host content
|
|
31
|
+
* @throws Error if element or component are null/undefined
|
|
32
|
+
*/
|
|
33
|
+
project(element: HTMLElement, component: SmartComponent): void;
|
|
34
|
+
}
|
|
35
|
+
export declare class HostProjector implements IHostProjector {
|
|
36
|
+
private readonly domAdapter;
|
|
37
|
+
private readonly hostProjectionRegistry;
|
|
38
|
+
/**
|
|
39
|
+
* Initializes a new instance of HostProjector.
|
|
40
|
+
*
|
|
41
|
+
* @param domAdapter - Adapter for DOM element creation
|
|
42
|
+
* @param hostProjectionRegistry - Registry for host projection content
|
|
43
|
+
* @throws Error if domAdapter is null or undefined
|
|
44
|
+
* @throws Error if hostProjectionRegistry is null or undefined
|
|
45
|
+
*/
|
|
46
|
+
constructor(domAdapter: IDomAdapter, hostProjectionRegistry: IHostProjectionRegistry);
|
|
47
|
+
/**
|
|
48
|
+
* Projects captured content into template hosts
|
|
49
|
+
*
|
|
50
|
+
* @description
|
|
51
|
+
* Processes all <smart-host> elements in the template, replacing them with
|
|
52
|
+
* appropriate projected content based on host names and fallback rules.
|
|
53
|
+
*
|
|
54
|
+
* @param element - Template root element containing <smart-host> elements
|
|
55
|
+
* @param component - Component instance with captured host content
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```typescript
|
|
59
|
+
* // Template:
|
|
60
|
+
* `<div>
|
|
61
|
+
* <header><smart-host name="header">Default Header</smart-host></header>
|
|
62
|
+
* <main><smart-host>Default Content</smart-host></main>
|
|
63
|
+
* </div>`
|
|
64
|
+
*
|
|
65
|
+
* // Usage:
|
|
66
|
+
* `<my-component>
|
|
67
|
+
* <h1 host="header">Custom Header</h1>
|
|
68
|
+
* <p>Custom Content</p>
|
|
69
|
+
* </my-component>`
|
|
70
|
+
*
|
|
71
|
+
* // Result after projection:
|
|
72
|
+
* `<div>
|
|
73
|
+
* <header><h1>Custom Header</h1></header>
|
|
74
|
+
* <main><p>Custom Content</p></main>
|
|
75
|
+
* </div>`
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
project(element: HTMLElement, component: SmartComponent): void;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=host-projector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-projector.d.ts","sourceRoot":"","sources":["../../../src/rendering/expression-parser/host-projector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AAGxG;;;;;;;;;;;;;GAaG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;OAMG;IACH,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;CAChE;AAED,qBAAa,aAAc,YAAW,cAAc;IAUhD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IAVzC;;;;;;;OAOG;gBAEgB,UAAU,EAAE,WAAW,EACvB,sBAAsB,EAAE,uBAAuB;IAUlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,GAAG,IAAI;CAqD/D"}
|