@microsoft/fast-element 2.10.4 → 3.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/ARCHITECTURE_HTML_TAGGED_TEMPLATE_LITERAL.md +1 -1
- package/ARCHITECTURE_OVERVIEW.md +2 -2
- package/CHANGELOG.json +1 -1
- package/CHANGELOG.md +2 -2
- package/DECLARATIVE_DESIGN.md +806 -0
- package/DECLARATIVE_HTML.md +470 -0
- package/DECLARATIVE_MIGRATION.md +215 -0
- package/DECLARATIVE_RENDERING.md +530 -0
- package/DECLARATIVE_RENDERING_LIFECYCLE.md +288 -0
- package/DECLARATIVE_SCHEMA_OBSERVER_MAP.md +489 -0
- package/DESIGN.md +138 -33
- package/MIGRATION.md +387 -0
- package/README.md +208 -1
- package/SIZES.md +25 -0
- package/api-extractor.arrays.json +15 -0
- package/api-extractor.context.json +1 -0
- package/api-extractor.declarative.json +15 -0
- package/api-extractor.di.json +1 -0
- package/api-extractor.hydration.json +15 -0
- package/api-extractor.styles.json +15 -0
- package/dist/arrays/arrays.api.json +2621 -0
- package/dist/declarative/declarative.api.json +7844 -0
- package/dist/di/di.api.json +1 -1
- package/dist/dts/array-observer.d.ts +2 -0
- package/dist/dts/arrays.d.ts +2 -0
- package/dist/dts/attr.d.ts +1 -0
- package/dist/dts/binding/signal.d.ts +6 -6
- package/dist/dts/binding/two-way.d.ts +1 -0
- package/dist/dts/binding.d.ts +7 -0
- package/dist/dts/components/attributes.d.ts +2 -5
- package/dist/dts/components/definition-schema-transforms.d.ts +9 -0
- package/dist/dts/components/element-controller.d.ts +80 -114
- package/dist/dts/components/element-hydration.d.ts +1 -1
- package/dist/dts/components/enable-hydration.d.ts +34 -0
- package/dist/dts/components/fast-definitions.d.ts +91 -42
- package/dist/dts/components/fast-element.d.ts +5 -8
- package/dist/dts/components/hydration-tracker.d.ts +40 -0
- package/dist/dts/components/hydration.d.ts +18 -53
- package/dist/dts/components/schema.d.ts +205 -0
- package/dist/dts/context.d.ts +6 -6
- package/dist/dts/css.d.ts +3 -0
- package/dist/dts/debug.d.ts +5 -1
- package/dist/dts/declarative/attribute-map.d.ts +58 -0
- package/dist/dts/declarative/debug.d.ts +5 -0
- package/dist/dts/declarative/index.d.ts +13 -0
- package/dist/dts/declarative/interfaces.d.ts +9 -0
- package/dist/dts/declarative/observer-map-utilities.d.ts +58 -0
- package/dist/dts/declarative/observer-map.d.ts +89 -0
- package/dist/dts/declarative/runtime.d.ts +5 -0
- package/dist/dts/declarative/syntax.d.ts +21 -0
- package/dist/dts/declarative/template-bridge.d.ts +33 -0
- package/dist/dts/declarative/template-parser.d.ts +98 -0
- package/dist/dts/declarative/template.d.ts +9 -0
- package/dist/dts/declarative/utilities.d.ts +312 -0
- package/dist/dts/di/di.d.ts +1 -1
- package/dist/dts/directives/children.d.ts +2 -0
- package/dist/dts/directives/node-observation.d.ts +2 -0
- package/dist/dts/directives/ref.d.ts +2 -0
- package/dist/dts/directives/repeat.d.ts +4 -0
- package/dist/dts/directives/slotted.d.ts +2 -0
- package/dist/dts/directives/when.d.ts +3 -0
- package/dist/dts/dom-policy.d.ts +1 -1
- package/dist/dts/html.d.ts +5 -0
- package/dist/dts/hydration/runtime.d.ts +7 -0
- package/dist/dts/hydration/target-builder.d.ts +15 -12
- package/dist/dts/hydration.d.ts +14 -0
- package/dist/dts/index.d.ts +38 -42
- package/dist/dts/index.debug.d.ts +0 -1
- package/dist/dts/index.rollup.debug.d.ts +0 -1
- package/dist/dts/interfaces.d.ts +1 -49
- package/dist/dts/observable.d.ts +3 -6
- package/dist/dts/observation/arrays.d.ts +1 -1
- package/dist/dts/observation/update-queue.d.ts +1 -1
- package/dist/dts/platform.d.ts +25 -4
- package/dist/dts/render.d.ts +7 -0
- package/dist/dts/schema.d.ts +1 -0
- package/dist/dts/state/exports.d.ts +1 -1
- package/dist/dts/state/state.d.ts +2 -2
- package/dist/dts/styles/css-directive.d.ts +5 -12
- package/dist/dts/styles/css.d.ts +5 -7
- package/dist/dts/styles/element-styles.d.ts +0 -10
- package/dist/dts/styles.d.ts +6 -0
- package/dist/dts/templating/children.d.ts +1 -1
- package/dist/dts/templating/html-binding-directive.d.ts +4 -0
- package/dist/dts/templating/html-directive.d.ts +17 -0
- package/dist/dts/templating/hydration-view.d.ts +109 -0
- package/dist/dts/templating/ref.d.ts +1 -1
- package/dist/dts/templating/render.d.ts +1 -1
- package/dist/dts/templating/repeat.d.ts +2 -2
- package/dist/dts/templating/slotted.d.ts +1 -1
- package/dist/dts/templating/template.d.ts +17 -9
- package/dist/dts/templating/view.d.ts +25 -102
- package/dist/dts/templating/when.d.ts +1 -1
- package/dist/dts/templating.d.ts +10 -0
- package/dist/dts/testing/exports.d.ts +2 -2
- package/dist/dts/updates.d.ts +1 -0
- package/dist/dts/volatile.d.ts +2 -0
- package/dist/esm/array-observer.js +1 -0
- package/dist/esm/arrays.js +1 -0
- package/dist/esm/attr.js +1 -0
- package/dist/esm/binding/normalize.js +1 -1
- package/dist/esm/binding/signal.js +4 -4
- package/dist/esm/binding/two-way.js +2 -1
- package/dist/esm/binding.js +4 -0
- package/dist/esm/components/attributes.js +8 -5
- package/dist/esm/components/definition-schema-transforms.js +23 -0
- package/dist/esm/components/element-controller.js +200 -269
- package/dist/esm/components/element-hydration.js +1 -1
- package/dist/esm/components/enable-hydration.js +100 -0
- package/dist/esm/components/fast-definitions.js +211 -49
- package/dist/esm/components/fast-element.js +18 -27
- package/dist/esm/components/hydration-tracker.js +93 -0
- package/dist/esm/components/hydration.js +62 -144
- package/dist/esm/components/schema.js +253 -0
- package/dist/esm/context.js +6 -6
- package/dist/esm/css.js +3 -0
- package/dist/esm/debug.js +26 -26
- package/dist/esm/declarative/attribute-map.js +121 -0
- package/dist/esm/declarative/debug.js +5 -0
- package/dist/esm/declarative/index.js +3 -0
- package/dist/esm/declarative/interfaces.js +10 -0
- package/dist/esm/declarative/observer-map-utilities.js +562 -0
- package/dist/esm/declarative/observer-map.js +216 -0
- package/dist/esm/declarative/runtime.js +14 -0
- package/dist/esm/declarative/syntax.js +36 -0
- package/dist/esm/declarative/template-bridge.js +170 -0
- package/dist/esm/declarative/template-parser.js +306 -0
- package/dist/esm/declarative/template.js +142 -0
- package/dist/esm/declarative/utilities.js +834 -0
- package/dist/esm/di/di.js +6 -8
- package/dist/esm/directives/children.js +1 -0
- package/dist/esm/directives/node-observation.js +1 -0
- package/dist/esm/directives/ref.js +1 -0
- package/dist/esm/directives/repeat.js +1 -0
- package/dist/esm/directives/slotted.js +1 -0
- package/dist/esm/directives/when.js +1 -0
- package/dist/esm/dom-policy.js +2 -2
- package/dist/esm/dom.js +1 -1
- package/dist/esm/html.js +2 -0
- package/dist/esm/hydration/runtime.js +33 -0
- package/dist/esm/hydration/target-builder.js +97 -90
- package/dist/esm/hydration.js +4 -0
- package/dist/esm/index.debug.js +2 -1
- package/dist/esm/index.js +34 -29
- package/dist/esm/index.rollup.debug.js +3 -2
- package/dist/esm/index.rollup.js +1 -1
- package/dist/esm/interfaces.js +1 -45
- package/dist/esm/observable.js +1 -4
- package/dist/esm/observation/arrays.js +1 -1
- package/dist/esm/observation/observable.js +5 -5
- package/dist/esm/observation/update-queue.js +47 -58
- package/dist/esm/platform.js +31 -30
- package/dist/esm/render.js +1 -0
- package/dist/esm/schema.js +1 -0
- package/dist/esm/state/exports.js +1 -1
- package/dist/esm/styles/css-directive.js +1 -2
- package/dist/esm/styles/css.js +15 -56
- package/dist/esm/styles/element-styles.js +69 -15
- package/dist/esm/styles.js +2 -0
- package/dist/esm/templating/html-binding-directive.js +10 -8
- package/dist/esm/templating/hydration-view.js +235 -0
- package/dist/esm/templating/render.js +1 -1
- package/dist/esm/templating/repeat.js +36 -34
- package/dist/esm/templating/template.js +7 -7
- package/dist/esm/templating/view.js +24 -233
- package/dist/esm/templating.js +7 -0
- package/dist/esm/testing/exports.js +2 -2
- package/dist/esm/updates.js +1 -0
- package/dist/esm/volatile.js +1 -0
- package/dist/fast-element.api.json +9016 -6995
- package/dist/fast-element.d.ts +3557 -796
- package/dist/fast-element.debug.js +5088 -4437
- package/dist/fast-element.debug.min.js +2 -2
- package/dist/fast-element.js +5369 -4649
- package/dist/fast-element.min.js +2 -2
- package/dist/fast-element.untrimmed.d.ts +863 -475
- package/dist/hydration/hydration.api.json +5237 -0
- package/dist/styles/styles.api.json +2672 -0
- package/docs/api-report.api.md +343 -166
- package/docs/arrays/api-report.api.md +114 -0
- package/docs/declarative/api-report.api.md +397 -0
- package/docs/hydration/api-report.api.md +285 -0
- package/docs/styles/api-report.api.md +135 -0
- package/package.json +149 -41
- package/playwright.declarative.config.ts +26 -0
- package/playwright.declarative.webui.config.ts +20 -0
- package/scripts/declarative/build-fixtures-with-webui.js +135 -0
- package/scripts/declarative/build-fixtures.js +49 -0
- package/scripts/declarative/build-fixtures.utilities.js +101 -0
- package/scripts/measure-sizes.js +219 -0
- package/scripts/run-api-extractor.js +39 -20
- package/test/declarative/fixtures/README.md +72 -0
- package/test/declarative/fixtures/WRITING_FIXTURES.md +330 -0
- package/test/declarative/fixtures/bindings/README.md +12 -0
- package/test/declarative/fixtures/bindings/attribute/entry.html +13 -0
- package/test/declarative/fixtures/bindings/attribute/fast-build.config.json +6 -0
- package/test/declarative/fixtures/bindings/attribute/index.html +25 -0
- package/test/declarative/fixtures/bindings/attribute/main.ts +41 -0
- package/test/declarative/fixtures/bindings/attribute/state.json +8 -0
- package/test/declarative/fixtures/bindings/attribute/templates.html +11 -0
- package/test/declarative/fixtures/bindings/content/entry.html +12 -0
- package/test/declarative/fixtures/bindings/content/fast-build.config.json +6 -0
- package/test/declarative/fixtures/bindings/content/index.html +19 -0
- package/test/declarative/fixtures/bindings/content/main.ts +27 -0
- package/test/declarative/fixtures/bindings/content/state.json +4 -0
- package/test/declarative/fixtures/bindings/content/templates.html +6 -0
- package/test/declarative/fixtures/bindings/dot-syntax/entry.html +11 -0
- package/test/declarative/fixtures/bindings/dot-syntax/fast-build.config.json +6 -0
- package/test/declarative/fixtures/bindings/dot-syntax/index.html +47 -0
- package/test/declarative/fixtures/bindings/dot-syntax/main.ts +59 -0
- package/test/declarative/fixtures/bindings/dot-syntax/state.json +16 -0
- package/test/declarative/fixtures/bindings/dot-syntax/templates.html +17 -0
- package/test/declarative/fixtures/bindings/event/entry.html +11 -0
- package/test/declarative/fixtures/bindings/event/fast-build.config.json +6 -0
- package/test/declarative/fixtures/bindings/event/index.html +43 -0
- package/test/declarative/fixtures/bindings/event/main.ts +43 -0
- package/test/declarative/fixtures/bindings/event/state.json +3 -0
- package/test/declarative/fixtures/bindings/event/templates.html +18 -0
- package/test/declarative/fixtures/bindings/host/entry.html +40 -0
- package/test/declarative/fixtures/bindings/host/fast-build.config.json +6 -0
- package/test/declarative/fixtures/bindings/host/index.html +96 -0
- package/test/declarative/fixtures/bindings/host/main.ts +222 -0
- package/test/declarative/fixtures/bindings/host/state.json +9 -0
- package/test/declarative/fixtures/bindings/host/templates.html +55 -0
- package/test/declarative/fixtures/directives/README.md +12 -0
- package/test/declarative/fixtures/directives/children/entry.html +11 -0
- package/test/declarative/fixtures/directives/children/fast-build.config.json +6 -0
- package/test/declarative/fixtures/directives/children/index.html +15 -0
- package/test/declarative/fixtures/directives/children/main.ts +22 -0
- package/test/declarative/fixtures/directives/children/state.json +3 -0
- package/test/declarative/fixtures/directives/children/templates.html +3 -0
- package/test/declarative/fixtures/directives/ref/entry.html +11 -0
- package/test/declarative/fixtures/directives/ref/fast-build.config.json +6 -0
- package/test/declarative/fixtures/directives/ref/index.html +15 -0
- package/test/declarative/fixtures/directives/ref/main.ts +17 -0
- package/test/declarative/fixtures/directives/ref/state.json +1 -0
- package/test/declarative/fixtures/directives/ref/templates.html +3 -0
- package/test/declarative/fixtures/directives/repeat/entry.html +21 -0
- package/test/declarative/fixtures/directives/repeat/fast-build.config.json +6 -0
- package/test/declarative/fixtures/directives/repeat/index.html +133 -0
- package/test/declarative/fixtures/directives/repeat/main.ts +110 -0
- package/test/declarative/fixtures/directives/repeat/sprites.svg +8 -0
- package/test/declarative/fixtures/directives/repeat/state.json +10 -0
- package/test/declarative/fixtures/directives/repeat/templates.html +75 -0
- package/test/declarative/fixtures/directives/slotted/entry.html +17 -0
- package/test/declarative/fixtures/directives/slotted/fast-build.config.json +6 -0
- package/test/declarative/fixtures/directives/slotted/index.html +27 -0
- package/test/declarative/fixtures/directives/slotted/main.ts +29 -0
- package/test/declarative/fixtures/directives/slotted/state.json +1 -0
- package/test/declarative/fixtures/directives/slotted/templates.html +7 -0
- package/test/declarative/fixtures/directives/when/entry.html +51 -0
- package/test/declarative/fixtures/directives/when/fast-build.config.json +6 -0
- package/test/declarative/fixtures/directives/when/index.html +136 -0
- package/test/declarative/fixtures/directives/when/main.ts +172 -0
- package/test/declarative/fixtures/directives/when/state.json +12 -0
- package/test/declarative/fixtures/directives/when/templates.html +75 -0
- package/test/declarative/fixtures/ecosystem/README.md +11 -0
- package/test/declarative/fixtures/ecosystem/declarative-no-hydration/entry.html +12 -0
- package/test/declarative/fixtures/ecosystem/declarative-no-hydration/fast-build.config.json +6 -0
- package/test/declarative/fixtures/ecosystem/declarative-no-hydration/index.html +20 -0
- package/test/declarative/fixtures/ecosystem/declarative-no-hydration/main.ts +68 -0
- package/test/declarative/fixtures/ecosystem/declarative-no-hydration/state.json +4 -0
- package/test/declarative/fixtures/ecosystem/declarative-no-hydration/templates.html +7 -0
- package/test/declarative/fixtures/ecosystem/errors/entry.html +12 -0
- package/test/declarative/fixtures/ecosystem/errors/fast-build.config.json +6 -0
- package/test/declarative/fixtures/ecosystem/errors/index.html +20 -0
- package/test/declarative/fixtures/ecosystem/errors/main.ts +17 -0
- package/test/declarative/fixtures/ecosystem/errors/state.json +1 -0
- package/test/declarative/fixtures/ecosystem/errors/templates.html +7 -0
- package/test/declarative/fixtures/ecosystem/lifecycle-callbacks/entry.html +17 -0
- package/test/declarative/fixtures/ecosystem/lifecycle-callbacks/fast-build.config.json +6 -0
- package/test/declarative/fixtures/ecosystem/lifecycle-callbacks/index.html +56 -0
- package/test/declarative/fixtures/ecosystem/lifecycle-callbacks/main.ts +134 -0
- package/test/declarative/fixtures/ecosystem/lifecycle-callbacks/state.json +12 -0
- package/test/declarative/fixtures/ecosystem/lifecycle-callbacks/templates.html +34 -0
- package/test/declarative/fixtures/ecosystem/performance-metrics/entry.html +25 -0
- package/test/declarative/fixtures/ecosystem/performance-metrics/fast-build.config.json +6 -0
- package/test/declarative/fixtures/ecosystem/performance-metrics/fast-card.css +10 -0
- package/test/declarative/fixtures/ecosystem/performance-metrics/index.html +181 -0
- package/test/declarative/fixtures/ecosystem/performance-metrics/main.ts +58 -0
- package/test/declarative/fixtures/ecosystem/performance-metrics/state.json +6 -0
- package/test/declarative/fixtures/ecosystem/performance-metrics/templates.html +15 -0
- package/test/declarative/fixtures/extensions/README.md +15 -0
- package/test/declarative/fixtures/extensions/attribute-map/entry.html +14 -0
- package/test/declarative/fixtures/extensions/attribute-map/fast-build.config.json +6 -0
- package/test/declarative/fixtures/extensions/attribute-map/index.html +31 -0
- package/test/declarative/fixtures/extensions/attribute-map/main.ts +40 -0
- package/test/declarative/fixtures/extensions/attribute-map/state.json +4 -0
- package/test/declarative/fixtures/extensions/attribute-map/templates.html +14 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy/entry.html +12 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy/fast-build.config.json +7 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy/index.html +25 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy/main.ts +31 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy/state.json +5 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy/templates.html +11 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy-camel-case/entry.html +13 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy-camel-case/fast-build.config.json +7 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy-camel-case/index.html +23 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy-camel-case/main.ts +37 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy-camel-case/state.json +1 -0
- package/test/declarative/fixtures/extensions/attribute-map-naming-strategy-camel-case/templates.html +9 -0
- package/test/declarative/fixtures/extensions/observer-map/entry.html +15 -0
- package/test/declarative/fixtures/extensions/observer-map/fast-build.config.json +6 -0
- package/test/declarative/fixtures/extensions/observer-map/index.html +442 -0
- package/test/declarative/fixtures/extensions/observer-map/main.ts +482 -0
- package/test/declarative/fixtures/extensions/observer-map/state.json +158 -0
- package/test/declarative/fixtures/extensions/observer-map/templates.html +172 -0
- package/test/declarative/fixtures/extensions/observer-map-config-object/entry.html +16 -0
- package/test/declarative/fixtures/extensions/observer-map-config-object/fast-build.config.json +6 -0
- package/test/declarative/fixtures/extensions/observer-map-config-object/index.html +27 -0
- package/test/declarative/fixtures/extensions/observer-map-config-object/main.ts +53 -0
- package/test/declarative/fixtures/extensions/observer-map-config-object/state.json +9 -0
- package/test/declarative/fixtures/extensions/observer-map-config-object/templates.html +12 -0
- package/test/declarative/fixtures/extensions/observer-map-deep-merge/README.md +98 -0
- package/test/declarative/fixtures/extensions/observer-map-deep-merge/entry.html +156 -0
- package/test/declarative/fixtures/extensions/observer-map-deep-merge/fast-build.config.json +6 -0
- package/test/declarative/fixtures/extensions/observer-map-deep-merge/index.html +376 -0
- package/test/declarative/fixtures/extensions/observer-map-deep-merge/main.ts +366 -0
- package/test/declarative/fixtures/extensions/observer-map-deep-merge/state.json +69 -0
- package/test/declarative/fixtures/extensions/observer-map-deep-merge/templates.html +91 -0
- package/test/declarative/fixtures/extensions/observer-map-properties/entry.html +14 -0
- package/test/declarative/fixtures/extensions/observer-map-properties/fast-build.config.json +6 -0
- package/test/declarative/fixtures/extensions/observer-map-properties/index.html +110 -0
- package/test/declarative/fixtures/extensions/observer-map-properties/main.ts +175 -0
- package/test/declarative/fixtures/extensions/observer-map-properties/state.json +29 -0
- package/test/declarative/fixtures/extensions/observer-map-properties/templates.html +55 -0
- package/test/declarative/fixtures/scenarios/README.md +7 -0
- package/test/declarative/fixtures/scenarios/nested-elements/entry.html +16 -0
- package/test/declarative/fixtures/scenarios/nested-elements/fast-build.config.json +6 -0
- package/test/declarative/fixtures/scenarios/nested-elements/index.html +126 -0
- package/test/declarative/fixtures/scenarios/nested-elements/main.ts +214 -0
- package/test/declarative/fixtures/scenarios/nested-elements/state.json +10 -0
- package/test/declarative/fixtures/scenarios/nested-elements/templates.html +54 -0
- package/test/declarative/index.html +12 -0
- package/test/declarative/vite.config.ts +55 -0
- package/test/declarative-main.ts +6 -0
- package/test/extension-subpaths-main.ts +9 -0
- package/test/main.ts +38 -33
- package/test/pure-declarative-main.ts +1 -0
- package/dist/dts/components/install-hydration.d.ts +0 -1
- package/dist/dts/pending-task.d.ts +0 -32
- package/dist/dts/polyfills.d.ts +0 -0
- package/dist/dts/styles/css-binding-directive.d.ts +0 -60
- package/dist/dts/templating/install-hydratable-view-templates.d.ts +0 -1
- package/dist/esm/components/install-hydration.js +0 -3
- package/dist/esm/pending-task.js +0 -28
- package/dist/esm/polyfills.js +0 -60
- package/dist/esm/styles/css-binding-directive.js +0 -76
- package/dist/esm/templating/install-hydratable-view-templates.js +0 -23
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
## API Report File for "@microsoft/fast-element"
|
|
2
|
+
|
|
3
|
+
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
|
|
7
|
+
// @public
|
|
8
|
+
export interface CaptureType {
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
// @public
|
|
12
|
+
export interface ContentTemplate {
|
|
13
|
+
create(): ContentView;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// @public
|
|
17
|
+
export interface ContentView {
|
|
18
|
+
bind(source: any, context?: ExecutionContext): void;
|
|
19
|
+
// (undocumented)
|
|
20
|
+
readonly context: ExecutionContext;
|
|
21
|
+
insertBefore(node: Node): void;
|
|
22
|
+
remove(): void;
|
|
23
|
+
unbind(): void;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// @public
|
|
27
|
+
export class DefaultExecutionContext<TParent> implements ExecutionContext<TParent> {
|
|
28
|
+
get event(): Event;
|
|
29
|
+
eventDetail<TDetail>(): TDetail;
|
|
30
|
+
eventTarget<TTarget extends EventTarget>(): TTarget;
|
|
31
|
+
index: number;
|
|
32
|
+
get isEven(): boolean;
|
|
33
|
+
get isFirst(): boolean;
|
|
34
|
+
get isInMiddle(): boolean;
|
|
35
|
+
get isLast(): boolean;
|
|
36
|
+
get isOdd(): boolean;
|
|
37
|
+
length: number;
|
|
38
|
+
readonly parent: TParent;
|
|
39
|
+
readonly parentContext: ExecutionContext<TParent>;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// @beta
|
|
43
|
+
export const deferHydrationAttribute = "defer-hydration";
|
|
44
|
+
|
|
45
|
+
// @public
|
|
46
|
+
interface Disposable_2 {
|
|
47
|
+
dispose(): void;
|
|
48
|
+
}
|
|
49
|
+
export { Disposable_2 as Disposable }
|
|
50
|
+
|
|
51
|
+
// @public
|
|
52
|
+
export const DOMAspect: Readonly<{
|
|
53
|
+
readonly none: 0;
|
|
54
|
+
readonly attribute: 1;
|
|
55
|
+
readonly booleanAttribute: 2;
|
|
56
|
+
readonly property: 3;
|
|
57
|
+
readonly content: 4;
|
|
58
|
+
readonly tokenList: 5;
|
|
59
|
+
readonly event: 6;
|
|
60
|
+
}>;
|
|
61
|
+
|
|
62
|
+
// @public
|
|
63
|
+
export type DOMAspect = (typeof DOMAspect)[Exclude<keyof typeof DOMAspect, "none">];
|
|
64
|
+
|
|
65
|
+
// @public
|
|
66
|
+
export interface DOMPolicy {
|
|
67
|
+
createHTML(value: string): string;
|
|
68
|
+
protect(tagName: string | null, aspect: DOMAspect, aspectName: string, sink: DOMSink): DOMSink;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// @public
|
|
72
|
+
export type DOMSink = (target: Node, aspectName: string, value: any, ...args: any[]) => void;
|
|
73
|
+
|
|
74
|
+
// @public
|
|
75
|
+
export interface ElementView<TSource = any, TParent = any> extends View<TSource, TParent> {
|
|
76
|
+
appendTo(node: Node): void;
|
|
77
|
+
onUnbind(behavior: {
|
|
78
|
+
unbind(controller: ViewController<TSource, TParent>): any;
|
|
79
|
+
}): void;
|
|
80
|
+
readonly sourceLifetime?: SourceLifetime;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
// @public
|
|
84
|
+
export interface ElementViewTemplate<TSource = any, TParent = any> {
|
|
85
|
+
create(hostBindingTarget: Element): ElementView<TSource, TParent>;
|
|
86
|
+
render(source: TSource, host: Node, hostBindingTarget?: Element): ElementView<TSource, TParent>;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// @public
|
|
90
|
+
export function enableHydration(options?: HydrationOptions): void;
|
|
91
|
+
|
|
92
|
+
// @public
|
|
93
|
+
export interface ExecutionContext<TParent = any> {
|
|
94
|
+
readonly event: Event;
|
|
95
|
+
eventDetail<TDetail>(): TDetail;
|
|
96
|
+
eventTarget<TTarget extends EventTarget>(): TTarget;
|
|
97
|
+
index: number;
|
|
98
|
+
readonly isEven: boolean;
|
|
99
|
+
readonly isFirst: boolean;
|
|
100
|
+
readonly isInMiddle: boolean;
|
|
101
|
+
readonly isLast: boolean;
|
|
102
|
+
readonly isOdd: boolean;
|
|
103
|
+
length: number;
|
|
104
|
+
parent: TParent;
|
|
105
|
+
parentContext: ExecutionContext<TParent>;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
// @public
|
|
109
|
+
export const ExecutionContext: Readonly<{
|
|
110
|
+
default: ExecutionContext<any>;
|
|
111
|
+
getEvent(): Event | null;
|
|
112
|
+
setEvent(event: Event | null): void;
|
|
113
|
+
}>;
|
|
114
|
+
|
|
115
|
+
// @public
|
|
116
|
+
export interface ExpressionController<TSource = any, TParent = any> {
|
|
117
|
+
readonly context: ExecutionContext<TParent>;
|
|
118
|
+
readonly isBound: boolean;
|
|
119
|
+
onUnbind(behavior: {
|
|
120
|
+
unbind(controller: ExpressionController<TSource, TParent>): any;
|
|
121
|
+
}): void;
|
|
122
|
+
readonly source: TSource;
|
|
123
|
+
readonly sourceLifetime?: SourceLifetime;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
// @beta
|
|
127
|
+
export interface HydratableContentTemplate extends ContentTemplate {
|
|
128
|
+
hydrate(first: Node, last: Node): ContentView;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
// @beta
|
|
132
|
+
export interface HydratableElementViewTemplate<TSource = any, TParent = any> extends ElementViewTemplate<TSource, TParent> {
|
|
133
|
+
// (undocumented)
|
|
134
|
+
hydrate(firstChild: Node, lastChild: Node, hostBindingTarget?: Element): ElementView<TSource, TParent>;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// @beta
|
|
138
|
+
export interface HydratableSyntheticViewTemplate<TSource = any, TParent = any> extends SyntheticViewTemplate {
|
|
139
|
+
// (undocumented)
|
|
140
|
+
hydrate(firstChild: Node, lastChild: Node): SyntheticView<TSource, TParent>;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
// @public (undocumented)
|
|
144
|
+
export interface HydratableView<TSource = any, TParent = any> extends ElementView, SyntheticView, DefaultExecutionContext<TParent> {
|
|
145
|
+
// (undocumented)
|
|
146
|
+
[Hydratable]: symbol;
|
|
147
|
+
// (undocumented)
|
|
148
|
+
readonly bindingViewBoundaries: Record<string, ViewNodes>;
|
|
149
|
+
// (undocumented)
|
|
150
|
+
readonly hydrationStage: keyof typeof HydrationStage;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
// @beta
|
|
154
|
+
export type HydratableViewController<TSource = any, TParent = any> = HydratableView<TSource, TParent> & ViewController<TSource, TParent>;
|
|
155
|
+
|
|
156
|
+
// @public (undocumented)
|
|
157
|
+
export class HydrationBindingError extends Error {
|
|
158
|
+
constructor(
|
|
159
|
+
message: string | undefined,
|
|
160
|
+
factory: ViewBehaviorFactory,
|
|
161
|
+
fragment: DocumentFragment,
|
|
162
|
+
templateString: string);
|
|
163
|
+
readonly factory: ViewBehaviorFactory;
|
|
164
|
+
readonly fragment: DocumentFragment;
|
|
165
|
+
readonly templateString: string;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
// @public
|
|
169
|
+
export interface HydrationOptions {
|
|
170
|
+
hydrationComplete?(): void;
|
|
171
|
+
hydrationStarted?(): void;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
// @public (undocumented)
|
|
175
|
+
export const HydrationStage: {
|
|
176
|
+
readonly unhydrated: "unhydrated";
|
|
177
|
+
readonly hydrating: "hydrating";
|
|
178
|
+
readonly hydrated: "hydrated";
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
// @public
|
|
182
|
+
export class HydrationTracker {
|
|
183
|
+
constructor(options: HydrationOptions);
|
|
184
|
+
add(element: HTMLElement): void;
|
|
185
|
+
mergeOptions(incoming: HydrationOptions): void;
|
|
186
|
+
remove(element: HTMLElement): void;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
// @beta
|
|
190
|
+
export function isHydratable(view: ViewController): view is HydratableViewController;
|
|
191
|
+
|
|
192
|
+
// @beta (undocumented)
|
|
193
|
+
export function isHydratable<TSource = any, TParent = any>(template: SyntheticViewTemplate<TSource, TParent>): template is HydratableSyntheticViewTemplate<TSource, TParent>;
|
|
194
|
+
|
|
195
|
+
// @beta (undocumented)
|
|
196
|
+
export function isHydratable<TSource = any, TParent = any>(template: ElementViewTemplate<TSource, TParent>): template is HydratableElementViewTemplate<TSource, TParent>;
|
|
197
|
+
|
|
198
|
+
// @beta (undocumented)
|
|
199
|
+
export function isHydratable(template: ContentTemplate): template is HydratableContentTemplate;
|
|
200
|
+
|
|
201
|
+
// @public
|
|
202
|
+
export const SourceLifetime: Readonly<{
|
|
203
|
+
readonly unknown: undefined;
|
|
204
|
+
readonly coupled: 1;
|
|
205
|
+
}>;
|
|
206
|
+
|
|
207
|
+
// @public
|
|
208
|
+
export type SourceLifetime = (typeof SourceLifetime)[keyof typeof SourceLifetime];
|
|
209
|
+
|
|
210
|
+
// @public
|
|
211
|
+
export interface SyntheticView<TSource = any, TParent = any> extends View<TSource, TParent> {
|
|
212
|
+
readonly firstChild: Node;
|
|
213
|
+
insertBefore(node: Node): void;
|
|
214
|
+
readonly lastChild: Node;
|
|
215
|
+
remove(): void;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
// @public
|
|
219
|
+
export interface SyntheticViewTemplate<TSource = any, TParent = any> {
|
|
220
|
+
create(): SyntheticView<TSource, TParent>;
|
|
221
|
+
inline(): CaptureType;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
// @public
|
|
225
|
+
export interface View<TSource = any, TParent = any> extends Disposable_2 {
|
|
226
|
+
bind(source: TSource, context?: ExecutionContext<TParent>): void;
|
|
227
|
+
readonly context: ExecutionContext<TParent>;
|
|
228
|
+
readonly isBound: boolean;
|
|
229
|
+
readonly source: TSource | null;
|
|
230
|
+
unbind(): void;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
// @public
|
|
234
|
+
export interface ViewBehavior<TSource = any, TParent = any> {
|
|
235
|
+
bind(controller: ViewController<TSource, TParent>): void;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
// @public
|
|
239
|
+
export interface ViewBehaviorBoundaries {
|
|
240
|
+
// (undocumented)
|
|
241
|
+
[factoryId: string]: ViewBoundaries;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
// @public
|
|
245
|
+
export interface ViewBehaviorFactory {
|
|
246
|
+
createBehavior(): ViewBehavior;
|
|
247
|
+
id?: string;
|
|
248
|
+
policy?: DOMPolicy;
|
|
249
|
+
targetNodeId?: string;
|
|
250
|
+
targetTagName?: string | null;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
// @public
|
|
254
|
+
export type ViewBehaviorTargets = {
|
|
255
|
+
[id: string]: Node;
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
// @public
|
|
259
|
+
export interface ViewBoundaries {
|
|
260
|
+
// (undocumented)
|
|
261
|
+
first: Node;
|
|
262
|
+
// (undocumented)
|
|
263
|
+
last: Node;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
// @public
|
|
267
|
+
export interface ViewController<TSource = any, TParent = any> extends ExpressionController<TSource, TParent> {
|
|
268
|
+
readonly isHydrated?: Promise<boolean>;
|
|
269
|
+
readonly isPrerendered?: Promise<boolean>;
|
|
270
|
+
// @internal
|
|
271
|
+
readonly _skipAttrUpdates?: boolean;
|
|
272
|
+
readonly targets: ViewBehaviorTargets;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
// @public (undocumented)
|
|
276
|
+
export interface ViewNodes {
|
|
277
|
+
// (undocumented)
|
|
278
|
+
first: Node;
|
|
279
|
+
// (undocumented)
|
|
280
|
+
last: Node;
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
// (No @packageDocumentation comment for this package)
|
|
284
|
+
|
|
285
|
+
```
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
## API Report File for "@microsoft/fast-element"
|
|
2
|
+
|
|
3
|
+
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
|
|
7
|
+
// @public
|
|
8
|
+
export type ComposableStyles = string | ElementStyles | CSSStyleSheet;
|
|
9
|
+
|
|
10
|
+
// @public
|
|
11
|
+
export type Constructable<T = {}> = {
|
|
12
|
+
new (...args: any[]): T;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
// @public
|
|
16
|
+
export type ConstructibleStyleStrategy = {
|
|
17
|
+
new (styles: (string | CSSStyleSheet)[]): StyleStrategy;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
// @public
|
|
21
|
+
export interface CSSDirective {
|
|
22
|
+
createCSS(): ComposableStyles;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// @public
|
|
26
|
+
export const CSSDirective: Readonly<{
|
|
27
|
+
getForInstance: (object: any) => CSSDirectiveDefinition<Constructable<CSSDirective>> | undefined;
|
|
28
|
+
getByType: (key: Function) => CSSDirectiveDefinition<Constructable<CSSDirective>> | undefined;
|
|
29
|
+
define<TType extends Constructable<CSSDirective>>(type: any): TType;
|
|
30
|
+
}>;
|
|
31
|
+
|
|
32
|
+
// @public
|
|
33
|
+
export function cssDirective(): (type: Constructable<CSSDirective>) => void;
|
|
34
|
+
|
|
35
|
+
// @public
|
|
36
|
+
export interface CSSDirectiveDefinition<TType extends Constructable<CSSDirective> = Constructable<CSSDirective>> {
|
|
37
|
+
readonly type: TType;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// @public
|
|
41
|
+
export class ElementStyles {
|
|
42
|
+
constructor(styles: ReadonlyArray<ComposableStyles>);
|
|
43
|
+
// @internal (undocumented)
|
|
44
|
+
addStylesTo(target: StyleTarget): void;
|
|
45
|
+
// @internal (undocumented)
|
|
46
|
+
isAttachedTo(target: StyleTarget): boolean;
|
|
47
|
+
static normalize(styles: ComposableStyles | ComposableStyles[] | undefined): ElementStyles | undefined;
|
|
48
|
+
// @internal (undocumented)
|
|
49
|
+
removeStylesFrom(target: StyleTarget): void;
|
|
50
|
+
static setDefaultStrategy(Strategy: ConstructibleStyleStrategy): void;
|
|
51
|
+
get strategy(): StyleStrategy;
|
|
52
|
+
// (undocumented)
|
|
53
|
+
readonly styles: ReadonlyArray<ComposableStyles>;
|
|
54
|
+
static readonly supportsAdoptedStyleSheets: boolean;
|
|
55
|
+
withStrategy(Strategy: ConstructibleStyleStrategy): this;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// @public
|
|
59
|
+
export interface ExecutionContext<TParent = any> {
|
|
60
|
+
readonly event: Event;
|
|
61
|
+
eventDetail<TDetail>(): TDetail;
|
|
62
|
+
eventTarget<TTarget extends EventTarget>(): TTarget;
|
|
63
|
+
index: number;
|
|
64
|
+
readonly isEven: boolean;
|
|
65
|
+
readonly isFirst: boolean;
|
|
66
|
+
readonly isInMiddle: boolean;
|
|
67
|
+
readonly isLast: boolean;
|
|
68
|
+
readonly isOdd: boolean;
|
|
69
|
+
length: number;
|
|
70
|
+
parent: TParent;
|
|
71
|
+
parentContext: ExecutionContext<TParent>;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// @public
|
|
75
|
+
export const ExecutionContext: Readonly<{
|
|
76
|
+
default: ExecutionContext<any>;
|
|
77
|
+
getEvent(): Event | null;
|
|
78
|
+
setEvent(event: Event | null): void;
|
|
79
|
+
}>;
|
|
80
|
+
|
|
81
|
+
// @public
|
|
82
|
+
export interface ExpressionController<TSource = any, TParent = any> {
|
|
83
|
+
readonly context: ExecutionContext<TParent>;
|
|
84
|
+
readonly isBound: boolean;
|
|
85
|
+
onUnbind(behavior: {
|
|
86
|
+
unbind(controller: ExpressionController<TSource, TParent>): any;
|
|
87
|
+
}): void;
|
|
88
|
+
readonly source: TSource;
|
|
89
|
+
readonly sourceLifetime?: SourceLifetime;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// @public
|
|
93
|
+
export interface HostBehavior<TSource = any> {
|
|
94
|
+
addedCallback?(controller: HostController<TSource>): void;
|
|
95
|
+
connectedCallback?(controller: HostController<TSource>): void;
|
|
96
|
+
disconnectedCallback?(controller: HostController<TSource>): void;
|
|
97
|
+
removedCallback?(controller: HostController<TSource>): void;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
// @public
|
|
101
|
+
export interface HostController<TSource = any> extends ExpressionController<TSource> {
|
|
102
|
+
addBehavior(behavior: HostBehavior<TSource>): void;
|
|
103
|
+
addStyles(styles: ElementStyles | HTMLStyleElement | null | undefined): void;
|
|
104
|
+
readonly isConnected: boolean;
|
|
105
|
+
mainStyles: ElementStyles | null;
|
|
106
|
+
removeBehavior(behavior: HostBehavior<TSource>, force?: boolean): void;
|
|
107
|
+
removeStyles(styles: ElementStyles | HTMLStyleElement | null | undefined): void;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// @public
|
|
111
|
+
export const SourceLifetime: Readonly<{
|
|
112
|
+
readonly unknown: undefined;
|
|
113
|
+
readonly coupled: 1;
|
|
114
|
+
}>;
|
|
115
|
+
|
|
116
|
+
// @public
|
|
117
|
+
export type SourceLifetime = (typeof SourceLifetime)[keyof typeof SourceLifetime];
|
|
118
|
+
|
|
119
|
+
// @public
|
|
120
|
+
export interface StyleStrategy {
|
|
121
|
+
addStylesTo(target: StyleTarget): void;
|
|
122
|
+
removeStylesFrom(target: StyleTarget): void;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
// @public
|
|
126
|
+
export interface StyleTarget extends Pick<Node, "getRootNode"> {
|
|
127
|
+
adoptedStyleSheets?: CSSStyleSheet[];
|
|
128
|
+
append(styles: HTMLStyleElement): void;
|
|
129
|
+
querySelectorAll<E extends Element = Element>(selectors: string): NodeListOf<E>;
|
|
130
|
+
removeChild(styles: HTMLStyleElement): void;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
// (No @packageDocumentation comment for this package)
|
|
134
|
+
|
|
135
|
+
```
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/fast-element",
|
|
3
3
|
"description": "A library for constructing Web Components",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "3.0.0-rc.1",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Microsoft",
|
|
7
7
|
"url": "https://discord.gg/FcSNfg4"
|
|
@@ -30,17 +30,55 @@
|
|
|
30
30
|
"types": "./dist/dts/debug.d.ts",
|
|
31
31
|
"default": "./dist/esm/debug.js"
|
|
32
32
|
},
|
|
33
|
-
"./
|
|
33
|
+
"./fast-element.js": {
|
|
34
|
+
"types": "./dist/dts/components/fast-element.d.ts",
|
|
35
|
+
"test": "./src/components/fast-element.ts",
|
|
36
|
+
"default": "./dist/esm/components/fast-element.js"
|
|
37
|
+
},
|
|
38
|
+
"./declarative.js": {
|
|
39
|
+
"types": "./dist/dts/declarative/index.d.ts",
|
|
40
|
+
"test": "./src/declarative/index.ts",
|
|
41
|
+
"default": "./dist/esm/declarative/index.js"
|
|
42
|
+
},
|
|
43
|
+
"./declarative-utilities.js": {
|
|
44
|
+
"types": "./dist/dts/declarative/utilities.d.ts",
|
|
45
|
+
"test": "./src/declarative/utilities.ts",
|
|
46
|
+
"default": "./dist/esm/declarative/utilities.js"
|
|
47
|
+
},
|
|
48
|
+
"./attribute-map.js": {
|
|
49
|
+
"types": "./dist/dts/declarative/attribute-map.d.ts",
|
|
50
|
+
"test": "./src/declarative/attribute-map.ts",
|
|
51
|
+
"default": "./dist/esm/declarative/attribute-map.js"
|
|
52
|
+
},
|
|
53
|
+
"./observer-map.js": {
|
|
54
|
+
"types": "./dist/dts/declarative/observer-map.d.ts",
|
|
55
|
+
"test": "./src/declarative/observer-map.ts",
|
|
56
|
+
"default": "./dist/esm/declarative/observer-map.js"
|
|
57
|
+
},
|
|
58
|
+
"./hydration.js": {
|
|
59
|
+
"types": "./dist/dts/hydration.d.ts",
|
|
60
|
+
"test": "./src/hydration.ts",
|
|
61
|
+
"default": "./dist/esm/hydration.js"
|
|
62
|
+
},
|
|
63
|
+
"./binding.js": {
|
|
64
|
+
"types": "./dist/dts/binding.d.ts",
|
|
65
|
+
"test": "./src/binding.ts",
|
|
66
|
+
"default": "./dist/esm/binding.js"
|
|
67
|
+
},
|
|
68
|
+
"./two-way.js": {
|
|
34
69
|
"types": "./dist/dts/binding/two-way.d.ts",
|
|
70
|
+
"test": "./src/binding/two-way.ts",
|
|
35
71
|
"default": "./dist/esm/binding/two-way.js"
|
|
36
72
|
},
|
|
37
|
-
"./
|
|
73
|
+
"./signal.js": {
|
|
38
74
|
"types": "./dist/dts/binding/signal.d.ts",
|
|
75
|
+
"test": "./src/binding/signal.ts",
|
|
39
76
|
"default": "./dist/esm/binding/signal.js"
|
|
40
77
|
},
|
|
41
78
|
"./render.js": {
|
|
42
|
-
"types": "./dist/dts/
|
|
43
|
-
"
|
|
79
|
+
"types": "./dist/dts/render.d.ts",
|
|
80
|
+
"test": "./src/render.ts",
|
|
81
|
+
"default": "./dist/esm/render.js"
|
|
44
82
|
},
|
|
45
83
|
"./utilities.js": {
|
|
46
84
|
"types": "./dist/dts/utilities.d.ts",
|
|
@@ -54,69 +92,139 @@
|
|
|
54
92
|
"types": "./dist/dts/context.d.ts",
|
|
55
93
|
"default": "./dist/esm/context.js"
|
|
56
94
|
},
|
|
57
|
-
"./metadata.js": {
|
|
58
|
-
"types": "./dist/dts/metadata.d.ts",
|
|
59
|
-
"default": "./dist/esm/metadata.js"
|
|
60
|
-
},
|
|
61
|
-
"./testing.js": {
|
|
62
|
-
"types": "./dist/dts/testing/exports.d.ts",
|
|
63
|
-
"default": "./dist/esm/testing/exports.js"
|
|
64
|
-
},
|
|
65
95
|
"./di.js": {
|
|
66
96
|
"types": "./dist/dts/di/di.d.ts",
|
|
67
97
|
"default": "./dist/esm/di/di.js"
|
|
68
98
|
},
|
|
69
|
-
"./
|
|
70
|
-
"types": "./dist/dts/
|
|
71
|
-
"
|
|
72
|
-
|
|
73
|
-
"./install-element-hydration.js": {
|
|
74
|
-
"types": "./dist/dts/components/install-hydration.d.ts",
|
|
75
|
-
"default": "./dist/esm/components/install-hydration.js"
|
|
76
|
-
},
|
|
77
|
-
"./install-hydratable-view-templates.js": {
|
|
78
|
-
"types": "./dist/dts/templating/install-hydratable-view-templates.d.ts",
|
|
79
|
-
"default": "./dist/esm/templating/install-hydratable-view-templates.js"
|
|
80
|
-
},
|
|
81
|
-
"./pending-task.js": {
|
|
82
|
-
"types": "./dist/dts/pending-task.d.ts",
|
|
83
|
-
"default": "./dist/esm/pending-task.js"
|
|
99
|
+
"./dom.js": {
|
|
100
|
+
"types": "./dist/dts/dom.d.ts",
|
|
101
|
+
"test": "./src/dom.ts",
|
|
102
|
+
"default": "./dist/esm/dom.js"
|
|
84
103
|
},
|
|
85
104
|
"./dom-policy.js": {
|
|
86
105
|
"types": "./dist/dts/dom-policy.d.ts",
|
|
87
106
|
"default": "./dist/esm/dom-policy.js"
|
|
88
107
|
},
|
|
108
|
+
"./updates.js": {
|
|
109
|
+
"types": "./dist/dts/updates.d.ts",
|
|
110
|
+
"test": "./src/updates.ts",
|
|
111
|
+
"default": "./dist/esm/updates.js"
|
|
112
|
+
},
|
|
113
|
+
"./arrays.js": {
|
|
114
|
+
"types": "./dist/dts/arrays.d.ts",
|
|
115
|
+
"test": "./src/arrays.ts",
|
|
116
|
+
"default": "./dist/esm/arrays.js"
|
|
117
|
+
},
|
|
118
|
+
"./array-observer.js": {
|
|
119
|
+
"types": "./dist/dts/array-observer.d.ts",
|
|
120
|
+
"test": "./src/array-observer.ts",
|
|
121
|
+
"default": "./dist/esm/array-observer.js"
|
|
122
|
+
},
|
|
123
|
+
"./schema.js": {
|
|
124
|
+
"types": "./dist/dts/schema.d.ts",
|
|
125
|
+
"test": "./src/schema.ts",
|
|
126
|
+
"default": "./dist/esm/schema.js"
|
|
127
|
+
},
|
|
89
128
|
"./observable.js": {
|
|
90
|
-
"types": "./dist/dts/
|
|
91
|
-
"
|
|
129
|
+
"types": "./dist/dts/observable.d.ts",
|
|
130
|
+
"test": "./src/observable.ts",
|
|
131
|
+
"default": "./dist/esm/observable.js"
|
|
132
|
+
},
|
|
133
|
+
"./volatile.js": {
|
|
134
|
+
"types": "./dist/dts/volatile.d.ts",
|
|
135
|
+
"test": "./src/volatile.ts",
|
|
136
|
+
"default": "./dist/esm/volatile.js"
|
|
137
|
+
},
|
|
138
|
+
"./attr.js": {
|
|
139
|
+
"types": "./dist/dts/attr.d.ts",
|
|
140
|
+
"test": "./src/attr.ts",
|
|
141
|
+
"default": "./dist/esm/attr.js"
|
|
142
|
+
},
|
|
143
|
+
"./css.js": {
|
|
144
|
+
"types": "./dist/dts/css.d.ts",
|
|
145
|
+
"test": "./src/css.ts",
|
|
146
|
+
"default": "./dist/esm/css.js"
|
|
147
|
+
},
|
|
148
|
+
"./html.js": {
|
|
149
|
+
"types": "./dist/dts/html.d.ts",
|
|
150
|
+
"test": "./src/html.ts",
|
|
151
|
+
"default": "./dist/esm/html.js"
|
|
152
|
+
},
|
|
153
|
+
"./templating.js": {
|
|
154
|
+
"types": "./dist/dts/templating.d.ts",
|
|
155
|
+
"test": "./src/templating.ts",
|
|
156
|
+
"default": "./dist/esm/templating.js"
|
|
157
|
+
},
|
|
158
|
+
"./children.js": {
|
|
159
|
+
"types": "./dist/dts/directives/children.d.ts",
|
|
160
|
+
"test": "./src/directives/children.ts",
|
|
161
|
+
"default": "./dist/esm/directives/children.js"
|
|
162
|
+
},
|
|
163
|
+
"./node-observation.js": {
|
|
164
|
+
"types": "./dist/dts/directives/node-observation.d.ts",
|
|
165
|
+
"test": "./src/directives/node-observation.ts",
|
|
166
|
+
"default": "./dist/esm/directives/node-observation.js"
|
|
167
|
+
},
|
|
168
|
+
"./ref.js": {
|
|
169
|
+
"types": "./dist/dts/directives/ref.d.ts",
|
|
170
|
+
"test": "./src/directives/ref.ts",
|
|
171
|
+
"default": "./dist/esm/directives/ref.js"
|
|
172
|
+
},
|
|
173
|
+
"./slotted.js": {
|
|
174
|
+
"types": "./dist/dts/directives/slotted.d.ts",
|
|
175
|
+
"test": "./src/directives/slotted.ts",
|
|
176
|
+
"default": "./dist/esm/directives/slotted.js"
|
|
177
|
+
},
|
|
178
|
+
"./when.js": {
|
|
179
|
+
"types": "./dist/dts/directives/when.d.ts",
|
|
180
|
+
"test": "./src/directives/when.ts",
|
|
181
|
+
"default": "./dist/esm/directives/when.js"
|
|
182
|
+
},
|
|
183
|
+
"./repeat.js": {
|
|
184
|
+
"types": "./dist/dts/directives/repeat.d.ts",
|
|
185
|
+
"test": "./src/directives/repeat.ts",
|
|
186
|
+
"default": "./dist/esm/directives/repeat.js"
|
|
187
|
+
},
|
|
188
|
+
"./styles.js": {
|
|
189
|
+
"types": "./dist/dts/styles.d.ts",
|
|
190
|
+
"test": "./src/styles.ts",
|
|
191
|
+
"default": "./dist/esm/styles.js"
|
|
92
192
|
},
|
|
93
193
|
"./package.json": "./package.json"
|
|
94
194
|
},
|
|
95
195
|
"unpkg": "dist/fast-element.min.js",
|
|
96
|
-
"sideEffects":
|
|
97
|
-
"./dist/esm/debug.js",
|
|
98
|
-
"./dist/esm/polyfills.js",
|
|
99
|
-
"./dist/esm/components/install-hydration.js",
|
|
100
|
-
"./dist/esm/templating/install-hydratable-view-templates.js",
|
|
101
|
-
"./dist/esm/interfaces.js"
|
|
102
|
-
],
|
|
196
|
+
"sideEffects": false,
|
|
103
197
|
"scripts": {
|
|
104
198
|
"clean": "clean dist temp test-results",
|
|
105
199
|
"doc": "api-extractor run --local",
|
|
106
200
|
"doc:ci": "api-extractor run",
|
|
107
201
|
"doc:exports": "node ./scripts/run-api-extractor.js",
|
|
108
202
|
"doc:exports:ci": "node ./scripts/run-api-extractor.js ci",
|
|
109
|
-
"build": "npm run build:tsc && npm run build:rollup && npm run doc && npm run doc:exports",
|
|
203
|
+
"build": "npm run build:tsc && npm run build:rollup && npm run build:sizes && npm run doc && npm run doc:exports && npm run build:fixtures",
|
|
204
|
+
"build:fixtures": "node scripts/declarative/build-fixtures.js",
|
|
205
|
+
"build:fixtures:webui": "node scripts/declarative/build-fixtures-with-webui.js",
|
|
110
206
|
"build:rollup": "rollup -c",
|
|
207
|
+
"build:sizes": "node scripts/measure-sizes.js",
|
|
111
208
|
"build:tsc": "tsc -p ./tsconfig.json",
|
|
112
209
|
"dev": "tsc -p ./tsconfig.json -w",
|
|
210
|
+
"dev:declarative": "concurrently -k -n tsc,server \"npm run dev\" \"npm run test-server:declarative\"",
|
|
113
211
|
"prepublishOnly": "npm run clean && npm run build",
|
|
114
212
|
"lint": "biome-changed",
|
|
115
213
|
"lint:fix": "biome-changed -- --fix",
|
|
116
|
-
"test:playwright": "playwright test",
|
|
117
|
-
"test:
|
|
214
|
+
"test:playwright": "playwright test && npm run test:playwright:declarative",
|
|
215
|
+
"test:playwright:declarative": "playwright test --config=playwright.declarative.config.ts",
|
|
216
|
+
"test:chromium": "playwright test --project=chromium && npm run test:chromium:declarative",
|
|
217
|
+
"test:chromium:declarative": "playwright test --config=playwright.declarative.config.ts --project=chromium",
|
|
118
218
|
"test-server": "npx vite test/ --clearScreen false",
|
|
219
|
+
"test-server:declarative": "npx vite test/declarative --clearScreen false --port 5174 --strictPort",
|
|
220
|
+
"test-server:declarative:webui": "npx vite temp/integrations/webui --clearScreen false --port 5174 --strictPort",
|
|
119
221
|
"test": "npm run lint && npm run doc:ci && npm run doc:exports:ci && npm run test:playwright",
|
|
120
|
-
"test:ci": "npm run doc:ci && npm run doc:exports:ci && npm run test:playwright"
|
|
222
|
+
"test:ci": "npm run doc:ci && npm run doc:exports:ci && npm run test:playwright",
|
|
223
|
+
"test:ui:declarative": "concurrently -k -n tsc,playwright \"npm run dev\" \"npx playwright test --config=playwright.declarative.config.ts --ui\"",
|
|
224
|
+
"test:webui-integration": "npm run build:fixtures:webui && playwright test --config=playwright.declarative.webui.config.ts"
|
|
225
|
+
},
|
|
226
|
+
"devDependencies": {
|
|
227
|
+
"@microsoft/fast-build": "*",
|
|
228
|
+
"@microsoft/webui": "0.0.10"
|
|
121
229
|
}
|
|
122
230
|
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { defineConfig, devices } from "@playwright/test";
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
testDir: "./test/declarative/fixtures",
|
|
5
|
+
testMatch: "**/*.spec.ts",
|
|
6
|
+
retries: 3,
|
|
7
|
+
projects: [
|
|
8
|
+
{
|
|
9
|
+
name: "chromium",
|
|
10
|
+
use: { ...devices["Desktop Chrome"] },
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
name: "firefox",
|
|
14
|
+
use: { ...devices["Desktop Firefox"] },
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
name: "webkit",
|
|
18
|
+
use: { ...devices["Desktop Safari"] },
|
|
19
|
+
},
|
|
20
|
+
],
|
|
21
|
+
webServer: {
|
|
22
|
+
command: "npm run test-server:declarative",
|
|
23
|
+
port: 5174,
|
|
24
|
+
reuseExistingServer: true,
|
|
25
|
+
},
|
|
26
|
+
});
|