@tachui/core 0.7.0-alpha1 → 0.8.0-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +195 -0
- package/dist/bundles/common.d.ts +1 -1
- package/dist/bundles/common.d.ts.map +1 -1
- package/dist/bundles/minimal.d.ts +17 -5
- package/dist/bundles/minimal.d.ts.map +1 -1
- package/dist/bundles/production-minimal.d.ts +2 -16
- package/dist/bundles/production-minimal.d.ts.map +1 -1
- package/dist/common.js +402 -955
- package/dist/compiler/advanced-parser.d.ts.map +1 -1
- package/dist/compiler/index.js +1392 -10
- package/dist/component-XAzF1xqs.js +487 -0
- package/dist/component-base-x2XmHFjy.js +255 -0
- package/dist/components/index.d.ts +4 -38
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +7 -102
- package/dist/components/wrapper.d.ts +5 -152
- package/dist/components/wrapper.d.ts.map +1 -1
- package/dist/concatenated-component-ByPl3_FF.js +2933 -0
- package/dist/constants/index.d.ts +1 -1
- package/dist/constants/layout.d.ts +47 -4
- package/dist/constants/layout.d.ts.map +1 -1
- package/dist/constants/layout.js +52 -14
- package/dist/css-classes/index.js +176 -0
- package/dist/dom-bridge-CAa1N2zX.js +406 -0
- package/dist/effect-B9Knft0b.js +66 -0
- package/dist/essential.js +394 -953
- package/dist/index-DCPJFUm9.js +1407 -0
- package/dist/index-DIvMCJQO.js +268 -0
- package/dist/index-vdsiw6gQ.js +777 -0
- package/dist/index.d.ts +9 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +394 -953
- package/dist/minimal-prod.js +107 -190
- package/dist/minimal.js +115 -955
- package/dist/modifiers/background.d.ts +41 -11
- package/dist/modifiers/background.d.ts.map +1 -1
- package/dist/modifiers/base.d.ts +6 -33
- package/dist/modifiers/base.d.ts.map +1 -1
- package/dist/modifiers/base.js +275 -533
- package/dist/modifiers/builder.d.ts +103 -195
- package/dist/modifiers/builder.d.ts.map +1 -1
- package/dist/modifiers/builder.js +7 -928
- package/dist/modifiers/core.d.ts +9 -401
- package/dist/modifiers/core.d.ts.map +1 -1
- package/dist/modifiers/{utils.d.ts → factories.d.ts} +18 -5
- package/dist/modifiers/factories.d.ts.map +1 -0
- package/dist/modifiers/index.d.ts +8 -52
- package/dist/modifiers/index.d.ts.map +1 -1
- package/dist/modifiers/index.js +38 -0
- package/dist/modifiers/presets.d.ts +368 -0
- package/dist/modifiers/presets.d.ts.map +1 -0
- package/dist/modifiers/registry.js +8 -161
- package/dist/modifiers/types.d.ts +39 -211
- package/dist/modifiers/types.d.ts.map +1 -1
- package/dist/modifiers/types.js +0 -1
- package/dist/performance-optimizer-stub-CtfXUwl4.js +38 -0
- package/dist/plugins/index.d.ts +5 -6
- package/dist/plugins/index.d.ts.map +1 -1
- package/dist/plugins/index.js +393 -32
- package/dist/plugins/simplified-index.d.ts +5 -6
- package/dist/plugins/simplified-index.d.ts.map +1 -1
- package/dist/production-minimal-BY_gMc-l.js +2532 -0
- package/dist/reactive/index.js +489 -91
- package/dist/reactive/types.js +0 -1
- package/dist/runtime/dom-bridge.js +12 -239
- package/dist/runtime/element-override.d.ts.map +1 -1
- package/dist/runtime/index.d.ts +0 -7
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/renderer.d.ts.map +1 -1
- package/dist/runtime/renderer.js +7 -388
- package/dist/runtime/semantic-role-manager.d.ts.map +1 -1
- package/dist/runtime/types.js +1 -0
- package/dist/scheduler-BKeqwrYE.js +814 -0
- package/dist/validation/build-time-stub.d.ts +33 -0
- package/dist/validation/build-time-stub.d.ts.map +1 -0
- package/dist/validation/debug-tools-stub.d.ts +67 -0
- package/dist/validation/debug-tools-stub.d.ts.map +1 -0
- package/dist/validation/index.d.ts +23 -78
- package/dist/validation/index.d.ts.map +1 -1
- package/dist/validation/index.js +788 -233
- package/dist/validation/lifecycle-validation.d.ts.map +1 -1
- package/dist/validation/performance-optimizer-stub.d.ts +50 -0
- package/dist/validation/performance-optimizer-stub.d.ts.map +1 -0
- package/dist/validation/plugin-registration.d.ts +5 -1
- package/dist/validation/plugin-registration.d.ts.map +1 -1
- package/dist/validation/production-bypass-core.d.ts +69 -0
- package/dist/validation/production-bypass-core.d.ts.map +1 -0
- package/package.json +43 -8
- package/dist/assets/Asset.cjs +0 -2
- package/dist/assets/Asset.cjs.map +0 -1
- package/dist/assets/Asset.js +0 -9
- package/dist/assets/Asset.js.map +0 -1
- package/dist/assets/AssetCollection.cjs +0 -2
- package/dist/assets/AssetCollection.cjs.map +0 -1
- package/dist/assets/AssetCollection.js +0 -44
- package/dist/assets/AssetCollection.js.map +0 -1
- package/dist/assets/ColorAsset.cjs +0 -2
- package/dist/assets/ColorAsset.cjs.map +0 -1
- package/dist/assets/ColorAsset.js +0 -114
- package/dist/assets/ColorAsset.js.map +0 -1
- package/dist/assets/FontAsset.cjs +0 -9
- package/dist/assets/FontAsset.cjs.map +0 -1
- package/dist/assets/FontAsset.js +0 -173
- package/dist/assets/FontAsset.js.map +0 -1
- package/dist/assets/ImageAsset.cjs +0 -2
- package/dist/assets/ImageAsset.cjs.map +0 -1
- package/dist/assets/ImageAsset.js +0 -39
- package/dist/assets/ImageAsset.js.map +0 -1
- package/dist/assets/index.cjs +0 -2
- package/dist/assets/index.cjs.map +0 -1
- package/dist/assets/index.js +0 -119
- package/dist/assets/index.js.map +0 -1
- package/dist/common.cjs +0 -2
- package/dist/common.cjs.map +0 -1
- package/dist/common.js.map +0 -1
- package/dist/compiler/advanced-parser.cjs +0 -5
- package/dist/compiler/advanced-parser.cjs.map +0 -1
- package/dist/compiler/advanced-parser.js +0 -440
- package/dist/compiler/advanced-parser.js.map +0 -1
- package/dist/compiler/codegen.cjs +0 -6
- package/dist/compiler/codegen.cjs.map +0 -1
- package/dist/compiler/codegen.js +0 -241
- package/dist/compiler/codegen.js.map +0 -1
- package/dist/compiler/enhanced-codegen.cjs +0 -6
- package/dist/compiler/enhanced-codegen.cjs.map +0 -1
- package/dist/compiler/enhanced-codegen.js +0 -347
- package/dist/compiler/enhanced-codegen.js.map +0 -1
- package/dist/compiler/index.cjs +0 -2
- package/dist/compiler/index.cjs.map +0 -1
- package/dist/compiler/index.js.map +0 -1
- package/dist/compiler/parser.cjs +0 -5
- package/dist/compiler/parser.cjs.map +0 -1
- package/dist/compiler/parser.js +0 -275
- package/dist/compiler/parser.js.map +0 -1
- package/dist/compiler/plugin.cjs +0 -33
- package/dist/compiler/plugin.cjs.map +0 -1
- package/dist/compiler/plugin.js +0 -103
- package/dist/compiler/plugin.js.map +0 -1
- package/dist/components/BasicInput.cjs +0 -2
- package/dist/components/BasicInput.cjs.map +0 -1
- package/dist/components/BasicInput.d.ts +0 -116
- package/dist/components/BasicInput.d.ts.map +0 -1
- package/dist/components/BasicInput.js +0 -182
- package/dist/components/BasicInput.js.map +0 -1
- package/dist/components/Button.cjs +0 -7
- package/dist/components/Button.cjs.map +0 -1
- package/dist/components/Button.d.ts +0 -252
- package/dist/components/Button.d.ts.map +0 -1
- package/dist/components/Button.js +0 -408
- package/dist/components/Button.js.map +0 -1
- package/dist/components/Divider.cjs +0 -2
- package/dist/components/Divider.cjs.map +0 -1
- package/dist/components/Divider.d.ts +0 -141
- package/dist/components/Divider.d.ts.map +0 -1
- package/dist/components/Divider.js +0 -187
- package/dist/components/Divider.js.map +0 -1
- package/dist/components/EnhancedLink.cjs +0 -2
- package/dist/components/EnhancedLink.cjs.map +0 -1
- package/dist/components/EnhancedLink.d.ts +0 -365
- package/dist/components/EnhancedLink.d.ts.map +0 -1
- package/dist/components/EnhancedLink.js +0 -345
- package/dist/components/EnhancedLink.js.map +0 -1
- package/dist/components/Form.cjs +0 -2
- package/dist/components/Form.cjs.map +0 -1
- package/dist/components/Form.d.ts +0 -141
- package/dist/components/Form.d.ts.map +0 -1
- package/dist/components/Form.js +0 -244
- package/dist/components/Form.js.map +0 -1
- package/dist/components/Grid.cjs +0 -2
- package/dist/components/Grid.cjs.map +0 -1
- package/dist/components/Grid.d.ts +0 -698
- package/dist/components/Grid.d.ts.map +0 -1
- package/dist/components/Grid.js +0 -1045
- package/dist/components/Grid.js.map +0 -1
- package/dist/components/GridResponsive.cjs +0 -2
- package/dist/components/GridResponsive.cjs.map +0 -1
- package/dist/components/GridResponsive.d.ts +0 -214
- package/dist/components/GridResponsive.d.ts.map +0 -1
- package/dist/components/GridResponsive.js +0 -382
- package/dist/components/GridResponsive.js.map +0 -1
- package/dist/components/Image.cjs +0 -2
- package/dist/components/Image.cjs.map +0 -1
- package/dist/components/Image.d.ts +0 -162
- package/dist/components/Image.d.ts.map +0 -1
- package/dist/components/Image.js +0 -212
- package/dist/components/Image.js.map +0 -1
- package/dist/components/List.cjs +0 -2
- package/dist/components/List.cjs.map +0 -1
- package/dist/components/List.d.ts +0 -287
- package/dist/components/List.d.ts.map +0 -1
- package/dist/components/List.js +0 -561
- package/dist/components/List.js.map +0 -1
- package/dist/components/Menu.cjs +0 -2
- package/dist/components/Menu.cjs.map +0 -1
- package/dist/components/Menu.d.ts +0 -159
- package/dist/components/Menu.d.ts.map +0 -1
- package/dist/components/Menu.js +0 -443
- package/dist/components/Menu.js.map +0 -1
- package/dist/components/Picker.cjs +0 -2
- package/dist/components/Picker.cjs.map +0 -1
- package/dist/components/Picker.d.ts +0 -153
- package/dist/components/Picker.d.ts.map +0 -1
- package/dist/components/Picker.js +0 -478
- package/dist/components/Picker.js.map +0 -1
- package/dist/components/ScrollView.cjs +0 -6
- package/dist/components/ScrollView.cjs.map +0 -1
- package/dist/components/ScrollView.d.ts +0 -222
- package/dist/components/ScrollView.d.ts.map +0 -1
- package/dist/components/ScrollView.js +0 -363
- package/dist/components/ScrollView.js.map +0 -1
- package/dist/components/Section.cjs +0 -2
- package/dist/components/Section.cjs.map +0 -1
- package/dist/components/Section.d.ts +0 -153
- package/dist/components/Section.d.ts.map +0 -1
- package/dist/components/Section.js +0 -323
- package/dist/components/Section.js.map +0 -1
- package/dist/components/Show.cjs +0 -2
- package/dist/components/Show.cjs.map +0 -1
- package/dist/components/Show.d.ts +0 -64
- package/dist/components/Show.d.ts.map +0 -1
- package/dist/components/Show.js +0 -112
- package/dist/components/Show.js.map +0 -1
- package/dist/components/Spacer.cjs +0 -2
- package/dist/components/Spacer.cjs.map +0 -1
- package/dist/components/Spacer.d.ts +0 -35
- package/dist/components/Spacer.d.ts.map +0 -1
- package/dist/components/Spacer.js +0 -53
- package/dist/components/Spacer.js.map +0 -1
- package/dist/components/Text.cjs +0 -2
- package/dist/components/Text.cjs.map +0 -1
- package/dist/components/Text.d.ts +0 -242
- package/dist/components/Text.d.ts.map +0 -1
- package/dist/components/Text.js +0 -193
- package/dist/components/Text.js.map +0 -1
- package/dist/components/Toggle.cjs +0 -2
- package/dist/components/Toggle.cjs.map +0 -1
- package/dist/components/Toggle.d.ts +0 -207
- package/dist/components/Toggle.d.ts.map +0 -1
- package/dist/components/Toggle.js +0 -477
- package/dist/components/Toggle.js.map +0 -1
- package/dist/components/index.cjs +0 -2
- package/dist/components/index.cjs.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/wrapper.cjs +0 -2
- package/dist/components/wrapper.cjs.map +0 -1
- package/dist/components/wrapper.js +0 -484
- package/dist/components/wrapper.js.map +0 -1
- package/dist/concatenation/concatenatable.cjs +0 -2
- package/dist/concatenation/concatenatable.cjs.map +0 -1
- package/dist/concatenation/concatenatable.js +0 -118
- package/dist/concatenation/concatenatable.js.map +0 -1
- package/dist/concatenation/concatenated-component.cjs +0 -2
- package/dist/concatenation/concatenated-component.cjs.map +0 -1
- package/dist/concatenation/concatenated-component.js +0 -276
- package/dist/concatenation/concatenated-component.js.map +0 -1
- package/dist/concatenation/text-optimizer.cjs +0 -2
- package/dist/concatenation/text-optimizer.cjs.map +0 -1
- package/dist/concatenation/text-optimizer.js +0 -236
- package/dist/concatenation/text-optimizer.js.map +0 -1
- package/dist/concatenation/types.cjs +0 -2
- package/dist/concatenation/types.cjs.map +0 -1
- package/dist/concatenation/types.js +0 -13
- package/dist/concatenation/types.js.map +0 -1
- package/dist/constants/frame-utils.cjs +0 -2
- package/dist/constants/frame-utils.cjs.map +0 -1
- package/dist/constants/frame-utils.js +0 -116
- package/dist/constants/frame-utils.js.map +0 -1
- package/dist/constants/layout.cjs +0 -2
- package/dist/constants/layout.cjs.map +0 -1
- package/dist/constants/layout.js.map +0 -1
- package/dist/css-classes/component-base.cjs +0 -2
- package/dist/css-classes/component-base.cjs.map +0 -1
- package/dist/css-classes/component-base.js +0 -62
- package/dist/css-classes/component-base.js.map +0 -1
- package/dist/css-classes/css-class-manager.cjs +0 -2
- package/dist/css-classes/css-class-manager.cjs.map +0 -1
- package/dist/css-classes/css-class-manager.js +0 -209
- package/dist/css-classes/css-class-manager.js.map +0 -1
- package/dist/css-classes/dom-integration.cjs +0 -2
- package/dist/css-classes/dom-integration.cjs.map +0 -1
- package/dist/css-classes/dom-integration.js +0 -67
- package/dist/css-classes/dom-integration.js.map +0 -1
- package/dist/css-classes/enhanced-renderer.cjs +0 -2
- package/dist/css-classes/enhanced-renderer.cjs.map +0 -1
- package/dist/css-classes/enhanced-renderer.js +0 -73
- package/dist/css-classes/enhanced-renderer.js.map +0 -1
- package/dist/css-classes/utilities.cjs +0 -2
- package/dist/css-classes/utilities.cjs.map +0 -1
- package/dist/css-classes/utilities.js +0 -41
- package/dist/css-classes/utilities.js.map +0 -1
- package/dist/debug/index.d.ts +0 -61
- package/dist/debug/index.d.ts.map +0 -1
- package/dist/debug.cjs +0 -52
- package/dist/debug.cjs.map +0 -1
- package/dist/debug.js +0 -179
- package/dist/debug.js.map +0 -1
- package/dist/developer-experience/enhanced-errors.d.ts +0 -128
- package/dist/developer-experience/enhanced-errors.d.ts.map +0 -1
- package/dist/developer-experience/enhanced-types.d.ts +0 -281
- package/dist/developer-experience/enhanced-types.d.ts.map +0 -1
- package/dist/developer-experience/index.d.ts +0 -44
- package/dist/developer-experience/index.d.ts.map +0 -1
- package/dist/essential.cjs +0 -2
- package/dist/essential.cjs.map +0 -1
- package/dist/essential.js.map +0 -1
- package/dist/gradients/css-generator.cjs +0 -2
- package/dist/gradients/css-generator.cjs.map +0 -1
- package/dist/gradients/css-generator.js +0 -100
- package/dist/gradients/css-generator.js.map +0 -1
- package/dist/gradients/examples.cjs +0 -2
- package/dist/gradients/examples.cjs.map +0 -1
- package/dist/gradients/examples.js +0 -555
- package/dist/gradients/examples.js.map +0 -1
- package/dist/gradients/gradient-asset.cjs +0 -2
- package/dist/gradients/gradient-asset.cjs.map +0 -1
- package/dist/gradients/gradient-asset.js +0 -22
- package/dist/gradients/gradient-asset.js.map +0 -1
- package/dist/gradients/index.cjs +0 -2
- package/dist/gradients/index.cjs.map +0 -1
- package/dist/gradients/index.js +0 -78
- package/dist/gradients/index.js.map +0 -1
- package/dist/gradients/performance.cjs +0 -2
- package/dist/gradients/performance.cjs.map +0 -1
- package/dist/gradients/performance.js +0 -237
- package/dist/gradients/performance.js.map +0 -1
- package/dist/gradients/presets.cjs +0 -2
- package/dist/gradients/presets.cjs.map +0 -1
- package/dist/gradients/presets.js +0 -254
- package/dist/gradients/presets.js.map +0 -1
- package/dist/gradients/reactive.cjs +0 -2
- package/dist/gradients/reactive.cjs.map +0 -1
- package/dist/gradients/reactive.js +0 -239
- package/dist/gradients/reactive.js.map +0 -1
- package/dist/gradients/state-gradient-asset.cjs +0 -2
- package/dist/gradients/state-gradient-asset.cjs.map +0 -1
- package/dist/gradients/state-gradient-asset.js +0 -111
- package/dist/gradients/state-gradient-asset.js.map +0 -1
- package/dist/gradients/utils.cjs +0 -2
- package/dist/gradients/utils.cjs.map +0 -1
- package/dist/gradients/utils.js +0 -385
- package/dist/gradients/utils.js.map +0 -1
- package/dist/gradients/validation.cjs +0 -2
- package/dist/gradients/validation.cjs.map +0 -1
- package/dist/gradients/validation.js +0 -209
- package/dist/gradients/validation.js.map +0 -1
- package/dist/index.cjs +0 -2
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index2.cjs +0 -2
- package/dist/index2.cjs.map +0 -1
- package/dist/index2.js +0 -293
- package/dist/index2.js.map +0 -1
- package/dist/lifecycle/hooks.cjs +0 -2
- package/dist/lifecycle/hooks.cjs.map +0 -1
- package/dist/lifecycle/hooks.js +0 -159
- package/dist/lifecycle/hooks.js.map +0 -1
- package/dist/minimal-prod.cjs +0 -2
- package/dist/minimal-prod.cjs.map +0 -1
- package/dist/minimal-prod.js.map +0 -1
- package/dist/minimal.cjs +0 -2
- package/dist/minimal.cjs.map +0 -1
- package/dist/minimal.js.map +0 -1
- package/dist/modifiers/as-html-validator.cjs +0 -2
- package/dist/modifiers/as-html-validator.cjs.map +0 -1
- package/dist/modifiers/as-html-validator.js +0 -47
- package/dist/modifiers/as-html-validator.js.map +0 -1
- package/dist/modifiers/as-html.cjs +0 -2
- package/dist/modifiers/as-html.cjs.map +0 -1
- package/dist/modifiers/as-html.js +0 -71
- package/dist/modifiers/as-html.js.map +0 -1
- package/dist/modifiers/attributes.cjs +0 -2
- package/dist/modifiers/attributes.cjs.map +0 -1
- package/dist/modifiers/attributes.d.ts +0 -203
- package/dist/modifiers/attributes.d.ts.map +0 -1
- package/dist/modifiers/attributes.js +0 -272
- package/dist/modifiers/attributes.js.map +0 -1
- package/dist/modifiers/backdrop.cjs +0 -2
- package/dist/modifiers/backdrop.cjs.map +0 -1
- package/dist/modifiers/backdrop.d.ts +0 -59
- package/dist/modifiers/backdrop.d.ts.map +0 -1
- package/dist/modifiers/backdrop.js +0 -109
- package/dist/modifiers/backdrop.js.map +0 -1
- package/dist/modifiers/background.cjs +0 -2
- package/dist/modifiers/background.cjs.map +0 -1
- package/dist/modifiers/background.js +0 -67
- package/dist/modifiers/background.js.map +0 -1
- package/dist/modifiers/base.cjs +0 -25
- package/dist/modifiers/base.cjs.map +0 -1
- package/dist/modifiers/base.js.map +0 -1
- package/dist/modifiers/basic-sanitizer.cjs +0 -2
- package/dist/modifiers/basic-sanitizer.cjs.map +0 -1
- package/dist/modifiers/basic-sanitizer.js +0 -162
- package/dist/modifiers/basic-sanitizer.js.map +0 -1
- package/dist/modifiers/border.cjs +0 -2
- package/dist/modifiers/border.cjs.map +0 -1
- package/dist/modifiers/border.d.ts +0 -217
- package/dist/modifiers/border.d.ts.map +0 -1
- package/dist/modifiers/border.js +0 -160
- package/dist/modifiers/border.js.map +0 -1
- package/dist/modifiers/builder.cjs +0 -2
- package/dist/modifiers/builder.cjs.map +0 -1
- package/dist/modifiers/builder.js.map +0 -1
- package/dist/modifiers/core.cjs +0 -2
- package/dist/modifiers/core.cjs.map +0 -1
- package/dist/modifiers/core.js +0 -398
- package/dist/modifiers/core.js.map +0 -1
- package/dist/modifiers/css.cjs +0 -2
- package/dist/modifiers/css.cjs.map +0 -1
- package/dist/modifiers/css.js +0 -50
- package/dist/modifiers/css.js.map +0 -1
- package/dist/modifiers/effects.cjs +0 -2
- package/dist/modifiers/effects.cjs.map +0 -1
- package/dist/modifiers/effects.d.ts +0 -159
- package/dist/modifiers/effects.d.ts.map +0 -1
- package/dist/modifiers/effects.js +0 -178
- package/dist/modifiers/effects.js.map +0 -1
- package/dist/modifiers/elements.cjs +0 -2
- package/dist/modifiers/elements.cjs.map +0 -1
- package/dist/modifiers/elements.d.ts +0 -240
- package/dist/modifiers/elements.d.ts.map +0 -1
- package/dist/modifiers/elements.js +0 -216
- package/dist/modifiers/elements.js.map +0 -1
- package/dist/modifiers/filters.cjs +0 -2
- package/dist/modifiers/filters.cjs.map +0 -1
- package/dist/modifiers/filters.d.ts +0 -275
- package/dist/modifiers/filters.d.ts.map +0 -1
- package/dist/modifiers/filters.js +0 -223
- package/dist/modifiers/filters.js.map +0 -1
- package/dist/modifiers/flexbox.cjs +0 -2
- package/dist/modifiers/flexbox.cjs.map +0 -1
- package/dist/modifiers/flexbox.d.ts +0 -82
- package/dist/modifiers/flexbox.d.ts.map +0 -1
- package/dist/modifiers/flexbox.js +0 -56
- package/dist/modifiers/flexbox.js.map +0 -1
- package/dist/modifiers/font.cjs +0 -2
- package/dist/modifiers/font.cjs.map +0 -1
- package/dist/modifiers/font.d.ts +0 -71
- package/dist/modifiers/font.d.ts.map +0 -1
- package/dist/modifiers/font.js +0 -60
- package/dist/modifiers/font.js.map +0 -1
- package/dist/modifiers/grid.cjs +0 -2
- package/dist/modifiers/grid.cjs.map +0 -1
- package/dist/modifiers/grid.d.ts +0 -92
- package/dist/modifiers/grid.d.ts.map +0 -1
- package/dist/modifiers/grid.js +0 -92
- package/dist/modifiers/grid.js.map +0 -1
- package/dist/modifiers/margin.cjs +0 -2
- package/dist/modifiers/margin.cjs.map +0 -1
- package/dist/modifiers/margin.d.ts +0 -128
- package/dist/modifiers/margin.d.ts.map +0 -1
- package/dist/modifiers/margin.js +0 -65
- package/dist/modifiers/margin.js.map +0 -1
- package/dist/modifiers/padding.cjs +0 -2
- package/dist/modifiers/padding.cjs.map +0 -1
- package/dist/modifiers/padding.d.ts +0 -204
- package/dist/modifiers/padding.d.ts.map +0 -1
- package/dist/modifiers/padding.js +0 -109
- package/dist/modifiers/padding.js.map +0 -1
- package/dist/modifiers/registry.cjs +0 -2
- package/dist/modifiers/registry.cjs.map +0 -1
- package/dist/modifiers/registry.js.map +0 -1
- package/dist/modifiers/responsive/advanced-utilities.cjs +0 -2
- package/dist/modifiers/responsive/advanced-utilities.cjs.map +0 -1
- package/dist/modifiers/responsive/advanced-utilities.d.ts +0 -118
- package/dist/modifiers/responsive/advanced-utilities.d.ts.map +0 -1
- package/dist/modifiers/responsive/advanced-utilities.js +0 -291
- package/dist/modifiers/responsive/advanced-utilities.js.map +0 -1
- package/dist/modifiers/responsive/breakpoints.cjs +0 -2
- package/dist/modifiers/responsive/breakpoints.cjs.map +0 -1
- package/dist/modifiers/responsive/breakpoints.d.ts +0 -81
- package/dist/modifiers/responsive/breakpoints.d.ts.map +0 -1
- package/dist/modifiers/responsive/breakpoints.js +0 -168
- package/dist/modifiers/responsive/breakpoints.js.map +0 -1
- package/dist/modifiers/responsive/css-generator.cjs +0 -5
- package/dist/modifiers/responsive/css-generator.cjs.map +0 -1
- package/dist/modifiers/responsive/css-generator.d.ts +0 -100
- package/dist/modifiers/responsive/css-generator.d.ts.map +0 -1
- package/dist/modifiers/responsive/css-generator.js +0 -261
- package/dist/modifiers/responsive/css-generator.js.map +0 -1
- package/dist/modifiers/responsive/dev-tools.cjs +0 -77
- package/dist/modifiers/responsive/dev-tools.cjs.map +0 -1
- package/dist/modifiers/responsive/dev-tools.d.ts +0 -107
- package/dist/modifiers/responsive/dev-tools.d.ts.map +0 -1
- package/dist/modifiers/responsive/dev-tools.js +0 -380
- package/dist/modifiers/responsive/dev-tools.js.map +0 -1
- package/dist/modifiers/responsive/index.d.ts +0 -28
- package/dist/modifiers/responsive/index.d.ts.map +0 -1
- package/dist/modifiers/responsive/layout-patterns.cjs +0 -2
- package/dist/modifiers/responsive/layout-patterns.cjs.map +0 -1
- package/dist/modifiers/responsive/layout-patterns.d.ts +0 -230
- package/dist/modifiers/responsive/layout-patterns.d.ts.map +0 -1
- package/dist/modifiers/responsive/layout-patterns.js +0 -254
- package/dist/modifiers/responsive/layout-patterns.js.map +0 -1
- package/dist/modifiers/responsive/performance.cjs +0 -3
- package/dist/modifiers/responsive/performance.cjs.map +0 -1
- package/dist/modifiers/responsive/performance.d.ts +0 -130
- package/dist/modifiers/responsive/performance.d.ts.map +0 -1
- package/dist/modifiers/responsive/performance.js +0 -212
- package/dist/modifiers/responsive/performance.js.map +0 -1
- package/dist/modifiers/responsive/responsive-builder.cjs +0 -2
- package/dist/modifiers/responsive/responsive-builder.cjs.map +0 -1
- package/dist/modifiers/responsive/responsive-builder.d.ts +0 -133
- package/dist/modifiers/responsive/responsive-builder.d.ts.map +0 -1
- package/dist/modifiers/responsive/responsive-builder.js +0 -272
- package/dist/modifiers/responsive/responsive-builder.js.map +0 -1
- package/dist/modifiers/responsive/responsive-modifier.cjs +0 -3
- package/dist/modifiers/responsive/responsive-modifier.cjs.map +0 -1
- package/dist/modifiers/responsive/responsive-modifier.d.ts +0 -123
- package/dist/modifiers/responsive/responsive-modifier.d.ts.map +0 -1
- package/dist/modifiers/responsive/responsive-modifier.js +0 -204
- package/dist/modifiers/responsive/responsive-modifier.js.map +0 -1
- package/dist/modifiers/responsive/types.cjs +0 -2
- package/dist/modifiers/responsive/types.cjs.map +0 -1
- package/dist/modifiers/responsive/types.d.ts +0 -183
- package/dist/modifiers/responsive/types.d.ts.map +0 -1
- package/dist/modifiers/responsive/types.js +0 -26
- package/dist/modifiers/responsive/types.js.map +0 -1
- package/dist/modifiers/responsive/utilities.cjs +0 -16
- package/dist/modifiers/responsive/utilities.cjs.map +0 -1
- package/dist/modifiers/responsive/utilities.d.ts +0 -149
- package/dist/modifiers/responsive/utilities.d.ts.map +0 -1
- package/dist/modifiers/responsive/utilities.js +0 -273
- package/dist/modifiers/responsive/utilities.js.map +0 -1
- package/dist/modifiers/scroll.cjs +0 -2
- package/dist/modifiers/scroll.cjs.map +0 -1
- package/dist/modifiers/scroll.d.ts +0 -143
- package/dist/modifiers/scroll.d.ts.map +0 -1
- package/dist/modifiers/scroll.js +0 -82
- package/dist/modifiers/scroll.js.map +0 -1
- package/dist/modifiers/shadows.cjs +0 -2
- package/dist/modifiers/shadows.cjs.map +0 -1
- package/dist/modifiers/shadows.d.ts +0 -114
- package/dist/modifiers/shadows.d.ts.map +0 -1
- package/dist/modifiers/shadows.js +0 -147
- package/dist/modifiers/shadows.js.map +0 -1
- package/dist/modifiers/size.cjs +0 -2
- package/dist/modifiers/size.cjs.map +0 -1
- package/dist/modifiers/size.d.ts +0 -113
- package/dist/modifiers/size.d.ts.map +0 -1
- package/dist/modifiers/size.js +0 -74
- package/dist/modifiers/size.js.map +0 -1
- package/dist/modifiers/text.cjs +0 -2
- package/dist/modifiers/text.cjs.map +0 -1
- package/dist/modifiers/text.d.ts +0 -147
- package/dist/modifiers/text.d.ts.map +0 -1
- package/dist/modifiers/text.js +0 -166
- package/dist/modifiers/text.js.map +0 -1
- package/dist/modifiers/transformations.cjs +0 -2
- package/dist/modifiers/transformations.cjs.map +0 -1
- package/dist/modifiers/transformations.d.ts +0 -329
- package/dist/modifiers/transformations.d.ts.map +0 -1
- package/dist/modifiers/transformations.js +0 -216
- package/dist/modifiers/transformations.js.map +0 -1
- package/dist/modifiers/transitions.cjs +0 -2
- package/dist/modifiers/transitions.cjs.map +0 -1
- package/dist/modifiers/transitions.d.ts +0 -98
- package/dist/modifiers/transitions.d.ts.map +0 -1
- package/dist/modifiers/transitions.js +0 -102
- package/dist/modifiers/transitions.js.map +0 -1
- package/dist/modifiers/types.cjs +0 -2
- package/dist/modifiers/types.cjs.map +0 -1
- package/dist/modifiers/types.js.map +0 -1
- package/dist/modifiers/typography.cjs +0 -2
- package/dist/modifiers/typography.cjs.map +0 -1
- package/dist/modifiers/typography.d.ts +0 -192
- package/dist/modifiers/typography.d.ts.map +0 -1
- package/dist/modifiers/typography.js +0 -76
- package/dist/modifiers/typography.js.map +0 -1
- package/dist/modifiers/utility.cjs +0 -2
- package/dist/modifiers/utility.cjs.map +0 -1
- package/dist/modifiers/utility.d.ts +0 -69
- package/dist/modifiers/utility.d.ts.map +0 -1
- package/dist/modifiers/utility.js +0 -71
- package/dist/modifiers/utility.js.map +0 -1
- package/dist/modifiers/utils.cjs +0 -2
- package/dist/modifiers/utils.cjs.map +0 -1
- package/dist/modifiers/utils.d.ts.map +0 -1
- package/dist/modifiers/utils.js +0 -250
- package/dist/modifiers/utils.js.map +0 -1
- package/dist/plugins/index.cjs +0 -2
- package/dist/plugins/index.cjs.map +0 -1
- package/dist/plugins/index.js.map +0 -1
- package/dist/plugins/legacy-adapter.cjs +0 -2
- package/dist/plugins/legacy-adapter.cjs.map +0 -1
- package/dist/plugins/legacy-adapter.js +0 -30
- package/dist/plugins/legacy-adapter.js.map +0 -1
- package/dist/plugins/simplified-component-registry.cjs +0 -2
- package/dist/plugins/simplified-component-registry.cjs.map +0 -1
- package/dist/plugins/simplified-component-registry.js +0 -71
- package/dist/plugins/simplified-component-registry.js.map +0 -1
- package/dist/plugins/simplified-error-handler.cjs +0 -2
- package/dist/plugins/simplified-error-handler.cjs.map +0 -1
- package/dist/plugins/simplified-error-handler.d.ts +0 -83
- package/dist/plugins/simplified-error-handler.d.ts.map +0 -1
- package/dist/plugins/simplified-error-handler.js +0 -154
- package/dist/plugins/simplified-error-handler.js.map +0 -1
- package/dist/plugins/simplified-lazy-loader.cjs +0 -2
- package/dist/plugins/simplified-lazy-loader.cjs.map +0 -1
- package/dist/plugins/simplified-lazy-loader.js +0 -129
- package/dist/plugins/simplified-lazy-loader.js.map +0 -1
- package/dist/plugins/simplified-plugin-manager.cjs +0 -2
- package/dist/plugins/simplified-plugin-manager.cjs.map +0 -1
- package/dist/plugins/simplified-plugin-manager.js +0 -51
- package/dist/plugins/simplified-plugin-manager.js.map +0 -1
- package/dist/plugins/simplified-tachui-instance.cjs +0 -2
- package/dist/plugins/simplified-tachui-instance.cjs.map +0 -1
- package/dist/plugins/simplified-tachui-instance.js +0 -88
- package/dist/plugins/simplified-tachui-instance.js.map +0 -1
- package/dist/plugins/simplified-types.cjs +0 -2
- package/dist/plugins/simplified-types.cjs.map +0 -1
- package/dist/plugins/simplified-types.js +0 -9
- package/dist/plugins/simplified-types.js.map +0 -1
- package/dist/plugins/simplified-utils.cjs +0 -2
- package/dist/plugins/simplified-utils.cjs.map +0 -1
- package/dist/plugins/simplified-utils.js +0 -40
- package/dist/plugins/simplified-utils.js.map +0 -1
- package/dist/reactive/cleanup.cjs +0 -2
- package/dist/reactive/cleanup.cjs.map +0 -1
- package/dist/reactive/cleanup.js +0 -62
- package/dist/reactive/cleanup.js.map +0 -1
- package/dist/reactive/computed.cjs +0 -2
- package/dist/reactive/computed.cjs.map +0 -1
- package/dist/reactive/computed.js +0 -121
- package/dist/reactive/computed.js.map +0 -1
- package/dist/reactive/context.cjs +0 -2
- package/dist/reactive/context.cjs.map +0 -1
- package/dist/reactive/context.js +0 -143
- package/dist/reactive/context.js.map +0 -1
- package/dist/reactive/effect.cjs +0 -2
- package/dist/reactive/effect.cjs.map +0 -1
- package/dist/reactive/effect.js +0 -67
- package/dist/reactive/effect.js.map +0 -1
- package/dist/reactive/enhanced-effect.cjs +0 -2
- package/dist/reactive/enhanced-effect.cjs.map +0 -1
- package/dist/reactive/enhanced-effect.js +0 -153
- package/dist/reactive/enhanced-effect.js.map +0 -1
- package/dist/reactive/enhanced-signal.cjs +0 -2
- package/dist/reactive/enhanced-signal.cjs.map +0 -1
- package/dist/reactive/enhanced-signal.js +0 -117
- package/dist/reactive/enhanced-signal.js.map +0 -1
- package/dist/reactive/equality.cjs +0 -2
- package/dist/reactive/equality.cjs.map +0 -1
- package/dist/reactive/equality.js +0 -66
- package/dist/reactive/equality.js.map +0 -1
- package/dist/reactive/index.cjs +0 -2
- package/dist/reactive/index.cjs.map +0 -1
- package/dist/reactive/index.js.map +0 -1
- package/dist/reactive/migration.cjs +0 -18
- package/dist/reactive/migration.cjs.map +0 -1
- package/dist/reactive/migration.js +0 -164
- package/dist/reactive/migration.js.map +0 -1
- package/dist/reactive/ownership.cjs +0 -2
- package/dist/reactive/ownership.cjs.map +0 -1
- package/dist/reactive/ownership.js +0 -34
- package/dist/reactive/ownership.js.map +0 -1
- package/dist/reactive/scheduler.cjs +0 -2
- package/dist/reactive/scheduler.cjs.map +0 -1
- package/dist/reactive/scheduler.js +0 -111
- package/dist/reactive/scheduler.js.map +0 -1
- package/dist/reactive/signal.cjs +0 -2
- package/dist/reactive/signal.cjs.map +0 -1
- package/dist/reactive/signal.js +0 -96
- package/dist/reactive/signal.js.map +0 -1
- package/dist/reactive/theme.cjs +0 -2
- package/dist/reactive/theme.cjs.map +0 -1
- package/dist/reactive/theme.js +0 -27
- package/dist/reactive/theme.js.map +0 -1
- package/dist/reactive/types.cjs +0 -2
- package/dist/reactive/types.cjs.map +0 -1
- package/dist/reactive/types.js.map +0 -1
- package/dist/reactive/unified-scheduler.cjs +0 -2
- package/dist/reactive/unified-scheduler.cjs.map +0 -1
- package/dist/reactive/unified-scheduler.js +0 -219
- package/dist/reactive/unified-scheduler.js.map +0 -1
- package/dist/runtime/component-context.cjs +0 -2
- package/dist/runtime/component-context.cjs.map +0 -1
- package/dist/runtime/component-context.js +0 -177
- package/dist/runtime/component-context.js.map +0 -1
- package/dist/runtime/component.cjs +0 -2
- package/dist/runtime/component.cjs.map +0 -1
- package/dist/runtime/component.js +0 -238
- package/dist/runtime/component.js.map +0 -1
- package/dist/runtime/context.cjs +0 -2
- package/dist/runtime/context.cjs.map +0 -1
- package/dist/runtime/context.js +0 -289
- package/dist/runtime/context.js.map +0 -1
- package/dist/runtime/dev-tools.cjs +0 -2
- package/dist/runtime/dev-tools.cjs.map +0 -1
- package/dist/runtime/dev-tools.d.ts +0 -240
- package/dist/runtime/dev-tools.d.ts.map +0 -1
- package/dist/runtime/dev-tools.js +0 -391
- package/dist/runtime/dev-tools.js.map +0 -1
- package/dist/runtime/development-warnings.cjs +0 -2
- package/dist/runtime/development-warnings.cjs.map +0 -1
- package/dist/runtime/development-warnings.d.ts +0 -42
- package/dist/runtime/development-warnings.d.ts.map +0 -1
- package/dist/runtime/development-warnings.js +0 -69
- package/dist/runtime/development-warnings.js.map +0 -1
- package/dist/runtime/dom-bridge.cjs +0 -2
- package/dist/runtime/dom-bridge.cjs.map +0 -1
- package/dist/runtime/dom-bridge.js.map +0 -1
- package/dist/runtime/element-override.cjs +0 -2
- package/dist/runtime/element-override.cjs.map +0 -1
- package/dist/runtime/element-override.js +0 -214
- package/dist/runtime/element-override.js.map +0 -1
- package/dist/runtime/error-boundary.cjs +0 -2
- package/dist/runtime/error-boundary.cjs.map +0 -1
- package/dist/runtime/error-boundary.d.ts +0 -302
- package/dist/runtime/error-boundary.d.ts.map +0 -1
- package/dist/runtime/error-boundary.js +0 -559
- package/dist/runtime/error-boundary.js.map +0 -1
- package/dist/runtime/error-recovery.cjs +0 -2
- package/dist/runtime/error-recovery.cjs.map +0 -1
- package/dist/runtime/error-recovery.d.ts +0 -267
- package/dist/runtime/error-recovery.d.ts.map +0 -1
- package/dist/runtime/error-recovery.js +0 -385
- package/dist/runtime/error-recovery.js.map +0 -1
- package/dist/runtime/error-reporting.cjs +0 -3
- package/dist/runtime/error-reporting.cjs.map +0 -1
- package/dist/runtime/error-reporting.d.ts +0 -287
- package/dist/runtime/error-reporting.d.ts.map +0 -1
- package/dist/runtime/error-reporting.js +0 -479
- package/dist/runtime/error-reporting.js.map +0 -1
- package/dist/runtime/error-utils.cjs +0 -3
- package/dist/runtime/error-utils.cjs.map +0 -1
- package/dist/runtime/error-utils.d.ts +0 -204
- package/dist/runtime/error-utils.d.ts.map +0 -1
- package/dist/runtime/error-utils.js +0 -352
- package/dist/runtime/error-utils.js.map +0 -1
- package/dist/runtime/lazy-component.cjs +0 -2
- package/dist/runtime/lazy-component.cjs.map +0 -1
- package/dist/runtime/lazy-component.js +0 -129
- package/dist/runtime/lazy-component.js.map +0 -1
- package/dist/runtime/lifecycle.cjs +0 -2
- package/dist/runtime/lifecycle.cjs.map +0 -1
- package/dist/runtime/lifecycle.js +0 -7
- package/dist/runtime/lifecycle.js.map +0 -1
- package/dist/runtime/mounting.cjs +0 -2
- package/dist/runtime/mounting.cjs.map +0 -1
- package/dist/runtime/mounting.js +0 -12
- package/dist/runtime/mounting.js.map +0 -1
- package/dist/runtime/optimization.cjs +0 -2
- package/dist/runtime/optimization.cjs.map +0 -1
- package/dist/runtime/optimization.js +0 -6
- package/dist/runtime/optimization.js.map +0 -1
- package/dist/runtime/performance.cjs +0 -2
- package/dist/runtime/performance.cjs.map +0 -1
- package/dist/runtime/performance.d.ts +0 -217
- package/dist/runtime/performance.d.ts.map +0 -1
- package/dist/runtime/performance.js +0 -399
- package/dist/runtime/performance.js.map +0 -1
- package/dist/runtime/props.cjs +0 -2
- package/dist/runtime/props.cjs.map +0 -1
- package/dist/runtime/props.js +0 -265
- package/dist/runtime/props.js.map +0 -1
- package/dist/runtime/renderer.cjs +0 -2
- package/dist/runtime/renderer.cjs.map +0 -1
- package/dist/runtime/renderer.js.map +0 -1
- package/dist/runtime/semantic-role-manager.cjs +0 -2
- package/dist/runtime/semantic-role-manager.cjs.map +0 -1
- package/dist/runtime/semantic-role-manager.js +0 -82
- package/dist/runtime/semantic-role-manager.js.map +0 -1
- package/dist/state/binding.cjs +0 -2
- package/dist/state/binding.cjs.map +0 -1
- package/dist/state/binding.js +0 -155
- package/dist/state/binding.js.map +0 -1
- package/dist/state/environment.cjs +0 -2
- package/dist/state/environment.cjs.map +0 -1
- package/dist/state/environment.js +0 -115
- package/dist/state/environment.js.map +0 -1
- package/dist/state/index.cjs +0 -2
- package/dist/state/index.cjs.map +0 -1
- package/dist/state/index.js +0 -63
- package/dist/state/index.js.map +0 -1
- package/dist/state/observed-object.cjs +0 -2
- package/dist/state/observed-object.cjs.map +0 -1
- package/dist/state/observed-object.js +0 -163
- package/dist/state/observed-object.js.map +0 -1
- package/dist/state/state-manager.cjs +0 -2
- package/dist/state/state-manager.cjs.map +0 -1
- package/dist/state/state-manager.js +0 -233
- package/dist/state/state-manager.js.map +0 -1
- package/dist/state/state.cjs +0 -2
- package/dist/state/state.cjs.map +0 -1
- package/dist/state/state.js +0 -159
- package/dist/state/state.js.map +0 -1
- package/dist/sui-compat.cjs +0 -2
- package/dist/sui-compat.cjs.map +0 -1
- package/dist/sui-compat.d.ts +0 -110
- package/dist/sui-compat.d.ts.map +0 -1
- package/dist/sui-compat.js +0 -88
- package/dist/sui-compat.js.map +0 -1
- package/dist/validation/advanced-debugging.cjs +0 -44
- package/dist/validation/advanced-debugging.cjs.map +0 -1
- package/dist/validation/advanced-debugging.d.ts +0 -319
- package/dist/validation/advanced-debugging.d.ts.map +0 -1
- package/dist/validation/advanced-debugging.js +0 -455
- package/dist/validation/advanced-debugging.js.map +0 -1
- package/dist/validation/build-time/detection.cjs +0 -2
- package/dist/validation/build-time/detection.cjs.map +0 -1
- package/dist/validation/build-time/detection.d.ts +0 -32
- package/dist/validation/build-time/detection.d.ts.map +0 -1
- package/dist/validation/build-time/detection.js +0 -199
- package/dist/validation/build-time/detection.js.map +0 -1
- package/dist/validation/build-time/index.cjs +0 -2
- package/dist/validation/build-time/index.cjs.map +0 -1
- package/dist/validation/build-time/index.d.ts +0 -84
- package/dist/validation/build-time/index.d.ts.map +0 -1
- package/dist/validation/build-time/index.js +0 -122
- package/dist/validation/build-time/index.js.map +0 -1
- package/dist/validation/build-time/plugins.cjs +0 -3
- package/dist/validation/build-time/plugins.cjs.map +0 -1
- package/dist/validation/build-time/plugins.d.ts +0 -75
- package/dist/validation/build-time/plugins.d.ts.map +0 -1
- package/dist/validation/build-time/plugins.js +0 -282
- package/dist/validation/build-time/plugins.js.map +0 -1
- package/dist/validation/build-time/rules.cjs +0 -2
- package/dist/validation/build-time/rules.cjs.map +0 -1
- package/dist/validation/build-time/rules.d.ts +0 -73
- package/dist/validation/build-time/rules.d.ts.map +0 -1
- package/dist/validation/build-time/rules.js +0 -576
- package/dist/validation/build-time/rules.js.map +0 -1
- package/dist/validation/build-time/transformer.cjs +0 -3
- package/dist/validation/build-time/transformer.cjs.map +0 -1
- package/dist/validation/build-time/transformer.d.ts +0 -23
- package/dist/validation/build-time/transformer.d.ts.map +0 -1
- package/dist/validation/build-time/transformer.js +0 -177
- package/dist/validation/build-time/transformer.js.map +0 -1
- package/dist/validation/build-time/types.d.ts +0 -212
- package/dist/validation/build-time/types.d.ts.map +0 -1
- package/dist/validation/comprehensive.cjs +0 -9
- package/dist/validation/comprehensive.cjs.map +0 -1
- package/dist/validation/comprehensive.d.ts +0 -160
- package/dist/validation/comprehensive.d.ts.map +0 -1
- package/dist/validation/comprehensive.js +0 -916
- package/dist/validation/comprehensive.js.map +0 -1
- package/dist/validation/debug-tools.cjs +0 -16
- package/dist/validation/debug-tools.cjs.map +0 -1
- package/dist/validation/debug-tools.d.ts +0 -251
- package/dist/validation/debug-tools.d.ts.map +0 -1
- package/dist/validation/debug-tools.js +0 -405
- package/dist/validation/debug-tools.js.map +0 -1
- package/dist/validation/developer-experience.cjs +0 -17
- package/dist/validation/developer-experience.cjs.map +0 -1
- package/dist/validation/developer-experience.d.ts +0 -243
- package/dist/validation/developer-experience.d.ts.map +0 -1
- package/dist/validation/developer-experience.js +0 -433
- package/dist/validation/developer-experience.js.map +0 -1
- package/dist/validation/documentation-integration.cjs +0 -7
- package/dist/validation/documentation-integration.cjs.map +0 -1
- package/dist/validation/documentation-integration.d.ts +0 -269
- package/dist/validation/documentation-integration.d.ts.map +0 -1
- package/dist/validation/documentation-integration.js +0 -440
- package/dist/validation/documentation-integration.js.map +0 -1
- package/dist/validation/enhanced-runtime.cjs +0 -6
- package/dist/validation/enhanced-runtime.cjs.map +0 -1
- package/dist/validation/enhanced-runtime.d.ts +0 -279
- package/dist/validation/enhanced-runtime.d.ts.map +0 -1
- package/dist/validation/enhanced-runtime.js +0 -465
- package/dist/validation/enhanced-runtime.js.map +0 -1
- package/dist/validation/error-reporting.cjs +0 -32
- package/dist/validation/error-reporting.cjs.map +0 -1
- package/dist/validation/error-reporting.d.ts +0 -186
- package/dist/validation/error-reporting.d.ts.map +0 -1
- package/dist/validation/error-reporting.js +0 -370
- package/dist/validation/error-reporting.js.map +0 -1
- package/dist/validation/ide-integration.cjs +0 -85
- package/dist/validation/ide-integration.cjs.map +0 -1
- package/dist/validation/ide-integration.d.ts +0 -328
- package/dist/validation/ide-integration.d.ts.map +0 -1
- package/dist/validation/ide-integration.js +0 -557
- package/dist/validation/ide-integration.js.map +0 -1
- package/dist/validation/index.cjs +0 -6
- package/dist/validation/index.cjs.map +0 -1
- package/dist/validation/index.js.map +0 -1
- package/dist/validation/lifecycle-validation.cjs +0 -2
- package/dist/validation/lifecycle-validation.cjs.map +0 -1
- package/dist/validation/lifecycle-validation.js +0 -314
- package/dist/validation/lifecycle-validation.js.map +0 -1
- package/dist/validation/performance-optimizer.cjs +0 -2
- package/dist/validation/performance-optimizer.cjs.map +0 -1
- package/dist/validation/performance-optimizer.d.ts +0 -218
- package/dist/validation/performance-optimizer.d.ts.map +0 -1
- package/dist/validation/performance-optimizer.js +0 -338
- package/dist/validation/performance-optimizer.js.map +0 -1
- package/dist/validation/plugin-registration.cjs +0 -2
- package/dist/validation/plugin-registration.cjs.map +0 -1
- package/dist/validation/plugin-registration.js +0 -126
- package/dist/validation/plugin-registration.js.map +0 -1
- package/dist/validation/production-bypass.cjs +0 -2
- package/dist/validation/production-bypass.cjs.map +0 -1
- package/dist/validation/production-bypass.d.ts +0 -175
- package/dist/validation/production-bypass.d.ts.map +0 -1
- package/dist/validation/production-bypass.js +0 -218
- package/dist/validation/production-bypass.js.map +0 -1
- package/dist/validation/simple.cjs +0 -9
- package/dist/validation/simple.cjs.map +0 -1
- package/dist/validation/simple.d.ts +0 -111
- package/dist/validation/simple.d.ts.map +0 -1
- package/dist/validation/simple.js +0 -146
- package/dist/validation/simple.js.map +0 -1
- package/dist/viewport/adapters/web-adapter.cjs +0 -70
- package/dist/viewport/adapters/web-adapter.cjs.map +0 -1
- package/dist/viewport/adapters/web-adapter.d.ts +0 -227
- package/dist/viewport/adapters/web-adapter.d.ts.map +0 -1
- package/dist/viewport/adapters/web-adapter.js +0 -823
- package/dist/viewport/adapters/web-adapter.js.map +0 -1
- package/dist/viewport/components.cjs +0 -2
- package/dist/viewport/components.cjs.map +0 -1
- package/dist/viewport/components.d.ts +0 -131
- package/dist/viewport/components.d.ts.map +0 -1
- package/dist/viewport/components.js +0 -298
- package/dist/viewport/components.js.map +0 -1
- package/dist/viewport/environment.cjs +0 -2
- package/dist/viewport/environment.cjs.map +0 -1
- package/dist/viewport/environment.d.ts +0 -75
- package/dist/viewport/environment.d.ts.map +0 -1
- package/dist/viewport/environment.js +0 -86
- package/dist/viewport/environment.js.map +0 -1
- package/dist/viewport/index.cjs +0 -2
- package/dist/viewport/index.cjs.map +0 -1
- package/dist/viewport/index.d.ts +0 -138
- package/dist/viewport/index.d.ts.map +0 -1
- package/dist/viewport/index.js +0 -166
- package/dist/viewport/index.js.map +0 -1
- package/dist/viewport/platform-detection.cjs +0 -2
- package/dist/viewport/platform-detection.cjs.map +0 -1
- package/dist/viewport/platform-detection.d.ts +0 -59
- package/dist/viewport/platform-detection.d.ts.map +0 -1
- package/dist/viewport/platform-detection.js +0 -205
- package/dist/viewport/platform-detection.js.map +0 -1
- package/dist/viewport/types.cjs +0 -2
- package/dist/viewport/types.cjs.map +0 -1
- package/dist/viewport/types.d.ts +0 -301
- package/dist/viewport/types.d.ts.map +0 -1
- package/dist/viewport/types.js +0 -13
- package/dist/viewport/types.js.map +0 -1
- package/dist/viewport/viewport-manager.cjs +0 -2
- package/dist/viewport/viewport-manager.cjs.map +0 -1
- package/dist/viewport/viewport-manager.d.ts +0 -118
- package/dist/viewport/viewport-manager.d.ts.map +0 -1
- package/dist/viewport/viewport-manager.js +0 -524
- package/dist/viewport/viewport-manager.js.map +0 -1
- package/src/assets/Asset.ts +0 -11
- package/src/assets/AssetCollection.ts +0 -99
- package/src/assets/ColorAsset.ts +0 -210
- package/src/assets/FontAsset.ts +0 -380
- package/src/assets/ImageAsset.ts +0 -91
- package/src/assets/README.md +0 -190
- package/src/assets/index.ts +0 -175
- package/src/assets/test-assets.ts +0 -69
- package/src/assets/test-integration.ts +0 -46
- package/src/assets/test-simple.ts +0 -28
- package/src/assets/types.ts +0 -79
- package/src/bundles/common.ts +0 -30
- package/src/bundles/complete.ts +0 -29
- package/src/bundles/essential.ts +0 -26
- package/src/bundles/minimal.ts +0 -26
- package/src/bundles/production-minimal.ts +0 -67
- package/src/compiler/advanced-parser.ts +0 -871
- package/src/compiler/codegen.ts +0 -450
- package/src/compiler/enhanced-codegen.ts +0 -729
- package/src/compiler/index.ts +0 -25
- package/src/compiler/parser.ts +0 -461
- package/src/compiler/plugin.ts +0 -181
- package/src/compiler/types.ts +0 -177
- package/src/components/BasicInput.ts +0 -352
- package/src/components/Button.ts +0 -963
- package/src/components/Divider.ts +0 -341
- package/src/components/EnhancedLink.ts +0 -676
- package/src/components/Form.ts +0 -414
- package/src/components/Grid.ts +0 -2507
- package/src/components/GridResponsive.ts +0 -637
- package/src/components/Image.ts +0 -426
- package/src/components/List.ts +0 -1084
- package/src/components/Menu.ts +0 -807
- package/src/components/Picker.ts +0 -678
- package/src/components/ScrollView.ts +0 -725
- package/src/components/Section.ts +0 -472
- package/src/components/Show.ts +0 -205
- package/src/components/Spacer.ts +0 -93
- package/src/components/Text.ts +0 -447
- package/src/components/Toggle.ts +0 -700
- package/src/components/index.ts +0 -231
- package/src/components/wrapper.ts +0 -828
- package/src/concatenation/concatenatable.ts +0 -211
- package/src/concatenation/concatenated-component.ts +0 -471
- package/src/concatenation/index.ts +0 -41
- package/src/concatenation/styles.css +0 -120
- package/src/concatenation/text-optimizer.ts +0 -440
- package/src/concatenation/types.ts +0 -116
- package/src/constants/README.md +0 -339
- package/src/constants/__tests__/frame-utils.test.ts +0 -276
- package/src/constants/__tests__/layout.test.ts +0 -215
- package/src/constants/frame-utils.ts +0 -174
- package/src/constants/index.ts +0 -8
- package/src/constants/layout.ts +0 -120
- package/src/css-classes/component-base.ts +0 -117
- package/src/css-classes/css-class-manager.ts +0 -372
- package/src/css-classes/dom-integration.ts +0 -162
- package/src/css-classes/enhanced-renderer.ts +0 -166
- package/src/css-classes/index.ts +0 -45
- package/src/css-classes/types.ts +0 -73
- package/src/css-classes/utilities.ts +0 -175
- package/src/debug/index.ts +0 -267
- package/src/developer-experience/enhanced-errors.ts +0 -556
- package/src/developer-experience/enhanced-types.ts +0 -427
- package/src/developer-experience/index.ts +0 -220
- package/src/globals.d.ts +0 -43
- package/src/gradients/__tests__/angular-gradient.test.ts +0 -111
- package/src/gradients/__tests__/background-modifier.test.ts +0 -81
- package/src/gradients/__tests__/comprehensive-gradients.test.ts +0 -296
- package/src/gradients/__tests__/gradient-asset.test.ts +0 -144
- package/src/gradients/__tests__/linear-gradient.test.ts +0 -92
- package/src/gradients/__tests__/phase4-features.test.ts +0 -386
- package/src/gradients/__tests__/radial-gradient.test.ts +0 -110
- package/src/gradients/__tests__/repeating-gradients.test.ts +0 -125
- package/src/gradients/__tests__/state-background-modifier.test.ts +0 -340
- package/src/gradients/__tests__/state-gradient-asset.test.ts +0 -262
- package/src/gradients/__tests__/state-gradient-integration.test.ts +0 -277
- package/src/gradients/css-generator.ts +0 -158
- package/src/gradients/examples.ts +0 -632
- package/src/gradients/gradient-asset.ts +0 -30
- package/src/gradients/index.ts +0 -85
- package/src/gradients/performance.ts +0 -521
- package/src/gradients/presets.ts +0 -422
- package/src/gradients/reactive.ts +0 -470
- package/src/gradients/state-gradient-asset.ts +0 -179
- package/src/gradients/types.ts +0 -148
- package/src/gradients/utils.ts +0 -579
- package/src/gradients/validation.ts +0 -489
- package/src/index.ts +0 -168
- package/src/lifecycle/hooks.ts +0 -332
- package/src/modifiers/__tests__/as-html-integration.test.ts +0 -204
- package/src/modifiers/__tests__/as-html.test.ts +0 -437
- package/src/modifiers/__tests__/basic-sanitizer-security.test.ts +0 -294
- package/src/modifiers/__tests__/border.test.ts +0 -371
- package/src/modifiers/__tests__/margin-string-support.test.ts +0 -41
- package/src/modifiers/__tests__/padding-string-support.test.ts +0 -41
- package/src/modifiers/as-html-validator.ts +0 -68
- package/src/modifiers/as-html.ts +0 -216
- package/src/modifiers/attributes.ts +0 -574
- package/src/modifiers/backdrop.ts +0 -290
- package/src/modifiers/background.ts +0 -165
- package/src/modifiers/base.ts +0 -1815
- package/src/modifiers/basic-sanitizer.ts +0 -227
- package/src/modifiers/border.ts +0 -574
- package/src/modifiers/builder.ts +0 -1747
- package/src/modifiers/core.ts +0 -521
- package/src/modifiers/css.ts +0 -148
- package/src/modifiers/effects.ts +0 -412
- package/src/modifiers/elements.ts +0 -541
- package/src/modifiers/filters.ts +0 -501
- package/src/modifiers/flexbox.ts +0 -180
- package/src/modifiers/font.ts +0 -149
- package/src/modifiers/grid.ts +0 -238
- package/src/modifiers/index.ts +0 -481
- package/src/modifiers/margin.ts +0 -218
- package/src/modifiers/padding.ts +0 -318
- package/src/modifiers/registry.ts +0 -444
- package/src/modifiers/responsive/__tests__/advanced-media-queries.test.ts +0 -392
- package/src/modifiers/responsive/__tests__/advanced-utilities.test.ts +0 -368
- package/src/modifiers/responsive/__tests__/comprehensive-browser-tests.test.ts +0 -556
- package/src/modifiers/responsive/__tests__/layout-patterns.test.ts +0 -558
- package/src/modifiers/responsive/advanced-utilities.ts +0 -562
- package/src/modifiers/responsive/breakpoints.ts +0 -330
- package/src/modifiers/responsive/css-generator.ts +0 -432
- package/src/modifiers/responsive/dev-tools.ts +0 -650
- package/src/modifiers/responsive/index.ts +0 -119
- package/src/modifiers/responsive/layout-patterns.ts +0 -592
- package/src/modifiers/responsive/performance.ts +0 -385
- package/src/modifiers/responsive/responsive-builder.ts +0 -620
- package/src/modifiers/responsive/responsive-modifier.ts +0 -410
- package/src/modifiers/responsive/types.ts +0 -226
- package/src/modifiers/responsive/utilities.ts +0 -478
- package/src/modifiers/scroll.ts +0 -297
- package/src/modifiers/shadows.ts +0 -321
- package/src/modifiers/size.ts +0 -208
- package/src/modifiers/text.ts +0 -416
- package/src/modifiers/transformations.ts +0 -640
- package/src/modifiers/transitions.ts +0 -218
- package/src/modifiers/types.ts +0 -889
- package/src/modifiers/typography.ts +0 -341
- package/src/modifiers/utility.ts +0 -209
- package/src/modifiers/utils.ts +0 -413
- package/src/plugins/__tests__/simplified-plugin-system.test.ts +0 -190
- package/src/plugins/component-loader-registry.ts +0 -371
- package/src/plugins/index.ts +0 -61
- package/src/plugins/legacy-adapter.ts +0 -84
- package/src/plugins/simplified-component-registry.ts +0 -130
- package/src/plugins/simplified-error-handler.ts +0 -372
- package/src/plugins/simplified-index.ts +0 -61
- package/src/plugins/simplified-lazy-loader.ts +0 -242
- package/src/plugins/simplified-plugin-manager.ts +0 -93
- package/src/plugins/simplified-tachui-instance.ts +0 -142
- package/src/plugins/simplified-types.ts +0 -79
- package/src/plugins/simplified-utils.ts +0 -118
- package/src/reactive/cleanup.ts +0 -241
- package/src/reactive/computed.ts +0 -281
- package/src/reactive/context.ts +0 -287
- package/src/reactive/effect.ts +0 -194
- package/src/reactive/enhanced-effect.ts +0 -318
- package/src/reactive/enhanced-signal.ts +0 -227
- package/src/reactive/equality.ts +0 -188
- package/src/reactive/globals.d.ts +0 -5
- package/src/reactive/index.ts +0 -150
- package/src/reactive/migration.ts +0 -335
- package/src/reactive/ownership.ts +0 -182
- package/src/reactive/scheduler.ts +0 -300
- package/src/reactive/signal.ts +0 -201
- package/src/reactive/theme.ts +0 -49
- package/src/reactive/types.ts +0 -103
- package/src/reactive/unified-scheduler.ts +0 -357
- package/src/runtime/component-context.ts +0 -343
- package/src/runtime/component.ts +0 -499
- package/src/runtime/context.ts +0 -527
- package/src/runtime/dev-tools.ts +0 -752
- package/src/runtime/development-warnings.ts +0 -114
- package/src/runtime/dom-bridge.ts +0 -570
- package/src/runtime/element-override.ts +0 -282
- package/src/runtime/error-boundary.ts +0 -955
- package/src/runtime/error-recovery.ts +0 -638
- package/src/runtime/error-reporting.ts +0 -808
- package/src/runtime/error-utils.ts +0 -698
- package/src/runtime/index.ts +0 -202
- package/src/runtime/lazy-component.ts +0 -268
- package/src/runtime/lifecycle.ts +0 -10
- package/src/runtime/mounting.ts +0 -17
- package/src/runtime/optimization.ts +0 -13
- package/src/runtime/performance.ts +0 -693
- package/src/runtime/props.ts +0 -434
- package/src/runtime/refs.ts +0 -13
- package/src/runtime/renderer.ts +0 -674
- package/src/runtime/semantic-role-manager.ts +0 -140
- package/src/runtime/types.ts +0 -282
- package/src/state/binding.ts +0 -381
- package/src/state/environment-object.ts +0 -444
- package/src/state/environment.ts +0 -351
- package/src/state/index.ts +0 -179
- package/src/state/observed-object.ts +0 -405
- package/src/state/state-manager.ts +0 -366
- package/src/state/state.ts +0 -339
- package/src/state/types.ts +0 -192
- package/src/sui-compat.ts +0 -163
- package/src/validation/__tests__/phase-1d-integration.test.ts +0 -558
- package/src/validation/advanced-debugging.ts +0 -860
- package/src/validation/build-time/detection.ts +0 -373
- package/src/validation/build-time/index.ts +0 -222
- package/src/validation/build-time/plugins.ts +0 -515
- package/src/validation/build-time/rules.ts +0 -624
- package/src/validation/build-time/transformer.ts +0 -372
- package/src/validation/build-time/types.ts +0 -232
- package/src/validation/comprehensive.ts +0 -1272
- package/src/validation/debug-tools.ts +0 -724
- package/src/validation/developer-experience.ts +0 -712
- package/src/validation/documentation-integration.ts +0 -835
- package/src/validation/enhanced-runtime.ts +0 -765
- package/src/validation/error-reporting.ts +0 -587
- package/src/validation/ide-integration.ts +0 -845
- package/src/validation/index.ts +0 -353
- package/src/validation/lifecycle-validation.ts +0 -636
- package/src/validation/performance-optimizer.ts +0 -599
- package/src/validation/plugin-registration.ts +0 -249
- package/src/validation/production-bypass.ts +0 -466
- package/src/validation/simple.ts +0 -465
- package/src/viewport/adapters/web-adapter.ts +0 -1385
- package/src/viewport/components.ts +0 -505
- package/src/viewport/environment.ts +0 -173
- package/src/viewport/index.ts +0 -290
- package/src/viewport/platform-detection.ts +0 -431
- package/src/viewport/types.ts +0 -371
- package/src/viewport/viewport-manager.ts +0 -979
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"component.cjs","sources":["../../src/runtime/component.ts"],"sourcesContent":["/**\n * Component Management System (Phase 3.1.1)\n *\n * Core component lifecycle management including creation, mounting,\n * updating, and cleanup. Integrates with the reactive system to\n * provide efficient component updates.\n */\n\nimport { createEffect, onCleanup } from '../reactive'\nimport { createComponentContext } from './component-context'\nimport { ChildrenManager, PropsManager, propsUtils, RefManager } from './props'\nimport type {\n Component,\n ComponentChildren,\n ComponentContext,\n ComponentInstance,\n ComponentProps,\n DOMNode,\n LifecycleHooks,\n Ref,\n RenderFunction,\n ValidatedProps,\n} from './types'\n\n/**\n * Global component registry and lifecycle management\n */\nexport class ComponentManager {\n private static instance: ComponentManager\n private components = new Map<string, ComponentInstance>()\n private contexts = new Map<string, ComponentContext>()\n private cleanupQueue = new Set<() => void>()\n private updateQueue = new Set<string>()\n private isUpdating = false\n\n static getInstance(): ComponentManager {\n if (!ComponentManager.instance) {\n ComponentManager.instance = new ComponentManager()\n }\n return ComponentManager.instance\n }\n\n /**\n * Register a new component instance\n */\n registerComponent(instance: ComponentInstance): void {\n this.components.set(instance.id, instance)\n\n // Set up cleanup tracking\n if (instance.cleanup) {\n instance.cleanup.forEach((cleanup) => {\n this.cleanupQueue.add(cleanup)\n })\n }\n }\n\n /**\n * Unregister and cleanup a component\n */\n unregisterComponent(id: string): void {\n const instance = this.components.get(id)\n if (instance) {\n // Run cleanup functions\n if (instance.cleanup) {\n instance.cleanup.forEach((cleanup) => {\n try {\n cleanup()\n } catch (error) {\n console.error(`Cleanup error for component ${id}:`, error)\n }\n })\n }\n\n // Remove from registry\n this.components.delete(id)\n\n // Clean up context if exists\n if (instance.context) {\n this.cleanupContext(instance.context.id)\n }\n }\n }\n\n /**\n * Get component instance by ID\n */\n getComponent(id: string): ComponentInstance | undefined {\n return this.components.get(id)\n }\n\n /**\n * Schedule component for update\n */\n scheduleUpdate(id: string): void {\n this.updateQueue.add(id)\n\n if (!this.isUpdating) {\n this.flushUpdates()\n }\n }\n\n /**\n * Process all scheduled updates\n */\n private async flushUpdates(): Promise<void> {\n if (this.isUpdating) return\n\n this.isUpdating = true\n\n // Process updates in next microtask\n await new Promise((resolve) => queueMicrotask(() => resolve(undefined)))\n\n const toUpdate = Array.from(this.updateQueue)\n this.updateQueue.clear()\n\n toUpdate.forEach((id) => {\n const instance = this.components.get(id)\n if (instance) {\n try {\n this.updateComponent(instance)\n } catch (error) {\n console.error(`Update error for component ${id}:`, error)\n }\n }\n })\n\n this.isUpdating = false\n }\n\n /**\n * Update a specific component instance\n */\n private updateComponent(instance: ComponentInstance): void {\n // Store previous props for comparison\n if (instance.props) {\n instance.prevProps = { ...instance.props }\n }\n\n // Re-render the component\n instance.render()\n\n // Mark as mounted after first render\n if (!instance.mounted) {\n instance.mounted = true\n }\n\n // The actual DOM update will be handled by the reactive system\n // This just triggers the re-render process\n }\n\n /**\n * Cleanup context by ID\n */\n private cleanupContext(contextId: string): void {\n const context = this.contexts.get(contextId)\n if (context) {\n // Run all cleanup functions\n context.cleanup.forEach((cleanup) => {\n try {\n cleanup()\n } catch (error) {\n console.error(`Context cleanup error for ${contextId}:`, error)\n }\n })\n\n this.contexts.delete(contextId)\n }\n }\n\n /**\n * Get all registered components (for debugging)\n */\n getAllComponents(): ComponentInstance[] {\n return Array.from(this.components.values())\n }\n\n /**\n * Cleanup all components and resources\n */\n cleanup(): void {\n // Cleanup all components\n Array.from(this.components.keys()).forEach((id) => {\n this.unregisterComponent(id)\n })\n\n // Run remaining cleanup functions\n this.cleanupQueue.forEach((cleanup) => {\n try {\n cleanup()\n } catch (error) {\n console.error('Global cleanup error:', error)\n }\n })\n\n this.cleanupQueue.clear()\n this.updateQueue.clear()\n }\n}\n\n/**\n * Create a new component with enhanced props and children handling\n */\nexport function createComponent<P extends ComponentProps = ComponentProps>(\n render: (props: P, children?: ComponentChildren) => DOMNode | DOMNode[],\n options: {\n displayName?: string\n defaultProps?: Partial<P>\n lifecycle?: LifecycleHooks<P>\n validation?: ValidatedProps<P>\n shouldUpdate?: (prevProps: P, nextProps: P) => boolean\n } = {}\n): Component<P> {\n const component: Component<P> = (props: P) => {\n const componentId = generateComponentId()\n const manager = ComponentManager.getInstance()\n const cleanup: (() => void)[] = []\n\n // Create component context\n const context = createComponentContext(componentId)\n\n // Create props manager with validation\n const propsManager = new PropsManager(props, {\n defaults: options.defaultProps || undefined,\n ...options.validation,\n })\n\n // Create children manager\n const childrenManager = new ChildrenManager(props.children)\n\n // Create ref manager for component references\n const refManager = new RefManager()\n\n // Track previous props for lifecycle hooks\n let previousProps: P | undefined\n let mounted = false\n\n // Create render function with reactive context\n const renderFunction: RenderFunction = () => {\n // Set up lifecycle hooks\n if (options.lifecycle?.onMount && !mounted) {\n const mountCleanup = options.lifecycle.onMount()\n if (typeof mountCleanup === 'function') {\n cleanup.push(mountCleanup)\n }\n mounted = true\n }\n\n // Set up props change tracking\n createEffect(() => {\n const currentProps = propsManager.getProps()\n\n if (previousProps && options.lifecycle?.onPropsChange) {\n const changedKeys = propsUtils.compareProps(previousProps, currentProps)\n if (changedKeys.length > 0) {\n options.lifecycle.onPropsChange(previousProps, currentProps, changedKeys)\n }\n }\n\n if (previousProps && options.lifecycle?.onUpdate) {\n options.lifecycle.onUpdate(previousProps, currentProps)\n }\n\n previousProps = { ...currentProps }\n })\n\n // Set up children change tracking\n createEffect(() => {\n const currentChildren = childrenManager.getChildren()\n if (options.lifecycle?.onChildrenChange && previousProps) {\n options.lifecycle.onChildrenChange(previousProps.children, currentChildren)\n }\n })\n\n // Set up onCleanup for unmount\n onCleanup(() => {\n if (options.lifecycle?.onUnmount) {\n options.lifecycle.onUnmount()\n }\n\n // Run all cleanup functions\n cleanup.forEach((fn) => fn())\n\n // Unregister component\n manager.unregisterComponent(componentId)\n })\n\n // Render the component\n try {\n if (options.lifecycle?.onRender) {\n options.lifecycle.onRender()\n }\n\n const currentProps = propsManager.getProps()\n const currentChildren = childrenManager.getChildren()\n\n // Check shouldUpdate if provided\n if (previousProps && options.shouldUpdate) {\n if (!options.shouldUpdate(previousProps, currentProps)) {\n // Skip render if shouldUpdate returns false\n return []\n }\n }\n\n return render(currentProps, currentChildren)\n } catch (error) {\n if (options.lifecycle?.onError) {\n options.lifecycle.onError(error as Error)\n }\n throw error\n }\n }\n\n // Create component instance\n const instance: ComponentInstance<P> = {\n type: 'component',\n render: renderFunction,\n props: propsManager.getProps(),\n children: childrenManager.getChildren(),\n context,\n cleanup,\n id: componentId,\n ref: props.ref,\n mounted: false,\n }\n\n // Apply ref if provided\n if (props.ref) {\n RefManager.applyRef(props.ref, refManager.getRef())\n }\n\n // Register with manager\n manager.registerComponent(instance)\n\n return instance\n }\n\n // Set component metadata\n if (options.displayName) {\n component.displayName = options.displayName\n }\n\n if (options.defaultProps) {\n component.defaultProps = options.defaultProps\n }\n\n return component\n}\n\n/**\n * Generate unique component ID\n */\nfunction generateComponentId(): string {\n return `component_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`\n}\n\n/**\n * Higher-order component for adding lifecycle hooks\n */\nexport function withLifecycle<P extends ComponentProps>(\n component: Component<P>,\n hooks: LifecycleHooks<P>\n): Component<P> {\n const wrappedComponent: Component<P> = (props: P) => {\n const instance = component(props)\n\n // Merge lifecycle hooks\n const existingCleanup = instance.cleanup || []\n const newCleanup: (() => void)[] = []\n\n if (hooks.onMount) {\n const mountCleanup = hooks.onMount()\n if (typeof mountCleanup === 'function') {\n newCleanup.push(mountCleanup)\n }\n }\n\n if (hooks.onUnmount) {\n newCleanup.push(hooks.onUnmount)\n }\n\n return {\n ...instance,\n cleanup: [...existingCleanup, ...newCleanup],\n }\n }\n\n wrappedComponent.displayName = `withLifecycle(${component.displayName || 'Component'})`\n return wrappedComponent\n}\n\n/**\n * Create a reactive component that updates when props change\n */\nexport function createReactiveComponent<P extends ComponentProps>(\n render: (props: P, children?: ComponentChildren) => DOMNode | DOMNode[]\n): Component<P> {\n return createComponent(render, {\n shouldUpdate: (prevProps, nextProps) => {\n // Always update for reactive components\n return !propsUtils.shallowEqual(prevProps, nextProps)\n },\n })\n}\n\n/**\n * Component error boundary\n */\nexport function createErrorBoundary<P extends ComponentProps>(\n fallback: (error: Error) => DOMNode | DOMNode[]\n): Component<P & { children: ComponentChildren }> {\n return createComponent(\n (props, children) => {\n const childrenManager = new ChildrenManager(children || props.children)\n\n try {\n return childrenManager.renderChildren()\n } catch (error) {\n console.error('Component error caught by boundary:', error)\n return fallback(error as Error)\n }\n },\n {\n displayName: 'ErrorBoundary',\n lifecycle: {\n onError: (error: Error) => {\n console.error('Error boundary caught error:', error)\n },\n },\n }\n )\n}\n\n/**\n * Create a component with advanced props handling\n */\nexport function createAdvancedComponent<P extends ComponentProps>(\n render: (\n props: P,\n children: ComponentChildren,\n helpers: {\n propsManager: PropsManager<P>\n childrenManager: ChildrenManager\n refManager: RefManager\n }\n ) => DOMNode | DOMNode[],\n options: {\n displayName?: string\n defaultProps?: Partial<P>\n validation?: ValidatedProps<P>\n lifecycle?: LifecycleHooks<P>\n shouldUpdate?: (prevProps: P, nextProps: P) => boolean\n } = {}\n): Component<P> {\n return createComponent((props, children) => {\n const propsManager = new PropsManager(props, options.validation)\n const childrenManager = new ChildrenManager(children || props.children)\n const refManager = new RefManager()\n\n return render(props, children || props.children, {\n propsManager,\n childrenManager,\n refManager,\n })\n }, options)\n}\n\n/**\n * Create fragment component for multiple children\n */\nexport function createFragment(children: ComponentChildren[]): ComponentInstance {\n const childrenManager = new ChildrenManager(children)\n\n return {\n type: 'component',\n render: () => childrenManager.renderChildren(),\n props: { children },\n children,\n id: generateComponentId(),\n }\n}\n\n/**\n * Create ref object\n */\nexport function createRef<T = any>(initialValue: T | null = null): { current: T | null } {\n return RefManager.createRef(initialValue)\n}\n\n/**\n * Forward ref to child component\n */\nexport function forwardRef<T, P extends ComponentProps>(\n render: (props: P, ref: Ref<T> | undefined) => DOMNode | DOMNode[]\n): Component<P & { ref?: Ref<T> }> {\n return createComponent<P & { ref?: Ref<T> }>((props) => {\n const { ref, ...restProps } = props\n return render(restProps as P, ref || undefined)\n })\n}\n"],"names":["_ComponentManager","__publicField","instance","cleanup","id","error","resolve","toUpdate","contextId","context","ComponentManager","createComponent","render","options","component","props","componentId","generateComponentId","manager","createComponentContext","propsManager","PropsManager","childrenManager","ChildrenManager","refManager","RefManager","previousProps","mounted","mountCleanup","createEffect","currentProps","changedKeys","propsUtils","currentChildren","onCleanup","fn","withLifecycle","hooks","wrappedComponent","existingCleanup","newCleanup","createReactiveComponent","prevProps","nextProps","createErrorBoundary","fallback","children","createAdvancedComponent","createFragment","createRef","initialValue","forwardRef","ref","restProps"],"mappings":"0hBA2BO,MAAMA,EAAN,MAAMA,CAAiB,CAAvB,aAAA,CAELC,EAAA,KAAQ,iBAAiB,GAA+B,EACxDA,EAAA,KAAQ,eAAe,GAA8B,EACrDA,EAAA,KAAQ,mBAAmB,GAAgB,EAC3CA,EAAA,KAAQ,kBAAkB,GAAY,EACtCA,EAAA,KAAQ,aAAa,EAAA,CAAA,CAErB,OAAO,aAAgC,CACrC,OAAKD,EAAiB,WACpBA,EAAiB,SAAW,IAAIA,GAE3BA,EAAiB,QAC1B,CAKA,kBAAkBE,EAAmC,CACnD,KAAK,WAAW,IAAIA,EAAS,GAAIA,CAAQ,EAGrCA,EAAS,SACXA,EAAS,QAAQ,QAASC,GAAY,CACpC,KAAK,aAAa,IAAIA,CAAO,CAC/B,CAAC,CAEL,CAKA,oBAAoBC,EAAkB,CACpC,MAAMF,EAAW,KAAK,WAAW,IAAIE,CAAE,EACnCF,IAEEA,EAAS,SACXA,EAAS,QAAQ,QAASC,GAAY,CACpC,GAAI,CACFA,EAAA,CACF,OAASE,EAAO,CACd,QAAQ,MAAM,+BAA+BD,CAAE,IAAKC,CAAK,CAC3D,CACF,CAAC,EAIH,KAAK,WAAW,OAAOD,CAAE,EAGrBF,EAAS,SACX,KAAK,eAAeA,EAAS,QAAQ,EAAE,EAG7C,CAKA,aAAaE,EAA2C,CACtD,OAAO,KAAK,WAAW,IAAIA,CAAE,CAC/B,CAKA,eAAeA,EAAkB,CAC/B,KAAK,YAAY,IAAIA,CAAE,EAElB,KAAK,YACR,KAAK,aAAA,CAET,CAKA,MAAc,cAA8B,CAC1C,GAAI,KAAK,WAAY,OAErB,KAAK,WAAa,GAGlB,MAAM,IAAI,QAASE,GAAY,eAAe,IAAMA,EAAQ,MAAS,CAAC,CAAC,EAEvE,MAAMC,EAAW,MAAM,KAAK,KAAK,WAAW,EAC5C,KAAK,YAAY,MAAA,EAEjBA,EAAS,QAASH,GAAO,CACvB,MAAMF,EAAW,KAAK,WAAW,IAAIE,CAAE,EACvC,GAAIF,EACF,GAAI,CACF,KAAK,gBAAgBA,CAAQ,CAC/B,OAASG,EAAO,CACd,QAAQ,MAAM,8BAA8BD,CAAE,IAAKC,CAAK,CAC1D,CAEJ,CAAC,EAED,KAAK,WAAa,EACpB,CAKQ,gBAAgBH,EAAmC,CAErDA,EAAS,QACXA,EAAS,UAAY,CAAE,GAAGA,EAAS,KAAA,GAIrCA,EAAS,OAAA,EAGJA,EAAS,UACZA,EAAS,QAAU,GAKvB,CAKQ,eAAeM,EAAyB,CAC9C,MAAMC,EAAU,KAAK,SAAS,IAAID,CAAS,EACvCC,IAEFA,EAAQ,QAAQ,QAASN,GAAY,CACnC,GAAI,CACFA,EAAA,CACF,OAASE,EAAO,CACd,QAAQ,MAAM,6BAA6BG,CAAS,IAAKH,CAAK,CAChE,CACF,CAAC,EAED,KAAK,SAAS,OAAOG,CAAS,EAElC,CAKA,kBAAwC,CACtC,OAAO,MAAM,KAAK,KAAK,WAAW,QAAQ,CAC5C,CAKA,SAAgB,CAEd,MAAM,KAAK,KAAK,WAAW,KAAA,CAAM,EAAE,QAASJ,GAAO,CACjD,KAAK,oBAAoBA,CAAE,CAC7B,CAAC,EAGD,KAAK,aAAa,QAASD,GAAY,CACrC,GAAI,CACFA,EAAA,CACF,OAASE,EAAO,CACd,QAAQ,MAAM,wBAAyBA,CAAK,CAC9C,CACF,CAAC,EAED,KAAK,aAAa,MAAA,EAClB,KAAK,YAAY,MAAA,CACnB,CACF,EAzKEJ,EADWD,EACI,UAAA,EADV,IAAMU,EAANV,EA+KA,SAASW,EACdC,EACAC,EAMI,GACU,CACd,MAAMC,EAA2BC,GAAa,CAC5C,MAAMC,EAAcC,EAAA,EACdC,EAAUR,EAAiB,YAAA,EAC3BP,EAA0B,CAAA,EAG1BM,EAAUU,EAAAA,uBAAuBH,CAAW,EAG5CI,EAAe,IAAIC,EAAAA,aAAaN,EAAO,CAC3C,SAAUF,EAAQ,cAAgB,OAClC,GAAGA,EAAQ,UAAA,CACZ,EAGKS,EAAkB,IAAIC,kBAAgBR,EAAM,QAAQ,EAGpDS,EAAa,IAAIC,aAGvB,IAAIC,EACAC,EAAU,GA+Ed,MAAMzB,EAAiC,CACrC,KAAM,YACN,OA9EqC,IAAM,CAE3C,GAAIW,EAAQ,WAAW,SAAW,CAACc,EAAS,CAC1C,MAAMC,EAAef,EAAQ,UAAU,QAAA,EACnC,OAAOe,GAAiB,YAC1BzB,EAAQ,KAAKyB,CAAY,EAE3BD,EAAU,EACZ,CAGAE,EAAAA,aAAa,IAAM,CACjB,MAAMC,EAAeV,EAAa,SAAA,EAElC,GAAIM,GAAiBb,EAAQ,WAAW,cAAe,CACrD,MAAMkB,EAAcC,EAAAA,WAAW,aAAaN,EAAeI,CAAY,EACnEC,EAAY,OAAS,GACvBlB,EAAQ,UAAU,cAAca,EAAeI,EAAcC,CAAW,CAE5E,CAEIL,GAAiBb,EAAQ,WAAW,UACtCA,EAAQ,UAAU,SAASa,EAAeI,CAAY,EAGxDJ,EAAgB,CAAE,GAAGI,CAAA,CACvB,CAAC,EAGDD,EAAAA,aAAa,IAAM,CACjB,MAAMI,EAAkBX,EAAgB,YAAA,EACpCT,EAAQ,WAAW,kBAAoBa,GACzCb,EAAQ,UAAU,iBAAiBa,EAAc,SAAUO,CAAe,CAE9E,CAAC,EAGDC,EAAAA,UAAU,IAAM,CACVrB,EAAQ,WAAW,WACrBA,EAAQ,UAAU,UAAA,EAIpBV,EAAQ,QAASgC,GAAOA,EAAA,CAAI,EAG5BjB,EAAQ,oBAAoBF,CAAW,CACzC,CAAC,EAGD,GAAI,CACEH,EAAQ,WAAW,UACrBA,EAAQ,UAAU,SAAA,EAGpB,MAAMiB,EAAeV,EAAa,SAAA,EAC5Ba,EAAkBX,EAAgB,YAAA,EAGxC,OAAII,GAAiBb,EAAQ,cACvB,CAACA,EAAQ,aAAaa,EAAeI,CAAY,EAE5C,CAAA,EAIJlB,EAAOkB,EAAcG,CAAe,CAC7C,OAAS5B,EAAO,CACd,MAAIQ,EAAQ,WAAW,SACrBA,EAAQ,UAAU,QAAQR,CAAc,EAEpCA,CACR,CACF,EAME,MAAOe,EAAa,SAAA,EACpB,SAAUE,EAAgB,YAAA,EAC1B,QAAAb,EAAA,QACAN,EACA,GAAIa,EACJ,IAAKD,EAAM,IACX,QAAS,EAAA,EAIX,OAAIA,EAAM,KACRU,EAAAA,WAAW,SAASV,EAAM,IAAKS,EAAW,QAAQ,EAIpDN,EAAQ,kBAAkBhB,CAAQ,EAE3BA,CACT,EAGA,OAAIW,EAAQ,cACVC,EAAU,YAAcD,EAAQ,aAG9BA,EAAQ,eACVC,EAAU,aAAeD,EAAQ,cAG5BC,CACT,CAKA,SAASG,GAA8B,CACrC,MAAO,aAAa,KAAK,IAAA,CAAK,IAAI,KAAK,OAAA,EAAS,SAAS,EAAE,EAAE,OAAO,EAAG,CAAC,CAAC,EAC3E,CAKO,SAASmB,EACdtB,EACAuB,EACc,CACd,MAAMC,EAAkCvB,GAAa,CACnD,MAAMb,EAAWY,EAAUC,CAAK,EAG1BwB,EAAkBrC,EAAS,SAAW,CAAA,EACtCsC,EAA6B,CAAA,EAEnC,GAAIH,EAAM,QAAS,CACjB,MAAMT,EAAeS,EAAM,QAAA,EACvB,OAAOT,GAAiB,YAC1BY,EAAW,KAAKZ,CAAY,CAEhC,CAEA,OAAIS,EAAM,WACRG,EAAW,KAAKH,EAAM,SAAS,EAG1B,CACL,GAAGnC,EACH,QAAS,CAAC,GAAGqC,EAAiB,GAAGC,CAAU,CAAA,CAE/C,EAEA,OAAAF,EAAiB,YAAc,iBAAiBxB,EAAU,aAAe,WAAW,IAC7EwB,CACT,CAKO,SAASG,EACd7B,EACc,CACd,OAAOD,EAAgBC,EAAQ,CAC7B,aAAc,CAAC8B,EAAWC,IAEjB,CAACX,EAAAA,WAAW,aAAaU,EAAWC,CAAS,CACtD,CACD,CACH,CAKO,SAASC,EACdC,EACgD,CAChD,OAAOlC,EACL,CAACI,EAAO+B,IAAa,CACnB,MAAMxB,EAAkB,IAAIC,EAAAA,gBAAgBuB,GAAY/B,EAAM,QAAQ,EAEtE,GAAI,CACF,OAAOO,EAAgB,eAAA,CACzB,OAASjB,EAAO,CACd,eAAQ,MAAM,sCAAuCA,CAAK,EACnDwC,EAASxC,CAAc,CAChC,CACF,EACA,CACE,YAAa,gBACb,UAAW,CACT,QAAUA,GAAiB,CACzB,QAAQ,MAAM,+BAAgCA,CAAK,CACrD,CAAA,CACF,CACF,CAEJ,CAKO,SAAS0C,EACdnC,EASAC,EAMI,GACU,CACd,OAAOF,EAAgB,CAACI,EAAO+B,IAAa,CAC1C,MAAM1B,EAAe,IAAIC,EAAAA,aAAaN,EAAOF,EAAQ,UAAU,EACzDS,EAAkB,IAAIC,EAAAA,gBAAgBuB,GAAY/B,EAAM,QAAQ,EAChES,EAAa,IAAIC,aAEvB,OAAOb,EAAOG,EAAO+B,GAAY/B,EAAM,SAAU,CAC/C,aAAAK,EACA,gBAAAE,EACA,WAAAE,CAAA,CACD,CACH,EAAGX,CAAO,CACZ,CAKO,SAASmC,EAAeF,EAAkD,CAC/E,MAAMxB,EAAkB,IAAIC,EAAAA,gBAAgBuB,CAAQ,EAEpD,MAAO,CACL,KAAM,YACN,OAAQ,IAAMxB,EAAgB,eAAA,EAC9B,MAAO,CAAE,SAAAwB,CAAA,EACT,SAAAA,EACA,GAAI7B,EAAA,CAAoB,CAE5B,CAKO,SAASgC,EAAmBC,EAAyB,KAA6B,CACvF,OAAOzB,EAAAA,WAAW,UAAUyB,CAAY,CAC1C,CAKO,SAASC,EACdvC,EACiC,CACjC,OAAOD,EAAuCI,GAAU,CACtD,KAAM,CAAE,IAAAqC,EAAK,GAAGC,CAAA,EAActC,EAC9B,OAAOH,EAAOyC,EAAgBD,GAAO,MAAS,CAChD,CAAC,CACH"}
|
|
@@ -1,238 +0,0 @@
|
|
|
1
|
-
import { onCleanup as b } from "../reactive/cleanup.js";
|
|
2
|
-
import "../reactive/unified-scheduler.js";
|
|
3
|
-
import { createEffect as M } from "../reactive/effect.js";
|
|
4
|
-
import "../reactive/signal.js";
|
|
5
|
-
import "../reactive/scheduler.js";
|
|
6
|
-
import "../reactive/theme.js";
|
|
7
|
-
import { createComponentContext as Q } from "./component-context.js";
|
|
8
|
-
import { ChildrenManager as h, RefManager as d, PropsManager as P, propsUtils as U } from "./props.js";
|
|
9
|
-
var R = Object.defineProperty, N = (r, e, n) => e in r ? R(r, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : r[e] = n, l = (r, e, n) => N(r, typeof e != "symbol" ? e + "" : e, n);
|
|
10
|
-
const E = class s {
|
|
11
|
-
constructor() {
|
|
12
|
-
l(this, "components", /* @__PURE__ */ new Map()), l(this, "contexts", /* @__PURE__ */ new Map()), l(this, "cleanupQueue", /* @__PURE__ */ new Set()), l(this, "updateQueue", /* @__PURE__ */ new Set()), l(this, "isUpdating", !1);
|
|
13
|
-
}
|
|
14
|
-
static getInstance() {
|
|
15
|
-
return s.instance || (s.instance = new s()), s.instance;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Register a new component instance
|
|
19
|
-
*/
|
|
20
|
-
registerComponent(e) {
|
|
21
|
-
this.components.set(e.id, e), e.cleanup && e.cleanup.forEach((n) => {
|
|
22
|
-
this.cleanupQueue.add(n);
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Unregister and cleanup a component
|
|
27
|
-
*/
|
|
28
|
-
unregisterComponent(e) {
|
|
29
|
-
const n = this.components.get(e);
|
|
30
|
-
n && (n.cleanup && n.cleanup.forEach((t) => {
|
|
31
|
-
try {
|
|
32
|
-
t();
|
|
33
|
-
} catch (o) {
|
|
34
|
-
console.error(`Cleanup error for component ${e}:`, o);
|
|
35
|
-
}
|
|
36
|
-
}), this.components.delete(e), n.context && this.cleanupContext(n.context.id));
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Get component instance by ID
|
|
40
|
-
*/
|
|
41
|
-
getComponent(e) {
|
|
42
|
-
return this.components.get(e);
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Schedule component for update
|
|
46
|
-
*/
|
|
47
|
-
scheduleUpdate(e) {
|
|
48
|
-
this.updateQueue.add(e), this.isUpdating || this.flushUpdates();
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Process all scheduled updates
|
|
52
|
-
*/
|
|
53
|
-
async flushUpdates() {
|
|
54
|
-
if (this.isUpdating) return;
|
|
55
|
-
this.isUpdating = !0, await new Promise((n) => queueMicrotask(() => n(void 0)));
|
|
56
|
-
const e = Array.from(this.updateQueue);
|
|
57
|
-
this.updateQueue.clear(), e.forEach((n) => {
|
|
58
|
-
const t = this.components.get(n);
|
|
59
|
-
if (t)
|
|
60
|
-
try {
|
|
61
|
-
this.updateComponent(t);
|
|
62
|
-
} catch (o) {
|
|
63
|
-
console.error(`Update error for component ${n}:`, o);
|
|
64
|
-
}
|
|
65
|
-
}), this.isUpdating = !1;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Update a specific component instance
|
|
69
|
-
*/
|
|
70
|
-
updateComponent(e) {
|
|
71
|
-
e.props && (e.prevProps = { ...e.props }), e.render(), e.mounted || (e.mounted = !0);
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Cleanup context by ID
|
|
75
|
-
*/
|
|
76
|
-
cleanupContext(e) {
|
|
77
|
-
const n = this.contexts.get(e);
|
|
78
|
-
n && (n.cleanup.forEach((t) => {
|
|
79
|
-
try {
|
|
80
|
-
t();
|
|
81
|
-
} catch (o) {
|
|
82
|
-
console.error(`Context cleanup error for ${e}:`, o);
|
|
83
|
-
}
|
|
84
|
-
}), this.contexts.delete(e));
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Get all registered components (for debugging)
|
|
88
|
-
*/
|
|
89
|
-
getAllComponents() {
|
|
90
|
-
return Array.from(this.components.values());
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Cleanup all components and resources
|
|
94
|
-
*/
|
|
95
|
-
cleanup() {
|
|
96
|
-
Array.from(this.components.keys()).forEach((e) => {
|
|
97
|
-
this.unregisterComponent(e);
|
|
98
|
-
}), this.cleanupQueue.forEach((e) => {
|
|
99
|
-
try {
|
|
100
|
-
e();
|
|
101
|
-
} catch (n) {
|
|
102
|
-
console.error("Global cleanup error:", n);
|
|
103
|
-
}
|
|
104
|
-
}), this.cleanupQueue.clear(), this.updateQueue.clear();
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
l(E, "instance");
|
|
108
|
-
let _ = E;
|
|
109
|
-
function m(r, e = {}) {
|
|
110
|
-
const n = (t) => {
|
|
111
|
-
const o = v(), i = _.getInstance(), u = [], p = Q(o), g = new P(t, {
|
|
112
|
-
defaults: e.defaultProps || void 0,
|
|
113
|
-
...e.validation
|
|
114
|
-
}), y = new h(t.children), x = new d();
|
|
115
|
-
let a, C = !1;
|
|
116
|
-
const w = {
|
|
117
|
-
type: "component",
|
|
118
|
-
render: () => {
|
|
119
|
-
if (e.lifecycle?.onMount && !C) {
|
|
120
|
-
const c = e.lifecycle.onMount();
|
|
121
|
-
typeof c == "function" && u.push(c), C = !0;
|
|
122
|
-
}
|
|
123
|
-
M(() => {
|
|
124
|
-
const c = g.getProps();
|
|
125
|
-
if (a && e.lifecycle?.onPropsChange) {
|
|
126
|
-
const f = U.compareProps(a, c);
|
|
127
|
-
f.length > 0 && e.lifecycle.onPropsChange(a, c, f);
|
|
128
|
-
}
|
|
129
|
-
a && e.lifecycle?.onUpdate && e.lifecycle.onUpdate(a, c), a = { ...c };
|
|
130
|
-
}), M(() => {
|
|
131
|
-
const c = y.getChildren();
|
|
132
|
-
e.lifecycle?.onChildrenChange && a && e.lifecycle.onChildrenChange(a.children, c);
|
|
133
|
-
}), b(() => {
|
|
134
|
-
e.lifecycle?.onUnmount && e.lifecycle.onUnmount(), u.forEach((c) => c()), i.unregisterComponent(o);
|
|
135
|
-
});
|
|
136
|
-
try {
|
|
137
|
-
e.lifecycle?.onRender && e.lifecycle.onRender();
|
|
138
|
-
const c = g.getProps(), f = y.getChildren();
|
|
139
|
-
return a && e.shouldUpdate && !e.shouldUpdate(a, c) ? [] : r(c, f);
|
|
140
|
-
} catch (c) {
|
|
141
|
-
throw e.lifecycle?.onError && e.lifecycle.onError(c), c;
|
|
142
|
-
}
|
|
143
|
-
},
|
|
144
|
-
props: g.getProps(),
|
|
145
|
-
children: y.getChildren(),
|
|
146
|
-
context: p,
|
|
147
|
-
cleanup: u,
|
|
148
|
-
id: o,
|
|
149
|
-
ref: t.ref,
|
|
150
|
-
mounted: !1
|
|
151
|
-
};
|
|
152
|
-
return t.ref && d.applyRef(t.ref, x.getRef()), i.registerComponent(w), w;
|
|
153
|
-
};
|
|
154
|
-
return e.displayName && (n.displayName = e.displayName), e.defaultProps && (n.defaultProps = e.defaultProps), n;
|
|
155
|
-
}
|
|
156
|
-
function v() {
|
|
157
|
-
return `component_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
|
|
158
|
-
}
|
|
159
|
-
function G(r, e) {
|
|
160
|
-
const n = (t) => {
|
|
161
|
-
const o = r(t), i = o.cleanup || [], u = [];
|
|
162
|
-
if (e.onMount) {
|
|
163
|
-
const p = e.onMount();
|
|
164
|
-
typeof p == "function" && u.push(p);
|
|
165
|
-
}
|
|
166
|
-
return e.onUnmount && u.push(e.onUnmount), {
|
|
167
|
-
...o,
|
|
168
|
-
cleanup: [...i, ...u]
|
|
169
|
-
};
|
|
170
|
-
};
|
|
171
|
-
return n.displayName = `withLifecycle(${r.displayName || "Component"})`, n;
|
|
172
|
-
}
|
|
173
|
-
function K(r) {
|
|
174
|
-
return m(r, {
|
|
175
|
-
shouldUpdate: (e, n) => !U.shallowEqual(e, n)
|
|
176
|
-
});
|
|
177
|
-
}
|
|
178
|
-
function O(r) {
|
|
179
|
-
return m(
|
|
180
|
-
(e, n) => {
|
|
181
|
-
const t = new h(n || e.children);
|
|
182
|
-
try {
|
|
183
|
-
return t.renderChildren();
|
|
184
|
-
} catch (o) {
|
|
185
|
-
return console.error("Component error caught by boundary:", o), r(o);
|
|
186
|
-
}
|
|
187
|
-
},
|
|
188
|
-
{
|
|
189
|
-
displayName: "ErrorBoundary",
|
|
190
|
-
lifecycle: {
|
|
191
|
-
onError: (e) => {
|
|
192
|
-
console.error("Error boundary caught error:", e);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
);
|
|
197
|
-
}
|
|
198
|
-
function z(r, e = {}) {
|
|
199
|
-
return m((n, t) => {
|
|
200
|
-
const o = new P(n, e.validation), i = new h(t || n.children), u = new d();
|
|
201
|
-
return r(n, t || n.children, {
|
|
202
|
-
propsManager: o,
|
|
203
|
-
childrenManager: i,
|
|
204
|
-
refManager: u
|
|
205
|
-
});
|
|
206
|
-
}, e);
|
|
207
|
-
}
|
|
208
|
-
function H(r) {
|
|
209
|
-
const e = new h(r);
|
|
210
|
-
return {
|
|
211
|
-
type: "component",
|
|
212
|
-
render: () => e.renderChildren(),
|
|
213
|
-
props: { children: r },
|
|
214
|
-
children: r,
|
|
215
|
-
id: v()
|
|
216
|
-
};
|
|
217
|
-
}
|
|
218
|
-
function J(r = null) {
|
|
219
|
-
return d.createRef(r);
|
|
220
|
-
}
|
|
221
|
-
function T(r) {
|
|
222
|
-
return m((e) => {
|
|
223
|
-
const { ref: n, ...t } = e;
|
|
224
|
-
return r(t, n || void 0);
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
export {
|
|
228
|
-
_ as ComponentManager,
|
|
229
|
-
z as createAdvancedComponent,
|
|
230
|
-
m as createComponent,
|
|
231
|
-
O as createErrorBoundary,
|
|
232
|
-
H as createFragment,
|
|
233
|
-
K as createReactiveComponent,
|
|
234
|
-
J as createRef,
|
|
235
|
-
T as forwardRef,
|
|
236
|
-
G as withLifecycle
|
|
237
|
-
};
|
|
238
|
-
//# sourceMappingURL=component.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","sources":["../../src/runtime/component.ts"],"sourcesContent":["/**\n * Component Management System (Phase 3.1.1)\n *\n * Core component lifecycle management including creation, mounting,\n * updating, and cleanup. Integrates with the reactive system to\n * provide efficient component updates.\n */\n\nimport { createEffect, onCleanup } from '../reactive'\nimport { createComponentContext } from './component-context'\nimport { ChildrenManager, PropsManager, propsUtils, RefManager } from './props'\nimport type {\n Component,\n ComponentChildren,\n ComponentContext,\n ComponentInstance,\n ComponentProps,\n DOMNode,\n LifecycleHooks,\n Ref,\n RenderFunction,\n ValidatedProps,\n} from './types'\n\n/**\n * Global component registry and lifecycle management\n */\nexport class ComponentManager {\n private static instance: ComponentManager\n private components = new Map<string, ComponentInstance>()\n private contexts = new Map<string, ComponentContext>()\n private cleanupQueue = new Set<() => void>()\n private updateQueue = new Set<string>()\n private isUpdating = false\n\n static getInstance(): ComponentManager {\n if (!ComponentManager.instance) {\n ComponentManager.instance = new ComponentManager()\n }\n return ComponentManager.instance\n }\n\n /**\n * Register a new component instance\n */\n registerComponent(instance: ComponentInstance): void {\n this.components.set(instance.id, instance)\n\n // Set up cleanup tracking\n if (instance.cleanup) {\n instance.cleanup.forEach((cleanup) => {\n this.cleanupQueue.add(cleanup)\n })\n }\n }\n\n /**\n * Unregister and cleanup a component\n */\n unregisterComponent(id: string): void {\n const instance = this.components.get(id)\n if (instance) {\n // Run cleanup functions\n if (instance.cleanup) {\n instance.cleanup.forEach((cleanup) => {\n try {\n cleanup()\n } catch (error) {\n console.error(`Cleanup error for component ${id}:`, error)\n }\n })\n }\n\n // Remove from registry\n this.components.delete(id)\n\n // Clean up context if exists\n if (instance.context) {\n this.cleanupContext(instance.context.id)\n }\n }\n }\n\n /**\n * Get component instance by ID\n */\n getComponent(id: string): ComponentInstance | undefined {\n return this.components.get(id)\n }\n\n /**\n * Schedule component for update\n */\n scheduleUpdate(id: string): void {\n this.updateQueue.add(id)\n\n if (!this.isUpdating) {\n this.flushUpdates()\n }\n }\n\n /**\n * Process all scheduled updates\n */\n private async flushUpdates(): Promise<void> {\n if (this.isUpdating) return\n\n this.isUpdating = true\n\n // Process updates in next microtask\n await new Promise((resolve) => queueMicrotask(() => resolve(undefined)))\n\n const toUpdate = Array.from(this.updateQueue)\n this.updateQueue.clear()\n\n toUpdate.forEach((id) => {\n const instance = this.components.get(id)\n if (instance) {\n try {\n this.updateComponent(instance)\n } catch (error) {\n console.error(`Update error for component ${id}:`, error)\n }\n }\n })\n\n this.isUpdating = false\n }\n\n /**\n * Update a specific component instance\n */\n private updateComponent(instance: ComponentInstance): void {\n // Store previous props for comparison\n if (instance.props) {\n instance.prevProps = { ...instance.props }\n }\n\n // Re-render the component\n instance.render()\n\n // Mark as mounted after first render\n if (!instance.mounted) {\n instance.mounted = true\n }\n\n // The actual DOM update will be handled by the reactive system\n // This just triggers the re-render process\n }\n\n /**\n * Cleanup context by ID\n */\n private cleanupContext(contextId: string): void {\n const context = this.contexts.get(contextId)\n if (context) {\n // Run all cleanup functions\n context.cleanup.forEach((cleanup) => {\n try {\n cleanup()\n } catch (error) {\n console.error(`Context cleanup error for ${contextId}:`, error)\n }\n })\n\n this.contexts.delete(contextId)\n }\n }\n\n /**\n * Get all registered components (for debugging)\n */\n getAllComponents(): ComponentInstance[] {\n return Array.from(this.components.values())\n }\n\n /**\n * Cleanup all components and resources\n */\n cleanup(): void {\n // Cleanup all components\n Array.from(this.components.keys()).forEach((id) => {\n this.unregisterComponent(id)\n })\n\n // Run remaining cleanup functions\n this.cleanupQueue.forEach((cleanup) => {\n try {\n cleanup()\n } catch (error) {\n console.error('Global cleanup error:', error)\n }\n })\n\n this.cleanupQueue.clear()\n this.updateQueue.clear()\n }\n}\n\n/**\n * Create a new component with enhanced props and children handling\n */\nexport function createComponent<P extends ComponentProps = ComponentProps>(\n render: (props: P, children?: ComponentChildren) => DOMNode | DOMNode[],\n options: {\n displayName?: string\n defaultProps?: Partial<P>\n lifecycle?: LifecycleHooks<P>\n validation?: ValidatedProps<P>\n shouldUpdate?: (prevProps: P, nextProps: P) => boolean\n } = {}\n): Component<P> {\n const component: Component<P> = (props: P) => {\n const componentId = generateComponentId()\n const manager = ComponentManager.getInstance()\n const cleanup: (() => void)[] = []\n\n // Create component context\n const context = createComponentContext(componentId)\n\n // Create props manager with validation\n const propsManager = new PropsManager(props, {\n defaults: options.defaultProps || undefined,\n ...options.validation,\n })\n\n // Create children manager\n const childrenManager = new ChildrenManager(props.children)\n\n // Create ref manager for component references\n const refManager = new RefManager()\n\n // Track previous props for lifecycle hooks\n let previousProps: P | undefined\n let mounted = false\n\n // Create render function with reactive context\n const renderFunction: RenderFunction = () => {\n // Set up lifecycle hooks\n if (options.lifecycle?.onMount && !mounted) {\n const mountCleanup = options.lifecycle.onMount()\n if (typeof mountCleanup === 'function') {\n cleanup.push(mountCleanup)\n }\n mounted = true\n }\n\n // Set up props change tracking\n createEffect(() => {\n const currentProps = propsManager.getProps()\n\n if (previousProps && options.lifecycle?.onPropsChange) {\n const changedKeys = propsUtils.compareProps(previousProps, currentProps)\n if (changedKeys.length > 0) {\n options.lifecycle.onPropsChange(previousProps, currentProps, changedKeys)\n }\n }\n\n if (previousProps && options.lifecycle?.onUpdate) {\n options.lifecycle.onUpdate(previousProps, currentProps)\n }\n\n previousProps = { ...currentProps }\n })\n\n // Set up children change tracking\n createEffect(() => {\n const currentChildren = childrenManager.getChildren()\n if (options.lifecycle?.onChildrenChange && previousProps) {\n options.lifecycle.onChildrenChange(previousProps.children, currentChildren)\n }\n })\n\n // Set up onCleanup for unmount\n onCleanup(() => {\n if (options.lifecycle?.onUnmount) {\n options.lifecycle.onUnmount()\n }\n\n // Run all cleanup functions\n cleanup.forEach((fn) => fn())\n\n // Unregister component\n manager.unregisterComponent(componentId)\n })\n\n // Render the component\n try {\n if (options.lifecycle?.onRender) {\n options.lifecycle.onRender()\n }\n\n const currentProps = propsManager.getProps()\n const currentChildren = childrenManager.getChildren()\n\n // Check shouldUpdate if provided\n if (previousProps && options.shouldUpdate) {\n if (!options.shouldUpdate(previousProps, currentProps)) {\n // Skip render if shouldUpdate returns false\n return []\n }\n }\n\n return render(currentProps, currentChildren)\n } catch (error) {\n if (options.lifecycle?.onError) {\n options.lifecycle.onError(error as Error)\n }\n throw error\n }\n }\n\n // Create component instance\n const instance: ComponentInstance<P> = {\n type: 'component',\n render: renderFunction,\n props: propsManager.getProps(),\n children: childrenManager.getChildren(),\n context,\n cleanup,\n id: componentId,\n ref: props.ref,\n mounted: false,\n }\n\n // Apply ref if provided\n if (props.ref) {\n RefManager.applyRef(props.ref, refManager.getRef())\n }\n\n // Register with manager\n manager.registerComponent(instance)\n\n return instance\n }\n\n // Set component metadata\n if (options.displayName) {\n component.displayName = options.displayName\n }\n\n if (options.defaultProps) {\n component.defaultProps = options.defaultProps\n }\n\n return component\n}\n\n/**\n * Generate unique component ID\n */\nfunction generateComponentId(): string {\n return `component_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`\n}\n\n/**\n * Higher-order component for adding lifecycle hooks\n */\nexport function withLifecycle<P extends ComponentProps>(\n component: Component<P>,\n hooks: LifecycleHooks<P>\n): Component<P> {\n const wrappedComponent: Component<P> = (props: P) => {\n const instance = component(props)\n\n // Merge lifecycle hooks\n const existingCleanup = instance.cleanup || []\n const newCleanup: (() => void)[] = []\n\n if (hooks.onMount) {\n const mountCleanup = hooks.onMount()\n if (typeof mountCleanup === 'function') {\n newCleanup.push(mountCleanup)\n }\n }\n\n if (hooks.onUnmount) {\n newCleanup.push(hooks.onUnmount)\n }\n\n return {\n ...instance,\n cleanup: [...existingCleanup, ...newCleanup],\n }\n }\n\n wrappedComponent.displayName = `withLifecycle(${component.displayName || 'Component'})`\n return wrappedComponent\n}\n\n/**\n * Create a reactive component that updates when props change\n */\nexport function createReactiveComponent<P extends ComponentProps>(\n render: (props: P, children?: ComponentChildren) => DOMNode | DOMNode[]\n): Component<P> {\n return createComponent(render, {\n shouldUpdate: (prevProps, nextProps) => {\n // Always update for reactive components\n return !propsUtils.shallowEqual(prevProps, nextProps)\n },\n })\n}\n\n/**\n * Component error boundary\n */\nexport function createErrorBoundary<P extends ComponentProps>(\n fallback: (error: Error) => DOMNode | DOMNode[]\n): Component<P & { children: ComponentChildren }> {\n return createComponent(\n (props, children) => {\n const childrenManager = new ChildrenManager(children || props.children)\n\n try {\n return childrenManager.renderChildren()\n } catch (error) {\n console.error('Component error caught by boundary:', error)\n return fallback(error as Error)\n }\n },\n {\n displayName: 'ErrorBoundary',\n lifecycle: {\n onError: (error: Error) => {\n console.error('Error boundary caught error:', error)\n },\n },\n }\n )\n}\n\n/**\n * Create a component with advanced props handling\n */\nexport function createAdvancedComponent<P extends ComponentProps>(\n render: (\n props: P,\n children: ComponentChildren,\n helpers: {\n propsManager: PropsManager<P>\n childrenManager: ChildrenManager\n refManager: RefManager\n }\n ) => DOMNode | DOMNode[],\n options: {\n displayName?: string\n defaultProps?: Partial<P>\n validation?: ValidatedProps<P>\n lifecycle?: LifecycleHooks<P>\n shouldUpdate?: (prevProps: P, nextProps: P) => boolean\n } = {}\n): Component<P> {\n return createComponent((props, children) => {\n const propsManager = new PropsManager(props, options.validation)\n const childrenManager = new ChildrenManager(children || props.children)\n const refManager = new RefManager()\n\n return render(props, children || props.children, {\n propsManager,\n childrenManager,\n refManager,\n })\n }, options)\n}\n\n/**\n * Create fragment component for multiple children\n */\nexport function createFragment(children: ComponentChildren[]): ComponentInstance {\n const childrenManager = new ChildrenManager(children)\n\n return {\n type: 'component',\n render: () => childrenManager.renderChildren(),\n props: { children },\n children,\n id: generateComponentId(),\n }\n}\n\n/**\n * Create ref object\n */\nexport function createRef<T = any>(initialValue: T | null = null): { current: T | null } {\n return RefManager.createRef(initialValue)\n}\n\n/**\n * Forward ref to child component\n */\nexport function forwardRef<T, P extends ComponentProps>(\n render: (props: P, ref: Ref<T> | undefined) => DOMNode | DOMNode[]\n): Component<P & { ref?: Ref<T> }> {\n return createComponent<P & { ref?: Ref<T> }>((props) => {\n const { ref, ...restProps } = props\n return render(restProps as P, ref || undefined)\n })\n}\n"],"names":["_ComponentManager","__publicField","instance","cleanup","id","error","resolve","toUpdate","contextId","context","ComponentManager","createComponent","render","options","component","props","componentId","generateComponentId","manager","createComponentContext","propsManager","PropsManager","childrenManager","ChildrenManager","refManager","RefManager","previousProps","mounted","mountCleanup","createEffect","currentProps","changedKeys","propsUtils","currentChildren","onCleanup","fn","withLifecycle","hooks","wrappedComponent","existingCleanup","newCleanup","createReactiveComponent","prevProps","nextProps","createErrorBoundary","fallback","children","createAdvancedComponent","createFragment","createRef","initialValue","forwardRef","ref","restProps"],"mappings":"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"}
|
package/dist/runtime/context.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../reactive/cleanup.cjs");const x=require("../reactive/computed.cjs");require("../reactive/unified-scheduler.cjs");const g=require("../reactive/signal.cjs");require("../reactive/scheduler.cjs");require("../reactive/theme.cjs");const w=require("./component-context.cjs");var b=Object.defineProperty,y=(s,e,t)=>e in s?b(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t,a=(s,e,t)=>y(s,typeof e!="symbol"?e+"":e,t);const f=class l{constructor(){a(this,"contexts",new Map),a(this,"providerStack",new Map),a(this,"currentComponent",null)}static getInstance(){return l.instance||(l.instance=new l),l.instance}setCurrentComponent(e){this.currentComponent=e}getCurrentComponent(){return this.currentComponent}registerProvider(e,t,r){this.providerStack.has(e)||this.providerStack.set(e,[]);const n=this.providerStack.get(e),[i,c]=g.createSignal(t),o={value:t,signal:[i,c],subscribers:new Set,providers:new Set([r])};return n.push(o),r.providers.set(e,o),()=>{const h=n.indexOf(o);h!==-1&&n.splice(h,1),r.providers.delete(e),o.subscribers.clear(),o.providers.clear()}}getContextValue(e,t){const r=this.providerStack.get(e),n=r&&r.length>0?r[r.length-1]:null;if(n)return this.currentComponent&&(n.subscribers.add(this.currentComponent.id),this.currentComponent.consumers.add(e)),[n.signal[0],!0];const[i]=g.createSignal(t);return[i,!1]}updateContextValue(e,t){const r=this.providerStack.get(e),n=r&&r.length>0?r[r.length-1]:null;return n?(n.value=t,n.signal[1](t),!0):!1}getAllContexts(){const e=new Map;for(const[t,r]of this.providerStack.entries())r.length>0&&e.set(t,r[r.length-1]);return e}clear(){this.contexts.clear(),this.providerStack.clear(),this.currentComponent=null}};a(f,"instance");let C=f;class u{constructor(){a(this,"registry",C.getInstance())}createProvider(e,t,r){return{type:"component",render:()=>{const n=this.registry.registerProvider(e.symbol,t,w.createComponentContext(`provider_${e.symbol.toString()}`)),i=r.flatMap(c=>{const o=c.render();return Array.isArray(o)?o:[o]});return[{type:"element",tag:"div",props:{"data-context-provider":e.displayName||"provider"},children:i,dispose:n}]},props:{children:r},id:`provider_${Date.now()}`,children:r}}setCurrentComponent(e){this.registry.setCurrentComponent(e)}updateContext(e,t){return this.registry.updateContextValue(e.symbol,t)}getAllContexts(){return this.registry.getAllContexts()}clear(){this.registry.clear()}}function d(s,e={}){return{symbol:Symbol(e.displayName||"TachUIContext"),defaultValue:s,displayName:e.displayName}}function v(s){const e=C.getInstance(),[t,r]=e.getContextValue(s.symbol,s.defaultValue);return r||console.warn(`Context ${s.displayName||"unnamed"} used without a Provider. Using default value.`),t}function I(s,e){return t=>function(n){return new u().createProvider(s,e,[t(n)])}}function P(s,e){return{type:"component",render:()=>{const t=v(s),n=x.createComputed(()=>{const i=t();return e(i)})().render();return Array.isArray(n)?n:[n]},props:{},id:`consumer_${Date.now()}`}}class m{constructor(){a(this,"services",new Map),a(this,"factories",new Map),a(this,"singletons",new Map),a(this,"scoped",new Map),a(this,"dependencies",new Map)}register(e,t,r={}){this.services.set(e,t),r.dependencies&&this.dependencies.set(e,r.dependencies),r.singleton&&this.singletons.set(e,null),r.scoped&&this.scoped.set(e,null)}resolve(e){if(this.singletons.has(e)){let t=this.singletons.get(e);return t===null&&(t=this.createInstance(e),this.singletons.set(e,t)),t}if(this.scoped.has(e)){let t=this.scoped.get(e);return t===null&&(t=this.createInstance(e),this.scoped.set(e,t)),t}return this.createInstance(e)}createInstance(e){const r=(this.dependencies.get(e)||[]).map(c=>this.resolve(c)),n=this.factories.get(e);if(n)return n(...r);const i=this.services.get(e);if(i){if(typeof i=="function")try{return new i(...r)}catch{return i(...r)}return i}throw new Error(`Service ${String(e)} not found in DI container`)}has(e){return this.services.has(e)||this.factories.has(e)}clear(){this.services.clear(),this.factories.clear(),this.singletons.clear(),this.scoped.clear(),this.dependencies.clear()}getRegistered(){return[...this.services.keys(),...this.factories.keys()]}}const p=new m;function M(s){return p.resolve(s)}function S(s){return e=>{const t=s||e.name;return p.register(t,e),e}}const V={createContextGroup(s,e={}){const t={};for(const[r,n]of Object.entries(s))t[r]=d(n,{displayName:e.prefix?`${e.prefix}.${r}`:r});return t},combineProviders(s,e,t){const r=new u;let n=t;for(const[i,c]of Object.entries(s)){const o=e[i];n=[r.createProvider(c,o,n)]}return n[0]},createValidatedContext(s,e,t={}){return{...d(s,t),validate:e}}},D=new u;exports.ContextManager=u;exports.DIContainer=m;exports.Injectable=S;exports.contextUtils=V;exports.createContext=d;exports.createContextConsumer=P;exports.defaultContextManager=D;exports.globalDI=p;exports.inject=M;exports.useContext=v;exports.withProvider=I;
|
|
2
|
-
//# sourceMappingURL=context.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.cjs","sources":["../../src/runtime/context.ts"],"sourcesContent":["/**\n * Context and Dependency Injection System (Phase 3.2.1)\n *\n * Reactive context system for state sharing and dependency injection\n * patterns. Provides Provider/Consumer patterns similar to React Context\n * but with fine-grained reactivity integration.\n */\n\nimport { createComputed, createSignal } from '../reactive'\nimport { createComponentContext } from './component-context'\nimport type { ComponentContext, ComponentInstance, ComponentProps } from './types'\n\n/**\n * Context symbol for type-safe context identification\n */\nexport interface TachUIContext<T> {\n symbol: symbol\n defaultValue: T\n displayName?: string | undefined\n}\n\n/**\n * Context value with reactive capabilities\n */\ninterface ContextValue<T> {\n value: T\n signal: [() => T, (value: T) => void]\n subscribers: Set<symbol>\n providers: Set<ComponentContext>\n}\n\n/**\n * Global context registry\n */\nclass ContextRegistry {\n private static instance: ContextRegistry\n private contexts = new Map<symbol, ContextValue<any>>()\n private providerStack = new Map<symbol, ContextValue<any>[]>()\n private currentComponent: ComponentContext | null = null\n\n static getInstance(): ContextRegistry {\n if (!ContextRegistry.instance) {\n ContextRegistry.instance = new ContextRegistry()\n }\n return ContextRegistry.instance\n }\n\n /**\n * Set the current component context for provider resolution\n */\n setCurrentComponent(component: ComponentContext | null): void {\n this.currentComponent = component\n }\n\n /**\n * Get the current component context\n */\n getCurrentComponent(): ComponentContext | null {\n return this.currentComponent\n }\n\n /**\n * Register a context provider\n */\n registerProvider<T>(contextSymbol: symbol, value: T, component: ComponentContext): () => void {\n // Create or get context stack\n if (!this.providerStack.has(contextSymbol)) {\n this.providerStack.set(contextSymbol, [])\n }\n\n const stack = this.providerStack.get(contextSymbol)!\n\n // Create reactive signal for the context value\n const [getValue, setValue] = createSignal<T>(value)\n\n const contextValue: ContextValue<T> = {\n value,\n signal: [getValue, setValue],\n subscribers: new Set(),\n providers: new Set([component]),\n }\n\n // Push to stack (nested providers)\n stack.push(contextValue)\n\n // Register in component's providers\n component.providers.set(contextSymbol, contextValue)\n\n // Return cleanup function\n return () => {\n // Remove from stack\n const index = stack.indexOf(contextValue)\n if (index !== -1) {\n stack.splice(index, 1)\n }\n\n // Remove from component\n component.providers.delete(contextSymbol)\n\n // Cleanup subscribers\n contextValue.subscribers.clear()\n contextValue.providers.clear()\n }\n }\n\n /**\n * Get context value with reactive subscription\n */\n getContextValue<T>(contextSymbol: symbol, defaultValue: T): [() => T, boolean] {\n // Find the nearest provider in the stack\n const stack = this.providerStack.get(contextSymbol)\n const contextValue = stack && stack.length > 0 ? stack[stack.length - 1] : null\n\n if (contextValue) {\n // Subscribe current component to context changes\n if (this.currentComponent) {\n contextValue.subscribers.add(this.currentComponent.id as any)\n this.currentComponent.consumers.add(contextSymbol)\n }\n\n // Return reactive value\n return [contextValue.signal[0], true]\n }\n\n // Return default value if no provider found\n const [defaultSignal] = createSignal<T>(defaultValue)\n return [defaultSignal, false]\n }\n\n /**\n * Update context value and notify subscribers\n */\n updateContextValue<T>(contextSymbol: symbol, newValue: T): boolean {\n const stack = this.providerStack.get(contextSymbol)\n const contextValue = stack && stack.length > 0 ? stack[stack.length - 1] : null\n\n if (contextValue) {\n contextValue.value = newValue\n contextValue.signal[1](newValue)\n return true\n }\n\n return false\n }\n\n /**\n * Get all registered contexts (for debugging)\n */\n getAllContexts(): Map<symbol, ContextValue<any>> {\n const allContexts = new Map<symbol, ContextValue<any>>()\n\n for (const [symbol, stack] of this.providerStack.entries()) {\n if (stack.length > 0) {\n allContexts.set(symbol, stack[stack.length - 1])\n }\n }\n\n return allContexts\n }\n\n /**\n * Clear all contexts (for testing)\n */\n clear(): void {\n this.contexts.clear()\n this.providerStack.clear()\n this.currentComponent = null\n }\n}\n\n/**\n * Context Manager for high-level context operations\n */\nexport class ContextManager {\n private registry = ContextRegistry.getInstance()\n\n /**\n * Create a context provider component\n */\n createProvider<T>(\n context: TachUIContext<T>,\n value: T,\n children: ComponentInstance[]\n ): ComponentInstance {\n return {\n type: 'component',\n render: () => {\n // Register this provider\n const cleanup = this.registry.registerProvider(\n context.symbol,\n value,\n createComponentContext(`provider_${context.symbol.toString()}`)\n )\n\n // Render children with context available\n const childNodes = children.flatMap((child) => {\n const result = child.render()\n return Array.isArray(result) ? result : [result]\n })\n\n // Setup cleanup\n return [\n {\n type: 'element' as const,\n tag: 'div',\n props: { 'data-context-provider': context.displayName || 'provider' },\n children: childNodes,\n dispose: cleanup,\n },\n ]\n },\n props: { children },\n id: `provider_${Date.now()}`,\n children,\n }\n }\n\n /**\n * Set current component for context resolution\n */\n setCurrentComponent(component: ComponentContext | null): void {\n this.registry.setCurrentComponent(component)\n }\n\n /**\n * Update a context value\n */\n updateContext<T>(context: TachUIContext<T>, newValue: T): boolean {\n return this.registry.updateContextValue(context.symbol, newValue)\n }\n\n /**\n * Get all active contexts (for debugging)\n */\n getAllContexts(): Map<symbol, any> {\n return this.registry.getAllContexts()\n }\n\n /**\n * Clear all contexts\n */\n clear(): void {\n this.registry.clear()\n }\n}\n\n/**\n * Create a new context\n */\nexport function createContext<T>(\n defaultValue: T,\n options: {\n displayName?: string\n } = {}\n): TachUIContext<T> {\n return {\n symbol: Symbol(options.displayName || 'TachUIContext'),\n defaultValue,\n displayName: options.displayName,\n }\n}\n\n/**\n * Use context hook equivalent\n */\nexport function useContext<T>(context: TachUIContext<T>): () => T {\n const registry = ContextRegistry.getInstance()\n const [getValue, hasProvider] = registry.getContextValue(context.symbol, context.defaultValue)\n\n if (!hasProvider) {\n console.warn(\n `Context ${context.displayName || 'unnamed'} used without a Provider. Using default value.`\n )\n }\n\n return getValue\n}\n\n/**\n * Create context provider HOC\n */\nexport function withProvider<T, P extends ComponentProps>(context: TachUIContext<T>, value: T) {\n return (WrappedComponent: (props: P) => ComponentInstance) =>\n function ProviderWrapper(props: P): ComponentInstance {\n const manager = new ContextManager()\n\n return manager.createProvider(context, value, [WrappedComponent(props)])\n }\n}\n\n/**\n * Create reactive context consumer\n */\nexport function createContextConsumer<T>(\n context: TachUIContext<T>,\n render: (value: T) => ComponentInstance\n): ComponentInstance {\n return {\n type: 'component',\n render: () => {\n const getValue = useContext(context)\n\n // Create reactive effect for context changes\n const consumerInstance = createComputed(() => {\n const value = getValue()\n return render(value)\n })\n\n const result = consumerInstance().render()\n return Array.isArray(result) ? result : [result]\n },\n props: {},\n id: `consumer_${Date.now()}`,\n }\n}\n\n/**\n * Dependency injection container\n */\nexport class DIContainer {\n private services = new Map<symbol | string, any>()\n private factories = new Map<symbol | string, () => any>()\n private singletons = new Map<symbol | string, any>()\n private scoped = new Map<symbol | string, any>()\n private dependencies = new Map<symbol | string, (symbol | string)[]>()\n\n /**\n * Register a service with the container\n */\n register<T>(\n key: symbol | string,\n implementation: T | (() => T),\n options: {\n singleton?: boolean\n scoped?: boolean\n dependencies?: (symbol | string)[]\n } = {}\n ): void {\n // Always register as service - we'll handle function vs class in createInstance\n this.services.set(key, implementation)\n\n if (options.dependencies) {\n this.dependencies.set(key, options.dependencies)\n }\n\n if (options.singleton) {\n this.singletons.set(key, null) // Will be created on first access\n }\n\n if (options.scoped) {\n this.scoped.set(key, null) // Will be created per scope\n }\n }\n\n /**\n * Resolve a service from the container\n */\n resolve<T>(key: symbol | string): T {\n // Check for singleton\n if (this.singletons.has(key)) {\n let instance = this.singletons.get(key)\n if (instance === null) {\n instance = this.createInstance<T>(key)\n this.singletons.set(key, instance)\n }\n return instance\n }\n\n // Check for scoped (simplified - would need scope management in real implementation)\n if (this.scoped.has(key)) {\n let instance = this.scoped.get(key)\n if (instance === null) {\n instance = this.createInstance<T>(key)\n this.scoped.set(key, instance)\n }\n return instance\n }\n\n // Create new instance\n return this.createInstance<T>(key)\n }\n\n /**\n * Create instance with dependency injection\n */\n private createInstance<T>(key: symbol | string): T {\n // Get dependencies\n const deps = this.dependencies.get(key) || []\n const resolvedDeps = deps.map((dep) => this.resolve(dep))\n\n // Check for factory\n const factory = this.factories.get(key)\n if (factory) {\n return (factory as any)(...resolvedDeps)\n }\n\n // Get service\n const service = this.services.get(key)\n if (service) {\n if (typeof service === 'function') {\n // Check if it's a class constructor or regular function\n try {\n return new (service as any)(...resolvedDeps)\n } catch (_error) {\n // If 'new' fails, try calling as function\n return (service as any)(...resolvedDeps)\n }\n }\n return service\n }\n\n throw new Error(`Service ${String(key)} not found in DI container`)\n }\n\n /**\n * Check if service is registered\n */\n has(key: symbol | string): boolean {\n return this.services.has(key) || this.factories.has(key)\n }\n\n /**\n * Clear the container\n */\n clear(): void {\n this.services.clear()\n this.factories.clear()\n this.singletons.clear()\n this.scoped.clear()\n this.dependencies.clear()\n }\n\n /**\n * Get all registered services (for debugging)\n */\n getRegistered(): (symbol | string)[] {\n return [...this.services.keys(), ...this.factories.keys()]\n }\n}\n\n/**\n * Global DI container instance\n */\nexport const globalDI = new DIContainer()\n\n/**\n * Inject dependencies into a component\n */\nexport function inject<T>(key: symbol | string): T {\n return globalDI.resolve<T>(key)\n}\n\n/**\n * Create service registration decorator (for future use)\n */\nexport function Injectable(key?: symbol | string) {\n return <T extends new (...args: any[]) => any>(constructor: T) => {\n const serviceKey = key || constructor.name\n globalDI.register(serviceKey, constructor)\n return constructor\n }\n}\n\n/**\n * Context utilities\n */\nexport const contextUtils = {\n /**\n * Create multiple contexts at once\n */\n createContextGroup<T extends Record<string, any>>(\n defaults: T,\n options: { prefix?: string } = {}\n ): { [K in keyof T]: TachUIContext<T[K]> } {\n const contexts = {} as { [K in keyof T]: TachUIContext<T[K]> }\n\n for (const [key, value] of Object.entries(defaults)) {\n contexts[key as keyof T] = createContext(value, {\n displayName: options.prefix ? `${options.prefix}.${key}` : key,\n })\n }\n\n return contexts\n },\n\n /**\n * Combine multiple context providers\n */\n combineProviders<T extends Record<string, any>>(\n contexts: { [K in keyof T]: TachUIContext<T[K]> },\n values: T,\n children: ComponentInstance[]\n ): ComponentInstance {\n const manager = new ContextManager()\n\n // Nest providers\n let currentChildren = children\n\n for (const [key, context] of Object.entries(contexts)) {\n const value = values[key as keyof T]\n currentChildren = [manager.createProvider(context, value, currentChildren)]\n }\n\n return currentChildren[0]\n },\n\n /**\n * Create context with validation\n */\n createValidatedContext<T>(\n defaultValue: T,\n validator: (value: T) => boolean | string,\n options: { displayName?: string } = {}\n ): TachUIContext<T> & { validate: (value: T) => boolean | string } {\n const context = createContext(defaultValue, options)\n\n return {\n ...context,\n validate: validator,\n }\n },\n}\n\n/**\n * Default context manager instance\n */\nexport const defaultContextManager = new ContextManager()\n"],"names":["_ContextRegistry","__publicField","component","contextSymbol","value","stack","getValue","setValue","createSignal","contextValue","index","defaultValue","defaultSignal","newValue","allContexts","symbol","ContextRegistry","ContextManager","context","children","cleanup","createComponentContext","childNodes","child","result","createContext","options","useContext","registry","hasProvider","withProvider","WrappedComponent","props","createContextConsumer","render","createComputed","DIContainer","key","implementation","instance","resolvedDeps","dep","factory","service","globalDI","inject","Injectable","constructor","serviceKey","contextUtils","defaults","contexts","values","manager","currentChildren","validator","defaultContextManager"],"mappings":"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"}
|