@tachui/core 0.7.0-alpha1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +363 -0
- package/dist/assets/Asset.cjs +2 -0
- package/dist/assets/Asset.cjs.map +1 -0
- package/dist/assets/Asset.d.ts +11 -0
- package/dist/assets/Asset.d.ts.map +1 -0
- package/dist/assets/Asset.js +9 -0
- package/dist/assets/Asset.js.map +1 -0
- package/dist/assets/AssetCollection.cjs +2 -0
- package/dist/assets/AssetCollection.cjs.map +1 -0
- package/dist/assets/AssetCollection.d.ts +14 -0
- package/dist/assets/AssetCollection.d.ts.map +1 -0
- package/dist/assets/AssetCollection.js +44 -0
- package/dist/assets/AssetCollection.js.map +1 -0
- package/dist/assets/ColorAsset.cjs +2 -0
- package/dist/assets/ColorAsset.cjs.map +1 -0
- package/dist/assets/ColorAsset.d.ts +31 -0
- package/dist/assets/ColorAsset.d.ts.map +1 -0
- package/dist/assets/ColorAsset.js +114 -0
- package/dist/assets/ColorAsset.js.map +1 -0
- package/dist/assets/FontAsset.cjs +9 -0
- package/dist/assets/FontAsset.cjs.map +1 -0
- package/dist/assets/FontAsset.d.ts +114 -0
- package/dist/assets/FontAsset.d.ts.map +1 -0
- package/dist/assets/FontAsset.js +173 -0
- package/dist/assets/FontAsset.js.map +1 -0
- package/dist/assets/ImageAsset.cjs +2 -0
- package/dist/assets/ImageAsset.cjs.map +1 -0
- package/dist/assets/ImageAsset.d.ts +35 -0
- package/dist/assets/ImageAsset.d.ts.map +1 -0
- package/dist/assets/ImageAsset.js +39 -0
- package/dist/assets/ImageAsset.js.map +1 -0
- package/dist/assets/index.cjs +2 -0
- package/dist/assets/index.cjs.map +1 -0
- package/dist/assets/index.d.ts +26 -0
- package/dist/assets/index.d.ts.map +1 -0
- package/dist/assets/index.js +119 -0
- package/dist/assets/index.js.map +1 -0
- package/dist/assets/types.d.ts +70 -0
- package/dist/assets/types.d.ts.map +1 -0
- package/dist/bundles/common.d.ts +24 -0
- package/dist/bundles/common.d.ts.map +1 -0
- package/dist/bundles/complete.d.ts +27 -0
- package/dist/bundles/complete.d.ts.map +1 -0
- package/dist/bundles/essential.d.ts +24 -0
- package/dist/bundles/essential.d.ts.map +1 -0
- package/dist/bundles/minimal.d.ts +24 -0
- package/dist/bundles/minimal.d.ts.map +1 -0
- package/dist/bundles/production-minimal.d.ts +35 -0
- package/dist/bundles/production-minimal.d.ts.map +1 -0
- package/dist/common.cjs +2 -0
- package/dist/common.cjs.map +1 -0
- package/dist/common.js +985 -0
- package/dist/common.js.map +1 -0
- package/dist/compiler/advanced-parser.cjs +5 -0
- package/dist/compiler/advanced-parser.cjs.map +1 -0
- package/dist/compiler/advanced-parser.d.ts +113 -0
- package/dist/compiler/advanced-parser.d.ts.map +1 -0
- package/dist/compiler/advanced-parser.js +440 -0
- package/dist/compiler/advanced-parser.js.map +1 -0
- package/dist/compiler/codegen.cjs +6 -0
- package/dist/compiler/codegen.cjs.map +1 -0
- package/dist/compiler/codegen.d.ts +20 -0
- package/dist/compiler/codegen.d.ts.map +1 -0
- package/dist/compiler/codegen.js +241 -0
- package/dist/compiler/codegen.js.map +1 -0
- package/dist/compiler/enhanced-codegen.cjs +6 -0
- package/dist/compiler/enhanced-codegen.cjs.map +1 -0
- package/dist/compiler/enhanced-codegen.d.ts +121 -0
- package/dist/compiler/enhanced-codegen.d.ts.map +1 -0
- package/dist/compiler/enhanced-codegen.js +347 -0
- package/dist/compiler/enhanced-codegen.js.map +1 -0
- package/dist/compiler/index.cjs +2 -0
- package/dist/compiler/index.cjs.map +1 -0
- package/dist/compiler/index.d.ts +14 -0
- package/dist/compiler/index.d.ts.map +1 -0
- package/dist/compiler/index.js +13 -0
- package/dist/compiler/index.js.map +1 -0
- package/dist/compiler/parser.cjs +5 -0
- package/dist/compiler/parser.cjs.map +1 -0
- package/dist/compiler/parser.d.ts +12 -0
- package/dist/compiler/parser.d.ts.map +1 -0
- package/dist/compiler/parser.js +275 -0
- package/dist/compiler/parser.js.map +1 -0
- package/dist/compiler/plugin.cjs +33 -0
- package/dist/compiler/plugin.cjs.map +1 -0
- package/dist/compiler/plugin.d.ts +13 -0
- package/dist/compiler/plugin.d.ts.map +1 -0
- package/dist/compiler/plugin.js +103 -0
- package/dist/compiler/plugin.js.map +1 -0
- package/dist/compiler/types.d.ts +149 -0
- package/dist/compiler/types.d.ts.map +1 -0
- package/dist/components/BasicInput.cjs +2 -0
- package/dist/components/BasicInput.cjs.map +1 -0
- package/dist/components/BasicInput.d.ts +116 -0
- package/dist/components/BasicInput.d.ts.map +1 -0
- package/dist/components/BasicInput.js +182 -0
- package/dist/components/BasicInput.js.map +1 -0
- package/dist/components/Button.cjs +7 -0
- package/dist/components/Button.cjs.map +1 -0
- package/dist/components/Button.d.ts +252 -0
- package/dist/components/Button.d.ts.map +1 -0
- package/dist/components/Button.js +408 -0
- package/dist/components/Button.js.map +1 -0
- package/dist/components/Divider.cjs +2 -0
- package/dist/components/Divider.cjs.map +1 -0
- package/dist/components/Divider.d.ts +141 -0
- package/dist/components/Divider.d.ts.map +1 -0
- package/dist/components/Divider.js +187 -0
- package/dist/components/Divider.js.map +1 -0
- package/dist/components/EnhancedLink.cjs +2 -0
- package/dist/components/EnhancedLink.cjs.map +1 -0
- package/dist/components/EnhancedLink.d.ts +365 -0
- package/dist/components/EnhancedLink.d.ts.map +1 -0
- package/dist/components/EnhancedLink.js +345 -0
- package/dist/components/EnhancedLink.js.map +1 -0
- package/dist/components/Form.cjs +2 -0
- package/dist/components/Form.cjs.map +1 -0
- package/dist/components/Form.d.ts +141 -0
- package/dist/components/Form.d.ts.map +1 -0
- package/dist/components/Form.js +244 -0
- package/dist/components/Form.js.map +1 -0
- package/dist/components/Grid.cjs +2 -0
- package/dist/components/Grid.cjs.map +1 -0
- package/dist/components/Grid.d.ts +698 -0
- package/dist/components/Grid.d.ts.map +1 -0
- package/dist/components/Grid.js +1045 -0
- package/dist/components/Grid.js.map +1 -0
- package/dist/components/GridResponsive.cjs +2 -0
- package/dist/components/GridResponsive.cjs.map +1 -0
- package/dist/components/GridResponsive.d.ts +214 -0
- package/dist/components/GridResponsive.d.ts.map +1 -0
- package/dist/components/GridResponsive.js +382 -0
- package/dist/components/GridResponsive.js.map +1 -0
- package/dist/components/Image.cjs +2 -0
- package/dist/components/Image.cjs.map +1 -0
- package/dist/components/Image.d.ts +162 -0
- package/dist/components/Image.d.ts.map +1 -0
- package/dist/components/Image.js +212 -0
- package/dist/components/Image.js.map +1 -0
- package/dist/components/List.cjs +2 -0
- package/dist/components/List.cjs.map +1 -0
- package/dist/components/List.d.ts +287 -0
- package/dist/components/List.d.ts.map +1 -0
- package/dist/components/List.js +561 -0
- package/dist/components/List.js.map +1 -0
- package/dist/components/Menu.cjs +2 -0
- package/dist/components/Menu.cjs.map +1 -0
- package/dist/components/Menu.d.ts +159 -0
- package/dist/components/Menu.d.ts.map +1 -0
- package/dist/components/Menu.js +443 -0
- package/dist/components/Menu.js.map +1 -0
- package/dist/components/Picker.cjs +2 -0
- package/dist/components/Picker.cjs.map +1 -0
- package/dist/components/Picker.d.ts +153 -0
- package/dist/components/Picker.d.ts.map +1 -0
- package/dist/components/Picker.js +478 -0
- package/dist/components/Picker.js.map +1 -0
- package/dist/components/ScrollView.cjs +6 -0
- package/dist/components/ScrollView.cjs.map +1 -0
- package/dist/components/ScrollView.d.ts +222 -0
- package/dist/components/ScrollView.d.ts.map +1 -0
- package/dist/components/ScrollView.js +363 -0
- package/dist/components/ScrollView.js.map +1 -0
- package/dist/components/Section.cjs +2 -0
- package/dist/components/Section.cjs.map +1 -0
- package/dist/components/Section.d.ts +153 -0
- package/dist/components/Section.d.ts.map +1 -0
- package/dist/components/Section.js +323 -0
- package/dist/components/Section.js.map +1 -0
- package/dist/components/Show.cjs +2 -0
- package/dist/components/Show.cjs.map +1 -0
- package/dist/components/Show.d.ts +64 -0
- package/dist/components/Show.d.ts.map +1 -0
- package/dist/components/Show.js +112 -0
- package/dist/components/Show.js.map +1 -0
- package/dist/components/Spacer.cjs +2 -0
- package/dist/components/Spacer.cjs.map +1 -0
- package/dist/components/Spacer.d.ts +35 -0
- package/dist/components/Spacer.d.ts.map +1 -0
- package/dist/components/Spacer.js +53 -0
- package/dist/components/Spacer.js.map +1 -0
- package/dist/components/Text.cjs +2 -0
- package/dist/components/Text.cjs.map +1 -0
- package/dist/components/Text.d.ts +242 -0
- package/dist/components/Text.d.ts.map +1 -0
- package/dist/components/Text.js +193 -0
- package/dist/components/Text.js.map +1 -0
- package/dist/components/Toggle.cjs +2 -0
- package/dist/components/Toggle.cjs.map +1 -0
- package/dist/components/Toggle.d.ts +207 -0
- package/dist/components/Toggle.d.ts.map +1 -0
- package/dist/components/Toggle.js +477 -0
- package/dist/components/Toggle.js.map +1 -0
- package/dist/components/index.cjs +2 -0
- package/dist/components/index.cjs.map +1 -0
- package/dist/components/index.d.ts +45 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +104 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/wrapper.cjs +2 -0
- package/dist/components/wrapper.cjs.map +1 -0
- package/dist/components/wrapper.d.ts +249 -0
- package/dist/components/wrapper.d.ts.map +1 -0
- package/dist/components/wrapper.js +484 -0
- package/dist/components/wrapper.js.map +1 -0
- package/dist/concatenation/concatenatable.cjs +2 -0
- package/dist/concatenation/concatenatable.cjs.map +1 -0
- package/dist/concatenation/concatenatable.d.ts +63 -0
- package/dist/concatenation/concatenatable.d.ts.map +1 -0
- package/dist/concatenation/concatenatable.js +118 -0
- package/dist/concatenation/concatenatable.js.map +1 -0
- package/dist/concatenation/concatenated-component.cjs +2 -0
- package/dist/concatenation/concatenated-component.cjs.map +1 -0
- package/dist/concatenation/concatenated-component.d.ts +110 -0
- package/dist/concatenation/concatenated-component.d.ts.map +1 -0
- package/dist/concatenation/concatenated-component.js +276 -0
- package/dist/concatenation/concatenated-component.js.map +1 -0
- package/dist/concatenation/index.d.ts +13 -0
- package/dist/concatenation/index.d.ts.map +1 -0
- package/dist/concatenation/text-optimizer.cjs +2 -0
- package/dist/concatenation/text-optimizer.cjs.map +1 -0
- package/dist/concatenation/text-optimizer.d.ts +104 -0
- package/dist/concatenation/text-optimizer.d.ts.map +1 -0
- package/dist/concatenation/text-optimizer.js +236 -0
- package/dist/concatenation/text-optimizer.js.map +1 -0
- package/dist/concatenation/types.cjs +2 -0
- package/dist/concatenation/types.cjs.map +1 -0
- package/dist/concatenation/types.d.ts +88 -0
- package/dist/concatenation/types.d.ts.map +1 -0
- package/dist/concatenation/types.js +13 -0
- package/dist/concatenation/types.js.map +1 -0
- package/dist/constants/frame-utils.cjs +2 -0
- package/dist/constants/frame-utils.cjs.map +1 -0
- package/dist/constants/frame-utils.d.ts +68 -0
- package/dist/constants/frame-utils.d.ts.map +1 -0
- package/dist/constants/frame-utils.js +116 -0
- package/dist/constants/frame-utils.js.map +1 -0
- package/dist/constants/index.d.ts +8 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/constants/layout.cjs +2 -0
- package/dist/constants/layout.cjs.map +1 -0
- package/dist/constants/layout.d.ts +60 -0
- package/dist/constants/layout.d.ts.map +1 -0
- package/dist/constants/layout.js +46 -0
- package/dist/constants/layout.js.map +1 -0
- package/dist/css-classes/component-base.cjs +2 -0
- package/dist/css-classes/component-base.cjs.map +1 -0
- package/dist/css-classes/component-base.d.ts +40 -0
- package/dist/css-classes/component-base.d.ts.map +1 -0
- package/dist/css-classes/component-base.js +62 -0
- package/dist/css-classes/component-base.js.map +1 -0
- package/dist/css-classes/css-class-manager.cjs +2 -0
- package/dist/css-classes/css-class-manager.cjs.map +1 -0
- package/dist/css-classes/css-class-manager.d.ts +89 -0
- package/dist/css-classes/css-class-manager.d.ts.map +1 -0
- package/dist/css-classes/css-class-manager.js +209 -0
- package/dist/css-classes/css-class-manager.js.map +1 -0
- package/dist/css-classes/dom-integration.cjs +2 -0
- package/dist/css-classes/dom-integration.cjs.map +1 -0
- package/dist/css-classes/dom-integration.d.ts +76 -0
- package/dist/css-classes/dom-integration.d.ts.map +1 -0
- package/dist/css-classes/dom-integration.js +67 -0
- package/dist/css-classes/dom-integration.js.map +1 -0
- package/dist/css-classes/enhanced-renderer.cjs +2 -0
- package/dist/css-classes/enhanced-renderer.cjs.map +1 -0
- package/dist/css-classes/enhanced-renderer.d.ts +42 -0
- package/dist/css-classes/enhanced-renderer.d.ts.map +1 -0
- package/dist/css-classes/enhanced-renderer.js +73 -0
- package/dist/css-classes/enhanced-renderer.js.map +1 -0
- package/dist/css-classes/index.d.ts +14 -0
- package/dist/css-classes/index.d.ts.map +1 -0
- package/dist/css-classes/types.d.ts +59 -0
- package/dist/css-classes/types.d.ts.map +1 -0
- package/dist/css-classes/utilities.cjs +2 -0
- package/dist/css-classes/utilities.cjs.map +1 -0
- package/dist/css-classes/utilities.d.ts +104 -0
- package/dist/css-classes/utilities.d.ts.map +1 -0
- package/dist/css-classes/utilities.js +41 -0
- package/dist/css-classes/utilities.js.map +1 -0
- package/dist/debug/index.d.ts +61 -0
- package/dist/debug/index.d.ts.map +1 -0
- package/dist/debug.cjs +52 -0
- package/dist/debug.cjs.map +1 -0
- package/dist/debug.js +179 -0
- package/dist/debug.js.map +1 -0
- package/dist/developer-experience/enhanced-errors.d.ts +128 -0
- package/dist/developer-experience/enhanced-errors.d.ts.map +1 -0
- package/dist/developer-experience/enhanced-types.d.ts +281 -0
- package/dist/developer-experience/enhanced-types.d.ts.map +1 -0
- package/dist/developer-experience/index.d.ts +44 -0
- package/dist/developer-experience/index.d.ts.map +1 -0
- package/dist/essential.cjs +2 -0
- package/dist/essential.cjs.map +1 -0
- package/dist/essential.js +968 -0
- package/dist/essential.js.map +1 -0
- package/dist/gradients/css-generator.cjs +2 -0
- package/dist/gradients/css-generator.cjs.map +1 -0
- package/dist/gradients/css-generator.d.ts +10 -0
- package/dist/gradients/css-generator.d.ts.map +1 -0
- package/dist/gradients/css-generator.js +100 -0
- package/dist/gradients/css-generator.js.map +1 -0
- package/dist/gradients/examples.cjs +2 -0
- package/dist/gradients/examples.cjs.map +1 -0
- package/dist/gradients/examples.d.ts +432 -0
- package/dist/gradients/examples.d.ts.map +1 -0
- package/dist/gradients/examples.js +555 -0
- package/dist/gradients/examples.js.map +1 -0
- package/dist/gradients/gradient-asset.cjs +2 -0
- package/dist/gradients/gradient-asset.cjs.map +1 -0
- package/dist/gradients/gradient-asset.d.ts +10 -0
- package/dist/gradients/gradient-asset.d.ts.map +1 -0
- package/dist/gradients/gradient-asset.js +22 -0
- package/dist/gradients/gradient-asset.js.map +1 -0
- package/dist/gradients/index.cjs +2 -0
- package/dist/gradients/index.cjs.map +1 -0
- package/dist/gradients/index.d.ts +19 -0
- package/dist/gradients/index.d.ts.map +1 -0
- package/dist/gradients/index.js +78 -0
- package/dist/gradients/index.js.map +1 -0
- package/dist/gradients/performance.cjs +2 -0
- package/dist/gradients/performance.cjs.map +1 -0
- package/dist/gradients/performance.d.ts +146 -0
- package/dist/gradients/performance.d.ts.map +1 -0
- package/dist/gradients/performance.js +237 -0
- package/dist/gradients/performance.js.map +1 -0
- package/dist/gradients/presets.cjs +2 -0
- package/dist/gradients/presets.cjs.map +1 -0
- package/dist/gradients/presets.d.ts +165 -0
- package/dist/gradients/presets.d.ts.map +1 -0
- package/dist/gradients/presets.js +254 -0
- package/dist/gradients/presets.js.map +1 -0
- package/dist/gradients/reactive.cjs +2 -0
- package/dist/gradients/reactive.cjs.map +1 -0
- package/dist/gradients/reactive.d.ts +167 -0
- package/dist/gradients/reactive.d.ts.map +1 -0
- package/dist/gradients/reactive.js +239 -0
- package/dist/gradients/reactive.js.map +1 -0
- package/dist/gradients/state-gradient-asset.cjs +2 -0
- package/dist/gradients/state-gradient-asset.cjs.map +1 -0
- package/dist/gradients/state-gradient-asset.d.ts +67 -0
- package/dist/gradients/state-gradient-asset.d.ts.map +1 -0
- package/dist/gradients/state-gradient-asset.js +111 -0
- package/dist/gradients/state-gradient-asset.js.map +1 -0
- package/dist/gradients/types.d.ts +94 -0
- package/dist/gradients/types.d.ts.map +1 -0
- package/dist/gradients/utils.cjs +2 -0
- package/dist/gradients/utils.cjs.map +1 -0
- package/dist/gradients/utils.d.ts +313 -0
- package/dist/gradients/utils.d.ts.map +1 -0
- package/dist/gradients/utils.js +385 -0
- package/dist/gradients/utils.js.map +1 -0
- package/dist/gradients/validation.cjs +2 -0
- package/dist/gradients/validation.cjs.map +1 -0
- package/dist/gradients/validation.d.ts +156 -0
- package/dist/gradients/validation.d.ts.map +1 -0
- package/dist/gradients/validation.js +209 -0
- package/dist/gradients/validation.js.map +1 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +965 -0
- package/dist/index.js.map +1 -0
- package/dist/index2.cjs +2 -0
- package/dist/index2.cjs.map +1 -0
- package/dist/index2.js +293 -0
- package/dist/index2.js.map +1 -0
- package/dist/lifecycle/hooks.cjs +2 -0
- package/dist/lifecycle/hooks.cjs.map +1 -0
- package/dist/lifecycle/hooks.d.ts +101 -0
- package/dist/lifecycle/hooks.d.ts.map +1 -0
- package/dist/lifecycle/hooks.js +159 -0
- package/dist/lifecycle/hooks.js.map +1 -0
- package/dist/minimal-prod.cjs +2 -0
- package/dist/minimal-prod.cjs.map +1 -0
- package/dist/minimal-prod.js +193 -0
- package/dist/minimal-prod.js.map +1 -0
- package/dist/minimal.cjs +2 -0
- package/dist/minimal.cjs.map +1 -0
- package/dist/minimal.js +968 -0
- package/dist/minimal.js.map +1 -0
- package/dist/modifiers/as-html-validator.cjs +2 -0
- package/dist/modifiers/as-html-validator.cjs.map +1 -0
- package/dist/modifiers/as-html-validator.d.ts +20 -0
- package/dist/modifiers/as-html-validator.d.ts.map +1 -0
- package/dist/modifiers/as-html-validator.js +47 -0
- package/dist/modifiers/as-html-validator.js.map +1 -0
- package/dist/modifiers/as-html.cjs +2 -0
- package/dist/modifiers/as-html.cjs.map +1 -0
- package/dist/modifiers/as-html.d.ts +65 -0
- package/dist/modifiers/as-html.d.ts.map +1 -0
- package/dist/modifiers/as-html.js +71 -0
- package/dist/modifiers/as-html.js.map +1 -0
- package/dist/modifiers/attributes.cjs +2 -0
- package/dist/modifiers/attributes.cjs.map +1 -0
- package/dist/modifiers/attributes.d.ts +203 -0
- package/dist/modifiers/attributes.d.ts.map +1 -0
- package/dist/modifiers/attributes.js +272 -0
- package/dist/modifiers/attributes.js.map +1 -0
- package/dist/modifiers/backdrop.cjs +2 -0
- package/dist/modifiers/backdrop.cjs.map +1 -0
- package/dist/modifiers/backdrop.d.ts +59 -0
- package/dist/modifiers/backdrop.d.ts.map +1 -0
- package/dist/modifiers/backdrop.js +109 -0
- package/dist/modifiers/backdrop.js.map +1 -0
- package/dist/modifiers/background.cjs +2 -0
- package/dist/modifiers/background.cjs.map +1 -0
- package/dist/modifiers/background.d.ts +21 -0
- package/dist/modifiers/background.d.ts.map +1 -0
- package/dist/modifiers/background.js +67 -0
- package/dist/modifiers/background.js.map +1 -0
- package/dist/modifiers/base.cjs +25 -0
- package/dist/modifiers/base.cjs.map +1 -0
- package/dist/modifiers/base.d.ts +156 -0
- package/dist/modifiers/base.d.ts.map +1 -0
- package/dist/modifiers/base.js +745 -0
- package/dist/modifiers/base.js.map +1 -0
- package/dist/modifiers/basic-sanitizer.cjs +2 -0
- package/dist/modifiers/basic-sanitizer.cjs.map +1 -0
- package/dist/modifiers/basic-sanitizer.d.ts +54 -0
- package/dist/modifiers/basic-sanitizer.d.ts.map +1 -0
- package/dist/modifiers/basic-sanitizer.js +162 -0
- package/dist/modifiers/basic-sanitizer.js.map +1 -0
- package/dist/modifiers/border.cjs +2 -0
- package/dist/modifiers/border.cjs.map +1 -0
- package/dist/modifiers/border.d.ts +217 -0
- package/dist/modifiers/border.d.ts.map +1 -0
- package/dist/modifiers/border.js +160 -0
- package/dist/modifiers/border.js.map +1 -0
- package/dist/modifiers/builder.cjs +2 -0
- package/dist/modifiers/builder.cjs.map +1 -0
- package/dist/modifiers/builder.d.ts +377 -0
- package/dist/modifiers/builder.d.ts.map +1 -0
- package/dist/modifiers/builder.js +930 -0
- package/dist/modifiers/builder.js.map +1 -0
- package/dist/modifiers/core.cjs +2 -0
- package/dist/modifiers/core.cjs.map +1 -0
- package/dist/modifiers/core.d.ts +407 -0
- package/dist/modifiers/core.d.ts.map +1 -0
- package/dist/modifiers/core.js +398 -0
- package/dist/modifiers/core.js.map +1 -0
- package/dist/modifiers/css.cjs +2 -0
- package/dist/modifiers/css.cjs.map +1 -0
- package/dist/modifiers/css.d.ts +86 -0
- package/dist/modifiers/css.d.ts.map +1 -0
- package/dist/modifiers/css.js +50 -0
- package/dist/modifiers/css.js.map +1 -0
- package/dist/modifiers/effects.cjs +2 -0
- package/dist/modifiers/effects.cjs.map +1 -0
- package/dist/modifiers/effects.d.ts +159 -0
- package/dist/modifiers/effects.d.ts.map +1 -0
- package/dist/modifiers/effects.js +178 -0
- package/dist/modifiers/effects.js.map +1 -0
- package/dist/modifiers/elements.cjs +2 -0
- package/dist/modifiers/elements.cjs.map +1 -0
- package/dist/modifiers/elements.d.ts +240 -0
- package/dist/modifiers/elements.d.ts.map +1 -0
- package/dist/modifiers/elements.js +216 -0
- package/dist/modifiers/elements.js.map +1 -0
- package/dist/modifiers/filters.cjs +2 -0
- package/dist/modifiers/filters.cjs.map +1 -0
- package/dist/modifiers/filters.d.ts +275 -0
- package/dist/modifiers/filters.d.ts.map +1 -0
- package/dist/modifiers/filters.js +223 -0
- package/dist/modifiers/filters.js.map +1 -0
- package/dist/modifiers/flexbox.cjs +2 -0
- package/dist/modifiers/flexbox.cjs.map +1 -0
- package/dist/modifiers/flexbox.d.ts +82 -0
- package/dist/modifiers/flexbox.d.ts.map +1 -0
- package/dist/modifiers/flexbox.js +56 -0
- package/dist/modifiers/flexbox.js.map +1 -0
- package/dist/modifiers/font.cjs +2 -0
- package/dist/modifiers/font.cjs.map +1 -0
- package/dist/modifiers/font.d.ts +71 -0
- package/dist/modifiers/font.d.ts.map +1 -0
- package/dist/modifiers/font.js +60 -0
- package/dist/modifiers/font.js.map +1 -0
- package/dist/modifiers/grid.cjs +2 -0
- package/dist/modifiers/grid.cjs.map +1 -0
- package/dist/modifiers/grid.d.ts +92 -0
- package/dist/modifiers/grid.d.ts.map +1 -0
- package/dist/modifiers/grid.js +92 -0
- package/dist/modifiers/grid.js.map +1 -0
- package/dist/modifiers/index.d.ts +58 -0
- package/dist/modifiers/index.d.ts.map +1 -0
- package/dist/modifiers/margin.cjs +2 -0
- package/dist/modifiers/margin.cjs.map +1 -0
- package/dist/modifiers/margin.d.ts +128 -0
- package/dist/modifiers/margin.d.ts.map +1 -0
- package/dist/modifiers/margin.js +65 -0
- package/dist/modifiers/margin.js.map +1 -0
- package/dist/modifiers/padding.cjs +2 -0
- package/dist/modifiers/padding.cjs.map +1 -0
- package/dist/modifiers/padding.d.ts +204 -0
- package/dist/modifiers/padding.d.ts.map +1 -0
- package/dist/modifiers/padding.js +109 -0
- package/dist/modifiers/padding.js.map +1 -0
- package/dist/modifiers/registry.cjs +2 -0
- package/dist/modifiers/registry.cjs.map +1 -0
- package/dist/modifiers/registry.d.ts +69 -0
- package/dist/modifiers/registry.d.ts.map +1 -0
- package/dist/modifiers/registry.js +163 -0
- package/dist/modifiers/registry.js.map +1 -0
- package/dist/modifiers/responsive/advanced-utilities.cjs +2 -0
- package/dist/modifiers/responsive/advanced-utilities.cjs.map +1 -0
- package/dist/modifiers/responsive/advanced-utilities.d.ts +118 -0
- package/dist/modifiers/responsive/advanced-utilities.d.ts.map +1 -0
- package/dist/modifiers/responsive/advanced-utilities.js +291 -0
- package/dist/modifiers/responsive/advanced-utilities.js.map +1 -0
- package/dist/modifiers/responsive/breakpoints.cjs +2 -0
- package/dist/modifiers/responsive/breakpoints.cjs.map +1 -0
- package/dist/modifiers/responsive/breakpoints.d.ts +81 -0
- package/dist/modifiers/responsive/breakpoints.d.ts.map +1 -0
- package/dist/modifiers/responsive/breakpoints.js +168 -0
- package/dist/modifiers/responsive/breakpoints.js.map +1 -0
- package/dist/modifiers/responsive/css-generator.cjs +5 -0
- package/dist/modifiers/responsive/css-generator.cjs.map +1 -0
- package/dist/modifiers/responsive/css-generator.d.ts +100 -0
- package/dist/modifiers/responsive/css-generator.d.ts.map +1 -0
- package/dist/modifiers/responsive/css-generator.js +261 -0
- package/dist/modifiers/responsive/css-generator.js.map +1 -0
- package/dist/modifiers/responsive/dev-tools.cjs +77 -0
- package/dist/modifiers/responsive/dev-tools.cjs.map +1 -0
- package/dist/modifiers/responsive/dev-tools.d.ts +107 -0
- package/dist/modifiers/responsive/dev-tools.d.ts.map +1 -0
- package/dist/modifiers/responsive/dev-tools.js +380 -0
- package/dist/modifiers/responsive/dev-tools.js.map +1 -0
- package/dist/modifiers/responsive/index.d.ts +28 -0
- package/dist/modifiers/responsive/index.d.ts.map +1 -0
- package/dist/modifiers/responsive/layout-patterns.cjs +2 -0
- package/dist/modifiers/responsive/layout-patterns.cjs.map +1 -0
- package/dist/modifiers/responsive/layout-patterns.d.ts +230 -0
- package/dist/modifiers/responsive/layout-patterns.d.ts.map +1 -0
- package/dist/modifiers/responsive/layout-patterns.js +254 -0
- package/dist/modifiers/responsive/layout-patterns.js.map +1 -0
- package/dist/modifiers/responsive/performance.cjs +3 -0
- package/dist/modifiers/responsive/performance.cjs.map +1 -0
- package/dist/modifiers/responsive/performance.d.ts +130 -0
- package/dist/modifiers/responsive/performance.d.ts.map +1 -0
- package/dist/modifiers/responsive/performance.js +212 -0
- package/dist/modifiers/responsive/performance.js.map +1 -0
- package/dist/modifiers/responsive/responsive-builder.cjs +2 -0
- package/dist/modifiers/responsive/responsive-builder.cjs.map +1 -0
- package/dist/modifiers/responsive/responsive-builder.d.ts +133 -0
- package/dist/modifiers/responsive/responsive-builder.d.ts.map +1 -0
- package/dist/modifiers/responsive/responsive-builder.js +272 -0
- package/dist/modifiers/responsive/responsive-builder.js.map +1 -0
- package/dist/modifiers/responsive/responsive-modifier.cjs +3 -0
- package/dist/modifiers/responsive/responsive-modifier.cjs.map +1 -0
- package/dist/modifiers/responsive/responsive-modifier.d.ts +123 -0
- package/dist/modifiers/responsive/responsive-modifier.d.ts.map +1 -0
- package/dist/modifiers/responsive/responsive-modifier.js +204 -0
- package/dist/modifiers/responsive/responsive-modifier.js.map +1 -0
- package/dist/modifiers/responsive/types.cjs +2 -0
- package/dist/modifiers/responsive/types.cjs.map +1 -0
- package/dist/modifiers/responsive/types.d.ts +183 -0
- package/dist/modifiers/responsive/types.d.ts.map +1 -0
- package/dist/modifiers/responsive/types.js +26 -0
- package/dist/modifiers/responsive/types.js.map +1 -0
- package/dist/modifiers/responsive/utilities.cjs +16 -0
- package/dist/modifiers/responsive/utilities.cjs.map +1 -0
- package/dist/modifiers/responsive/utilities.d.ts +149 -0
- package/dist/modifiers/responsive/utilities.d.ts.map +1 -0
- package/dist/modifiers/responsive/utilities.js +273 -0
- package/dist/modifiers/responsive/utilities.js.map +1 -0
- package/dist/modifiers/scroll.cjs +2 -0
- package/dist/modifiers/scroll.cjs.map +1 -0
- package/dist/modifiers/scroll.d.ts +143 -0
- package/dist/modifiers/scroll.d.ts.map +1 -0
- package/dist/modifiers/scroll.js +82 -0
- package/dist/modifiers/scroll.js.map +1 -0
- package/dist/modifiers/shadows.cjs +2 -0
- package/dist/modifiers/shadows.cjs.map +1 -0
- package/dist/modifiers/shadows.d.ts +114 -0
- package/dist/modifiers/shadows.d.ts.map +1 -0
- package/dist/modifiers/shadows.js +147 -0
- package/dist/modifiers/shadows.js.map +1 -0
- package/dist/modifiers/size.cjs +2 -0
- package/dist/modifiers/size.cjs.map +1 -0
- package/dist/modifiers/size.d.ts +113 -0
- package/dist/modifiers/size.d.ts.map +1 -0
- package/dist/modifiers/size.js +74 -0
- package/dist/modifiers/size.js.map +1 -0
- package/dist/modifiers/text.cjs +2 -0
- package/dist/modifiers/text.cjs.map +1 -0
- package/dist/modifiers/text.d.ts +147 -0
- package/dist/modifiers/text.d.ts.map +1 -0
- package/dist/modifiers/text.js +166 -0
- package/dist/modifiers/text.js.map +1 -0
- package/dist/modifiers/transformations.cjs +2 -0
- package/dist/modifiers/transformations.cjs.map +1 -0
- package/dist/modifiers/transformations.d.ts +329 -0
- package/dist/modifiers/transformations.d.ts.map +1 -0
- package/dist/modifiers/transformations.js +216 -0
- package/dist/modifiers/transformations.js.map +1 -0
- package/dist/modifiers/transitions.cjs +2 -0
- package/dist/modifiers/transitions.cjs.map +1 -0
- package/dist/modifiers/transitions.d.ts +98 -0
- package/dist/modifiers/transitions.d.ts.map +1 -0
- package/dist/modifiers/transitions.js +102 -0
- package/dist/modifiers/transitions.js.map +1 -0
- package/dist/modifiers/types.cjs +2 -0
- package/dist/modifiers/types.cjs.map +1 -0
- package/dist/modifiers/types.d.ts +655 -0
- package/dist/modifiers/types.d.ts.map +1 -0
- package/dist/modifiers/types.js +5 -0
- package/dist/modifiers/types.js.map +1 -0
- package/dist/modifiers/typography.cjs +2 -0
- package/dist/modifiers/typography.cjs.map +1 -0
- package/dist/modifiers/typography.d.ts +192 -0
- package/dist/modifiers/typography.d.ts.map +1 -0
- package/dist/modifiers/typography.js +76 -0
- package/dist/modifiers/typography.js.map +1 -0
- package/dist/modifiers/utility.cjs +2 -0
- package/dist/modifiers/utility.cjs.map +1 -0
- package/dist/modifiers/utility.d.ts +69 -0
- package/dist/modifiers/utility.d.ts.map +1 -0
- package/dist/modifiers/utility.js +71 -0
- package/dist/modifiers/utility.js.map +1 -0
- package/dist/modifiers/utils.cjs +2 -0
- package/dist/modifiers/utils.cjs.map +1 -0
- package/dist/modifiers/utils.d.ts +75 -0
- package/dist/modifiers/utils.d.ts.map +1 -0
- package/dist/modifiers/utils.js +250 -0
- package/dist/modifiers/utils.js.map +1 -0
- package/dist/plugins/component-loader-registry.d.ts +143 -0
- package/dist/plugins/component-loader-registry.d.ts.map +1 -0
- package/dist/plugins/index.cjs +2 -0
- package/dist/plugins/index.cjs.map +1 -0
- package/dist/plugins/index.d.ts +17 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/index.js +34 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/plugins/legacy-adapter.cjs +2 -0
- package/dist/plugins/legacy-adapter.cjs.map +1 -0
- package/dist/plugins/legacy-adapter.d.ts +35 -0
- package/dist/plugins/legacy-adapter.d.ts.map +1 -0
- package/dist/plugins/legacy-adapter.js +30 -0
- package/dist/plugins/legacy-adapter.js.map +1 -0
- package/dist/plugins/simplified-component-registry.cjs +2 -0
- package/dist/plugins/simplified-component-registry.cjs.map +1 -0
- package/dist/plugins/simplified-component-registry.d.ts +40 -0
- package/dist/plugins/simplified-component-registry.d.ts.map +1 -0
- package/dist/plugins/simplified-component-registry.js +71 -0
- package/dist/plugins/simplified-component-registry.js.map +1 -0
- package/dist/plugins/simplified-error-handler.cjs +2 -0
- package/dist/plugins/simplified-error-handler.cjs.map +1 -0
- package/dist/plugins/simplified-error-handler.d.ts +83 -0
- package/dist/plugins/simplified-error-handler.d.ts.map +1 -0
- package/dist/plugins/simplified-error-handler.js +154 -0
- package/dist/plugins/simplified-error-handler.js.map +1 -0
- package/dist/plugins/simplified-index.d.ts +17 -0
- package/dist/plugins/simplified-index.d.ts.map +1 -0
- package/dist/plugins/simplified-lazy-loader.cjs +2 -0
- package/dist/plugins/simplified-lazy-loader.cjs.map +1 -0
- package/dist/plugins/simplified-lazy-loader.d.ts +65 -0
- package/dist/plugins/simplified-lazy-loader.d.ts.map +1 -0
- package/dist/plugins/simplified-lazy-loader.js +129 -0
- package/dist/plugins/simplified-lazy-loader.js.map +1 -0
- package/dist/plugins/simplified-plugin-manager.cjs +2 -0
- package/dist/plugins/simplified-plugin-manager.cjs.map +1 -0
- package/dist/plugins/simplified-plugin-manager.d.ts +24 -0
- package/dist/plugins/simplified-plugin-manager.d.ts.map +1 -0
- package/dist/plugins/simplified-plugin-manager.js +51 -0
- package/dist/plugins/simplified-plugin-manager.js.map +1 -0
- package/dist/plugins/simplified-tachui-instance.cjs +2 -0
- package/dist/plugins/simplified-tachui-instance.cjs.map +1 -0
- package/dist/plugins/simplified-tachui-instance.d.ts +54 -0
- package/dist/plugins/simplified-tachui-instance.d.ts.map +1 -0
- package/dist/plugins/simplified-tachui-instance.js +88 -0
- package/dist/plugins/simplified-tachui-instance.js.map +1 -0
- package/dist/plugins/simplified-types.cjs +2 -0
- package/dist/plugins/simplified-types.cjs.map +1 -0
- package/dist/plugins/simplified-types.d.ts +63 -0
- package/dist/plugins/simplified-types.d.ts.map +1 -0
- package/dist/plugins/simplified-types.js +9 -0
- package/dist/plugins/simplified-types.js.map +1 -0
- package/dist/plugins/simplified-utils.cjs +2 -0
- package/dist/plugins/simplified-utils.cjs.map +1 -0
- package/dist/plugins/simplified-utils.d.ts +39 -0
- package/dist/plugins/simplified-utils.d.ts.map +1 -0
- package/dist/plugins/simplified-utils.js +40 -0
- package/dist/plugins/simplified-utils.js.map +1 -0
- package/dist/reactive/cleanup.cjs +2 -0
- package/dist/reactive/cleanup.cjs.map +1 -0
- package/dist/reactive/cleanup.d.ts +115 -0
- package/dist/reactive/cleanup.d.ts.map +1 -0
- package/dist/reactive/cleanup.js +62 -0
- package/dist/reactive/cleanup.js.map +1 -0
- package/dist/reactive/computed.cjs +2 -0
- package/dist/reactive/computed.cjs.map +1 -0
- package/dist/reactive/computed.d.ts +115 -0
- package/dist/reactive/computed.d.ts.map +1 -0
- package/dist/reactive/computed.js +121 -0
- package/dist/reactive/computed.js.map +1 -0
- package/dist/reactive/context.cjs +2 -0
- package/dist/reactive/context.cjs.map +1 -0
- package/dist/reactive/context.d.ts +82 -0
- package/dist/reactive/context.d.ts.map +1 -0
- package/dist/reactive/context.js +143 -0
- package/dist/reactive/context.js.map +1 -0
- package/dist/reactive/effect.cjs +2 -0
- package/dist/reactive/effect.cjs.map +1 -0
- package/dist/reactive/effect.d.ts +79 -0
- package/dist/reactive/effect.d.ts.map +1 -0
- package/dist/reactive/effect.js +67 -0
- package/dist/reactive/effect.js.map +1 -0
- package/dist/reactive/enhanced-effect.cjs +2 -0
- package/dist/reactive/enhanced-effect.cjs.map +1 -0
- package/dist/reactive/enhanced-effect.d.ts +108 -0
- package/dist/reactive/enhanced-effect.d.ts.map +1 -0
- package/dist/reactive/enhanced-effect.js +153 -0
- package/dist/reactive/enhanced-effect.js.map +1 -0
- package/dist/reactive/enhanced-signal.cjs +2 -0
- package/dist/reactive/enhanced-signal.cjs.map +1 -0
- package/dist/reactive/enhanced-signal.d.ts +91 -0
- package/dist/reactive/enhanced-signal.d.ts.map +1 -0
- package/dist/reactive/enhanced-signal.js +117 -0
- package/dist/reactive/enhanced-signal.js.map +1 -0
- package/dist/reactive/equality.cjs +2 -0
- package/dist/reactive/equality.cjs.map +1 -0
- package/dist/reactive/equality.d.ts +51 -0
- package/dist/reactive/equality.d.ts.map +1 -0
- package/dist/reactive/equality.js +66 -0
- package/dist/reactive/equality.js.map +1 -0
- package/dist/reactive/index.cjs +2 -0
- package/dist/reactive/index.cjs.map +1 -0
- package/dist/reactive/index.d.ts +21 -0
- package/dist/reactive/index.d.ts.map +1 -0
- package/dist/reactive/index.js +95 -0
- package/dist/reactive/index.js.map +1 -0
- package/dist/reactive/migration.cjs +18 -0
- package/dist/reactive/migration.cjs.map +1 -0
- package/dist/reactive/migration.d.ts +104 -0
- package/dist/reactive/migration.d.ts.map +1 -0
- package/dist/reactive/migration.js +164 -0
- package/dist/reactive/migration.js.map +1 -0
- package/dist/reactive/ownership.cjs +2 -0
- package/dist/reactive/ownership.cjs.map +1 -0
- package/dist/reactive/ownership.d.ts +75 -0
- package/dist/reactive/ownership.d.ts.map +1 -0
- package/dist/reactive/ownership.js +34 -0
- package/dist/reactive/ownership.js.map +1 -0
- package/dist/reactive/scheduler.cjs +2 -0
- package/dist/reactive/scheduler.cjs.map +1 -0
- package/dist/reactive/scheduler.d.ts +56 -0
- package/dist/reactive/scheduler.d.ts.map +1 -0
- package/dist/reactive/scheduler.js +111 -0
- package/dist/reactive/scheduler.js.map +1 -0
- package/dist/reactive/signal.cjs +2 -0
- package/dist/reactive/signal.cjs.map +1 -0
- package/dist/reactive/signal.d.ts +82 -0
- package/dist/reactive/signal.d.ts.map +1 -0
- package/dist/reactive/signal.js +96 -0
- package/dist/reactive/signal.js.map +1 -0
- package/dist/reactive/theme.cjs +2 -0
- package/dist/reactive/theme.cjs.map +1 -0
- package/dist/reactive/theme.d.ts +12 -0
- package/dist/reactive/theme.d.ts.map +1 -0
- package/dist/reactive/theme.js +27 -0
- package/dist/reactive/theme.js.map +1 -0
- package/dist/reactive/types.cjs +2 -0
- package/dist/reactive/types.cjs.map +1 -0
- package/dist/reactive/types.d.ts +93 -0
- package/dist/reactive/types.d.ts.map +1 -0
- package/dist/reactive/types.js +5 -0
- package/dist/reactive/types.js.map +1 -0
- package/dist/reactive/unified-scheduler.cjs +2 -0
- package/dist/reactive/unified-scheduler.cjs.map +1 -0
- package/dist/reactive/unified-scheduler.d.ts +112 -0
- package/dist/reactive/unified-scheduler.d.ts.map +1 -0
- package/dist/reactive/unified-scheduler.js +219 -0
- package/dist/reactive/unified-scheduler.js.map +1 -0
- package/dist/runtime/component-context.cjs +2 -0
- package/dist/runtime/component-context.cjs.map +1 -0
- package/dist/runtime/component-context.d.ts +73 -0
- package/dist/runtime/component-context.d.ts.map +1 -0
- package/dist/runtime/component-context.js +177 -0
- package/dist/runtime/component-context.js.map +1 -0
- package/dist/runtime/component.cjs +2 -0
- package/dist/runtime/component.cjs.map +1 -0
- package/dist/runtime/component.d.ts +112 -0
- package/dist/runtime/component.d.ts.map +1 -0
- package/dist/runtime/component.js +238 -0
- package/dist/runtime/component.js.map +1 -0
- package/dist/runtime/context.cjs +2 -0
- package/dist/runtime/context.cjs.map +1 -0
- package/dist/runtime/context.d.ts +138 -0
- package/dist/runtime/context.d.ts.map +1 -0
- package/dist/runtime/context.js +289 -0
- package/dist/runtime/context.js.map +1 -0
- package/dist/runtime/dev-tools.cjs +2 -0
- package/dist/runtime/dev-tools.cjs.map +1 -0
- package/dist/runtime/dev-tools.d.ts +240 -0
- package/dist/runtime/dev-tools.d.ts.map +1 -0
- package/dist/runtime/dev-tools.js +391 -0
- package/dist/runtime/dev-tools.js.map +1 -0
- package/dist/runtime/development-warnings.cjs +2 -0
- package/dist/runtime/development-warnings.cjs.map +1 -0
- package/dist/runtime/development-warnings.d.ts +42 -0
- package/dist/runtime/development-warnings.d.ts.map +1 -0
- package/dist/runtime/development-warnings.js +69 -0
- package/dist/runtime/development-warnings.js.map +1 -0
- package/dist/runtime/dom-bridge.cjs +2 -0
- package/dist/runtime/dom-bridge.cjs.map +1 -0
- package/dist/runtime/dom-bridge.d.ts +70 -0
- package/dist/runtime/dom-bridge.d.ts.map +1 -0
- package/dist/runtime/dom-bridge.js +241 -0
- package/dist/runtime/dom-bridge.js.map +1 -0
- package/dist/runtime/element-override.cjs +2 -0
- package/dist/runtime/element-override.cjs.map +1 -0
- package/dist/runtime/element-override.d.ts +82 -0
- package/dist/runtime/element-override.d.ts.map +1 -0
- package/dist/runtime/element-override.js +214 -0
- package/dist/runtime/element-override.js.map +1 -0
- package/dist/runtime/error-boundary.cjs +2 -0
- package/dist/runtime/error-boundary.cjs.map +1 -0
- package/dist/runtime/error-boundary.d.ts +302 -0
- package/dist/runtime/error-boundary.d.ts.map +1 -0
- package/dist/runtime/error-boundary.js +559 -0
- package/dist/runtime/error-boundary.js.map +1 -0
- package/dist/runtime/error-recovery.cjs +2 -0
- package/dist/runtime/error-recovery.cjs.map +1 -0
- package/dist/runtime/error-recovery.d.ts +267 -0
- package/dist/runtime/error-recovery.d.ts.map +1 -0
- package/dist/runtime/error-recovery.js +385 -0
- package/dist/runtime/error-recovery.js.map +1 -0
- package/dist/runtime/error-reporting.cjs +3 -0
- package/dist/runtime/error-reporting.cjs.map +1 -0
- package/dist/runtime/error-reporting.d.ts +287 -0
- package/dist/runtime/error-reporting.d.ts.map +1 -0
- package/dist/runtime/error-reporting.js +479 -0
- package/dist/runtime/error-reporting.js.map +1 -0
- package/dist/runtime/error-utils.cjs +3 -0
- package/dist/runtime/error-utils.cjs.map +1 -0
- package/dist/runtime/error-utils.d.ts +204 -0
- package/dist/runtime/error-utils.d.ts.map +1 -0
- package/dist/runtime/error-utils.js +352 -0
- package/dist/runtime/error-utils.js.map +1 -0
- package/dist/runtime/index.d.ts +29 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/lazy-component.cjs +2 -0
- package/dist/runtime/lazy-component.cjs.map +1 -0
- package/dist/runtime/lazy-component.d.ts +58 -0
- package/dist/runtime/lazy-component.d.ts.map +1 -0
- package/dist/runtime/lazy-component.js +129 -0
- package/dist/runtime/lazy-component.js.map +1 -0
- package/dist/runtime/lifecycle.cjs +2 -0
- package/dist/runtime/lifecycle.cjs.map +1 -0
- package/dist/runtime/lifecycle.d.ts +8 -0
- package/dist/runtime/lifecycle.d.ts.map +1 -0
- package/dist/runtime/lifecycle.js +7 -0
- package/dist/runtime/lifecycle.js.map +1 -0
- package/dist/runtime/mounting.cjs +2 -0
- package/dist/runtime/mounting.cjs.map +1 -0
- package/dist/runtime/mounting.d.ts +9 -0
- package/dist/runtime/mounting.d.ts.map +1 -0
- package/dist/runtime/mounting.js +12 -0
- package/dist/runtime/mounting.js.map +1 -0
- package/dist/runtime/optimization.cjs +2 -0
- package/dist/runtime/optimization.cjs.map +1 -0
- package/dist/runtime/optimization.d.ts +8 -0
- package/dist/runtime/optimization.d.ts.map +1 -0
- package/dist/runtime/optimization.js +6 -0
- package/dist/runtime/optimization.js.map +1 -0
- package/dist/runtime/performance.cjs +2 -0
- package/dist/runtime/performance.cjs.map +1 -0
- package/dist/runtime/performance.d.ts +217 -0
- package/dist/runtime/performance.d.ts.map +1 -0
- package/dist/runtime/performance.js +399 -0
- package/dist/runtime/performance.js.map +1 -0
- package/dist/runtime/props.cjs +2 -0
- package/dist/runtime/props.cjs.map +1 -0
- package/dist/runtime/props.d.ts +154 -0
- package/dist/runtime/props.d.ts.map +1 -0
- package/dist/runtime/props.js +265 -0
- package/dist/runtime/props.js.map +1 -0
- package/dist/runtime/refs.d.ts +8 -0
- package/dist/runtime/refs.d.ts.map +1 -0
- package/dist/runtime/renderer.cjs +2 -0
- package/dist/runtime/renderer.cjs.map +1 -0
- package/dist/runtime/renderer.d.ts +116 -0
- package/dist/runtime/renderer.d.ts.map +1 -0
- package/dist/runtime/renderer.js +390 -0
- package/dist/runtime/renderer.js.map +1 -0
- package/dist/runtime/semantic-role-manager.cjs +2 -0
- package/dist/runtime/semantic-role-manager.cjs.map +1 -0
- package/dist/runtime/semantic-role-manager.d.ts +37 -0
- package/dist/runtime/semantic-role-manager.d.ts.map +1 -0
- package/dist/runtime/semantic-role-manager.js +82 -0
- package/dist/runtime/semantic-role-manager.js.map +1 -0
- package/dist/runtime/types.d.ts +230 -0
- package/dist/runtime/types.d.ts.map +1 -0
- package/dist/state/binding.cjs +2 -0
- package/dist/state/binding.cjs.map +1 -0
- package/dist/state/binding.d.ts +96 -0
- package/dist/state/binding.d.ts.map +1 -0
- package/dist/state/binding.js +155 -0
- package/dist/state/binding.js.map +1 -0
- package/dist/state/environment-object.d.ts +130 -0
- package/dist/state/environment-object.d.ts.map +1 -0
- package/dist/state/environment.cjs +2 -0
- package/dist/state/environment.cjs.map +1 -0
- package/dist/state/environment.d.ts +178 -0
- package/dist/state/environment.d.ts.map +1 -0
- package/dist/state/environment.js +115 -0
- package/dist/state/environment.js.map +1 -0
- package/dist/state/index.cjs +2 -0
- package/dist/state/index.cjs.map +1 -0
- package/dist/state/index.d.ts +108 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js +63 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/observed-object.cjs +2 -0
- package/dist/state/observed-object.cjs.map +1 -0
- package/dist/state/observed-object.d.ts +126 -0
- package/dist/state/observed-object.d.ts.map +1 -0
- package/dist/state/observed-object.js +163 -0
- package/dist/state/observed-object.js.map +1 -0
- package/dist/state/state-manager.cjs +2 -0
- package/dist/state/state-manager.cjs.map +1 -0
- package/dist/state/state-manager.d.ts +97 -0
- package/dist/state/state-manager.d.ts.map +1 -0
- package/dist/state/state-manager.js +233 -0
- package/dist/state/state-manager.js.map +1 -0
- package/dist/state/state.cjs +2 -0
- package/dist/state/state.cjs.map +1 -0
- package/dist/state/state.d.ts +78 -0
- package/dist/state/state.d.ts.map +1 -0
- package/dist/state/state.js +159 -0
- package/dist/state/state.js.map +1 -0
- package/dist/state/types.d.ts +159 -0
- package/dist/state/types.d.ts.map +1 -0
- package/dist/sui-compat.cjs +2 -0
- package/dist/sui-compat.cjs.map +1 -0
- package/dist/sui-compat.d.ts +110 -0
- package/dist/sui-compat.d.ts.map +1 -0
- package/dist/sui-compat.js +88 -0
- package/dist/sui-compat.js.map +1 -0
- package/dist/validation/advanced-debugging.cjs +44 -0
- package/dist/validation/advanced-debugging.cjs.map +1 -0
- package/dist/validation/advanced-debugging.d.ts +319 -0
- package/dist/validation/advanced-debugging.d.ts.map +1 -0
- package/dist/validation/advanced-debugging.js +455 -0
- package/dist/validation/advanced-debugging.js.map +1 -0
- package/dist/validation/build-time/detection.cjs +2 -0
- package/dist/validation/build-time/detection.cjs.map +1 -0
- package/dist/validation/build-time/detection.d.ts +32 -0
- package/dist/validation/build-time/detection.d.ts.map +1 -0
- package/dist/validation/build-time/detection.js +199 -0
- package/dist/validation/build-time/detection.js.map +1 -0
- package/dist/validation/build-time/index.cjs +2 -0
- package/dist/validation/build-time/index.cjs.map +1 -0
- package/dist/validation/build-time/index.d.ts +84 -0
- package/dist/validation/build-time/index.d.ts.map +1 -0
- package/dist/validation/build-time/index.js +122 -0
- package/dist/validation/build-time/index.js.map +1 -0
- package/dist/validation/build-time/plugins.cjs +3 -0
- package/dist/validation/build-time/plugins.cjs.map +1 -0
- package/dist/validation/build-time/plugins.d.ts +75 -0
- package/dist/validation/build-time/plugins.d.ts.map +1 -0
- package/dist/validation/build-time/plugins.js +282 -0
- package/dist/validation/build-time/plugins.js.map +1 -0
- package/dist/validation/build-time/rules.cjs +2 -0
- package/dist/validation/build-time/rules.cjs.map +1 -0
- package/dist/validation/build-time/rules.d.ts +73 -0
- package/dist/validation/build-time/rules.d.ts.map +1 -0
- package/dist/validation/build-time/rules.js +576 -0
- package/dist/validation/build-time/rules.js.map +1 -0
- package/dist/validation/build-time/transformer.cjs +3 -0
- package/dist/validation/build-time/transformer.cjs.map +1 -0
- package/dist/validation/build-time/transformer.d.ts +23 -0
- package/dist/validation/build-time/transformer.d.ts.map +1 -0
- package/dist/validation/build-time/transformer.js +177 -0
- package/dist/validation/build-time/transformer.js.map +1 -0
- package/dist/validation/build-time/types.d.ts +212 -0
- package/dist/validation/build-time/types.d.ts.map +1 -0
- package/dist/validation/comprehensive.cjs +9 -0
- package/dist/validation/comprehensive.cjs.map +1 -0
- package/dist/validation/comprehensive.d.ts +160 -0
- package/dist/validation/comprehensive.d.ts.map +1 -0
- package/dist/validation/comprehensive.js +916 -0
- package/dist/validation/comprehensive.js.map +1 -0
- package/dist/validation/debug-tools.cjs +16 -0
- package/dist/validation/debug-tools.cjs.map +1 -0
- package/dist/validation/debug-tools.d.ts +251 -0
- package/dist/validation/debug-tools.d.ts.map +1 -0
- package/dist/validation/debug-tools.js +405 -0
- package/dist/validation/debug-tools.js.map +1 -0
- package/dist/validation/developer-experience.cjs +17 -0
- package/dist/validation/developer-experience.cjs.map +1 -0
- package/dist/validation/developer-experience.d.ts +243 -0
- package/dist/validation/developer-experience.d.ts.map +1 -0
- package/dist/validation/developer-experience.js +433 -0
- package/dist/validation/developer-experience.js.map +1 -0
- package/dist/validation/documentation-integration.cjs +7 -0
- package/dist/validation/documentation-integration.cjs.map +1 -0
- package/dist/validation/documentation-integration.d.ts +269 -0
- package/dist/validation/documentation-integration.d.ts.map +1 -0
- package/dist/validation/documentation-integration.js +440 -0
- package/dist/validation/documentation-integration.js.map +1 -0
- package/dist/validation/enhanced-runtime.cjs +6 -0
- package/dist/validation/enhanced-runtime.cjs.map +1 -0
- package/dist/validation/enhanced-runtime.d.ts +279 -0
- package/dist/validation/enhanced-runtime.d.ts.map +1 -0
- package/dist/validation/enhanced-runtime.js +465 -0
- package/dist/validation/enhanced-runtime.js.map +1 -0
- package/dist/validation/error-reporting.cjs +32 -0
- package/dist/validation/error-reporting.cjs.map +1 -0
- package/dist/validation/error-reporting.d.ts +186 -0
- package/dist/validation/error-reporting.d.ts.map +1 -0
- package/dist/validation/error-reporting.js +370 -0
- package/dist/validation/error-reporting.js.map +1 -0
- package/dist/validation/ide-integration.cjs +85 -0
- package/dist/validation/ide-integration.cjs.map +1 -0
- package/dist/validation/ide-integration.d.ts +328 -0
- package/dist/validation/ide-integration.d.ts.map +1 -0
- package/dist/validation/ide-integration.js +557 -0
- package/dist/validation/ide-integration.js.map +1 -0
- package/dist/validation/index.cjs +6 -0
- package/dist/validation/index.cjs.map +1 -0
- package/dist/validation/index.d.ts +171 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +309 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/lifecycle-validation.cjs +2 -0
- package/dist/validation/lifecycle-validation.cjs.map +1 -0
- package/dist/validation/lifecycle-validation.d.ts +165 -0
- package/dist/validation/lifecycle-validation.d.ts.map +1 -0
- package/dist/validation/lifecycle-validation.js +314 -0
- package/dist/validation/lifecycle-validation.js.map +1 -0
- package/dist/validation/performance-optimizer.cjs +2 -0
- package/dist/validation/performance-optimizer.cjs.map +1 -0
- package/dist/validation/performance-optimizer.d.ts +218 -0
- package/dist/validation/performance-optimizer.d.ts.map +1 -0
- package/dist/validation/performance-optimizer.js +338 -0
- package/dist/validation/performance-optimizer.js.map +1 -0
- package/dist/validation/plugin-registration.cjs +2 -0
- package/dist/validation/plugin-registration.cjs.map +1 -0
- package/dist/validation/plugin-registration.d.ts +88 -0
- package/dist/validation/plugin-registration.d.ts.map +1 -0
- package/dist/validation/plugin-registration.js +126 -0
- package/dist/validation/plugin-registration.js.map +1 -0
- package/dist/validation/production-bypass.cjs +2 -0
- package/dist/validation/production-bypass.cjs.map +1 -0
- package/dist/validation/production-bypass.d.ts +175 -0
- package/dist/validation/production-bypass.d.ts.map +1 -0
- package/dist/validation/production-bypass.js +218 -0
- package/dist/validation/production-bypass.js.map +1 -0
- package/dist/validation/simple.cjs +9 -0
- package/dist/validation/simple.cjs.map +1 -0
- package/dist/validation/simple.d.ts +111 -0
- package/dist/validation/simple.d.ts.map +1 -0
- package/dist/validation/simple.js +146 -0
- package/dist/validation/simple.js.map +1 -0
- package/dist/viewport/adapters/web-adapter.cjs +70 -0
- package/dist/viewport/adapters/web-adapter.cjs.map +1 -0
- package/dist/viewport/adapters/web-adapter.d.ts +227 -0
- package/dist/viewport/adapters/web-adapter.d.ts.map +1 -0
- package/dist/viewport/adapters/web-adapter.js +823 -0
- package/dist/viewport/adapters/web-adapter.js.map +1 -0
- package/dist/viewport/components.cjs +2 -0
- package/dist/viewport/components.cjs.map +1 -0
- package/dist/viewport/components.d.ts +131 -0
- package/dist/viewport/components.d.ts.map +1 -0
- package/dist/viewport/components.js +298 -0
- package/dist/viewport/components.js.map +1 -0
- package/dist/viewport/environment.cjs +2 -0
- package/dist/viewport/environment.cjs.map +1 -0
- package/dist/viewport/environment.d.ts +75 -0
- package/dist/viewport/environment.d.ts.map +1 -0
- package/dist/viewport/environment.js +86 -0
- package/dist/viewport/environment.js.map +1 -0
- package/dist/viewport/index.cjs +2 -0
- package/dist/viewport/index.cjs.map +1 -0
- package/dist/viewport/index.d.ts +138 -0
- package/dist/viewport/index.d.ts.map +1 -0
- package/dist/viewport/index.js +166 -0
- package/dist/viewport/index.js.map +1 -0
- package/dist/viewport/platform-detection.cjs +2 -0
- package/dist/viewport/platform-detection.cjs.map +1 -0
- package/dist/viewport/platform-detection.d.ts +59 -0
- package/dist/viewport/platform-detection.d.ts.map +1 -0
- package/dist/viewport/platform-detection.js +205 -0
- package/dist/viewport/platform-detection.js.map +1 -0
- package/dist/viewport/types.cjs +2 -0
- package/dist/viewport/types.cjs.map +1 -0
- package/dist/viewport/types.d.ts +301 -0
- package/dist/viewport/types.d.ts.map +1 -0
- package/dist/viewport/types.js +13 -0
- package/dist/viewport/types.js.map +1 -0
- package/dist/viewport/viewport-manager.cjs +2 -0
- package/dist/viewport/viewport-manager.cjs.map +1 -0
- package/dist/viewport/viewport-manager.d.ts +118 -0
- package/dist/viewport/viewport-manager.d.ts.map +1 -0
- package/dist/viewport/viewport-manager.js +524 -0
- package/dist/viewport/viewport-manager.js.map +1 -0
- package/package.json +128 -0
- package/src/assets/Asset.ts +11 -0
- package/src/assets/AssetCollection.ts +99 -0
- package/src/assets/ColorAsset.ts +210 -0
- package/src/assets/FontAsset.ts +380 -0
- package/src/assets/ImageAsset.ts +91 -0
- package/src/assets/README.md +190 -0
- package/src/assets/index.ts +175 -0
- package/src/assets/test-assets.ts +69 -0
- package/src/assets/test-integration.ts +46 -0
- package/src/assets/test-simple.ts +28 -0
- package/src/assets/types.ts +79 -0
- package/src/bundles/common.ts +30 -0
- package/src/bundles/complete.ts +29 -0
- package/src/bundles/essential.ts +26 -0
- package/src/bundles/minimal.ts +26 -0
- package/src/bundles/production-minimal.ts +67 -0
- package/src/compiler/advanced-parser.ts +871 -0
- package/src/compiler/codegen.ts +450 -0
- package/src/compiler/enhanced-codegen.ts +729 -0
- package/src/compiler/index.ts +25 -0
- package/src/compiler/parser.ts +461 -0
- package/src/compiler/plugin.ts +181 -0
- package/src/compiler/types.ts +177 -0
- package/src/components/BasicInput.ts +352 -0
- package/src/components/Button.ts +963 -0
- package/src/components/Divider.ts +341 -0
- package/src/components/EnhancedLink.ts +676 -0
- package/src/components/Form.ts +414 -0
- package/src/components/Grid.ts +2507 -0
- package/src/components/GridResponsive.ts +637 -0
- package/src/components/Image.ts +426 -0
- package/src/components/List.ts +1084 -0
- package/src/components/Menu.ts +807 -0
- package/src/components/Picker.ts +678 -0
- package/src/components/ScrollView.ts +725 -0
- package/src/components/Section.ts +472 -0
- package/src/components/Show.ts +205 -0
- package/src/components/Spacer.ts +93 -0
- package/src/components/Text.ts +447 -0
- package/src/components/Toggle.ts +700 -0
- package/src/components/index.ts +231 -0
- package/src/components/wrapper.ts +828 -0
- package/src/concatenation/concatenatable.ts +211 -0
- package/src/concatenation/concatenated-component.ts +471 -0
- package/src/concatenation/index.ts +41 -0
- package/src/concatenation/styles.css +120 -0
- package/src/concatenation/text-optimizer.ts +440 -0
- package/src/concatenation/types.ts +116 -0
- package/src/constants/README.md +339 -0
- package/src/constants/__tests__/frame-utils.test.ts +276 -0
- package/src/constants/__tests__/layout.test.ts +215 -0
- package/src/constants/frame-utils.ts +174 -0
- package/src/constants/index.ts +8 -0
- package/src/constants/layout.ts +120 -0
- package/src/css-classes/component-base.ts +117 -0
- package/src/css-classes/css-class-manager.ts +372 -0
- package/src/css-classes/dom-integration.ts +162 -0
- package/src/css-classes/enhanced-renderer.ts +166 -0
- package/src/css-classes/index.ts +45 -0
- package/src/css-classes/types.ts +73 -0
- package/src/css-classes/utilities.ts +175 -0
- package/src/debug/index.ts +267 -0
- package/src/developer-experience/enhanced-errors.ts +556 -0
- package/src/developer-experience/enhanced-types.ts +427 -0
- package/src/developer-experience/index.ts +220 -0
- package/src/globals.d.ts +43 -0
- package/src/gradients/__tests__/angular-gradient.test.ts +111 -0
- package/src/gradients/__tests__/background-modifier.test.ts +81 -0
- package/src/gradients/__tests__/comprehensive-gradients.test.ts +296 -0
- package/src/gradients/__tests__/gradient-asset.test.ts +144 -0
- package/src/gradients/__tests__/linear-gradient.test.ts +92 -0
- package/src/gradients/__tests__/phase4-features.test.ts +386 -0
- package/src/gradients/__tests__/radial-gradient.test.ts +110 -0
- package/src/gradients/__tests__/repeating-gradients.test.ts +125 -0
- package/src/gradients/__tests__/state-background-modifier.test.ts +340 -0
- package/src/gradients/__tests__/state-gradient-asset.test.ts +262 -0
- package/src/gradients/__tests__/state-gradient-integration.test.ts +277 -0
- package/src/gradients/css-generator.ts +158 -0
- package/src/gradients/examples.ts +632 -0
- package/src/gradients/gradient-asset.ts +30 -0
- package/src/gradients/index.ts +85 -0
- package/src/gradients/performance.ts +521 -0
- package/src/gradients/presets.ts +422 -0
- package/src/gradients/reactive.ts +470 -0
- package/src/gradients/state-gradient-asset.ts +179 -0
- package/src/gradients/types.ts +148 -0
- package/src/gradients/utils.ts +579 -0
- package/src/gradients/validation.ts +489 -0
- package/src/index.ts +168 -0
- package/src/lifecycle/hooks.ts +332 -0
- package/src/modifiers/__tests__/as-html-integration.test.ts +204 -0
- package/src/modifiers/__tests__/as-html.test.ts +437 -0
- package/src/modifiers/__tests__/basic-sanitizer-security.test.ts +294 -0
- package/src/modifiers/__tests__/border.test.ts +371 -0
- package/src/modifiers/__tests__/margin-string-support.test.ts +41 -0
- package/src/modifiers/__tests__/padding-string-support.test.ts +41 -0
- package/src/modifiers/as-html-validator.ts +68 -0
- package/src/modifiers/as-html.ts +216 -0
- package/src/modifiers/attributes.ts +574 -0
- package/src/modifiers/backdrop.ts +290 -0
- package/src/modifiers/background.ts +165 -0
- package/src/modifiers/base.ts +1815 -0
- package/src/modifiers/basic-sanitizer.ts +227 -0
- package/src/modifiers/border.ts +574 -0
- package/src/modifiers/builder.ts +1747 -0
- package/src/modifiers/core.ts +521 -0
- package/src/modifiers/css.ts +148 -0
- package/src/modifiers/effects.ts +412 -0
- package/src/modifiers/elements.ts +541 -0
- package/src/modifiers/filters.ts +501 -0
- package/src/modifiers/flexbox.ts +180 -0
- package/src/modifiers/font.ts +149 -0
- package/src/modifiers/grid.ts +238 -0
- package/src/modifiers/index.ts +481 -0
- package/src/modifiers/margin.ts +218 -0
- package/src/modifiers/padding.ts +318 -0
- package/src/modifiers/registry.ts +444 -0
- package/src/modifiers/responsive/__tests__/advanced-media-queries.test.ts +392 -0
- package/src/modifiers/responsive/__tests__/advanced-utilities.test.ts +368 -0
- package/src/modifiers/responsive/__tests__/comprehensive-browser-tests.test.ts +556 -0
- package/src/modifiers/responsive/__tests__/layout-patterns.test.ts +558 -0
- package/src/modifiers/responsive/advanced-utilities.ts +562 -0
- package/src/modifiers/responsive/breakpoints.ts +330 -0
- package/src/modifiers/responsive/css-generator.ts +432 -0
- package/src/modifiers/responsive/dev-tools.ts +650 -0
- package/src/modifiers/responsive/index.ts +119 -0
- package/src/modifiers/responsive/layout-patterns.ts +592 -0
- package/src/modifiers/responsive/performance.ts +385 -0
- package/src/modifiers/responsive/responsive-builder.ts +620 -0
- package/src/modifiers/responsive/responsive-modifier.ts +410 -0
- package/src/modifiers/responsive/types.ts +226 -0
- package/src/modifiers/responsive/utilities.ts +478 -0
- package/src/modifiers/scroll.ts +297 -0
- package/src/modifiers/shadows.ts +321 -0
- package/src/modifiers/size.ts +208 -0
- package/src/modifiers/text.ts +416 -0
- package/src/modifiers/transformations.ts +640 -0
- package/src/modifiers/transitions.ts +218 -0
- package/src/modifiers/types.ts +889 -0
- package/src/modifiers/typography.ts +341 -0
- package/src/modifiers/utility.ts +209 -0
- package/src/modifiers/utils.ts +413 -0
- package/src/plugins/__tests__/simplified-plugin-system.test.ts +190 -0
- package/src/plugins/component-loader-registry.ts +371 -0
- package/src/plugins/index.ts +61 -0
- package/src/plugins/legacy-adapter.ts +84 -0
- package/src/plugins/simplified-component-registry.ts +130 -0
- package/src/plugins/simplified-error-handler.ts +372 -0
- package/src/plugins/simplified-index.ts +61 -0
- package/src/plugins/simplified-lazy-loader.ts +242 -0
- package/src/plugins/simplified-plugin-manager.ts +93 -0
- package/src/plugins/simplified-tachui-instance.ts +142 -0
- package/src/plugins/simplified-types.ts +79 -0
- package/src/plugins/simplified-utils.ts +118 -0
- package/src/reactive/cleanup.ts +241 -0
- package/src/reactive/computed.ts +281 -0
- package/src/reactive/context.ts +287 -0
- package/src/reactive/effect.ts +194 -0
- package/src/reactive/enhanced-effect.ts +318 -0
- package/src/reactive/enhanced-signal.ts +227 -0
- package/src/reactive/equality.ts +188 -0
- package/src/reactive/globals.d.ts +5 -0
- package/src/reactive/index.ts +150 -0
- package/src/reactive/migration.ts +335 -0
- package/src/reactive/ownership.ts +182 -0
- package/src/reactive/scheduler.ts +300 -0
- package/src/reactive/signal.ts +201 -0
- package/src/reactive/theme.ts +49 -0
- package/src/reactive/types.ts +103 -0
- package/src/reactive/unified-scheduler.ts +357 -0
- package/src/runtime/component-context.ts +343 -0
- package/src/runtime/component.ts +499 -0
- package/src/runtime/context.ts +527 -0
- package/src/runtime/dev-tools.ts +752 -0
- package/src/runtime/development-warnings.ts +114 -0
- package/src/runtime/dom-bridge.ts +570 -0
- package/src/runtime/element-override.ts +282 -0
- package/src/runtime/error-boundary.ts +955 -0
- package/src/runtime/error-recovery.ts +638 -0
- package/src/runtime/error-reporting.ts +808 -0
- package/src/runtime/error-utils.ts +698 -0
- package/src/runtime/index.ts +202 -0
- package/src/runtime/lazy-component.ts +268 -0
- package/src/runtime/lifecycle.ts +10 -0
- package/src/runtime/mounting.ts +17 -0
- package/src/runtime/optimization.ts +13 -0
- package/src/runtime/performance.ts +693 -0
- package/src/runtime/props.ts +434 -0
- package/src/runtime/refs.ts +13 -0
- package/src/runtime/renderer.ts +674 -0
- package/src/runtime/semantic-role-manager.ts +140 -0
- package/src/runtime/types.ts +282 -0
- package/src/state/binding.ts +381 -0
- package/src/state/environment-object.ts +444 -0
- package/src/state/environment.ts +351 -0
- package/src/state/index.ts +179 -0
- package/src/state/observed-object.ts +405 -0
- package/src/state/state-manager.ts +366 -0
- package/src/state/state.ts +339 -0
- package/src/state/types.ts +192 -0
- package/src/sui-compat.ts +163 -0
- package/src/validation/__tests__/phase-1d-integration.test.ts +558 -0
- package/src/validation/advanced-debugging.ts +860 -0
- package/src/validation/build-time/detection.ts +373 -0
- package/src/validation/build-time/index.ts +222 -0
- package/src/validation/build-time/plugins.ts +515 -0
- package/src/validation/build-time/rules.ts +624 -0
- package/src/validation/build-time/transformer.ts +372 -0
- package/src/validation/build-time/types.ts +232 -0
- package/src/validation/comprehensive.ts +1272 -0
- package/src/validation/debug-tools.ts +724 -0
- package/src/validation/developer-experience.ts +712 -0
- package/src/validation/documentation-integration.ts +835 -0
- package/src/validation/enhanced-runtime.ts +765 -0
- package/src/validation/error-reporting.ts +587 -0
- package/src/validation/ide-integration.ts +845 -0
- package/src/validation/index.ts +353 -0
- package/src/validation/lifecycle-validation.ts +636 -0
- package/src/validation/performance-optimizer.ts +599 -0
- package/src/validation/plugin-registration.ts +249 -0
- package/src/validation/production-bypass.ts +466 -0
- package/src/validation/simple.ts +465 -0
- package/src/viewport/adapters/web-adapter.ts +1385 -0
- package/src/viewport/components.ts +505 -0
- package/src/viewport/environment.ts +173 -0
- package/src/viewport/index.ts +290 -0
- package/src/viewport/platform-detection.ts +431 -0
- package/src/viewport/types.ts +371 -0
- package/src/viewport/viewport-manager.ts +979 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { createComputed as d } from "./computed.js";
|
|
2
|
+
import { createEnhancedEffect as l } from "./enhanced-effect.js";
|
|
3
|
+
import { createEnhancedSignal as u } from "./enhanced-signal.js";
|
|
4
|
+
import { shallowEquals as f, deepEquals as m } from "./equality.js";
|
|
5
|
+
import { createSignal as g } from "./signal.js";
|
|
6
|
+
import { ReactiveScheduler as c } from "./unified-scheduler.js";
|
|
7
|
+
let i = !0, a = {
|
|
8
|
+
signalsConverted: 0,
|
|
9
|
+
computedsConverted: 0,
|
|
10
|
+
effectsConverted: 0,
|
|
11
|
+
errorsFixed: 0
|
|
12
|
+
};
|
|
13
|
+
function w(t) {
|
|
14
|
+
return i && console.warn(
|
|
15
|
+
"createLegacySignal is deprecated. Use createSignal() or createEnhancedSignal() instead. See: https://docs.tachui.dev/migration/reactive-system"
|
|
16
|
+
), a.signalsConverted++, g(t);
|
|
17
|
+
}
|
|
18
|
+
function p(t, e) {
|
|
19
|
+
const o = t[0]();
|
|
20
|
+
let r;
|
|
21
|
+
switch (e?.equals) {
|
|
22
|
+
case "deep":
|
|
23
|
+
r = m;
|
|
24
|
+
break;
|
|
25
|
+
case "shallow":
|
|
26
|
+
r = f;
|
|
27
|
+
break;
|
|
28
|
+
case "custom":
|
|
29
|
+
r = e.customEquals;
|
|
30
|
+
break;
|
|
31
|
+
default:
|
|
32
|
+
r = void 0;
|
|
33
|
+
}
|
|
34
|
+
return a.signalsConverted++, u(o, {
|
|
35
|
+
equals: r,
|
|
36
|
+
priority: e?.priority,
|
|
37
|
+
debugName: e?.debugName
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
function R(t) {
|
|
41
|
+
const e = t(), o = [];
|
|
42
|
+
let r = "enhanced";
|
|
43
|
+
return typeof e == "object" && e !== null && (Array.isArray(e) ? (o.push("Consider using deepEquals for array values to detect mutations"), o.push("Use createDeepSignal() for automatic deep comparison"), r = "deep") : (o.push("Consider using shallowEquals for object values with simple properties"), o.push("Use createShallowSignal() for automatic shallow comparison"), r = "shallow")), o.length === 0 && o.push("Signal looks good for reference equality"), { recommendations: o, suggestedMigration: r };
|
|
44
|
+
}
|
|
45
|
+
function U(t) {
|
|
46
|
+
const e = {
|
|
47
|
+
signals: [],
|
|
48
|
+
computeds: [],
|
|
49
|
+
effects: [],
|
|
50
|
+
cleanup: () => {
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
t.signals && (e.signals = t.signals.map(
|
|
54
|
+
({ original: r, options: n }) => p(r, n)
|
|
55
|
+
)), t.computeds && (e.computeds = t.computeds.map(({ original: r, options: n }) => (a.computedsConverted++, d(r, n))));
|
|
56
|
+
const o = [];
|
|
57
|
+
return t.effects && t.effects.forEach(({ original: r, options: n }) => {
|
|
58
|
+
a.effectsConverted++;
|
|
59
|
+
const s = l(r, n);
|
|
60
|
+
o.push(s);
|
|
61
|
+
}), e.cleanup = () => {
|
|
62
|
+
o.forEach((r) => r());
|
|
63
|
+
}, e;
|
|
64
|
+
}
|
|
65
|
+
function $(t) {
|
|
66
|
+
const e = [];
|
|
67
|
+
let o = t;
|
|
68
|
+
return [
|
|
69
|
+
{
|
|
70
|
+
from: /createSignal\(/g,
|
|
71
|
+
to: "createEnhancedSignal(",
|
|
72
|
+
description: "Upgraded createSignal to createEnhancedSignal"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
from: /createComputed\(([^,]+)\)/g,
|
|
76
|
+
to: "createComputed($1, { debugName: 'computed' })",
|
|
77
|
+
description: "Added debug name to createComputed"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
from: /createEffect\(([^,]+)\)/g,
|
|
81
|
+
to: "createEnhancedEffect($1, { debugName: 'effect' })",
|
|
82
|
+
description: "Upgraded createEffect to createEnhancedEffect with debug name"
|
|
83
|
+
}
|
|
84
|
+
].forEach((n) => {
|
|
85
|
+
o.match(n.from) && (o = o.replace(n.from, n.to), e.push(n.description));
|
|
86
|
+
}), { newCode: o, transformations: e };
|
|
87
|
+
}
|
|
88
|
+
function h() {
|
|
89
|
+
const t = c.getInstance(), e = t.getPerformanceMetrics(), o = [];
|
|
90
|
+
let r = 100;
|
|
91
|
+
return e.errorCount > 0 && (o.push(`Fix ${e.errorCount} reactive errors for better stability`), r -= e.errorCount * 5), e.averageUpdateTime > 16 && (o.push("Update times exceed 16ms - consider optimizing computations"), r -= 20), e.totalNodes > 1e3 && (o.push("High number of reactive nodes - consider batching updates"), r -= 10), {
|
|
92
|
+
scheduler: t.getDebugInfo(),
|
|
93
|
+
signals: {
|
|
94
|
+
total: a.signalsConverted,
|
|
95
|
+
recommendations: ["Use appropriate equality functions for your data types"]
|
|
96
|
+
},
|
|
97
|
+
computeds: {
|
|
98
|
+
total: a.computedsConverted,
|
|
99
|
+
recommendations: ["Add error recovery for critical computations"]
|
|
100
|
+
},
|
|
101
|
+
effects: {
|
|
102
|
+
total: a.effectsConverted,
|
|
103
|
+
recommendations: ["Use appropriate priorities for different effect types"]
|
|
104
|
+
},
|
|
105
|
+
overallScore: Math.max(0, r),
|
|
106
|
+
recommendations: o
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
function q(t = { verbose: !1 }) {
|
|
110
|
+
const e = c.getInstance(), o = (n) => {
|
|
111
|
+
console.error("🔥 Reactive System Error:", n), a.errorsFixed++;
|
|
112
|
+
}, r = e.onError(o);
|
|
113
|
+
return t.verbose && (console.log("🔍 Reactive debugging enabled"), console.log("📊 Migration stats:", a)), () => {
|
|
114
|
+
r(), t.verbose && console.log("🔍 Reactive debugging disabled");
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
function x() {
|
|
118
|
+
return { ...a };
|
|
119
|
+
}
|
|
120
|
+
function M() {
|
|
121
|
+
a = {
|
|
122
|
+
signalsConverted: 0,
|
|
123
|
+
computedsConverted: 0,
|
|
124
|
+
effectsConverted: 0,
|
|
125
|
+
errorsFixed: 0
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
function F(t) {
|
|
129
|
+
i = t;
|
|
130
|
+
}
|
|
131
|
+
function I() {
|
|
132
|
+
const t = h();
|
|
133
|
+
return `
|
|
134
|
+
# TachUI Reactive System Migration Report
|
|
135
|
+
|
|
136
|
+
## Statistics
|
|
137
|
+
- Signals converted: ${a.signalsConverted}
|
|
138
|
+
- Computeds converted: ${a.computedsConverted}
|
|
139
|
+
- Effects converted: ${a.effectsConverted}
|
|
140
|
+
- Errors fixed: ${a.errorsFixed}
|
|
141
|
+
|
|
142
|
+
## Performance Score: ${t.overallScore}/100
|
|
143
|
+
|
|
144
|
+
## Recommendations
|
|
145
|
+
${t.recommendations.map((e) => `- ${e}`).join(`
|
|
146
|
+
`)}
|
|
147
|
+
|
|
148
|
+
## Generated: ${(/* @__PURE__ */ new Date()).toISOString()}
|
|
149
|
+
`;
|
|
150
|
+
}
|
|
151
|
+
export {
|
|
152
|
+
h as analyzeReactivePerformance,
|
|
153
|
+
R as analyzeSignalUsage,
|
|
154
|
+
w as createLegacySignal,
|
|
155
|
+
I as createMigrationReport,
|
|
156
|
+
q as enableReactiveDebugging,
|
|
157
|
+
x as getMigrationStats,
|
|
158
|
+
U as migrateBatch,
|
|
159
|
+
$ as migrateReactiveCode,
|
|
160
|
+
p as migrateToEnhancedSignal,
|
|
161
|
+
M as resetMigrationStats,
|
|
162
|
+
F as setMigrationWarnings
|
|
163
|
+
};
|
|
164
|
+
//# sourceMappingURL=migration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migration.js","sources":["../../src/reactive/migration.ts"],"sourcesContent":["/**\n * Migration Utilities for Reactive System v2.0\n *\n * Provides backward compatibility and migration tools for transitioning\n * from the old reactive system to the new unified scheduler system.\n */\n\nimport { createComputed } from './computed'\nimport { createEnhancedEffect } from './enhanced-effect'\nimport { createEnhancedSignal } from './enhanced-signal'\nimport { deepEquals, shallowEquals } from './equality'\nimport { createSignal } from './signal'\nimport { ReactiveScheduler, type UpdatePriority } from './unified-scheduler'\n\n/**\n * Migration status tracking\n */\nlet migrationWarningsEnabled = true\nlet migrationStats = {\n signalsConverted: 0,\n computedsConverted: 0,\n effectsConverted: 0,\n errorsFixed: 0,\n}\n\n/**\n * Legacy compatibility wrapper for signals\n */\nexport function createLegacySignal<T>(value: T): any {\n if (migrationWarningsEnabled) {\n console.warn(\n 'createLegacySignal is deprecated. Use createSignal() or createEnhancedSignal() instead. ' +\n 'See: https://docs.tachui.dev/migration/reactive-system'\n )\n }\n migrationStats.signalsConverted++\n return createSignal(value)\n}\n\n/**\n * Migrate existing signals to enhanced signals with options\n */\nexport function migrateToEnhancedSignal<T>(\n originalSignal: [() => T, (value: T) => T],\n options?: {\n equals?: 'reference' | 'deep' | 'shallow' | 'custom'\n customEquals?: (a: T, b: T) => boolean\n priority?: UpdatePriority\n debugName?: string\n }\n): [() => T, (value: T) => T] {\n const currentValue = originalSignal[0]()\n\n let equalsFn\n switch (options?.equals) {\n case 'deep':\n equalsFn = deepEquals\n break\n case 'shallow':\n equalsFn = shallowEquals\n break\n case 'custom':\n equalsFn = options.customEquals\n break\n default:\n equalsFn = undefined // Use default\n }\n\n migrationStats.signalsConverted++\n\n return createEnhancedSignal(currentValue, {\n equals: equalsFn,\n priority: options?.priority,\n debugName: options?.debugName,\n })\n}\n\n/**\n * Automatically detect and suggest signal migration improvements\n */\nexport function analyzeSignalUsage<T>(signal: () => T): {\n recommendations: string[]\n suggestedMigration: 'enhanced' | 'deep' | 'shallow'\n} {\n const value = signal()\n const recommendations: string[] = []\n let suggestedMigration: 'enhanced' | 'deep' | 'shallow' = 'enhanced'\n\n if (typeof value === 'object' && value !== null) {\n if (Array.isArray(value)) {\n recommendations.push('Consider using deepEquals for array values to detect mutations')\n recommendations.push('Use createDeepSignal() for automatic deep comparison')\n suggestedMigration = 'deep'\n } else {\n recommendations.push('Consider using shallowEquals for object values with simple properties')\n recommendations.push('Use createShallowSignal() for automatic shallow comparison')\n suggestedMigration = 'shallow'\n }\n }\n\n if (recommendations.length === 0) {\n recommendations.push('Signal looks good for reference equality')\n }\n\n return { recommendations, suggestedMigration }\n}\n\n/**\n * Batch migration utility for multiple reactive primitives\n */\nexport function migrateBatch(config: {\n signals?: Array<{\n original: [() => any, (value: any) => any]\n options?: any\n }>\n computeds?: Array<{\n original: () => any\n options?: any\n }>\n effects?: Array<{\n original: () => undefined | (() => void)\n options?: any\n }>\n}): {\n signals: Array<[() => any, (value: any) => any]>\n computeds: Array<() => any>\n effects: Array<() => void>\n cleanup: () => void\n} {\n const results = {\n signals: [] as Array<[() => any, (value: any) => any]>,\n computeds: [] as Array<() => any>,\n effects: [] as Array<() => void>,\n cleanup: () => {},\n }\n\n // Migrate signals\n if (config.signals) {\n results.signals = config.signals.map(({ original, options }) =>\n migrateToEnhancedSignal(original, options)\n )\n }\n\n // Migrate computeds\n if (config.computeds) {\n results.computeds = config.computeds.map(({ original, options }) => {\n migrationStats.computedsConverted++\n return createComputed(original, options)\n })\n }\n\n // Migrate effects with cleanup functions\n const effectCleanups: Array<() => void> = []\n if (config.effects) {\n config.effects.forEach(({ original, options }) => {\n migrationStats.effectsConverted++\n const cleanup = createEnhancedEffect(original, options)\n effectCleanups.push(cleanup)\n })\n }\n\n results.cleanup = () => {\n effectCleanups.forEach((cleanup) => cleanup())\n }\n\n return results\n}\n\n/**\n * Code transformation utility for automatic migration\n */\nexport function migrateReactiveCode(oldCode: string): {\n newCode: string\n transformations: string[]\n} {\n const transformations: string[] = []\n let newCode = oldCode\n\n // Basic regex-based transformations\n const patterns = [\n {\n from: /createSignal\\(/g,\n to: 'createEnhancedSignal(',\n description: 'Upgraded createSignal to createEnhancedSignal',\n },\n {\n from: /createComputed\\(([^,]+)\\)/g,\n to: \"createComputed($1, { debugName: 'computed' })\",\n description: 'Added debug name to createComputed',\n },\n {\n from: /createEffect\\(([^,]+)\\)/g,\n to: \"createEnhancedEffect($1, { debugName: 'effect' })\",\n description: 'Upgraded createEffect to createEnhancedEffect with debug name',\n },\n ]\n\n patterns.forEach((pattern) => {\n const matches = newCode.match(pattern.from)\n if (matches) {\n newCode = newCode.replace(pattern.from, pattern.to)\n transformations.push(pattern.description)\n }\n })\n\n return { newCode, transformations }\n}\n\n/**\n * Performance analyzer for reactive systems\n */\nexport function analyzeReactivePerformance(): {\n scheduler: any\n signals: { total: number; recommendations: string[] }\n computeds: { total: number; recommendations: string[] }\n effects: { total: number; recommendations: string[] }\n overallScore: number\n recommendations: string[]\n} {\n const scheduler = ReactiveScheduler.getInstance()\n const metrics = scheduler.getPerformanceMetrics()\n\n const recommendations: string[] = []\n let score = 100\n\n // Analyze metrics\n if (metrics.errorCount > 0) {\n recommendations.push(`Fix ${metrics.errorCount} reactive errors for better stability`)\n score -= metrics.errorCount * 5\n }\n\n if (metrics.averageUpdateTime > 16) {\n recommendations.push('Update times exceed 16ms - consider optimizing computations')\n score -= 20\n }\n\n if (metrics.totalNodes > 1000) {\n recommendations.push('High number of reactive nodes - consider batching updates')\n score -= 10\n }\n\n return {\n scheduler: scheduler.getDebugInfo(),\n signals: {\n total: migrationStats.signalsConverted,\n recommendations: ['Use appropriate equality functions for your data types'],\n },\n computeds: {\n total: migrationStats.computedsConverted,\n recommendations: ['Add error recovery for critical computations'],\n },\n effects: {\n total: migrationStats.effectsConverted,\n recommendations: ['Use appropriate priorities for different effect types'],\n },\n overallScore: Math.max(0, score),\n recommendations,\n }\n}\n\n/**\n * Debug utilities for migration\n */\nexport function enableReactiveDebugging(options = { verbose: false }): () => void {\n const scheduler = ReactiveScheduler.getInstance()\n\n const errorHandler = (error: any) => {\n console.error('🔥 Reactive System Error:', error)\n migrationStats.errorsFixed++\n }\n\n const cleanup = scheduler.onError(errorHandler)\n\n if (options.verbose) {\n console.log('🔍 Reactive debugging enabled')\n console.log('📊 Migration stats:', migrationStats)\n }\n\n return () => {\n cleanup()\n if (options.verbose) {\n console.log('🔍 Reactive debugging disabled')\n }\n }\n}\n\n/**\n * Get migration statistics\n */\nexport function getMigrationStats() {\n return { ...migrationStats }\n}\n\n/**\n * Reset migration statistics\n */\nexport function resetMigrationStats() {\n migrationStats = {\n signalsConverted: 0,\n computedsConverted: 0,\n effectsConverted: 0,\n errorsFixed: 0,\n }\n}\n\n/**\n * Enable/disable migration warnings\n */\nexport function setMigrationWarnings(enabled: boolean) {\n migrationWarningsEnabled = enabled\n}\n\n/**\n * Create a migration report\n */\nexport function createMigrationReport(): string {\n const performance = analyzeReactivePerformance()\n\n return `\n# TachUI Reactive System Migration Report\n\n## Statistics\n- Signals converted: ${migrationStats.signalsConverted}\n- Computeds converted: ${migrationStats.computedsConverted}\n- Effects converted: ${migrationStats.effectsConverted}\n- Errors fixed: ${migrationStats.errorsFixed}\n\n## Performance Score: ${performance.overallScore}/100\n\n## Recommendations\n${performance.recommendations.map((r) => `- ${r}`).join('\\n')}\n\n## Generated: ${new Date().toISOString()}\n`\n}\n"],"names":["migrationWarningsEnabled","migrationStats","createLegacySignal","value","createSignal","migrateToEnhancedSignal","originalSignal","options","currentValue","equalsFn","deepEquals","shallowEquals","createEnhancedSignal","analyzeSignalUsage","signal","recommendations","suggestedMigration","migrateBatch","config","results","original","createComputed","effectCleanups","cleanup","createEnhancedEffect","migrateReactiveCode","oldCode","transformations","newCode","pattern","analyzeReactivePerformance","scheduler","ReactiveScheduler","metrics","score","enableReactiveDebugging","errorHandler","error","getMigrationStats","resetMigrationStats","setMigrationWarnings","enabled","createMigrationReport","performance","r"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./context.cjs");function o(){return t.getOwner()!==null}function r(e){return t.runWithOwner(null,e)}function i(e){return r(()=>t.createRoot(e))}function u(){let e=t.getOwner();if(!e)return null;for(;e.parent;)e=e.parent;return e}function c(){const e=[];let n=t.getOwner();for(;n;)e.push(n),n=n.parent;return e}exports.createRoot=t.createRoot;exports.runWithOwner=t.runWithOwner;exports.createDetachedRoot=i;exports.getOwnerChain=c;exports.getRootOwner=u;exports.isReactiveContext=o;exports.runOutsideReactiveContext=r;
|
|
2
|
+
//# sourceMappingURL=ownership.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ownership.cjs","sources":["../../src/reactive/ownership.ts"],"sourcesContent":["/**\n * Ownership and reactive context management\n *\n * Provides utilities for managing reactive ownership contexts,\n * which control the lifecycle of reactive computations.\n */\n\nimport { createRoot, getOwner as getCurrentOwner, runWithOwner } from './context'\nimport type { Owner } from './types'\n\n/**\n * Get the current owner context\n */\nexport function getOwner(): Owner | null {\n return getCurrentOwner()\n}\n\n/**\n * Run a function with a specific owner context\n */\nexport { runWithOwner }\n\n/**\n * Create a new reactive root context\n */\nexport { createRoot }\n\n/**\n * Check if we're currently in a reactive context\n */\nexport function isReactiveContext(): boolean {\n return getCurrentOwner() !== null\n}\n\n/**\n * Run a function outside of any reactive context\n */\nexport function runOutsideReactiveContext<T>(fn: () => T): T {\n return runWithOwner(null, fn)\n}\n\n/**\n * Create a detached reactive context that doesn't inherit from parent\n */\nexport function createDetachedRoot<T>(fn: (dispose: () => void) => T): T {\n return runOutsideReactiveContext(() => createRoot(fn))\n}\n\n/**\n * Get the root owner of the current ownership chain\n */\nexport function getRootOwner(): Owner | null {\n let owner = getCurrentOwner()\n if (!owner) return null\n\n while (owner.parent) {\n owner = owner.parent\n }\n\n return owner\n}\n\n/**\n * Get all owners in the ownership chain\n */\nexport function getOwnerChain(): (Owner | null)[] {\n const chain: (Owner | null)[] = []\n let owner = getCurrentOwner()\n\n while (owner) {\n chain.push(owner)\n owner = owner.parent\n }\n\n return chain\n}\n\n/**\n * Check if an owner is an ancestor of another owner\n */\nexport function isOwnerAncestor(ancestor: Owner, descendant: Owner): boolean {\n let current = descendant.parent\n\n while (current) {\n if (current === ancestor) {\n return true\n }\n current = current.parent\n }\n\n return false\n}\n\n/**\n * Find the common ancestor of two owners\n */\nexport function findCommonAncestor(owner1: Owner, owner2: Owner): Owner | null {\n const chain1 = new Set<Owner>()\n let current: Owner | null = owner1\n\n // Build chain for owner1\n while (current) {\n chain1.add(current)\n current = current.parent\n }\n\n // Walk chain for owner2 and find first common owner\n current = owner2\n while (current) {\n if (chain1.has(current)) {\n return current\n }\n current = current.parent\n }\n\n return null\n}\n\n/**\n * Get the depth of an owner in the ownership tree\n */\nexport function getOwnerDepth(owner: Owner): number {\n let depth = 0\n let current = owner.parent\n\n while (current) {\n depth++\n current = current.parent\n }\n\n return depth\n}\n\n/**\n * Create a child owner context\n */\nexport function createChildOwner(): Owner | null {\n const parent = getCurrentOwner()\n if (!parent) return null\n\n // This would be implemented in the OwnerImpl class\n // For now, return null as we don't expose the constructor\n return null\n}\n\n/**\n * Debug utilities for ownership\n */\nexport const OwnershipDebug = {\n getCurrentOwner,\n getRootOwner,\n getOwnerChain,\n getOwnerDepth,\n isReactiveContext,\n\n /**\n * Get ownership tree information\n */\n getOwnershipTree(): object {\n const root = getRootOwner()\n if (!root) return { tree: null }\n\n const buildTree = (owner: Owner): object => ({\n id: owner.id,\n disposed: owner.disposed,\n sourceCount: owner.sources.size,\n cleanupCount: owner.cleanups.length,\n })\n\n return { tree: buildTree(root) }\n },\n\n /**\n * Count total computations in ownership tree\n */\n countComputations(): number {\n const root = getRootOwner()\n if (!root) return 0\n\n return root.sources.size\n },\n}\n"],"names":["isReactiveContext","getCurrentOwner","runOutsideReactiveContext","fn","runWithOwner","createDetachedRoot","createRoot","getRootOwner","owner","getOwnerChain","chain"],"mappings":"iHA8BO,SAASA,GAA6B,CAC3C,OAAOC,EAAAA,aAAsB,IAC/B,CAKO,SAASC,EAA6BC,EAAgB,CAC3D,OAAOC,EAAAA,aAAa,KAAMD,CAAE,CAC9B,CAKO,SAASE,EAAsBF,EAAmC,CACvE,OAAOD,EAA0B,IAAMI,aAAWH,CAAE,CAAC,CACvD,CAKO,SAASI,GAA6B,CAC3C,IAAIC,EAAQP,EAAAA,SAAA,EACZ,GAAI,CAACO,EAAO,OAAO,KAEnB,KAAOA,EAAM,QACXA,EAAQA,EAAM,OAGhB,OAAOA,CACT,CAKO,SAASC,GAAkC,CAChD,MAAMC,EAA0B,CAAA,EAChC,IAAIF,EAAQP,EAAAA,SAAA,EAEZ,KAAOO,GACLE,EAAM,KAAKF,CAAK,EAChBA,EAAQA,EAAM,OAGhB,OAAOE,CACT"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ownership and reactive context management
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities for managing reactive ownership contexts,
|
|
5
|
+
* which control the lifecycle of reactive computations.
|
|
6
|
+
*/
|
|
7
|
+
import { createRoot, getOwner as getCurrentOwner, runWithOwner } from './context';
|
|
8
|
+
import type { Owner } from './types';
|
|
9
|
+
/**
|
|
10
|
+
* Get the current owner context
|
|
11
|
+
*/
|
|
12
|
+
export declare function getOwner(): Owner | null;
|
|
13
|
+
/**
|
|
14
|
+
* Run a function with a specific owner context
|
|
15
|
+
*/
|
|
16
|
+
export { runWithOwner };
|
|
17
|
+
/**
|
|
18
|
+
* Create a new reactive root context
|
|
19
|
+
*/
|
|
20
|
+
export { createRoot };
|
|
21
|
+
/**
|
|
22
|
+
* Check if we're currently in a reactive context
|
|
23
|
+
*/
|
|
24
|
+
export declare function isReactiveContext(): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Run a function outside of any reactive context
|
|
27
|
+
*/
|
|
28
|
+
export declare function runOutsideReactiveContext<T>(fn: () => T): T;
|
|
29
|
+
/**
|
|
30
|
+
* Create a detached reactive context that doesn't inherit from parent
|
|
31
|
+
*/
|
|
32
|
+
export declare function createDetachedRoot<T>(fn: (dispose: () => void) => T): T;
|
|
33
|
+
/**
|
|
34
|
+
* Get the root owner of the current ownership chain
|
|
35
|
+
*/
|
|
36
|
+
export declare function getRootOwner(): Owner | null;
|
|
37
|
+
/**
|
|
38
|
+
* Get all owners in the ownership chain
|
|
39
|
+
*/
|
|
40
|
+
export declare function getOwnerChain(): (Owner | null)[];
|
|
41
|
+
/**
|
|
42
|
+
* Check if an owner is an ancestor of another owner
|
|
43
|
+
*/
|
|
44
|
+
export declare function isOwnerAncestor(ancestor: Owner, descendant: Owner): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Find the common ancestor of two owners
|
|
47
|
+
*/
|
|
48
|
+
export declare function findCommonAncestor(owner1: Owner, owner2: Owner): Owner | null;
|
|
49
|
+
/**
|
|
50
|
+
* Get the depth of an owner in the ownership tree
|
|
51
|
+
*/
|
|
52
|
+
export declare function getOwnerDepth(owner: Owner): number;
|
|
53
|
+
/**
|
|
54
|
+
* Create a child owner context
|
|
55
|
+
*/
|
|
56
|
+
export declare function createChildOwner(): Owner | null;
|
|
57
|
+
/**
|
|
58
|
+
* Debug utilities for ownership
|
|
59
|
+
*/
|
|
60
|
+
export declare const OwnershipDebug: {
|
|
61
|
+
getCurrentOwner: typeof getCurrentOwner;
|
|
62
|
+
getRootOwner: typeof getRootOwner;
|
|
63
|
+
getOwnerChain: typeof getOwnerChain;
|
|
64
|
+
getOwnerDepth: typeof getOwnerDepth;
|
|
65
|
+
isReactiveContext: typeof isReactiveContext;
|
|
66
|
+
/**
|
|
67
|
+
* Get ownership tree information
|
|
68
|
+
*/
|
|
69
|
+
getOwnershipTree(): object;
|
|
70
|
+
/**
|
|
71
|
+
* Count total computations in ownership tree
|
|
72
|
+
*/
|
|
73
|
+
countComputations(): number;
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=ownership.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ownership.d.ts","sourceRoot":"","sources":["../../src/reactive/ownership.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,QAAQ,IAAI,eAAe,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACjF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC;;GAEG;AACH,wBAAgB,QAAQ,IAAI,KAAK,GAAG,IAAI,CAEvC;AAED;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,CAAA;AAEvB;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,CAAA;AAErB;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAE3D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAEvE;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,KAAK,GAAG,IAAI,CAS3C;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAUhD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,GAAG,OAAO,CAW3E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,KAAK,GAAG,IAAI,CAoB7E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAUlD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,KAAK,GAAG,IAAI,CAO/C;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;IAOzB;;OAEG;wBACiB,MAAM;IAc1B;;OAEG;yBACkB,MAAM;CAM5B,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { getOwner as n, runWithOwner as r, createRoot as o } from "./context.js";
|
|
2
|
+
function c() {
|
|
3
|
+
return n() !== null;
|
|
4
|
+
}
|
|
5
|
+
function u(e) {
|
|
6
|
+
return r(null, e);
|
|
7
|
+
}
|
|
8
|
+
function a(e) {
|
|
9
|
+
return u(() => o(e));
|
|
10
|
+
}
|
|
11
|
+
function l() {
|
|
12
|
+
let e = n();
|
|
13
|
+
if (!e) return null;
|
|
14
|
+
for (; e.parent; )
|
|
15
|
+
e = e.parent;
|
|
16
|
+
return e;
|
|
17
|
+
}
|
|
18
|
+
function w() {
|
|
19
|
+
const e = [];
|
|
20
|
+
let t = n();
|
|
21
|
+
for (; t; )
|
|
22
|
+
e.push(t), t = t.parent;
|
|
23
|
+
return e;
|
|
24
|
+
}
|
|
25
|
+
export {
|
|
26
|
+
a as createDetachedRoot,
|
|
27
|
+
o as createRoot,
|
|
28
|
+
w as getOwnerChain,
|
|
29
|
+
l as getRootOwner,
|
|
30
|
+
c as isReactiveContext,
|
|
31
|
+
u as runOutsideReactiveContext,
|
|
32
|
+
r as runWithOwner
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=ownership.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ownership.js","sources":["../../src/reactive/ownership.ts"],"sourcesContent":["/**\n * Ownership and reactive context management\n *\n * Provides utilities for managing reactive ownership contexts,\n * which control the lifecycle of reactive computations.\n */\n\nimport { createRoot, getOwner as getCurrentOwner, runWithOwner } from './context'\nimport type { Owner } from './types'\n\n/**\n * Get the current owner context\n */\nexport function getOwner(): Owner | null {\n return getCurrentOwner()\n}\n\n/**\n * Run a function with a specific owner context\n */\nexport { runWithOwner }\n\n/**\n * Create a new reactive root context\n */\nexport { createRoot }\n\n/**\n * Check if we're currently in a reactive context\n */\nexport function isReactiveContext(): boolean {\n return getCurrentOwner() !== null\n}\n\n/**\n * Run a function outside of any reactive context\n */\nexport function runOutsideReactiveContext<T>(fn: () => T): T {\n return runWithOwner(null, fn)\n}\n\n/**\n * Create a detached reactive context that doesn't inherit from parent\n */\nexport function createDetachedRoot<T>(fn: (dispose: () => void) => T): T {\n return runOutsideReactiveContext(() => createRoot(fn))\n}\n\n/**\n * Get the root owner of the current ownership chain\n */\nexport function getRootOwner(): Owner | null {\n let owner = getCurrentOwner()\n if (!owner) return null\n\n while (owner.parent) {\n owner = owner.parent\n }\n\n return owner\n}\n\n/**\n * Get all owners in the ownership chain\n */\nexport function getOwnerChain(): (Owner | null)[] {\n const chain: (Owner | null)[] = []\n let owner = getCurrentOwner()\n\n while (owner) {\n chain.push(owner)\n owner = owner.parent\n }\n\n return chain\n}\n\n/**\n * Check if an owner is an ancestor of another owner\n */\nexport function isOwnerAncestor(ancestor: Owner, descendant: Owner): boolean {\n let current = descendant.parent\n\n while (current) {\n if (current === ancestor) {\n return true\n }\n current = current.parent\n }\n\n return false\n}\n\n/**\n * Find the common ancestor of two owners\n */\nexport function findCommonAncestor(owner1: Owner, owner2: Owner): Owner | null {\n const chain1 = new Set<Owner>()\n let current: Owner | null = owner1\n\n // Build chain for owner1\n while (current) {\n chain1.add(current)\n current = current.parent\n }\n\n // Walk chain for owner2 and find first common owner\n current = owner2\n while (current) {\n if (chain1.has(current)) {\n return current\n }\n current = current.parent\n }\n\n return null\n}\n\n/**\n * Get the depth of an owner in the ownership tree\n */\nexport function getOwnerDepth(owner: Owner): number {\n let depth = 0\n let current = owner.parent\n\n while (current) {\n depth++\n current = current.parent\n }\n\n return depth\n}\n\n/**\n * Create a child owner context\n */\nexport function createChildOwner(): Owner | null {\n const parent = getCurrentOwner()\n if (!parent) return null\n\n // This would be implemented in the OwnerImpl class\n // For now, return null as we don't expose the constructor\n return null\n}\n\n/**\n * Debug utilities for ownership\n */\nexport const OwnershipDebug = {\n getCurrentOwner,\n getRootOwner,\n getOwnerChain,\n getOwnerDepth,\n isReactiveContext,\n\n /**\n * Get ownership tree information\n */\n getOwnershipTree(): object {\n const root = getRootOwner()\n if (!root) return { tree: null }\n\n const buildTree = (owner: Owner): object => ({\n id: owner.id,\n disposed: owner.disposed,\n sourceCount: owner.sources.size,\n cleanupCount: owner.cleanups.length,\n })\n\n return { tree: buildTree(root) }\n },\n\n /**\n * Count total computations in ownership tree\n */\n countComputations(): number {\n const root = getRootOwner()\n if (!root) return 0\n\n return root.sources.size\n },\n}\n"],"names":["isReactiveContext","getCurrentOwner","runOutsideReactiveContext","fn","runWithOwner","createDetachedRoot","createRoot","getRootOwner","owner","getOwnerChain","chain"],"mappings":";AA8BO,SAASA,IAA6B;AAC3C,SAAOC,QAAsB;AAC/B;AAKO,SAASC,EAA6BC,GAAgB;AAC3D,SAAOC,EAAa,MAAMD,CAAE;AAC9B;AAKO,SAASE,EAAsBF,GAAmC;AACvE,SAAOD,EAA0B,MAAMI,EAAWH,CAAE,CAAC;AACvD;AAKO,SAASI,IAA6B;AAC3C,MAAIC,IAAQP,EAAA;AACZ,MAAI,CAACO,EAAO,QAAO;AAEnB,SAAOA,EAAM;AACX,IAAAA,IAAQA,EAAM;AAGhB,SAAOA;AACT;AAKO,SAASC,IAAkC;AAChD,QAAMC,IAA0B,CAAA;AAChC,MAAIF,IAAQP,EAAA;AAEZ,SAAOO;AACL,IAAAE,EAAM,KAAKF,CAAK,GAChBA,IAAQA,EAAM;AAGhB,SAAOE;AACT;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var n=Object.defineProperty,o=(e,s,t)=>s in e?n(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,i=(e,s,t)=>o(e,typeof s!="symbol"?s+"":s,t);class d{constructor(){i(this,"pending",new Set),i(this,"isFlushScheduled",!1)}schedule(s){this.pending.add(s),this.isFlushScheduled||(this.isFlushScheduled=!0,queueMicrotask(()=>this.flush()))}flush(){if(this.pending.size===0){this.isFlushScheduled=!1;return}const s=Array.from(this.pending);this.pending.clear(),this.isFlushScheduled=!1;for(const t of s)try{t()}catch(l){console.error("Error in scheduled task:",l)}this.pending.size>0&&(this.isFlushScheduled=!0,queueMicrotask(()=>this.flush()))}}class a{schedule(s){try{s()}catch(t){console.error("Error in sync scheduled task:",t)}}flush(){}}var c=(e=>(e[e.Immediate=0]="Immediate",e[e.High=1]="High",e[e.Normal=2]="Normal",e[e.Low=3]="Low",e[e.Idle=4]="Idle",e))(c||{});class f{constructor(){i(this,"queues",new Map),i(this,"taskIdCounter",0),i(this,"isFlushScheduled",!1);for(const s of Object.values(c))typeof s=="number"&&this.queues.set(s,new Set)}schedule(s,t=2){const l={fn:s,priority:t,id:++this.taskIdCounter},r=this.queues.get(t);r&&r.add(l),this.isFlushScheduled||(this.isFlushScheduled=!0,t===0?this.flush():queueMicrotask(()=>this.flush()))}flush(){this.isFlushScheduled=!1;for(const s of[0,1,2,3,4]){const t=this.queues.get(s);if(!t||t.size===0)continue;const l=Array.from(t).sort((r,h)=>r.id-h.id);t.clear();for(const r of l)try{r.fn()}catch(h){console.error(`Error in priority ${s} task:`,h)}if(t.size===0&&this.hasMoreTasks()){queueMicrotask(()=>this.flush());return}}}hasMoreTasks(){for(const s of this.queues.values())if(s.size>0)return!0;return!1}}let u=new d;function S(){return u}function p(e){u=e}function g(e=!0){e?u=new d:u=new a}function m(e){u.schedule(e)}function q(e,s){u instanceof f?u.schedule(e,s):u.schedule(e)}function b(e){typeof requestIdleCallback<"u"?requestIdleCallback(e):setTimeout(e,0)}exports.TaskPriority=c;exports.enableScheduling=g;exports.getScheduler=S;exports.scheduleIdle=b;exports.scheduleUpdate=m;exports.scheduleWithPriority=q;exports.setScheduler=p;
|
|
2
|
+
//# sourceMappingURL=scheduler.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduler.cjs","sources":["../../src/reactive/scheduler.ts"],"sourcesContent":["/**\n * Reactive scheduler for managing update batching and timing\n *\n * Provides utilities for controlling when reactive updates are executed,\n * batching updates for performance, and scheduling priorities.\n */\n\nimport type { Scheduler } from './types'\n\n/**\n * Default scheduler implementation using microtasks\n */\nclass MicrotaskScheduler implements Scheduler {\n private pending = new Set<() => void>()\n private isFlushScheduled = false\n\n schedule(fn: () => void): void {\n this.pending.add(fn)\n\n if (!this.isFlushScheduled) {\n this.isFlushScheduled = true\n queueMicrotask(() => this.flush())\n }\n }\n\n flush(): void {\n if (this.pending.size === 0) {\n this.isFlushScheduled = false\n return\n }\n\n const tasks = Array.from(this.pending)\n this.pending.clear()\n this.isFlushScheduled = false\n\n for (const task of tasks) {\n try {\n task()\n } catch (error) {\n console.error('Error in scheduled task:', error)\n }\n }\n\n // If new tasks were scheduled during execution, flush again\n if (this.pending.size > 0) {\n this.isFlushScheduled = true\n queueMicrotask(() => this.flush())\n }\n }\n}\n\n/**\n * Synchronous scheduler for immediate execution\n */\nclass SyncScheduler implements Scheduler {\n schedule(fn: () => void): void {\n try {\n fn()\n } catch (error) {\n console.error('Error in sync scheduled task:', error)\n }\n }\n\n flush(): void {\n // No-op for sync scheduler\n }\n}\n\n/**\n * RAF scheduler for animation-friendly updates\n */\nclass RAFScheduler implements Scheduler {\n private pending = new Set<() => void>()\n private rafId: number | null = null\n\n schedule(fn: () => void): void {\n this.pending.add(fn)\n\n if (this.rafId === null) {\n this.rafId = requestAnimationFrame(() => this.flush())\n }\n }\n\n flush(): void {\n if (this.pending.size === 0) {\n this.rafId = null\n return\n }\n\n const tasks = Array.from(this.pending)\n this.pending.clear()\n this.rafId = null\n\n for (const task of tasks) {\n try {\n task()\n } catch (error) {\n console.error('Error in RAF scheduled task:', error)\n }\n }\n\n // If new tasks were scheduled during execution, schedule another RAF\n if (this.pending.size > 0) {\n this.rafId = requestAnimationFrame(() => this.flush())\n }\n }\n}\n\n/**\n * Priority-based scheduler\n */\nenum TaskPriority {\n Immediate = 0,\n High = 1,\n Normal = 2,\n Low = 3,\n Idle = 4,\n}\n\ninterface PriorityTask {\n fn: () => void\n priority: TaskPriority\n id: number\n}\n\nclass PriorityScheduler implements Scheduler {\n private queues = new Map<TaskPriority, Set<PriorityTask>>()\n private taskIdCounter = 0\n private isFlushScheduled = false\n\n constructor() {\n // Initialize priority queues\n for (const priority of Object.values(TaskPriority)) {\n if (typeof priority === 'number') {\n this.queues.set(priority, new Set())\n }\n }\n }\n\n schedule(fn: () => void, priority: TaskPriority = TaskPriority.Normal): void {\n const task: PriorityTask = {\n fn,\n priority,\n id: ++this.taskIdCounter,\n }\n\n const queue = this.queues.get(priority)\n if (queue) {\n queue.add(task)\n }\n\n if (!this.isFlushScheduled) {\n this.isFlushScheduled = true\n\n if (priority === TaskPriority.Immediate) {\n this.flush()\n } else {\n queueMicrotask(() => this.flush())\n }\n }\n }\n\n flush(): void {\n this.isFlushScheduled = false\n\n // Process queues by priority\n for (const priority of [\n TaskPriority.Immediate,\n TaskPriority.High,\n TaskPriority.Normal,\n TaskPriority.Low,\n TaskPriority.Idle,\n ]) {\n const queue = this.queues.get(priority)\n if (!queue || queue.size === 0) continue\n\n const tasks = Array.from(queue).sort((a, b) => a.id - b.id)\n queue.clear()\n\n for (const task of tasks) {\n try {\n task.fn()\n } catch (error) {\n console.error(`Error in priority ${priority} task:`, error)\n }\n }\n\n // Yield to browser after processing each priority level\n if (queue.size === 0 && this.hasMoreTasks()) {\n queueMicrotask(() => this.flush())\n return\n }\n }\n }\n\n private hasMoreTasks(): boolean {\n for (const queue of this.queues.values()) {\n if (queue.size > 0) return true\n }\n return false\n }\n}\n\n// Global scheduler instance\nlet currentScheduler: Scheduler = new MicrotaskScheduler()\n\n/**\n * Get the current scheduler\n */\nexport function getScheduler(): Scheduler {\n return currentScheduler\n}\n\n/**\n * Set a custom scheduler\n */\nexport function setScheduler(scheduler: Scheduler): void {\n currentScheduler = scheduler\n}\n\n/**\n * Enable/disable scheduling (for testing)\n */\nexport function enableScheduling(enabled: boolean = true): void {\n if (enabled) {\n currentScheduler = new MicrotaskScheduler()\n } else {\n currentScheduler = new SyncScheduler()\n }\n}\n\n/**\n * Flush all pending updates synchronously\n */\nexport function flushSync(): void {\n currentScheduler.flush()\n}\n\n/**\n * Schedule a function to run in the next update cycle\n */\nexport function scheduleUpdate(fn: () => void): void {\n currentScheduler.schedule(fn)\n}\n\n/**\n * Create a scheduler with specific behavior\n */\nexport function createScheduler(type: 'microtask' | 'sync' | 'raf' | 'priority'): Scheduler {\n switch (type) {\n case 'microtask':\n return new MicrotaskScheduler()\n case 'sync':\n return new SyncScheduler()\n case 'raf':\n return new RAFScheduler()\n case 'priority':\n return new PriorityScheduler()\n default:\n return new MicrotaskScheduler()\n }\n}\n\n/**\n * Schedule with priority (if using priority scheduler)\n */\nexport function scheduleWithPriority(fn: () => void, priority: TaskPriority): void {\n if (currentScheduler instanceof PriorityScheduler) {\n ;(currentScheduler as any).schedule(fn, priority)\n } else {\n currentScheduler.schedule(fn)\n }\n}\n\n/**\n * Defer execution to idle time\n */\nexport function scheduleIdle(fn: () => void): void {\n if (typeof requestIdleCallback !== 'undefined') {\n requestIdleCallback(fn)\n } else {\n setTimeout(fn, 0)\n }\n}\n\n/**\n * Cancel all pending updates\n */\nexport function cancelPendingUpdates(): void {\n if (\n currentScheduler instanceof MicrotaskScheduler ||\n currentScheduler instanceof PriorityScheduler\n ) {\n ;(currentScheduler as any).pending?.clear()\n }\n}\n\n// Export scheduler types\nexport { TaskPriority }\nexport type { Scheduler }\n"],"names":["MicrotaskScheduler","__publicField","fn","tasks","task","error","SyncScheduler","TaskPriority","PriorityScheduler","priority","queue","a","b","currentScheduler","getScheduler","setScheduler","scheduler","enableScheduling","enabled","scheduleUpdate","scheduleWithPriority","scheduleIdle"],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reactive scheduler for managing update batching and timing
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities for controlling when reactive updates are executed,
|
|
5
|
+
* batching updates for performance, and scheduling priorities.
|
|
6
|
+
*/
|
|
7
|
+
import type { Scheduler } from './types';
|
|
8
|
+
/**
|
|
9
|
+
* Priority-based scheduler
|
|
10
|
+
*/
|
|
11
|
+
declare enum TaskPriority {
|
|
12
|
+
Immediate = 0,
|
|
13
|
+
High = 1,
|
|
14
|
+
Normal = 2,
|
|
15
|
+
Low = 3,
|
|
16
|
+
Idle = 4
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Get the current scheduler
|
|
20
|
+
*/
|
|
21
|
+
export declare function getScheduler(): Scheduler;
|
|
22
|
+
/**
|
|
23
|
+
* Set a custom scheduler
|
|
24
|
+
*/
|
|
25
|
+
export declare function setScheduler(scheduler: Scheduler): void;
|
|
26
|
+
/**
|
|
27
|
+
* Enable/disable scheduling (for testing)
|
|
28
|
+
*/
|
|
29
|
+
export declare function enableScheduling(enabled?: boolean): void;
|
|
30
|
+
/**
|
|
31
|
+
* Flush all pending updates synchronously
|
|
32
|
+
*/
|
|
33
|
+
export declare function flushSync(): void;
|
|
34
|
+
/**
|
|
35
|
+
* Schedule a function to run in the next update cycle
|
|
36
|
+
*/
|
|
37
|
+
export declare function scheduleUpdate(fn: () => void): void;
|
|
38
|
+
/**
|
|
39
|
+
* Create a scheduler with specific behavior
|
|
40
|
+
*/
|
|
41
|
+
export declare function createScheduler(type: 'microtask' | 'sync' | 'raf' | 'priority'): Scheduler;
|
|
42
|
+
/**
|
|
43
|
+
* Schedule with priority (if using priority scheduler)
|
|
44
|
+
*/
|
|
45
|
+
export declare function scheduleWithPriority(fn: () => void, priority: TaskPriority): void;
|
|
46
|
+
/**
|
|
47
|
+
* Defer execution to idle time
|
|
48
|
+
*/
|
|
49
|
+
export declare function scheduleIdle(fn: () => void): void;
|
|
50
|
+
/**
|
|
51
|
+
* Cancel all pending updates
|
|
52
|
+
*/
|
|
53
|
+
export declare function cancelPendingUpdates(): void;
|
|
54
|
+
export { TaskPriority };
|
|
55
|
+
export type { Scheduler };
|
|
56
|
+
//# sourceMappingURL=scheduler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/reactive/scheduler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAqGxC;;GAEG;AACH,aAAK,YAAY;IACf,SAAS,IAAI;IACb,IAAI,IAAI;IACR,MAAM,IAAI;IACV,GAAG,IAAI;IACP,IAAI,IAAI;CACT;AAyFD;;GAEG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAExC;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAEvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,OAAc,GAAG,IAAI,CAM9D;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAEhC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAEnD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,CAa1F;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,IAAI,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI,CAMjF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAMjD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAO3C;AAGD,OAAO,EAAE,YAAY,EAAE,CAAA;AACvB,YAAY,EAAE,SAAS,EAAE,CAAA"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
var d = Object.defineProperty, o = (e, s, t) => s in e ? d(e, s, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[s] = t, i = (e, s, t) => o(e, typeof s != "symbol" ? s + "" : s, t);
|
|
2
|
+
class c {
|
|
3
|
+
constructor() {
|
|
4
|
+
i(this, "pending", /* @__PURE__ */ new Set()), i(this, "isFlushScheduled", !1);
|
|
5
|
+
}
|
|
6
|
+
schedule(s) {
|
|
7
|
+
this.pending.add(s), this.isFlushScheduled || (this.isFlushScheduled = !0, queueMicrotask(() => this.flush()));
|
|
8
|
+
}
|
|
9
|
+
flush() {
|
|
10
|
+
if (this.pending.size === 0) {
|
|
11
|
+
this.isFlushScheduled = !1;
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
const s = Array.from(this.pending);
|
|
15
|
+
this.pending.clear(), this.isFlushScheduled = !1;
|
|
16
|
+
for (const t of s)
|
|
17
|
+
try {
|
|
18
|
+
t();
|
|
19
|
+
} catch (l) {
|
|
20
|
+
console.error("Error in scheduled task:", l);
|
|
21
|
+
}
|
|
22
|
+
this.pending.size > 0 && (this.isFlushScheduled = !0, queueMicrotask(() => this.flush()));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
class f {
|
|
26
|
+
schedule(s) {
|
|
27
|
+
try {
|
|
28
|
+
s();
|
|
29
|
+
} catch (t) {
|
|
30
|
+
console.error("Error in sync scheduled task:", t);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
flush() {
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
var n = /* @__PURE__ */ ((e) => (e[e.Immediate = 0] = "Immediate", e[e.High = 1] = "High", e[e.Normal = 2] = "Normal", e[e.Low = 3] = "Low", e[e.Idle = 4] = "Idle", e))(n || {});
|
|
37
|
+
class a {
|
|
38
|
+
constructor() {
|
|
39
|
+
i(this, "queues", /* @__PURE__ */ new Map()), i(this, "taskIdCounter", 0), i(this, "isFlushScheduled", !1);
|
|
40
|
+
for (const s of Object.values(n))
|
|
41
|
+
typeof s == "number" && this.queues.set(s, /* @__PURE__ */ new Set());
|
|
42
|
+
}
|
|
43
|
+
schedule(s, t = 2) {
|
|
44
|
+
const l = {
|
|
45
|
+
fn: s,
|
|
46
|
+
priority: t,
|
|
47
|
+
id: ++this.taskIdCounter
|
|
48
|
+
}, r = this.queues.get(t);
|
|
49
|
+
r && r.add(l), this.isFlushScheduled || (this.isFlushScheduled = !0, t === 0 ? this.flush() : queueMicrotask(() => this.flush()));
|
|
50
|
+
}
|
|
51
|
+
flush() {
|
|
52
|
+
this.isFlushScheduled = !1;
|
|
53
|
+
for (const s of [
|
|
54
|
+
0,
|
|
55
|
+
1,
|
|
56
|
+
2,
|
|
57
|
+
3,
|
|
58
|
+
4
|
|
59
|
+
/* Idle */
|
|
60
|
+
]) {
|
|
61
|
+
const t = this.queues.get(s);
|
|
62
|
+
if (!t || t.size === 0) continue;
|
|
63
|
+
const l = Array.from(t).sort((r, h) => r.id - h.id);
|
|
64
|
+
t.clear();
|
|
65
|
+
for (const r of l)
|
|
66
|
+
try {
|
|
67
|
+
r.fn();
|
|
68
|
+
} catch (h) {
|
|
69
|
+
console.error(`Error in priority ${s} task:`, h);
|
|
70
|
+
}
|
|
71
|
+
if (t.size === 0 && this.hasMoreTasks()) {
|
|
72
|
+
queueMicrotask(() => this.flush());
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
hasMoreTasks() {
|
|
78
|
+
for (const s of this.queues.values())
|
|
79
|
+
if (s.size > 0) return !0;
|
|
80
|
+
return !1;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
let u = new c();
|
|
84
|
+
function S() {
|
|
85
|
+
return u;
|
|
86
|
+
}
|
|
87
|
+
function p(e) {
|
|
88
|
+
u = e;
|
|
89
|
+
}
|
|
90
|
+
function q(e = !0) {
|
|
91
|
+
e ? u = new c() : u = new f();
|
|
92
|
+
}
|
|
93
|
+
function g(e) {
|
|
94
|
+
u.schedule(e);
|
|
95
|
+
}
|
|
96
|
+
function m(e, s) {
|
|
97
|
+
u instanceof a ? u.schedule(e, s) : u.schedule(e);
|
|
98
|
+
}
|
|
99
|
+
function F(e) {
|
|
100
|
+
typeof requestIdleCallback < "u" ? requestIdleCallback(e) : setTimeout(e, 0);
|
|
101
|
+
}
|
|
102
|
+
export {
|
|
103
|
+
n as TaskPriority,
|
|
104
|
+
q as enableScheduling,
|
|
105
|
+
S as getScheduler,
|
|
106
|
+
F as scheduleIdle,
|
|
107
|
+
g as scheduleUpdate,
|
|
108
|
+
m as scheduleWithPriority,
|
|
109
|
+
p as setScheduler
|
|
110
|
+
};
|
|
111
|
+
//# sourceMappingURL=scheduler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduler.js","sources":["../../src/reactive/scheduler.ts"],"sourcesContent":["/**\n * Reactive scheduler for managing update batching and timing\n *\n * Provides utilities for controlling when reactive updates are executed,\n * batching updates for performance, and scheduling priorities.\n */\n\nimport type { Scheduler } from './types'\n\n/**\n * Default scheduler implementation using microtasks\n */\nclass MicrotaskScheduler implements Scheduler {\n private pending = new Set<() => void>()\n private isFlushScheduled = false\n\n schedule(fn: () => void): void {\n this.pending.add(fn)\n\n if (!this.isFlushScheduled) {\n this.isFlushScheduled = true\n queueMicrotask(() => this.flush())\n }\n }\n\n flush(): void {\n if (this.pending.size === 0) {\n this.isFlushScheduled = false\n return\n }\n\n const tasks = Array.from(this.pending)\n this.pending.clear()\n this.isFlushScheduled = false\n\n for (const task of tasks) {\n try {\n task()\n } catch (error) {\n console.error('Error in scheduled task:', error)\n }\n }\n\n // If new tasks were scheduled during execution, flush again\n if (this.pending.size > 0) {\n this.isFlushScheduled = true\n queueMicrotask(() => this.flush())\n }\n }\n}\n\n/**\n * Synchronous scheduler for immediate execution\n */\nclass SyncScheduler implements Scheduler {\n schedule(fn: () => void): void {\n try {\n fn()\n } catch (error) {\n console.error('Error in sync scheduled task:', error)\n }\n }\n\n flush(): void {\n // No-op for sync scheduler\n }\n}\n\n/**\n * RAF scheduler for animation-friendly updates\n */\nclass RAFScheduler implements Scheduler {\n private pending = new Set<() => void>()\n private rafId: number | null = null\n\n schedule(fn: () => void): void {\n this.pending.add(fn)\n\n if (this.rafId === null) {\n this.rafId = requestAnimationFrame(() => this.flush())\n }\n }\n\n flush(): void {\n if (this.pending.size === 0) {\n this.rafId = null\n return\n }\n\n const tasks = Array.from(this.pending)\n this.pending.clear()\n this.rafId = null\n\n for (const task of tasks) {\n try {\n task()\n } catch (error) {\n console.error('Error in RAF scheduled task:', error)\n }\n }\n\n // If new tasks were scheduled during execution, schedule another RAF\n if (this.pending.size > 0) {\n this.rafId = requestAnimationFrame(() => this.flush())\n }\n }\n}\n\n/**\n * Priority-based scheduler\n */\nenum TaskPriority {\n Immediate = 0,\n High = 1,\n Normal = 2,\n Low = 3,\n Idle = 4,\n}\n\ninterface PriorityTask {\n fn: () => void\n priority: TaskPriority\n id: number\n}\n\nclass PriorityScheduler implements Scheduler {\n private queues = new Map<TaskPriority, Set<PriorityTask>>()\n private taskIdCounter = 0\n private isFlushScheduled = false\n\n constructor() {\n // Initialize priority queues\n for (const priority of Object.values(TaskPriority)) {\n if (typeof priority === 'number') {\n this.queues.set(priority, new Set())\n }\n }\n }\n\n schedule(fn: () => void, priority: TaskPriority = TaskPriority.Normal): void {\n const task: PriorityTask = {\n fn,\n priority,\n id: ++this.taskIdCounter,\n }\n\n const queue = this.queues.get(priority)\n if (queue) {\n queue.add(task)\n }\n\n if (!this.isFlushScheduled) {\n this.isFlushScheduled = true\n\n if (priority === TaskPriority.Immediate) {\n this.flush()\n } else {\n queueMicrotask(() => this.flush())\n }\n }\n }\n\n flush(): void {\n this.isFlushScheduled = false\n\n // Process queues by priority\n for (const priority of [\n TaskPriority.Immediate,\n TaskPriority.High,\n TaskPriority.Normal,\n TaskPriority.Low,\n TaskPriority.Idle,\n ]) {\n const queue = this.queues.get(priority)\n if (!queue || queue.size === 0) continue\n\n const tasks = Array.from(queue).sort((a, b) => a.id - b.id)\n queue.clear()\n\n for (const task of tasks) {\n try {\n task.fn()\n } catch (error) {\n console.error(`Error in priority ${priority} task:`, error)\n }\n }\n\n // Yield to browser after processing each priority level\n if (queue.size === 0 && this.hasMoreTasks()) {\n queueMicrotask(() => this.flush())\n return\n }\n }\n }\n\n private hasMoreTasks(): boolean {\n for (const queue of this.queues.values()) {\n if (queue.size > 0) return true\n }\n return false\n }\n}\n\n// Global scheduler instance\nlet currentScheduler: Scheduler = new MicrotaskScheduler()\n\n/**\n * Get the current scheduler\n */\nexport function getScheduler(): Scheduler {\n return currentScheduler\n}\n\n/**\n * Set a custom scheduler\n */\nexport function setScheduler(scheduler: Scheduler): void {\n currentScheduler = scheduler\n}\n\n/**\n * Enable/disable scheduling (for testing)\n */\nexport function enableScheduling(enabled: boolean = true): void {\n if (enabled) {\n currentScheduler = new MicrotaskScheduler()\n } else {\n currentScheduler = new SyncScheduler()\n }\n}\n\n/**\n * Flush all pending updates synchronously\n */\nexport function flushSync(): void {\n currentScheduler.flush()\n}\n\n/**\n * Schedule a function to run in the next update cycle\n */\nexport function scheduleUpdate(fn: () => void): void {\n currentScheduler.schedule(fn)\n}\n\n/**\n * Create a scheduler with specific behavior\n */\nexport function createScheduler(type: 'microtask' | 'sync' | 'raf' | 'priority'): Scheduler {\n switch (type) {\n case 'microtask':\n return new MicrotaskScheduler()\n case 'sync':\n return new SyncScheduler()\n case 'raf':\n return new RAFScheduler()\n case 'priority':\n return new PriorityScheduler()\n default:\n return new MicrotaskScheduler()\n }\n}\n\n/**\n * Schedule with priority (if using priority scheduler)\n */\nexport function scheduleWithPriority(fn: () => void, priority: TaskPriority): void {\n if (currentScheduler instanceof PriorityScheduler) {\n ;(currentScheduler as any).schedule(fn, priority)\n } else {\n currentScheduler.schedule(fn)\n }\n}\n\n/**\n * Defer execution to idle time\n */\nexport function scheduleIdle(fn: () => void): void {\n if (typeof requestIdleCallback !== 'undefined') {\n requestIdleCallback(fn)\n } else {\n setTimeout(fn, 0)\n }\n}\n\n/**\n * Cancel all pending updates\n */\nexport function cancelPendingUpdates(): void {\n if (\n currentScheduler instanceof MicrotaskScheduler ||\n currentScheduler instanceof PriorityScheduler\n ) {\n ;(currentScheduler as any).pending?.clear()\n }\n}\n\n// Export scheduler types\nexport { TaskPriority }\nexport type { Scheduler }\n"],"names":["MicrotaskScheduler","__publicField","fn","tasks","task","error","SyncScheduler","TaskPriority","PriorityScheduler","priority","queue","a","b","currentScheduler","getScheduler","setScheduler","scheduler","enableScheduling","enabled","scheduleUpdate","scheduleWithPriority","scheduleIdle"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./context.cjs"),s=require("./types.cjs");var c=Object.defineProperty,f=(e,t,i)=>t in e?c(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,o=(e,t,i)=>f(e,typeof t!="symbol"?t+"":t,i);let d=0;class p{constructor(t){o(this,"id"),o(this,"observers",new Set),o(this,"_value"),this.id=++d,this._value=t}getValue(){const t=a.getCurrentComputation();return t&&t.state!==s.ComputationState.Disposed&&(this.observers.add(t),t.sources.add(this)),this._value}peek(){return this._value}set(t){const i=typeof t=="function"?t(this._value):t;return i!==this._value&&(this._value=i,this.notify()),i}notify(){for(const t of this.observers)t.state!==s.ComputationState.Disposed&&(t.state=s.ComputationState.Dirty,h(t))}removeObserver(t){this.observers.delete(t)}[Symbol.for("tachui.debug")](){return{id:this.id,value:this._value,observerCount:this.observers.size,type:"Signal"}}}const r=new Set;let n=!1;function h(e){r.add(e),!n&&!a.isBatchingUpdates()&&queueMicrotask(u)}function u(){if(!n){n=!0;try{for(;r.size>0;){const e=Array.from(r).sort((t,i)=>t.id-i.id);r.clear();for(const t of e)t.state===s.ComputationState.Dirty&&t.execute()}}finally{n=!1}}}function g(e){const t=new p(e),i=t.getValue.bind(t);i.peek=t.peek.bind(t);const l=t.set.bind(t);return Object.defineProperty(i,Symbol.for("tachui.signal"),{value:t,enumerable:!1}),[i,l]}function b(e){return typeof e=="function"&&Symbol.for("tachui.signal")in e}function m(e){return e[Symbol.for("tachui.signal")]||null}a.setFlushFunction(u);exports.createSignal=g;exports.flushSync=u;exports.getSignalImpl=m;exports.isSignal=b;
|
|
2
|
+
//# sourceMappingURL=signal.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signal.cjs","sources":["../../src/reactive/signal.ts"],"sourcesContent":["/**\n * Signal implementation - core reactive primitive\n *\n * Signals are the foundation of TachUI's reactive system, providing\n * fine-grained reactivity similar to SolidJS signals.\n */\n\nimport { getCurrentComputation, isBatchingUpdates, setFlushFunction } from './context'\nimport type { Computation, SignalImpl as ISignal } from './types'\nimport { ComputationState } from './types'\n\nlet signalIdCounter = 0\n\n/**\n * Signal setter function type\n */\nexport type SignalSetter<T> = (value: T | ((prev: T) => T)) => T\n\n/**\n * Internal signal implementation (keeping original behavior)\n */\nclass SignalImpl<T> implements ISignal<T> {\n readonly id: number\n readonly observers = new Set<Computation>()\n private _value: T\n\n constructor(initialValue: T) {\n this.id = ++signalIdCounter\n this._value = initialValue\n }\n\n /**\n * Get the current value and track dependency\n */\n getValue(): T {\n const computation = getCurrentComputation()\n if (computation && computation.state !== ComputationState.Disposed) {\n // Track this signal as a dependency\n this.observers.add(computation)\n computation.sources.add(this)\n }\n return this._value\n }\n\n /**\n * Get the current value without tracking dependency\n */\n peek(): T {\n return this._value\n }\n\n /**\n * Set a new value and notify observers\n */\n set(newValue: T | ((prev: T) => T)): T {\n const value =\n typeof newValue === 'function' ? (newValue as (prev: T) => T)(this._value) : newValue\n\n if (value !== this._value) {\n this._value = value\n this.notify()\n }\n\n return value\n }\n\n /**\n * Notify all observers that this signal has changed\n */\n private notify(): void {\n for (const observer of this.observers) {\n if (observer.state !== ComputationState.Disposed) {\n observer.state = ComputationState.Dirty\n scheduleUpdate(observer)\n }\n }\n }\n\n /**\n * Remove an observer (cleanup)\n */\n removeObserver(computation: Computation): void {\n this.observers.delete(computation)\n }\n\n /**\n * Get debug information about this signal\n */\n [Symbol.for('tachui.debug')](): object {\n return {\n id: this.id,\n value: this._value,\n observerCount: this.observers.size,\n type: 'Signal',\n }\n }\n}\n\n/**\n * Update queue for batching reactive updates\n */\nconst updateQueue = new Set<Computation>()\nlet isFlushingUpdates = false\n\n/**\n * Schedule a computation for update\n */\nfunction scheduleUpdate(computation: Computation): void {\n updateQueue.add(computation)\n\n if (!isFlushingUpdates && !isBatchingUpdates()) {\n queueMicrotask(flushUpdates)\n }\n}\n\n/**\n * Flush all pending updates\n */\nfunction flushUpdates(): void {\n if (isFlushingUpdates) return\n\n isFlushingUpdates = true\n\n try {\n // Keep processing until no more computations are added\n while (updateQueue.size > 0) {\n // Process updates in order of computation ID for deterministic execution\n const computations = Array.from(updateQueue).sort((a, b) => a.id - b.id)\n updateQueue.clear()\n\n for (const computation of computations) {\n if (computation.state === ComputationState.Dirty) {\n computation.execute()\n }\n }\n }\n } finally {\n isFlushingUpdates = false\n }\n}\n\n/**\n * Create a new reactive signal\n *\n * @param initialValue The initial value of the signal\n * @returns A tuple of [getter, setter] functions\n *\n * @example\n * ```typescript\n * const [count, setCount] = createSignal(0)\n *\n * console.log(count()) // 0\n * setCount(5)\n * console.log(count()) // 5\n *\n * // Functional update\n * setCount(prev => prev + 1)\n * console.log(count()) // 6\n * ```\n */\nexport function createSignal<T>(initialValue: T): [() => T, SignalSetter<T>] {\n const signal = new SignalImpl(initialValue)\n\n const getter = signal.getValue.bind(signal) as (() => T) & { peek: () => T }\n getter.peek = signal.peek.bind(signal)\n\n const setter: SignalSetter<T> = signal.set.bind(signal)\n\n // Add debug information\n Object.defineProperty(getter, Symbol.for('tachui.signal'), {\n value: signal,\n enumerable: false,\n })\n\n return [getter, setter]\n}\n\n/**\n * Type guard to check if a value is a signal\n */\nexport function isSignal<T = any>(value: any): value is (() => T) & { peek: () => T } {\n return typeof value === 'function' && Symbol.for('tachui.signal') in value\n}\n\n/**\n * Get the underlying signal implementation for debugging\n */\nexport function getSignalImpl<T>(signal: (() => T) & { peek: () => T }): SignalImpl<T> | null {\n return (signal as any)[Symbol.for('tachui.signal')] || null\n}\n\n/**\n * Public Signal type export (callable getter)\n */\nexport type { Signal } from './types'\n\n// Export flush function for testing and manual control\nexport { flushUpdates as flushSync }\n\n// Register flush function with context module\nsetFlushFunction(flushUpdates)\n"],"names":["signalIdCounter","SignalImpl","initialValue","__publicField","computation","getCurrentComputation","ComputationState","newValue","value","observer","scheduleUpdate","updateQueue","isFlushingUpdates","isBatchingUpdates","flushUpdates","computations","a","b","createSignal","signal","getter","setter","isSignal","getSignalImpl","setFlushFunction"],"mappings":"sSAWA,IAAIA,EAAkB,EAUtB,MAAMC,CAAoC,CAKxC,YAAYC,EAAiB,CAJ7BC,EAAA,KAAS,IAAA,EACTA,EAAA,KAAS,gBAAgB,GAAiB,EAC1CA,EAAA,KAAQ,QAAA,EAGN,KAAK,GAAK,EAAEH,EACZ,KAAK,OAASE,CAChB,CAKA,UAAc,CACZ,MAAME,EAAcC,EAAAA,sBAAA,EACpB,OAAID,GAAeA,EAAY,QAAUE,EAAAA,iBAAiB,WAExD,KAAK,UAAU,IAAIF,CAAW,EAC9BA,EAAY,QAAQ,IAAI,IAAI,GAEvB,KAAK,MACd,CAKA,MAAU,CACR,OAAO,KAAK,MACd,CAKA,IAAIG,EAAmC,CACrC,MAAMC,EACJ,OAAOD,GAAa,WAAcA,EAA4B,KAAK,MAAM,EAAIA,EAE/E,OAAIC,IAAU,KAAK,SACjB,KAAK,OAASA,EACd,KAAK,OAAA,GAGAA,CACT,CAKQ,QAAe,CACrB,UAAWC,KAAY,KAAK,UACtBA,EAAS,QAAUH,EAAAA,iBAAiB,WACtCG,EAAS,MAAQH,EAAAA,iBAAiB,MAClCI,EAAeD,CAAQ,EAG7B,CAKA,eAAeL,EAAgC,CAC7C,KAAK,UAAU,OAAOA,CAAW,CACnC,CAKA,CAAC,OAAO,IAAI,cAAc,CAAC,GAAY,CACrC,MAAO,CACL,GAAI,KAAK,GACT,MAAO,KAAK,OACZ,cAAe,KAAK,UAAU,KAC9B,KAAM,QAAA,CAEV,CACF,CAKA,MAAMO,MAAkB,IACxB,IAAIC,EAAoB,GAKxB,SAASF,EAAeN,EAAgC,CACtDO,EAAY,IAAIP,CAAW,EAEvB,CAACQ,GAAqB,CAACC,EAAAA,qBACzB,eAAeC,CAAY,CAE/B,CAKA,SAASA,GAAqB,CAC5B,GAAI,CAAAF,EAEJ,CAAAA,EAAoB,GAEpB,GAAI,CAEF,KAAOD,EAAY,KAAO,GAAG,CAE3B,MAAMI,EAAe,MAAM,KAAKJ,CAAW,EAAE,KAAK,CAACK,EAAGC,IAAMD,EAAE,GAAKC,EAAE,EAAE,EACvEN,EAAY,MAAA,EAEZ,UAAWP,KAAeW,EACpBX,EAAY,QAAUE,EAAAA,iBAAiB,OACzCF,EAAY,QAAA,CAGlB,CACF,QAAA,CACEQ,EAAoB,EACtB,EACF,CAqBO,SAASM,EAAgBhB,EAA6C,CAC3E,MAAMiB,EAAS,IAAIlB,EAAWC,CAAY,EAEpCkB,EAASD,EAAO,SAAS,KAAKA,CAAM,EAC1CC,EAAO,KAAOD,EAAO,KAAK,KAAKA,CAAM,EAErC,MAAME,EAA0BF,EAAO,IAAI,KAAKA,CAAM,EAGtD,cAAO,eAAeC,EAAQ,OAAO,IAAI,eAAe,EAAG,CACzD,MAAOD,EACP,WAAY,EAAA,CACb,EAEM,CAACC,EAAQC,CAAM,CACxB,CAKO,SAASC,EAAkBd,EAAoD,CACpF,OAAO,OAAOA,GAAU,YAAc,OAAO,IAAI,eAAe,IAAKA,CACvE,CAKO,SAASe,EAAiBJ,EAA6D,CAC5F,OAAQA,EAAe,OAAO,IAAI,eAAe,CAAC,GAAK,IACzD,CAWAK,EAAAA,iBAAiBV,CAAY"}
|