@pwfabric/runtime 0.0.0-stage → 1.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +90 -0
- package/README.md +13 -2
- package/dist/__tests__/dom-test-setup.d.ts +21 -0
- package/dist/__tests__/dom-test-setup.d.ts.map +1 -0
- package/dist/__tests__/dom-test-setup.js +36 -0
- package/dist/__tests__/dom-test-setup.js.map +1 -0
- package/dist/a11y/announcer.d.ts +66 -0
- package/dist/a11y/announcer.d.ts.map +1 -0
- package/dist/a11y/announcer.js +140 -0
- package/dist/a11y/announcer.js.map +1 -0
- package/dist/a11y/contrast.d.ts +55 -0
- package/dist/a11y/contrast.d.ts.map +1 -0
- package/dist/a11y/contrast.js +93 -0
- package/dist/a11y/contrast.js.map +1 -0
- package/dist/a11y/focus.d.ts +124 -0
- package/dist/a11y/focus.d.ts.map +1 -0
- package/dist/a11y/focus.js +282 -0
- package/dist/a11y/focus.js.map +1 -0
- package/dist/a11y/index.d.ts +22 -0
- package/dist/a11y/index.d.ts.map +1 -0
- package/dist/a11y/index.js +18 -0
- package/dist/a11y/index.js.map +1 -0
- package/dist/a11y/keyboard.d.ts +145 -0
- package/dist/a11y/keyboard.d.ts.map +1 -0
- package/dist/a11y/keyboard.js +317 -0
- package/dist/a11y/keyboard.js.map +1 -0
- package/dist/adapters/default-image.d.ts +26 -0
- package/dist/adapters/default-image.d.ts.map +1 -0
- package/dist/adapters/default-image.js +37 -0
- package/dist/adapters/default-image.js.map +1 -0
- package/dist/adapters/index.d.ts +28 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +28 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/next-image.d.ts +39 -0
- package/dist/adapters/next-image.d.ts.map +1 -0
- package/dist/adapters/next-image.js +124 -0
- package/dist/adapters/next-image.js.map +1 -0
- package/dist/adapters/types.d.ts +62 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +11 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/analytics/index.d.ts +15 -0
- package/dist/analytics/index.d.ts.map +1 -0
- package/dist/analytics/index.js +15 -0
- package/dist/analytics/index.js.map +1 -0
- package/dist/analytics/tracker.d.ts +66 -0
- package/dist/analytics/tracker.d.ts.map +1 -0
- package/dist/analytics/tracker.js +251 -0
- package/dist/analytics/tracker.js.map +1 -0
- package/dist/analytics/types.d.ts +131 -0
- package/dist/analytics/types.d.ts.map +1 -0
- package/dist/analytics/types.js +11 -0
- package/dist/analytics/types.js.map +1 -0
- package/dist/auth/index.d.ts +16 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +14 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/provider.d.ts +133 -0
- package/dist/auth/provider.d.ts.map +1 -0
- package/dist/auth/provider.js +473 -0
- package/dist/auth/provider.js.map +1 -0
- package/dist/auth/types.d.ts +118 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +9 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/binding/collection.d.ts +191 -0
- package/dist/binding/collection.d.ts.map +1 -0
- package/dist/binding/collection.js +358 -0
- package/dist/binding/collection.js.map +1 -0
- package/dist/binding/datasource.d.ts +320 -0
- package/dist/binding/datasource.d.ts.map +1 -0
- package/dist/binding/datasource.js +556 -0
- package/dist/binding/datasource.js.map +1 -0
- package/dist/binding/engine.d.ts +66 -0
- package/dist/binding/engine.d.ts.map +1 -0
- package/dist/binding/engine.js +268 -0
- package/dist/binding/engine.js.map +1 -0
- package/dist/binding/expression.d.ts +151 -0
- package/dist/binding/expression.d.ts.map +1 -0
- package/dist/binding/expression.js +787 -0
- package/dist/binding/expression.js.map +1 -0
- package/dist/binding/index.d.ts +20 -0
- package/dist/binding/index.d.ts.map +1 -0
- package/dist/binding/index.js +14 -0
- package/dist/binding/index.js.map +1 -0
- package/dist/binding/two-way.d.ts +150 -0
- package/dist/binding/two-way.d.ts.map +1 -0
- package/dist/binding/two-way.js +462 -0
- package/dist/binding/two-way.js.map +1 -0
- package/dist/binding/types.d.ts +120 -0
- package/dist/binding/types.d.ts.map +1 -0
- package/dist/binding/types.js +9 -0
- package/dist/binding/types.js.map +1 -0
- package/dist/blocks/__test-fixtures__/block-fixtures.d.ts +40 -0
- package/dist/blocks/__test-fixtures__/block-fixtures.d.ts.map +1 -0
- package/dist/blocks/__test-fixtures__/block-fixtures.js +506 -0
- package/dist/blocks/__test-fixtures__/block-fixtures.js.map +1 -0
- package/dist/blocks/component-types.d.ts +82 -0
- package/dist/blocks/component-types.d.ts.map +1 -0
- package/dist/blocks/component-types.js +11 -0
- package/dist/blocks/component-types.js.map +1 -0
- package/dist/blocks/composition-rules.d.ts +169 -0
- package/dist/blocks/composition-rules.d.ts.map +1 -0
- package/dist/blocks/composition-rules.js +391 -0
- package/dist/blocks/composition-rules.js.map +1 -0
- package/dist/blocks/hooks.d.ts +32 -0
- package/dist/blocks/hooks.d.ts.map +1 -0
- package/dist/blocks/hooks.js +42 -0
- package/dist/blocks/hooks.js.map +1 -0
- package/dist/blocks/index.d.ts +16 -0
- package/dist/blocks/index.d.ts.map +1 -0
- package/dist/blocks/index.js +24 -0
- package/dist/blocks/index.js.map +1 -0
- package/dist/blocks/registry.d.ts +85 -0
- package/dist/blocks/registry.d.ts.map +1 -0
- package/dist/blocks/registry.js +136 -0
- package/dist/blocks/registry.js.map +1 -0
- package/dist/blocks/rule-engine.d.ts +132 -0
- package/dist/blocks/rule-engine.d.ts.map +1 -0
- package/dist/blocks/rule-engine.js +321 -0
- package/dist/blocks/rule-engine.js.map +1 -0
- package/dist/blocks/surface-event-context.d.ts +14 -0
- package/dist/blocks/surface-event-context.d.ts.map +1 -0
- package/dist/blocks/surface-event-context.js +14 -0
- package/dist/blocks/surface-event-context.js.map +1 -0
- package/dist/blocks/surface-id-context.d.ts +14 -0
- package/dist/blocks/surface-id-context.d.ts.map +1 -0
- package/dist/blocks/surface-id-context.js +15 -0
- package/dist/blocks/surface-id-context.js.map +1 -0
- package/dist/bus.d.ts +42 -0
- package/dist/bus.d.ts.map +1 -0
- package/dist/bus.js +158 -0
- package/dist/bus.js.map +1 -0
- package/dist/cache/index.d.ts +10 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +10 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/cache/memory.d.ts +33 -0
- package/dist/cache/memory.d.ts.map +1 -0
- package/dist/cache/memory.js +138 -0
- package/dist/cache/memory.js.map +1 -0
- package/dist/cache/types.d.ts +63 -0
- package/dist/cache/types.d.ts.map +1 -0
- package/dist/cache/types.js +9 -0
- package/dist/cache/types.js.map +1 -0
- package/dist/capability/index.d.ts +73 -0
- package/dist/capability/index.d.ts.map +1 -0
- package/dist/capability/index.js +87 -0
- package/dist/capability/index.js.map +1 -0
- package/dist/capability/kernel-capabilities.d.ts +32 -0
- package/dist/capability/kernel-capabilities.d.ts.map +1 -0
- package/dist/capability/kernel-capabilities.js +36 -0
- package/dist/capability/kernel-capabilities.js.map +1 -0
- package/dist/capability/platform-capabilities.d.ts +72 -0
- package/dist/capability/platform-capabilities.d.ts.map +1 -0
- package/dist/capability/platform-capabilities.js +267 -0
- package/dist/capability/platform-capabilities.js.map +1 -0
- package/dist/capability/type-mapping.d.ts +71 -0
- package/dist/capability/type-mapping.d.ts.map +1 -0
- package/dist/capability/type-mapping.js +107 -0
- package/dist/capability/type-mapping.js.map +1 -0
- package/dist/capability/validation.d.ts +47 -0
- package/dist/capability/validation.d.ts.map +1 -0
- package/dist/capability/validation.js +54 -0
- package/dist/capability/validation.js.map +1 -0
- package/dist/connectors/declared-connector.d.ts +49 -0
- package/dist/connectors/declared-connector.d.ts.map +1 -0
- package/dist/connectors/declared-connector.js +333 -0
- package/dist/connectors/declared-connector.js.map +1 -0
- package/dist/connectors/engine-registry.d.ts +51 -0
- package/dist/connectors/engine-registry.d.ts.map +1 -0
- package/dist/connectors/engine-registry.js +135 -0
- package/dist/connectors/engine-registry.js.map +1 -0
- package/dist/connectors/index.d.ts +15 -0
- package/dist/connectors/index.d.ts.map +1 -0
- package/dist/connectors/index.js +14 -0
- package/dist/connectors/index.js.map +1 -0
- package/dist/connectors/module-loader.d.ts +71 -0
- package/dist/connectors/module-loader.d.ts.map +1 -0
- package/dist/connectors/module-loader.js +143 -0
- package/dist/connectors/module-loader.js.map +1 -0
- package/dist/connectors/types.d.ts +175 -0
- package/dist/connectors/types.d.ts.map +1 -0
- package/dist/connectors/types.js +23 -0
- package/dist/connectors/types.js.map +1 -0
- package/dist/context.d.ts +28 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +38 -0
- package/dist/context.js.map +1 -0
- package/dist/data/DataCapabilityProvider.d.ts +40 -0
- package/dist/data/DataCapabilityProvider.d.ts.map +1 -0
- package/dist/data/DataCapabilityProvider.js +58 -0
- package/dist/data/DataCapabilityProvider.js.map +1 -0
- package/dist/data/index.d.ts +18 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/index.js +18 -0
- package/dist/data/index.js.map +1 -0
- package/dist/data/manager.d.ts +41 -0
- package/dist/data/manager.d.ts.map +1 -0
- package/dist/data/manager.js +442 -0
- package/dist/data/manager.js.map +1 -0
- package/dist/data/types.d.ts +219 -0
- package/dist/data/types.d.ts.map +1 -0
- package/dist/data/types.js +2 -0
- package/dist/data/types.js.map +1 -0
- package/dist/entity/aggregate.d.ts +9 -0
- package/dist/entity/aggregate.d.ts.map +1 -0
- package/dist/entity/aggregate.js +24 -0
- package/dist/entity/aggregate.js.map +1 -0
- package/dist/entity/apply-query.d.ts +59 -0
- package/dist/entity/apply-query.d.ts.map +1 -0
- package/dist/entity/apply-query.js +264 -0
- package/dist/entity/apply-query.js.map +1 -0
- package/dist/entity/behavior.d.ts +95 -0
- package/dist/entity/behavior.d.ts.map +1 -0
- package/dist/entity/behavior.js +78 -0
- package/dist/entity/behavior.js.map +1 -0
- package/dist/entity/connector.d.ts +142 -0
- package/dist/entity/connector.d.ts.map +1 -0
- package/dist/entity/connector.js +89 -0
- package/dist/entity/connector.js.map +1 -0
- package/dist/entity/connectors/index.d.ts +13 -0
- package/dist/entity/connectors/index.d.ts.map +1 -0
- package/dist/entity/connectors/index.js +11 -0
- package/dist/entity/connectors/index.js.map +1 -0
- package/dist/entity/connectors/static.d.ts +52 -0
- package/dist/entity/connectors/static.d.ts.map +1 -0
- package/dist/entity/connectors/static.js +245 -0
- package/dist/entity/connectors/static.js.map +1 -0
- package/dist/entity/entity-datasource.d.ts +51 -0
- package/dist/entity/entity-datasource.d.ts.map +1 -0
- package/dist/entity/entity-datasource.js +33 -0
- package/dist/entity/entity-datasource.js.map +1 -0
- package/dist/entity/facade.d.ts +71 -0
- package/dist/entity/facade.d.ts.map +1 -0
- package/dist/entity/facade.js +70 -0
- package/dist/entity/facade.js.map +1 -0
- package/dist/entity/http-connector.d.ts +124 -0
- package/dist/entity/http-connector.d.ts.map +1 -0
- package/dist/entity/http-connector.js +295 -0
- package/dist/entity/http-connector.js.map +1 -0
- package/dist/entity/index.d.ts +39 -0
- package/dist/entity/index.d.ts.map +1 -0
- package/dist/entity/index.js +31 -0
- package/dist/entity/index.js.map +1 -0
- package/dist/entity/postgres-connector.d.ts +65 -0
- package/dist/entity/postgres-connector.d.ts.map +1 -0
- package/dist/entity/postgres-connector.js +239 -0
- package/dist/entity/postgres-connector.js.map +1 -0
- package/dist/entity/registry.d.ts +60 -0
- package/dist/entity/registry.d.ts.map +1 -0
- package/dist/entity/registry.js +90 -0
- package/dist/entity/registry.js.map +1 -0
- package/dist/entity/store.d.ts +67 -0
- package/dist/entity/store.d.ts.map +1 -0
- package/dist/entity/store.js +349 -0
- package/dist/entity/store.js.map +1 -0
- package/dist/entity/types.d.ts +181 -0
- package/dist/entity/types.d.ts.map +1 -0
- package/dist/entity/types.js +10 -0
- package/dist/entity/types.js.map +1 -0
- package/dist/execution-context.d.ts +89 -0
- package/dist/execution-context.d.ts.map +1 -0
- package/dist/execution-context.js +146 -0
- package/dist/execution-context.js.map +1 -0
- package/dist/executor.d.ts +28 -0
- package/dist/executor.d.ts.map +1 -0
- package/dist/executor.js +33 -0
- package/dist/executor.js.map +1 -0
- package/dist/forms/form-entity-bridge.d.ts +95 -0
- package/dist/forms/form-entity-bridge.d.ts.map +1 -0
- package/dist/forms/form-entity-bridge.js +96 -0
- package/dist/forms/form-entity-bridge.js.map +1 -0
- package/dist/forms/form-write-target.d.ts +35 -0
- package/dist/forms/form-write-target.d.ts.map +1 -0
- package/dist/forms/form-write-target.js +81 -0
- package/dist/forms/form-write-target.js.map +1 -0
- package/dist/forms/index.d.ts +23 -0
- package/dist/forms/index.d.ts.map +1 -0
- package/dist/forms/index.js +25 -0
- package/dist/forms/index.js.map +1 -0
- package/dist/forms/named-control-values.d.ts +28 -0
- package/dist/forms/named-control-values.d.ts.map +1 -0
- package/dist/forms/named-control-values.js +42 -0
- package/dist/forms/named-control-values.js.map +1 -0
- package/dist/forms/processor.d.ts +56 -0
- package/dist/forms/processor.d.ts.map +1 -0
- package/dist/forms/processor.js +154 -0
- package/dist/forms/processor.js.map +1 -0
- package/dist/forms/types.d.ts +175 -0
- package/dist/forms/types.d.ts.map +1 -0
- package/dist/forms/types.js +33 -0
- package/dist/forms/types.js.map +1 -0
- package/dist/forms/validator.d.ts +62 -0
- package/dist/forms/validator.d.ts.map +1 -0
- package/dist/forms/validator.js +218 -0
- package/dist/forms/validator.js.map +1 -0
- package/dist/graph/index.d.ts +11 -0
- package/dist/graph/index.d.ts.map +1 -0
- package/dist/graph/index.js +9 -0
- package/dist/graph/index.js.map +1 -0
- package/dist/graph/resolver.d.ts +67 -0
- package/dist/graph/resolver.d.ts.map +1 -0
- package/dist/graph/resolver.js +243 -0
- package/dist/graph/resolver.js.map +1 -0
- package/dist/graph/types.d.ts +126 -0
- package/dist/graph/types.d.ts.map +1 -0
- package/dist/graph/types.js +9 -0
- package/dist/graph/types.js.map +1 -0
- package/dist/hooks/useInstalledAtoms.d.ts +97 -0
- package/dist/hooks/useInstalledAtoms.d.ts.map +1 -0
- package/dist/hooks/useInstalledAtoms.js +92 -0
- package/dist/hooks/useInstalledAtoms.js.map +1 -0
- package/dist/i18n/index.d.ts +16 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +14 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/translator.d.ts +77 -0
- package/dist/i18n/translator.d.ts.map +1 -0
- package/dist/i18n/translator.js +357 -0
- package/dist/i18n/translator.js.map +1 -0
- package/dist/i18n/types.d.ts +94 -0
- package/dist/i18n/types.d.ts.map +1 -0
- package/dist/i18n/types.js +9 -0
- package/dist/i18n/types.js.map +1 -0
- package/dist/index.d.ts +65 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +95 -0
- package/dist/index.js.map +1 -0
- package/dist/kernel.d.ts +48 -0
- package/dist/kernel.d.ts.map +1 -0
- package/dist/kernel.js +258 -0
- package/dist/kernel.js.map +1 -0
- package/dist/perf/budget.d.ts +93 -0
- package/dist/perf/budget.d.ts.map +1 -0
- package/dist/perf/budget.js +122 -0
- package/dist/perf/budget.js.map +1 -0
- package/dist/perf/index.d.ts +17 -0
- package/dist/perf/index.d.ts.map +1 -0
- package/dist/perf/index.js +13 -0
- package/dist/perf/index.js.map +1 -0
- package/dist/perf/render-timer.d.ts +91 -0
- package/dist/perf/render-timer.d.ts.map +1 -0
- package/dist/perf/render-timer.js +136 -0
- package/dist/perf/render-timer.js.map +1 -0
- package/dist/perf/reporter.d.ts +127 -0
- package/dist/perf/reporter.d.ts.map +1 -0
- package/dist/perf/reporter.js +241 -0
- package/dist/perf/reporter.js.map +1 -0
- package/dist/perf/web-vitals.d.ts +112 -0
- package/dist/perf/web-vitals.d.ts.map +1 -0
- package/dist/perf/web-vitals.js +268 -0
- package/dist/perf/web-vitals.js.map +1 -0
- package/dist/registry.d.ts +64 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +126 -0
- package/dist/registry.js.map +1 -0
- package/dist/render/BehaviorSurfaceProvider.d.ts +66 -0
- package/dist/render/BehaviorSurfaceProvider.d.ts.map +1 -0
- package/dist/render/BehaviorSurfaceProvider.js +185 -0
- package/dist/render/BehaviorSurfaceProvider.js.map +1 -0
- package/dist/render/BlockErrorBoundary.d.ts +27 -0
- package/dist/render/BlockErrorBoundary.d.ts.map +1 -0
- package/dist/render/BlockErrorBoundary.js +41 -0
- package/dist/render/BlockErrorBoundary.js.map +1 -0
- package/dist/render/DataBoundSurfaceRenderer.d.ts +79 -0
- package/dist/render/DataBoundSurfaceRenderer.d.ts.map +1 -0
- package/dist/render/DataBoundSurfaceRenderer.js +998 -0
- package/dist/render/DataBoundSurfaceRenderer.js.map +1 -0
- package/dist/render/DynamicBlockWrapper.d.ts +24 -0
- package/dist/render/DynamicBlockWrapper.d.ts.map +1 -0
- package/dist/render/DynamicBlockWrapper.js +117 -0
- package/dist/render/DynamicBlockWrapper.js.map +1 -0
- package/dist/render/appearance-resolver.d.ts +51 -0
- package/dist/render/appearance-resolver.d.ts.map +1 -0
- package/dist/render/appearance-resolver.js +78 -0
- package/dist/render/appearance-resolver.js.map +1 -0
- package/dist/render/capability-gate.d.ts +70 -0
- package/dist/render/capability-gate.d.ts.map +1 -0
- package/dist/render/capability-gate.js +94 -0
- package/dist/render/capability-gate.js.map +1 -0
- package/dist/render/conditional-states-css.d.ts +42 -0
- package/dist/render/conditional-states-css.d.ts.map +1 -0
- package/dist/render/conditional-states-css.js +82 -0
- package/dist/render/conditional-states-css.js.map +1 -0
- package/dist/render/connections-context.d.ts +32 -0
- package/dist/render/connections-context.d.ts.map +1 -0
- package/dist/render/connections-context.js +34 -0
- package/dist/render/connections-context.js.map +1 -0
- package/dist/render/dark-theme-css.d.ts +37 -0
- package/dist/render/dark-theme-css.d.ts.map +1 -0
- package/dist/render/dark-theme-css.js +67 -0
- package/dist/render/dark-theme-css.js.map +1 -0
- package/dist/render/data-binding-types.d.ts +192 -0
- package/dist/render/data-binding-types.d.ts.map +1 -0
- package/dist/render/data-binding-types.js +11 -0
- package/dist/render/data-binding-types.js.map +1 -0
- package/dist/render/data-cache.d.ts +31 -0
- package/dist/render/data-cache.d.ts.map +1 -0
- package/dist/render/data-cache.js +37 -0
- package/dist/render/data-cache.js.map +1 -0
- package/dist/render/derive-dark-theme.d.ts +18 -0
- package/dist/render/derive-dark-theme.d.ts.map +1 -0
- package/dist/render/derive-dark-theme.js +18 -0
- package/dist/render/derive-dark-theme.js.map +1 -0
- package/dist/render/dynamic-artifact-context.d.ts +78 -0
- package/dist/render/dynamic-artifact-context.d.ts.map +1 -0
- package/dist/render/dynamic-artifact-context.js +89 -0
- package/dist/render/dynamic-artifact-context.js.map +1 -0
- package/dist/render/dynamic-block-loader.d.ts +81 -0
- package/dist/render/dynamic-block-loader.d.ts.map +1 -0
- package/dist/render/dynamic-block-loader.js +197 -0
- package/dist/render/dynamic-block-loader.js.map +1 -0
- package/dist/render/endpoint.d.ts +19 -0
- package/dist/render/endpoint.d.ts.map +1 -0
- package/dist/render/endpoint.js +109 -0
- package/dist/render/endpoint.js.map +1 -0
- package/dist/render/entity-facade-context.d.ts +35 -0
- package/dist/render/entity-facade-context.d.ts.map +1 -0
- package/dist/render/entity-facade-context.js +37 -0
- package/dist/render/entity-facade-context.js.map +1 -0
- package/dist/render/group-states-css.d.ts +42 -0
- package/dist/render/group-states-css.d.ts.map +1 -0
- package/dist/render/group-states-css.js +73 -0
- package/dist/render/group-states-css.js.map +1 -0
- package/dist/render/hooks/useSurfaceEvents.d.ts +9 -0
- package/dist/render/hooks/useSurfaceEvents.d.ts.map +1 -0
- package/dist/render/hooks/useSurfaceEvents.js +9 -0
- package/dist/render/hooks/useSurfaceEvents.js.map +1 -0
- package/dist/render/hooks/useSurfaceId.d.ts +9 -0
- package/dist/render/hooks/useSurfaceId.d.ts.map +1 -0
- package/dist/render/hooks/useSurfaceId.js +9 -0
- package/dist/render/hooks/useSurfaceId.js.map +1 -0
- package/dist/render/index.d.ts +49 -0
- package/dist/render/index.d.ts.map +1 -0
- package/dist/render/index.js +61 -0
- package/dist/render/index.js.map +1 -0
- package/dist/render/interaction-rule-engine.d.ts +13 -0
- package/dist/render/interaction-rule-engine.d.ts.map +1 -0
- package/dist/render/interaction-rule-engine.js +47 -0
- package/dist/render/interaction-rule-engine.js.map +1 -0
- package/dist/render/keyframes-css.d.ts +32 -0
- package/dist/render/keyframes-css.d.ts.map +1 -0
- package/dist/render/keyframes-css.js +44 -0
- package/dist/render/keyframes-css.js.map +1 -0
- package/dist/render/query-state.d.ts +4 -0
- package/dist/render/query-state.d.ts.map +1 -0
- package/dist/render/query-state.js +70 -0
- package/dist/render/query-state.js.map +1 -0
- package/dist/render/renderer.d.ts +45 -0
- package/dist/render/renderer.d.ts.map +1 -0
- package/dist/render/renderer.js +937 -0
- package/dist/render/renderer.js.map +1 -0
- package/dist/render/resolve-expressions.d.ts +38 -0
- package/dist/render/resolve-expressions.d.ts.map +1 -0
- package/dist/render/resolve-expressions.js +309 -0
- package/dist/render/resolve-expressions.js.map +1 -0
- package/dist/render/responsive-style-css.d.ts +43 -0
- package/dist/render/responsive-style-css.d.ts.map +1 -0
- package/dist/render/responsive-style-css.js +123 -0
- package/dist/render/responsive-style-css.js.map +1 -0
- package/dist/render/responsive.d.ts +50 -0
- package/dist/render/responsive.d.ts.map +1 -0
- package/dist/render/responsive.js +99 -0
- package/dist/render/responsive.js.map +1 -0
- package/dist/render/scoped-css.d.ts +72 -0
- package/dist/render/scoped-css.d.ts.map +1 -0
- package/dist/render/scoped-css.js +102 -0
- package/dist/render/scoped-css.js.map +1 -0
- package/dist/render/shell-selection.d.ts +70 -0
- package/dist/render/shell-selection.d.ts.map +1 -0
- package/dist/render/shell-selection.js +117 -0
- package/dist/render/shell-selection.js.map +1 -0
- package/dist/render/states-css.d.ts +33 -0
- package/dist/render/states-css.d.ts.map +1 -0
- package/dist/render/states-css.js +63 -0
- package/dist/render/states-css.js.map +1 -0
- package/dist/render/surface-data-context.d.ts +19 -0
- package/dist/render/surface-data-context.d.ts.map +1 -0
- package/dist/render/surface-data-context.js +21 -0
- package/dist/render/surface-data-context.js.map +1 -0
- package/dist/render/surface-event-bus.d.ts +20 -0
- package/dist/render/surface-event-bus.d.ts.map +1 -0
- package/dist/render/surface-event-bus.js +68 -0
- package/dist/render/surface-event-bus.js.map +1 -0
- package/dist/render/surface-event-context.d.ts +12 -0
- package/dist/render/surface-event-context.d.ts.map +1 -0
- package/dist/render/surface-event-context.js +12 -0
- package/dist/render/surface-event-context.js.map +1 -0
- package/dist/render/surface-id-context.d.ts +9 -0
- package/dist/render/surface-id-context.d.ts.map +1 -0
- package/dist/render/surface-id-context.js +9 -0
- package/dist/render/surface-id-context.js.map +1 -0
- package/dist/render/theme-utils.d.ts +15 -0
- package/dist/render/theme-utils.d.ts.map +1 -0
- package/dist/render/theme-utils.js +15 -0
- package/dist/render/theme-utils.js.map +1 -0
- package/dist/render/types.d.ts +283 -0
- package/dist/render/types.d.ts.map +1 -0
- package/dist/render/types.js +9 -0
- package/dist/render/types.js.map +1 -0
- package/dist/render/visibility-css.d.ts +43 -0
- package/dist/render/visibility-css.d.ts.map +1 -0
- package/dist/render/visibility-css.js +119 -0
- package/dist/render/visibility-css.js.map +1 -0
- package/dist/render/width-scope.d.ts +35 -0
- package/dist/render/width-scope.d.ts.map +1 -0
- package/dist/render/width-scope.js +44 -0
- package/dist/render/width-scope.js.map +1 -0
- package/dist/render/write-only-sources.d.ts +34 -0
- package/dist/render/write-only-sources.d.ts.map +1 -0
- package/dist/render/write-only-sources.js +99 -0
- package/dist/render/write-only-sources.js.map +1 -0
- package/dist/routing/index.d.ts +15 -0
- package/dist/routing/index.d.ts.map +1 -0
- package/dist/routing/index.js +15 -0
- package/dist/routing/index.js.map +1 -0
- package/dist/routing/router.d.ts +43 -0
- package/dist/routing/router.d.ts.map +1 -0
- package/dist/routing/router.js +218 -0
- package/dist/routing/router.js.map +1 -0
- package/dist/routing/types.d.ts +125 -0
- package/dist/routing/types.d.ts.map +1 -0
- package/dist/routing/types.js +9 -0
- package/dist/routing/types.js.map +1 -0
- package/dist/seo/generator.d.ts +40 -0
- package/dist/seo/generator.d.ts.map +1 -0
- package/dist/seo/generator.js +236 -0
- package/dist/seo/generator.js.map +1 -0
- package/dist/seo/index.d.ts +15 -0
- package/dist/seo/index.d.ts.map +1 -0
- package/dist/seo/index.js +15 -0
- package/dist/seo/index.js.map +1 -0
- package/dist/seo/types.d.ts +182 -0
- package/dist/seo/types.d.ts.map +1 -0
- package/dist/seo/types.js +9 -0
- package/dist/seo/types.js.map +1 -0
- package/dist/state/index.d.ts +16 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js +16 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/manager.d.ts +34 -0
- package/dist/state/manager.d.ts.map +1 -0
- package/dist/state/manager.js +81 -0
- package/dist/state/manager.js.map +1 -0
- package/dist/state/store.d.ts +41 -0
- package/dist/state/store.d.ts.map +1 -0
- package/dist/state/store.js +145 -0
- package/dist/state/store.js.map +1 -0
- package/dist/state/types.d.ts +108 -0
- package/dist/state/types.d.ts.map +1 -0
- package/dist/state/types.js +9 -0
- package/dist/state/types.js.map +1 -0
- package/dist/surface/expression.d.ts +66 -0
- package/dist/surface/expression.d.ts.map +1 -0
- package/dist/surface/expression.js +179 -0
- package/dist/surface/expression.js.map +1 -0
- package/dist/surface/index.d.ts +33 -0
- package/dist/surface/index.d.ts.map +1 -0
- package/dist/surface/index.js +25 -0
- package/dist/surface/index.js.map +1 -0
- package/dist/surface/interpreter.d.ts +97 -0
- package/dist/surface/interpreter.d.ts.map +1 -0
- package/dist/surface/interpreter.js +231 -0
- package/dist/surface/interpreter.js.map +1 -0
- package/dist/surface/layout.d.ts +55 -0
- package/dist/surface/layout.d.ts.map +1 -0
- package/dist/surface/layout.js +288 -0
- package/dist/surface/layout.js.map +1 -0
- package/dist/surface/output.d.ts +91 -0
- package/dist/surface/output.d.ts.map +1 -0
- package/dist/surface/output.js +104 -0
- package/dist/surface/output.js.map +1 -0
- package/dist/surface/primitives.d.ts +181 -0
- package/dist/surface/primitives.d.ts.map +1 -0
- package/dist/surface/primitives.js +339 -0
- package/dist/surface/primitives.js.map +1 -0
- package/dist/surface/renderer.d.ts +97 -0
- package/dist/surface/renderer.d.ts.map +1 -0
- package/dist/surface/renderer.js +190 -0
- package/dist/surface/renderer.js.map +1 -0
- package/dist/surface/schemas.d.ts +182 -0
- package/dist/surface/schemas.d.ts.map +1 -0
- package/dist/surface/schemas.js +142 -0
- package/dist/surface/schemas.js.map +1 -0
- package/dist/surface/transforms.d.ts +145 -0
- package/dist/surface/transforms.d.ts.map +1 -0
- package/dist/surface/transforms.js +120 -0
- package/dist/surface/transforms.js.map +1 -0
- package/dist/surface/types.d.ts +161 -0
- package/dist/surface/types.d.ts.map +1 -0
- package/dist/surface/types.js +51 -0
- package/dist/surface/types.js.map +1 -0
- package/dist/surface/validation.d.ts +124 -0
- package/dist/surface/validation.d.ts.map +1 -0
- package/dist/surface/validation.js +147 -0
- package/dist/surface/validation.js.map +1 -0
- package/dist/validator.d.ts +56 -0
- package/dist/validator.d.ts.map +1 -0
- package/dist/validator.js +100 -0
- package/dist/validator.js.map +1 -0
- package/package.json +105 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/render/renderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Expression Resolution for Block Props
|
|
3
|
+
*
|
|
4
|
+
* Resolves {{expression}} placeholders in block prop values.
|
|
5
|
+
* Uses the existing expression engine (evaluate/interpolate) from surface/expression.
|
|
6
|
+
*
|
|
7
|
+
* Key behavior:
|
|
8
|
+
* - Whole-value: "{{items}}" returns raw value (array, object, etc.)
|
|
9
|
+
* - String interpolation: "Total: {{count}}" returns interpolated string
|
|
10
|
+
* - Recursively walks block tree and nested objects/arrays in props
|
|
11
|
+
*
|
|
12
|
+
* @module @pwfabric/runtime/render/resolve-expressions
|
|
13
|
+
*/
|
|
14
|
+
import type { Block } from '@pwfabric/core';
|
|
15
|
+
import type { ExpressionContext } from '../surface/expression.js';
|
|
16
|
+
/**
|
|
17
|
+
* Resolve a single string value.
|
|
18
|
+
*
|
|
19
|
+
* - If the string is exactly "{{expr}}", evaluate and return the raw value (preserving type).
|
|
20
|
+
* - If the string contains embedded "{{expr}}", interpolate and return a string.
|
|
21
|
+
* - Otherwise return as-is.
|
|
22
|
+
*/
|
|
23
|
+
export declare function resolveString(value: string, context: ExpressionContext): unknown;
|
|
24
|
+
/**
|
|
25
|
+
* Resolve all {{expression}} placeholders in a block tree.
|
|
26
|
+
*
|
|
27
|
+
* Creates a deep copy of the blocks with all string prop values
|
|
28
|
+
* containing expressions resolved against the provided data context.
|
|
29
|
+
*
|
|
30
|
+
* @param blocks - Block array to resolve
|
|
31
|
+
* @param data - Data context (keyed by source ID, plus 'state')
|
|
32
|
+
* @param helpers - Optional additional helper functions
|
|
33
|
+
* @returns New block array with resolved prop values
|
|
34
|
+
*/
|
|
35
|
+
export declare function resolveBlockExpressions(blocks: readonly Block[], data: Record<string, unknown>, helpers?: Record<string, (...args: unknown[]) => unknown>): Block[];
|
|
36
|
+
/** True when this resolved block expanded a `repeat` — its children are clones. */
|
|
37
|
+
export declare function isRepeatExpanded(block: Block | undefined): boolean;
|
|
38
|
+
//# sourceMappingURL=resolve-expressions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-expressions.d.ts","sourceRoot":"","sources":["../../src/render/resolve-expressions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAG3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAuBjE;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAyBhF;AAoCD;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GACxD,KAAK,EAAE,CAKT;AAsMD,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,OAAO,CAElE"}
|
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Expression Resolution for Block Props
|
|
3
|
+
*
|
|
4
|
+
* Resolves {{expression}} placeholders in block prop values.
|
|
5
|
+
* Uses the existing expression engine (evaluate/interpolate) from surface/expression.
|
|
6
|
+
*
|
|
7
|
+
* Key behavior:
|
|
8
|
+
* - Whole-value: "{{items}}" returns raw value (array, object, etc.)
|
|
9
|
+
* - String interpolation: "Total: {{count}}" returns interpolated string
|
|
10
|
+
* - Recursively walks block tree and nested objects/arrays in props
|
|
11
|
+
*
|
|
12
|
+
* @module @pwfabric/runtime/render/resolve-expressions
|
|
13
|
+
*/
|
|
14
|
+
import { BREAKPOINT_ORDER } from '@pwfabric/core';
|
|
15
|
+
import { evaluate, interpolate, createExpressionContext } from '../surface/expression.js';
|
|
16
|
+
// ============================================================
|
|
17
|
+
// WHOLE-VALUE PATTERN
|
|
18
|
+
// ============================================================
|
|
19
|
+
/**
|
|
20
|
+
* Matches a string that is exactly one expression placeholder with no surrounding text.
|
|
21
|
+
* e.g. "{{products}}" or "{{ state.x === 'a' ? 'primary' : 'outline' }}"
|
|
22
|
+
* The inner capture uses a negative lookahead to prevent matching across }} boundaries,
|
|
23
|
+
* so "{{a}} · {{b}}" is NOT treated as a whole-value expression.
|
|
24
|
+
*/
|
|
25
|
+
const WHOLE_VALUE_PATTERN = /^\{\{((?:(?!\}\}).)+)\}\}$/s;
|
|
26
|
+
/**
|
|
27
|
+
* Matches strings that contain at least one expression placeholder.
|
|
28
|
+
*/
|
|
29
|
+
const HAS_EXPRESSION_PATTERN = /\{\{.+?\}\}/;
|
|
30
|
+
// ============================================================
|
|
31
|
+
// STRING RESOLUTION
|
|
32
|
+
// ============================================================
|
|
33
|
+
/**
|
|
34
|
+
* Resolve a single string value.
|
|
35
|
+
*
|
|
36
|
+
* - If the string is exactly "{{expr}}", evaluate and return the raw value (preserving type).
|
|
37
|
+
* - If the string contains embedded "{{expr}}", interpolate and return a string.
|
|
38
|
+
* - Otherwise return as-is.
|
|
39
|
+
*/
|
|
40
|
+
export function resolveString(value, context) {
|
|
41
|
+
// Check for whole-value expression first
|
|
42
|
+
const wholeMatch = WHOLE_VALUE_PATTERN.exec(value);
|
|
43
|
+
if (wholeMatch) {
|
|
44
|
+
const expr = (wholeMatch[1] ?? '').trim();
|
|
45
|
+
const result = evaluate(expr, context);
|
|
46
|
+
if (result.success) {
|
|
47
|
+
return result.value;
|
|
48
|
+
}
|
|
49
|
+
// On failure, return original string as fallback
|
|
50
|
+
return value;
|
|
51
|
+
}
|
|
52
|
+
// Check for embedded expressions
|
|
53
|
+
if (HAS_EXPRESSION_PATTERN.test(value)) {
|
|
54
|
+
const result = interpolate(value, context);
|
|
55
|
+
if (result.success) {
|
|
56
|
+
return result.value;
|
|
57
|
+
}
|
|
58
|
+
// On failure, return original string as fallback
|
|
59
|
+
return value;
|
|
60
|
+
}
|
|
61
|
+
// No expressions, return as-is
|
|
62
|
+
return value;
|
|
63
|
+
}
|
|
64
|
+
// ============================================================
|
|
65
|
+
// PROP VALUE RESOLUTION
|
|
66
|
+
// ============================================================
|
|
67
|
+
/**
|
|
68
|
+
* Recursively resolve expressions in a prop value.
|
|
69
|
+
* - Strings are checked for expressions
|
|
70
|
+
* - Arrays and plain objects are traversed
|
|
71
|
+
* - Other types pass through unchanged
|
|
72
|
+
*/
|
|
73
|
+
function resolveValue(value, context) {
|
|
74
|
+
if (typeof value === 'string') {
|
|
75
|
+
return resolveString(value, context);
|
|
76
|
+
}
|
|
77
|
+
if (Array.isArray(value)) {
|
|
78
|
+
return value.map((item) => resolveValue(item, context));
|
|
79
|
+
}
|
|
80
|
+
if (value !== null && typeof value === 'object') {
|
|
81
|
+
const resolved = {};
|
|
82
|
+
for (const [key, val] of Object.entries(value)) {
|
|
83
|
+
resolved[key] = resolveValue(val, context);
|
|
84
|
+
}
|
|
85
|
+
return resolved;
|
|
86
|
+
}
|
|
87
|
+
return value;
|
|
88
|
+
}
|
|
89
|
+
// ============================================================
|
|
90
|
+
// BLOCK EXPRESSION RESOLUTION
|
|
91
|
+
// ============================================================
|
|
92
|
+
/**
|
|
93
|
+
* Resolve all {{expression}} placeholders in a block tree.
|
|
94
|
+
*
|
|
95
|
+
* Creates a deep copy of the blocks with all string prop values
|
|
96
|
+
* containing expressions resolved against the provided data context.
|
|
97
|
+
*
|
|
98
|
+
* @param blocks - Block array to resolve
|
|
99
|
+
* @param data - Data context (keyed by source ID, plus 'state')
|
|
100
|
+
* @param helpers - Optional additional helper functions
|
|
101
|
+
* @returns New block array with resolved prop values
|
|
102
|
+
*/
|
|
103
|
+
export function resolveBlockExpressions(blocks, data, helpers) {
|
|
104
|
+
const context = createExpressionContext(data, helpers);
|
|
105
|
+
return blocks
|
|
106
|
+
.map((block) => resolveBlock(block, context, false))
|
|
107
|
+
.filter((b) => b !== null);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* A block may carry a conditional-visibility expression — `visibleWhen` (or the
|
|
111
|
+
* shorthand `if`) — a template string evaluated against surface state/data. When
|
|
112
|
+
* it resolves falsy the block (and its subtree) is omitted from the render
|
|
113
|
+
* entirely. This drives state-driven UI in the blocks-array receipt path:
|
|
114
|
+
* form↔success toggles, wizard steps, "show X only when {{state.y}}". The
|
|
115
|
+
* companion is a `setState` action (e.g. a form's onSubmitAction) flipping state.
|
|
116
|
+
*
|
|
117
|
+
* Falsy = empty string, 'false', 'undefined', 'null', '0', NaN or a falsy primitive.
|
|
118
|
+
*/
|
|
119
|
+
function isFalsyCondition(value) {
|
|
120
|
+
if (value == null || value === false)
|
|
121
|
+
return true;
|
|
122
|
+
if (typeof value === 'string') {
|
|
123
|
+
const t = value.trim().toLowerCase();
|
|
124
|
+
return t === '' || t === 'false' || t === 'undefined' || t === 'null' || t === '0';
|
|
125
|
+
}
|
|
126
|
+
if (typeof value === 'number')
|
|
127
|
+
return value === 0 || Number.isNaN(value);
|
|
128
|
+
return false;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Evaluate a `visibleWhen` / `if` condition. Unlike a prop, a condition that
|
|
132
|
+
* cannot be evaluated has NO fallback value: a prop keeps its raw template so
|
|
133
|
+
* the author can see it, but a raw template in a condition is a non-empty
|
|
134
|
+
* string — truthy — and the block would show forever (a "no results" empty
|
|
135
|
+
* state beside the results). FAIL CLOSED: not evaluable means hidden.
|
|
136
|
+
*/
|
|
137
|
+
function evaluateCondition(condition, context) {
|
|
138
|
+
const whole = WHOLE_VALUE_PATTERN.exec(condition);
|
|
139
|
+
if (whole) {
|
|
140
|
+
const r = evaluate((whole[1] ?? '').trim(), context);
|
|
141
|
+
return r.success ? { ok: true, value: r.value } : { ok: false, error: r.error };
|
|
142
|
+
}
|
|
143
|
+
if (HAS_EXPRESSION_PATTERN.test(condition)) {
|
|
144
|
+
const r = interpolate(condition, context);
|
|
145
|
+
return r.success ? { ok: true, value: r.value } : { ok: false, error: r.error };
|
|
146
|
+
}
|
|
147
|
+
return { ok: true, value: condition };
|
|
148
|
+
}
|
|
149
|
+
/** One warning per block + condition, not one per render. */
|
|
150
|
+
const warnedConditions = new Set();
|
|
151
|
+
function warnUnevaluable(blockId, condition, error) {
|
|
152
|
+
const nodeEnv = typeof process !== 'undefined' ? process.env?.['NODE_ENV'] : undefined;
|
|
153
|
+
if (nodeEnv === 'production')
|
|
154
|
+
return;
|
|
155
|
+
const key = `${blockId}|${condition}`;
|
|
156
|
+
if (warnedConditions.has(key))
|
|
157
|
+
return;
|
|
158
|
+
if (warnedConditions.size > 500)
|
|
159
|
+
warnedConditions.clear();
|
|
160
|
+
warnedConditions.add(key);
|
|
161
|
+
console.warn(`[surface] block "${blockId}": visibleWhen ${JSON.stringify(condition)} could not be evaluated, so the block is HIDDEN. ${error}`);
|
|
162
|
+
}
|
|
163
|
+
/** The block that gathers its descendants' fields into one submission. */
|
|
164
|
+
function isFormBlock(block) {
|
|
165
|
+
const type = String(block.type ?? '');
|
|
166
|
+
return type === 'form' || type.endsWith('/form');
|
|
167
|
+
}
|
|
168
|
+
/** `layout.hidden` is responsive; every breakpoint, so no authored one wins. */
|
|
169
|
+
const HIDDEN_AT_EVERY_BREAKPOINT = Object.freeze(Object.fromEntries(BREAKPOINT_ORDER.map((bp) => [bp, true])));
|
|
170
|
+
/**
|
|
171
|
+
* Hidden but still mounted: the wrapper gets `display: none` through the
|
|
172
|
+
* block's own layout (`layout.hidden`, the same switch the responsive layout
|
|
173
|
+
* uses), so the renderer keeps the subtree — and its inputs — in the DOM.
|
|
174
|
+
*/
|
|
175
|
+
function hideInPlace(block) {
|
|
176
|
+
const layout = block.layout;
|
|
177
|
+
return { ...block, layout: { ...(layout ?? {}), hidden: HIDDEN_AT_EVERY_BREAKPOINT } };
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Resolve expressions in a single block and its children recursively.
|
|
181
|
+
* Returns null when the block's `visibleWhen`/`if` condition resolves falsy
|
|
182
|
+
* (or cannot be evaluated — see evaluateCondition).
|
|
183
|
+
*
|
|
184
|
+
* A reserved surface-state key `__show:<blockId>` (written by `showBlock`/
|
|
185
|
+
* `hideBlock` actions) acts as a visibility OVERRIDE that is checked BEFORE
|
|
186
|
+
* the `visibleWhen`/`if` template evaluation:
|
|
187
|
+
* - `true` → block is forced VISIBLE (visibleWhen/if skipped)
|
|
188
|
+
* - `false` → block is forced HIDDEN
|
|
189
|
+
* - absent → fall through to the visibleWhen/if logic
|
|
190
|
+
*
|
|
191
|
+
* The key is read directly from the context data (not via the template
|
|
192
|
+
* evaluator) because the colon in `__show:<id>` breaks the path grammar.
|
|
193
|
+
*
|
|
194
|
+
* INSIDE A FORM, HIDDEN MEANS HIDDEN — NOT UNMOUNTED. A wizard is
|
|
195
|
+
* one `form` whose steps are sections gated by `visibleWhen: {{state.step == N}}`.
|
|
196
|
+
* The form block gathers its values from the DOM (`new FormData(form)`), so an
|
|
197
|
+
* unmounted step contributed nothing: the RSVP wizard submitted an empty
|
|
198
|
+
* record, and going "back" remounted step 1 with empty inputs. A block under a
|
|
199
|
+
* form is therefore kept in the tree with `layout.hidden` (display:none) — its
|
|
200
|
+
* inputs keep their values and stay part of the submission. The form itself,
|
|
201
|
+
* and everything outside forms, still unmounts as before.
|
|
202
|
+
*/
|
|
203
|
+
function resolveBlock(block, context, insideForm) {
|
|
204
|
+
const stateMap = context.data['state'];
|
|
205
|
+
const override = stateMap?.[`__show:${block.id}`];
|
|
206
|
+
let hidden = override === false;
|
|
207
|
+
if (override !== true && override !== false) {
|
|
208
|
+
const condition = block.visibleWhen
|
|
209
|
+
?? block.if;
|
|
210
|
+
if (typeof condition === 'string' && condition.trim()) {
|
|
211
|
+
const r = evaluateCondition(condition, context);
|
|
212
|
+
if (!r.ok) {
|
|
213
|
+
warnUnevaluable(block.id, condition, r.error);
|
|
214
|
+
hidden = true;
|
|
215
|
+
}
|
|
216
|
+
else if (isFalsyCondition(r.value)) {
|
|
217
|
+
hidden = true;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
if (hidden && !insideForm)
|
|
222
|
+
return null;
|
|
223
|
+
const resolved = resolveVisibleBlock(block, context, insideForm || isFormBlock(block));
|
|
224
|
+
return hidden ? hideInPlace(resolved) : resolved;
|
|
225
|
+
}
|
|
226
|
+
function resolveVisibleBlock(block, context, insideForm) {
|
|
227
|
+
const resolvedProps = block.props
|
|
228
|
+
? resolveValue(block.props, context)
|
|
229
|
+
: block.props;
|
|
230
|
+
// Item-template expansion (repeat + {{item.*}} scope): a block carrying a
|
|
231
|
+
// block-level `repeat` expression treats its authored children as a PER-ITEM
|
|
232
|
+
// TEMPLATE. The binding resolves to an array; for each element the template
|
|
233
|
+
// subtree is cloned and re-resolved with `item` and `index` added to the
|
|
234
|
+
// expression context — so `{{item.Title}}` / `{{index}}` resolve per row.
|
|
235
|
+
// Cloned block ids get a `--<index>` suffix (unique React keys /
|
|
236
|
+
// data-block-id). Without `repeat` nothing changes (children resolve
|
|
237
|
+
// normally, byte-identical to the previous behavior); a non-array binding
|
|
238
|
+
// (source still loading) expands to zero children rather than leaking the
|
|
239
|
+
// raw template. First consumer: the repeater block family — but the
|
|
240
|
+
// contract is deliberately block-agnostic (a plain container can repeat).
|
|
241
|
+
const repeatExpr = block.repeat;
|
|
242
|
+
if (typeof repeatExpr === 'string' && repeatExpr.trim() && block.children?.length) {
|
|
243
|
+
const resolved = resolveValue(repeatExpr, context);
|
|
244
|
+
const items = Array.isArray(resolved) ? resolved : [];
|
|
245
|
+
const template = block.children;
|
|
246
|
+
const expanded = [];
|
|
247
|
+
for (let index = 0; index < items.length; index++) {
|
|
248
|
+
const itemContext = {
|
|
249
|
+
...context,
|
|
250
|
+
data: { ...context.data, item: items[index], index },
|
|
251
|
+
};
|
|
252
|
+
for (const child of template) {
|
|
253
|
+
const clone = resolveBlock(suffixIds(child, index), itemContext, insideForm);
|
|
254
|
+
if (clone)
|
|
255
|
+
expanded.push(clone);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
const { repeat: _repeat, ...rest } = block;
|
|
259
|
+
return markRepeatExpanded({ ...rest, props: resolvedProps, children: expanded });
|
|
260
|
+
}
|
|
261
|
+
if (block.children) {
|
|
262
|
+
return {
|
|
263
|
+
...block,
|
|
264
|
+
props: resolvedProps,
|
|
265
|
+
children: block.children
|
|
266
|
+
.map((child) => resolveBlock(child, context, insideForm))
|
|
267
|
+
.filter((b) => b !== null),
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
return {
|
|
271
|
+
...block,
|
|
272
|
+
props: resolvedProps,
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* THE BLOCK THAT EXPANDED A REPEAT OWNS ITS CLONES' LAYOUT.
|
|
277
|
+
*
|
|
278
|
+
* `repeat` is stripped from the resolved block, so the renderer could no
|
|
279
|
+
* longer tell a repeater from any other parent: every clone got the surface
|
|
280
|
+
* default `gridColumn: span 12`, and inside the repeater's own grid
|
|
281
|
+
* (`repeat(auto-fit, minmax(…))`) a 12-column span put each item on a row of
|
|
282
|
+
* its own — every repeater wall rendered as one column. The mark survives
|
|
283
|
+
* object spread (an own enumerable symbol key) and never reaches JSON, so the
|
|
284
|
+
* surface document is unchanged; the renderer reads it through
|
|
285
|
+
* `isRepeatExpanded` and leaves the clones to the parent's own grid.
|
|
286
|
+
*/
|
|
287
|
+
const REPEAT_EXPANDED = Symbol.for('pwfabric.repeatExpanded');
|
|
288
|
+
function markRepeatExpanded(block) {
|
|
289
|
+
return { ...block, [REPEAT_EXPANDED]: true };
|
|
290
|
+
}
|
|
291
|
+
/** True when this resolved block expanded a `repeat` — its children are clones. */
|
|
292
|
+
export function isRepeatExpanded(block) {
|
|
293
|
+
return block?.[REPEAT_EXPANDED] === true;
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Deep-clone a template subtree, suffixing every block id with `--<index>` so
|
|
297
|
+
* expanded clones stay unique across rows (React keys, data-block-id lookups,
|
|
298
|
+
* label htmlFor targets).
|
|
299
|
+
*/
|
|
300
|
+
function suffixIds(block, index) {
|
|
301
|
+
return {
|
|
302
|
+
...block,
|
|
303
|
+
id: `${block.id}--${index}`,
|
|
304
|
+
...(block.children
|
|
305
|
+
? { children: block.children.map((c) => suffixIds(c, index)) }
|
|
306
|
+
: {}),
|
|
307
|
+
};
|
|
308
|
+
}
|
|
309
|
+
//# sourceMappingURL=resolve-expressions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-expressions.js","sourceRoot":"","sources":["../../src/render/resolve-expressions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-prop responsive style CSS generation (block.style values vary by breakpoint).
|
|
3
|
+
*
|
|
4
|
+
* `block.style` sits inline and can express a single value per property; it
|
|
5
|
+
* cannot express media queries. A style prop whose value is a
|
|
6
|
+
* `ResponsiveValue<string>` map (`{ xs?, sm?, md?, lg?, xl?, '2xl'? }`) instead
|
|
7
|
+
* of a flat string declares a value that varies per breakpoint. The renderer
|
|
8
|
+
* flattens the base (`xs` / smallest defined) value inline so SSR / no-JS get a
|
|
9
|
+
* sane default; this collector emits the LARGER-breakpoint values as scoped,
|
|
10
|
+
* mobile-first `min-width` media-query rules — keyed by the block's
|
|
11
|
+
* `data-block-id` — that override upward. Same mechanism `layout.hideOn`/
|
|
12
|
+
* `showOn` (visibility-css) and `block.states` (states-css) use.
|
|
13
|
+
*
|
|
14
|
+
* For a block with `style.padding = { xs:'8px', md:'24px', lg:'48px' }`:
|
|
15
|
+
*
|
|
16
|
+
* `@media (min-width:768px){[data-pw-surface] [data-block-id="<id>"]{padding:24px}}`
|
|
17
|
+
* `@media (min-width:1024px){[data-pw-surface] [data-block-id="<id>"]{padding:48px}}`
|
|
18
|
+
*
|
|
19
|
+
* The `xs` (base) value is NOT emitted here — it is rendered inline by the
|
|
20
|
+
* renderer. Flat string values emit zero bytes (the inline path owns them).
|
|
21
|
+
* Blocks without any responsive style value emit zero bytes so existing
|
|
22
|
+
* surfaces are byte-identical.
|
|
23
|
+
*
|
|
24
|
+
* @module @pwfabric/runtime/render/responsive-style-css
|
|
25
|
+
*/
|
|
26
|
+
import type { Block } from '@pwfabric/core';
|
|
27
|
+
/**
|
|
28
|
+
* Emit the scoped per-breakpoint media-query CSS for a single block's
|
|
29
|
+
* responsive style props. Targets `[data-block-id="<id>"]` scoped under the
|
|
30
|
+
* surface root so it cannot leak to the host page. Only breakpoints LARGER than
|
|
31
|
+
* `xs` are emitted (the `xs`/base value is inline); each emitted breakpoint key
|
|
32
|
+
* becomes a `@media (min-width:<px>)` rule. Returns '' when the block declares
|
|
33
|
+
* no responsive style value.
|
|
34
|
+
*/
|
|
35
|
+
export declare function blockResponsiveStyleCss(blockId: string, style: NonNullable<Block['style']>, surfaceId?: string): string;
|
|
36
|
+
/**
|
|
37
|
+
* Walk a surface block tree and concatenate the per-block responsive style CSS
|
|
38
|
+
* for every block declaring a `ResponsiveValue` style prop. Blocks with only
|
|
39
|
+
* flat string style values (or no style) are skipped (zero bytes emitted) so
|
|
40
|
+
* existing surfaces are byte-identical.
|
|
41
|
+
*/
|
|
42
|
+
export declare function collectResponsiveStyleCss(blocks: readonly Block[], surfaceId?: string): string;
|
|
43
|
+
//# sourceMappingURL=responsive-style-css.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responsive-style-css.d.ts","sourceRoot":"","sources":["../../src/render/responsive-style-css.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAkB3C;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAClC,SAAS,CAAC,EAAE,MAAM,GACjB,MAAM,CAkER;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAI9F"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-prop responsive style CSS generation (block.style values vary by breakpoint).
|
|
3
|
+
*
|
|
4
|
+
* `block.style` sits inline and can express a single value per property; it
|
|
5
|
+
* cannot express media queries. A style prop whose value is a
|
|
6
|
+
* `ResponsiveValue<string>` map (`{ xs?, sm?, md?, lg?, xl?, '2xl'? }`) instead
|
|
7
|
+
* of a flat string declares a value that varies per breakpoint. The renderer
|
|
8
|
+
* flattens the base (`xs` / smallest defined) value inline so SSR / no-JS get a
|
|
9
|
+
* sane default; this collector emits the LARGER-breakpoint values as scoped,
|
|
10
|
+
* mobile-first `min-width` media-query rules — keyed by the block's
|
|
11
|
+
* `data-block-id` — that override upward. Same mechanism `layout.hideOn`/
|
|
12
|
+
* `showOn` (visibility-css) and `block.states` (states-css) use.
|
|
13
|
+
*
|
|
14
|
+
* For a block with `style.padding = { xs:'8px', md:'24px', lg:'48px' }`:
|
|
15
|
+
*
|
|
16
|
+
* `@media (min-width:768px){[data-pw-surface] [data-block-id="<id>"]{padding:24px}}`
|
|
17
|
+
* `@media (min-width:1024px){[data-pw-surface] [data-block-id="<id>"]{padding:48px}}`
|
|
18
|
+
*
|
|
19
|
+
* The `xs` (base) value is NOT emitted here — it is rendered inline by the
|
|
20
|
+
* renderer. Flat string values emit zero bytes (the inline path owns them).
|
|
21
|
+
* Blocks without any responsive style value emit zero bytes so existing
|
|
22
|
+
* surfaces are byte-identical.
|
|
23
|
+
*
|
|
24
|
+
* @module @pwfabric/runtime/render/responsive-style-css
|
|
25
|
+
*/
|
|
26
|
+
import { BREAKPOINTS, BREAKPOINT_ORDER } from '@pwfabric/core';
|
|
27
|
+
import { blockSelector, camelToKebab, collectScopedCss, LAYOUT_HOIST_KEYS, WRAPPER_ATTR } from './scoped-css.js';
|
|
28
|
+
/** Breakpoint name → `minWidth` px (same thresholds the span/visibility systems use). */
|
|
29
|
+
function minWidthFor(bp) {
|
|
30
|
+
return BREAKPOINTS.find((b) => b.name === bp)?.minWidth ?? 0;
|
|
31
|
+
}
|
|
32
|
+
/** A style prop value is responsive when it is a non-null object (not a flat string). */
|
|
33
|
+
function isResponsiveValue(value) {
|
|
34
|
+
return typeof value === 'object' && value !== null;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Emit the scoped per-breakpoint media-query CSS for a single block's
|
|
38
|
+
* responsive style props. Targets `[data-block-id="<id>"]` scoped under the
|
|
39
|
+
* surface root so it cannot leak to the host page. Only breakpoints LARGER than
|
|
40
|
+
* `xs` are emitted (the `xs`/base value is inline); each emitted breakpoint key
|
|
41
|
+
* becomes a `@media (min-width:<px>)` rule. Returns '' when the block declares
|
|
42
|
+
* no responsive style value.
|
|
43
|
+
*/
|
|
44
|
+
export function blockResponsiveStyleCss(blockId, style, surfaceId) {
|
|
45
|
+
const selector = blockSelector(blockId, surfaceId);
|
|
46
|
+
// Group declarations by breakpoint so one prop's md value and another prop's
|
|
47
|
+
// md value share a single `@media` rule (mirrors how a mobile-first stylesheet
|
|
48
|
+
// would be authored). The base (smallest defined breakpoint per prop) is a
|
|
49
|
+
// NON-media rule so ALL breakpoints live in the stylesheet — never inline.
|
|
50
|
+
// (Inline always beats stylesheet rules incl. @media, so a flattened-inline
|
|
51
|
+
// base would pin the value and the larger @media overrides would never apply.)
|
|
52
|
+
// THE HOISTING RULE APPLIES ON THE SELECTOR SIDE TOO.
|
|
53
|
+
//
|
|
54
|
+
// `[data-block-id]` matches BOTH the wrapper AND the component root. For flat
|
|
55
|
+
// values the renderer hoists margin/maxWidth/flex to the wrapper and removes
|
|
56
|
+
// them from the root; for responsive values the value leaves the inline style
|
|
57
|
+
// and lands here, so without the same split here the rule would apply TWICE
|
|
58
|
+
// (`marginTop:'-40%'` → both -335px and -256px).
|
|
59
|
+
//
|
|
60
|
+
// Hence two sets: hoisted keys go ONLY to the wrapper, the rest ONLY to the
|
|
61
|
+
// component root.
|
|
62
|
+
const HOIST = new Set(LAYOUT_HOIST_KEYS);
|
|
63
|
+
const baseDecls = [];
|
|
64
|
+
const byBreakpoint = new Map();
|
|
65
|
+
const baseHoist = [];
|
|
66
|
+
const byBreakpointHoist = new Map();
|
|
67
|
+
for (const [prop, value] of Object.entries(style)) {
|
|
68
|
+
if (!isResponsiveValue(value))
|
|
69
|
+
continue; // flat string → inline path owns it
|
|
70
|
+
let baseTaken = false;
|
|
71
|
+
// BREAKPOINT_ORDER is mobile-first ascending → first defined key is the base.
|
|
72
|
+
for (const bp of BREAKPOINT_ORDER) {
|
|
73
|
+
const v = value[bp];
|
|
74
|
+
if (v === undefined)
|
|
75
|
+
continue;
|
|
76
|
+
// `!important`: a block COMPONENT often applies the same CSS property
|
|
77
|
+
// inline with its own default (e.g. the text block sets
|
|
78
|
+
// `font-size: var(--pw-font-size-base)`). Inline beats any stylesheet rule,
|
|
79
|
+
// so without `!important` the author's responsive value would be pinned to
|
|
80
|
+
// the component default. Scoped to `[data-block-id]`, this only overrides
|
|
81
|
+
// the one block's own responsive props. Base + larger are both `!important`
|
|
82
|
+
// at equal specificity → source order (larger emitted later) wins on match.
|
|
83
|
+
const hoisted = HOIST.has(prop);
|
|
84
|
+
const bag = hoisted ? baseHoist : baseDecls;
|
|
85
|
+
const map = hoisted ? byBreakpointHoist : byBreakpoint;
|
|
86
|
+
if (!baseTaken) {
|
|
87
|
+
bag.push(`${camelToKebab(prop)}:${v} !important`);
|
|
88
|
+
baseTaken = true;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
const decls = map.get(bp) ?? [];
|
|
92
|
+
decls.push(`${camelToKebab(prop)}:${v} !important`);
|
|
93
|
+
map.set(bp, decls);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
let css = '';
|
|
98
|
+
// Base (non-media) first, then ascending breakpoint order so larger
|
|
99
|
+
// breakpoints (later in source) win the cascade at equal specificity.
|
|
100
|
+
const emit = (sel, base, map) => {
|
|
101
|
+
if (base.length > 0)
|
|
102
|
+
css += `${sel}{${base.join(';')}}`;
|
|
103
|
+
for (const bp of BREAKPOINT_ORDER) {
|
|
104
|
+
const decls = map.get(bp);
|
|
105
|
+
if (!decls || decls.length === 0)
|
|
106
|
+
continue;
|
|
107
|
+
css += `@media (min-width:${minWidthFor(bp)}px){${sel}{${decls.join(';')}}}`;
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
emit(`${selector}:not(${WRAPPER_ATTR})`, baseDecls, byBreakpoint);
|
|
111
|
+
emit(`${selector}${WRAPPER_ATTR}`, baseHoist, byBreakpointHoist);
|
|
112
|
+
return css;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Walk a surface block tree and concatenate the per-block responsive style CSS
|
|
116
|
+
* for every block declaring a `ResponsiveValue` style prop. Blocks with only
|
|
117
|
+
* flat string style values (or no style) are skipped (zero bytes emitted) so
|
|
118
|
+
* existing surfaces are byte-identical.
|
|
119
|
+
*/
|
|
120
|
+
export function collectResponsiveStyleCss(blocks, surfaceId) {
|
|
121
|
+
return collectScopedCss(blocks, (block) => block.style ? blockResponsiveStyleCss(block.id, block.style, surfaceId) : '');
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=responsive-style-css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responsive-style-css.js","sourceRoot":"","sources":["../../src/render/responsive-style-css.ts"],"names":[],"mappings":"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"}
|