@pwfabric/runtime 1.0.0-rc.0 → 1.0.0-rc.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/README.md +35 -5
- package/dist/a11y/announcer.d.ts +0 -1
- package/dist/a11y/announcer.js.map +1 -1
- package/dist/a11y/contrast.d.ts +0 -1
- package/dist/a11y/contrast.js.map +1 -1
- package/dist/a11y/focus.d.ts +0 -1
- package/dist/a11y/focus.js.map +1 -1
- package/dist/a11y/index.d.ts +0 -1
- package/dist/a11y/index.js.map +1 -1
- package/dist/a11y/keyboard.d.ts +0 -1
- package/dist/a11y/keyboard.js.map +1 -1
- package/dist/adapters/default-image.d.ts +0 -1
- package/dist/adapters/default-image.js.map +1 -1
- package/dist/adapters/index.d.ts +0 -1
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/next-image.d.ts +0 -1
- package/dist/adapters/next-image.js.map +1 -1
- package/dist/adapters/types.d.ts +0 -1
- package/dist/adapters/types.js.map +1 -1
- package/dist/analytics/index.d.ts +0 -1
- package/dist/analytics/index.js.map +1 -1
- package/dist/analytics/tracker.d.ts +0 -1
- package/dist/analytics/tracker.js.map +1 -1
- package/dist/analytics/types.d.ts +0 -1
- package/dist/analytics/types.js.map +1 -1
- package/dist/auth/index.d.ts +0 -1
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/provider.d.ts +0 -1
- package/dist/auth/provider.js.map +1 -1
- package/dist/auth/types.d.ts +0 -1
- package/dist/auth/types.js.map +1 -1
- package/dist/binding/collection.d.ts +0 -1
- package/dist/binding/collection.js.map +1 -1
- package/dist/binding/datasource.d.ts +0 -1
- package/dist/binding/datasource.js.map +1 -1
- package/dist/binding/engine.d.ts +0 -1
- package/dist/binding/engine.js.map +1 -1
- package/dist/binding/expression.d.ts +0 -1
- package/dist/binding/expression.js.map +1 -1
- package/dist/binding/index.d.ts +0 -1
- package/dist/binding/index.js.map +1 -1
- package/dist/binding/two-way.d.ts +0 -1
- package/dist/binding/two-way.js.map +1 -1
- package/dist/binding/types.d.ts +0 -1
- package/dist/binding/types.js.map +1 -1
- package/dist/blocks/component-types.d.ts +0 -1
- package/dist/blocks/component-types.js.map +1 -1
- package/dist/blocks/composition-rules.d.ts +0 -1
- package/dist/blocks/composition-rules.js.map +1 -1
- package/dist/blocks/hooks.d.ts +0 -1
- package/dist/blocks/hooks.js.map +1 -1
- package/dist/blocks/index.d.ts +0 -2
- package/dist/blocks/index.js +5 -6
- package/dist/blocks/index.js.map +1 -1
- package/dist/blocks/registry.d.ts +0 -1
- package/dist/blocks/registry.js.map +1 -1
- package/dist/blocks/rule-engine.d.ts +0 -1
- package/dist/blocks/rule-engine.js.map +1 -1
- package/dist/blocks/surface-event-context.d.ts +0 -1
- package/dist/blocks/surface-event-context.js.map +1 -1
- package/dist/blocks/surface-id-context.d.ts +0 -1
- package/dist/blocks/surface-id-context.js.map +1 -1
- package/dist/bus.d.ts +0 -1
- package/dist/bus.js.map +1 -1
- package/dist/cache/index.d.ts +0 -1
- package/dist/cache/index.js.map +1 -1
- package/dist/cache/memory.d.ts +0 -1
- package/dist/cache/memory.js.map +1 -1
- package/dist/cache/types.d.ts +0 -1
- package/dist/cache/types.js.map +1 -1
- package/dist/capability/index.d.ts +0 -1
- package/dist/capability/index.js.map +1 -1
- package/dist/capability/kernel-capabilities.d.ts +0 -1
- package/dist/capability/kernel-capabilities.js.map +1 -1
- package/dist/capability/platform-capabilities.d.ts +0 -1
- package/dist/capability/platform-capabilities.js.map +1 -1
- package/dist/capability/type-mapping.d.ts +0 -1
- package/dist/capability/type-mapping.js.map +1 -1
- package/dist/capability/validation.d.ts +0 -1
- package/dist/capability/validation.js.map +1 -1
- package/dist/connectors/declared-connector.d.ts +0 -1
- package/dist/connectors/declared-connector.js.map +1 -1
- package/dist/connectors/engine-registry.d.ts +0 -1
- package/dist/connectors/engine-registry.js.map +1 -1
- package/dist/connectors/index.d.ts +0 -1
- package/dist/connectors/index.js.map +1 -1
- package/dist/connectors/module-loader.d.ts +0 -1
- package/dist/connectors/module-loader.js.map +1 -1
- package/dist/connectors/types.d.ts +0 -1
- package/dist/connectors/types.js.map +1 -1
- package/dist/context.d.ts +0 -1
- package/dist/context.js.map +1 -1
- package/dist/data/DataCapabilityProvider.d.ts +0 -1
- package/dist/data/DataCapabilityProvider.js.map +1 -1
- package/dist/data/index.d.ts +0 -1
- package/dist/data/index.js.map +1 -1
- package/dist/data/manager.d.ts +0 -1
- package/dist/data/manager.js.map +1 -1
- package/dist/data/types.d.ts +0 -1
- package/dist/data/types.js.map +1 -1
- package/dist/entity/aggregate.d.ts +0 -1
- package/dist/entity/aggregate.js.map +1 -1
- package/dist/entity/apply-query.d.ts +0 -1
- package/dist/entity/apply-query.js.map +1 -1
- package/dist/entity/behavior.d.ts +0 -1
- package/dist/entity/behavior.js.map +1 -1
- package/dist/entity/connector.d.ts +0 -1
- package/dist/entity/connector.js.map +1 -1
- package/dist/entity/connectors/index.d.ts +0 -1
- package/dist/entity/connectors/index.js.map +1 -1
- package/dist/entity/connectors/static.d.ts +0 -1
- package/dist/entity/connectors/static.js.map +1 -1
- package/dist/entity/entity-datasource.d.ts +0 -1
- package/dist/entity/entity-datasource.js.map +1 -1
- package/dist/entity/facade.d.ts +0 -1
- package/dist/entity/facade.js.map +1 -1
- package/dist/entity/http-connector.d.ts +0 -1
- package/dist/entity/http-connector.js.map +1 -1
- package/dist/entity/index.d.ts +0 -1
- package/dist/entity/index.js.map +1 -1
- package/dist/entity/postgres-connector.d.ts +0 -1
- package/dist/entity/postgres-connector.js.map +1 -1
- package/dist/entity/registry.d.ts +0 -1
- package/dist/entity/registry.js.map +1 -1
- package/dist/entity/store.d.ts +0 -1
- package/dist/entity/store.js.map +1 -1
- package/dist/entity/types.d.ts +0 -1
- package/dist/entity/types.js.map +1 -1
- package/dist/execution-context.d.ts +0 -1
- package/dist/execution-context.js.map +1 -1
- package/dist/executor.d.ts +0 -1
- package/dist/executor.js.map +1 -1
- package/dist/forms/form-entity-bridge.d.ts +0 -1
- package/dist/forms/form-entity-bridge.js.map +1 -1
- package/dist/forms/form-write-target.d.ts +0 -1
- package/dist/forms/form-write-target.js.map +1 -1
- package/dist/forms/index.d.ts +0 -1
- package/dist/forms/index.js.map +1 -1
- package/dist/forms/named-control-values.d.ts +0 -1
- package/dist/forms/named-control-values.js.map +1 -1
- package/dist/forms/processor.d.ts +0 -1
- package/dist/forms/processor.js.map +1 -1
- package/dist/forms/types.d.ts +0 -1
- package/dist/forms/types.js.map +1 -1
- package/dist/forms/validator.d.ts +0 -1
- package/dist/forms/validator.js.map +1 -1
- package/dist/graph/index.d.ts +0 -1
- package/dist/graph/index.js.map +1 -1
- package/dist/graph/resolver.d.ts +0 -1
- package/dist/graph/resolver.js.map +1 -1
- package/dist/graph/types.d.ts +0 -1
- package/dist/graph/types.js.map +1 -1
- package/dist/hooks/useInstalledAtoms.d.ts +0 -1
- package/dist/hooks/useInstalledAtoms.js.map +1 -1
- package/dist/i18n/index.d.ts +0 -1
- package/dist/i18n/index.js.map +1 -1
- package/dist/i18n/translator.d.ts +0 -1
- package/dist/i18n/translator.js.map +1 -1
- package/dist/i18n/types.d.ts +0 -1
- package/dist/i18n/types.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js.map +1 -1
- package/dist/kernel.d.ts +0 -1
- package/dist/kernel.js.map +1 -1
- package/dist/perf/budget.d.ts +0 -1
- package/dist/perf/budget.js.map +1 -1
- package/dist/perf/index.d.ts +0 -1
- package/dist/perf/index.js.map +1 -1
- package/dist/perf/render-timer.d.ts +0 -1
- package/dist/perf/render-timer.js.map +1 -1
- package/dist/perf/reporter.d.ts +0 -1
- package/dist/perf/reporter.js.map +1 -1
- package/dist/perf/web-vitals.d.ts +0 -1
- package/dist/perf/web-vitals.js.map +1 -1
- package/dist/registry.d.ts +0 -1
- package/dist/registry.js.map +1 -1
- package/dist/render/BehaviorSurfaceProvider.d.ts +0 -1
- package/dist/render/BehaviorSurfaceProvider.js.map +1 -1
- package/dist/render/BlockErrorBoundary.d.ts +0 -1
- package/dist/render/BlockErrorBoundary.js.map +1 -1
- package/dist/render/DataBoundSurfaceRenderer.d.ts +0 -1
- package/dist/render/DataBoundSurfaceRenderer.js.map +1 -1
- package/dist/render/DynamicBlockWrapper.d.ts +0 -1
- package/dist/render/DynamicBlockWrapper.js.map +1 -1
- package/dist/render/appearance-resolver.d.ts +0 -1
- package/dist/render/appearance-resolver.js.map +1 -1
- package/dist/render/capability-gate.d.ts +0 -1
- package/dist/render/capability-gate.js.map +1 -1
- package/dist/render/conditional-states-css.d.ts +0 -1
- package/dist/render/conditional-states-css.js.map +1 -1
- package/dist/render/connections-context.d.ts +0 -1
- package/dist/render/connections-context.js.map +1 -1
- package/dist/render/dark-theme-css.d.ts +0 -1
- package/dist/render/dark-theme-css.js.map +1 -1
- package/dist/render/data-binding-types.d.ts +0 -1
- package/dist/render/data-binding-types.js.map +1 -1
- package/dist/render/data-cache.d.ts +0 -1
- package/dist/render/data-cache.js.map +1 -1
- package/dist/render/derive-dark-theme.d.ts +0 -1
- package/dist/render/derive-dark-theme.js.map +1 -1
- package/dist/render/dynamic-artifact-context.d.ts +0 -1
- package/dist/render/dynamic-artifact-context.js.map +1 -1
- package/dist/render/dynamic-block-loader.d.ts +0 -1
- package/dist/render/dynamic-block-loader.js.map +1 -1
- package/dist/render/endpoint.d.ts +0 -1
- package/dist/render/endpoint.js.map +1 -1
- package/dist/render/entity-facade-context.d.ts +0 -1
- package/dist/render/entity-facade-context.js.map +1 -1
- package/dist/render/group-states-css.d.ts +0 -1
- package/dist/render/group-states-css.js.map +1 -1
- package/dist/render/hooks/useSurfaceEvents.d.ts +0 -1
- package/dist/render/hooks/useSurfaceEvents.js.map +1 -1
- package/dist/render/hooks/useSurfaceId.d.ts +0 -1
- package/dist/render/hooks/useSurfaceId.js.map +1 -1
- package/dist/render/index.d.ts +0 -1
- package/dist/render/index.js.map +1 -1
- package/dist/render/interaction-rule-engine.d.ts +0 -1
- package/dist/render/interaction-rule-engine.js.map +1 -1
- package/dist/render/keyframes-css.d.ts +0 -1
- package/dist/render/keyframes-css.js.map +1 -1
- package/dist/render/query-state.d.ts +0 -1
- package/dist/render/query-state.js.map +1 -1
- package/dist/render/renderer.d.ts +0 -1
- package/dist/render/renderer.js.map +1 -1
- package/dist/render/resolve-expressions.d.ts +0 -1
- package/dist/render/resolve-expressions.js.map +1 -1
- package/dist/render/responsive-style-css.d.ts +0 -1
- package/dist/render/responsive-style-css.js.map +1 -1
- package/dist/render/responsive.d.ts +0 -1
- package/dist/render/responsive.js.map +1 -1
- package/dist/render/scoped-css.d.ts +0 -1
- package/dist/render/scoped-css.js.map +1 -1
- package/dist/render/shell-selection.d.ts +0 -1
- package/dist/render/shell-selection.js.map +1 -1
- package/dist/render/states-css.d.ts +0 -1
- package/dist/render/states-css.js.map +1 -1
- package/dist/render/surface-data-context.d.ts +0 -1
- package/dist/render/surface-data-context.js.map +1 -1
- package/dist/render/surface-event-bus.d.ts +0 -1
- package/dist/render/surface-event-bus.js.map +1 -1
- package/dist/render/surface-event-context.d.ts +0 -1
- package/dist/render/surface-event-context.js.map +1 -1
- package/dist/render/surface-id-context.d.ts +0 -1
- package/dist/render/surface-id-context.js.map +1 -1
- package/dist/render/theme-utils.d.ts +0 -1
- package/dist/render/theme-utils.js.map +1 -1
- package/dist/render/types.d.ts +0 -1
- package/dist/render/types.js.map +1 -1
- package/dist/render/visibility-css.d.ts +0 -1
- package/dist/render/visibility-css.js.map +1 -1
- package/dist/render/width-scope.d.ts +0 -1
- package/dist/render/width-scope.js.map +1 -1
- package/dist/render/write-only-sources.d.ts +0 -1
- package/dist/render/write-only-sources.js.map +1 -1
- package/dist/routing/index.d.ts +0 -1
- package/dist/routing/index.js.map +1 -1
- package/dist/routing/router.d.ts +0 -1
- package/dist/routing/router.js.map +1 -1
- package/dist/routing/types.d.ts +0 -1
- package/dist/routing/types.js.map +1 -1
- package/dist/seo/generator.d.ts +0 -1
- package/dist/seo/generator.js.map +1 -1
- package/dist/seo/index.d.ts +0 -1
- package/dist/seo/index.js.map +1 -1
- package/dist/seo/types.d.ts +0 -1
- package/dist/seo/types.js.map +1 -1
- package/dist/state/index.d.ts +0 -1
- package/dist/state/index.js.map +1 -1
- package/dist/state/manager.d.ts +0 -1
- package/dist/state/manager.js.map +1 -1
- package/dist/state/store.d.ts +0 -1
- package/dist/state/store.js.map +1 -1
- package/dist/state/types.d.ts +0 -1
- package/dist/state/types.js.map +1 -1
- package/dist/surface/expression.d.ts +0 -1
- package/dist/surface/expression.js.map +1 -1
- package/dist/surface/index.d.ts +0 -1
- package/dist/surface/index.js.map +1 -1
- package/dist/surface/interpreter.d.ts +0 -1
- package/dist/surface/interpreter.js.map +1 -1
- package/dist/surface/layout.d.ts +0 -1
- package/dist/surface/layout.js.map +1 -1
- package/dist/surface/output.d.ts +0 -1
- package/dist/surface/output.js.map +1 -1
- package/dist/surface/primitives.d.ts +0 -1
- package/dist/surface/primitives.js.map +1 -1
- package/dist/surface/renderer.d.ts +0 -1
- package/dist/surface/renderer.js.map +1 -1
- package/dist/surface/schemas.d.ts +0 -1
- package/dist/surface/schemas.js.map +1 -1
- package/dist/surface/transforms.d.ts +0 -1
- package/dist/surface/transforms.js.map +1 -1
- package/dist/surface/types.d.ts +0 -1
- package/dist/surface/types.js.map +1 -1
- package/dist/surface/validation.d.ts +0 -1
- package/dist/surface/validation.js.map +1 -1
- package/dist/validator.d.ts +0 -1
- package/dist/validator.js.map +1 -1
- package/package.json +41 -40
- package/dist/__tests__/dom-test-setup.d.ts +0 -21
- package/dist/__tests__/dom-test-setup.d.ts.map +0 -1
- package/dist/__tests__/dom-test-setup.js +0 -36
- package/dist/__tests__/dom-test-setup.js.map +0 -1
- package/dist/a11y/announcer.d.ts.map +0 -1
- package/dist/a11y/contrast.d.ts.map +0 -1
- package/dist/a11y/focus.d.ts.map +0 -1
- package/dist/a11y/index.d.ts.map +0 -1
- package/dist/a11y/keyboard.d.ts.map +0 -1
- package/dist/adapters/default-image.d.ts.map +0 -1
- package/dist/adapters/index.d.ts.map +0 -1
- package/dist/adapters/next-image.d.ts.map +0 -1
- package/dist/adapters/types.d.ts.map +0 -1
- package/dist/analytics/index.d.ts.map +0 -1
- package/dist/analytics/tracker.d.ts.map +0 -1
- package/dist/analytics/types.d.ts.map +0 -1
- package/dist/auth/index.d.ts.map +0 -1
- package/dist/auth/provider.d.ts.map +0 -1
- package/dist/auth/types.d.ts.map +0 -1
- package/dist/binding/collection.d.ts.map +0 -1
- package/dist/binding/datasource.d.ts.map +0 -1
- package/dist/binding/engine.d.ts.map +0 -1
- package/dist/binding/expression.d.ts.map +0 -1
- package/dist/binding/index.d.ts.map +0 -1
- package/dist/binding/two-way.d.ts.map +0 -1
- package/dist/binding/types.d.ts.map +0 -1
- package/dist/blocks/__test-fixtures__/block-fixtures.d.ts +0 -40
- package/dist/blocks/__test-fixtures__/block-fixtures.d.ts.map +0 -1
- package/dist/blocks/__test-fixtures__/block-fixtures.js +0 -506
- package/dist/blocks/__test-fixtures__/block-fixtures.js.map +0 -1
- package/dist/blocks/component-types.d.ts.map +0 -1
- package/dist/blocks/composition-rules.d.ts.map +0 -1
- package/dist/blocks/hooks.d.ts.map +0 -1
- package/dist/blocks/index.d.ts.map +0 -1
- package/dist/blocks/registry.d.ts.map +0 -1
- package/dist/blocks/rule-engine.d.ts.map +0 -1
- package/dist/blocks/surface-event-context.d.ts.map +0 -1
- package/dist/blocks/surface-id-context.d.ts.map +0 -1
- package/dist/bus.d.ts.map +0 -1
- package/dist/cache/index.d.ts.map +0 -1
- package/dist/cache/memory.d.ts.map +0 -1
- package/dist/cache/types.d.ts.map +0 -1
- package/dist/capability/index.d.ts.map +0 -1
- package/dist/capability/kernel-capabilities.d.ts.map +0 -1
- package/dist/capability/platform-capabilities.d.ts.map +0 -1
- package/dist/capability/type-mapping.d.ts.map +0 -1
- package/dist/capability/validation.d.ts.map +0 -1
- package/dist/connectors/declared-connector.d.ts.map +0 -1
- package/dist/connectors/engine-registry.d.ts.map +0 -1
- package/dist/connectors/index.d.ts.map +0 -1
- package/dist/connectors/module-loader.d.ts.map +0 -1
- package/dist/connectors/types.d.ts.map +0 -1
- package/dist/context.d.ts.map +0 -1
- package/dist/data/DataCapabilityProvider.d.ts.map +0 -1
- package/dist/data/index.d.ts.map +0 -1
- package/dist/data/manager.d.ts.map +0 -1
- package/dist/data/types.d.ts.map +0 -1
- package/dist/entity/aggregate.d.ts.map +0 -1
- package/dist/entity/apply-query.d.ts.map +0 -1
- package/dist/entity/behavior.d.ts.map +0 -1
- package/dist/entity/connector.d.ts.map +0 -1
- package/dist/entity/connectors/index.d.ts.map +0 -1
- package/dist/entity/connectors/static.d.ts.map +0 -1
- package/dist/entity/entity-datasource.d.ts.map +0 -1
- package/dist/entity/facade.d.ts.map +0 -1
- package/dist/entity/http-connector.d.ts.map +0 -1
- package/dist/entity/index.d.ts.map +0 -1
- package/dist/entity/postgres-connector.d.ts.map +0 -1
- package/dist/entity/registry.d.ts.map +0 -1
- package/dist/entity/store.d.ts.map +0 -1
- package/dist/entity/types.d.ts.map +0 -1
- package/dist/execution-context.d.ts.map +0 -1
- package/dist/executor.d.ts.map +0 -1
- package/dist/forms/form-entity-bridge.d.ts.map +0 -1
- package/dist/forms/form-write-target.d.ts.map +0 -1
- package/dist/forms/index.d.ts.map +0 -1
- package/dist/forms/named-control-values.d.ts.map +0 -1
- package/dist/forms/processor.d.ts.map +0 -1
- package/dist/forms/types.d.ts.map +0 -1
- package/dist/forms/validator.d.ts.map +0 -1
- package/dist/graph/index.d.ts.map +0 -1
- package/dist/graph/resolver.d.ts.map +0 -1
- package/dist/graph/types.d.ts.map +0 -1
- package/dist/hooks/useInstalledAtoms.d.ts.map +0 -1
- package/dist/i18n/index.d.ts.map +0 -1
- package/dist/i18n/translator.d.ts.map +0 -1
- package/dist/i18n/types.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/kernel.d.ts.map +0 -1
- package/dist/perf/budget.d.ts.map +0 -1
- package/dist/perf/index.d.ts.map +0 -1
- package/dist/perf/render-timer.d.ts.map +0 -1
- package/dist/perf/reporter.d.ts.map +0 -1
- package/dist/perf/web-vitals.d.ts.map +0 -1
- package/dist/registry.d.ts.map +0 -1
- package/dist/render/BehaviorSurfaceProvider.d.ts.map +0 -1
- package/dist/render/BlockErrorBoundary.d.ts.map +0 -1
- package/dist/render/DataBoundSurfaceRenderer.d.ts.map +0 -1
- package/dist/render/DynamicBlockWrapper.d.ts.map +0 -1
- package/dist/render/appearance-resolver.d.ts.map +0 -1
- package/dist/render/capability-gate.d.ts.map +0 -1
- package/dist/render/conditional-states-css.d.ts.map +0 -1
- package/dist/render/connections-context.d.ts.map +0 -1
- package/dist/render/dark-theme-css.d.ts.map +0 -1
- package/dist/render/data-binding-types.d.ts.map +0 -1
- package/dist/render/data-cache.d.ts.map +0 -1
- package/dist/render/derive-dark-theme.d.ts.map +0 -1
- package/dist/render/dynamic-artifact-context.d.ts.map +0 -1
- package/dist/render/dynamic-block-loader.d.ts.map +0 -1
- package/dist/render/endpoint.d.ts.map +0 -1
- package/dist/render/entity-facade-context.d.ts.map +0 -1
- package/dist/render/group-states-css.d.ts.map +0 -1
- package/dist/render/hooks/useSurfaceEvents.d.ts.map +0 -1
- package/dist/render/hooks/useSurfaceId.d.ts.map +0 -1
- package/dist/render/index.d.ts.map +0 -1
- package/dist/render/interaction-rule-engine.d.ts.map +0 -1
- package/dist/render/keyframes-css.d.ts.map +0 -1
- package/dist/render/query-state.d.ts.map +0 -1
- package/dist/render/renderer.d.ts.map +0 -1
- package/dist/render/resolve-expressions.d.ts.map +0 -1
- package/dist/render/responsive-style-css.d.ts.map +0 -1
- package/dist/render/responsive.d.ts.map +0 -1
- package/dist/render/scoped-css.d.ts.map +0 -1
- package/dist/render/shell-selection.d.ts.map +0 -1
- package/dist/render/states-css.d.ts.map +0 -1
- package/dist/render/surface-data-context.d.ts.map +0 -1
- package/dist/render/surface-event-bus.d.ts.map +0 -1
- package/dist/render/surface-event-context.d.ts.map +0 -1
- package/dist/render/surface-id-context.d.ts.map +0 -1
- package/dist/render/theme-utils.d.ts.map +0 -1
- package/dist/render/types.d.ts.map +0 -1
- package/dist/render/visibility-css.d.ts.map +0 -1
- package/dist/render/width-scope.d.ts.map +0 -1
- package/dist/render/write-only-sources.d.ts.map +0 -1
- package/dist/routing/index.d.ts.map +0 -1
- package/dist/routing/router.d.ts.map +0 -1
- package/dist/routing/types.d.ts.map +0 -1
- package/dist/seo/generator.d.ts.map +0 -1
- package/dist/seo/index.d.ts.map +0 -1
- package/dist/seo/types.d.ts.map +0 -1
- package/dist/state/index.d.ts.map +0 -1
- package/dist/state/manager.d.ts.map +0 -1
- package/dist/state/store.d.ts.map +0 -1
- package/dist/state/types.d.ts.map +0 -1
- package/dist/surface/expression.d.ts.map +0 -1
- package/dist/surface/index.d.ts.map +0 -1
- package/dist/surface/interpreter.d.ts.map +0 -1
- package/dist/surface/layout.d.ts.map +0 -1
- package/dist/surface/output.d.ts.map +0 -1
- package/dist/surface/primitives.d.ts.map +0 -1
- package/dist/surface/renderer.d.ts.map +0 -1
- package/dist/surface/schemas.d.ts.map +0 -1
- package/dist/surface/transforms.d.ts.map +0 -1
- package/dist/surface/types.d.ts.map +0 -1
- package/dist/surface/validation.d.ts.map +0 -1
- package/dist/validator.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collection.js","sourceRoot":"","sources":["../../src/binding/collection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"collection.js","sourceRoot":"","sources":["../../src/binding/collection.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Collection Binding\n *\n * Reactive collection binding for arrays/lists in surfaces\n *\n * Provides:\n * - Reactive array subscriptions\n * - Filter, sort, map operations\n * - Item change tracking (add, remove, update)\n * - Derived/computed collections\n *\n * @module @pwfabric/runtime/binding/collection\n */\n\n// ============================================================\n// COLLECTION CHANGE EVENT\n// ============================================================\n\n/**\n * Types of changes that can occur to a collection\n */\nexport type CollectionChangeType = 'add' | 'remove' | 'update' | 'reset' | 'reorder'\n\n/**\n * Event emitted when collection changes\n */\nexport interface CollectionChangeEvent<T> {\n /** Type of change */\n readonly type: CollectionChangeType\n /** Index where change occurred (-1 for reset/reorder) */\n readonly index: number\n /** Item that was affected (undefined for reset) */\n readonly item?: T | undefined\n /** Previous items (for reset) */\n readonly previousItems?: readonly T[] | undefined\n /** Timestamp of the change */\n readonly timestamp: number\n}\n\n/**\n * Listener for collection changes\n */\nexport type CollectionChangeListener<T> = (\n items: readonly T[],\n event: CollectionChangeEvent<T>\n) => void\n\n// ============================================================\n// COLLECTION BINDING INTERFACE\n// ============================================================\n\n/**\n * Reactive collection binding interface\n */\nexport interface CollectionBinding<T> {\n /** Current items in the collection */\n readonly items: readonly T[]\n\n /** Field used as unique key for items */\n readonly keyField: string\n\n /** Number of items */\n readonly length: number\n\n /**\n * Subscribe to collection changes\n * @returns Unsubscribe function\n */\n subscribe(listener: CollectionChangeListener<T>): () => void\n\n /**\n * Create a filtered view of the collection\n */\n filter(predicate: (item: T, index: number) => boolean): CollectionBinding<T>\n\n /**\n * Create a sorted view of the collection\n */\n sort(comparator: (a: T, b: T) => number): CollectionBinding<T>\n\n /**\n * Create a mapped view of the collection\n */\n map<U>(mapper: (item: T, index: number) => U): CollectionBinding<U>\n\n /**\n * Create a sliced view of the collection\n */\n slice(start?: number, end?: number): CollectionBinding<T>\n\n /**\n * Get item by key value\n */\n getByKey(keyValue: unknown): T | undefined\n\n /**\n * Get item at index\n */\n at(index: number): T | undefined\n\n /**\n * Find first item matching predicate\n */\n find(predicate: (item: T, index: number) => boolean): T | undefined\n\n /**\n * Find index of first item matching predicate\n */\n findIndex(predicate: (item: T, index: number) => boolean): number\n\n /**\n * Check if any item matches predicate\n */\n some(predicate: (item: T, index: number) => boolean): boolean\n\n /**\n * Check if all items match predicate\n */\n every(predicate: (item: T, index: number) => boolean): boolean\n\n /**\n * Reduce collection to single value\n */\n reduce<U>(reducer: (acc: U, item: T, index: number) => U, initial: U): U\n\n /**\n * Dispose of the collection and all subscriptions\n */\n dispose(): void\n}\n\n/**\n * Mutable collection binding interface\n */\nexport interface MutableCollectionBinding<T> extends CollectionBinding<T> {\n /**\n * Add item to collection\n */\n add(item: T): void\n\n /**\n * Add multiple items to collection\n */\n addMany(items: readonly T[]): void\n\n /**\n * Remove item by key value\n */\n remove(keyValue: unknown): boolean\n\n /**\n * Remove item at index\n */\n removeAt(index: number): T | undefined\n\n /**\n * Update item by key value\n */\n update(keyValue: unknown, updates: Partial<T>): boolean\n\n /**\n * Replace item at index\n */\n replace(index: number, item: T): void\n\n /**\n * Replace all items\n */\n reset(items: readonly T[]): void\n\n /**\n * Clear all items\n */\n clear(): void\n\n /**\n * Move item from one index to another\n */\n move(fromIndex: number, toIndex: number): void\n}\n\n// ============================================================\n// REACTIVE COLLECTION IMPLEMENTATION\n// ============================================================\n\n/**\n * Reactive collection implementation with change tracking\n */\nexport class ReactiveCollection<T> implements MutableCollectionBinding<T> {\n private _items: T[]\n private readonly _keyField: string\n private readonly listeners = new Set<CollectionChangeListener<T>>()\n private disposed = false\n\n constructor(initialItems: readonly T[] = [], keyField = 'id') {\n this._items = [...initialItems]\n this._keyField = keyField\n }\n\n get items(): readonly T[] {\n return this._items\n }\n\n get keyField(): string {\n return this._keyField\n }\n\n get length(): number {\n return this._items.length\n }\n\n subscribe(listener: CollectionChangeListener<T>): () => void {\n if (this.disposed) {\n throw new Error('Cannot subscribe to disposed collection')\n }\n\n this.listeners.add(listener)\n\n return () => {\n this.listeners.delete(listener)\n }\n }\n\n filter(predicate: (item: T, index: number) => boolean): CollectionBinding<T> {\n return new DerivedCollection(this, (items) =>\n items.filter((item, index) => predicate(item, index))\n )\n }\n\n sort(comparator: (a: T, b: T) => number): CollectionBinding<T> {\n return new DerivedCollection(this, (items) => [...items].sort(comparator))\n }\n\n map<U>(mapper: (item: T, index: number) => U): CollectionBinding<U> {\n return new DerivedCollection(this, (items) => items.map((item, index) => mapper(item, index)))\n }\n\n slice(start?: number, end?: number): CollectionBinding<T> {\n return new DerivedCollection(this, (items) => items.slice(start, end))\n }\n\n getByKey(keyValue: unknown): T | undefined {\n return this._items.find((item) => this.getKeyValue(item) === keyValue)\n }\n\n at(index: number): T | undefined {\n if (index < 0) {\n return this._items[this._items.length + index]\n }\n return this._items[index]\n }\n\n find(predicate: (item: T, index: number) => boolean): T | undefined {\n return this._items.find((item, index) => predicate(item, index))\n }\n\n findIndex(predicate: (item: T, index: number) => boolean): number {\n return this._items.findIndex((item, index) => predicate(item, index))\n }\n\n some(predicate: (item: T, index: number) => boolean): boolean {\n return this._items.some((item, index) => predicate(item, index))\n }\n\n every(predicate: (item: T, index: number) => boolean): boolean {\n return this._items.every((item, index) => predicate(item, index))\n }\n\n reduce<U>(reducer: (acc: U, item: T, index: number) => U, initial: U): U {\n return this._items.reduce((acc, item, index) => reducer(acc, item, index), initial)\n }\n\n add(item: T): void {\n if (this.disposed) return\n\n const index = this._items.length\n this._items.push(item)\n this.notify({ type: 'add', index, item, timestamp: Date.now() })\n }\n\n addMany(items: readonly T[]): void {\n if (this.disposed || items.length === 0) return\n\n const startIndex = this._items.length\n this._items.push(...items)\n\n // Notify for each added item\n for (let i = 0; i < items.length; i++) {\n this.notify({\n type: 'add',\n index: startIndex + i,\n item: items[i],\n timestamp: Date.now(),\n })\n }\n }\n\n remove(keyValue: unknown): boolean {\n if (this.disposed) return false\n\n const index = this._items.findIndex((item) => this.getKeyValue(item) === keyValue)\n if (index === -1) return false\n\n const [item] = this._items.splice(index, 1)\n this.notify({ type: 'remove', index, item, timestamp: Date.now() })\n return true\n }\n\n removeAt(index: number): T | undefined {\n if (this.disposed) return undefined\n if (index < 0 || index >= this._items.length) return undefined\n\n const [item] = this._items.splice(index, 1)\n this.notify({ type: 'remove', index, item, timestamp: Date.now() })\n return item\n }\n\n update(keyValue: unknown, updates: Partial<T>): boolean {\n if (this.disposed) return false\n\n const index = this._items.findIndex((item) => this.getKeyValue(item) === keyValue)\n if (index === -1) return false\n\n const existing = this._items[index]\n if (existing === undefined) return false\n const updated = { ...existing, ...updates }\n this._items[index] = updated\n this.notify({ type: 'update', index, item: updated, timestamp: Date.now() })\n return true\n }\n\n replace(index: number, item: T): void {\n if (this.disposed) return\n if (index < 0 || index >= this._items.length) return\n\n this._items[index] = item\n this.notify({ type: 'update', index, item, timestamp: Date.now() })\n }\n\n reset(items: readonly T[]): void {\n if (this.disposed) return\n\n const previousItems = this._items\n this._items = [...items]\n this.notify({\n type: 'reset',\n index: -1,\n previousItems,\n timestamp: Date.now(),\n })\n }\n\n clear(): void {\n this.reset([])\n }\n\n move(fromIndex: number, toIndex: number): void {\n if (this.disposed) return\n if (fromIndex < 0 || fromIndex >= this._items.length) return\n if (toIndex < 0 || toIndex >= this._items.length) return\n if (fromIndex === toIndex) return\n\n const [item] = this._items.splice(fromIndex, 1)\n if (item === undefined) return\n this._items.splice(toIndex, 0, item)\n this.notify({ type: 'reorder', index: toIndex, item, timestamp: Date.now() })\n }\n\n dispose(): void {\n this.disposed = true\n this.listeners.clear()\n }\n\n private getKeyValue(item: T): unknown {\n if (typeof item === 'object' && item !== null) {\n return (item as Record<string, unknown>)[this._keyField]\n }\n return item\n }\n\n private notify(event: CollectionChangeEvent<T>): void {\n const items = this._items\n for (const listener of this.listeners) {\n try {\n listener(items, event)\n } catch {\n // Swallow errors from listeners\n }\n }\n }\n}\n\n// ============================================================\n// DERIVED COLLECTION IMPLEMENTATION\n// ============================================================\n\n/**\n * Derived collection that transforms a source collection\n */\nclass DerivedCollection<TSource, TDerived = TSource> implements CollectionBinding<TDerived> {\n private readonly source: CollectionBinding<TSource>\n private readonly transform: (items: readonly TSource[]) => readonly TDerived[]\n private readonly listeners = new Set<CollectionChangeListener<TDerived>>()\n private _items: readonly TDerived[]\n private unsubscribe: (() => void) | null = null\n private disposed = false\n\n constructor(\n source: CollectionBinding<TSource>,\n transform: (items: readonly TSource[]) => readonly TDerived[]\n ) {\n this.source = source\n this.transform = transform\n this._items = transform(source.items)\n\n // Subscribe to source changes\n this.unsubscribe = source.subscribe(() => {\n this.update()\n })\n }\n\n get items(): readonly TDerived[] {\n return this._items\n }\n\n get keyField(): string {\n return this.source.keyField\n }\n\n get length(): number {\n return this._items.length\n }\n\n subscribe(listener: CollectionChangeListener<TDerived>): () => void {\n if (this.disposed) {\n throw new Error('Cannot subscribe to disposed collection')\n }\n\n this.listeners.add(listener)\n\n return () => {\n this.listeners.delete(listener)\n }\n }\n\n filter(predicate: (item: TDerived, index: number) => boolean): CollectionBinding<TDerived> {\n return new DerivedCollection(this, (items) =>\n items.filter((item, index) => predicate(item, index))\n )\n }\n\n sort(comparator: (a: TDerived, b: TDerived) => number): CollectionBinding<TDerived> {\n return new DerivedCollection(this, (items) => [...items].sort(comparator))\n }\n\n map<U>(mapper: (item: TDerived, index: number) => U): CollectionBinding<U> {\n return new DerivedCollection(this, (items) => items.map((item, index) => mapper(item, index)))\n }\n\n slice(start?: number, end?: number): CollectionBinding<TDerived> {\n return new DerivedCollection(this, (items) => items.slice(start, end))\n }\n\n getByKey(keyValue: unknown): TDerived | undefined {\n // Note: For derived collections with map transforms, key lookup may not work as expected\n return this._items.find((item) => {\n if (typeof item === 'object' && item !== null) {\n return (item as Record<string, unknown>)[this.keyField] === keyValue\n }\n return item === keyValue\n })\n }\n\n at(index: number): TDerived | undefined {\n if (index < 0) {\n return this._items[this._items.length + index]\n }\n return this._items[index]\n }\n\n find(predicate: (item: TDerived, index: number) => boolean): TDerived | undefined {\n return this._items.find((item, index) => predicate(item, index))\n }\n\n findIndex(predicate: (item: TDerived, index: number) => boolean): number {\n return this._items.findIndex((item, index) => predicate(item, index))\n }\n\n some(predicate: (item: TDerived, index: number) => boolean): boolean {\n return this._items.some((item, index) => predicate(item, index))\n }\n\n every(predicate: (item: TDerived, index: number) => boolean): boolean {\n return this._items.every((item, index) => predicate(item, index))\n }\n\n reduce<U>(reducer: (acc: U, item: TDerived, index: number) => U, initial: U): U {\n return this._items.reduce((acc, item, index) => reducer(acc, item, index), initial)\n }\n\n dispose(): void {\n this.disposed = true\n this.listeners.clear()\n if (this.unsubscribe) {\n this.unsubscribe()\n this.unsubscribe = null\n }\n }\n\n private update(): void {\n const previousItems = this._items\n this._items = this.transform(this.source.items)\n\n // Notify listeners\n const event: CollectionChangeEvent<TDerived> = {\n type: 'reset',\n index: -1,\n previousItems,\n timestamp: Date.now(),\n }\n\n for (const listener of this.listeners) {\n try {\n listener(this._items, event)\n } catch {\n // Swallow errors from listeners\n }\n }\n }\n}\n\n// ============================================================\n// FACTORY FUNCTIONS\n// ============================================================\n\n/**\n * Create a reactive collection\n */\nexport function createCollection<T>(\n initialItems?: readonly T[],\n keyField?: string\n): MutableCollectionBinding<T> {\n return new ReactiveCollection<T>(initialItems, keyField)\n}\n\n/**\n * Create a read-only collection from existing data\n */\nexport function createReadOnlyCollection<T>(\n items: readonly T[],\n keyField = 'id'\n): CollectionBinding<T> {\n const collection = new ReactiveCollection<T>(items, keyField)\n // Return interface without mutation methods\n return {\n get items() {\n return collection.items\n },\n get keyField() {\n return collection.keyField\n },\n get length() {\n return collection.length\n },\n subscribe: (listener) => collection.subscribe(listener),\n filter: (predicate) => collection.filter(predicate),\n sort: (comparator) => collection.sort(comparator),\n map: (mapper) => collection.map(mapper),\n slice: (start, end) => collection.slice(start, end),\n getByKey: (keyValue) => collection.getByKey(keyValue),\n at: (index) => collection.at(index),\n find: (predicate) => collection.find(predicate),\n findIndex: (predicate) => collection.findIndex(predicate),\n some: (predicate) => collection.some(predicate),\n every: (predicate) => collection.every(predicate),\n reduce: (reducer, initial) => collection.reduce(reducer, initial),\n dispose: () => collection.dispose(),\n }\n}\n\n/**\n * Create a collection from an async iterable\n */\nexport async function createCollectionFromAsync<T>(\n asyncIterable: AsyncIterable<T>,\n keyField = 'id'\n): Promise<MutableCollectionBinding<T>> {\n const items: T[] = []\n for await (const item of asyncIterable) {\n items.push(item)\n }\n return new ReactiveCollection<T>(items, keyField)\n}\n"]}
|
|
@@ -317,4 +317,3 @@ export declare function createStateDataSource<T>(id: string, stateKey: string, s
|
|
|
317
317
|
* Create a GraphQL data source
|
|
318
318
|
*/
|
|
319
319
|
export declare function createGraphQLDataSource<T>(id: string, url: string, query: string, options?: Omit<GraphQLDataSourceConfig, 'id' | 'type' | 'url' | 'query'>, cache?: CacheProvider): DataSource<T>;
|
|
320
|
-
//# sourceMappingURL=datasource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datasource.js","sourceRoot":"","sources":["../../src/binding/datasource.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"datasource.js","sourceRoot":"","sources":["../../src/binding/datasource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAkMH,+DAA+D;AAC/D,qBAAqB;AACrB,+DAA+D;AAE/D;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAClB,EAAE,CAAQ;IACV,IAAI,GAAmB,QAAQ,CAAA;IAC/B,IAAI,CAAoB;IACxB,WAAW,CAAoB;IACvB,IAAI,CAAG;IAExB,YAAY,MAAiC;QAC3C,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QACvB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QACrC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAED,SAAS;QACP,OAAO,KAAK,CAAA;IACd,CAAC;CACF;AAED,+DAA+D;AAC/D,kBAAkB;AAClB,+DAA+D;AAE/D;;GAEG;AACH,MAAM,OAAO,aAAa;IACf,EAAE,CAAQ;IACV,IAAI,GAAmB,KAAK,CAAA;IAC5B,IAAI,CAAoB;IACxB,WAAW,CAAoB;IAEvB,MAAM,CAAqB;IAC3B,KAAK,CAA2B;IAChC,SAAS,GAAG,IAAI,GAAG,EAAyB,CAAA;IACrD,SAAS,CAA4C;IACrD,OAAO,GAAG,KAAK,CAAA;IACf,QAAQ,CAAe;IAE/B,YAAY,MAA2B,EAAE,KAAqB;QAC5D,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QACvB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAElB,8BAA8B;QAC9B,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QACxC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAgC;QAC1C,oBAAoB;QACpB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;YACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAI,QAAQ,CAAC,CAAA;YAChD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,MAAM,CAAA;YACf,CAAC;QACH,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QAEnB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;YAE9C,kBAAkB;YAClB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAO,CAAC,CAAC,CAAE,IAAU,CAAA;YAE5F,iBAAiB;YACjB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;gBACzC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACpE,CAAC;YAED,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAA;YAC3B,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAA;YAEjC,OAAO,WAAW,CAAA;QACpB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QACtB,CAAC;IACH,CAAC;IAED,SAAS,CAAC,QAA+B;QACvC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAE5B,iDAAiD;QACjD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACzB,CAAC;QAED,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACjC,CAAC,CAAA;IACH,CAAC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;YACnC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC5B,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,MAAgC;QAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC,CAAA;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,IAAI,IAAI,CAAA;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,kBAAkB,IAAI,KAAK,CAAA;QAElE,IAAI,SAA4B,CAAA;QAEhC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC;gBACH,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YACnC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,SAAS,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;gBAEzD,IAAI,OAAO,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;oBAC9B,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;oBACnE,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAA;gBAC/D,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,SAAS,CAAA;IACjB,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,MAAgC;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAA;QACnC,IAAI,GAAG,GAAG,WAAW,CAAA;QAErB,iDAAiD;QACjD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAA;QAEpC,yBAAyB;QACzB,IAAI,MAAM,EAAE,CAAC;YACX,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClD,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;oBACxE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;oBAC3C,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;oBAC5C,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;QAED,qBAAqB;QACrB,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAA;QACzC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACtB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YACxC,CAAC;QACH,CAAC;QACD,qEAAqE;QACrE,IAAI,MAAM,EAAE,CAAC;YACX,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;gBACxC,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAA;QAC1C,IAAI,WAAW,EAAE,CAAC;YAChB,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,CAAA;QACtD,CAAC;QAED,MAAM,WAAW,GAAgB;YAC/B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK;YACnC,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO;aACvB;SACF,CAAA;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACrB,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACrD,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;QAE9C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;QACpE,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;IACxB,CAAC;IAEO,WAAW,CAAC,MAAgC;QAClD,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAA;QAC9B,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACtD,OAAO,cAAc,IAAI,CAAC,EAAE,IAAI,SAAS,EAAE,CAAA;IAC7C,CAAC;IAEO,YAAY,CAAC,QAAgB;QACnC,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gBACtB,sCAAsC;YACxC,CAAC,CAAC,CAAA;QACJ,CAAC,EAAE,QAAQ,CAAC,CAAA;IACd,CAAC;IAEO,eAAe,CAAC,IAAO;QAC7B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,CAAA;YAChB,CAAC;YAAC,MAAM,CAAC;gBACP,gCAAgC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAED,+DAA+D;AAC/D,sBAAsB;AACtB,+DAA+D;AAE/D;;GAEG;AACH,MAAM,OAAO,iBAAiB;IACnB,EAAE,CAAQ;IACV,IAAI,GAAmB,SAAS,CAAA;IAChC,IAAI,CAAoB;IACxB,WAAW,CAAoB;IAEvB,MAAM,CAAyB;IAC/B,KAAK,CAA2B;IAChC,SAAS,GAAG,IAAI,GAAG,EAAyB,CAAA;IACrD,SAAS,CAA4C;IACrD,OAAO,GAAG,KAAK,CAAA;IACf,QAAQ,CAAe;IAE/B,YAAY,MAA+B,EAAE,KAAqB;QAChE,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QACvB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAElB,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QACxC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAgC;QAC1C,oBAAoB;QACpB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;YACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAI,QAAQ,CAAC,CAAA;YAChD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,MAAM,CAAA;YACf,CAAC;QACH,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QAEnB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAE5C,kBAAkB;YAClB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAO,CAAC,CAAC,CAAE,IAAU,CAAA;YAE5F,iBAAiB;YACjB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;gBACzC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACpE,CAAC;YAED,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAA;YAC3B,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAA;YAEjC,OAAO,WAAW,CAAA;QACpB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QACtB,CAAC;IACH,CAAC;IAED,SAAS,CAAC,QAA+B;QACvC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAE5B,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACzB,CAAC;QAED,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACjC,CAAC,CAAA;IACH,CAAC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;YACnC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC5B,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,MAAgC;QACzD,6CAA6C;QAC7C,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,MAAM,EAAE,CAAA;QAEzD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YAC5C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO;aACvB;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;gBACxB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;aACrE,CAAC;SACH,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,gBAAgB,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;QAC5E,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAGpC,CAAA;QAED,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/D,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAA;QAChD,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,CAAA;IACpB,CAAC;IAEO,WAAW,CAAC,MAAgC;QAClD,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAA;QAC9B,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACtD,OAAO,sBAAsB,IAAI,CAAC,EAAE,IAAI,SAAS,EAAE,CAAA;IACrD,CAAC;IAEO,YAAY,CAAC,QAAgB;QACnC,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gBACtB,sCAAsC;YACxC,CAAC,CAAC,CAAA;QACJ,CAAC,EAAE,QAAQ,CAAC,CAAA;IACd,CAAC;IAEO,eAAe,CAAC,IAAO;QAC7B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,CAAA;YAChB,CAAC;YAAC,MAAM,CAAC;gBACP,gCAAgC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAED,+DAA+D;AAC/D,oBAAoB;AACpB,+DAA+D;AAE/D;;GAEG;AACH,MAAM,OAAO,eAAe;IACjB,EAAE,CAAQ;IACV,IAAI,GAAmB,OAAO,CAAA;IAC9B,IAAI,CAAoB;IACxB,WAAW,CAAoB;IAEvB,MAAM,CAAuB;IAC7B,UAAU,CAAY;IACtB,SAAS,GAAG,IAAI,GAAG,EAAyB,CAAA;IACrD,WAAW,CAA0B;IAE7C,YAAY,MAA6B,EAAE,UAAsB;QAC/D,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QACvB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAE5B,6BAA6B;QAC7B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YACjE,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAO,CAAC,CAAC,CAAE,KAAW,CAAA;YAC9F,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACvD,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAO,CAAC,CAAC,CAAE,KAAW,CAAA;IACnF,CAAC;IAED,SAAS,CAAC,QAA+B;QACvC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAE5B,wCAAwC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS;gBACvC,CAAC,CAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAO;gBACvC,CAAC,CAAE,OAAa,CAAA;YAClB,QAAQ,CAAC,WAAW,CAAC,CAAA;QACvB,CAAC;QAED,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACjC,CAAC,CAAA;IACH,CAAC;IAED,SAAS;QACP,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,EAAE,CAAA;YAClB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;QAC9B,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;IAEO,eAAe,CAAC,IAAO;QAC7B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,CAAA;YAChB,CAAC;YAAC,MAAM,CAAC;gBACP,gCAAgC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;CACF;AA8CD;;GAEG;AACH,MAAM,OAAO,0BAA0B;IACpB,OAAO,GAAG,IAAI,GAAG,EAAsB,CAAA;IAExD,QAAQ,CAAI,MAAqB;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,gBAAgB,MAAM,CAAC,EAAE,yBAAyB,CAAC,CAAA;QACrE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAoB,CAAC,CAAA;IACnD,CAAC;IAED,GAAG,CAAI,EAAU;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAA8B,CAAA;IAC1D,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,KAAK,CAAI,EAAU,EAAE,MAAgC;QACzD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAA;QAClD,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAe,CAAA;IAC3C,CAAC;IAED,UAAU,CAAC,EAAU;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACnC,IAAI,MAAM,EAAE,CAAC;YACX,6CAA6C;YAC7C,IAAI,SAAS,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBAChE,MAAM,CAAC,OAAO,EAAE,CAAA;YAClB,CAAC;YACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAChC,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,GAAG;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,KAAK;QACH,sBAAsB;QACtB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,IAAI,SAAS,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBAChE,MAAM,CAAC,OAAO,EAAE,CAAA;YAClB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;CACF;AAED,+DAA+D;AAC/D,oBAAoB;AACpB,+DAA+D;AAE/D;;GAEG;AACH,MAAM,UAAU,wBAAwB;IACtC,OAAO,IAAI,0BAA0B,EAAE,CAAA;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAA2B,EAC3B,YAGC;IAED,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAkB,CAAA;QAEtD,KAAK,KAAK;YACR,OAAO,IAAI,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAkB,CAAA;QAExE,KAAK,OAAO;YACV,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;YACnE,CAAC;YACD,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,UAAU,CAAkB,CAAA;QAE9E,KAAK,SAAS;YACZ,OAAO,IAAI,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAkB,CAAA;QAE5E;YACE,MAAM,IAAI,KAAK,CAAC,6BAA8B,MAA2B,CAAC,IAAI,EAAE,CAAC,CAAA;IACrF,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,EAAU,EACV,IAAO,EACP,OAAiD;IAEjD,MAAM,MAAM,GAA8B;QACxC,EAAE;QACF,IAAI,EAAE,QAAQ;QACd,IAAI;KACL,CAAA;IACD,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,CAAC;QAAC,MAA2B,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;IACnD,CAAC;IACD,IAAI,OAAO,EAAE,WAAW,KAAK,SAAS,EAAE,CAAC;QACvC,CAAC;QAAC,MAAkC,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;IACxE,CAAC;IACD,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAA;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,EAAU,EACV,GAAW,EACX,OAA0D,EAC1D,KAAqB;IAErB,OAAO,IAAI,aAAa,CACtB;QACE,EAAE;QACF,IAAI,EAAE,KAAK;QACX,GAAG;QACH,GAAG,OAAO;KACX,EACD,KAAK,CACN,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,EAAU,EACV,QAAgB,EAChB,UAAsB,EACtB,OAAmF;IAEnF,MAAM,MAAM,GAA0B;QACpC,EAAE;QACF,IAAI,EAAE,OAAO;QACb,QAAQ;KACT,CAAA;IACD,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,CAAC;QAAC,MAA2B,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;IACnD,CAAC;IACD,IAAI,OAAO,EAAE,WAAW,KAAK,SAAS,EAAE,CAAC;QACvC,CAAC;QAAC,MAAkC,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;IACxE,CAAC;IACD,IAAI,OAAO,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;QACrC,CAAC;QAAC,MAAoD,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;IACtF,CAAC;IACD,OAAO,IAAI,eAAe,CAAI,MAAM,EAAE,UAAU,CAAC,CAAA;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,EAAU,EACV,GAAW,EACX,KAAa,EACb,OAAwE,EACxE,KAAqB;IAErB,OAAO,IAAI,iBAAiB,CAC1B;QACE,EAAE;QACF,IAAI,EAAE,SAAS;QACf,GAAG;QACH,KAAK;QACL,GAAG,OAAO;KACX,EACD,KAAK,CACN,CAAA;AACH,CAAC","sourcesContent":["/**\n * Data Source Management\n *\n * Data source registry and management for surfaces\n *\n * Provides:\n * - Static data sources (inline data)\n * - API data sources (REST endpoints)\n * - State data sources (from state module)\n * - Caching integration\n *\n * @module @pwfabric/runtime/binding/datasource\n */\n\nimport type { CacheProvider } from '../cache/types.js'\nimport type { StateStore } from '../state/types.js'\n\n// ============================================================\n// DATA SOURCE TYPES\n// ============================================================\n\n/**\n * Data source types\n */\nexport type DataSourceType = 'static' | 'api' | 'graphql' | 'state'\n\n/**\n * Data source interface\n */\nexport interface DataSource<T = unknown> {\n /** Unique identifier for the data source */\n readonly id: string\n\n /** Type of data source */\n readonly type: DataSourceType\n\n /** Human-readable name */\n readonly name?: string | undefined\n\n /** Optional description */\n readonly description?: string | undefined\n\n /**\n * Fetch data from the source\n */\n fetch(params?: Record<string, unknown>): Promise<T>\n\n /**\n * Subscribe to data changes (if supported)\n * @returns Unsubscribe function, or undefined if not supported\n */\n subscribe?(listener: DataSourceListener<T>): () => void\n\n /**\n * Invalidate cached data (if caching is enabled)\n */\n invalidate?(): void\n\n /**\n * Check if the data source is loading\n */\n isLoading?(): boolean\n}\n\n/**\n * Listener for data source changes\n */\nexport type DataSourceListener<T> = (data: T) => void\n\n// ============================================================\n// DATA SOURCE CONFIGURATION\n// ============================================================\n\n/**\n * Base configuration for data sources\n */\nexport interface BaseDataSourceConfig {\n /** Unique identifier */\n readonly id: string\n\n /** Human-readable name */\n readonly name?: string | undefined\n\n /** Optional description */\n readonly description?: string | undefined\n\n /** Cache configuration */\n readonly cache?: DataSourceCacheConfig | undefined\n}\n\n/**\n * Cache configuration for data sources\n */\nexport interface DataSourceCacheConfig {\n /** Whether caching is enabled */\n readonly enabled: boolean\n\n /** Time-to-live in milliseconds */\n readonly ttl?: number\n\n /** Custom cache key */\n readonly key?: string\n}\n\n/**\n * Static data source configuration\n */\nexport interface StaticDataSourceConfig<T> extends BaseDataSourceConfig {\n readonly type: 'static'\n\n /** Static data */\n readonly data: T\n}\n\n/**\n * API data source configuration\n */\nexport interface ApiDataSourceConfig extends BaseDataSourceConfig {\n readonly type: 'api'\n\n /** API endpoint URL */\n readonly url: string\n\n /** HTTP method */\n readonly method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'\n\n /** Request headers */\n readonly headers?: Record<string, string>\n\n /** Request body (for POST/PUT/PATCH) */\n readonly body?: unknown\n\n /** Query parameters */\n readonly query?: Record<string, string | number | boolean>\n\n /** Transform response data */\n readonly transform?: (data: unknown) => unknown\n\n /** Polling interval in milliseconds (0 = no polling) */\n readonly pollInterval?: number\n\n /** Retry configuration */\n readonly retry?: DataSourceRetryConfig\n}\n\n/**\n * GraphQL data source configuration\n */\nexport interface GraphQLDataSourceConfig extends BaseDataSourceConfig {\n readonly type: 'graphql'\n\n /** GraphQL endpoint URL */\n readonly url: string\n\n /** GraphQL query */\n readonly query: string\n\n /** GraphQL variables */\n readonly variables?: Record<string, unknown>\n\n /** Request headers */\n readonly headers?: Record<string, string>\n\n /** Transform response data */\n readonly transform?: (data: unknown) => unknown\n\n /** Polling interval in milliseconds (0 = no polling) */\n readonly pollInterval?: number\n}\n\n/**\n * State data source configuration\n */\nexport interface StateDataSourceConfig extends BaseDataSourceConfig {\n readonly type: 'state'\n\n /** State key to bind to */\n readonly stateKey: string\n\n /** Transform state data */\n readonly transform?: ((data: unknown) => unknown) | undefined\n}\n\n/**\n * Union of all data source configurations\n */\nexport type DataSourceConfig<T = unknown> =\n | StaticDataSourceConfig<T>\n | ApiDataSourceConfig\n | GraphQLDataSourceConfig\n | StateDataSourceConfig\n\n/**\n * Retry configuration\n */\nexport interface DataSourceRetryConfig {\n /** Maximum number of retry attempts */\n readonly maxAttempts: number\n\n /** Delay between retries in milliseconds */\n readonly delay: number\n\n /** Whether to use exponential backoff */\n readonly exponentialBackoff?: boolean\n}\n\n// ============================================================\n// STATIC DATA SOURCE\n// ============================================================\n\n/**\n * Static data source implementation\n */\nexport class StaticDataSource<T> implements DataSource<T> {\n readonly id: string\n readonly type: DataSourceType = 'static'\n readonly name: string | undefined\n readonly description: string | undefined\n private readonly data: T\n\n constructor(config: StaticDataSourceConfig<T>) {\n this.id = config.id\n this.name = config.name\n this.description = config.description\n this.data = config.data\n }\n\n async fetch(): Promise<T> {\n return this.data\n }\n\n isLoading(): boolean {\n return false\n }\n}\n\n// ============================================================\n// API DATA SOURCE\n// ============================================================\n\n/**\n * API data source implementation with caching and polling support\n */\nexport class ApiDataSource<T = unknown> implements DataSource<T> {\n readonly id: string\n readonly type: DataSourceType = 'api'\n readonly name: string | undefined\n readonly description: string | undefined\n\n private readonly config: ApiDataSourceConfig\n private readonly cache: CacheProvider | undefined\n private readonly listeners = new Set<DataSourceListener<T>>()\n private pollTimer: ReturnType<typeof setInterval> | undefined\n private loading = false\n private lastData: T | undefined\n\n constructor(config: ApiDataSourceConfig, cache?: CacheProvider) {\n this.id = config.id\n this.name = config.name\n this.description = config.description\n this.config = config\n this.cache = cache\n\n // Start polling if configured\n if (config.pollInterval && config.pollInterval > 0) {\n this.startPolling(config.pollInterval)\n }\n }\n\n async fetch(params?: Record<string, unknown>): Promise<T> {\n // Check cache first\n if (this.config.cache?.enabled && this.cache) {\n const cacheKey = this.getCacheKey(params)\n const cached = await this.cache.get<T>(cacheKey)\n if (cached !== undefined) {\n return cached\n }\n }\n\n this.loading = true\n\n try {\n const data = await this.fetchWithRetry(params)\n\n // Apply transform\n const transformed = this.config.transform ? (this.config.transform(data) as T) : (data as T)\n\n // Store in cache\n if (this.config.cache?.enabled && this.cache) {\n const cacheKey = this.getCacheKey(params)\n await this.cache.set(cacheKey, transformed, this.config.cache.ttl)\n }\n\n this.lastData = transformed\n this.notifyListeners(transformed)\n\n return transformed\n } finally {\n this.loading = false\n }\n }\n\n subscribe(listener: DataSourceListener<T>): () => void {\n this.listeners.add(listener)\n\n // Immediately notify with last data if available\n if (this.lastData !== undefined) {\n listener(this.lastData)\n }\n\n return () => {\n this.listeners.delete(listener)\n }\n }\n\n invalidate(): void {\n if (this.config.cache?.enabled && this.cache) {\n const cacheKey = this.getCacheKey()\n this.cache.delete(cacheKey)\n }\n }\n\n isLoading(): boolean {\n return this.loading\n }\n\n /**\n * Stop polling and clean up\n */\n dispose(): void {\n if (this.pollTimer) {\n clearInterval(this.pollTimer)\n this.pollTimer = undefined\n }\n this.listeners.clear()\n }\n\n private async fetchWithRetry(params?: Record<string, unknown>): Promise<unknown> {\n const maxAttempts = this.config.retry?.maxAttempts ?? 1\n const delay = this.config.retry?.delay ?? 1000\n const exponential = this.config.retry?.exponentialBackoff ?? false\n\n let lastError: Error | undefined\n\n for (let attempt = 0; attempt < maxAttempts; attempt++) {\n try {\n return await this.doFetch(params)\n } catch (e) {\n lastError = e instanceof Error ? e : new Error(String(e))\n\n if (attempt < maxAttempts - 1) {\n const waitTime = exponential ? delay * Math.pow(2, attempt) : delay\n await new Promise((resolve) => setTimeout(resolve, waitTime))\n }\n }\n }\n\n throw lastError\n }\n\n private async doFetch(params?: Record<string, unknown>): Promise<unknown> {\n const originalUrl = this.config.url\n let url = originalUrl\n\n // Track which params are used in URL replacement\n const usedParams = new Set<string>()\n\n // Replace URL parameters\n if (params) {\n for (const [key, value] of Object.entries(params)) {\n if (originalUrl.includes(`:${key}`) || originalUrl.includes(`{${key}}`)) {\n url = url.replace(`:${key}`, String(value))\n url = url.replace(`{${key}}`, String(value))\n usedParams.add(key)\n }\n }\n }\n\n // Build query string\n const queryParams = new URLSearchParams()\n if (this.config.query) {\n for (const [key, value] of Object.entries(this.config.query)) {\n queryParams.append(key, String(value))\n }\n }\n // Add remaining params (not used in URL replacement) to query string\n if (params) {\n for (const [key, value] of Object.entries(params)) {\n if (!usedParams.has(key)) {\n queryParams.append(key, String(value))\n }\n }\n }\n const queryString = queryParams.toString()\n if (queryString) {\n url += (url.includes('?') ? '&' : '?') + queryString\n }\n\n const requestInit: RequestInit = {\n method: this.config.method ?? 'GET',\n headers: {\n 'Content-Type': 'application/json',\n ...this.config.headers,\n },\n }\n if (this.config.body) {\n requestInit.body = JSON.stringify(this.config.body)\n }\n const response = await fetch(url, requestInit)\n\n if (!response.ok) {\n throw new Error(`HTTP ${response.status}: ${response.statusText}`)\n }\n\n return response.json()\n }\n\n private getCacheKey(params?: Record<string, unknown>): string {\n if (this.config.cache?.key) {\n return this.config.cache.key\n }\n const paramsKey = params ? JSON.stringify(params) : ''\n return `datasource:${this.id}:${paramsKey}`\n }\n\n private startPolling(interval: number): void {\n this.pollTimer = setInterval(() => {\n this.fetch().catch(() => {\n // Polling errors are silently ignored\n })\n }, interval)\n }\n\n private notifyListeners(data: T): void {\n for (const listener of this.listeners) {\n try {\n listener(data)\n } catch {\n // Swallow errors from listeners\n }\n }\n }\n}\n\n// ============================================================\n// GRAPHQL DATA SOURCE\n// ============================================================\n\n/**\n * GraphQL data source implementation with polling and caching support\n */\nexport class GraphQLDataSource<T = unknown> implements DataSource<T> {\n readonly id: string\n readonly type: DataSourceType = 'graphql'\n readonly name: string | undefined\n readonly description: string | undefined\n\n private readonly config: GraphQLDataSourceConfig\n private readonly cache: CacheProvider | undefined\n private readonly listeners = new Set<DataSourceListener<T>>()\n private pollTimer: ReturnType<typeof setInterval> | undefined\n private loading = false\n private lastData: T | undefined\n\n constructor(config: GraphQLDataSourceConfig, cache?: CacheProvider) {\n this.id = config.id\n this.name = config.name\n this.description = config.description\n this.config = config\n this.cache = cache\n\n if (config.pollInterval && config.pollInterval > 0) {\n this.startPolling(config.pollInterval)\n }\n }\n\n async fetch(params?: Record<string, unknown>): Promise<T> {\n // Check cache first\n if (this.config.cache?.enabled && this.cache) {\n const cacheKey = this.getCacheKey(params)\n const cached = await this.cache.get<T>(cacheKey)\n if (cached !== undefined) {\n return cached\n }\n }\n\n this.loading = true\n\n try {\n const data = await this.executeQuery(params)\n\n // Apply transform\n const transformed = this.config.transform ? (this.config.transform(data) as T) : (data as T)\n\n // Store in cache\n if (this.config.cache?.enabled && this.cache) {\n const cacheKey = this.getCacheKey(params)\n await this.cache.set(cacheKey, transformed, this.config.cache.ttl)\n }\n\n this.lastData = transformed\n this.notifyListeners(transformed)\n\n return transformed\n } finally {\n this.loading = false\n }\n }\n\n subscribe(listener: DataSourceListener<T>): () => void {\n this.listeners.add(listener)\n\n if (this.lastData !== undefined) {\n listener(this.lastData)\n }\n\n return () => {\n this.listeners.delete(listener)\n }\n }\n\n invalidate(): void {\n if (this.config.cache?.enabled && this.cache) {\n const cacheKey = this.getCacheKey()\n this.cache.delete(cacheKey)\n }\n }\n\n isLoading(): boolean {\n return this.loading\n }\n\n dispose(): void {\n if (this.pollTimer) {\n clearInterval(this.pollTimer)\n this.pollTimer = undefined\n }\n this.listeners.clear()\n }\n\n private async executeQuery(params?: Record<string, unknown>): Promise<unknown> {\n // Merge config variables with runtime params\n const variables = { ...this.config.variables, ...params }\n\n const response = await fetch(this.config.url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n ...this.config.headers,\n },\n body: JSON.stringify({\n query: this.config.query,\n variables: Object.keys(variables).length > 0 ? variables : undefined,\n }),\n })\n\n if (!response.ok) {\n throw new Error(`GraphQL HTTP ${response.status}: ${response.statusText}`)\n }\n\n const result = (await response.json()) as {\n data?: unknown\n errors?: { message: string }[]\n }\n\n if (result.errors && result.errors.length > 0) {\n const messages = result.errors.map((e) => e.message).join('; ')\n throw new Error(`GraphQL errors: ${messages}`)\n }\n\n return result.data\n }\n\n private getCacheKey(params?: Record<string, unknown>): string {\n if (this.config.cache?.key) {\n return this.config.cache.key\n }\n const paramsKey = params ? JSON.stringify(params) : ''\n return `datasource:graphql:${this.id}:${paramsKey}`\n }\n\n private startPolling(interval: number): void {\n this.pollTimer = setInterval(() => {\n this.fetch().catch(() => {\n // Polling errors are silently ignored\n })\n }, interval)\n }\n\n private notifyListeners(data: T): void {\n for (const listener of this.listeners) {\n try {\n listener(data)\n } catch {\n // Swallow errors from listeners\n }\n }\n }\n}\n\n// ============================================================\n// STATE DATA SOURCE\n// ============================================================\n\n/**\n * State data source implementation - binds to state store\n */\nexport class StateDataSource<T = unknown> implements DataSource<T> {\n readonly id: string\n readonly type: DataSourceType = 'state'\n readonly name: string | undefined\n readonly description: string | undefined\n\n private readonly config: StateDataSourceConfig\n private readonly stateStore: StateStore\n private readonly listeners = new Set<DataSourceListener<T>>()\n private unsubscribe: (() => void) | undefined\n\n constructor(config: StateDataSourceConfig, stateStore: StateStore) {\n this.id = config.id\n this.name = config.name\n this.description = config.description\n this.config = config\n this.stateStore = stateStore\n\n // Subscribe to state changes\n this.unsubscribe = stateStore.subscribe(config.stateKey, (value) => {\n const transformed = this.config.transform ? (this.config.transform(value) as T) : (value as T)\n this.notifyListeners(transformed)\n })\n }\n\n async fetch(): Promise<T> {\n const value = this.stateStore.get(this.config.stateKey)\n return this.config.transform ? (this.config.transform(value) as T) : (value as T)\n }\n\n subscribe(listener: DataSourceListener<T>): () => void {\n this.listeners.add(listener)\n\n // Immediately notify with current state\n const current = this.stateStore.get(this.config.stateKey)\n if (current !== undefined) {\n const transformed = this.config.transform\n ? (this.config.transform(current) as T)\n : (current as T)\n listener(transformed)\n }\n\n return () => {\n this.listeners.delete(listener)\n }\n }\n\n isLoading(): boolean {\n return false\n }\n\n /**\n * Clean up subscriptions\n */\n dispose(): void {\n if (this.unsubscribe) {\n this.unsubscribe()\n this.unsubscribe = undefined\n }\n this.listeners.clear()\n }\n\n private notifyListeners(data: T): void {\n for (const listener of this.listeners) {\n try {\n listener(data)\n } catch {\n // Swallow errors from listeners\n }\n }\n }\n}\n\n// ============================================================\n// DATA SOURCE REGISTRY\n// ============================================================\n\n/**\n * Data source registry interface\n */\nexport interface DataSourceRegistry {\n /**\n * Register a data source\n */\n register<T>(source: DataSource<T>): void\n\n /**\n * Get a data source by ID\n */\n get<T>(id: string): DataSource<T> | undefined\n\n /**\n * Check if a data source exists\n */\n has(id: string): boolean\n\n /**\n * Fetch data from a source by ID\n */\n fetch<T>(id: string, params?: Record<string, unknown>): Promise<T>\n\n /**\n * Unregister a data source\n */\n unregister(id: string): boolean\n\n /**\n * Get all registered data source IDs\n */\n ids(): string[]\n\n /**\n * Clear all data sources\n */\n clear(): void\n}\n\n/**\n * In-memory data source registry implementation\n */\nexport class InMemoryDataSourceRegistry implements DataSourceRegistry {\n private readonly sources = new Map<string, DataSource>()\n\n register<T>(source: DataSource<T>): void {\n if (this.sources.has(source.id)) {\n throw new Error(`Data source '${source.id}' is already registered`)\n }\n this.sources.set(source.id, source as DataSource)\n }\n\n get<T>(id: string): DataSource<T> | undefined {\n return this.sources.get(id) as DataSource<T> | undefined\n }\n\n has(id: string): boolean {\n return this.sources.has(id)\n }\n\n async fetch<T>(id: string, params?: Record<string, unknown>): Promise<T> {\n const source = this.sources.get(id)\n if (!source) {\n throw new Error(`Data source '${id}' not found`)\n }\n return source.fetch(params) as Promise<T>\n }\n\n unregister(id: string): boolean {\n const source = this.sources.get(id)\n if (source) {\n // Dispose if the source has a dispose method\n if ('dispose' in source && typeof source.dispose === 'function') {\n source.dispose()\n }\n return this.sources.delete(id)\n }\n return false\n }\n\n ids(): string[] {\n return Array.from(this.sources.keys())\n }\n\n clear(): void {\n // Dispose all sources\n for (const source of this.sources.values()) {\n if ('dispose' in source && typeof source.dispose === 'function') {\n source.dispose()\n }\n }\n this.sources.clear()\n }\n}\n\n// ============================================================\n// FACTORY FUNCTIONS\n// ============================================================\n\n/**\n * Create a data source registry\n */\nexport function createDataSourceRegistry(): DataSourceRegistry {\n return new InMemoryDataSourceRegistry()\n}\n\n/**\n * Create a data source from configuration\n */\nexport function createDataSource<T>(\n config: DataSourceConfig<T>,\n dependencies?: {\n cache?: CacheProvider\n stateStore?: StateStore\n }\n): DataSource<T> {\n switch (config.type) {\n case 'static':\n return new StaticDataSource(config) as DataSource<T>\n\n case 'api':\n return new ApiDataSource(config, dependencies?.cache) as DataSource<T>\n\n case 'state':\n if (!dependencies?.stateStore) {\n throw new Error('State store is required for state data sources')\n }\n return new StateDataSource(config, dependencies.stateStore) as DataSource<T>\n\n case 'graphql':\n return new GraphQLDataSource(config, dependencies?.cache) as DataSource<T>\n\n default:\n throw new Error(`Unknown data source type: ${(config as DataSourceConfig).type}`)\n }\n}\n\n/**\n * Create a static data source\n */\nexport function createStaticDataSource<T>(\n id: string,\n data: T,\n options?: { name?: string; description?: string }\n): DataSource<T> {\n const config: StaticDataSourceConfig<T> = {\n id,\n type: 'static',\n data,\n }\n if (options?.name !== undefined) {\n ;(config as { name: string }).name = options.name\n }\n if (options?.description !== undefined) {\n ;(config as { description: string }).description = options.description\n }\n return new StaticDataSource(config)\n}\n\n/**\n * Create an API data source\n */\nexport function createApiDataSource<T>(\n id: string,\n url: string,\n options?: Omit<ApiDataSourceConfig, 'id' | 'type' | 'url'>,\n cache?: CacheProvider\n): DataSource<T> {\n return new ApiDataSource<T>(\n {\n id,\n type: 'api',\n url,\n ...options,\n },\n cache\n )\n}\n\n/**\n * Create a state data source\n */\nexport function createStateDataSource<T>(\n id: string,\n stateKey: string,\n stateStore: StateStore,\n options?: { name?: string; description?: string; transform?: (data: unknown) => T }\n): DataSource<T> {\n const config: StateDataSourceConfig = {\n id,\n type: 'state',\n stateKey,\n }\n if (options?.name !== undefined) {\n ;(config as { name: string }).name = options.name\n }\n if (options?.description !== undefined) {\n ;(config as { description: string }).description = options.description\n }\n if (options?.transform !== undefined) {\n ;(config as { transform: (data: unknown) => unknown }).transform = options.transform\n }\n return new StateDataSource<T>(config, stateStore)\n}\n\n/**\n * Create a GraphQL data source\n */\nexport function createGraphQLDataSource<T>(\n id: string,\n url: string,\n query: string,\n options?: Omit<GraphQLDataSourceConfig, 'id' | 'type' | 'url' | 'query'>,\n cache?: CacheProvider\n): DataSource<T> {\n return new GraphQLDataSource<T>(\n {\n id,\n type: 'graphql',\n url,\n query,\n ...options,\n },\n cache\n )\n}\n"]}
|
package/dist/binding/engine.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/binding/engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/binding/engine.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Binding Engine\n *\n * Resolves and manages capability bindings for surfaces\n *\n * @module @pwfabric/runtime/binding/engine\n */\n\nimport type { SurfaceId, Capability, ExecutionResult, ExecutionError } from '@pwfabric/contracts'\nimport { executionErr } from '@pwfabric/contracts'\nimport type { FabricKernel } from '../kernel.js'\nimport type {\n BindingConfig,\n BoundCapability,\n BindingState,\n BindingError,\n BindingContext,\n BindingResult,\n SurfaceBindingResult,\n AuthContext,\n} from './types.js'\nimport type { CacheProvider } from '../cache/types.js'\n\n// ============================================================\n// BINDING ENGINE\n// ============================================================\n\n/**\n * Binding engine interface\n */\nexport interface BindingEngine {\n /**\n * Bind a capability to a surface\n */\n bind<TOutput>(surfaceId: SurfaceId, config: BindingConfig): BindingResult<TOutput>\n\n /**\n * Bind all capabilities for a surface\n */\n bindAll(surfaceId: SurfaceId, configs: readonly BindingConfig[]): SurfaceBindingResult\n\n /**\n * Get a bound capability\n */\n get(surfaceId: SurfaceId, alias: string): BoundCapability | undefined\n\n /**\n * Unbind a capability\n */\n unbind(surfaceId: SurfaceId, alias: string): boolean\n\n /**\n * Unbind all capabilities for a surface\n */\n unbindAll(surfaceId: SurfaceId): void\n\n /**\n * Get binding context for a surface\n */\n getContext(surfaceId: SurfaceId): BindingContext | undefined\n\n /**\n * Set authentication context\n */\n setAuthContext(surfaceId: SurfaceId, auth: AuthContext): void\n}\n\n// ============================================================\n// RUNTIME BINDING ENGINE\n// ============================================================\n\n/**\n * Runtime binding engine implementation\n */\nexport class RuntimeBindingEngine implements BindingEngine {\n private readonly fabric: FabricKernel\n private readonly cache: CacheProvider | undefined\n private readonly contexts = new Map<SurfaceId, BindingContext>()\n\n constructor(fabric: FabricKernel, cache?: CacheProvider) {\n this.fabric = fabric\n this.cache = cache\n }\n\n bind<TOutput>(surfaceId: SurfaceId, config: BindingConfig): BindingResult<TOutput> {\n // Resolve capability from fabric\n const resolution = this.fabric.resolve(config.capabilityId)\n if (!resolution.found) {\n return {\n success: false,\n error: {\n type: 'resolution_failed',\n message: `Capability ${config.capabilityId} not found`,\n },\n }\n }\n\n const alias = config.alias ?? config.capabilityId\n\n // Create bound capability\n const boundCapability = this.createBoundCapability<unknown, TOutput>(\n surfaceId,\n alias,\n resolution.capability,\n config\n )\n\n // Get or create context\n let context = this.contexts.get(surfaceId)\n if (!context) {\n context = {\n surfaceId,\n data: {},\n bindings: new Map(),\n }\n this.contexts.set(surfaceId, context)\n }\n\n // Add to bindings\n context.bindings.set(alias, boundCapability as BoundCapability)\n\n return { success: true, binding: boundCapability }\n }\n\n bindAll(surfaceId: SurfaceId, configs: readonly BindingConfig[]): SurfaceBindingResult {\n const errors: BindingError[] = []\n\n for (const config of configs) {\n const result = this.bind(surfaceId, config)\n if (!result.success) {\n errors.push(result.error)\n }\n }\n\n if (errors.length > 0) {\n return { success: false, errors }\n }\n\n const context = this.contexts.get(surfaceId)\n if (!context) {\n return {\n success: false,\n errors: [{ type: 'resolution_failed', message: 'Context not created' }],\n }\n }\n\n return { success: true, context }\n }\n\n get(surfaceId: SurfaceId, alias: string): BoundCapability | undefined {\n return this.contexts.get(surfaceId)?.bindings.get(alias)\n }\n\n unbind(surfaceId: SurfaceId, alias: string): boolean {\n const context = this.contexts.get(surfaceId)\n if (!context) return false\n return context.bindings.delete(alias)\n }\n\n unbindAll(surfaceId: SurfaceId): void {\n this.contexts.delete(surfaceId)\n }\n\n getContext(surfaceId: SurfaceId): BindingContext | undefined {\n return this.contexts.get(surfaceId)\n }\n\n setAuthContext(surfaceId: SurfaceId, auth: AuthContext): void {\n const existing = this.contexts.get(surfaceId)\n if (existing) {\n const updated: BindingContext = {\n ...existing,\n auth,\n }\n this.contexts.set(surfaceId, updated)\n } else {\n this.contexts.set(surfaceId, {\n surfaceId,\n auth,\n data: {},\n bindings: new Map(),\n })\n }\n }\n\n private createBoundCapability<TInput, TOutput>(\n surfaceId: SurfaceId,\n alias: string,\n _capability: Capability,\n config: BindingConfig\n ): BoundCapability<TInput, TOutput> {\n let state: BindingState = 'bound'\n let lastExecuted: number | undefined\n let lastResult: ExecutionResult<TOutput> | undefined\n let lastInput: TInput | undefined\n let error: BindingError | undefined\n\n const execute = async (input: TInput): Promise<ExecutionResult<TOutput>> => {\n state = 'binding'\n lastInput = input\n\n try {\n // Apply input transform if configured\n let transformedInput = input\n if (config.transform?.input) {\n try {\n transformedInput = config.transform.input(input) as TInput\n } catch (e) {\n state = 'error'\n error = {\n type: 'transform_failed',\n message: `Input transform failed: ${e}`,\n cause: e,\n }\n const execError: ExecutionError = {\n type: 'execution_error',\n message: error.message,\n capabilityId: config.capabilityId,\n }\n return executionErr(execError)\n }\n }\n\n // Check cache if enabled\n if (config.cache?.enabled && this.cache) {\n const cacheKey = config.cache.key ?? `${surfaceId}:${alias}:${JSON.stringify(input)}`\n const cached = await this.cache.get<TOutput>(cacheKey)\n if (cached !== undefined) {\n state = 'bound'\n lastExecuted = Date.now()\n lastResult = { success: true, data: cached }\n return lastResult\n }\n }\n\n // Execute capability\n const result = await this.fabric.execute<TInput, TOutput>(\n config.capabilityId,\n transformedInput\n )\n\n if (result.success) {\n // Apply output transform if configured\n let output = result.data\n if (config.transform?.output) {\n try {\n output = config.transform.output(output) as TOutput\n } catch (e) {\n state = 'error'\n error = {\n type: 'transform_failed',\n message: `Output transform failed: ${e}`,\n cause: e,\n }\n const execError: ExecutionError = {\n type: 'execution_error',\n message: error.message,\n capabilityId: config.capabilityId,\n }\n return executionErr(execError)\n }\n }\n\n // Store in cache if enabled\n if (config.cache?.enabled && this.cache) {\n const cacheKey = config.cache.key ?? `${surfaceId}:${alias}:${JSON.stringify(input)}`\n await this.cache.set(cacheKey, output, config.cache.ttl)\n }\n\n state = 'bound'\n lastExecuted = Date.now()\n lastResult = { success: true, data: output }\n return lastResult\n } else {\n state = 'error'\n error = {\n type: 'execution_failed',\n message: result.error.message,\n cause: result.error,\n }\n lastResult = result\n return result\n }\n } catch (e) {\n state = 'error'\n error = {\n type: 'execution_failed',\n message: `Execution failed: ${e}`,\n cause: e,\n }\n const execError: ExecutionError = {\n type: 'execution_error',\n message: error.message,\n capabilityId: config.capabilityId,\n }\n return executionErr(execError)\n }\n }\n\n const refresh = async (): Promise<ExecutionResult<TOutput>> => {\n if (lastInput === undefined) {\n const execError: ExecutionError = {\n type: 'execution_error',\n message: 'No previous input to refresh',\n capabilityId: config.capabilityId,\n }\n return executionErr(execError)\n }\n return execute(lastInput)\n }\n\n const invalidate = (): void => {\n state = 'stale'\n if (config.cache?.enabled && this.cache) {\n const cacheKey = config.cache.key ?? `${surfaceId}:${alias}:${JSON.stringify(lastInput)}`\n this.cache.delete(cacheKey)\n }\n }\n\n const boundCapability: BoundCapability<TInput, TOutput> = {\n get id() {\n return `${surfaceId}:${alias}`\n },\n capabilityId: config.capabilityId,\n get state() {\n return state\n },\n config,\n execute,\n refresh,\n invalidate,\n }\n\n // Use Object.defineProperties for optional getters to satisfy exactOptionalPropertyTypes\n Object.defineProperties(boundCapability, {\n lastExecuted: {\n get() {\n return lastExecuted\n },\n enumerable: true,\n },\n lastResult: {\n get() {\n return lastResult\n },\n enumerable: true,\n },\n error: {\n get() {\n return error\n },\n enumerable: true,\n },\n })\n\n return boundCapability\n }\n}\n\n/**\n * Create a binding engine\n */\nexport function createBindingEngine(fabric: FabricKernel, cache?: CacheProvider): BindingEngine {\n return new RuntimeBindingEngine(fabric, cache)\n}\n"]}
|
|
@@ -148,4 +148,3 @@ export declare const DEFAULT_BINDING_HELPERS: Record<string, (...args: unknown[]
|
|
|
148
148
|
* Create an expression evaluator with context and helpers
|
|
149
149
|
*/
|
|
150
150
|
export declare function createExpressionEvaluator(additionalHelpers?: Record<string, (...args: unknown[]) => unknown>): ExpressionEvaluator;
|
|
151
|
-
//# sourceMappingURL=expression.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression.js","sourceRoot":"","sources":["../../src/binding/expression.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"expression.js","sourceRoot":"","sources":["../../src/binding/expression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAkEH,+DAA+D;AAC/D,kBAAkB;AAClB,+DAA+D;AAE/D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,YAAY,CAAC,MAAe,EAAE,GAAW;IACvD,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAA;IAC3F,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,GAAY,MAAM,CAAC,CAAC,CAAC,CAAA;QAC/B,OAAO,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAC9C,CAAC,CAAE,IAAgC,CAAC,GAAG,CAAC;YACxC,CAAC,CAAC,SAAS,CAAA;IACf,CAAC;IACD,OAAQ,MAAkC,CAAC,GAAG,CAAC,CAAA;AACjD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,GAAY,EAAE,IAAY;IACpD,IAAI,CAAC,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACrD,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAC7B,IAAI,OAAO,GAAY,GAAG,CAAA;IAE1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC9C,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;YAC3C,CAAC;iBAAM,CAAC;gBACN,OAAO,SAAS,CAAA;YAClB,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC/B,CAAC;iBAAM,CAAC;gBACN,OAAO,SAAS,CAAA;YAClB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAOD;;GAEG;AACH,SAAS,SAAS,CAAC,IAAY;IAC7B,MAAM,QAAQ,GAAkB,EAAE,CAAA;IAClC,2EAA2E;IAC3E,EAAE;IACF,6EAA6E;IAC7E,uEAAuE;IACvE,2EAA2E;IAC3E,2EAA2E;IAC3E,uCAAuC;IACvC,MAAM,KAAK,GAAG,qBAAqB,CAAA;IACnC,IAAI,KAA6B,CAAA;IAEjC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAC3B,gBAAgB;YAChB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACpD,CAAC;aAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAClC,cAAc;YACd,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAgED,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAA;AACnF,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAEpE,2EAA2E;AAC3E,SAAS,SAAS,CAAC,CAAoB;IACrC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IACpB,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO,IAAI,CAAA;IAC9G,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,CAAA;AAC7F,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,IAA6B;IAC3D,MAAM,MAAM,GAAY,EAAE,CAAA;IAC1B,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,MAAM,QAAQ,GAAG,OAAO,CAAA;IAExB,MAAM,QAAQ,GAAG,CAAC,iBAA0B,EAAU,EAAE;QACtD,IAAI,IAAI,GAAG,EAAE,CAAA;QACb,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YACxB,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,IAAI,IAAI,CAAC,CAAA;gBACT,CAAC,EAAE,CAAA;gBACH,SAAQ;YACV,CAAC;YACD,wEAAwE;YACxE,IACE,IAAI,CAAC,WAAW;gBAChB,CAAC,KAAK,GAAG;gBACT,IAAI,CAAC,MAAM,GAAG,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAChC,CAAC;gBACD,IAAI,IAAI,CAAC,CAAA;gBACT,CAAC,EAAE,CAAA;gBACH,SAAQ;YACV,CAAC;YACD,MAAK;QACP,CAAC;QACD,IAAI,CAAC,iBAAiB,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,IAAI,GAAG,CAAC,CAAA;QAClG,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAED,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACzB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAClB,CAAC,EAAE,CAAA;YACH,SAAQ;QACV,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAEtC,+DAA+D;QAC/D,+DAA+D;QAC/D,IAAI,IAAI,EAAE,IAAI,KAAK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC3B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;YAC3D,SAAQ;QACV,CAAC;QAED,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,EAAE,CAAA;YAChB,IAAI,KAAK,GAAG,EAAE,CAAA;YACd,CAAC,EAAE,CAAA;YACH,IAAI,MAAM,GAAG,KAAK,CAAA;YAClB,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;gBACxB,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;oBAChB,MAAM,GAAG,IAAI,CAAA;oBACb,MAAK;gBACP,CAAC;gBACD,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACtC,CAAC,EAAE,CAAA;oBACH,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;oBACxB,KAAK,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;gBAClD,CAAC;qBAAM,CAAC;oBACN,KAAK,IAAI,CAAC,CAAA;gBACZ,CAAC;gBACD,CAAC,EAAE,CAAA;YACL,CAAC;YACD,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;YAC3D,CAAC,EAAE,CAAA;YACH,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EAAE,EAAE,CAAC,CAAA;YACvE,SAAQ;QACV,CAAC;QAED,mEAAmE;QACnE,iEAAiE;QACjE,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACvF,IAAI,GAAG,GAAG,EAAE,CAAA;YACZ,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,GAAG,GAAG,GAAG,CAAA;gBACT,CAAC,EAAE,CAAA;YACL,CAAC;YACD,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAAE,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAA;YAC5E,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAA;gBACvB,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAAE,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAA;YAC9E,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;YACjE,SAAQ;QACV,CAAC;QAED,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;YAC5B,IAAI,IAAI,KAAK,MAAM;gBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;iBACxE,IAAI,IAAI,KAAK,OAAO;gBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;iBAC/E,IAAI,IAAI,KAAK,MAAM;gBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;iBAC7E,IAAI,IAAI,KAAK,WAAW;gBAC3B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;;gBACxF,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;YAChE,SAAQ;QACV,CAAC;QAED,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;QAC5D,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;YAC3D,CAAC,IAAI,KAAK,CAAC,MAAM,CAAA;YACjB,SAAQ;QACV,CAAC;QAED,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;aACxE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;aAChF,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;aAClF,IAAI,EAAE,KAAK,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;aAChE,IAAI,EAAE,KAAK,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;aAClE,IAAI,EAAE,KAAK,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;aACrE,IAAI,EAAE,KAAK,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;;YAClE,MAAM,IAAI,KAAK,CAAC,yBAAyB,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC5D,CAAC,EAAE,CAAA;IACL,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAgBD,MAAM,aAAa,GAAmC;IACpD,CAAC,IAAI,CAAC;IACN,CAAC,IAAI,CAAC;IACN,CAAC,IAAI,CAAC;IACN,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC;IAC1B,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;IACtB,CAAC,GAAG,EAAE,GAAG,CAAC;IACV,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;CAChB,CAAA;AAED,SAAS,KAAK,CAAC,MAAwB;IACrC,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,MAAM,IAAI,GAAG,GAAsB,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACjD,MAAM,EAAE,GAAG,CAAC,IAAe,EAAE,KAAe,EAAW,EAAE;QACvD,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACrB,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAA;IACzF,CAAC,CAAA;IACD,MAAM,MAAM,GAAG,CAAC,IAAe,EAAE,KAAc,EAAE,IAAY,EAAQ,EAAE;QACrE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,CAAA;QACzD,GAAG,EAAE,CAAA;IACP,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,SAAoB,EAAU,EAAE;QAChE,MAAM,IAAI,GAAW,EAAE,CAAA;QACvB,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;YACzB,GAAG,EAAE,CAAA;YACL,OAAO,IAAI,CAAA;QACb,CAAC;QACD,SAAS,CAAC;YACR,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAA;YACzB,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChB,GAAG,EAAE,CAAA;gBACL,SAAQ;YACV,CAAC;YACD,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,KAAK,GAAG,CAAC,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC,CAAA;IAED,SAAS,YAAY;QACnB,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC;YAAE,OAAO,IAAI,CAAA;QAChC,GAAG,EAAE,CAAA;QACL,MAAM,IAAI,GAAG,YAAY,EAAE,CAAA;QAC3B,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,2BAA2B,CAAC,CAAA;QACjD,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,CAAA;IACxD,CAAC;IAED,SAAS,WAAW,CAAC,KAAa;QAChC,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;QAChC,IAAI,CAAC,GAAG;YAAE,OAAO,UAAU,EAAE,CAAA;QAC7B,IAAI,IAAI,GAAG,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;QACjC,SAAS,CAAC;YACR,MAAM,CAAC,GAAG,IAAI,EAAE,CAAA;YAChB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAe,CAAC;gBAAE,OAAO,IAAI,CAAA;YAChF,GAAG,EAAE,CAAA;YACL,IAAI,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,KAAe,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAA;QACnF,CAAC;IACH,CAAC;IAED,SAAS,UAAU;QACjB,IAAI,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC;YACtE,MAAM,EAAE,GAAI,MAAM,CAAC,GAAG,EAAE,CAAW,CAAC,KAAe,CAAA;YACnD,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,CAAA;QAC9C,CAAC;QACD,OAAO,YAAY,EAAE,CAAA;IACvB,CAAC;IAED,SAAS,YAAY;QACnB,IAAI,IAAI,GAAG,YAAY,EAAE,CAAA;QACzB,SAAS,CAAC;YACR,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;gBACd,GAAG,EAAE,CAAA;gBACL,MAAM,CAAC,GAAG,IAAI,EAAE,CAAA;gBAChB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY;oBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;gBACpF,GAAG,EAAE,CAAA;gBACL,MAAM,IAAI,GAAG,CAAC,CAAC,KAAe,CAAA;gBAC9B,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;oBACrB,GAAG,EAAE,CAAA;oBACL,IAAI,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAA;gBACxE,CAAC;qBAAM,CAAC;oBACN,IAAI,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;gBAC/C,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;gBAC9B,GAAG,EAAE,CAAA;gBACL,MAAM,KAAK,GAAG,YAAY,EAAE,CAAA;gBAC5B,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;gBAC7B,IAAI,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;YACzC,CAAC;iBAAM,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;YAChE,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,YAAY;QACnB,MAAM,CAAC,GAAG,IAAI,EAAE,CAAA;QAChB,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACvD,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACvE,GAAG,EAAE,CAAA;YACL,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;QACjC,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC5B,GAAG,EAAE,CAAA;YACL,MAAM,IAAI,GAAG,CAAC,CAAC,KAAe,CAAA;YAC9B,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;gBACrB,GAAG,EAAE,CAAA;gBACL,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAA;YAC3D,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;QAC5B,CAAC;QACD,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;YACrB,GAAG,EAAE,CAAA;YACL,MAAM,KAAK,GAAG,YAAY,EAAE,CAAA;YAC5B,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;YAC3B,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;YACvB,GAAG,EAAE,CAAA;YACL,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,CAAA;QACzD,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;IAChD,CAAC;IAED,MAAM,IAAI,GAAG,YAAY,EAAE,CAAA;IAC3B,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAsB,MAAM,CAAC,GAAG,CAAW,CAAC,GAAG,GAAG,CAAC,CAAA;IAC5F,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,eAAe,GAAG,IAAI,CAAA;AAC5B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAwB,CAAA;AAEhD,SAAS,WAAW,CAAC,IAAY,EAAE,IAA6B;IAC9D,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,EAAE,CAAA;IACvF,IAAI,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC3B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QACnC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QACrD,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,IAAI,eAAe;YAAE,QAAQ,CAAC,KAAK,EAAE,CAAA;QACtD,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACxB,CAAC;IACD,IAAI,GAAG,YAAY,KAAK;QAAE,MAAM,GAAG,CAAA;IACnC,OAAO,GAAG,CAAA;AACZ,CAAC;AAgBD;;;;GAIG;AACH,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC7B,aAAa,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU;IAClG,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS;IACxF,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe;CAC9E,CAAC,CAAA;AACF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAA;AACtG,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAA;AAExF,SAAS,UAAU,CAAC,MAAe,EAAE,IAAY,EAAE,IAAe;IAChE,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IAC7D,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;SAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;SAC5D,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACvE,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oBAAoB,CAAC,CAAA;IAClE,yEAAyE;IACzE,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC;QAChG,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,sBAAsB,CAAC,CAAA;IACxD,CAAC;IACD,MAAM,EAAE,GAAI,MAA6C,CAAC,IAAI,CAAiC,CAAA;IAC/F,OAAO,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAC/B,CAAC;AAED,SAAS,UAAU,CAAC,MAAe,EAAE,IAAY;IAC/C,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;IACpF,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC5G,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,QAAQ,CAAC,IAAU,EAAE,KAAmB;IAC/C,QAAQ,IAAI,CAAC,CAAC,EAAE,CAAC;QACf,KAAK,KAAK;YACR,OAAO,IAAI,CAAC,CAAC,CAAA;QACf,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChC,KAAK,QAAQ;YACX,OAAO,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QACzD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YACzC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAA;YAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,OAAO,MAAM,CAAC,KAAe,CAAC,CAAA;YACzD,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAE,OAAQ,MAAkC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YACzF,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAClC,IAAI,OAAO,EAAE,KAAK,UAAU;gBAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YAC7E,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;QACxD,CAAC;QACD,KAAK,QAAQ;YACX,OAAO,UAAU,CACf,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EACzB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CACzC,CAAA;QACH,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YACnC,IAAI,IAAI,CAAC,EAAE,KAAK,GAAG;gBAAE,OAAO,CAAC,CAAC,CAAA;YAC9B,IAAI,IAAI,CAAC,EAAE,KAAK,GAAG;gBAAE,OAAO,CAAE,CAAY,CAAA;YAC1C,OAAO,CAAE,CAAY,CAAA;QACvB,CAAC;QACD,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC7F,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;QAClD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,kEAAkE;YAClE,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;gBACjC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACxC,CAAC;YACD,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;gBACjC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACxC,CAAC;YACD,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;gBACjC,OAAO,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACrC,CAAC;YACD,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACjC,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACjC,QAAQ,IAAI,CAAC,EAAE,EAAE,CAAC;gBAChB,KAAK,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC1B,KAAK,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC1B,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBACxB,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBACxB,KAAK,GAAG,CAAC,CAAC,OAAQ,CAAY,GAAI,CAAY,CAAA;gBAC9C,KAAK,GAAG,CAAC,CAAC,OAAQ,CAAY,GAAI,CAAY,CAAA;gBAC9C,KAAK,IAAI,CAAC,CAAC,OAAQ,CAAY,IAAK,CAAY,CAAA;gBAChD,KAAK,IAAI,CAAC,CAAC,OAAQ,CAAY,IAAK,CAAY,CAAA;gBAChD,KAAK,GAAG;oBACN,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ;wBACnD,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;wBACvB,CAAC,CAAE,CAAY,GAAI,CAAY,CAAA;gBACnC,KAAK,GAAG,CAAC,CAAC,OAAQ,CAAY,GAAI,CAAY,CAAA;gBAC9C,KAAK,GAAG,CAAC,CAAC,OAAQ,CAAY,GAAI,CAAY,CAAA;gBAC9C,KAAK,GAAG,CAAC,CAAC,OAAQ,CAAY,GAAI,CAAY,CAAA;gBAC9C,KAAK,GAAG,CAAC,CAAC,OAAQ,CAAY,GAAI,CAAY,CAAA;YAChD,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,UAAkB,EAClB,KAAmB,EACnB,OAAgC,EAAE;IAElC,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,EAAE,CAAA;IACjC,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAA;IAC9B,OAAO,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAA;AACpD,CAAC;AAED,+DAA+D;AAC/D,sCAAsC;AACtC,+DAA+D;AAE/D;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,UAAkB,EAClB,OAAiC;IAEjC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC/B,MAAM,KAAK,GAAiB;YAC1B,MAAM,CAAC,IAAI;gBACT,IAAI,IAAI,KAAK,MAAM;oBAAE,OAAO,OAAO,CAAC,IAAI,CAAA;gBACxC,IAAI,IAAI,KAAK,OAAO;oBAAE,OAAO,OAAO,CAAC,KAAK,CAAA;gBAC1C,IAAI,IAAI,KAAK,QAAQ;oBAAE,OAAO,OAAO,CAAC,MAAM,CAAA;gBAC5C,kEAAkE;gBAClE,8BAA8B;gBAC9B,IAAI,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;oBAAE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAA;gBACxF,0EAA0E;gBAC1E,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM;oBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBACvD,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK;oBAAE,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACrD,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI;oBAAE,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACnD,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;SAC/G,CAAA;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAA;IAClG,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,CAAC,EAAE,EAAE,CAAA;IAC5D,CAAC;AACH,CAAC;AAED,+DAA+D;AAC/D,wBAAwB;AACxB,+DAA+D;AAE/D;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAkB;IACpD,MAAM,YAAY,GAA2B,EAAE,CAAA;IAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAE9B,4DAA4D;IAC5D,2EAA2E;IAC3E,MAAM,QAAQ,GAAG;QACf,kCAAkC;QAClC,mCAAmC;QACnC,oCAAoC;KACrC,CAAA;IAED,MAAM,OAAO,GAA6C,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAErF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;QAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QACzB,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM;YAAE,SAAQ;QAEjC,IAAI,KAA6B,CAAA;QAEjC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACnD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YACrB,IAAI,IAAI,KAAK,SAAS;gBAAE,SAAQ;YAChC,MAAM,GAAG,GAAG,GAAG,MAAM,IAAI,IAAI,EAAE,CAAA;YAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACb,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC;AAED,+DAA+D;AAC/D,gBAAgB;AAChB,+DAA+D;AAE/D;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,OAAO,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAClC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,QAAgB,EAAE,OAAiC;IAC7E,MAAM,OAAO,GAAG,gBAAgB,CAAA;IAChC,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAA;QACvD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;QACnC,CAAC;QACD,OAAO,EAAE,CAAA;IACX,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,+DAA+D;AAC/D,kBAAkB;AAClB,+DAA+D;AAE/D;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAoD;IACtF,iBAAiB;IACjB,KAAK,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;IAC9C,KAAK,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;IAC9C,IAAI,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;IACtC,UAAU,EAAE,CAAC,CAAU,EAAE,EAAE;QACzB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACrB,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACnD,CAAC;IACD,MAAM,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;IAEzD,iBAAiB;IACjB,KAAK,EAAE,CAAC,CAAU,EAAE,QAAkB,EAAE,EAAE;QACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACrB,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAC5D,CAAC;IACD,KAAK,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1C,GAAG,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACxC,GAAG,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1D,GAAG,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1D;;;;;;;OAOG;IACH,KAAK,EAAE,CAAC,KAAc,EAAE,IAAa,EAAE,EAAE;QACvC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QACvB,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;QACtB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,CAAA;QAC5E,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IACzB,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,yEAAyE;IACzE,WAAW;IACX,KAAK,EAAE,CAAC,KAAc,EAAE,KAAe,EAAE,EAAE;QACzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QACnC,MAAM,CAAC,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACzD,OAAO,KAAK,CAAC,MAAM,CAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;YACtC,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAE,EAAqC,EAAE,CAAC,CAAC,CAAC,CAAA;YAC5E,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;YACnB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QAC3C,CAAC,EAAE,CAAC,CAAC,CAAA;IACP,CAAC;IACD,UAAU,EAAE,CAAC,KAAc,EAAE,KAAc,EAAE,EAAE;QAC7C,MAAM,GAAG,GAA2B,EAAE,CAAA;QACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,GAAG,CAAA;QACrC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QACvB,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,GAAI,EAAqC,EAAE,CAAC,CAAC,CAAC,CAAA;YACrD,MAAM,GAAG,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAC7E,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QAChC,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,gBAAgB;IAChB,MAAM,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IAChF,KAAK,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,IAAI,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9E,IAAI,EAAE,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE,CACpC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;IACjE,QAAQ,EAAE,CAAC,GAAY,EAAE,IAAa,EAAE,EAAE,CACxC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9E,KAAK,EAAE,CAAC,GAAY,EAAE,KAAe,EAAE,GAAa,EAAE,EAAE;QACtD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,GAAG,CAAC,KAAK,CACd,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAC/C,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAC5C,CAAA;QACH,CAAC;QACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CACtB,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAC/C,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAC5C,CAAA;IACH,CAAC;IAED,cAAc;IACd,OAAO,EAAE,CAAC,CAAU,EAAE,EAAE,CACtB,CAAC,KAAK,IAAI;QACV,CAAC,KAAK,SAAS;QACf,CAAC,KAAK,EAAE;QACR,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;QACpC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IACxD,UAAU,EAAE,CAAC,CAAU,EAAE,EAAE,CACzB,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IACpF,OAAO,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ;IAC/C,QAAQ,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5D,SAAS,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,SAAS;IACjD,MAAM,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;IAErD,iBAAiB;IACjB,IAAI,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,MAAM,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE7F,qBAAqB;IACrB,IAAI,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACvC;;;;;;OAMG;IACH,KAAK,EAAE,CAAC,UAAoB,EAAE,EAAE;QAC9B,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC,CAAA;QACrC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC;YAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;QACrF,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QACpD,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QAC/C,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAA;IACzC,CAAC;IACD,IAAI,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAoB,CAAC,CAAC,kBAAkB,EAAE;IACzE,IAAI,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAoB,CAAC,CAAC,kBAAkB,EAAE;IACzE,QAAQ,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAoB,CAAC,CAAC,cAAc,EAAE;IACzE,QAAQ,EAAE,CAAC,CAAU,EAAE,QAAkB,EAAE,MAAgB,EAAE,EAAE;QAC7D,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACrB,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE;YACtD,KAAK,EAAE,UAAU;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC;SACpC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAChB,CAAC;IACD,OAAO,EAAE,CAAC,CAAU,EAAE,QAAkB,EAAE,EAAE;QAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACrB,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;QAC/B,OAAO,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;IACrC,CAAC;CACF,CAAA;AAED,+DAA+D;AAC/D,+BAA+B;AAC/B,+DAA+D;AAE/D;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,iBAAmE;IAEnE,MAAM,OAAO,GAAG,EAAE,GAAG,uBAAuB,EAAE,GAAG,iBAAiB,EAAE,CAAA;IAEpE,OAAO;QACL,QAAQ,CAAC,UAAkB,EAAE,OAAiC;YAC5D,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,EAAE;gBAC5C,GAAG,OAAO;gBACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE;aAC5C,CAAC,CAAA;YACF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,MAAM,CAAC,KAAK,CAAA;YACrB,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC/B,CAAC;QAED,YAAY;QAEZ,mBAAmB;QAEnB,WAAW,CAAC,QAAgB,EAAE,OAAiC;YAC7D,OAAO,WAAW,CAAC,QAAQ,EAAE;gBAC3B,GAAG,OAAO;gBACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE;aAC5C,CAAC,CAAA;QACJ,CAAC;KACF,CAAA;AACH,CAAC","sourcesContent":["/**\n * Expression Evaluator for Data Binding\n *\n * Enhanced expression evaluation for data binding in surfaces\n *\n * This module extends the base expression evaluator with:\n * - Arithmetic operations (+, -, *, /, %)\n * - Data/state/params context separation\n * - Dependency extraction for reactive updates\n * - Safe null-coalescing operators\n *\n * @module @pwfabric/runtime/binding/expression\n */\n\n// ============================================================\n// EXPRESSION CONTEXT\n// ============================================================\n\n/**\n * Context for expression evaluation in data binding\n */\nexport interface BindingExpressionContext {\n /** Data from data sources */\n readonly data: Record<string, unknown>\n /** State from state stores */\n readonly state: Record<string, unknown>\n /** URL/route parameters */\n readonly params: Record<string, unknown>\n /** Custom helper functions */\n readonly helpers?: Record<string, (...args: unknown[]) => unknown>\n}\n\n/**\n * Result of expression evaluation\n */\nexport type ExpressionEvalResult<T = unknown> =\n | { readonly success: true; readonly value: T }\n | { readonly success: false; readonly error: string }\n\n// ============================================================\n// EXPRESSION EVALUATOR INTERFACE\n// ============================================================\n\n/**\n * Expression evaluator interface for data binding\n */\nexport interface ExpressionEvaluator {\n /**\n * Evaluate an expression in the given context\n */\n evaluate(expression: string, context: BindingExpressionContext): unknown\n\n /**\n * Check if a value is an expression (contains {{...}})\n */\n isExpression(value: unknown): boolean\n\n /**\n * Extract dependencies from an expression for reactive updates\n */\n extractDependencies(expression: string): ExpressionDependency[]\n\n /**\n * Interpolate expressions in a template string\n */\n interpolate(template: string, context: BindingExpressionContext): string\n}\n\n/**\n * Dependency extracted from an expression\n */\nexport interface ExpressionDependency {\n /** The source of the dependency */\n readonly source: 'data' | 'state' | 'params'\n /** The path within the source */\n readonly path: string\n}\n\n// ============================================================\n// PATH RESOLUTION\n// ============================================================\n\n/**\n * Read one named property off a value, stepping into a list of one record.\n *\n * A LIST SOURCE ALWAYS BINDS AS A LIST (DataBoundSurfaceRenderer): a `rest`,\n * `entity` or `graphql` source answering with ONE object is bound as `[obj]`,\n * so `{{src[0].field}}` and `{{src.length}}` behave the same whatever the\n * endpoint returned. But a detail page is authored as `{{product.title}}`, and\n * a property read on an array finds nothing — such a page would render blank\n * (`{{rows.name}}` → empty while `{{rows[0].name}}` → \"banana\").\n *\n * So: when the value is an array of EXACTLY ONE element and the array itself\n * does not carry the key (not `length`, not an index, not an array method),\n * the read continues into that one element. A list of two or more is a list —\n * its `.title` stays undefined, as it always was. Both evaluators (this one\n * and surface/expression) read properties through here, so a path means the\n * same thing in a binding and in a block prop.\n */\nexport function readProperty(target: unknown, key: string): unknown {\n if (target === null || target === undefined || typeof target !== 'object') return undefined\n if (Array.isArray(target) && target.length === 1 && !(key in target)) {\n const only: unknown = target[0]\n return only !== null && typeof only === 'object'\n ? (only as Record<string, unknown>)[key]\n : undefined\n }\n return (target as Record<string, unknown>)[key]\n}\n\n/**\n * Resolve a dotted path in an object, handling nested properties and array indices\n *\n * @example\n * resolvePath({ user: { name: 'John' } }, 'user.name') // 'John'\n * resolvePath({ items: ['a', 'b'] }, 'items[0]') // 'a'\n * resolvePath({ users: [{ name: 'John' }] }, 'users[0].name') // 'John'\n */\nexport function resolvePath(obj: unknown, path: string): unknown {\n if (!path || typeof obj !== 'object' || obj === null) {\n return undefined\n }\n\n const parts = parsePath(path)\n let current: unknown = obj\n\n for (const part of parts) {\n if (current === null || current === undefined) {\n return undefined\n }\n\n if (part.type === 'property') {\n if (typeof current === 'object') {\n current = readProperty(current, part.key)\n } else {\n return undefined\n }\n } else if (part.type === 'index') {\n if (Array.isArray(current)) {\n current = current[part.index]\n } else {\n return undefined\n }\n }\n }\n\n return current\n}\n\n/**\n * Parsed path segment\n */\ntype PathSegment = { type: 'property'; key: string } | { type: 'index'; index: number }\n\n/**\n * Parse a path string into segments\n */\nfunction parsePath(path: string): PathSegment[] {\n const segments: PathSegment[] = []\n // Match property names and array indices: foo, [0], foo[0], foo.bar[1].baz\n //\n // A HYPHEN is a name CHARACTER. With `\\w+` it would be a boundary, and since\n // source ids are hyphenated, `hero-stats.0.text` would split into FOUR\n // segments (`hero`,`stats`,`0`,`text`) instead of three and never resolve.\n // The sibling resolver (surface/expression.ts) accepts hyphenated ids too:\n // its path regex is `/^[\\w\\-.[\\]]+$/`.\n const regex = /([\\w-]+)|\\[(\\d+)\\]/g\n let match: RegExpExecArray | null\n\n while ((match = regex.exec(path)) !== null) {\n if (match[1] !== undefined) {\n // Property name\n segments.push({ type: 'property', key: match[1] })\n } else if (match[2] !== undefined) {\n // Array index\n segments.push({ type: 'index', index: parseInt(match[2], 10) })\n }\n }\n\n return segments\n}\n\n// ============================================================\n// EXPRESSION PARSER — ONE GRAMMAR FOR BOTH EVALUATORS\n// ============================================================\n//\n// This token parser (bindings, computed values) also serves\n// surface/expression.ts (every block prop and every `visibleWhen`). A separate\n// regex/`split` evaluator there would drift in the ways that matter most to\n// generated apps:\n//\n// - the surface one had no parentheses, no arithmetic, no method calls — an\n// expression it could not read came back as the raw `{{…}}` string, which\n// a `visibleWhen` then counted as TRUE, so the block always showed;\n// - it split helper arguments on every comma, so `join(xs, ', ')` joined\n// with `\"\"`.\n//\n// Now there is one tokenizer, one parser producing an AST, and one evaluator.\n// What differs between the two callers is only how a NAME resolves (see\n// `NameResolver`) and two lexical options kept for backward compatibility.\n//\n// STRICT BY DESIGN. An unknown character, an unterminated string, a trailing\n// token or a call to something that is not a helper is an ERROR, not a partial\n// value. The previous parser skipped unknown characters and ignored whatever\n// followed the first complete expression (`5-3` evaluated to 5) — a silent\n// wrong answer is the failure class this exists to end. Callers decide what an\n// error means: a block prop keeps its raw template, a `visibleWhen` hides.\n//\n// `&&`, `||`, `??` and `?:` SHORT-CIRCUIT, because evaluation walks the AST:\n// `isEmpty(x) || x.length > 3` never evaluates the right side when the left\n// already decided.\n\ntype TokenType =\n | 'number'\n | 'string'\n | 'literal'\n | 'identifier'\n | 'operator'\n | 'paren'\n | 'bracket'\n | 'dot'\n | 'comma'\n | 'question'\n | 'colon'\n\ninterface Token {\n type: TokenType\n value: unknown\n raw: string\n}\n\n/** Lexical options — the only grammar differences between the two callers. */\nexport interface ExpressionSyntaxOptions {\n /**\n * `hero-stats-data.0.text` is ONE name. Surface data-source ids are\n * hyphenated, and the surface evaluator always read them as paths, so in\n * that mode a `-` between two name characters with no space around it is\n * part of the name. Subtraction needs spaces there: `a - b`.\n */\n readonly hyphenNames?: boolean\n /** The binding evaluator has always read the literal `undefined` as `null`. */\n readonly undefinedAsNull?: boolean\n}\n\nconst MULTI_OPS = ['===', '!==', '>=', '<=', '==', '!=', '&&', '||', '??'] as const\nconst SINGLE_OPS = new Set(['+', '-', '*', '/', '%', '>', '<', '!'])\n\n/** A token after which a `-` is binary minus, not the sign of a number. */\nfunction endsValue(t: Token | undefined): boolean {\n if (!t) return false\n if (t.type === 'number' || t.type === 'string' || t.type === 'literal' || t.type === 'identifier') return true\n return (t.type === 'paren' && t.value === ')') || (t.type === 'bracket' && t.value === ']')\n}\n\nfunction tokenize(expr: string, opts: ExpressionSyntaxOptions): Token[] {\n const tokens: Token[] = []\n let i = 0\n const nameChar = /[\\w$]/\n\n const readName = (allowLeadingDigit: boolean): string => {\n let name = ''\n while (i < expr.length) {\n const c = expr.charAt(i)\n if (nameChar.test(c)) {\n name += c\n i++\n continue\n }\n // a hyphen joins two name characters (`hero-stats`) in hyphenNames mode\n if (\n opts.hyphenNames &&\n c === '-' &&\n name.length > 0 &&\n /[\\w$]/.test(expr.charAt(i + 1))\n ) {\n name += c\n i++\n continue\n }\n break\n }\n if (!allowLeadingDigit && /^\\d/.test(name)) throw new Error(`Unexpected number in name '${name}'`)\n return name\n }\n\n while (i < expr.length) {\n const ch = expr.charAt(i)\n if (/\\s/.test(ch)) {\n i++\n continue\n }\n const prev = tokens[tokens.length - 1]\n\n // A property name after a dot: digits (`items.0`) and keywords\n // (`item.default`, `row.null`) are names here, never literals.\n if (prev?.type === 'dot' && /[\\w$]/.test(ch)) {\n const name = readName(true)\n tokens.push({ type: 'identifier', value: name, raw: name })\n continue\n }\n\n if (ch === \"'\" || ch === '\"') {\n const quote = ch\n let value = ''\n i++\n let closed = false\n while (i < expr.length) {\n const c = expr.charAt(i)\n if (c === quote) {\n closed = true\n break\n }\n if (c === '\\\\' && i + 1 < expr.length) {\n i++\n const e = expr.charAt(i)\n value += e === 'n' ? '\\n' : e === 't' ? '\\t' : e\n } else {\n value += c\n }\n i++\n }\n if (!closed) throw new Error('Unterminated string literal')\n i++\n tokens.push({ type: 'string', value, raw: `${quote}${value}${quote}` })\n continue\n }\n\n // Numbers. A leading `-` is a sign only where a value cannot end —\n // `5-3` is subtraction, `-3` and `a * -3` are negative literals.\n if (/\\d/.test(ch) || (ch === '-' && /\\d/.test(expr.charAt(i + 1)) && !endsValue(prev))) {\n let num = ''\n if (ch === '-') {\n num = '-'\n i++\n }\n while (i < expr.length && /\\d/.test(expr.charAt(i))) num += expr.charAt(i++)\n if (expr.charAt(i) === '.' && /\\d/.test(expr.charAt(i + 1))) {\n num += expr.charAt(i++)\n while (i < expr.length && /\\d/.test(expr.charAt(i))) num += expr.charAt(i++)\n }\n tokens.push({ type: 'number', value: parseFloat(num), raw: num })\n continue\n }\n\n if (/[a-zA-Z_$]/.test(ch)) {\n const name = readName(false)\n if (name === 'true') tokens.push({ type: 'literal', value: true, raw: name })\n else if (name === 'false') tokens.push({ type: 'literal', value: false, raw: name })\n else if (name === 'null') tokens.push({ type: 'literal', value: null, raw: name })\n else if (name === 'undefined')\n tokens.push({ type: 'literal', value: opts.undefinedAsNull ? null : undefined, raw: name })\n else tokens.push({ type: 'identifier', value: name, raw: name })\n continue\n }\n\n const multi = MULTI_OPS.find((op) => expr.startsWith(op, i))\n if (multi) {\n tokens.push({ type: 'operator', value: multi, raw: multi })\n i += multi.length\n continue\n }\n\n if (SINGLE_OPS.has(ch)) tokens.push({ type: 'operator', value: ch, raw: ch })\n else if (ch === '(' || ch === ')') tokens.push({ type: 'paren', value: ch, raw: ch })\n else if (ch === '[' || ch === ']') tokens.push({ type: 'bracket', value: ch, raw: ch })\n else if (ch === '.') tokens.push({ type: 'dot', value: ch, raw: ch })\n else if (ch === ',') tokens.push({ type: 'comma', value: ch, raw: ch })\n else if (ch === '?') tokens.push({ type: 'question', value: ch, raw: ch })\n else if (ch === ':') tokens.push({ type: 'colon', value: ch, raw: ch })\n else throw new Error(`Unexpected character '${ch}' at ${i}`)\n i++\n }\n\n return tokens\n}\n\n// ---- AST ----------------------------------------------------------------\n\ntype Node =\n | { readonly k: 'lit'; readonly v: unknown }\n | { readonly k: 'name'; readonly name: string }\n | { readonly k: 'member'; readonly obj: Node; readonly prop: string }\n | { readonly k: 'index'; readonly obj: Node; readonly index: Node }\n | { readonly k: 'call'; readonly name: string; readonly args: readonly Node[] }\n | { readonly k: 'method'; readonly obj: Node; readonly name: string; readonly args: readonly Node[] }\n | { readonly k: 'unary'; readonly op: string; readonly arg: Node }\n | { readonly k: 'binary'; readonly op: string; readonly l: Node; readonly r: Node }\n | { readonly k: 'cond'; readonly test: Node; readonly then: Node; readonly else: Node }\n | { readonly k: 'array'; readonly items: readonly Node[] }\n\nconst BINARY_LEVELS: readonly (readonly string[])[] = [\n ['||'],\n ['&&'],\n ['??'],\n ['===', '!==', '==', '!='],\n ['>', '<', '>=', '<='],\n ['+', '-'],\n ['*', '/', '%'],\n]\n\nfunction parse(tokens: readonly Token[]): Node {\n let pos = 0\n const peek = (): Token | undefined => tokens[pos]\n const is = (type: TokenType, value?: unknown): boolean => {\n const t = tokens[pos]\n return t !== undefined && t.type === type && (value === undefined || t.value === value)\n }\n const expect = (type: TokenType, value: unknown, what: string): void => {\n if (!is(type, value)) throw new Error(`Expected ${what}`)\n pos++\n }\n\n const parseArgs = (close: string, closeType: TokenType): Node[] => {\n const args: Node[] = []\n if (is(closeType, close)) {\n pos++\n return args\n }\n for (;;) {\n args.push(parseTernary())\n if (is('comma')) {\n pos++\n continue\n }\n expect(closeType, close, `'${close}'`)\n return args\n }\n }\n\n function parseTernary(): Node {\n const test = parseBinary(0)\n if (!is('question')) return test\n pos++\n const then = parseTernary()\n expect('colon', ':', \"':' in ternary expression\")\n return { k: 'cond', test, then, else: parseTernary() }\n }\n\n function parseBinary(level: number): Node {\n const ops = BINARY_LEVELS[level]\n if (!ops) return parseUnary()\n let left = parseBinary(level + 1)\n for (;;) {\n const t = peek()\n if (!t || t.type !== 'operator' || !ops.includes(t.value as string)) return left\n pos++\n left = { k: 'binary', op: t.value as string, l: left, r: parseBinary(level + 1) }\n }\n }\n\n function parseUnary(): Node {\n if (is('operator', '!') || is('operator', '-') || is('operator', '+')) {\n const op = (tokens[pos++] as Token).value as string\n return { k: 'unary', op, arg: parseUnary() }\n }\n return parsePostfix()\n }\n\n function parsePostfix(): Node {\n let node = parsePrimary()\n for (;;) {\n if (is('dot')) {\n pos++\n const t = peek()\n if (!t || t.type !== 'identifier') throw new Error('Expected property name after .')\n pos++\n const name = t.value as string\n if (is('paren', '(')) {\n pos++\n node = { k: 'method', obj: node, name, args: parseArgs(')', 'paren') }\n } else {\n node = { k: 'member', obj: node, prop: name }\n }\n } else if (is('bracket', '[')) {\n pos++\n const index = parseTernary()\n expect('bracket', ']', \"']'\")\n node = { k: 'index', obj: node, index }\n } else if (is('paren', '(')) {\n throw new Error('Only helpers and safe methods can be called')\n } else {\n return node\n }\n }\n }\n\n function parsePrimary(): Node {\n const t = peek()\n if (!t) throw new Error('Unexpected end of expression')\n if (t.type === 'number' || t.type === 'string' || t.type === 'literal') {\n pos++\n return { k: 'lit', v: t.value }\n }\n if (t.type === 'identifier') {\n pos++\n const name = t.value as string\n if (is('paren', '(')) {\n pos++\n return { k: 'call', name, args: parseArgs(')', 'paren') }\n }\n return { k: 'name', name }\n }\n if (is('paren', '(')) {\n pos++\n const inner = parseTernary()\n expect('paren', ')', \"')'\")\n return inner\n }\n if (is('bracket', '[')) {\n pos++\n return { k: 'array', items: parseArgs(']', 'bracket') }\n }\n throw new Error(`Unexpected token '${t.raw}'`)\n }\n\n const root = parseTernary()\n if (pos < tokens.length) throw new Error(`Unexpected token '${(tokens[pos] as Token).raw}'`)\n return root\n}\n\n/**\n * Parse once, evaluate many times. Block props are re-resolved on every state\n * change, and the same few hundred template strings come through each time.\n */\nconst AST_CACHE_LIMIT = 2000\nconst astCache = new Map<string, Node | Error>()\n\nfunction parseCached(expr: string, opts: ExpressionSyntaxOptions): Node {\n const key = `${opts.hyphenNames ? 'h' : '-'}${opts.undefinedAsNull ? 'n' : '-'}${expr}`\n let hit = astCache.get(key)\n if (hit === undefined) {\n try {\n hit = parse(tokenize(expr, opts))\n } catch (e) {\n hit = e instanceof Error ? e : new Error(String(e))\n }\n if (astCache.size >= AST_CACHE_LIMIT) astCache.clear()\n astCache.set(key, hit)\n }\n if (hit instanceof Error) throw hit\n return hit\n}\n\n// ---- evaluation ---------------------------------------------------------\n\n/**\n * How a bare name and a call resolve. The grammar is shared; the scope is the\n * caller's: bindings see `data` / `state` / `params`, block props see the\n * surface's expression data (`state`, source ids, `item`, `__errors`, …).\n */\nexport interface NameResolver {\n /** The value of a bare name. */\n lookup(name: string): unknown\n /** The helper a call names, or undefined when there is none. */\n helper(name: string): ((...args: unknown[]) => unknown) | undefined\n}\n\n/**\n * Methods that may be called on a value. Pure, allocation-bounded, and\n * nothing that reaches a constructor, a prototype or a function: a template\n * is authored by a model and rendered in a visitor's browser.\n */\nconst STRING_METHODS = new Set([\n 'toLowerCase', 'toUpperCase', 'trim', 'trimStart', 'trimEnd', 'includes', 'startsWith', 'endsWith',\n 'indexOf', 'lastIndexOf', 'slice', 'substring', 'padStart', 'padEnd', 'split', 'replace',\n 'replaceAll', 'charAt', 'at', 'concat', 'repeat', 'toString', 'localeCompare',\n])\nconst ARRAY_METHODS = new Set(['includes', 'indexOf', 'lastIndexOf', 'join', 'slice', 'at', 'concat'])\nconst NUMBER_METHODS = new Set(['toFixed', 'toPrecision', 'toString', 'toLocaleString'])\n\nfunction callMethod(target: unknown, name: string, args: unknown[]): unknown {\n if (target === null || target === undefined) return undefined\n let allowed = false\n if (typeof target === 'string') allowed = STRING_METHODS.has(name)\n else if (Array.isArray(target)) allowed = ARRAY_METHODS.has(name)\n else if (typeof target === 'number') allowed = NUMBER_METHODS.has(name)\n if (!allowed) throw new Error(`Method '${name}' is not supported`)\n // A `repeat`/`padStart` count from data must not allocate without bound.\n if ((name === 'repeat' || name === 'padStart' || name === 'padEnd') && Number(args[0]) > 10_000) {\n throw new Error(`Method '${name}' argument too large`)\n }\n const fn = (target as unknown as Record<string, unknown>)[name] as (...a: unknown[]) => unknown\n return fn.apply(target, args)\n}\n\nfunction readMember(target: unknown, prop: string): unknown {\n if (typeof target === 'string') return prop === 'length' ? target.length : undefined\n if (target !== null && target !== undefined && typeof target === 'object') return readProperty(target, prop)\n return undefined\n}\n\nfunction evalNode(node: Node, scope: NameResolver): unknown {\n switch (node.k) {\n case 'lit':\n return node.v\n case 'name':\n return scope.lookup(node.name)\n case 'member':\n return readMember(evalNode(node.obj, scope), node.prop)\n case 'index': {\n const target = evalNode(node.obj, scope)\n const index = evalNode(node.index, scope)\n if (target === null || target === undefined) return undefined\n if (Array.isArray(target)) return target[index as number]\n if (typeof target === 'object') return (target as Record<string, unknown>)[String(index)]\n return undefined\n }\n case 'call': {\n const fn = scope.helper(node.name)\n if (typeof fn !== 'function') throw new Error(`Unknown helper: ${node.name}`)\n return fn(...node.args.map((a) => evalNode(a, scope)))\n }\n case 'method':\n return callMethod(\n evalNode(node.obj, scope),\n node.name,\n node.args.map((a) => evalNode(a, scope))\n )\n case 'unary': {\n const v = evalNode(node.arg, scope)\n if (node.op === '!') return !v\n if (node.op === '-') return -(v as number)\n return +(v as number)\n }\n case 'cond':\n return evalNode(node.test, scope) ? evalNode(node.then, scope) : evalNode(node.else, scope)\n case 'array':\n return node.items.map((n) => evalNode(n, scope))\n case 'binary': {\n // short-circuiting operators first — the right side may never run\n if (node.op === '&&') {\n const l = evalNode(node.l, scope)\n return l ? evalNode(node.r, scope) : l\n }\n if (node.op === '||') {\n const l = evalNode(node.l, scope)\n return l ? l : evalNode(node.r, scope)\n }\n if (node.op === '??') {\n const l = evalNode(node.l, scope)\n return l ?? evalNode(node.r, scope)\n }\n const l = evalNode(node.l, scope)\n const r = evalNode(node.r, scope)\n switch (node.op) {\n case '===': return l === r\n case '!==': return l !== r\n case '==': return l == r\n case '!=': return l != r\n case '>': return (l as number) > (r as number)\n case '<': return (l as number) < (r as number)\n case '>=': return (l as number) >= (r as number)\n case '<=': return (l as number) <= (r as number)\n case '+':\n return typeof l === 'string' || typeof r === 'string'\n ? String(l) + String(r)\n : (l as number) + (r as number)\n case '-': return (l as number) - (r as number)\n case '*': return (l as number) * (r as number)\n case '/': return (l as number) / (r as number)\n case '%': return (l as number) % (r as number)\n }\n throw new Error(`Unknown operator ${node.op}`)\n }\n }\n}\n\n/**\n * Evaluate one expression (the text between `{{` and `}}`) against a scope.\n * Throws on a syntax error, an unknown helper or an unsupported method — the\n * two public evaluators turn that into `{ success: false }`.\n */\nexport function evaluateWithScope(\n expression: string,\n scope: NameResolver,\n opts: ExpressionSyntaxOptions = {}\n): unknown {\n const trimmed = expression.trim()\n if (!trimmed) return undefined\n return evalNode(parseCached(trimmed, opts), scope)\n}\n\n// ============================================================\n// EXPRESSION EVALUATOR IMPLEMENTATION\n// ============================================================\n\n/**\n * Evaluate an expression with full context support\n */\nexport function evaluateExpression(\n expression: string,\n context: BindingExpressionContext\n): ExpressionEvalResult {\n try {\n const helpers = context.helpers\n const scope: NameResolver = {\n lookup(name) {\n if (name === 'data') return context.data\n if (name === 'state') return context.state\n if (name === 'params') return context.params\n // A helper named bare (without a call) has always resolved to the\n // function itself here; kept.\n if (helpers && Object.prototype.hasOwnProperty.call(helpers, name)) return helpers[name]\n // Shorthand access. Priority: params > state > data (most specific first)\n if (name in context.params) return context.params[name]\n if (name in context.state) return context.state[name]\n if (name in context.data) return context.data[name]\n return undefined\n },\n helper: (name) => (helpers && Object.prototype.hasOwnProperty.call(helpers, name) ? helpers[name] : undefined),\n }\n return { success: true, value: evaluateWithScope(expression, scope, { undefinedAsNull: true }) }\n } catch (e) {\n return { success: false, error: `Expression error: ${e}` }\n }\n}\n\n// ============================================================\n// DEPENDENCY EXTRACTION\n// ============================================================\n\n/**\n * Extract dependencies from an expression for reactive updates\n */\nexport function extractDependencies(expression: string): ExpressionDependency[] {\n const dependencies: ExpressionDependency[] = []\n const seen = new Set<string>()\n\n // Match patterns like: data.foo.bar, state.count, params.id\n // Also match shorthand: foo.bar (when referring to data/state/params root)\n const patterns = [\n /\\bdata\\.(\\w+(?:\\.\\w+|\\[\\d+\\])*)/g,\n /\\bstate\\.(\\w+(?:\\.\\w+|\\[\\d+\\])*)/g,\n /\\bparams\\.(\\w+(?:\\.\\w+|\\[\\d+\\])*)/g,\n ]\n\n const sources: readonly ('data' | 'state' | 'params')[] = ['data', 'state', 'params']\n\n for (let i = 0; i < patterns.length; i++) {\n const pattern = patterns[i]\n const source = sources[i]\n if (!pattern || !source) continue\n\n let match: RegExpExecArray | null\n\n while ((match = pattern.exec(expression)) !== null) {\n const path = match[1]\n if (path === undefined) continue\n const key = `${source}.${path}`\n if (!seen.has(key)) {\n seen.add(key)\n dependencies.push({ source, path })\n }\n }\n }\n\n return dependencies\n}\n\n// ============================================================\n// INTERPOLATION\n// ============================================================\n\n/**\n * Check if a value contains expression syntax\n */\nexport function isExpression(value: unknown): boolean {\n if (typeof value !== 'string') return false\n return /\\{\\{.+?\\}\\}/.test(value)\n}\n\n/**\n * Interpolate expressions within a template string\n *\n * @example\n * interpolate('Hello, {{user.name}}!', context) // 'Hello, John!'\n * interpolate('Total: {{price * quantity}}', context) // 'Total: 100'\n */\nexport function interpolate(template: string, context: BindingExpressionContext): string {\n const pattern = /\\{\\{(.+?)\\}\\}/g\n return template.replace(pattern, (_, expr: string) => {\n const result = evaluateExpression(expr.trim(), context)\n if (result.success) {\n return String(result.value ?? '')\n }\n return ''\n })\n}\n\n// ============================================================\n// DEFAULT HELPERS\n// ============================================================\n\n/**\n * Default helper functions for expressions\n */\nexport const DEFAULT_BINDING_HELPERS: Record<string, (...args: unknown[]) => unknown> = {\n // String helpers\n upper: (s: unknown) => String(s).toUpperCase(),\n lower: (s: unknown) => String(s).toLowerCase(),\n trim: (s: unknown) => String(s).trim(),\n capitalize: (s: unknown) => {\n const str = String(s)\n return str.charAt(0).toUpperCase() + str.slice(1)\n },\n concat: (...args: unknown[]) => args.map(String).join(''),\n\n // Number helpers\n round: (n: unknown, decimals?: unknown) => {\n const num = Number(n)\n const d = Number(decimals ?? 0)\n return Math.round(num * Math.pow(10, d)) / Math.pow(10, d)\n },\n floor: (n: unknown) => Math.floor(Number(n)),\n ceil: (n: unknown) => Math.ceil(Number(n)),\n abs: (n: unknown) => Math.abs(Number(n)),\n min: (...args: unknown[]) => Math.min(...args.map(Number)),\n max: (...args: unknown[]) => Math.max(...args.map(Number)),\n /**\n * How many pages `total` rows fill at `size` per page — `ceil(total / size)`,\n * but SAFE: a missing, non-numeric, zero or negative total or size gives 0,\n * never `NaN` or `Infinity` (the envelope is absent until the first fetch\n * lands). Pair with `__meta.<source>.total` on a `returns` source:\n * `{{pages(__meta.products.total, 20)}}`. Wrap in `max(1, …)` for a pager\n * that should read \"1 / 1\" on an empty list.\n */\n pages: (total: unknown, size: unknown) => {\n const t = Number(total)\n const s = Number(size)\n if (!Number.isFinite(t) || !Number.isFinite(s) || t <= 0 || s <= 0) return 0\n return Math.ceil(t / s)\n },\n\n // Aggregate helpers — one data source, several KPI figures. Without these a\n // KPI strip needed one source (one fetch) per number. Filtering stays the\n // data layer's job (EntityQuery.filter); these only fold what is already\n // fetched.\n sumBy: (items: unknown, field?: unknown) => {\n if (!Array.isArray(items)) return 0\n const f = field === undefined ? undefined : String(field)\n return items.reduce<number>((acc, it) => {\n const v = f === undefined ? it : (it as Record<string, unknown> | null)?.[f]\n const n = Number(v)\n return Number.isFinite(n) ? acc + n : acc\n }, 0)\n },\n groupCount: (items: unknown, field: unknown) => {\n const out: Record<string, number> = {}\n if (!Array.isArray(items)) return out\n const f = String(field)\n for (const it of items) {\n const v = (it as Record<string, unknown> | null)?.[f]\n const key = v === null || v === undefined || v === '' ? 'unknown' : String(v)\n out[key] = (out[key] ?? 0) + 1\n }\n return out\n },\n\n // Array helpers\n length: (arr: unknown) => (Array.isArray(arr) ? arr.length : String(arr).length),\n first: (arr: unknown) => (Array.isArray(arr) ? arr[0] : undefined),\n last: (arr: unknown) => (Array.isArray(arr) ? arr[arr.length - 1] : undefined),\n join: (arr: unknown, sep?: unknown) =>\n Array.isArray(arr) ? arr.join(String(sep ?? ',')) : String(arr),\n includes: (arr: unknown, item: unknown) =>\n Array.isArray(arr) ? arr.includes(item) : String(arr).includes(String(item)),\n slice: (arr: unknown, start?: unknown, end?: unknown) => {\n if (Array.isArray(arr)) {\n return arr.slice(\n start !== undefined ? Number(start) : undefined,\n end !== undefined ? Number(end) : undefined\n )\n }\n return String(arr).slice(\n start !== undefined ? Number(start) : undefined,\n end !== undefined ? Number(end) : undefined\n )\n },\n\n // Type checks\n isEmpty: (v: unknown) =>\n v === null ||\n v === undefined ||\n v === '' ||\n (Array.isArray(v) && v.length === 0) ||\n (typeof v === 'object' && Object.keys(v).length === 0),\n isNotEmpty: (v: unknown) =>\n v !== null && v !== undefined && v !== '' && !(Array.isArray(v) && v.length === 0),\n isArray: (v: unknown) => Array.isArray(v),\n isString: (v: unknown) => typeof v === 'string',\n isNumber: (v: unknown) => typeof v === 'number' && !isNaN(v),\n isBoolean: (v: unknown) => typeof v === 'boolean',\n isNull: (v: unknown) => v === null || v === undefined,\n\n // Object helpers\n keys: (obj: unknown) => (typeof obj === 'object' && obj !== null ? Object.keys(obj) : []),\n values: (obj: unknown) => (typeof obj === 'object' && obj !== null ? Object.values(obj) : []),\n\n // Formatting helpers\n json: (v: unknown) => JSON.stringify(v),\n /**\n * Today's date in the visitor's time zone, as `YYYY-MM-DD`.\n * The shape date fields are stored in, so it compares as a string:\n * `{{event.date >= today()}}` for \"upcoming\", `today(-7)` for a week ago.\n * The optional argument shifts by whole days. Before this an \"upcoming\"\n * filter had nothing to compare against and a page hard-coded a date.\n */\n today: (offsetDays?: unknown) => {\n const d = new Date()\n const shift = Number(offsetDays ?? 0)\n if (Number.isFinite(shift) && shift !== 0) d.setDate(d.getDate() + Math.trunc(shift))\n const mm = String(d.getMonth() + 1).padStart(2, '0')\n const dd = String(d.getDate()).padStart(2, '0')\n return `${d.getFullYear()}-${mm}-${dd}`\n },\n date: (v: unknown) => new Date(v as string | number).toLocaleDateString(),\n time: (v: unknown) => new Date(v as string | number).toLocaleTimeString(),\n datetime: (v: unknown) => new Date(v as string | number).toLocaleString(),\n currency: (v: unknown, currency?: unknown, locale?: unknown) => {\n const num = Number(v)\n return new Intl.NumberFormat(String(locale ?? 'en-US'), {\n style: 'currency',\n currency: String(currency ?? 'USD'),\n }).format(num)\n },\n percent: (v: unknown, decimals?: unknown) => {\n const num = Number(v)\n const d = Number(decimals ?? 0)\n return `${(num * 100).toFixed(d)}%`\n },\n}\n\n// ============================================================\n// EXPRESSION EVALUATOR FACTORY\n// ============================================================\n\n/**\n * Create an expression evaluator with context and helpers\n */\nexport function createExpressionEvaluator(\n additionalHelpers?: Record<string, (...args: unknown[]) => unknown>\n): ExpressionEvaluator {\n const helpers = { ...DEFAULT_BINDING_HELPERS, ...additionalHelpers }\n\n return {\n evaluate(expression: string, context: BindingExpressionContext): unknown {\n const result = evaluateExpression(expression, {\n ...context,\n helpers: { ...helpers, ...context.helpers },\n })\n if (result.success) {\n return result.value\n }\n throw new Error(result.error)\n },\n\n isExpression,\n\n extractDependencies,\n\n interpolate(template: string, context: BindingExpressionContext): string {\n return interpolate(template, {\n ...context,\n helpers: { ...helpers, ...context.helpers },\n })\n },\n }\n}\n"]}
|
package/dist/binding/index.d.ts
CHANGED
|
@@ -17,4 +17,3 @@ export type { DataSourceType, DataSource, DataSourceListener, BaseDataSourceConf
|
|
|
17
17
|
export { StaticDataSource, ApiDataSource, StateDataSource, InMemoryDataSourceRegistry, createDataSourceRegistry, createDataSource, createStaticDataSource, createApiDataSource, createStateDataSource, } from './datasource.js';
|
|
18
18
|
export type { TwoWayBindingConfig, ValidationResult as TwoWayValidationResult, TwoWayBinding, ChangeListener, } from './two-way.js';
|
|
19
19
|
export { TwoWayBindingManager, createTwoWayBindingManager } from './two-way.js';
|
|
20
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/binding/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAyBH,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAavE,OAAO,EACL,kBAAkB,EAClB,WAAW,IAAI,kBAAkB,EACjC,mBAAmB,EACnB,YAAY,IAAI,mBAAmB,EACnC,WAAW,IAAI,kBAAkB,EACjC,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,iBAAiB,CAAA;AAcxB,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAA;AAqBxB,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,0BAA0B,EAC1B,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,iBAAiB,CAAA;AAaxB,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/binding/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAyBH,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAavE,OAAO,EACL,kBAAkB,EAClB,WAAW,IAAI,kBAAkB,EACjC,mBAAmB,EACnB,YAAY,IAAI,mBAAmB,EACnC,WAAW,IAAI,kBAAkB,EACjC,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,iBAAiB,CAAA;AAcxB,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAA;AAqBxB,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,0BAA0B,EAC1B,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,iBAAiB,CAAA;AAaxB,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA","sourcesContent":["/**\n * Binding Module\n *\n * Capability-to-surface binding system\n * Enhanced data binding with expressions, collections, and data sources\n *\n * @module @pwfabric/runtime/binding\n */\n\n// ============================================================\n// TYPES\n// ============================================================\n\nexport type {\n BindingState,\n BindingConfig,\n RuntimeBindingTransform,\n BindingCacheConfig,\n RetryConfig,\n BoundCapability,\n BindingError,\n BindingContext,\n AuthContext,\n BindingResult,\n SurfaceBindingResult,\n} from './types.js'\n\n// ============================================================\n// ENGINE\n// ============================================================\n\nexport type { BindingEngine } from './engine.js'\nexport { RuntimeBindingEngine, createBindingEngine } from './engine.js'\n\n// ============================================================\n// EXPRESSION EVALUATOR\n// ============================================================\n\nexport type {\n BindingExpressionContext,\n ExpressionEvalResult,\n ExpressionEvaluator,\n ExpressionDependency,\n} from './expression.js'\n\nexport {\n evaluateExpression,\n resolvePath as resolveBindingPath,\n extractDependencies,\n isExpression as isBindingExpression,\n interpolate as interpolateBinding,\n createExpressionEvaluator,\n DEFAULT_BINDING_HELPERS,\n} from './expression.js'\n\n// ============================================================\n// COLLECTION BINDING\n// ============================================================\n\nexport type {\n CollectionChangeType,\n CollectionChangeEvent,\n CollectionChangeListener,\n CollectionBinding,\n MutableCollectionBinding,\n} from './collection.js'\n\nexport {\n ReactiveCollection,\n createCollection,\n createReadOnlyCollection,\n createCollectionFromAsync,\n} from './collection.js'\n\n// ============================================================\n// DATA SOURCES\n// ============================================================\n\nexport type {\n DataSourceType,\n DataSource,\n DataSourceListener,\n BaseDataSourceConfig,\n DataSourceCacheConfig,\n StaticDataSourceConfig,\n ApiDataSourceConfig,\n GraphQLDataSourceConfig,\n StateDataSourceConfig,\n DataSourceConfig,\n DataSourceRetryConfig,\n DataSourceRegistry,\n} from './datasource.js'\n\nexport {\n StaticDataSource,\n ApiDataSource,\n StateDataSource,\n InMemoryDataSourceRegistry,\n createDataSourceRegistry,\n createDataSource,\n createStaticDataSource,\n createApiDataSource,\n createStateDataSource,\n} from './datasource.js'\n\n// ============================================================\n// TWO-WAY BINDING (P1-5)\n// ============================================================\n\nexport type {\n TwoWayBindingConfig,\n ValidationResult as TwoWayValidationResult,\n TwoWayBinding,\n ChangeListener,\n} from './two-way.js'\n\nexport { TwoWayBindingManager, createTwoWayBindingManager } from './two-way.js'\n"]}
|