@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,149 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TypeScript definitions for the TachUI compiler system
|
|
3
|
+
*/
|
|
4
|
+
export interface TachUIPluginOptions {
|
|
5
|
+
/**
|
|
6
|
+
* File extensions to transform (default: ['.tsx', '.ts'])
|
|
7
|
+
*/
|
|
8
|
+
include?: string[];
|
|
9
|
+
/**
|
|
10
|
+
* File patterns to exclude from transformation
|
|
11
|
+
*/
|
|
12
|
+
exclude?: string[];
|
|
13
|
+
/**
|
|
14
|
+
* Enable development mode optimizations
|
|
15
|
+
*/
|
|
16
|
+
dev?: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Custom transformer options
|
|
19
|
+
*/
|
|
20
|
+
transform?: TransformOptions;
|
|
21
|
+
}
|
|
22
|
+
export interface TransformOptions {
|
|
23
|
+
/**
|
|
24
|
+
* Enable tree-shaking optimizations
|
|
25
|
+
*/
|
|
26
|
+
treeShaking?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Enable compile-time constant folding
|
|
29
|
+
*/
|
|
30
|
+
constantFolding?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Generate source maps
|
|
33
|
+
*/
|
|
34
|
+
sourceMaps?: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Target output format
|
|
37
|
+
*/
|
|
38
|
+
target?: 'es2020' | 'es2022' | 'esnext';
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* AST Node types for SwiftUI syntax parsing
|
|
42
|
+
*/
|
|
43
|
+
export interface ASTNode {
|
|
44
|
+
type: string;
|
|
45
|
+
loc?: SourceLocation;
|
|
46
|
+
}
|
|
47
|
+
export interface SourceLocation {
|
|
48
|
+
start: Position;
|
|
49
|
+
end: Position;
|
|
50
|
+
source?: string;
|
|
51
|
+
}
|
|
52
|
+
export interface Position {
|
|
53
|
+
line: number;
|
|
54
|
+
column: number;
|
|
55
|
+
offset: number;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* SwiftUI Component AST Nodes
|
|
59
|
+
*/
|
|
60
|
+
export interface ComponentNode extends ASTNode {
|
|
61
|
+
type: 'Component';
|
|
62
|
+
name: string;
|
|
63
|
+
children: ASTNode[];
|
|
64
|
+
modifiers: ModifierNode[];
|
|
65
|
+
}
|
|
66
|
+
export interface ModifierNode extends ASTNode {
|
|
67
|
+
type: 'Modifier';
|
|
68
|
+
name: string;
|
|
69
|
+
arguments: Expression[];
|
|
70
|
+
}
|
|
71
|
+
export interface Expression extends ASTNode {
|
|
72
|
+
type: 'Literal' | 'Identifier' | 'CallExpression' | 'ArrowFunction' | 'MemberExpression' | 'ArrayExpression';
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Advanced AST Node Types (Phase 2.1.2)
|
|
76
|
+
*/
|
|
77
|
+
export interface ConditionalNode extends ASTNode {
|
|
78
|
+
type: 'Conditional';
|
|
79
|
+
condition: Expression;
|
|
80
|
+
thenBody: ASTNode[];
|
|
81
|
+
elseBody?: ASTNode[] | undefined;
|
|
82
|
+
}
|
|
83
|
+
export interface ForEachNode extends ASTNode {
|
|
84
|
+
type: 'ForEach';
|
|
85
|
+
iterable: Expression;
|
|
86
|
+
itemIdentifier: string;
|
|
87
|
+
body: ASTNode[];
|
|
88
|
+
}
|
|
89
|
+
export interface StateBindingNode extends ASTNode {
|
|
90
|
+
type: 'StateBinding';
|
|
91
|
+
identifier: string;
|
|
92
|
+
initialValue?: Expression;
|
|
93
|
+
}
|
|
94
|
+
export interface PropertyWrapperNode extends ASTNode {
|
|
95
|
+
type: 'PropertyWrapper';
|
|
96
|
+
wrapper: 'State' | 'Computed' | 'Effect';
|
|
97
|
+
identifier: string;
|
|
98
|
+
initialValue?: Expression | undefined;
|
|
99
|
+
}
|
|
100
|
+
export interface CallExpressionNode extends Expression {
|
|
101
|
+
type: 'CallExpression';
|
|
102
|
+
callee: Expression;
|
|
103
|
+
arguments: Expression[];
|
|
104
|
+
}
|
|
105
|
+
export interface MemberExpressionNode extends Expression {
|
|
106
|
+
type: 'MemberExpression';
|
|
107
|
+
object: string;
|
|
108
|
+
property: string;
|
|
109
|
+
}
|
|
110
|
+
export interface ArrayExpressionNode extends Expression {
|
|
111
|
+
type: 'ArrayExpression';
|
|
112
|
+
elements: Expression[];
|
|
113
|
+
}
|
|
114
|
+
export interface LiteralExpression extends Expression {
|
|
115
|
+
type: 'Literal';
|
|
116
|
+
value: string | number | boolean;
|
|
117
|
+
raw: string;
|
|
118
|
+
}
|
|
119
|
+
export interface IdentifierExpression extends Expression {
|
|
120
|
+
type: 'Identifier';
|
|
121
|
+
name: string;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Layout component types
|
|
125
|
+
*/
|
|
126
|
+
export type LayoutComponent = 'VStack' | 'HStack' | 'ZStack' | 'List' | 'Form';
|
|
127
|
+
/**
|
|
128
|
+
* UI component types
|
|
129
|
+
*/
|
|
130
|
+
export type UIComponent = 'Text' | 'Button' | 'Image' | 'TextField' | 'Toggle';
|
|
131
|
+
/**
|
|
132
|
+
* Modifier types
|
|
133
|
+
*/
|
|
134
|
+
export interface ModifierMapping {
|
|
135
|
+
padding: (value?: number | string) => string;
|
|
136
|
+
background: (color: string) => string;
|
|
137
|
+
foregroundColor: (color: string) => string;
|
|
138
|
+
font: (size: string | number) => string;
|
|
139
|
+
border: (width: number, color: string) => string;
|
|
140
|
+
cornerRadius: (radius: number) => string;
|
|
141
|
+
shadow: (radius: number, offset?: {
|
|
142
|
+
x: number;
|
|
143
|
+
y: number;
|
|
144
|
+
}) => string;
|
|
145
|
+
opacity: (value: number) => string;
|
|
146
|
+
frame: (width?: number, height?: number) => string;
|
|
147
|
+
onTapGesture: (handler: () => void) => void;
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/compiler/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../reactive/cleanup.cjs");require("../reactive/unified-scheduler.cjs");const h=require("../reactive/effect.cjs"),r=require("../reactive/signal.cjs");require("../reactive/scheduler.cjs");require("../reactive/theme.cjs");require("../runtime/component.cjs");require("../runtime/context.cjs");require("../runtime/dev-tools.cjs");require("../runtime/dom-bridge.cjs");require("../runtime/error-boundary.cjs");require("../runtime/error-reporting.cjs");require("../runtime/performance.cjs");const b=require("../runtime/renderer.cjs");require("../runtime/element-override.cjs");require("../runtime/semantic-role-manager.cjs");require("../runtime/development-warnings.cjs");const g=require("./wrapper.cjs");require("../css-classes/css-class-manager.cjs");const f=require("../css-classes/component-base.cjs");var y=Object.defineProperty,S=(t,e,s)=>e in t?y(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,i=(t,e,s)=>S(t,typeof e!="symbol"?e+"":e,s);const o={colors:{background:"#FFFFFF",border:"#D1D1D6",text:"#000000",placeholder:"#8E8E93",focusBorder:"#007AFF",disabledBackground:"#F2F2F7",disabledText:"#8E8E93"},spacing:{padding:8,borderWidth:1},borderRadius:4,fontSize:16,fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',transition:"border-color 0.2s ease, background-color 0.2s ease"};class u extends f.ComponentWithCSSClasses{constructor(e){super(),i(this,"type","component"),i(this,"id"),i(this,"props"),i(this,"theme",o),i(this,"inputElement",null),i(this,"handleInput",s=>{const n=s.target.value;this.setText(n),this.props.onChange&&this.props.onChange(n)}),i(this,"handleKeyDown",s=>{s.key==="Enter"&&this.props.onSubmit&&(s.preventDefault(),this.props.onSubmit(this.getText()))}),i(this,"handleFocus",()=>{this.props.onFocus&&this.props.onFocus(),this.inputElement&&(this.inputElement.style.borderColor=this.theme.colors.focusBorder)}),i(this,"handleBlur",()=>{this.props.onBlur&&this.props.onBlur(),this.inputElement&&(this.inputElement.style.borderColor=this.theme.colors.border)}),this.props=e,this.id=`basicinput-${Date.now()}-${Math.random().toString(36).substr(2,9)}`}resolveValue(e){return r.isSignal(e)?e():e}getText(){return this.resolveValue(this.props.text)}setText(e){this.props.setText&&this.props.setText(e)}getPlaceholder(){return this.resolveValue(this.props.placeholder||"")}getInputType(){return this.resolveValue(this.props.inputType||"text")}isDisabled(){return this.resolveValue(this.props.disabled||!1)}isReadonly(){return this.resolveValue(this.props.readonly||!1)}getInputStyles(){const e=this.isDisabled();return{width:"100%",padding:`${this.theme.spacing.padding}px`,border:`${this.theme.spacing.borderWidth}px solid ${this.theme.colors.border}`,borderRadius:`${this.theme.borderRadius}px`,backgroundColor:e?this.theme.colors.disabledBackground:this.theme.colors.background,color:e?this.theme.colors.disabledText:this.theme.colors.text,fontSize:`${this.theme.fontSize}px`,fontFamily:this.theme.fontFamily,outline:"none",transition:this.theme.transition,cursor:e?"not-allowed":"text"}}render(){const e=this.getText(),s=this.getPlaceholder(),l=this.getInputType(),n=this.isDisabled(),d=this.isReadonly(),c=["tachui-basic-input"],m=this.createClassString(this.props,c),p=b.h("input",{id:this.id,className:m,type:l,value:e,placeholder:s,disabled:n,readonly:d,"aria-label":this.props.accessibilityLabel,"aria-describedby":this.props.accessibilityHint?`${this.id}-hint`:void 0,style:this.getInputStyles(),oninput:this.handleInput,onkeydown:this.handleKeyDown,onfocus:this.handleFocus,onblur:this.handleBlur});return this.inputElement=p.element,h.createEffect(()=>{if(this.inputElement&&r.isSignal(this.props.text)){const a=this.getText();this.inputElement.value!==a&&(this.inputElement.value=a)}}),h.createEffect(()=>{this.inputElement&&(r.isSignal(this.props.placeholder)||r.isSignal(this.props.inputType)||r.isSignal(this.props.disabled))&&(r.isSignal(this.props.placeholder)&&(this.inputElement.placeholder=this.getPlaceholder()),r.isSignal(this.props.inputType)&&(this.inputElement.type=this.getInputType()),r.isSignal(this.props.disabled)&&(this.inputElement.disabled=this.isDisabled()))}),[p]}}function T(t){return g.withModifiers(new u(t))}const E={search(t,e,s){return{text:t,setText:e,inputType:"search",placeholder:"Search...",onSubmit:s}},email(t,e){return{text:t,setText:e,inputType:"email",placeholder:"Enter email address"}},password(t,e){return{text:t,setText:e,inputType:"password",placeholder:"Enter password"}},phone(t,e){return{text:t,setText:e,inputType:"tel",placeholder:"Enter phone number"}}},x={theme:o,createTheme(t){return{...o,...t}}};exports.BasicInput=T;exports.BasicInputComponent=u;exports.BasicInputStyles=x;exports.BasicInputUtils=E;
|
|
2
|
+
//# sourceMappingURL=BasicInput.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BasicInput.cjs","sources":["../../src/components/BasicInput.ts"],"sourcesContent":["/**\n * BasicInput Component (Phase 1)\n *\n * Lightweight text input component for Core-only applications.\n * Provides SwiftUI-style reactive binding without the complexity\n * of the Forms plugin validation and formatting system.\n */\n\nimport type { ModifiableComponent, ModifierBuilder } from '../modifiers/types'\nimport { createEffect, isSignal } from '../reactive'\nimport type { Signal } from '../reactive/types'\nimport { h } from '../runtime'\nimport type { ComponentInstance, ComponentProps, DOMNode } from '../runtime/types'\nimport { withModifiers } from './wrapper'\nimport {\n ComponentWithCSSClasses,\n type CSSClassesProps\n} from '../css-classes'\n\n/**\n * BasicInput supported input types\n */\nexport type BasicInputType = 'text' | 'email' | 'password' | 'search' | 'tel' | 'url'\n\n/**\n * BasicInput component properties with CSS classes support\n */\nexport interface BasicInputProps extends ComponentProps, CSSClassesProps {\n // Core reactive binding\n text: Signal<string>\n setText?: (value: string) => void\n\n // Input configuration\n placeholder?: string | Signal<string>\n inputType?: BasicInputType | Signal<BasicInputType>\n disabled?: boolean | Signal<boolean>\n readonly?: boolean | Signal<boolean>\n\n // Behavior\n onChange?: (text: string) => void\n onSubmit?: (text: string) => void\n onFocus?: () => void\n onBlur?: () => void\n\n // Accessibility\n accessibilityLabel?: string\n accessibilityHint?: string\n}\n\n/**\n * BasicInput theme configuration\n */\nexport interface BasicInputTheme {\n colors: {\n background: string\n border: string\n text: string\n placeholder: string\n focusBorder: string\n disabledBackground: string\n disabledText: string\n }\n spacing: {\n padding: number\n borderWidth: number\n }\n borderRadius: number\n fontSize: number\n fontFamily: string\n transition: string\n}\n\n/**\n * Default BasicInput theme\n */\nconst defaultBasicInputTheme: BasicInputTheme = {\n colors: {\n background: '#FFFFFF',\n border: '#D1D1D6',\n text: '#000000',\n placeholder: '#8E8E93',\n focusBorder: '#007AFF',\n disabledBackground: '#F2F2F7',\n disabledText: '#8E8E93',\n },\n spacing: {\n padding: 8,\n borderWidth: 1,\n },\n borderRadius: 4,\n fontSize: 16,\n fontFamily: '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',\n transition: 'border-color 0.2s ease, background-color 0.2s ease',\n}\n\n/**\n * BasicInput component implementation with CSS classes support\n */\nexport class BasicInputComponent extends ComponentWithCSSClasses implements ComponentInstance<BasicInputProps> {\n public readonly type = 'component' as const\n public readonly id: string\n public readonly props: BasicInputProps\n private theme: BasicInputTheme = defaultBasicInputTheme\n private inputElement: HTMLInputElement | null = null\n\n constructor(props: BasicInputProps) {\n super()\n this.props = props\n this.id = `basicinput-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`\n }\n\n private resolveValue<T>(value: T | Signal<T>): T {\n return isSignal(value) ? value() : value\n }\n\n private getText(): string {\n return this.resolveValue(this.props.text)\n }\n\n private setText(value: string): void {\n if (this.props.setText) {\n this.props.setText(value)\n }\n }\n\n private getPlaceholder(): string {\n return this.resolveValue(this.props.placeholder || '')\n }\n\n private getInputType(): BasicInputType {\n return this.resolveValue(this.props.inputType || 'text')\n }\n\n private isDisabled(): boolean {\n return this.resolveValue(this.props.disabled || false)\n }\n\n private isReadonly(): boolean {\n return this.resolveValue(this.props.readonly || false)\n }\n\n private handleInput = (e: Event): void => {\n const target = e.target as HTMLInputElement\n const value = target.value\n\n // Update reactive signal\n this.setText(value)\n\n // Call onChange callback\n if (this.props.onChange) {\n this.props.onChange(value)\n }\n }\n\n private handleKeyDown = (e: KeyboardEvent): void => {\n if (e.key === 'Enter' && this.props.onSubmit) {\n e.preventDefault()\n this.props.onSubmit(this.getText())\n }\n }\n\n private handleFocus = (): void => {\n if (this.props.onFocus) {\n this.props.onFocus()\n }\n\n // Update focus border color\n if (this.inputElement) {\n this.inputElement.style.borderColor = this.theme.colors.focusBorder\n }\n }\n\n private handleBlur = (): void => {\n if (this.props.onBlur) {\n this.props.onBlur()\n }\n\n // Reset border color\n if (this.inputElement) {\n this.inputElement.style.borderColor = this.theme.colors.border\n }\n }\n\n private getInputStyles(): Record<string, string> {\n const disabled = this.isDisabled()\n\n return {\n width: '100%',\n padding: `${this.theme.spacing.padding}px`,\n border: `${this.theme.spacing.borderWidth}px solid ${this.theme.colors.border}`,\n borderRadius: `${this.theme.borderRadius}px`,\n backgroundColor: disabled\n ? this.theme.colors.disabledBackground\n : this.theme.colors.background,\n color: disabled ? this.theme.colors.disabledText : this.theme.colors.text,\n fontSize: `${this.theme.fontSize}px`,\n fontFamily: this.theme.fontFamily,\n outline: 'none',\n transition: this.theme.transition,\n cursor: disabled ? 'not-allowed' : 'text',\n }\n }\n\n render(): DOMNode[] {\n const currentText = this.getText()\n const placeholder = this.getPlaceholder()\n const inputType = this.getInputType()\n const disabled = this.isDisabled()\n const readonly = this.isReadonly()\n\n // Process CSS classes for this component\n const baseClasses = ['tachui-basic-input']\n const classString = this.createClassString(this.props, baseClasses)\n \n const input = h('input', {\n id: this.id,\n className: classString,\n type: inputType,\n value: currentText,\n placeholder: placeholder,\n disabled: disabled,\n readonly: readonly,\n 'aria-label': this.props.accessibilityLabel,\n 'aria-describedby': this.props.accessibilityHint ? `${this.id}-hint` : undefined,\n style: this.getInputStyles(),\n oninput: this.handleInput,\n onkeydown: this.handleKeyDown,\n onfocus: this.handleFocus,\n onblur: this.handleBlur,\n })\n\n // Store reference to input element\n this.inputElement = input.element as HTMLInputElement\n\n // Set up reactive effects for dynamic updates\n createEffect(() => {\n if (this.inputElement && isSignal(this.props.text)) {\n const newValue = this.getText()\n if (this.inputElement.value !== newValue) {\n this.inputElement.value = newValue\n }\n }\n })\n\n createEffect(() => {\n if (\n this.inputElement &&\n (isSignal(this.props.placeholder) ||\n isSignal(this.props.inputType) ||\n isSignal(this.props.disabled))\n ) {\n // Update placeholder\n if (isSignal(this.props.placeholder)) {\n this.inputElement.placeholder = this.getPlaceholder()\n }\n\n // Update input type\n if (isSignal(this.props.inputType)) {\n this.inputElement.type = this.getInputType()\n }\n\n // Update disabled state\n if (isSignal(this.props.disabled)) {\n this.inputElement.disabled = this.isDisabled()\n }\n }\n })\n\n return [input]\n }\n}\n\n/**\n * Create a BasicInput component\n */\nexport function BasicInput(props: BasicInputProps): ModifiableComponent<BasicInputProps> & {\n modifier: ModifierBuilder<ModifiableComponent<BasicInputProps>>\n} {\n return withModifiers(new BasicInputComponent(props))\n}\n\n/**\n * BasicInput utility functions and presets\n */\nexport const BasicInputUtils = {\n /**\n * Create a search input\n */\n search(\n text: Signal<string>,\n setText: (value: string) => void,\n onSearch?: (query: string) => void\n ): BasicInputProps {\n return {\n text,\n setText,\n inputType: 'search',\n placeholder: 'Search...',\n onSubmit: onSearch,\n }\n },\n\n /**\n * Create an email input\n */\n email(text: Signal<string>, setText: (value: string) => void): BasicInputProps {\n return {\n text,\n setText,\n inputType: 'email',\n placeholder: 'Enter email address',\n }\n },\n\n /**\n * Create a password input\n */\n password(text: Signal<string>, setText: (value: string) => void): BasicInputProps {\n return {\n text,\n setText,\n inputType: 'password',\n placeholder: 'Enter password',\n }\n },\n\n /**\n * Create a phone number input\n */\n phone(text: Signal<string>, setText: (value: string) => void): BasicInputProps {\n return {\n text,\n setText,\n inputType: 'tel',\n placeholder: 'Enter phone number',\n }\n },\n}\n\n/**\n * BasicInput styles and theming\n */\nexport const BasicInputStyles = {\n theme: defaultBasicInputTheme,\n\n /**\n * Create a custom theme\n */\n createTheme(overrides: Partial<BasicInputTheme>): BasicInputTheme {\n return { ...defaultBasicInputTheme, ...overrides }\n },\n}\n"],"names":["defaultBasicInputTheme","BasicInputComponent","ComponentWithCSSClasses","props","__publicField","e","value","isSignal","disabled","currentText","placeholder","inputType","readonly","baseClasses","classString","input","h","createEffect","newValue","BasicInput","withModifiers","BasicInputUtils","text","setText","onSearch","BasicInputStyles","overrides"],"mappings":"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"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* BasicInput Component (Phase 1)
|
|
3
|
+
*
|
|
4
|
+
* Lightweight text input component for Core-only applications.
|
|
5
|
+
* Provides SwiftUI-style reactive binding without the complexity
|
|
6
|
+
* of the Forms plugin validation and formatting system.
|
|
7
|
+
*/
|
|
8
|
+
import type { ModifiableComponent, ModifierBuilder } from '../modifiers/types';
|
|
9
|
+
import type { Signal } from '../reactive/types';
|
|
10
|
+
import type { ComponentInstance, ComponentProps, DOMNode } from '../runtime/types';
|
|
11
|
+
import { ComponentWithCSSClasses, type CSSClassesProps } from '../css-classes';
|
|
12
|
+
/**
|
|
13
|
+
* BasicInput supported input types
|
|
14
|
+
*/
|
|
15
|
+
export type BasicInputType = 'text' | 'email' | 'password' | 'search' | 'tel' | 'url';
|
|
16
|
+
/**
|
|
17
|
+
* BasicInput component properties with CSS classes support
|
|
18
|
+
*/
|
|
19
|
+
export interface BasicInputProps extends ComponentProps, CSSClassesProps {
|
|
20
|
+
text: Signal<string>;
|
|
21
|
+
setText?: (value: string) => void;
|
|
22
|
+
placeholder?: string | Signal<string>;
|
|
23
|
+
inputType?: BasicInputType | Signal<BasicInputType>;
|
|
24
|
+
disabled?: boolean | Signal<boolean>;
|
|
25
|
+
readonly?: boolean | Signal<boolean>;
|
|
26
|
+
onChange?: (text: string) => void;
|
|
27
|
+
onSubmit?: (text: string) => void;
|
|
28
|
+
onFocus?: () => void;
|
|
29
|
+
onBlur?: () => void;
|
|
30
|
+
accessibilityLabel?: string;
|
|
31
|
+
accessibilityHint?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* BasicInput theme configuration
|
|
35
|
+
*/
|
|
36
|
+
export interface BasicInputTheme {
|
|
37
|
+
colors: {
|
|
38
|
+
background: string;
|
|
39
|
+
border: string;
|
|
40
|
+
text: string;
|
|
41
|
+
placeholder: string;
|
|
42
|
+
focusBorder: string;
|
|
43
|
+
disabledBackground: string;
|
|
44
|
+
disabledText: string;
|
|
45
|
+
};
|
|
46
|
+
spacing: {
|
|
47
|
+
padding: number;
|
|
48
|
+
borderWidth: number;
|
|
49
|
+
};
|
|
50
|
+
borderRadius: number;
|
|
51
|
+
fontSize: number;
|
|
52
|
+
fontFamily: string;
|
|
53
|
+
transition: string;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* BasicInput component implementation with CSS classes support
|
|
57
|
+
*/
|
|
58
|
+
export declare class BasicInputComponent extends ComponentWithCSSClasses implements ComponentInstance<BasicInputProps> {
|
|
59
|
+
readonly type: "component";
|
|
60
|
+
readonly id: string;
|
|
61
|
+
readonly props: BasicInputProps;
|
|
62
|
+
private theme;
|
|
63
|
+
private inputElement;
|
|
64
|
+
constructor(props: BasicInputProps);
|
|
65
|
+
private resolveValue;
|
|
66
|
+
private getText;
|
|
67
|
+
private setText;
|
|
68
|
+
private getPlaceholder;
|
|
69
|
+
private getInputType;
|
|
70
|
+
private isDisabled;
|
|
71
|
+
private isReadonly;
|
|
72
|
+
private handleInput;
|
|
73
|
+
private handleKeyDown;
|
|
74
|
+
private handleFocus;
|
|
75
|
+
private handleBlur;
|
|
76
|
+
private getInputStyles;
|
|
77
|
+
render(): DOMNode[];
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Create a BasicInput component
|
|
81
|
+
*/
|
|
82
|
+
export declare function BasicInput(props: BasicInputProps): ModifiableComponent<BasicInputProps> & {
|
|
83
|
+
modifier: ModifierBuilder<ModifiableComponent<BasicInputProps>>;
|
|
84
|
+
};
|
|
85
|
+
/**
|
|
86
|
+
* BasicInput utility functions and presets
|
|
87
|
+
*/
|
|
88
|
+
export declare const BasicInputUtils: {
|
|
89
|
+
/**
|
|
90
|
+
* Create a search input
|
|
91
|
+
*/
|
|
92
|
+
search(text: Signal<string>, setText: (value: string) => void, onSearch?: (query: string) => void): BasicInputProps;
|
|
93
|
+
/**
|
|
94
|
+
* Create an email input
|
|
95
|
+
*/
|
|
96
|
+
email(text: Signal<string>, setText: (value: string) => void): BasicInputProps;
|
|
97
|
+
/**
|
|
98
|
+
* Create a password input
|
|
99
|
+
*/
|
|
100
|
+
password(text: Signal<string>, setText: (value: string) => void): BasicInputProps;
|
|
101
|
+
/**
|
|
102
|
+
* Create a phone number input
|
|
103
|
+
*/
|
|
104
|
+
phone(text: Signal<string>, setText: (value: string) => void): BasicInputProps;
|
|
105
|
+
};
|
|
106
|
+
/**
|
|
107
|
+
* BasicInput styles and theming
|
|
108
|
+
*/
|
|
109
|
+
export declare const BasicInputStyles: {
|
|
110
|
+
theme: BasicInputTheme;
|
|
111
|
+
/**
|
|
112
|
+
* Create a custom theme
|
|
113
|
+
*/
|
|
114
|
+
createTheme(overrides: Partial<BasicInputTheme>): BasicInputTheme;
|
|
115
|
+
};
|
|
116
|
+
//# sourceMappingURL=BasicInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BasicInput.d.ts","sourceRoot":"","sources":["../../src/components/BasicInput.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import "../reactive/cleanup.js";
|
|
2
|
+
import "../reactive/unified-scheduler.js";
|
|
3
|
+
import { createEffect as a } from "../reactive/effect.js";
|
|
4
|
+
import { isSignal as r } from "../reactive/signal.js";
|
|
5
|
+
import "../reactive/scheduler.js";
|
|
6
|
+
import "../reactive/theme.js";
|
|
7
|
+
import "../runtime/component.js";
|
|
8
|
+
import "../runtime/context.js";
|
|
9
|
+
import "../runtime/dev-tools.js";
|
|
10
|
+
import "../runtime/dom-bridge.js";
|
|
11
|
+
import "../runtime/error-boundary.js";
|
|
12
|
+
import "../runtime/error-reporting.js";
|
|
13
|
+
import "../runtime/performance.js";
|
|
14
|
+
import { h as m } from "../runtime/renderer.js";
|
|
15
|
+
import "../runtime/element-override.js";
|
|
16
|
+
import "../runtime/semantic-role-manager.js";
|
|
17
|
+
import "../runtime/development-warnings.js";
|
|
18
|
+
import { withModifiers as b } from "./wrapper.js";
|
|
19
|
+
import "../css-classes/css-class-manager.js";
|
|
20
|
+
import { ComponentWithCSSClasses as f } from "../css-classes/component-base.js";
|
|
21
|
+
var g = Object.defineProperty, y = (e, t, s) => t in e ? g(e, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : e[t] = s, i = (e, t, s) => y(e, typeof t != "symbol" ? t + "" : t, s);
|
|
22
|
+
const n = {
|
|
23
|
+
colors: {
|
|
24
|
+
background: "#FFFFFF",
|
|
25
|
+
border: "#D1D1D6",
|
|
26
|
+
text: "#000000",
|
|
27
|
+
placeholder: "#8E8E93",
|
|
28
|
+
focusBorder: "#007AFF",
|
|
29
|
+
disabledBackground: "#F2F2F7",
|
|
30
|
+
disabledText: "#8E8E93"
|
|
31
|
+
},
|
|
32
|
+
spacing: {
|
|
33
|
+
padding: 8,
|
|
34
|
+
borderWidth: 1
|
|
35
|
+
},
|
|
36
|
+
borderRadius: 4,
|
|
37
|
+
fontSize: 16,
|
|
38
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
|
|
39
|
+
transition: "border-color 0.2s ease, background-color 0.2s ease"
|
|
40
|
+
};
|
|
41
|
+
class T extends f {
|
|
42
|
+
constructor(t) {
|
|
43
|
+
super(), i(this, "type", "component"), i(this, "id"), i(this, "props"), i(this, "theme", n), i(this, "inputElement", null), i(this, "handleInput", (s) => {
|
|
44
|
+
const o = s.target.value;
|
|
45
|
+
this.setText(o), this.props.onChange && this.props.onChange(o);
|
|
46
|
+
}), i(this, "handleKeyDown", (s) => {
|
|
47
|
+
s.key === "Enter" && this.props.onSubmit && (s.preventDefault(), this.props.onSubmit(this.getText()));
|
|
48
|
+
}), i(this, "handleFocus", () => {
|
|
49
|
+
this.props.onFocus && this.props.onFocus(), this.inputElement && (this.inputElement.style.borderColor = this.theme.colors.focusBorder);
|
|
50
|
+
}), i(this, "handleBlur", () => {
|
|
51
|
+
this.props.onBlur && this.props.onBlur(), this.inputElement && (this.inputElement.style.borderColor = this.theme.colors.border);
|
|
52
|
+
}), this.props = t, this.id = `basicinput-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
|
|
53
|
+
}
|
|
54
|
+
resolveValue(t) {
|
|
55
|
+
return r(t) ? t() : t;
|
|
56
|
+
}
|
|
57
|
+
getText() {
|
|
58
|
+
return this.resolveValue(this.props.text);
|
|
59
|
+
}
|
|
60
|
+
setText(t) {
|
|
61
|
+
this.props.setText && this.props.setText(t);
|
|
62
|
+
}
|
|
63
|
+
getPlaceholder() {
|
|
64
|
+
return this.resolveValue(this.props.placeholder || "");
|
|
65
|
+
}
|
|
66
|
+
getInputType() {
|
|
67
|
+
return this.resolveValue(this.props.inputType || "text");
|
|
68
|
+
}
|
|
69
|
+
isDisabled() {
|
|
70
|
+
return this.resolveValue(this.props.disabled || !1);
|
|
71
|
+
}
|
|
72
|
+
isReadonly() {
|
|
73
|
+
return this.resolveValue(this.props.readonly || !1);
|
|
74
|
+
}
|
|
75
|
+
getInputStyles() {
|
|
76
|
+
const t = this.isDisabled();
|
|
77
|
+
return {
|
|
78
|
+
width: "100%",
|
|
79
|
+
padding: `${this.theme.spacing.padding}px`,
|
|
80
|
+
border: `${this.theme.spacing.borderWidth}px solid ${this.theme.colors.border}`,
|
|
81
|
+
borderRadius: `${this.theme.borderRadius}px`,
|
|
82
|
+
backgroundColor: t ? this.theme.colors.disabledBackground : this.theme.colors.background,
|
|
83
|
+
color: t ? this.theme.colors.disabledText : this.theme.colors.text,
|
|
84
|
+
fontSize: `${this.theme.fontSize}px`,
|
|
85
|
+
fontFamily: this.theme.fontFamily,
|
|
86
|
+
outline: "none",
|
|
87
|
+
transition: this.theme.transition,
|
|
88
|
+
cursor: t ? "not-allowed" : "text"
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
render() {
|
|
92
|
+
const t = this.getText(), s = this.getPlaceholder(), p = this.getInputType(), o = this.isDisabled(), d = this.isReadonly(), u = ["tachui-basic-input"], c = this.createClassString(this.props, u), l = m("input", {
|
|
93
|
+
id: this.id,
|
|
94
|
+
className: c,
|
|
95
|
+
type: p,
|
|
96
|
+
value: t,
|
|
97
|
+
placeholder: s,
|
|
98
|
+
disabled: o,
|
|
99
|
+
readonly: d,
|
|
100
|
+
"aria-label": this.props.accessibilityLabel,
|
|
101
|
+
"aria-describedby": this.props.accessibilityHint ? `${this.id}-hint` : void 0,
|
|
102
|
+
style: this.getInputStyles(),
|
|
103
|
+
oninput: this.handleInput,
|
|
104
|
+
onkeydown: this.handleKeyDown,
|
|
105
|
+
onfocus: this.handleFocus,
|
|
106
|
+
onblur: this.handleBlur
|
|
107
|
+
});
|
|
108
|
+
return this.inputElement = l.element, a(() => {
|
|
109
|
+
if (this.inputElement && r(this.props.text)) {
|
|
110
|
+
const h = this.getText();
|
|
111
|
+
this.inputElement.value !== h && (this.inputElement.value = h);
|
|
112
|
+
}
|
|
113
|
+
}), a(() => {
|
|
114
|
+
this.inputElement && (r(this.props.placeholder) || r(this.props.inputType) || r(this.props.disabled)) && (r(this.props.placeholder) && (this.inputElement.placeholder = this.getPlaceholder()), r(this.props.inputType) && (this.inputElement.type = this.getInputType()), r(this.props.disabled) && (this.inputElement.disabled = this.isDisabled()));
|
|
115
|
+
}), [l];
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
function N(e) {
|
|
119
|
+
return b(new T(e));
|
|
120
|
+
}
|
|
121
|
+
const U = {
|
|
122
|
+
/**
|
|
123
|
+
* Create a search input
|
|
124
|
+
*/
|
|
125
|
+
search(e, t, s) {
|
|
126
|
+
return {
|
|
127
|
+
text: e,
|
|
128
|
+
setText: t,
|
|
129
|
+
inputType: "search",
|
|
130
|
+
placeholder: "Search...",
|
|
131
|
+
onSubmit: s
|
|
132
|
+
};
|
|
133
|
+
},
|
|
134
|
+
/**
|
|
135
|
+
* Create an email input
|
|
136
|
+
*/
|
|
137
|
+
email(e, t) {
|
|
138
|
+
return {
|
|
139
|
+
text: e,
|
|
140
|
+
setText: t,
|
|
141
|
+
inputType: "email",
|
|
142
|
+
placeholder: "Enter email address"
|
|
143
|
+
};
|
|
144
|
+
},
|
|
145
|
+
/**
|
|
146
|
+
* Create a password input
|
|
147
|
+
*/
|
|
148
|
+
password(e, t) {
|
|
149
|
+
return {
|
|
150
|
+
text: e,
|
|
151
|
+
setText: t,
|
|
152
|
+
inputType: "password",
|
|
153
|
+
placeholder: "Enter password"
|
|
154
|
+
};
|
|
155
|
+
},
|
|
156
|
+
/**
|
|
157
|
+
* Create a phone number input
|
|
158
|
+
*/
|
|
159
|
+
phone(e, t) {
|
|
160
|
+
return {
|
|
161
|
+
text: e,
|
|
162
|
+
setText: t,
|
|
163
|
+
inputType: "tel",
|
|
164
|
+
placeholder: "Enter phone number"
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
}, A = {
|
|
168
|
+
theme: n,
|
|
169
|
+
/**
|
|
170
|
+
* Create a custom theme
|
|
171
|
+
*/
|
|
172
|
+
createTheme(e) {
|
|
173
|
+
return { ...n, ...e };
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
export {
|
|
177
|
+
N as BasicInput,
|
|
178
|
+
T as BasicInputComponent,
|
|
179
|
+
A as BasicInputStyles,
|
|
180
|
+
U as BasicInputUtils
|
|
181
|
+
};
|
|
182
|
+
//# sourceMappingURL=BasicInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BasicInput.js","sources":["../../src/components/BasicInput.ts"],"sourcesContent":["/**\n * BasicInput Component (Phase 1)\n *\n * Lightweight text input component for Core-only applications.\n * Provides SwiftUI-style reactive binding without the complexity\n * of the Forms plugin validation and formatting system.\n */\n\nimport type { ModifiableComponent, ModifierBuilder } from '../modifiers/types'\nimport { createEffect, isSignal } from '../reactive'\nimport type { Signal } from '../reactive/types'\nimport { h } from '../runtime'\nimport type { ComponentInstance, ComponentProps, DOMNode } from '../runtime/types'\nimport { withModifiers } from './wrapper'\nimport {\n ComponentWithCSSClasses,\n type CSSClassesProps\n} from '../css-classes'\n\n/**\n * BasicInput supported input types\n */\nexport type BasicInputType = 'text' | 'email' | 'password' | 'search' | 'tel' | 'url'\n\n/**\n * BasicInput component properties with CSS classes support\n */\nexport interface BasicInputProps extends ComponentProps, CSSClassesProps {\n // Core reactive binding\n text: Signal<string>\n setText?: (value: string) => void\n\n // Input configuration\n placeholder?: string | Signal<string>\n inputType?: BasicInputType | Signal<BasicInputType>\n disabled?: boolean | Signal<boolean>\n readonly?: boolean | Signal<boolean>\n\n // Behavior\n onChange?: (text: string) => void\n onSubmit?: (text: string) => void\n onFocus?: () => void\n onBlur?: () => void\n\n // Accessibility\n accessibilityLabel?: string\n accessibilityHint?: string\n}\n\n/**\n * BasicInput theme configuration\n */\nexport interface BasicInputTheme {\n colors: {\n background: string\n border: string\n text: string\n placeholder: string\n focusBorder: string\n disabledBackground: string\n disabledText: string\n }\n spacing: {\n padding: number\n borderWidth: number\n }\n borderRadius: number\n fontSize: number\n fontFamily: string\n transition: string\n}\n\n/**\n * Default BasicInput theme\n */\nconst defaultBasicInputTheme: BasicInputTheme = {\n colors: {\n background: '#FFFFFF',\n border: '#D1D1D6',\n text: '#000000',\n placeholder: '#8E8E93',\n focusBorder: '#007AFF',\n disabledBackground: '#F2F2F7',\n disabledText: '#8E8E93',\n },\n spacing: {\n padding: 8,\n borderWidth: 1,\n },\n borderRadius: 4,\n fontSize: 16,\n fontFamily: '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',\n transition: 'border-color 0.2s ease, background-color 0.2s ease',\n}\n\n/**\n * BasicInput component implementation with CSS classes support\n */\nexport class BasicInputComponent extends ComponentWithCSSClasses implements ComponentInstance<BasicInputProps> {\n public readonly type = 'component' as const\n public readonly id: string\n public readonly props: BasicInputProps\n private theme: BasicInputTheme = defaultBasicInputTheme\n private inputElement: HTMLInputElement | null = null\n\n constructor(props: BasicInputProps) {\n super()\n this.props = props\n this.id = `basicinput-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`\n }\n\n private resolveValue<T>(value: T | Signal<T>): T {\n return isSignal(value) ? value() : value\n }\n\n private getText(): string {\n return this.resolveValue(this.props.text)\n }\n\n private setText(value: string): void {\n if (this.props.setText) {\n this.props.setText(value)\n }\n }\n\n private getPlaceholder(): string {\n return this.resolveValue(this.props.placeholder || '')\n }\n\n private getInputType(): BasicInputType {\n return this.resolveValue(this.props.inputType || 'text')\n }\n\n private isDisabled(): boolean {\n return this.resolveValue(this.props.disabled || false)\n }\n\n private isReadonly(): boolean {\n return this.resolveValue(this.props.readonly || false)\n }\n\n private handleInput = (e: Event): void => {\n const target = e.target as HTMLInputElement\n const value = target.value\n\n // Update reactive signal\n this.setText(value)\n\n // Call onChange callback\n if (this.props.onChange) {\n this.props.onChange(value)\n }\n }\n\n private handleKeyDown = (e: KeyboardEvent): void => {\n if (e.key === 'Enter' && this.props.onSubmit) {\n e.preventDefault()\n this.props.onSubmit(this.getText())\n }\n }\n\n private handleFocus = (): void => {\n if (this.props.onFocus) {\n this.props.onFocus()\n }\n\n // Update focus border color\n if (this.inputElement) {\n this.inputElement.style.borderColor = this.theme.colors.focusBorder\n }\n }\n\n private handleBlur = (): void => {\n if (this.props.onBlur) {\n this.props.onBlur()\n }\n\n // Reset border color\n if (this.inputElement) {\n this.inputElement.style.borderColor = this.theme.colors.border\n }\n }\n\n private getInputStyles(): Record<string, string> {\n const disabled = this.isDisabled()\n\n return {\n width: '100%',\n padding: `${this.theme.spacing.padding}px`,\n border: `${this.theme.spacing.borderWidth}px solid ${this.theme.colors.border}`,\n borderRadius: `${this.theme.borderRadius}px`,\n backgroundColor: disabled\n ? this.theme.colors.disabledBackground\n : this.theme.colors.background,\n color: disabled ? this.theme.colors.disabledText : this.theme.colors.text,\n fontSize: `${this.theme.fontSize}px`,\n fontFamily: this.theme.fontFamily,\n outline: 'none',\n transition: this.theme.transition,\n cursor: disabled ? 'not-allowed' : 'text',\n }\n }\n\n render(): DOMNode[] {\n const currentText = this.getText()\n const placeholder = this.getPlaceholder()\n const inputType = this.getInputType()\n const disabled = this.isDisabled()\n const readonly = this.isReadonly()\n\n // Process CSS classes for this component\n const baseClasses = ['tachui-basic-input']\n const classString = this.createClassString(this.props, baseClasses)\n \n const input = h('input', {\n id: this.id,\n className: classString,\n type: inputType,\n value: currentText,\n placeholder: placeholder,\n disabled: disabled,\n readonly: readonly,\n 'aria-label': this.props.accessibilityLabel,\n 'aria-describedby': this.props.accessibilityHint ? `${this.id}-hint` : undefined,\n style: this.getInputStyles(),\n oninput: this.handleInput,\n onkeydown: this.handleKeyDown,\n onfocus: this.handleFocus,\n onblur: this.handleBlur,\n })\n\n // Store reference to input element\n this.inputElement = input.element as HTMLInputElement\n\n // Set up reactive effects for dynamic updates\n createEffect(() => {\n if (this.inputElement && isSignal(this.props.text)) {\n const newValue = this.getText()\n if (this.inputElement.value !== newValue) {\n this.inputElement.value = newValue\n }\n }\n })\n\n createEffect(() => {\n if (\n this.inputElement &&\n (isSignal(this.props.placeholder) ||\n isSignal(this.props.inputType) ||\n isSignal(this.props.disabled))\n ) {\n // Update placeholder\n if (isSignal(this.props.placeholder)) {\n this.inputElement.placeholder = this.getPlaceholder()\n }\n\n // Update input type\n if (isSignal(this.props.inputType)) {\n this.inputElement.type = this.getInputType()\n }\n\n // Update disabled state\n if (isSignal(this.props.disabled)) {\n this.inputElement.disabled = this.isDisabled()\n }\n }\n })\n\n return [input]\n }\n}\n\n/**\n * Create a BasicInput component\n */\nexport function BasicInput(props: BasicInputProps): ModifiableComponent<BasicInputProps> & {\n modifier: ModifierBuilder<ModifiableComponent<BasicInputProps>>\n} {\n return withModifiers(new BasicInputComponent(props))\n}\n\n/**\n * BasicInput utility functions and presets\n */\nexport const BasicInputUtils = {\n /**\n * Create a search input\n */\n search(\n text: Signal<string>,\n setText: (value: string) => void,\n onSearch?: (query: string) => void\n ): BasicInputProps {\n return {\n text,\n setText,\n inputType: 'search',\n placeholder: 'Search...',\n onSubmit: onSearch,\n }\n },\n\n /**\n * Create an email input\n */\n email(text: Signal<string>, setText: (value: string) => void): BasicInputProps {\n return {\n text,\n setText,\n inputType: 'email',\n placeholder: 'Enter email address',\n }\n },\n\n /**\n * Create a password input\n */\n password(text: Signal<string>, setText: (value: string) => void): BasicInputProps {\n return {\n text,\n setText,\n inputType: 'password',\n placeholder: 'Enter password',\n }\n },\n\n /**\n * Create a phone number input\n */\n phone(text: Signal<string>, setText: (value: string) => void): BasicInputProps {\n return {\n text,\n setText,\n inputType: 'tel',\n placeholder: 'Enter phone number',\n }\n },\n}\n\n/**\n * BasicInput styles and theming\n */\nexport const BasicInputStyles = {\n theme: defaultBasicInputTheme,\n\n /**\n * Create a custom theme\n */\n createTheme(overrides: Partial<BasicInputTheme>): BasicInputTheme {\n return { ...defaultBasicInputTheme, ...overrides }\n },\n}\n"],"names":["defaultBasicInputTheme","BasicInputComponent","ComponentWithCSSClasses","props","__publicField","e","value","isSignal","disabled","currentText","placeholder","inputType","readonly","baseClasses","classString","input","h","createEffect","newValue","BasicInput","withModifiers","BasicInputUtils","text","setText","onSearch","BasicInputStyles","overrides"],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../reactive/cleanup.cjs");require("../reactive/unified-scheduler.cjs");const $=require("../reactive/effect.cjs"),u=require("../reactive/signal.cjs");require("../reactive/scheduler.cjs");require("../reactive/theme.cjs");const L=require("../runtime/renderer.cjs"),z=require("./wrapper.cjs"),O=require("../lifecycle/hooks.cjs"),F=require("../assets/ColorAsset.cjs"),k=require("../concatenation/concatenated-component.cjs");require("../css-classes/css-class-manager.cjs");const V=require("../css-classes/component-base.cjs");var H=Object.defineProperty,I=(i,e,t)=>e in i?H(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,p=(i,e,t)=>I(i,typeof e!="symbol"?e+"":e,t);const P={colors:{primary:"#007AFF",secondary:"#5856D6",destructive:"#FF3B30",background:"#F2F2F7",surface:"#FFFFFF",onPrimary:"#FFFFFF",onSecondary:"#FFFFFF",onSurface:"#000000",border:"#C7C7CC",disabled:"#8E8E93"},spacing:{small:8,medium:12,large:16},borderRadius:{small:6,medium:8,large:12},typography:{small:{size:14,weight:"500"},medium:{size:16,weight:"500"},large:{size:18,weight:"600"}}};class R extends V.ComponentWithCSSClasses{constructor(e,t=P){super(),this.props=e,p(this,"type","component"),p(this,"id"),p(this,"mounted",!1),p(this,"cleanup",[]),p(this,"stateSignal"),p(this,"setState"),p(this,"theme"),this.id=`button-${Date.now()}-${Math.random().toString(36).substr(2,9)}`,this.theme=t;const[s,o]=u.createSignal("normal");this.stateSignal=s,this.setState=o,this.setupDOMEventListeners()}setupDOMEventListeners(){O.useLifecycle(this,{onDOMReady:(e,t)=>{t instanceof HTMLButtonElement&&(this.attachInteractionEvents(t),this.setupReactiveStyles(t))}})}setupReactiveStyles(e){const t=$.createEffect(()=>{this.stateSignal(),this.isEnabled(),this.isLoading();const{tint:s,backgroundColor:o,foregroundColor:r}=this.props;s&&u.isSignal(s)?s():s instanceof F.ColorAsset&&s.resolve(),o&&u.isSignal(o)?o():o instanceof F.ColorAsset&&o.resolve(),r&&u.isSignal(r)?r():r instanceof F.ColorAsset&&r.resolve();const n=this.getButtonStyles();this.applyStylesToElement(e,n)});this.cleanup.push(()=>{t&&typeof t.dispose=="function"&&t.dispose()})}applyStylesToElement(e,t){Object.entries(t).forEach(([s,o])=>{const r=this.camelToKebabCase(s);if(typeof o=="string"||typeof o=="number"){const n=e.style.getPropertyValue(r);r==="transform"?e.style.setProperty(r,String(o)):n&&n!==""&&n!=="inherit"||e.style.setProperty(r,String(o))}})}camelToKebabCase(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}resolveColorValue(e){if(e){if(typeof e=="string")return e;if(u.isSignal(e))return e();if(e instanceof F.ColorAsset)return e.resolve()}}attachInteractionEvents(e){const t=()=>{const a=this.isEnabled();return typeof a=="boolean"?a:a()};let s=null;const o=a=>{t()&&a.button===0&&(this.setState("pressed"),s=()=>{this.stateSignal()==="pressed"&&this.setState("normal"),s&&(document.removeEventListener("mouseup",s),s=null)},document.addEventListener("mouseup",s))},r=()=>{t()&&this.stateSignal()==="pressed"&&(this.setState("normal"),s&&(document.removeEventListener("mouseup",s),s=null))},n=()=>{t()&&(this.setState("normal"),s&&(document.removeEventListener("mouseup",s),s=null))},d=()=>{t()&&this.stateSignal()!=="pressed"&&this.setState("focused")},v=()=>{t()&&this.stateSignal()==="focused"&&this.setState("normal")},b=a=>{t()&&(a.key===" "||a.key==="Enter")&&(a.preventDefault(),this.setState("pressed"))},S=a=>{t()&&(a.key===" "||a.key==="Enter")&&(a.preventDefault(),this.setState("normal"),this.props.action?.())};e.addEventListener("mousedown",o),e.addEventListener("mouseup",r),e.addEventListener("mouseleave",n),e.addEventListener("focus",d),e.addEventListener("blur",v),e.addEventListener("keydown",b),e.addEventListener("keyup",S),this.cleanup.push(()=>{e.removeEventListener("mousedown",o),e.removeEventListener("mouseup",r),e.removeEventListener("mouseleave",n),e.removeEventListener("focus",d),e.removeEventListener("blur",v),e.removeEventListener("keydown",b),e.removeEventListener("keyup",S),s&&(document.removeEventListener("mouseup",s),s=null)})}isEnabled(){const{isEnabled:e}=this.props;return e===void 0?!0:typeof e=="boolean"||u.isSignal(e)?e:!0}render(){const e=this.isEnabled(),t=[];this.props.systemImage&&t.push(L.h("span",{class:"button-icon",style:{marginRight:"8px",fontSize:"1.2em"}},L.text(this.props.systemImage))),t.push(L.h("span",{class:"button-title"},L.text(this.props.title||"")));const s=["tachui-button"];return[{type:"element",tag:"button",props:{className:this.createClassString(this.props,s),type:"button",disabled:typeof e=="boolean"?!e:()=>!e(),onClick:this.props.action?()=>{try{this.props.action?.()}catch(n){console.error("Button action error:",n)}}:void 0,...this.props.debugLabel&&{debugLabel:this.props.debugLabel}},children:t,componentMetadata:{id:this.id,type:"Button"}}]}isLoading(){const{isLoading:e}=this.props;return e===void 0?!1:typeof e=="boolean"?e:u.isSignal(e)?e():!1}hasColorModifiers(){let e=this.modifiers;return!e&&this.modifierBuilder&&(e=this.modifierBuilder.modifiers),!e&&this.modifiableComponent&&(e=this.modifiableComponent.modifiers),!e||!Array.isArray(e)?!1:e.some(t=>t.type==="appearance"||t.constructor?.name==="AppearanceModifier"?t.properties&&(t.properties.foregroundColor!==void 0||t.properties.color!==void 0):t.properties?["foregroundColor","color","textColor"].some(o=>t.properties[o]!==void 0):!1)}hasTypographyModifiers(){let e=this.modifiers;return!e&&this.modifierBuilder&&(e=this.modifierBuilder.modifiers),!e&&this.modifiableComponent&&(e=this.modifiableComponent.modifiers),!e||!Array.isArray(e)?!1:e.some(s=>s.type==="typography"||s.constructor?.name==="TypographyModifier"?s.properties&&(s.properties.transform!==void 0||s.properties.textTransform!==void 0):!1)}getButtonStyles(){const{variant:e,size:t,role:s="none",tint:o,backgroundColor:r,foregroundColor:n}=this.props,d=this.stateSignal(),v=this.isLoading(),b=this.isEnabled(),S=this.hasColorModifiers(),a=this.hasTypographyModifiers(),m={...!S&&!n&&!e&&{color:"inherit"},...!a&&{fontStyle:"inherit",lineHeight:"inherit",textTransform:"inherit",textDecoration:"inherit",textIndent:"inherit",textShadow:"inherit",wordSpacing:"inherit",textOrientation:"inherit",writingMode:"inherit",direction:"inherit"}};if(t){const y=this.theme.spacing[t]||this.theme.spacing.medium,D=this.theme.borderRadius[t]||this.theme.borderRadius.medium,A=this.theme.typography[t]||this.theme.typography.medium,_={small:"32px",medium:"40px",large:"48px"};m.padding=`${y}px ${y*2}px`,m.borderRadius=`${D}px`,m.fontSize=`${A.size}px`,m.fontWeight=A.weight,m.minHeight=_[t]}let c="transparent",h="transparent",B="1px",g;const q=this.resolveColorValue(o),C=this.resolveColorValue(r),E=this.resolveColorValue(n);if(e){const y=q||this.theme.colors.primary;switch(e){case"filled":s==="destructive"?c=this.theme.colors.destructive:s==="cancel"?c=this.theme.colors.secondary:c=y,g=this.theme.colors.onPrimary;break;case"outlined":h=s==="destructive"?this.theme.colors.destructive:y,g=s==="destructive"?this.theme.colors.destructive:y;break;case"bordered":c=this.theme.colors.background,h=this.theme.colors.border;break;case"borderedProminent":c=this.theme.colors.surface,h=this.theme.colors.primary,B="2px";break}}C&&(c=C),E&&(g=E);let w="1",x="auto",M,T="none";b?v?(w="0.6",x="none"):d==="pressed"?(c=this.darkenColor(c,.1),h=this.darkenColor(h,.1),M="scale(0.95)"):d==="focused"&&(T="0 0 0 3px #007AFF40"):(c=this.theme.colors.disabled,h=this.theme.colors.disabled,g=this.theme.colors.disabled,w="0.6",x="none");const l={...m};return e&&(l.backgroundColor=c,l.borderColor=h,l.borderWidth=B,g!==void 0&&(l.color=g)),C&&(l.backgroundColor=C),E&&(l.color=E),l.cursor=b?"pointer":"not-allowed",l.opacity=w,l.pointerEvents=x,l.transform=M!==void 0?M:"none",l.boxShadow=T,l.transition="all 0.2s ease",l}async handlePress(){if(!(!this.isEnabled()||this.isLoading())&&(this.triggerHapticFeedback(),this.setState("pressed"),setTimeout(()=>{this.isEnabled()&&this.setState("normal")},150),this.props.action))try{const e=this.props.action();e&&typeof e.then=="function"&&await e}catch(e){console.error("Button action failed:",e)}}triggerHapticFeedback(){if(this.props.hapticFeedback!==!1&&typeof window<"u"&&"navigator"in window){const e=window.navigator;e.vibrate&&e.vibrate(10)}}darkenColor(e,t){if(e==="transparent")return e;if(e.startsWith("#")){const s=e.slice(1),o=parseInt(s,16),r=Math.max(0,Math.floor((o>>16)*(1-t))),n=Math.max(0,Math.floor((o>>8&255)*(1-t))),d=Math.max(0,Math.floor((o&255)*(1-t)));return`#${(r<<16|n<<8|d).toString(16).padStart(6,"0")}`}return e}concat(e){const t=this.toSegment(),s=e.toSegment(),o={totalSegments:e instanceof k.ConcatenatedComponent?e.segments.length+1:2,accessibilityRole:e instanceof k.ConcatenatedComponent?this.mergeAccessibilityRoles("composite",e.metadata.accessibilityRole):this.determineAccessibilityRole(e),semanticStructure:"inline"};return new k.ConcatenatedComponent([t,s],o)}toSegment(){return{id:this.id,component:this,modifiers:[],render:()=>{const e=this.render();return Array.isArray(e)?e[0]:e}}}isConcatenatable(){return!0}determineAccessibilityRole(e){switch(e.constructor.name){case"EnhancedText":return"composite";case"EnhancedImage":return"composite";case"EnhancedButton":case"EnhancedLink":return"composite";default:return"composite"}}mergeAccessibilityRoles(e,t){return"composite"}}function f(i,e,t={}){const s={...t,title:i,...e&&{action:e}},o=new R(s);return z.withModifiers(o)}const W={Filled:(i,e,t={})=>f(i,e,{...t,variant:"filled"}),Outlined:(i,e,t={})=>f(i,e,{...t,variant:"outlined"}),Plain:(i,e,t={})=>f(i,e,{...t,variant:"plain"}),Bordered:(i,e,t={})=>f(i,e,{...t,variant:"bordered"}),Destructive:(i,e,t={})=>f(i,e,{...t,role:"destructive"}),Cancel:(i,e,t={})=>f(i,e,{...t,role:"cancel"})},K=`
|
|
2
|
+
@keyframes spin {
|
|
3
|
+
from { transform: rotate(0deg); }
|
|
4
|
+
to { transform: rotate(360deg); }
|
|
5
|
+
}
|
|
6
|
+
`;if(typeof document<"u"){const i=document.createElement("style");i.textContent=K,document.head.appendChild(i)}exports.Button=f;exports.ButtonStyles=W;exports.EnhancedButton=R;exports.defaultButtonTheme=P;
|
|
7
|
+
//# sourceMappingURL=Button.cjs.map
|