@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,385 @@
|
|
|
1
|
+
import { LinearGradient as i, AngularGradient as P, RadialGradient as v } from "./index.js";
|
|
2
|
+
import { gradientToCSS as f } from "./css-generator.js";
|
|
3
|
+
const e = {
|
|
4
|
+
/**
|
|
5
|
+
* Parse hex color to RGB components
|
|
6
|
+
*/
|
|
7
|
+
hexToRgb: (t) => {
|
|
8
|
+
const o = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);
|
|
9
|
+
return o ? {
|
|
10
|
+
r: parseInt(o[1], 16),
|
|
11
|
+
g: parseInt(o[2], 16),
|
|
12
|
+
b: parseInt(o[3], 16)
|
|
13
|
+
} : null;
|
|
14
|
+
},
|
|
15
|
+
/**
|
|
16
|
+
* Convert RGB to hex
|
|
17
|
+
*/
|
|
18
|
+
rgbToHex: (t, o, r) => "#" + ((1 << 24) + (t << 16) + (o << 8) + r).toString(16).slice(1),
|
|
19
|
+
/**
|
|
20
|
+
* Add transparency to a color
|
|
21
|
+
*/
|
|
22
|
+
withAlpha: (t, o) => {
|
|
23
|
+
if (t.startsWith("#")) {
|
|
24
|
+
const r = e.hexToRgb(t);
|
|
25
|
+
if (r)
|
|
26
|
+
return `rgba(${r.r}, ${r.g}, ${r.b}, ${o})`;
|
|
27
|
+
}
|
|
28
|
+
return t.startsWith("rgb(") ? t.replace("rgb(", "rgba(").replace(")", `, ${o})`) : t.startsWith("rgba(") ? t.replace(/,\s*[\d.]+\)$/, `, ${o})`) : t;
|
|
29
|
+
},
|
|
30
|
+
/**
|
|
31
|
+
* Blend two colors
|
|
32
|
+
*/
|
|
33
|
+
blendColors: (t, o, r = 0.5) => {
|
|
34
|
+
const n = e.hexToRgb(t), s = e.hexToRgb(o);
|
|
35
|
+
if (!n || !s) return t;
|
|
36
|
+
const l = Math.round(n.r * (1 - r) + s.r * r), p = Math.round(n.g * (1 - r) + s.g * r), u = Math.round(n.b * (1 - r) + s.b * r);
|
|
37
|
+
return e.rgbToHex(l, p, u);
|
|
38
|
+
},
|
|
39
|
+
/**
|
|
40
|
+
* Generate color variations (lighter/darker)
|
|
41
|
+
*/
|
|
42
|
+
lighten: (t, o = 0.2) => e.blendColors(t, "#ffffff", o),
|
|
43
|
+
darken: (t, o = 0.2) => e.blendColors(t, "#000000", o),
|
|
44
|
+
/**
|
|
45
|
+
* Generate complementary color
|
|
46
|
+
*/
|
|
47
|
+
complement: (t) => {
|
|
48
|
+
const o = e.hexToRgb(t);
|
|
49
|
+
return o ? e.rgbToHex(255 - o.r, 255 - o.g, 255 - o.b) : t;
|
|
50
|
+
},
|
|
51
|
+
/**
|
|
52
|
+
* Get contrast ratio between two colors
|
|
53
|
+
*/
|
|
54
|
+
getContrastRatio: (t, o) => {
|
|
55
|
+
const r = (u) => {
|
|
56
|
+
const c = e.hexToRgb(u);
|
|
57
|
+
if (!c) return 0;
|
|
58
|
+
const [h, b, m] = [c.r, c.g, c.b].map((a) => (a = a / 255, a <= 0.03928 ? a / 12.92 : Math.pow((a + 0.055) / 1.055, 2.4)));
|
|
59
|
+
return 0.2126 * h + 0.7152 * b + 0.0722 * m;
|
|
60
|
+
}, n = r(t), s = r(o), l = Math.max(n, s), p = Math.min(n, s);
|
|
61
|
+
return (l + 0.05) / (p + 0.05);
|
|
62
|
+
}
|
|
63
|
+
}, d = {
|
|
64
|
+
/**
|
|
65
|
+
* Reverse gradient colors
|
|
66
|
+
*/
|
|
67
|
+
reverse: (t) => {
|
|
68
|
+
const o = { ...t };
|
|
69
|
+
return "colors" in o.options && (o.options = {
|
|
70
|
+
...o.options,
|
|
71
|
+
colors: [...o.options.colors].reverse(),
|
|
72
|
+
stops: o.options.stops ? [...o.options.stops].reverse() : void 0
|
|
73
|
+
}), o;
|
|
74
|
+
},
|
|
75
|
+
/**
|
|
76
|
+
* Rotate linear gradient direction
|
|
77
|
+
*/
|
|
78
|
+
rotateLinear: (t, o) => {
|
|
79
|
+
if (t.type !== "linear") return t;
|
|
80
|
+
const r = t.options;
|
|
81
|
+
return {
|
|
82
|
+
...t,
|
|
83
|
+
options: {
|
|
84
|
+
...r,
|
|
85
|
+
angle: (r.angle || 0) + o
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
},
|
|
89
|
+
/**
|
|
90
|
+
* Scale radial gradient
|
|
91
|
+
*/
|
|
92
|
+
scaleRadial: (t, o) => {
|
|
93
|
+
if (t.type !== "radial") return t;
|
|
94
|
+
const r = t.options;
|
|
95
|
+
return {
|
|
96
|
+
...t,
|
|
97
|
+
options: {
|
|
98
|
+
...r,
|
|
99
|
+
startRadius: r.startRadius * o,
|
|
100
|
+
endRadius: r.endRadius * o
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
},
|
|
104
|
+
/**
|
|
105
|
+
* Add transparency to entire gradient
|
|
106
|
+
*/
|
|
107
|
+
withOpacity: (t, o) => {
|
|
108
|
+
const r = { ...t };
|
|
109
|
+
return "colors" in r.options && (r.options = {
|
|
110
|
+
...r.options,
|
|
111
|
+
colors: r.options.colors.map(
|
|
112
|
+
(n) => typeof n == "string" ? e.withAlpha(n, o) : n
|
|
113
|
+
)
|
|
114
|
+
}), r;
|
|
115
|
+
},
|
|
116
|
+
/**
|
|
117
|
+
* Mirror a linear gradient (swap start and end points)
|
|
118
|
+
*/
|
|
119
|
+
mirror: (t) => {
|
|
120
|
+
if (t.type !== "linear") return t;
|
|
121
|
+
const o = t.options;
|
|
122
|
+
return {
|
|
123
|
+
...t,
|
|
124
|
+
options: {
|
|
125
|
+
...o,
|
|
126
|
+
startPoint: o.endPoint,
|
|
127
|
+
endPoint: o.startPoint
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
},
|
|
131
|
+
/**
|
|
132
|
+
* Convert linear gradient to radial
|
|
133
|
+
*/
|
|
134
|
+
toRadial: (t, o = 100) => {
|
|
135
|
+
if (t.type !== "linear") return t;
|
|
136
|
+
const r = t.options;
|
|
137
|
+
return v({
|
|
138
|
+
colors: r.colors,
|
|
139
|
+
stops: r.stops,
|
|
140
|
+
center: "center",
|
|
141
|
+
startRadius: 0,
|
|
142
|
+
endRadius: o
|
|
143
|
+
});
|
|
144
|
+
},
|
|
145
|
+
/**
|
|
146
|
+
* Convert to angular/conic gradient
|
|
147
|
+
*/
|
|
148
|
+
toAngular: (t) => "colors" in t.options ? P({
|
|
149
|
+
colors: t.options.colors,
|
|
150
|
+
stops: t.options.stops,
|
|
151
|
+
center: "center",
|
|
152
|
+
startAngle: 0,
|
|
153
|
+
endAngle: 360
|
|
154
|
+
}) : t
|
|
155
|
+
}, g = {
|
|
156
|
+
/**
|
|
157
|
+
* Get gradient color count
|
|
158
|
+
*/
|
|
159
|
+
getColorCount: (t) => "colors" in t.options ? t.options.colors.length : 0,
|
|
160
|
+
/**
|
|
161
|
+
* Extract colors from gradient
|
|
162
|
+
*/
|
|
163
|
+
extractColors: (t) => "colors" in t.options ? [...t.options.colors] : [],
|
|
164
|
+
/**
|
|
165
|
+
* Get gradient complexity score (for performance optimization)
|
|
166
|
+
*/
|
|
167
|
+
getComplexityScore: (t) => {
|
|
168
|
+
let o = 0;
|
|
169
|
+
switch ("colors" in t.options && (o += t.options.colors.length * 2, o += t.options.stops ? t.options.stops.length : 0), t.type) {
|
|
170
|
+
case "linear":
|
|
171
|
+
o += 1;
|
|
172
|
+
break;
|
|
173
|
+
case "radial":
|
|
174
|
+
o += 3;
|
|
175
|
+
break;
|
|
176
|
+
case "angular":
|
|
177
|
+
o += 4;
|
|
178
|
+
break;
|
|
179
|
+
case "repeating-linear":
|
|
180
|
+
o += 5;
|
|
181
|
+
break;
|
|
182
|
+
case "repeating-radial":
|
|
183
|
+
o += 6;
|
|
184
|
+
break;
|
|
185
|
+
}
|
|
186
|
+
return o;
|
|
187
|
+
},
|
|
188
|
+
/**
|
|
189
|
+
* Check if gradient has transparency
|
|
190
|
+
*/
|
|
191
|
+
hasTransparency: (t) => "colors" in t.options ? t.options.colors.some(
|
|
192
|
+
(o) => typeof o == "string" && (o.includes("rgba") || o.includes("transparent") || o.includes("hsla"))
|
|
193
|
+
) : !1,
|
|
194
|
+
/**
|
|
195
|
+
* Estimate rendering performance impact
|
|
196
|
+
*/
|
|
197
|
+
getPerformanceImpact: (t) => {
|
|
198
|
+
const o = g.getComplexityScore(t);
|
|
199
|
+
return o <= 5 ? "low" : o <= 10 ? "medium" : "high";
|
|
200
|
+
}
|
|
201
|
+
}, y = {
|
|
202
|
+
/**
|
|
203
|
+
* Generate rainbow gradient
|
|
204
|
+
*/
|
|
205
|
+
rainbow: (t = 6) => {
|
|
206
|
+
const o = [];
|
|
207
|
+
for (let r = 0; r < t; r++) {
|
|
208
|
+
const n = r * 360 / t;
|
|
209
|
+
o.push(`hsl(${n}, 100%, 50%)`);
|
|
210
|
+
}
|
|
211
|
+
return i({
|
|
212
|
+
colors: o,
|
|
213
|
+
startPoint: "leading",
|
|
214
|
+
endPoint: "trailing"
|
|
215
|
+
});
|
|
216
|
+
},
|
|
217
|
+
/**
|
|
218
|
+
* Generate monochromatic gradient
|
|
219
|
+
*/
|
|
220
|
+
monochromatic: (t, o = 5) => {
|
|
221
|
+
const r = [];
|
|
222
|
+
for (let n = 0; n < o; n++) {
|
|
223
|
+
const s = n / (o - 1);
|
|
224
|
+
s < 0.5 ? r.push(e.lighten(t, 0.4 - s * 0.8)) : r.push(e.darken(t, (s - 0.5) * 0.8));
|
|
225
|
+
}
|
|
226
|
+
return i({
|
|
227
|
+
colors: r,
|
|
228
|
+
startPoint: "top",
|
|
229
|
+
endPoint: "bottom"
|
|
230
|
+
});
|
|
231
|
+
},
|
|
232
|
+
/**
|
|
233
|
+
* Generate analogous color gradient
|
|
234
|
+
*/
|
|
235
|
+
analogous: (t, o = 60) => i({
|
|
236
|
+
colors: [t, e.lighten(t, 0.2), e.darken(t, 0.2)],
|
|
237
|
+
startPoint: "topLeading",
|
|
238
|
+
endPoint: "bottomTrailing"
|
|
239
|
+
}),
|
|
240
|
+
/**
|
|
241
|
+
* Generate complementary gradient
|
|
242
|
+
*/
|
|
243
|
+
complementary: (t, o) => {
|
|
244
|
+
const r = o || e.complement(t);
|
|
245
|
+
return i({
|
|
246
|
+
colors: [t, r],
|
|
247
|
+
startPoint: "topLeading",
|
|
248
|
+
endPoint: "bottomTrailing"
|
|
249
|
+
});
|
|
250
|
+
},
|
|
251
|
+
/**
|
|
252
|
+
* Generate sunset gradient
|
|
253
|
+
*/
|
|
254
|
+
sunset: () => i({
|
|
255
|
+
colors: ["#ff7e5f", "#feb47b", "#ff6b6b", "#c44569"],
|
|
256
|
+
startPoint: "top",
|
|
257
|
+
endPoint: "bottom"
|
|
258
|
+
}),
|
|
259
|
+
/**
|
|
260
|
+
* Generate ocean gradient
|
|
261
|
+
*/
|
|
262
|
+
ocean: () => i({
|
|
263
|
+
colors: ["#667eea", "#764ba2", "#667eea"],
|
|
264
|
+
startPoint: "topLeading",
|
|
265
|
+
endPoint: "bottomTrailing"
|
|
266
|
+
})
|
|
267
|
+
}, S = {
|
|
268
|
+
/**
|
|
269
|
+
* Create hover effect gradient
|
|
270
|
+
*/
|
|
271
|
+
createHoverEffect: (t, o = 0.1) => {
|
|
272
|
+
const r = d.withOpacity(
|
|
273
|
+
d.reverse(t),
|
|
274
|
+
1 - o
|
|
275
|
+
);
|
|
276
|
+
return {
|
|
277
|
+
default: t,
|
|
278
|
+
hover: r,
|
|
279
|
+
animation: {
|
|
280
|
+
duration: 200,
|
|
281
|
+
easing: "ease-out"
|
|
282
|
+
}
|
|
283
|
+
};
|
|
284
|
+
},
|
|
285
|
+
/**
|
|
286
|
+
* Create button gradient states
|
|
287
|
+
*/
|
|
288
|
+
createButtonStates: (t, o = "primary") => {
|
|
289
|
+
const n = {
|
|
290
|
+
primary: { base: t, hover: e.lighten(t, 0.1), active: e.darken(t, 0.1) },
|
|
291
|
+
secondary: { base: "#f8f9fa", hover: "#e9ecef", active: "#dee2e6" },
|
|
292
|
+
danger: { base: "#dc3545", hover: e.lighten("#dc3545", 0.1), active: e.darken("#dc3545", 0.1) }
|
|
293
|
+
}[o];
|
|
294
|
+
return {
|
|
295
|
+
default: i({
|
|
296
|
+
colors: [n.base, e.darken(n.base, 0.05)],
|
|
297
|
+
startPoint: "top",
|
|
298
|
+
endPoint: "bottom"
|
|
299
|
+
}),
|
|
300
|
+
hover: i({
|
|
301
|
+
colors: [n.hover, e.darken(n.hover, 0.05)],
|
|
302
|
+
startPoint: "top",
|
|
303
|
+
endPoint: "bottom"
|
|
304
|
+
}),
|
|
305
|
+
active: i({
|
|
306
|
+
colors: [n.active, e.darken(n.active, 0.05)],
|
|
307
|
+
startPoint: "top",
|
|
308
|
+
endPoint: "bottom"
|
|
309
|
+
}),
|
|
310
|
+
disabled: "#cccccc",
|
|
311
|
+
animation: {
|
|
312
|
+
duration: 150,
|
|
313
|
+
easing: "ease-out"
|
|
314
|
+
}
|
|
315
|
+
};
|
|
316
|
+
},
|
|
317
|
+
/**
|
|
318
|
+
* Create card hover effect
|
|
319
|
+
*/
|
|
320
|
+
createCardHover: (t = "#ffffff") => ({
|
|
321
|
+
default: t,
|
|
322
|
+
hover: i({
|
|
323
|
+
colors: [
|
|
324
|
+
e.withAlpha("#ffffff", 0.1),
|
|
325
|
+
e.withAlpha("#f8f9fa", 0.1)
|
|
326
|
+
],
|
|
327
|
+
startPoint: "topLeading",
|
|
328
|
+
endPoint: "bottomTrailing"
|
|
329
|
+
}),
|
|
330
|
+
animation: {
|
|
331
|
+
duration: 200,
|
|
332
|
+
easing: "ease"
|
|
333
|
+
}
|
|
334
|
+
})
|
|
335
|
+
}, x = {
|
|
336
|
+
/**
|
|
337
|
+
* Generate CSS custom properties for gradient
|
|
338
|
+
*/
|
|
339
|
+
toCustomProperties: (t, o = "gradient") => {
|
|
340
|
+
const r = f(t);
|
|
341
|
+
return {
|
|
342
|
+
[`--${o}-background`]: r
|
|
343
|
+
};
|
|
344
|
+
},
|
|
345
|
+
/**
|
|
346
|
+
* Generate fallback CSS for older browsers
|
|
347
|
+
*/
|
|
348
|
+
withFallback: (t, o) => {
|
|
349
|
+
const r = f(t);
|
|
350
|
+
return `background: ${o}; background: ${r};`;
|
|
351
|
+
},
|
|
352
|
+
/**
|
|
353
|
+
* Optimize CSS for performance
|
|
354
|
+
*/
|
|
355
|
+
optimize: (t) => t.replace(/\s+/g, " ").replace(/,\s+/g, ",").replace(/:\s+/g, ":").trim()
|
|
356
|
+
}, R = {
|
|
357
|
+
...e,
|
|
358
|
+
...d,
|
|
359
|
+
...g,
|
|
360
|
+
...y,
|
|
361
|
+
...S,
|
|
362
|
+
...x,
|
|
363
|
+
/**
|
|
364
|
+
* Convert any background value to CSS
|
|
365
|
+
*/
|
|
366
|
+
toCSS: (t) => typeof t == "string" ? t : "resolve" in t && typeof t.resolve == "function" ? t.resolve() : "type" in t && "options" in t ? f(t) : "default" in t ? R.toCSS(t.default) : "transparent",
|
|
367
|
+
/**
|
|
368
|
+
* Deep clone gradient definition
|
|
369
|
+
*/
|
|
370
|
+
clone: (t) => JSON.parse(JSON.stringify(t)),
|
|
371
|
+
/**
|
|
372
|
+
* Compare two gradients for equality
|
|
373
|
+
*/
|
|
374
|
+
equals: (t, o) => JSON.stringify(t) === JSON.stringify(o)
|
|
375
|
+
};
|
|
376
|
+
export {
|
|
377
|
+
x as CSSUtils,
|
|
378
|
+
e as ColorUtils,
|
|
379
|
+
g as GradientAnalysis,
|
|
380
|
+
y as GradientGenerators,
|
|
381
|
+
d as GradientTransforms,
|
|
382
|
+
R as GradientUtils,
|
|
383
|
+
S as StateGradientUtils
|
|
384
|
+
};
|
|
385
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../src/gradients/utils.ts"],"sourcesContent":["/**\n * Gradient Utility Functions and Helper Methods\n * \n * Comprehensive utilities for gradient manipulation, analysis, and transformation.\n */\n\nimport type { Asset } from '../assets/types'\nimport type {\n GradientDefinition,\n LinearGradientOptions,\n RadialGradientOptions,\n StateGradientOptions,\n StatefulBackgroundValue\n} from './types'\nimport { LinearGradient, RadialGradient, AngularGradient } from './index'\nimport { gradientToCSS } from './css-generator'\n\n/**\n * Color manipulation utilities\n */\nexport const ColorUtils = {\n /**\n * Parse hex color to RGB components\n */\n hexToRgb: (hex: string): { r: number; g: number; b: number } | null => {\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex)\n return result ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16)\n } : null\n },\n\n /**\n * Convert RGB to hex\n */\n rgbToHex: (r: number, g: number, b: number): string => {\n return \"#\" + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)\n },\n\n /**\n * Add transparency to a color\n */\n withAlpha: (color: string, alpha: number): string => {\n if (color.startsWith('#')) {\n const rgb = ColorUtils.hexToRgb(color)\n if (rgb) {\n return `rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${alpha})`\n }\n }\n if (color.startsWith('rgb(')) {\n return color.replace('rgb(', 'rgba(').replace(')', `, ${alpha})`)\n }\n if (color.startsWith('rgba(')) {\n // Replace existing alpha\n return color.replace(/,\\s*[\\d.]+\\)$/, `, ${alpha})`)\n }\n return color\n },\n\n /**\n * Blend two colors\n */\n blendColors: (color1: string, color2: string, ratio: number = 0.5): string => {\n const rgb1 = ColorUtils.hexToRgb(color1)\n const rgb2 = ColorUtils.hexToRgb(color2)\n \n if (!rgb1 || !rgb2) return color1\n \n const r = Math.round(rgb1.r * (1 - ratio) + rgb2.r * ratio)\n const g = Math.round(rgb1.g * (1 - ratio) + rgb2.g * ratio)\n const b = Math.round(rgb1.b * (1 - ratio) + rgb2.b * ratio)\n \n return ColorUtils.rgbToHex(r, g, b)\n },\n\n /**\n * Generate color variations (lighter/darker)\n */\n lighten: (color: string, amount: number = 0.2): string => {\n return ColorUtils.blendColors(color, '#ffffff', amount)\n },\n\n darken: (color: string, amount: number = 0.2): string => {\n return ColorUtils.blendColors(color, '#000000', amount)\n },\n\n /**\n * Generate complementary color\n */\n complement: (color: string): string => {\n const rgb = ColorUtils.hexToRgb(color)\n if (!rgb) return color\n \n return ColorUtils.rgbToHex(255 - rgb.r, 255 - rgb.g, 255 - rgb.b)\n },\n\n /**\n * Get contrast ratio between two colors\n */\n getContrastRatio: (color1: string, color2: string): number => {\n const getLuminance = (color: string): number => {\n const rgb = ColorUtils.hexToRgb(color)\n if (!rgb) return 0\n \n const [r, g, b] = [rgb.r, rgb.g, rgb.b].map(c => {\n c = c / 255\n return c <= 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4)\n })\n \n return 0.2126 * r + 0.7152 * g + 0.0722 * b\n }\n \n const lum1 = getLuminance(color1)\n const lum2 = getLuminance(color2)\n const brightest = Math.max(lum1, lum2)\n const darkest = Math.min(lum1, lum2)\n \n return (brightest + 0.05) / (darkest + 0.05)\n }\n} as const\n\n/**\n * Gradient transformation utilities\n */\nexport const GradientTransforms = {\n /**\n * Reverse gradient colors\n */\n reverse: <T extends GradientDefinition>(gradient: T): T => {\n const newGradient = { ...gradient }\n if ('colors' in newGradient.options) {\n newGradient.options = {\n ...newGradient.options,\n colors: [...newGradient.options.colors].reverse(),\n stops: newGradient.options.stops ? [...newGradient.options.stops].reverse() : undefined\n }\n }\n return newGradient\n },\n\n /**\n * Rotate linear gradient direction\n */\n rotateLinear: (gradient: GradientDefinition, degrees: number): GradientDefinition => {\n if (gradient.type !== 'linear') return gradient\n \n const options = gradient.options as LinearGradientOptions\n return {\n ...gradient,\n options: {\n ...options,\n angle: (options.angle || 0) + degrees\n }\n }\n },\n\n /**\n * Scale radial gradient\n */\n scaleRadial: (gradient: GradientDefinition, scale: number): GradientDefinition => {\n if (gradient.type !== 'radial') return gradient\n \n const options = gradient.options as RadialGradientOptions\n return {\n ...gradient,\n options: {\n ...options,\n startRadius: options.startRadius * scale,\n endRadius: options.endRadius * scale\n }\n }\n },\n\n /**\n * Add transparency to entire gradient\n */\n withOpacity: (gradient: GradientDefinition, opacity: number): GradientDefinition => {\n const newGradient = { ...gradient }\n if ('colors' in newGradient.options) {\n newGradient.options = {\n ...newGradient.options,\n colors: newGradient.options.colors.map(color => \n typeof color === 'string' ? ColorUtils.withAlpha(color, opacity) : color\n )\n }\n }\n return newGradient\n },\n\n /**\n * Mirror a linear gradient (swap start and end points)\n */\n mirror: (gradient: GradientDefinition): GradientDefinition => {\n if (gradient.type !== 'linear') return gradient\n \n const options = gradient.options as LinearGradientOptions\n return {\n ...gradient,\n options: {\n ...options,\n startPoint: options.endPoint,\n endPoint: options.startPoint\n }\n }\n },\n\n /**\n * Convert linear gradient to radial\n */\n toRadial: (gradient: GradientDefinition, radius: number = 100): GradientDefinition => {\n if (gradient.type !== 'linear') return gradient\n \n const options = gradient.options as LinearGradientOptions\n return RadialGradient({\n colors: options.colors,\n stops: options.stops,\n center: 'center',\n startRadius: 0,\n endRadius: radius\n })\n },\n\n /**\n * Convert to angular/conic gradient\n */\n toAngular: (gradient: GradientDefinition): GradientDefinition => {\n if ('colors' in gradient.options) {\n return AngularGradient({\n colors: gradient.options.colors,\n stops: gradient.options.stops,\n center: 'center',\n startAngle: 0,\n endAngle: 360\n })\n }\n return gradient\n }\n} as const\n\n/**\n * Gradient analysis utilities\n */\nexport const GradientAnalysis = {\n /**\n * Get gradient color count\n */\n getColorCount: (gradient: GradientDefinition): number => {\n if ('colors' in gradient.options) {\n return gradient.options.colors.length\n }\n return 0\n },\n\n /**\n * Extract colors from gradient\n */\n extractColors: (gradient: GradientDefinition): (string | Asset)[] => {\n if ('colors' in gradient.options) {\n return [...gradient.options.colors]\n }\n return []\n },\n\n /**\n * Get gradient complexity score (for performance optimization)\n */\n getComplexityScore: (gradient: GradientDefinition): number => {\n let score = 0\n \n if ('colors' in gradient.options) {\n score += gradient.options.colors.length * 2\n score += gradient.options.stops ? gradient.options.stops.length : 0\n }\n \n // Add complexity for gradient type\n switch (gradient.type) {\n case 'linear': score += 1; break\n case 'radial': score += 3; break\n case 'angular': score += 4; break\n case 'repeating-linear': score += 5; break\n case 'repeating-radial': score += 6; break\n }\n \n return score\n },\n\n /**\n * Check if gradient has transparency\n */\n hasTransparency: (gradient: GradientDefinition): boolean => {\n if ('colors' in gradient.options) {\n return gradient.options.colors.some(color => \n typeof color === 'string' && (\n color.includes('rgba') || \n color.includes('transparent') ||\n color.includes('hsla')\n )\n )\n }\n return false\n },\n\n /**\n * Estimate rendering performance impact\n */\n getPerformanceImpact: (gradient: GradientDefinition): 'low' | 'medium' | 'high' => {\n const complexity = GradientAnalysis.getComplexityScore(gradient)\n \n if (complexity <= 5) return 'low'\n if (complexity <= 10) return 'medium'\n return 'high'\n }\n} as const\n\n/**\n * Gradient generation utilities\n */\nexport const GradientGenerators = {\n /**\n * Generate rainbow gradient\n */\n rainbow: (steps: number = 6): GradientDefinition => {\n const colors: string[] = []\n for (let i = 0; i < steps; i++) {\n const hue = (i * 360) / steps\n colors.push(`hsl(${hue}, 100%, 50%)`)\n }\n \n return LinearGradient({\n colors,\n startPoint: 'leading',\n endPoint: 'trailing'\n })\n },\n\n /**\n * Generate monochromatic gradient\n */\n monochromatic: (baseColor: string, steps: number = 5): GradientDefinition => {\n const colors: string[] = []\n \n for (let i = 0; i < steps; i++) {\n const ratio = i / (steps - 1)\n if (ratio < 0.5) {\n // Lighter variants\n colors.push(ColorUtils.lighten(baseColor, 0.4 - ratio * 0.8))\n } else {\n // Darker variants\n colors.push(ColorUtils.darken(baseColor, (ratio - 0.5) * 0.8))\n }\n }\n \n return LinearGradient({\n colors,\n startPoint: 'top',\n endPoint: 'bottom'\n })\n },\n\n /**\n * Generate analogous color gradient\n */\n analogous: (baseColor: string, _range: number = 60): GradientDefinition => {\n // This would require HSL color manipulation\n // Placeholder implementation\n return LinearGradient({\n colors: [baseColor, ColorUtils.lighten(baseColor, 0.2), ColorUtils.darken(baseColor, 0.2)],\n startPoint: 'topLeading',\n endPoint: 'bottomTrailing'\n })\n },\n\n /**\n * Generate complementary gradient\n */\n complementary: (color1: string, color2?: string): GradientDefinition => {\n const secondColor = color2 || ColorUtils.complement(color1)\n \n return LinearGradient({\n colors: [color1, secondColor],\n startPoint: 'topLeading',\n endPoint: 'bottomTrailing'\n })\n },\n\n /**\n * Generate sunset gradient\n */\n sunset: (): GradientDefinition => {\n return LinearGradient({\n colors: ['#ff7e5f', '#feb47b', '#ff6b6b', '#c44569'],\n startPoint: 'top',\n endPoint: 'bottom'\n })\n },\n\n /**\n * Generate ocean gradient\n */\n ocean: (): GradientDefinition => {\n return LinearGradient({\n colors: ['#667eea', '#764ba2', '#667eea'],\n startPoint: 'topLeading',\n endPoint: 'bottomTrailing'\n })\n }\n} as const\n\n/**\n * State gradient utilities\n */\nexport const StateGradientUtils = {\n /**\n * Create hover effect gradient\n */\n createHoverEffect: (\n baseGradient: GradientDefinition,\n intensity: number = 0.1\n ): StateGradientOptions => {\n const hoverGradient = GradientTransforms.withOpacity(\n GradientTransforms.reverse(baseGradient),\n 1 - intensity\n )\n \n return {\n default: baseGradient,\n hover: hoverGradient,\n animation: {\n duration: 200,\n easing: 'ease-out'\n }\n }\n },\n\n /**\n * Create button gradient states\n */\n createButtonStates: (\n baseColor: string,\n type: 'primary' | 'secondary' | 'danger' = 'primary'\n ): StateGradientOptions => {\n const colorMap = {\n primary: { base: baseColor, hover: ColorUtils.lighten(baseColor, 0.1), active: ColorUtils.darken(baseColor, 0.1) },\n secondary: { base: '#f8f9fa', hover: '#e9ecef', active: '#dee2e6' },\n danger: { base: '#dc3545', hover: ColorUtils.lighten('#dc3545', 0.1), active: ColorUtils.darken('#dc3545', 0.1) }\n }\n \n const colors = colorMap[type]\n \n return {\n default: LinearGradient({\n colors: [colors.base, ColorUtils.darken(colors.base, 0.05)],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n hover: LinearGradient({\n colors: [colors.hover, ColorUtils.darken(colors.hover, 0.05)],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n active: LinearGradient({\n colors: [colors.active, ColorUtils.darken(colors.active, 0.05)],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n disabled: '#cccccc',\n animation: {\n duration: 150,\n easing: 'ease-out'\n }\n }\n },\n\n /**\n * Create card hover effect\n */\n createCardHover: (backgroundColor: string = '#ffffff'): StateGradientOptions => {\n return {\n default: backgroundColor,\n hover: LinearGradient({\n colors: [\n ColorUtils.withAlpha('#ffffff', 0.1),\n ColorUtils.withAlpha('#f8f9fa', 0.1)\n ],\n startPoint: 'topLeading',\n endPoint: 'bottomTrailing'\n }),\n animation: {\n duration: 200,\n easing: 'ease'\n }\n }\n }\n} as const\n\n/**\n * CSS utility functions\n */\nexport const CSSUtils = {\n /**\n * Generate CSS custom properties for gradient\n */\n toCustomProperties: (gradient: GradientDefinition, prefix: string = 'gradient'): Record<string, string> => {\n const css = gradientToCSS(gradient)\n return {\n [`--${prefix}-background`]: css\n }\n },\n\n /**\n * Generate fallback CSS for older browsers\n */\n withFallback: (gradient: GradientDefinition, fallbackColor: string): string => {\n const gradientCSS = gradientToCSS(gradient)\n return `background: ${fallbackColor}; background: ${gradientCSS};`\n },\n\n /**\n * Optimize CSS for performance\n */\n optimize: (css: string): string => {\n // Remove unnecessary spaces and optimize\n return css\n .replace(/\\s+/g, ' ')\n .replace(/,\\s+/g, ',')\n .replace(/:\\s+/g, ':')\n .trim()\n }\n} as const\n\n/**\n * Main gradient utilities export\n */\nexport const GradientUtils = {\n ...ColorUtils,\n ...GradientTransforms,\n ...GradientAnalysis,\n ...GradientGenerators,\n ...StateGradientUtils,\n ...CSSUtils,\n\n /**\n * Convert any background value to CSS\n */\n toCSS: (background: StatefulBackgroundValue): string => {\n if (typeof background === 'string') {\n return background\n }\n \n if ('resolve' in background && typeof background.resolve === 'function') {\n return background.resolve() as string\n }\n \n if ('type' in background && 'options' in background) {\n return gradientToCSS(background as GradientDefinition)\n }\n \n if ('default' in background) {\n return GradientUtils.toCSS(background.default)\n }\n \n return 'transparent'\n },\n\n /**\n * Deep clone gradient definition\n */\n clone: <T extends GradientDefinition>(gradient: T): T => {\n return JSON.parse(JSON.stringify(gradient))\n },\n\n /**\n * Compare two gradients for equality\n */\n equals: (a: GradientDefinition, b: GradientDefinition): boolean => {\n return JSON.stringify(a) === JSON.stringify(b)\n }\n} as const"],"names":["ColorUtils","hex","result","r","g","b","color","alpha","rgb","color1","color2","ratio","rgb1","rgb2","amount","getLuminance","c","lum1","lum2","brightest","darkest","GradientTransforms","gradient","newGradient","degrees","options","scale","opacity","radius","RadialGradient","AngularGradient","GradientAnalysis","score","complexity","GradientGenerators","steps","colors","i","hue","LinearGradient","baseColor","_range","secondColor","StateGradientUtils","baseGradient","intensity","hoverGradient","type","backgroundColor","CSSUtils","prefix","css","gradientToCSS","fallbackColor","gradientCSS","GradientUtils","background","a"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n={isGradientDefinition(e){if(!e||typeof e!="object")return!1;const t=e;return typeof t.type=="string"&&["linear","radial","angular","conic","repeating-linear","repeating-radial","elliptical"].includes(t.type)&&t.options!==void 0&&typeof t.options=="object"&&t.options!==null},isLinearGradient(e){return this.isGradientDefinition(e)&&e.type==="linear"},isRadialGradient(e){return this.isGradientDefinition(e)&&e.type==="radial"},isAngularGradient(e){return this.isGradientDefinition(e)&&e.type==="angular"},isStateGradientOptions(e){if(!e||typeof e!="object")return!1;const t=e;return"default"in t&&t.default!==void 0},isStatefulBackgroundValue(e){return!!(typeof e=="string"||this.isGradientDefinition(e)||this.isAsset(e)||this.isStateGradientOptions(e))},isAsset(e){return e!==null&&typeof e=="object"&&"resolve"in e&&typeof e.resolve=="function"},isGradientStartPoint(e){return typeof e=="string"&&["top","bottom","leading","trailing","center","topLeading","topTrailing","bottomLeading","bottomTrailing"].includes(e)},isGradientCenter(e){return typeof e=="string"?["center","top","bottom","leading","trailing"].includes(e):Array.isArray(e)?e.length===2&&typeof e[0]=="number"&&typeof e[1]=="number":!1}},s={validateColor(e){return n.isAsset(e)?{valid:!0}:typeof e!="string"?{valid:!1,error:"Color must be a string or Asset"}:/^(transparent|inherit|initial|unset|currentcolor)$/i.test(e)?{valid:!0}:/^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i.test(e)?{valid:!0}:/^rgba?\(\s*(\d+(?:\.\d+)?%?)\s*,\s*(\d+(?:\.\d+)?%?)\s*,\s*(\d+(?:\.\d+)?%?)\s*(?:,\s*(\d+(?:\.\d+)?%?))?\s*\)$/i.test(e)?{valid:!0}:/^hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?%)\s*,\s*(\d+(?:\.\d+)?%)\s*(?:,\s*(\d+(?:\.\d+)?%?))?\s*\)$/i.test(e)?{valid:!0}:/^var\(--[a-zA-Z][a-zA-Z0-9-]*\)$/.test(e)?{valid:!0}:{valid:!1,error:`Invalid color format: ${e}`}},validateColors(e){const t=[];return Array.isArray(e)?e.length<2?{valid:!1,errors:["Gradient must have at least 2 colors"]}:(e.forEach((r,a)=>{const i=this.validateColor(r);i.valid||t.push(`Color at index ${a}: ${i.error}`)}),{valid:t.length===0,errors:t}):{valid:!1,errors:["Colors must be an array"]}},validateStops(e,t){if(!Array.isArray(e))return{valid:!1,error:"Stops must be an array"};if(e.length!==t)return{valid:!1,error:"Stops array length must match colors array length"};for(let r=0;r<e.length;r++){const a=e[r];if(typeof a!="number")return{valid:!1,error:`Stop at index ${r} must be a number`};if(a<0||a>100)return{valid:!1,error:`Stop at index ${r} must be between 0 and 100`};if(r>0&&a<e[r-1])return{valid:!1,error:`Stops must be in ascending order. Stop at index ${r} (${a}) is less than previous stop (${e[r-1]})`}}return{valid:!0}},validateLinearGradient(e){const t=[],r=this.validateColors(e.colors);if(r.valid||t.push(...r.errors),e.stops){const a=this.validateStops(e.stops,e.colors.length);a.valid||t.push(a.error)}return n.isGradientStartPoint(e.startPoint)||t.push(`Invalid startPoint: ${e.startPoint}`),n.isGradientStartPoint(e.endPoint)||t.push(`Invalid endPoint: ${e.endPoint}`),e.angle!==void 0&&(typeof e.angle!="number"?t.push("Angle must be a number"):(e.angle<0||e.angle>360)&&t.push("Angle must be between 0 and 360 degrees")),{valid:t.length===0,errors:t}},validateRadialGradient(e){const t=[],r=this.validateColors(e.colors);if(r.valid||t.push(...r.errors),e.stops){const a=this.validateStops(e.stops,e.colors.length);a.valid||t.push(a.error)}return n.isGradientCenter(e.center)||t.push(`Invalid center: ${e.center}`),(typeof e.startRadius!="number"||e.startRadius<0)&&t.push("startRadius must be a non-negative number"),(typeof e.endRadius!="number"||e.endRadius<0)&&t.push("endRadius must be a non-negative number"),e.startRadius>=e.endRadius&&t.push("endRadius must be greater than startRadius"),e.shape&&!["circle","ellipse"].includes(e.shape)&&t.push(`Invalid shape: ${e.shape}. Must be 'circle' or 'ellipse'`),{valid:t.length===0,errors:t}},validateAngularGradient(e){const t=[],r=this.validateColors(e.colors);return r.valid||t.push(...r.errors),n.isGradientCenter(e.center)||t.push(`Invalid center: ${e.center}`),typeof e.startAngle!="number"&&t.push("startAngle must be a number"),typeof e.endAngle!="number"&&t.push("endAngle must be a number"),{valid:t.length===0,errors:t}},validateAnimationOptions(e){const t=[];return e.duration!==void 0&&(typeof e.duration!="number"||e.duration<0)&&t.push("Duration must be a non-negative number"),e.delay!==void 0&&(typeof e.delay!="number"||e.delay<0)&&t.push("Delay must be a non-negative number"),e.easing!==void 0&&typeof e.easing!="string"&&t.push("Easing must be a string"),{valid:t.length===0,errors:t}},validateStateGradientOptions(e){const t=[];if(e.default||t.push("Default state is required"),["default","hover","active","focus","disabled"].forEach(a=>{const i=e[a];i&&!n.isStatefulBackgroundValue(i)&&t.push(`Invalid ${a} state value`)}),e.animation){const a=this.validateAnimationOptions(e.animation);a.valid||t.push(...a.errors.map(i=>`Animation: ${i}`))}return{valid:t.length===0,errors:t}},validateGradient(e){if(!n.isGradientDefinition(e))return{valid:!1,errors:["Invalid gradient definition structure"]};switch(e.type){case"linear":return this.validateLinearGradient(e.options);case"radial":return this.validateRadialGradient(e.options);case"angular":case"conic":return this.validateAngularGradient(e.options);default:return{valid:!1,errors:[`Unsupported gradient type: ${e.type}`]}}}},d=e=>{const t=s.validateGradient(e);if(!t.valid)throw new Error(`Invalid gradient: ${t.errors.join(", ")}`);return e},l=e=>{const t=s.validateStateGradientOptions(e);if(!t.valid)throw new Error(`Invalid state gradient: ${t.errors.join(", ")}`);return e},o={assertValidGradient(e){if(process.env.NODE_ENV==="development"){const t=s.validateGradient(e);if(!t.valid)throw console.error("Invalid gradient:",e),console.error("Validation errors:",t.errors),new Error(`Invalid gradient: ${t.errors.join(", ")}`)}},warnGradientIssues(e){process.env.NODE_ENV==="development"&&"colors"in e.options&&e.options.colors.length>5&&console.warn("Gradient has many colors which may impact performance:",e)}};exports.DevValidation=o;exports.GradientTypeGuards=n;exports.GradientValidation=s;exports.createValidatedGradient=d;exports.createValidatedStateGradient=l;
|
|
2
|
+
//# sourceMappingURL=validation.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.cjs","sources":["../../src/gradients/validation.ts"],"sourcesContent":["/**\n * Enhanced TypeScript Support and Validation for TachUI Gradients\n * \n * Provides type guards, validation utilities, and enhanced TypeScript inference\n * for gradient configurations.\n */\n\nimport type { Asset } from '../assets/types'\nimport type {\n GradientDefinition,\n LinearGradientOptions,\n RadialGradientOptions,\n AngularGradientOptions,\n StateGradientOptions,\n GradientAnimationOptions,\n StatefulBackgroundValue,\n GradientStartPoint,\n GradientCenter\n} from './types'\n\n/**\n * Enhanced type predicates for runtime type checking\n */\nexport const GradientTypeGuards = {\n /**\n * Check if value is a valid gradient definition\n */\n isGradientDefinition(value: unknown): value is GradientDefinition {\n if (!value || typeof value !== 'object') return false\n \n const obj = value as Record<string, unknown>\n return (\n typeof obj.type === 'string' &&\n ['linear', 'radial', 'angular', 'conic', 'repeating-linear', 'repeating-radial', 'elliptical'].includes(obj.type) &&\n obj.options !== undefined &&\n typeof obj.options === 'object' &&\n obj.options !== null\n )\n },\n\n /**\n * Check if value is a linear gradient\n */\n isLinearGradient(value: unknown): value is GradientDefinition & { type: 'linear' } {\n return this.isGradientDefinition(value) && value.type === 'linear'\n },\n\n /**\n * Check if value is a radial gradient\n */\n isRadialGradient(value: unknown): value is GradientDefinition & { type: 'radial' } {\n return this.isGradientDefinition(value) && value.type === 'radial'\n },\n\n /**\n * Check if value is an angular gradient\n */\n isAngularGradient(value: unknown): value is GradientDefinition & { type: 'angular' } {\n return this.isGradientDefinition(value) && value.type === 'angular'\n },\n\n /**\n * Check if value is a state gradient configuration\n */\n isStateGradientOptions(value: unknown): value is StateGradientOptions {\n if (!value || typeof value !== 'object') return false\n \n const obj = value as Record<string, unknown>\n return 'default' in obj && obj.default !== undefined\n },\n\n /**\n * Check if value is a stateful background value\n */\n isStatefulBackgroundValue(value: unknown): value is StatefulBackgroundValue {\n if (typeof value === 'string') return true\n if (this.isGradientDefinition(value)) return true\n if (this.isAsset(value)) return true\n if (this.isStateGradientOptions(value)) return true\n return false\n },\n\n /**\n * Check if value is an Asset\n */\n isAsset(value: unknown): value is Asset {\n return value !== null && \n typeof value === 'object' && \n 'resolve' in value && \n typeof (value as any).resolve === 'function'\n },\n\n /**\n * Check if value is a valid gradient start point\n */\n isGradientStartPoint(value: unknown): value is GradientStartPoint {\n return typeof value === 'string' && [\n 'top', 'bottom', 'leading', 'trailing', 'center',\n 'topLeading', 'topTrailing', 'bottomLeading', 'bottomTrailing'\n ].includes(value)\n },\n\n /**\n * Check if value is a valid gradient center\n */\n isGradientCenter(value: unknown): value is GradientCenter {\n if (typeof value === 'string') {\n return ['center', 'top', 'bottom', 'leading', 'trailing'].includes(value)\n }\n if (Array.isArray(value)) {\n return value.length === 2 && \n typeof value[0] === 'number' && \n typeof value[1] === 'number'\n }\n return false\n }\n} as const\n\n/**\n * Runtime validation functions\n */\nexport const GradientValidation = {\n /**\n * Validate color format (hex, rgb, rgba, hsl, hsla, named colors, CSS custom properties)\n */\n validateColor(color: string | Asset): { valid: boolean; error?: string } {\n if (GradientTypeGuards.isAsset(color)) {\n return { valid: true } // Assets are validated elsewhere\n }\n\n if (typeof color !== 'string') {\n return { valid: false, error: 'Color must be a string or Asset' }\n }\n\n // CSS color name pattern\n const namedColors = /^(transparent|inherit|initial|unset|currentcolor)$/i\n if (namedColors.test(color)) {\n return { valid: true }\n }\n\n // Hex color pattern\n const hexPattern = /^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i\n if (hexPattern.test(color)) {\n return { valid: true }\n }\n\n // RGB/RGBA pattern\n const rgbPattern = /^rgba?\\(\\s*(\\d+(?:\\.\\d+)?%?)\\s*,\\s*(\\d+(?:\\.\\d+)?%?)\\s*,\\s*(\\d+(?:\\.\\d+)?%?)\\s*(?:,\\s*(\\d+(?:\\.\\d+)?%?))?\\s*\\)$/i\n if (rgbPattern.test(color)) {\n return { valid: true }\n }\n\n // HSL/HSLA pattern\n const hslPattern = /^hsla?\\(\\s*(\\d+(?:\\.\\d+)?)\\s*,\\s*(\\d+(?:\\.\\d+)?%)\\s*,\\s*(\\d+(?:\\.\\d+)?%)\\s*(?:,\\s*(\\d+(?:\\.\\d+)?%?))?\\s*\\)$/i\n if (hslPattern.test(color)) {\n return { valid: true }\n }\n\n // CSS custom property pattern\n const customPropertyPattern = /^var\\(--[a-zA-Z][a-zA-Z0-9-]*\\)$/\n if (customPropertyPattern.test(color)) {\n return { valid: true }\n }\n\n return { valid: false, error: `Invalid color format: ${color}` }\n },\n\n /**\n * Validate gradient colors array\n */\n validateColors(colors: (string | Asset)[]): { valid: boolean; errors: string[] } {\n const errors: string[] = []\n\n if (!Array.isArray(colors)) {\n return { valid: false, errors: ['Colors must be an array'] }\n }\n\n if (colors.length < 2) {\n return { valid: false, errors: ['Gradient must have at least 2 colors'] }\n }\n\n colors.forEach((color, index) => {\n const validation = this.validateColor(color)\n if (!validation.valid) {\n errors.push(`Color at index ${index}: ${validation.error}`)\n }\n })\n\n return { valid: errors.length === 0, errors }\n },\n\n /**\n * Validate color stops array\n */\n validateStops(stops: number[], colorsLength: number): { valid: boolean; error?: string } {\n if (!Array.isArray(stops)) {\n return { valid: false, error: 'Stops must be an array' }\n }\n\n if (stops.length !== colorsLength) {\n return { valid: false, error: 'Stops array length must match colors array length' }\n }\n\n // Check if stops are in ascending order and within 0-100 range\n for (let i = 0; i < stops.length; i++) {\n const stop = stops[i]\n \n if (typeof stop !== 'number') {\n return { valid: false, error: `Stop at index ${i} must be a number` }\n }\n \n if (stop < 0 || stop > 100) {\n return { valid: false, error: `Stop at index ${i} must be between 0 and 100` }\n }\n \n if (i > 0 && stop < stops[i - 1]) {\n return { valid: false, error: `Stops must be in ascending order. Stop at index ${i} (${stop}) is less than previous stop (${stops[i - 1]})` }\n }\n }\n\n return { valid: true }\n },\n\n /**\n * Validate linear gradient options\n */\n validateLinearGradient(options: LinearGradientOptions): { valid: boolean; errors: string[] } {\n const errors: string[] = []\n\n // Validate colors\n const colorsValidation = this.validateColors(options.colors)\n if (!colorsValidation.valid) {\n errors.push(...colorsValidation.errors)\n }\n\n // Validate stops if provided\n if (options.stops) {\n const stopsValidation = this.validateStops(options.stops, options.colors.length)\n if (!stopsValidation.valid) {\n errors.push(stopsValidation.error!)\n }\n }\n\n // Validate start and end points\n if (!GradientTypeGuards.isGradientStartPoint(options.startPoint)) {\n errors.push(`Invalid startPoint: ${options.startPoint}`)\n }\n\n if (!GradientTypeGuards.isGradientStartPoint(options.endPoint)) {\n errors.push(`Invalid endPoint: ${options.endPoint}`)\n }\n\n // Validate angle if provided\n if (options.angle !== undefined) {\n if (typeof options.angle !== 'number') {\n errors.push('Angle must be a number')\n } else if (options.angle < 0 || options.angle > 360) {\n errors.push('Angle must be between 0 and 360 degrees')\n }\n }\n\n return { valid: errors.length === 0, errors }\n },\n\n /**\n * Validate radial gradient options\n */\n validateRadialGradient(options: RadialGradientOptions): { valid: boolean; errors: string[] } {\n const errors: string[] = []\n\n // Validate colors\n const colorsValidation = this.validateColors(options.colors)\n if (!colorsValidation.valid) {\n errors.push(...colorsValidation.errors)\n }\n\n // Validate stops if provided\n if (options.stops) {\n const stopsValidation = this.validateStops(options.stops, options.colors.length)\n if (!stopsValidation.valid) {\n errors.push(stopsValidation.error!)\n }\n }\n\n // Validate center\n if (!GradientTypeGuards.isGradientCenter(options.center)) {\n errors.push(`Invalid center: ${options.center}`)\n }\n\n // Validate radii\n if (typeof options.startRadius !== 'number' || options.startRadius < 0) {\n errors.push('startRadius must be a non-negative number')\n }\n\n if (typeof options.endRadius !== 'number' || options.endRadius < 0) {\n errors.push('endRadius must be a non-negative number')\n }\n\n if (options.startRadius >= options.endRadius) {\n errors.push('endRadius must be greater than startRadius')\n }\n\n // Validate shape if provided\n if (options.shape && !['circle', 'ellipse'].includes(options.shape)) {\n errors.push(`Invalid shape: ${options.shape}. Must be 'circle' or 'ellipse'`)\n }\n\n return { valid: errors.length === 0, errors }\n },\n\n /**\n * Validate angular gradient options\n */\n validateAngularGradient(options: AngularGradientOptions): { valid: boolean; errors: string[] } {\n const errors: string[] = []\n\n // Validate colors\n const colorsValidation = this.validateColors(options.colors)\n if (!colorsValidation.valid) {\n errors.push(...colorsValidation.errors)\n }\n\n // Validate center\n if (!GradientTypeGuards.isGradientCenter(options.center)) {\n errors.push(`Invalid center: ${options.center}`)\n }\n\n // Validate angles\n if (typeof options.startAngle !== 'number') {\n errors.push('startAngle must be a number')\n }\n\n if (typeof options.endAngle !== 'number') {\n errors.push('endAngle must be a number')\n }\n\n return { valid: errors.length === 0, errors }\n },\n\n /**\n * Validate animation options\n */\n validateAnimationOptions(options: GradientAnimationOptions): { valid: boolean; errors: string[] } {\n const errors: string[] = []\n\n if (options.duration !== undefined) {\n if (typeof options.duration !== 'number' || options.duration < 0) {\n errors.push('Duration must be a non-negative number')\n }\n }\n\n if (options.delay !== undefined) {\n if (typeof options.delay !== 'number' || options.delay < 0) {\n errors.push('Delay must be a non-negative number')\n }\n }\n\n if (options.easing !== undefined) {\n if (typeof options.easing !== 'string') {\n errors.push('Easing must be a string')\n }\n }\n\n return { valid: errors.length === 0, errors }\n },\n\n /**\n * Validate state gradient options\n */\n validateStateGradientOptions(options: StateGradientOptions): { valid: boolean; errors: string[] } {\n const errors: string[] = []\n\n // Validate that default state exists\n if (!options.default) {\n errors.push('Default state is required')\n }\n\n // Validate each state\n const stateKeys = ['default', 'hover', 'active', 'focus', 'disabled'] as const\n stateKeys.forEach(key => {\n const value = options[key]\n if (value && !GradientTypeGuards.isStatefulBackgroundValue(value)) {\n errors.push(`Invalid ${key} state value`)\n }\n })\n\n // Validate animation options if provided\n if (options.animation) {\n const animationValidation = this.validateAnimationOptions(options.animation)\n if (!animationValidation.valid) {\n errors.push(...animationValidation.errors.map(err => `Animation: ${err}`))\n }\n }\n\n return { valid: errors.length === 0, errors }\n },\n\n /**\n * Comprehensive gradient validation\n */\n validateGradient(gradient: GradientDefinition): { valid: boolean; errors: string[] } {\n if (!GradientTypeGuards.isGradientDefinition(gradient)) {\n return { valid: false, errors: ['Invalid gradient definition structure'] }\n }\n\n switch (gradient.type) {\n case 'linear':\n return this.validateLinearGradient(gradient.options as LinearGradientOptions)\n case 'radial':\n return this.validateRadialGradient(gradient.options as RadialGradientOptions)\n case 'angular':\n case 'conic':\n return this.validateAngularGradient(gradient.options as AngularGradientOptions)\n default:\n return { valid: false, errors: [`Unsupported gradient type: ${gradient.type}`] }\n }\n }\n} as const\n\n/**\n * Enhanced TypeScript utility types for better inference\n */\nexport type GradientPreset = () => GradientDefinition\nexport type StateGradientPreset = () => StateGradientOptions\n\n/**\n * Branded types for enhanced type safety\n */\nexport type ValidatedGradient<T extends GradientDefinition = GradientDefinition> = T & {\n readonly __validated: true\n}\n\nexport type ValidatedStateGradient = StateGradientOptions & {\n readonly __validated: true\n}\n\n/**\n * Validation wrapper functions that return branded types\n */\nexport const createValidatedGradient = <T extends GradientDefinition>(\n gradient: T\n): ValidatedGradient<T> | never => {\n const validation = GradientValidation.validateGradient(gradient)\n if (!validation.valid) {\n throw new Error(`Invalid gradient: ${validation.errors.join(', ')}`)\n }\n return gradient as ValidatedGradient<T>\n}\n\nexport const createValidatedStateGradient = (\n options: StateGradientOptions\n): ValidatedStateGradient | never => {\n const validation = GradientValidation.validateStateGradientOptions(options)\n if (!validation.valid) {\n throw new Error(`Invalid state gradient: ${validation.errors.join(', ')}`)\n }\n return options as ValidatedStateGradient\n}\n\n/**\n * Development-time validation helpers\n */\nexport const DevValidation = {\n /**\n * Assert gradient is valid (throws in development, no-op in production)\n */\n assertValidGradient(gradient: GradientDefinition): void {\n if (process.env.NODE_ENV === 'development') {\n const validation = GradientValidation.validateGradient(gradient)\n if (!validation.valid) {\n console.error('Invalid gradient:', gradient)\n console.error('Validation errors:', validation.errors)\n throw new Error(`Invalid gradient: ${validation.errors.join(', ')}`)\n }\n }\n },\n\n /**\n * Warn about potential gradient issues\n */\n warnGradientIssues(gradient: GradientDefinition): void {\n if (process.env.NODE_ENV === 'development') {\n // Add performance warnings, accessibility checks, etc.\n if ('colors' in gradient.options && gradient.options.colors.length > 5) {\n console.warn('Gradient has many colors which may impact performance:', gradient)\n }\n }\n }\n} as const"],"names":["GradientTypeGuards","value","obj","GradientValidation","color","colors","errors","index","validation","stops","colorsLength","i","stop","options","colorsValidation","stopsValidation","key","animationValidation","err","gradient","createValidatedGradient","createValidatedStateGradient","DevValidation"],"mappings":"gFAuBO,MAAMA,EAAqB,CAIhC,qBAAqBC,EAA6C,CAChE,GAAI,CAACA,GAAS,OAAOA,GAAU,SAAU,MAAO,GAEhD,MAAMC,EAAMD,EACZ,OACE,OAAOC,EAAI,MAAS,UACpB,CAAC,SAAU,SAAU,UAAW,QAAS,mBAAoB,mBAAoB,YAAY,EAAE,SAASA,EAAI,IAAI,GAChHA,EAAI,UAAY,QAChB,OAAOA,EAAI,SAAY,UACvBA,EAAI,UAAY,IAEpB,EAKA,iBAAiBD,EAAkE,CACjF,OAAO,KAAK,qBAAqBA,CAAK,GAAKA,EAAM,OAAS,QAC5D,EAKA,iBAAiBA,EAAkE,CACjF,OAAO,KAAK,qBAAqBA,CAAK,GAAKA,EAAM,OAAS,QAC5D,EAKA,kBAAkBA,EAAmE,CACnF,OAAO,KAAK,qBAAqBA,CAAK,GAAKA,EAAM,OAAS,SAC5D,EAKA,uBAAuBA,EAA+C,CACpE,GAAI,CAACA,GAAS,OAAOA,GAAU,SAAU,MAAO,GAEhD,MAAMC,EAAMD,EACZ,MAAO,YAAaC,GAAOA,EAAI,UAAY,MAC7C,EAKA,0BAA0BD,EAAkD,CAI1E,MAHI,UAAOA,GAAU,UACjB,KAAK,qBAAqBA,CAAK,GAC/B,KAAK,QAAQA,CAAK,GAClB,KAAK,uBAAuBA,CAAK,EAEvC,EAKA,QAAQA,EAAgC,CACtC,OAAOA,IAAU,MACV,OAAOA,GAAU,UACjB,YAAaA,GACb,OAAQA,EAAc,SAAY,UAC3C,EAKA,qBAAqBA,EAA6C,CAChE,OAAO,OAAOA,GAAU,UAAY,CAClC,MAAO,SAAU,UAAW,WAAY,SACxC,aAAc,cAAe,gBAAiB,gBAAA,EAC9C,SAASA,CAAK,CAClB,EAKA,iBAAiBA,EAAyC,CACxD,OAAI,OAAOA,GAAU,SACZ,CAAC,SAAU,MAAO,SAAU,UAAW,UAAU,EAAE,SAASA,CAAK,EAEtE,MAAM,QAAQA,CAAK,EACdA,EAAM,SAAW,GACjB,OAAOA,EAAM,CAAC,GAAM,UACpB,OAAOA,EAAM,CAAC,GAAM,SAEtB,EACT,CACF,EAKaE,EAAqB,CAIhC,cAAcC,EAA2D,CACvE,OAAIJ,EAAmB,QAAQI,CAAK,EAC3B,CAAE,MAAO,EAAA,EAGd,OAAOA,GAAU,SACZ,CAAE,MAAO,GAAO,MAAO,iCAAA,EAIZ,sDACJ,KAAKA,CAAK,EACjB,CAAE,MAAO,EAAA,EAIC,wDACJ,KAAKA,CAAK,EAChB,CAAE,MAAO,EAAA,EAIC,mHACJ,KAAKA,CAAK,EAChB,CAAE,MAAO,EAAA,EAIC,+GACJ,KAAKA,CAAK,EAChB,CAAE,MAAO,EAAA,EAIY,mCACJ,KAAKA,CAAK,EAC3B,CAAE,MAAO,EAAA,EAGX,CAAE,MAAO,GAAO,MAAO,yBAAyBA,CAAK,EAAA,CAC9D,EAKA,eAAeC,EAAkE,CAC/E,MAAMC,EAAmB,CAAA,EAEzB,OAAK,MAAM,QAAQD,CAAM,EAIrBA,EAAO,OAAS,EACX,CAAE,MAAO,GAAO,OAAQ,CAAC,sCAAsC,CAAA,GAGxEA,EAAO,QAAQ,CAACD,EAAOG,IAAU,CAC/B,MAAMC,EAAa,KAAK,cAAcJ,CAAK,EACtCI,EAAW,OACdF,EAAO,KAAK,kBAAkBC,CAAK,KAAKC,EAAW,KAAK,EAAE,CAE9D,CAAC,EAEM,CAAE,MAAOF,EAAO,SAAW,EAAG,OAAAA,CAAA,GAd5B,CAAE,MAAO,GAAO,OAAQ,CAAC,yBAAyB,CAAA,CAe7D,EAKA,cAAcG,EAAiBC,EAA0D,CACvF,GAAI,CAAC,MAAM,QAAQD,CAAK,EACtB,MAAO,CAAE,MAAO,GAAO,MAAO,wBAAA,EAGhC,GAAIA,EAAM,SAAWC,EACnB,MAAO,CAAE,MAAO,GAAO,MAAO,mDAAA,EAIhC,QAASC,EAAI,EAAGA,EAAIF,EAAM,OAAQE,IAAK,CACrC,MAAMC,EAAOH,EAAME,CAAC,EAEpB,GAAI,OAAOC,GAAS,SAClB,MAAO,CAAE,MAAO,GAAO,MAAO,iBAAiBD,CAAC,mBAAA,EAGlD,GAAIC,EAAO,GAAKA,EAAO,IACrB,MAAO,CAAE,MAAO,GAAO,MAAO,iBAAiBD,CAAC,4BAAA,EAGlD,GAAIA,EAAI,GAAKC,EAAOH,EAAME,EAAI,CAAC,EAC7B,MAAO,CAAE,MAAO,GAAO,MAAO,mDAAmDA,CAAC,KAAKC,CAAI,iCAAiCH,EAAME,EAAI,CAAC,CAAC,GAAA,CAE5I,CAEA,MAAO,CAAE,MAAO,EAAA,CAClB,EAKA,uBAAuBE,EAAsE,CAC3F,MAAMP,EAAmB,CAAA,EAGnBQ,EAAmB,KAAK,eAAeD,EAAQ,MAAM,EAM3D,GALKC,EAAiB,OACpBR,EAAO,KAAK,GAAGQ,EAAiB,MAAM,EAIpCD,EAAQ,MAAO,CACjB,MAAME,EAAkB,KAAK,cAAcF,EAAQ,MAAOA,EAAQ,OAAO,MAAM,EAC1EE,EAAgB,OACnBT,EAAO,KAAKS,EAAgB,KAAM,CAEtC,CAGA,OAAKf,EAAmB,qBAAqBa,EAAQ,UAAU,GAC7DP,EAAO,KAAK,uBAAuBO,EAAQ,UAAU,EAAE,EAGpDb,EAAmB,qBAAqBa,EAAQ,QAAQ,GAC3DP,EAAO,KAAK,qBAAqBO,EAAQ,QAAQ,EAAE,EAIjDA,EAAQ,QAAU,SAChB,OAAOA,EAAQ,OAAU,SAC3BP,EAAO,KAAK,wBAAwB,GAC3BO,EAAQ,MAAQ,GAAKA,EAAQ,MAAQ,MAC9CP,EAAO,KAAK,yCAAyC,GAIlD,CAAE,MAAOA,EAAO,SAAW,EAAG,OAAAA,CAAA,CACvC,EAKA,uBAAuBO,EAAsE,CAC3F,MAAMP,EAAmB,CAAA,EAGnBQ,EAAmB,KAAK,eAAeD,EAAQ,MAAM,EAM3D,GALKC,EAAiB,OACpBR,EAAO,KAAK,GAAGQ,EAAiB,MAAM,EAIpCD,EAAQ,MAAO,CACjB,MAAME,EAAkB,KAAK,cAAcF,EAAQ,MAAOA,EAAQ,OAAO,MAAM,EAC1EE,EAAgB,OACnBT,EAAO,KAAKS,EAAgB,KAAM,CAEtC,CAGA,OAAKf,EAAmB,iBAAiBa,EAAQ,MAAM,GACrDP,EAAO,KAAK,mBAAmBO,EAAQ,MAAM,EAAE,GAI7C,OAAOA,EAAQ,aAAgB,UAAYA,EAAQ,YAAc,IACnEP,EAAO,KAAK,2CAA2C,GAGrD,OAAOO,EAAQ,WAAc,UAAYA,EAAQ,UAAY,IAC/DP,EAAO,KAAK,yCAAyC,EAGnDO,EAAQ,aAAeA,EAAQ,WACjCP,EAAO,KAAK,4CAA4C,EAItDO,EAAQ,OAAS,CAAC,CAAC,SAAU,SAAS,EAAE,SAASA,EAAQ,KAAK,GAChEP,EAAO,KAAK,kBAAkBO,EAAQ,KAAK,iCAAiC,EAGvE,CAAE,MAAOP,EAAO,SAAW,EAAG,OAAAA,CAAA,CACvC,EAKA,wBAAwBO,EAAuE,CAC7F,MAAMP,EAAmB,CAAA,EAGnBQ,EAAmB,KAAK,eAAeD,EAAQ,MAAM,EAC3D,OAAKC,EAAiB,OACpBR,EAAO,KAAK,GAAGQ,EAAiB,MAAM,EAInCd,EAAmB,iBAAiBa,EAAQ,MAAM,GACrDP,EAAO,KAAK,mBAAmBO,EAAQ,MAAM,EAAE,EAI7C,OAAOA,EAAQ,YAAe,UAChCP,EAAO,KAAK,6BAA6B,EAGvC,OAAOO,EAAQ,UAAa,UAC9BP,EAAO,KAAK,2BAA2B,EAGlC,CAAE,MAAOA,EAAO,SAAW,EAAG,OAAAA,CAAA,CACvC,EAKA,yBAAyBO,EAAyE,CAChG,MAAMP,EAAmB,CAAA,EAEzB,OAAIO,EAAQ,WAAa,SACnB,OAAOA,EAAQ,UAAa,UAAYA,EAAQ,SAAW,IAC7DP,EAAO,KAAK,wCAAwC,EAIpDO,EAAQ,QAAU,SAChB,OAAOA,EAAQ,OAAU,UAAYA,EAAQ,MAAQ,IACvDP,EAAO,KAAK,qCAAqC,EAIjDO,EAAQ,SAAW,QACjB,OAAOA,EAAQ,QAAW,UAC5BP,EAAO,KAAK,yBAAyB,EAIlC,CAAE,MAAOA,EAAO,SAAW,EAAG,OAAAA,CAAA,CACvC,EAKA,6BAA6BO,EAAqE,CAChG,MAAMP,EAAmB,CAAA,EAiBzB,GAdKO,EAAQ,SACXP,EAAO,KAAK,2BAA2B,EAIvB,CAAC,UAAW,QAAS,SAAU,QAAS,UAAU,EAC1D,QAAQU,GAAO,CACvB,MAAMf,EAAQY,EAAQG,CAAG,EACrBf,GAAS,CAACD,EAAmB,0BAA0BC,CAAK,GAC9DK,EAAO,KAAK,WAAWU,CAAG,cAAc,CAE5C,CAAC,EAGGH,EAAQ,UAAW,CACrB,MAAMI,EAAsB,KAAK,yBAAyBJ,EAAQ,SAAS,EACtEI,EAAoB,OACvBX,EAAO,KAAK,GAAGW,EAAoB,OAAO,IAAIC,GAAO,cAAcA,CAAG,EAAE,CAAC,CAE7E,CAEA,MAAO,CAAE,MAAOZ,EAAO,SAAW,EAAG,OAAAA,CAAA,CACvC,EAKA,iBAAiBa,EAAoE,CACnF,GAAI,CAACnB,EAAmB,qBAAqBmB,CAAQ,EACnD,MAAO,CAAE,MAAO,GAAO,OAAQ,CAAC,uCAAuC,CAAA,EAGzE,OAAQA,EAAS,KAAA,CACf,IAAK,SACH,OAAO,KAAK,uBAAuBA,EAAS,OAAgC,EAC9E,IAAK,SACH,OAAO,KAAK,uBAAuBA,EAAS,OAAgC,EAC9E,IAAK,UACL,IAAK,QACH,OAAO,KAAK,wBAAwBA,EAAS,OAAiC,EAChF,QACE,MAAO,CAAE,MAAO,GAAO,OAAQ,CAAC,8BAA8BA,EAAS,IAAI,EAAE,CAAA,CAAE,CAErF,CACF,EAsBaC,EACXD,GACiC,CACjC,MAAMX,EAAaL,EAAmB,iBAAiBgB,CAAQ,EAC/D,GAAI,CAACX,EAAW,MACd,MAAM,IAAI,MAAM,qBAAqBA,EAAW,OAAO,KAAK,IAAI,CAAC,EAAE,EAErE,OAAOW,CACT,EAEaE,EACXR,GACmC,CACnC,MAAML,EAAaL,EAAmB,6BAA6BU,CAAO,EAC1E,GAAI,CAACL,EAAW,MACd,MAAM,IAAI,MAAM,2BAA2BA,EAAW,OAAO,KAAK,IAAI,CAAC,EAAE,EAE3E,OAAOK,CACT,EAKaS,EAAgB,CAI3B,oBAAoBH,EAAoC,CACtD,GAAI,QAAQ,IAAI,WAAa,cAAe,CAC1C,MAAMX,EAAaL,EAAmB,iBAAiBgB,CAAQ,EAC/D,GAAI,CAACX,EAAW,MACd,cAAQ,MAAM,oBAAqBW,CAAQ,EAC3C,QAAQ,MAAM,qBAAsBX,EAAW,MAAM,EAC/C,IAAI,MAAM,qBAAqBA,EAAW,OAAO,KAAK,IAAI,CAAC,EAAE,CAEvE,CACF,EAKA,mBAAmBW,EAAoC,CACjD,QAAQ,IAAI,WAAa,eAEvB,WAAYA,EAAS,SAAWA,EAAS,QAAQ,OAAO,OAAS,GACnE,QAAQ,KAAK,yDAA0DA,CAAQ,CAGrF,CACF"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enhanced TypeScript Support and Validation for TachUI Gradients
|
|
3
|
+
*
|
|
4
|
+
* Provides type guards, validation utilities, and enhanced TypeScript inference
|
|
5
|
+
* for gradient configurations.
|
|
6
|
+
*/
|
|
7
|
+
import type { Asset } from '../assets/types';
|
|
8
|
+
import type { GradientDefinition, LinearGradientOptions, RadialGradientOptions, AngularGradientOptions, StateGradientOptions, GradientAnimationOptions, StatefulBackgroundValue, GradientStartPoint, GradientCenter } from './types';
|
|
9
|
+
/**
|
|
10
|
+
* Enhanced type predicates for runtime type checking
|
|
11
|
+
*/
|
|
12
|
+
export declare const GradientTypeGuards: {
|
|
13
|
+
/**
|
|
14
|
+
* Check if value is a valid gradient definition
|
|
15
|
+
*/
|
|
16
|
+
readonly isGradientDefinition: (value: unknown) => value is GradientDefinition;
|
|
17
|
+
/**
|
|
18
|
+
* Check if value is a linear gradient
|
|
19
|
+
*/
|
|
20
|
+
readonly isLinearGradient: (value: unknown) => value is GradientDefinition & {
|
|
21
|
+
type: "linear";
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Check if value is a radial gradient
|
|
25
|
+
*/
|
|
26
|
+
readonly isRadialGradient: (value: unknown) => value is GradientDefinition & {
|
|
27
|
+
type: "radial";
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Check if value is an angular gradient
|
|
31
|
+
*/
|
|
32
|
+
readonly isAngularGradient: (value: unknown) => value is GradientDefinition & {
|
|
33
|
+
type: "angular";
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Check if value is a state gradient configuration
|
|
37
|
+
*/
|
|
38
|
+
readonly isStateGradientOptions: (value: unknown) => value is StateGradientOptions;
|
|
39
|
+
/**
|
|
40
|
+
* Check if value is a stateful background value
|
|
41
|
+
*/
|
|
42
|
+
readonly isStatefulBackgroundValue: (value: unknown) => value is StatefulBackgroundValue;
|
|
43
|
+
/**
|
|
44
|
+
* Check if value is an Asset
|
|
45
|
+
*/
|
|
46
|
+
readonly isAsset: (value: unknown) => value is Asset;
|
|
47
|
+
/**
|
|
48
|
+
* Check if value is a valid gradient start point
|
|
49
|
+
*/
|
|
50
|
+
readonly isGradientStartPoint: (value: unknown) => value is GradientStartPoint;
|
|
51
|
+
/**
|
|
52
|
+
* Check if value is a valid gradient center
|
|
53
|
+
*/
|
|
54
|
+
readonly isGradientCenter: (value: unknown) => value is GradientCenter;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Runtime validation functions
|
|
58
|
+
*/
|
|
59
|
+
export declare const GradientValidation: {
|
|
60
|
+
/**
|
|
61
|
+
* Validate color format (hex, rgb, rgba, hsl, hsla, named colors, CSS custom properties)
|
|
62
|
+
*/
|
|
63
|
+
readonly validateColor: (color: string | Asset) => {
|
|
64
|
+
valid: boolean;
|
|
65
|
+
error?: string;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Validate gradient colors array
|
|
69
|
+
*/
|
|
70
|
+
readonly validateColors: (colors: (string | Asset)[]) => {
|
|
71
|
+
valid: boolean;
|
|
72
|
+
errors: string[];
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Validate color stops array
|
|
76
|
+
*/
|
|
77
|
+
readonly validateStops: (stops: number[], colorsLength: number) => {
|
|
78
|
+
valid: boolean;
|
|
79
|
+
error?: string;
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Validate linear gradient options
|
|
83
|
+
*/
|
|
84
|
+
readonly validateLinearGradient: (options: LinearGradientOptions) => {
|
|
85
|
+
valid: boolean;
|
|
86
|
+
errors: string[];
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* Validate radial gradient options
|
|
90
|
+
*/
|
|
91
|
+
readonly validateRadialGradient: (options: RadialGradientOptions) => {
|
|
92
|
+
valid: boolean;
|
|
93
|
+
errors: string[];
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Validate angular gradient options
|
|
97
|
+
*/
|
|
98
|
+
readonly validateAngularGradient: (options: AngularGradientOptions) => {
|
|
99
|
+
valid: boolean;
|
|
100
|
+
errors: string[];
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Validate animation options
|
|
104
|
+
*/
|
|
105
|
+
readonly validateAnimationOptions: (options: GradientAnimationOptions) => {
|
|
106
|
+
valid: boolean;
|
|
107
|
+
errors: string[];
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* Validate state gradient options
|
|
111
|
+
*/
|
|
112
|
+
readonly validateStateGradientOptions: (options: StateGradientOptions) => {
|
|
113
|
+
valid: boolean;
|
|
114
|
+
errors: string[];
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* Comprehensive gradient validation
|
|
118
|
+
*/
|
|
119
|
+
readonly validateGradient: (gradient: GradientDefinition) => {
|
|
120
|
+
valid: boolean;
|
|
121
|
+
errors: string[];
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
/**
|
|
125
|
+
* Enhanced TypeScript utility types for better inference
|
|
126
|
+
*/
|
|
127
|
+
export type GradientPreset = () => GradientDefinition;
|
|
128
|
+
export type StateGradientPreset = () => StateGradientOptions;
|
|
129
|
+
/**
|
|
130
|
+
* Branded types for enhanced type safety
|
|
131
|
+
*/
|
|
132
|
+
export type ValidatedGradient<T extends GradientDefinition = GradientDefinition> = T & {
|
|
133
|
+
readonly __validated: true;
|
|
134
|
+
};
|
|
135
|
+
export type ValidatedStateGradient = StateGradientOptions & {
|
|
136
|
+
readonly __validated: true;
|
|
137
|
+
};
|
|
138
|
+
/**
|
|
139
|
+
* Validation wrapper functions that return branded types
|
|
140
|
+
*/
|
|
141
|
+
export declare const createValidatedGradient: <T extends GradientDefinition>(gradient: T) => ValidatedGradient<T> | never;
|
|
142
|
+
export declare const createValidatedStateGradient: (options: StateGradientOptions) => ValidatedStateGradient | never;
|
|
143
|
+
/**
|
|
144
|
+
* Development-time validation helpers
|
|
145
|
+
*/
|
|
146
|
+
export declare const DevValidation: {
|
|
147
|
+
/**
|
|
148
|
+
* Assert gradient is valid (throws in development, no-op in production)
|
|
149
|
+
*/
|
|
150
|
+
readonly assertValidGradient: (gradient: GradientDefinition) => void;
|
|
151
|
+
/**
|
|
152
|
+
* Warn about potential gradient issues
|
|
153
|
+
*/
|
|
154
|
+
readonly warnGradientIssues: (gradient: GradientDefinition) => void;
|
|
155
|
+
};
|
|
156
|
+
//# sourceMappingURL=validation.d.ts.map
|