@tachui/core 0.7.0-alpha1 → 0.7.1-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +195 -0
- package/dist/ScrollView-h-6wYMAm.js +515 -0
- package/dist/Spacer-BbteDQ9I.js +5337 -0
- package/dist/binding-CmdpowkI.js +2276 -0
- package/dist/bundles/minimal.d.ts +30 -4
- package/dist/bundles/minimal.d.ts.map +1 -1
- package/dist/common.js +825 -954
- package/dist/compiler/index.js +1386 -10
- package/dist/components/index.js +4166 -101
- package/dist/concatenated-component-DPcl2TEO.js +6779 -0
- package/dist/{runtime/context.js → context--zQFIImS.js} +65 -71
- package/dist/debug.js +0 -1
- package/dist/dom-bridge-Cx-s6Ihx.js +406 -0
- package/dist/effect-CytAc9em.js +66 -0
- package/dist/essential.js +825 -954
- package/dist/index-Nfi2SBQh.js +3268 -0
- package/dist/index.js +825 -954
- package/dist/minimal-prod.js +162 -191
- package/dist/minimal.js +183 -957
- package/dist/modifiers/responsive/index.d.ts +10 -9
- package/dist/modifiers/responsive/index.d.ts.map +1 -1
- package/dist/plugins/index.js +543 -32
- package/dist/reactive/index.js +490 -93
- package/dist/runtime/dom-bridge.js +12 -239
- package/dist/runtime/renderer.js +8 -388
- package/dist/scheduler-7SvC3a21.js +814 -0
- package/dist/validation/index.js +6614 -198
- package/dist/viewport/index.js +2002 -83
- package/package.json +3 -4
- package/dist/assets/Asset.cjs +0 -2
- package/dist/assets/Asset.cjs.map +0 -1
- package/dist/assets/Asset.js +0 -9
- package/dist/assets/Asset.js.map +0 -1
- package/dist/assets/AssetCollection.cjs +0 -2
- package/dist/assets/AssetCollection.cjs.map +0 -1
- package/dist/assets/AssetCollection.js +0 -44
- package/dist/assets/AssetCollection.js.map +0 -1
- package/dist/assets/ColorAsset.cjs +0 -2
- package/dist/assets/ColorAsset.cjs.map +0 -1
- package/dist/assets/ColorAsset.js +0 -114
- package/dist/assets/ColorAsset.js.map +0 -1
- package/dist/assets/FontAsset.cjs +0 -9
- package/dist/assets/FontAsset.cjs.map +0 -1
- package/dist/assets/FontAsset.js +0 -173
- package/dist/assets/FontAsset.js.map +0 -1
- package/dist/assets/ImageAsset.cjs +0 -2
- package/dist/assets/ImageAsset.cjs.map +0 -1
- package/dist/assets/ImageAsset.js +0 -39
- package/dist/assets/ImageAsset.js.map +0 -1
- package/dist/assets/index.cjs +0 -2
- package/dist/assets/index.cjs.map +0 -1
- package/dist/assets/index.js +0 -119
- package/dist/assets/index.js.map +0 -1
- package/dist/common.cjs +0 -2
- package/dist/common.cjs.map +0 -1
- package/dist/common.js.map +0 -1
- package/dist/compiler/advanced-parser.cjs +0 -5
- package/dist/compiler/advanced-parser.cjs.map +0 -1
- package/dist/compiler/advanced-parser.js +0 -440
- package/dist/compiler/advanced-parser.js.map +0 -1
- package/dist/compiler/codegen.cjs +0 -6
- package/dist/compiler/codegen.cjs.map +0 -1
- package/dist/compiler/codegen.js +0 -241
- package/dist/compiler/codegen.js.map +0 -1
- package/dist/compiler/enhanced-codegen.cjs +0 -6
- package/dist/compiler/enhanced-codegen.cjs.map +0 -1
- package/dist/compiler/enhanced-codegen.js +0 -347
- package/dist/compiler/enhanced-codegen.js.map +0 -1
- package/dist/compiler/index.cjs +0 -2
- package/dist/compiler/index.cjs.map +0 -1
- package/dist/compiler/index.js.map +0 -1
- package/dist/compiler/parser.cjs +0 -5
- package/dist/compiler/parser.cjs.map +0 -1
- package/dist/compiler/parser.js +0 -275
- package/dist/compiler/parser.js.map +0 -1
- package/dist/compiler/plugin.cjs +0 -33
- package/dist/compiler/plugin.cjs.map +0 -1
- package/dist/compiler/plugin.js +0 -103
- package/dist/compiler/plugin.js.map +0 -1
- package/dist/components/BasicInput.cjs +0 -2
- package/dist/components/BasicInput.cjs.map +0 -1
- package/dist/components/BasicInput.js +0 -182
- package/dist/components/BasicInput.js.map +0 -1
- package/dist/components/Button.cjs +0 -7
- package/dist/components/Button.cjs.map +0 -1
- package/dist/components/Button.js +0 -408
- package/dist/components/Button.js.map +0 -1
- package/dist/components/Divider.cjs +0 -2
- package/dist/components/Divider.cjs.map +0 -1
- package/dist/components/Divider.js +0 -187
- package/dist/components/Divider.js.map +0 -1
- package/dist/components/EnhancedLink.cjs +0 -2
- package/dist/components/EnhancedLink.cjs.map +0 -1
- package/dist/components/EnhancedLink.js +0 -345
- package/dist/components/EnhancedLink.js.map +0 -1
- package/dist/components/Form.cjs +0 -2
- package/dist/components/Form.cjs.map +0 -1
- package/dist/components/Form.js +0 -244
- package/dist/components/Form.js.map +0 -1
- package/dist/components/Grid.cjs +0 -2
- package/dist/components/Grid.cjs.map +0 -1
- package/dist/components/Grid.js +0 -1045
- package/dist/components/Grid.js.map +0 -1
- package/dist/components/GridResponsive.cjs +0 -2
- package/dist/components/GridResponsive.cjs.map +0 -1
- package/dist/components/GridResponsive.js +0 -382
- package/dist/components/GridResponsive.js.map +0 -1
- package/dist/components/Image.cjs +0 -2
- package/dist/components/Image.cjs.map +0 -1
- package/dist/components/Image.js +0 -212
- package/dist/components/Image.js.map +0 -1
- package/dist/components/List.cjs +0 -2
- package/dist/components/List.cjs.map +0 -1
- package/dist/components/List.js +0 -561
- package/dist/components/List.js.map +0 -1
- package/dist/components/Menu.cjs +0 -2
- package/dist/components/Menu.cjs.map +0 -1
- package/dist/components/Menu.js +0 -443
- package/dist/components/Menu.js.map +0 -1
- package/dist/components/Picker.cjs +0 -2
- package/dist/components/Picker.cjs.map +0 -1
- package/dist/components/Picker.js +0 -478
- package/dist/components/Picker.js.map +0 -1
- package/dist/components/ScrollView.cjs +0 -6
- package/dist/components/ScrollView.cjs.map +0 -1
- package/dist/components/ScrollView.js +0 -363
- package/dist/components/ScrollView.js.map +0 -1
- package/dist/components/Section.cjs +0 -2
- package/dist/components/Section.cjs.map +0 -1
- package/dist/components/Section.js +0 -323
- package/dist/components/Section.js.map +0 -1
- package/dist/components/Show.cjs +0 -2
- package/dist/components/Show.cjs.map +0 -1
- package/dist/components/Show.js +0 -112
- package/dist/components/Show.js.map +0 -1
- package/dist/components/Spacer.cjs +0 -2
- package/dist/components/Spacer.cjs.map +0 -1
- package/dist/components/Spacer.js +0 -53
- package/dist/components/Spacer.js.map +0 -1
- package/dist/components/Text.cjs +0 -2
- package/dist/components/Text.cjs.map +0 -1
- package/dist/components/Text.js +0 -193
- package/dist/components/Text.js.map +0 -1
- package/dist/components/Toggle.cjs +0 -2
- package/dist/components/Toggle.cjs.map +0 -1
- package/dist/components/Toggle.js +0 -477
- package/dist/components/Toggle.js.map +0 -1
- package/dist/components/index.cjs +0 -2
- package/dist/components/index.cjs.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/wrapper.cjs +0 -2
- package/dist/components/wrapper.cjs.map +0 -1
- package/dist/components/wrapper.js +0 -484
- package/dist/components/wrapper.js.map +0 -1
- package/dist/concatenation/concatenatable.cjs +0 -2
- package/dist/concatenation/concatenatable.cjs.map +0 -1
- package/dist/concatenation/concatenatable.js +0 -118
- package/dist/concatenation/concatenatable.js.map +0 -1
- package/dist/concatenation/concatenated-component.cjs +0 -2
- package/dist/concatenation/concatenated-component.cjs.map +0 -1
- package/dist/concatenation/concatenated-component.js +0 -276
- package/dist/concatenation/concatenated-component.js.map +0 -1
- package/dist/concatenation/text-optimizer.cjs +0 -2
- package/dist/concatenation/text-optimizer.cjs.map +0 -1
- package/dist/concatenation/text-optimizer.js +0 -236
- package/dist/concatenation/text-optimizer.js.map +0 -1
- package/dist/concatenation/types.cjs +0 -2
- package/dist/concatenation/types.cjs.map +0 -1
- package/dist/concatenation/types.js +0 -13
- package/dist/concatenation/types.js.map +0 -1
- package/dist/constants/frame-utils.cjs +0 -2
- package/dist/constants/frame-utils.cjs.map +0 -1
- package/dist/constants/frame-utils.js +0 -116
- package/dist/constants/frame-utils.js.map +0 -1
- package/dist/constants/layout.cjs +0 -2
- package/dist/constants/layout.cjs.map +0 -1
- package/dist/constants/layout.js +0 -46
- package/dist/constants/layout.js.map +0 -1
- package/dist/css-classes/component-base.cjs +0 -2
- package/dist/css-classes/component-base.cjs.map +0 -1
- package/dist/css-classes/component-base.js +0 -62
- package/dist/css-classes/component-base.js.map +0 -1
- package/dist/css-classes/css-class-manager.cjs +0 -2
- package/dist/css-classes/css-class-manager.cjs.map +0 -1
- package/dist/css-classes/css-class-manager.js +0 -209
- package/dist/css-classes/css-class-manager.js.map +0 -1
- package/dist/css-classes/dom-integration.cjs +0 -2
- package/dist/css-classes/dom-integration.cjs.map +0 -1
- package/dist/css-classes/dom-integration.js +0 -67
- package/dist/css-classes/dom-integration.js.map +0 -1
- package/dist/css-classes/enhanced-renderer.cjs +0 -2
- package/dist/css-classes/enhanced-renderer.cjs.map +0 -1
- package/dist/css-classes/enhanced-renderer.js +0 -73
- package/dist/css-classes/enhanced-renderer.js.map +0 -1
- package/dist/css-classes/utilities.cjs +0 -2
- package/dist/css-classes/utilities.cjs.map +0 -1
- package/dist/css-classes/utilities.js +0 -41
- package/dist/css-classes/utilities.js.map +0 -1
- package/dist/debug.cjs +0 -52
- package/dist/debug.cjs.map +0 -1
- package/dist/debug.js.map +0 -1
- package/dist/essential.cjs +0 -2
- package/dist/essential.cjs.map +0 -1
- package/dist/essential.js.map +0 -1
- package/dist/gradients/css-generator.cjs +0 -2
- package/dist/gradients/css-generator.cjs.map +0 -1
- package/dist/gradients/css-generator.js +0 -100
- package/dist/gradients/css-generator.js.map +0 -1
- package/dist/gradients/examples.cjs +0 -2
- package/dist/gradients/examples.cjs.map +0 -1
- package/dist/gradients/examples.js +0 -555
- package/dist/gradients/examples.js.map +0 -1
- package/dist/gradients/gradient-asset.cjs +0 -2
- package/dist/gradients/gradient-asset.cjs.map +0 -1
- package/dist/gradients/gradient-asset.js +0 -22
- package/dist/gradients/gradient-asset.js.map +0 -1
- package/dist/gradients/index.cjs +0 -2
- package/dist/gradients/index.cjs.map +0 -1
- package/dist/gradients/index.js +0 -78
- package/dist/gradients/index.js.map +0 -1
- package/dist/gradients/performance.cjs +0 -2
- package/dist/gradients/performance.cjs.map +0 -1
- package/dist/gradients/performance.js +0 -237
- package/dist/gradients/performance.js.map +0 -1
- package/dist/gradients/presets.cjs +0 -2
- package/dist/gradients/presets.cjs.map +0 -1
- package/dist/gradients/presets.js +0 -254
- package/dist/gradients/presets.js.map +0 -1
- package/dist/gradients/reactive.cjs +0 -2
- package/dist/gradients/reactive.cjs.map +0 -1
- package/dist/gradients/reactive.js +0 -239
- package/dist/gradients/reactive.js.map +0 -1
- package/dist/gradients/state-gradient-asset.cjs +0 -2
- package/dist/gradients/state-gradient-asset.cjs.map +0 -1
- package/dist/gradients/state-gradient-asset.js +0 -111
- package/dist/gradients/state-gradient-asset.js.map +0 -1
- package/dist/gradients/utils.cjs +0 -2
- package/dist/gradients/utils.cjs.map +0 -1
- package/dist/gradients/utils.js +0 -385
- package/dist/gradients/utils.js.map +0 -1
- package/dist/gradients/validation.cjs +0 -2
- package/dist/gradients/validation.cjs.map +0 -1
- package/dist/gradients/validation.js +0 -209
- package/dist/gradients/validation.js.map +0 -1
- package/dist/index.cjs +0 -2
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index2.cjs +0 -2
- package/dist/index2.cjs.map +0 -1
- package/dist/index2.js +0 -293
- package/dist/index2.js.map +0 -1
- package/dist/lifecycle/hooks.cjs +0 -2
- package/dist/lifecycle/hooks.cjs.map +0 -1
- package/dist/lifecycle/hooks.js +0 -159
- package/dist/lifecycle/hooks.js.map +0 -1
- package/dist/minimal-prod.cjs +0 -2
- package/dist/minimal-prod.cjs.map +0 -1
- package/dist/minimal-prod.js.map +0 -1
- package/dist/minimal.cjs +0 -2
- package/dist/minimal.cjs.map +0 -1
- package/dist/minimal.js.map +0 -1
- package/dist/modifiers/as-html-validator.cjs +0 -2
- package/dist/modifiers/as-html-validator.cjs.map +0 -1
- package/dist/modifiers/as-html-validator.js +0 -47
- package/dist/modifiers/as-html-validator.js.map +0 -1
- package/dist/modifiers/as-html.cjs +0 -2
- package/dist/modifiers/as-html.cjs.map +0 -1
- package/dist/modifiers/as-html.js +0 -71
- package/dist/modifiers/as-html.js.map +0 -1
- package/dist/modifiers/attributes.cjs +0 -2
- package/dist/modifiers/attributes.cjs.map +0 -1
- package/dist/modifiers/attributes.js +0 -272
- package/dist/modifiers/attributes.js.map +0 -1
- package/dist/modifiers/backdrop.cjs +0 -2
- package/dist/modifiers/backdrop.cjs.map +0 -1
- package/dist/modifiers/backdrop.js +0 -109
- package/dist/modifiers/backdrop.js.map +0 -1
- package/dist/modifiers/background.cjs +0 -2
- package/dist/modifiers/background.cjs.map +0 -1
- package/dist/modifiers/background.js +0 -67
- package/dist/modifiers/background.js.map +0 -1
- package/dist/modifiers/base.cjs +0 -25
- package/dist/modifiers/base.cjs.map +0 -1
- package/dist/modifiers/base.js +0 -745
- package/dist/modifiers/base.js.map +0 -1
- package/dist/modifiers/basic-sanitizer.cjs +0 -2
- package/dist/modifiers/basic-sanitizer.cjs.map +0 -1
- package/dist/modifiers/basic-sanitizer.js +0 -162
- package/dist/modifiers/basic-sanitizer.js.map +0 -1
- package/dist/modifiers/border.cjs +0 -2
- package/dist/modifiers/border.cjs.map +0 -1
- package/dist/modifiers/border.js +0 -160
- package/dist/modifiers/border.js.map +0 -1
- package/dist/modifiers/builder.cjs +0 -2
- package/dist/modifiers/builder.cjs.map +0 -1
- package/dist/modifiers/builder.js +0 -930
- package/dist/modifiers/builder.js.map +0 -1
- package/dist/modifiers/core.cjs +0 -2
- package/dist/modifiers/core.cjs.map +0 -1
- package/dist/modifiers/core.js +0 -398
- package/dist/modifiers/core.js.map +0 -1
- package/dist/modifiers/css.cjs +0 -2
- package/dist/modifiers/css.cjs.map +0 -1
- package/dist/modifiers/css.js +0 -50
- package/dist/modifiers/css.js.map +0 -1
- package/dist/modifiers/effects.cjs +0 -2
- package/dist/modifiers/effects.cjs.map +0 -1
- package/dist/modifiers/effects.js +0 -178
- package/dist/modifiers/effects.js.map +0 -1
- package/dist/modifiers/elements.cjs +0 -2
- package/dist/modifiers/elements.cjs.map +0 -1
- package/dist/modifiers/elements.js +0 -216
- package/dist/modifiers/elements.js.map +0 -1
- package/dist/modifiers/filters.cjs +0 -2
- package/dist/modifiers/filters.cjs.map +0 -1
- package/dist/modifiers/filters.js +0 -223
- package/dist/modifiers/filters.js.map +0 -1
- package/dist/modifiers/flexbox.cjs +0 -2
- package/dist/modifiers/flexbox.cjs.map +0 -1
- package/dist/modifiers/flexbox.js +0 -56
- package/dist/modifiers/flexbox.js.map +0 -1
- package/dist/modifiers/font.cjs +0 -2
- package/dist/modifiers/font.cjs.map +0 -1
- package/dist/modifiers/font.js +0 -60
- package/dist/modifiers/font.js.map +0 -1
- package/dist/modifiers/grid.cjs +0 -2
- package/dist/modifiers/grid.cjs.map +0 -1
- package/dist/modifiers/grid.js +0 -92
- package/dist/modifiers/grid.js.map +0 -1
- package/dist/modifiers/margin.cjs +0 -2
- package/dist/modifiers/margin.cjs.map +0 -1
- package/dist/modifiers/margin.js +0 -65
- package/dist/modifiers/margin.js.map +0 -1
- package/dist/modifiers/padding.cjs +0 -2
- package/dist/modifiers/padding.cjs.map +0 -1
- package/dist/modifiers/padding.js +0 -109
- package/dist/modifiers/padding.js.map +0 -1
- package/dist/modifiers/registry.cjs +0 -2
- package/dist/modifiers/registry.cjs.map +0 -1
- package/dist/modifiers/registry.js +0 -163
- package/dist/modifiers/registry.js.map +0 -1
- package/dist/modifiers/responsive/advanced-utilities.cjs +0 -2
- package/dist/modifiers/responsive/advanced-utilities.cjs.map +0 -1
- package/dist/modifiers/responsive/advanced-utilities.js +0 -291
- package/dist/modifiers/responsive/advanced-utilities.js.map +0 -1
- package/dist/modifiers/responsive/breakpoints.cjs +0 -2
- package/dist/modifiers/responsive/breakpoints.cjs.map +0 -1
- package/dist/modifiers/responsive/breakpoints.js +0 -168
- package/dist/modifiers/responsive/breakpoints.js.map +0 -1
- package/dist/modifiers/responsive/css-generator.cjs +0 -5
- package/dist/modifiers/responsive/css-generator.cjs.map +0 -1
- package/dist/modifiers/responsive/css-generator.js +0 -261
- package/dist/modifiers/responsive/css-generator.js.map +0 -1
- package/dist/modifiers/responsive/dev-tools.cjs +0 -77
- package/dist/modifiers/responsive/dev-tools.cjs.map +0 -1
- package/dist/modifiers/responsive/dev-tools.js +0 -380
- package/dist/modifiers/responsive/dev-tools.js.map +0 -1
- package/dist/modifiers/responsive/layout-patterns.cjs +0 -2
- package/dist/modifiers/responsive/layout-patterns.cjs.map +0 -1
- package/dist/modifiers/responsive/layout-patterns.js +0 -254
- package/dist/modifiers/responsive/layout-patterns.js.map +0 -1
- package/dist/modifiers/responsive/performance.cjs +0 -3
- package/dist/modifiers/responsive/performance.cjs.map +0 -1
- package/dist/modifiers/responsive/performance.js +0 -212
- package/dist/modifiers/responsive/performance.js.map +0 -1
- package/dist/modifiers/responsive/responsive-builder.cjs +0 -2
- package/dist/modifiers/responsive/responsive-builder.cjs.map +0 -1
- package/dist/modifiers/responsive/responsive-builder.js +0 -272
- package/dist/modifiers/responsive/responsive-builder.js.map +0 -1
- package/dist/modifiers/responsive/responsive-modifier.cjs +0 -3
- package/dist/modifiers/responsive/responsive-modifier.cjs.map +0 -1
- package/dist/modifiers/responsive/responsive-modifier.js +0 -204
- package/dist/modifiers/responsive/responsive-modifier.js.map +0 -1
- package/dist/modifiers/responsive/types.cjs +0 -2
- package/dist/modifiers/responsive/types.cjs.map +0 -1
- package/dist/modifiers/responsive/types.js +0 -26
- package/dist/modifiers/responsive/types.js.map +0 -1
- package/dist/modifiers/responsive/utilities.cjs +0 -16
- package/dist/modifiers/responsive/utilities.cjs.map +0 -1
- package/dist/modifiers/responsive/utilities.js +0 -273
- package/dist/modifiers/responsive/utilities.js.map +0 -1
- package/dist/modifiers/scroll.cjs +0 -2
- package/dist/modifiers/scroll.cjs.map +0 -1
- package/dist/modifiers/scroll.js +0 -82
- package/dist/modifiers/scroll.js.map +0 -1
- package/dist/modifiers/shadows.cjs +0 -2
- package/dist/modifiers/shadows.cjs.map +0 -1
- package/dist/modifiers/shadows.js +0 -147
- package/dist/modifiers/shadows.js.map +0 -1
- package/dist/modifiers/size.cjs +0 -2
- package/dist/modifiers/size.cjs.map +0 -1
- package/dist/modifiers/size.js +0 -74
- package/dist/modifiers/size.js.map +0 -1
- package/dist/modifiers/text.cjs +0 -2
- package/dist/modifiers/text.cjs.map +0 -1
- package/dist/modifiers/text.js +0 -166
- package/dist/modifiers/text.js.map +0 -1
- package/dist/modifiers/transformations.cjs +0 -2
- package/dist/modifiers/transformations.cjs.map +0 -1
- package/dist/modifiers/transformations.js +0 -216
- package/dist/modifiers/transformations.js.map +0 -1
- package/dist/modifiers/transitions.cjs +0 -2
- package/dist/modifiers/transitions.cjs.map +0 -1
- package/dist/modifiers/transitions.js +0 -102
- package/dist/modifiers/transitions.js.map +0 -1
- package/dist/modifiers/types.cjs +0 -2
- package/dist/modifiers/types.cjs.map +0 -1
- package/dist/modifiers/types.js +0 -5
- package/dist/modifiers/types.js.map +0 -1
- package/dist/modifiers/typography.cjs +0 -2
- package/dist/modifiers/typography.cjs.map +0 -1
- package/dist/modifiers/typography.js +0 -76
- package/dist/modifiers/typography.js.map +0 -1
- package/dist/modifiers/utility.cjs +0 -2
- package/dist/modifiers/utility.cjs.map +0 -1
- package/dist/modifiers/utility.js +0 -71
- package/dist/modifiers/utility.js.map +0 -1
- package/dist/modifiers/utils.cjs +0 -2
- package/dist/modifiers/utils.cjs.map +0 -1
- package/dist/modifiers/utils.js +0 -250
- package/dist/modifiers/utils.js.map +0 -1
- package/dist/plugins/index.cjs +0 -2
- package/dist/plugins/index.cjs.map +0 -1
- package/dist/plugins/index.js.map +0 -1
- package/dist/plugins/legacy-adapter.cjs +0 -2
- package/dist/plugins/legacy-adapter.cjs.map +0 -1
- package/dist/plugins/legacy-adapter.js +0 -30
- package/dist/plugins/legacy-adapter.js.map +0 -1
- package/dist/plugins/simplified-component-registry.cjs +0 -2
- package/dist/plugins/simplified-component-registry.cjs.map +0 -1
- package/dist/plugins/simplified-component-registry.js +0 -71
- package/dist/plugins/simplified-component-registry.js.map +0 -1
- package/dist/plugins/simplified-error-handler.cjs +0 -2
- package/dist/plugins/simplified-error-handler.cjs.map +0 -1
- package/dist/plugins/simplified-error-handler.js +0 -154
- package/dist/plugins/simplified-error-handler.js.map +0 -1
- package/dist/plugins/simplified-lazy-loader.cjs +0 -2
- package/dist/plugins/simplified-lazy-loader.cjs.map +0 -1
- package/dist/plugins/simplified-lazy-loader.js +0 -129
- package/dist/plugins/simplified-lazy-loader.js.map +0 -1
- package/dist/plugins/simplified-plugin-manager.cjs +0 -2
- package/dist/plugins/simplified-plugin-manager.cjs.map +0 -1
- package/dist/plugins/simplified-plugin-manager.js +0 -51
- package/dist/plugins/simplified-plugin-manager.js.map +0 -1
- package/dist/plugins/simplified-tachui-instance.cjs +0 -2
- package/dist/plugins/simplified-tachui-instance.cjs.map +0 -1
- package/dist/plugins/simplified-tachui-instance.js +0 -88
- package/dist/plugins/simplified-tachui-instance.js.map +0 -1
- package/dist/plugins/simplified-types.cjs +0 -2
- package/dist/plugins/simplified-types.cjs.map +0 -1
- package/dist/plugins/simplified-types.js +0 -9
- package/dist/plugins/simplified-types.js.map +0 -1
- package/dist/plugins/simplified-utils.cjs +0 -2
- package/dist/plugins/simplified-utils.cjs.map +0 -1
- package/dist/plugins/simplified-utils.js +0 -40
- package/dist/plugins/simplified-utils.js.map +0 -1
- package/dist/reactive/cleanup.cjs +0 -2
- package/dist/reactive/cleanup.cjs.map +0 -1
- package/dist/reactive/cleanup.js +0 -62
- package/dist/reactive/cleanup.js.map +0 -1
- package/dist/reactive/computed.cjs +0 -2
- package/dist/reactive/computed.cjs.map +0 -1
- package/dist/reactive/computed.js +0 -121
- package/dist/reactive/computed.js.map +0 -1
- package/dist/reactive/context.cjs +0 -2
- package/dist/reactive/context.cjs.map +0 -1
- package/dist/reactive/context.js +0 -143
- package/dist/reactive/context.js.map +0 -1
- package/dist/reactive/effect.cjs +0 -2
- package/dist/reactive/effect.cjs.map +0 -1
- package/dist/reactive/effect.js +0 -67
- package/dist/reactive/effect.js.map +0 -1
- package/dist/reactive/enhanced-effect.cjs +0 -2
- package/dist/reactive/enhanced-effect.cjs.map +0 -1
- package/dist/reactive/enhanced-effect.js +0 -153
- package/dist/reactive/enhanced-effect.js.map +0 -1
- package/dist/reactive/enhanced-signal.cjs +0 -2
- package/dist/reactive/enhanced-signal.cjs.map +0 -1
- package/dist/reactive/enhanced-signal.js +0 -117
- package/dist/reactive/enhanced-signal.js.map +0 -1
- package/dist/reactive/equality.cjs +0 -2
- package/dist/reactive/equality.cjs.map +0 -1
- package/dist/reactive/equality.js +0 -66
- package/dist/reactive/equality.js.map +0 -1
- package/dist/reactive/index.cjs +0 -2
- package/dist/reactive/index.cjs.map +0 -1
- package/dist/reactive/index.js.map +0 -1
- package/dist/reactive/migration.cjs +0 -18
- package/dist/reactive/migration.cjs.map +0 -1
- package/dist/reactive/migration.js +0 -164
- package/dist/reactive/migration.js.map +0 -1
- package/dist/reactive/ownership.cjs +0 -2
- package/dist/reactive/ownership.cjs.map +0 -1
- package/dist/reactive/ownership.js +0 -34
- package/dist/reactive/ownership.js.map +0 -1
- package/dist/reactive/scheduler.cjs +0 -2
- package/dist/reactive/scheduler.cjs.map +0 -1
- package/dist/reactive/scheduler.js +0 -111
- package/dist/reactive/scheduler.js.map +0 -1
- package/dist/reactive/signal.cjs +0 -2
- package/dist/reactive/signal.cjs.map +0 -1
- package/dist/reactive/signal.js +0 -96
- package/dist/reactive/signal.js.map +0 -1
- package/dist/reactive/theme.cjs +0 -2
- package/dist/reactive/theme.cjs.map +0 -1
- package/dist/reactive/theme.js +0 -27
- package/dist/reactive/theme.js.map +0 -1
- package/dist/reactive/types.cjs +0 -2
- package/dist/reactive/types.cjs.map +0 -1
- package/dist/reactive/types.js +0 -5
- package/dist/reactive/types.js.map +0 -1
- package/dist/reactive/unified-scheduler.cjs +0 -2
- package/dist/reactive/unified-scheduler.cjs.map +0 -1
- package/dist/reactive/unified-scheduler.js +0 -219
- package/dist/reactive/unified-scheduler.js.map +0 -1
- package/dist/runtime/component-context.cjs +0 -2
- package/dist/runtime/component-context.cjs.map +0 -1
- package/dist/runtime/component-context.js +0 -177
- package/dist/runtime/component-context.js.map +0 -1
- package/dist/runtime/component.cjs +0 -2
- package/dist/runtime/component.cjs.map +0 -1
- package/dist/runtime/component.js +0 -238
- package/dist/runtime/component.js.map +0 -1
- package/dist/runtime/context.cjs +0 -2
- package/dist/runtime/context.cjs.map +0 -1
- package/dist/runtime/context.js.map +0 -1
- package/dist/runtime/dev-tools.cjs +0 -2
- package/dist/runtime/dev-tools.cjs.map +0 -1
- package/dist/runtime/dev-tools.js +0 -391
- package/dist/runtime/dev-tools.js.map +0 -1
- package/dist/runtime/development-warnings.cjs +0 -2
- package/dist/runtime/development-warnings.cjs.map +0 -1
- package/dist/runtime/development-warnings.js +0 -69
- package/dist/runtime/development-warnings.js.map +0 -1
- package/dist/runtime/dom-bridge.cjs +0 -2
- package/dist/runtime/dom-bridge.cjs.map +0 -1
- package/dist/runtime/dom-bridge.js.map +0 -1
- package/dist/runtime/element-override.cjs +0 -2
- package/dist/runtime/element-override.cjs.map +0 -1
- package/dist/runtime/element-override.js +0 -214
- package/dist/runtime/element-override.js.map +0 -1
- package/dist/runtime/error-boundary.cjs +0 -2
- package/dist/runtime/error-boundary.cjs.map +0 -1
- package/dist/runtime/error-boundary.js +0 -559
- package/dist/runtime/error-boundary.js.map +0 -1
- package/dist/runtime/error-recovery.cjs +0 -2
- package/dist/runtime/error-recovery.cjs.map +0 -1
- package/dist/runtime/error-recovery.js +0 -385
- package/dist/runtime/error-recovery.js.map +0 -1
- package/dist/runtime/error-reporting.cjs +0 -3
- package/dist/runtime/error-reporting.cjs.map +0 -1
- package/dist/runtime/error-reporting.js +0 -479
- package/dist/runtime/error-reporting.js.map +0 -1
- package/dist/runtime/error-utils.cjs +0 -3
- package/dist/runtime/error-utils.cjs.map +0 -1
- package/dist/runtime/error-utils.js +0 -352
- package/dist/runtime/error-utils.js.map +0 -1
- package/dist/runtime/lazy-component.cjs +0 -2
- package/dist/runtime/lazy-component.cjs.map +0 -1
- package/dist/runtime/lazy-component.js +0 -129
- package/dist/runtime/lazy-component.js.map +0 -1
- package/dist/runtime/lifecycle.cjs +0 -2
- package/dist/runtime/lifecycle.cjs.map +0 -1
- package/dist/runtime/lifecycle.js +0 -7
- package/dist/runtime/lifecycle.js.map +0 -1
- package/dist/runtime/mounting.cjs +0 -2
- package/dist/runtime/mounting.cjs.map +0 -1
- package/dist/runtime/mounting.js +0 -12
- package/dist/runtime/mounting.js.map +0 -1
- package/dist/runtime/optimization.cjs +0 -2
- package/dist/runtime/optimization.cjs.map +0 -1
- package/dist/runtime/optimization.js +0 -6
- package/dist/runtime/optimization.js.map +0 -1
- package/dist/runtime/performance.cjs +0 -2
- package/dist/runtime/performance.cjs.map +0 -1
- package/dist/runtime/performance.js +0 -399
- package/dist/runtime/performance.js.map +0 -1
- package/dist/runtime/props.cjs +0 -2
- package/dist/runtime/props.cjs.map +0 -1
- package/dist/runtime/props.js +0 -265
- package/dist/runtime/props.js.map +0 -1
- package/dist/runtime/renderer.cjs +0 -2
- package/dist/runtime/renderer.cjs.map +0 -1
- package/dist/runtime/renderer.js.map +0 -1
- package/dist/runtime/semantic-role-manager.cjs +0 -2
- package/dist/runtime/semantic-role-manager.cjs.map +0 -1
- package/dist/runtime/semantic-role-manager.js +0 -82
- package/dist/runtime/semantic-role-manager.js.map +0 -1
- package/dist/state/binding.cjs +0 -2
- package/dist/state/binding.cjs.map +0 -1
- package/dist/state/binding.js +0 -155
- package/dist/state/binding.js.map +0 -1
- package/dist/state/environment.cjs +0 -2
- package/dist/state/environment.cjs.map +0 -1
- package/dist/state/environment.js +0 -115
- package/dist/state/environment.js.map +0 -1
- package/dist/state/index.cjs +0 -2
- package/dist/state/index.cjs.map +0 -1
- package/dist/state/index.js +0 -63
- package/dist/state/index.js.map +0 -1
- package/dist/state/observed-object.cjs +0 -2
- package/dist/state/observed-object.cjs.map +0 -1
- package/dist/state/observed-object.js +0 -163
- package/dist/state/observed-object.js.map +0 -1
- package/dist/state/state-manager.cjs +0 -2
- package/dist/state/state-manager.cjs.map +0 -1
- package/dist/state/state-manager.js +0 -233
- package/dist/state/state-manager.js.map +0 -1
- package/dist/state/state.cjs +0 -2
- package/dist/state/state.cjs.map +0 -1
- package/dist/state/state.js +0 -159
- package/dist/state/state.js.map +0 -1
- package/dist/sui-compat.cjs +0 -2
- package/dist/sui-compat.cjs.map +0 -1
- package/dist/sui-compat.js +0 -88
- package/dist/sui-compat.js.map +0 -1
- package/dist/validation/advanced-debugging.cjs +0 -44
- package/dist/validation/advanced-debugging.cjs.map +0 -1
- package/dist/validation/advanced-debugging.js +0 -455
- package/dist/validation/advanced-debugging.js.map +0 -1
- package/dist/validation/build-time/detection.cjs +0 -2
- package/dist/validation/build-time/detection.cjs.map +0 -1
- package/dist/validation/build-time/detection.js +0 -199
- package/dist/validation/build-time/detection.js.map +0 -1
- package/dist/validation/build-time/index.cjs +0 -2
- package/dist/validation/build-time/index.cjs.map +0 -1
- package/dist/validation/build-time/index.js +0 -122
- package/dist/validation/build-time/index.js.map +0 -1
- package/dist/validation/build-time/plugins.cjs +0 -3
- package/dist/validation/build-time/plugins.cjs.map +0 -1
- package/dist/validation/build-time/plugins.js +0 -282
- package/dist/validation/build-time/plugins.js.map +0 -1
- package/dist/validation/build-time/rules.cjs +0 -2
- package/dist/validation/build-time/rules.cjs.map +0 -1
- package/dist/validation/build-time/rules.js +0 -576
- package/dist/validation/build-time/rules.js.map +0 -1
- package/dist/validation/build-time/transformer.cjs +0 -3
- package/dist/validation/build-time/transformer.cjs.map +0 -1
- package/dist/validation/build-time/transformer.js +0 -177
- package/dist/validation/build-time/transformer.js.map +0 -1
- package/dist/validation/comprehensive.cjs +0 -9
- package/dist/validation/comprehensive.cjs.map +0 -1
- package/dist/validation/comprehensive.js +0 -916
- package/dist/validation/comprehensive.js.map +0 -1
- package/dist/validation/debug-tools.cjs +0 -16
- package/dist/validation/debug-tools.cjs.map +0 -1
- package/dist/validation/debug-tools.js +0 -405
- package/dist/validation/debug-tools.js.map +0 -1
- package/dist/validation/developer-experience.cjs +0 -17
- package/dist/validation/developer-experience.cjs.map +0 -1
- package/dist/validation/developer-experience.js +0 -433
- package/dist/validation/developer-experience.js.map +0 -1
- package/dist/validation/documentation-integration.cjs +0 -7
- package/dist/validation/documentation-integration.cjs.map +0 -1
- package/dist/validation/documentation-integration.js +0 -440
- package/dist/validation/documentation-integration.js.map +0 -1
- package/dist/validation/enhanced-runtime.cjs +0 -6
- package/dist/validation/enhanced-runtime.cjs.map +0 -1
- package/dist/validation/enhanced-runtime.js +0 -465
- package/dist/validation/enhanced-runtime.js.map +0 -1
- package/dist/validation/error-reporting.cjs +0 -32
- package/dist/validation/error-reporting.cjs.map +0 -1
- package/dist/validation/error-reporting.js +0 -370
- package/dist/validation/error-reporting.js.map +0 -1
- package/dist/validation/ide-integration.cjs +0 -85
- package/dist/validation/ide-integration.cjs.map +0 -1
- package/dist/validation/ide-integration.js +0 -557
- package/dist/validation/ide-integration.js.map +0 -1
- package/dist/validation/index.cjs +0 -6
- package/dist/validation/index.cjs.map +0 -1
- package/dist/validation/index.js.map +0 -1
- package/dist/validation/lifecycle-validation.cjs +0 -2
- package/dist/validation/lifecycle-validation.cjs.map +0 -1
- package/dist/validation/lifecycle-validation.js +0 -314
- package/dist/validation/lifecycle-validation.js.map +0 -1
- package/dist/validation/performance-optimizer.cjs +0 -2
- package/dist/validation/performance-optimizer.cjs.map +0 -1
- package/dist/validation/performance-optimizer.js +0 -338
- package/dist/validation/performance-optimizer.js.map +0 -1
- package/dist/validation/plugin-registration.cjs +0 -2
- package/dist/validation/plugin-registration.cjs.map +0 -1
- package/dist/validation/plugin-registration.js +0 -126
- package/dist/validation/plugin-registration.js.map +0 -1
- package/dist/validation/production-bypass.cjs +0 -2
- package/dist/validation/production-bypass.cjs.map +0 -1
- package/dist/validation/production-bypass.js +0 -218
- package/dist/validation/production-bypass.js.map +0 -1
- package/dist/validation/simple.cjs +0 -9
- package/dist/validation/simple.cjs.map +0 -1
- package/dist/validation/simple.js +0 -146
- package/dist/validation/simple.js.map +0 -1
- package/dist/viewport/adapters/web-adapter.cjs +0 -70
- package/dist/viewport/adapters/web-adapter.cjs.map +0 -1
- package/dist/viewport/adapters/web-adapter.js +0 -823
- package/dist/viewport/adapters/web-adapter.js.map +0 -1
- package/dist/viewport/components.cjs +0 -2
- package/dist/viewport/components.cjs.map +0 -1
- package/dist/viewport/components.js +0 -298
- package/dist/viewport/components.js.map +0 -1
- package/dist/viewport/environment.cjs +0 -2
- package/dist/viewport/environment.cjs.map +0 -1
- package/dist/viewport/environment.js +0 -86
- package/dist/viewport/environment.js.map +0 -1
- package/dist/viewport/index.cjs +0 -2
- package/dist/viewport/index.cjs.map +0 -1
- package/dist/viewport/index.js.map +0 -1
- package/dist/viewport/platform-detection.cjs +0 -2
- package/dist/viewport/platform-detection.cjs.map +0 -1
- package/dist/viewport/platform-detection.js +0 -205
- package/dist/viewport/platform-detection.js.map +0 -1
- package/dist/viewport/types.cjs +0 -2
- package/dist/viewport/types.cjs.map +0 -1
- package/dist/viewport/types.js +0 -13
- package/dist/viewport/types.js.map +0 -1
- package/dist/viewport/viewport-manager.cjs +0 -2
- package/dist/viewport/viewport-manager.cjs.map +0 -1
- package/dist/viewport/viewport-manager.js +0 -524
- package/dist/viewport/viewport-manager.js.map +0 -1
- package/src/assets/Asset.ts +0 -11
- package/src/assets/AssetCollection.ts +0 -99
- package/src/assets/ColorAsset.ts +0 -210
- package/src/assets/FontAsset.ts +0 -380
- package/src/assets/ImageAsset.ts +0 -91
- package/src/assets/README.md +0 -190
- package/src/assets/index.ts +0 -175
- package/src/assets/test-assets.ts +0 -69
- package/src/assets/test-integration.ts +0 -46
- package/src/assets/test-simple.ts +0 -28
- package/src/assets/types.ts +0 -79
- package/src/bundles/common.ts +0 -30
- package/src/bundles/complete.ts +0 -29
- package/src/bundles/essential.ts +0 -26
- package/src/bundles/minimal.ts +0 -26
- package/src/bundles/production-minimal.ts +0 -67
- package/src/compiler/advanced-parser.ts +0 -871
- package/src/compiler/codegen.ts +0 -450
- package/src/compiler/enhanced-codegen.ts +0 -729
- package/src/compiler/index.ts +0 -25
- package/src/compiler/parser.ts +0 -461
- package/src/compiler/plugin.ts +0 -181
- package/src/compiler/types.ts +0 -177
- package/src/components/BasicInput.ts +0 -352
- package/src/components/Button.ts +0 -963
- package/src/components/Divider.ts +0 -341
- package/src/components/EnhancedLink.ts +0 -676
- package/src/components/Form.ts +0 -414
- package/src/components/Grid.ts +0 -2507
- package/src/components/GridResponsive.ts +0 -637
- package/src/components/Image.ts +0 -426
- package/src/components/List.ts +0 -1084
- package/src/components/Menu.ts +0 -807
- package/src/components/Picker.ts +0 -678
- package/src/components/ScrollView.ts +0 -725
- package/src/components/Section.ts +0 -472
- package/src/components/Show.ts +0 -205
- package/src/components/Spacer.ts +0 -93
- package/src/components/Text.ts +0 -447
- package/src/components/Toggle.ts +0 -700
- package/src/components/index.ts +0 -231
- package/src/components/wrapper.ts +0 -828
- package/src/concatenation/concatenatable.ts +0 -211
- package/src/concatenation/concatenated-component.ts +0 -471
- package/src/concatenation/index.ts +0 -41
- package/src/concatenation/styles.css +0 -120
- package/src/concatenation/text-optimizer.ts +0 -440
- package/src/concatenation/types.ts +0 -116
- package/src/constants/README.md +0 -339
- package/src/constants/__tests__/frame-utils.test.ts +0 -276
- package/src/constants/__tests__/layout.test.ts +0 -215
- package/src/constants/frame-utils.ts +0 -174
- package/src/constants/index.ts +0 -8
- package/src/constants/layout.ts +0 -120
- package/src/css-classes/component-base.ts +0 -117
- package/src/css-classes/css-class-manager.ts +0 -372
- package/src/css-classes/dom-integration.ts +0 -162
- package/src/css-classes/enhanced-renderer.ts +0 -166
- package/src/css-classes/index.ts +0 -45
- package/src/css-classes/types.ts +0 -73
- package/src/css-classes/utilities.ts +0 -175
- package/src/debug/index.ts +0 -267
- package/src/developer-experience/enhanced-errors.ts +0 -556
- package/src/developer-experience/enhanced-types.ts +0 -427
- package/src/developer-experience/index.ts +0 -220
- package/src/globals.d.ts +0 -43
- package/src/gradients/__tests__/angular-gradient.test.ts +0 -111
- package/src/gradients/__tests__/background-modifier.test.ts +0 -81
- package/src/gradients/__tests__/comprehensive-gradients.test.ts +0 -296
- package/src/gradients/__tests__/gradient-asset.test.ts +0 -144
- package/src/gradients/__tests__/linear-gradient.test.ts +0 -92
- package/src/gradients/__tests__/phase4-features.test.ts +0 -386
- package/src/gradients/__tests__/radial-gradient.test.ts +0 -110
- package/src/gradients/__tests__/repeating-gradients.test.ts +0 -125
- package/src/gradients/__tests__/state-background-modifier.test.ts +0 -340
- package/src/gradients/__tests__/state-gradient-asset.test.ts +0 -262
- package/src/gradients/__tests__/state-gradient-integration.test.ts +0 -277
- package/src/gradients/css-generator.ts +0 -158
- package/src/gradients/examples.ts +0 -632
- package/src/gradients/gradient-asset.ts +0 -30
- package/src/gradients/index.ts +0 -85
- package/src/gradients/performance.ts +0 -521
- package/src/gradients/presets.ts +0 -422
- package/src/gradients/reactive.ts +0 -470
- package/src/gradients/state-gradient-asset.ts +0 -179
- package/src/gradients/types.ts +0 -148
- package/src/gradients/utils.ts +0 -579
- package/src/gradients/validation.ts +0 -489
- package/src/index.ts +0 -168
- package/src/lifecycle/hooks.ts +0 -332
- package/src/modifiers/__tests__/as-html-integration.test.ts +0 -204
- package/src/modifiers/__tests__/as-html.test.ts +0 -437
- package/src/modifiers/__tests__/basic-sanitizer-security.test.ts +0 -294
- package/src/modifiers/__tests__/border.test.ts +0 -371
- package/src/modifiers/__tests__/margin-string-support.test.ts +0 -41
- package/src/modifiers/__tests__/padding-string-support.test.ts +0 -41
- package/src/modifiers/as-html-validator.ts +0 -68
- package/src/modifiers/as-html.ts +0 -216
- package/src/modifiers/attributes.ts +0 -574
- package/src/modifiers/backdrop.ts +0 -290
- package/src/modifiers/background.ts +0 -165
- package/src/modifiers/base.ts +0 -1815
- package/src/modifiers/basic-sanitizer.ts +0 -227
- package/src/modifiers/border.ts +0 -574
- package/src/modifiers/builder.ts +0 -1747
- package/src/modifiers/core.ts +0 -521
- package/src/modifiers/css.ts +0 -148
- package/src/modifiers/effects.ts +0 -412
- package/src/modifiers/elements.ts +0 -541
- package/src/modifiers/filters.ts +0 -501
- package/src/modifiers/flexbox.ts +0 -180
- package/src/modifiers/font.ts +0 -149
- package/src/modifiers/grid.ts +0 -238
- package/src/modifiers/index.ts +0 -481
- package/src/modifiers/margin.ts +0 -218
- package/src/modifiers/padding.ts +0 -318
- package/src/modifiers/registry.ts +0 -444
- package/src/modifiers/responsive/__tests__/advanced-media-queries.test.ts +0 -392
- package/src/modifiers/responsive/__tests__/advanced-utilities.test.ts +0 -368
- package/src/modifiers/responsive/__tests__/comprehensive-browser-tests.test.ts +0 -556
- package/src/modifiers/responsive/__tests__/layout-patterns.test.ts +0 -558
- package/src/modifiers/responsive/advanced-utilities.ts +0 -562
- package/src/modifiers/responsive/breakpoints.ts +0 -330
- package/src/modifiers/responsive/css-generator.ts +0 -432
- package/src/modifiers/responsive/dev-tools.ts +0 -650
- package/src/modifiers/responsive/index.ts +0 -119
- package/src/modifiers/responsive/layout-patterns.ts +0 -592
- package/src/modifiers/responsive/performance.ts +0 -385
- package/src/modifiers/responsive/responsive-builder.ts +0 -620
- package/src/modifiers/responsive/responsive-modifier.ts +0 -410
- package/src/modifiers/responsive/types.ts +0 -226
- package/src/modifiers/responsive/utilities.ts +0 -478
- package/src/modifiers/scroll.ts +0 -297
- package/src/modifiers/shadows.ts +0 -321
- package/src/modifiers/size.ts +0 -208
- package/src/modifiers/text.ts +0 -416
- package/src/modifiers/transformations.ts +0 -640
- package/src/modifiers/transitions.ts +0 -218
- package/src/modifiers/types.ts +0 -889
- package/src/modifiers/typography.ts +0 -341
- package/src/modifiers/utility.ts +0 -209
- package/src/modifiers/utils.ts +0 -413
- package/src/plugins/__tests__/simplified-plugin-system.test.ts +0 -190
- package/src/plugins/component-loader-registry.ts +0 -371
- package/src/plugins/index.ts +0 -61
- package/src/plugins/legacy-adapter.ts +0 -84
- package/src/plugins/simplified-component-registry.ts +0 -130
- package/src/plugins/simplified-error-handler.ts +0 -372
- package/src/plugins/simplified-index.ts +0 -61
- package/src/plugins/simplified-lazy-loader.ts +0 -242
- package/src/plugins/simplified-plugin-manager.ts +0 -93
- package/src/plugins/simplified-tachui-instance.ts +0 -142
- package/src/plugins/simplified-types.ts +0 -79
- package/src/plugins/simplified-utils.ts +0 -118
- package/src/reactive/cleanup.ts +0 -241
- package/src/reactive/computed.ts +0 -281
- package/src/reactive/context.ts +0 -287
- package/src/reactive/effect.ts +0 -194
- package/src/reactive/enhanced-effect.ts +0 -318
- package/src/reactive/enhanced-signal.ts +0 -227
- package/src/reactive/equality.ts +0 -188
- package/src/reactive/globals.d.ts +0 -5
- package/src/reactive/index.ts +0 -150
- package/src/reactive/migration.ts +0 -335
- package/src/reactive/ownership.ts +0 -182
- package/src/reactive/scheduler.ts +0 -300
- package/src/reactive/signal.ts +0 -201
- package/src/reactive/theme.ts +0 -49
- package/src/reactive/types.ts +0 -103
- package/src/reactive/unified-scheduler.ts +0 -357
- package/src/runtime/component-context.ts +0 -343
- package/src/runtime/component.ts +0 -499
- package/src/runtime/context.ts +0 -527
- package/src/runtime/dev-tools.ts +0 -752
- package/src/runtime/development-warnings.ts +0 -114
- package/src/runtime/dom-bridge.ts +0 -570
- package/src/runtime/element-override.ts +0 -282
- package/src/runtime/error-boundary.ts +0 -955
- package/src/runtime/error-recovery.ts +0 -638
- package/src/runtime/error-reporting.ts +0 -808
- package/src/runtime/error-utils.ts +0 -698
- package/src/runtime/index.ts +0 -202
- package/src/runtime/lazy-component.ts +0 -268
- package/src/runtime/lifecycle.ts +0 -10
- package/src/runtime/mounting.ts +0 -17
- package/src/runtime/optimization.ts +0 -13
- package/src/runtime/performance.ts +0 -693
- package/src/runtime/props.ts +0 -434
- package/src/runtime/refs.ts +0 -13
- package/src/runtime/renderer.ts +0 -674
- package/src/runtime/semantic-role-manager.ts +0 -140
- package/src/runtime/types.ts +0 -282
- package/src/state/binding.ts +0 -381
- package/src/state/environment-object.ts +0 -444
- package/src/state/environment.ts +0 -351
- package/src/state/index.ts +0 -179
- package/src/state/observed-object.ts +0 -405
- package/src/state/state-manager.ts +0 -366
- package/src/state/state.ts +0 -339
- package/src/state/types.ts +0 -192
- package/src/sui-compat.ts +0 -163
- package/src/validation/__tests__/phase-1d-integration.test.ts +0 -558
- package/src/validation/advanced-debugging.ts +0 -860
- package/src/validation/build-time/detection.ts +0 -373
- package/src/validation/build-time/index.ts +0 -222
- package/src/validation/build-time/plugins.ts +0 -515
- package/src/validation/build-time/rules.ts +0 -624
- package/src/validation/build-time/transformer.ts +0 -372
- package/src/validation/build-time/types.ts +0 -232
- package/src/validation/comprehensive.ts +0 -1272
- package/src/validation/debug-tools.ts +0 -724
- package/src/validation/developer-experience.ts +0 -712
- package/src/validation/documentation-integration.ts +0 -835
- package/src/validation/enhanced-runtime.ts +0 -765
- package/src/validation/error-reporting.ts +0 -587
- package/src/validation/ide-integration.ts +0 -845
- package/src/validation/index.ts +0 -353
- package/src/validation/lifecycle-validation.ts +0 -636
- package/src/validation/performance-optimizer.ts +0 -599
- package/src/validation/plugin-registration.ts +0 -249
- package/src/validation/production-bypass.ts +0 -466
- package/src/validation/simple.ts +0 -465
- package/src/viewport/adapters/web-adapter.ts +0 -1385
- package/src/viewport/components.ts +0 -505
- package/src/viewport/environment.ts +0 -173
- package/src/viewport/index.ts +0 -290
- package/src/viewport/platform-detection.ts +0 -431
- package/src/viewport/types.ts +0 -371
- package/src/viewport/viewport-manager.ts +0 -979
|
@@ -1,254 +0,0 @@
|
|
|
1
|
-
import { LinearGradient as t } from "./index.js";
|
|
2
|
-
const n = {
|
|
3
|
-
// iOS-style colors
|
|
4
|
-
ios: {
|
|
5
|
-
blue: ["#007AFF", "#0051D2"],
|
|
6
|
-
green: ["#30D158", "#248A3D"],
|
|
7
|
-
red: ["#FF3B30", "#CC2E26"]
|
|
8
|
-
},
|
|
9
|
-
// Material Design colors
|
|
10
|
-
material: {
|
|
11
|
-
blue: ["#2196F3", "#1976D2"]
|
|
12
|
-
},
|
|
13
|
-
// Modern web gradients
|
|
14
|
-
modern: {
|
|
15
|
-
ocean: ["#667eea", "#764ba2"],
|
|
16
|
-
sunset: ["#ff7e5f", "#feb47b"],
|
|
17
|
-
aurora: ["#4facfe", "#00f2fe"]
|
|
18
|
-
},
|
|
19
|
-
// Neutral gradients
|
|
20
|
-
neutral: {
|
|
21
|
-
lightGray: ["#f8f9fa", "#e9ecef"],
|
|
22
|
-
darkGray: ["#495057", "#212529"]
|
|
23
|
-
}
|
|
24
|
-
}, a = {
|
|
25
|
-
// Direction-based presets
|
|
26
|
-
vertical: (o) => t({
|
|
27
|
-
colors: o,
|
|
28
|
-
startPoint: "top",
|
|
29
|
-
endPoint: "bottom"
|
|
30
|
-
}),
|
|
31
|
-
horizontal: (o) => t({
|
|
32
|
-
colors: o,
|
|
33
|
-
startPoint: "leading",
|
|
34
|
-
endPoint: "trailing"
|
|
35
|
-
}),
|
|
36
|
-
diagonal: (o) => t({
|
|
37
|
-
colors: o,
|
|
38
|
-
startPoint: "topLeading",
|
|
39
|
-
endPoint: "bottomTrailing"
|
|
40
|
-
}),
|
|
41
|
-
diagonalReverse: (o) => t({
|
|
42
|
-
colors: o,
|
|
43
|
-
startPoint: "topTrailing",
|
|
44
|
-
endPoint: "bottomLeading"
|
|
45
|
-
}),
|
|
46
|
-
// Popular gradient patterns
|
|
47
|
-
iosBlue: () => t({
|
|
48
|
-
colors: [...n.ios.blue],
|
|
49
|
-
startPoint: "top",
|
|
50
|
-
endPoint: "bottom"
|
|
51
|
-
}),
|
|
52
|
-
materialBlue: () => t({
|
|
53
|
-
colors: [...n.material.blue],
|
|
54
|
-
startPoint: "top",
|
|
55
|
-
endPoint: "bottom"
|
|
56
|
-
}),
|
|
57
|
-
ocean: () => t({
|
|
58
|
-
colors: [...n.modern.ocean],
|
|
59
|
-
startPoint: "topLeading",
|
|
60
|
-
endPoint: "bottomTrailing"
|
|
61
|
-
}),
|
|
62
|
-
sunset: () => t({
|
|
63
|
-
colors: [...n.modern.sunset],
|
|
64
|
-
startPoint: "leading",
|
|
65
|
-
endPoint: "trailing"
|
|
66
|
-
}),
|
|
67
|
-
aurora: () => t({
|
|
68
|
-
colors: [...n.modern.aurora],
|
|
69
|
-
startPoint: "top",
|
|
70
|
-
endPoint: "bottom"
|
|
71
|
-
}),
|
|
72
|
-
// Multi-color gradients
|
|
73
|
-
rainbow: () => t({
|
|
74
|
-
colors: ["#ff0000", "#ff7f00", "#ffff00", "#00ff00", "#0000ff", "#8f00ff"],
|
|
75
|
-
startPoint: "leading",
|
|
76
|
-
endPoint: "trailing",
|
|
77
|
-
stops: [0, 16.66, 33.33, 50, 66.66, 83.33, 100]
|
|
78
|
-
}),
|
|
79
|
-
prism: () => t({
|
|
80
|
-
colors: ["#ff6b6b", "#4ecdc4", "#45b7d1", "#96ceb4", "#feca57"],
|
|
81
|
-
startPoint: "topLeading",
|
|
82
|
-
endPoint: "bottomTrailing"
|
|
83
|
-
}),
|
|
84
|
-
// Card and surface gradients
|
|
85
|
-
cardLight: () => t({
|
|
86
|
-
colors: [...n.neutral.lightGray],
|
|
87
|
-
startPoint: "top",
|
|
88
|
-
endPoint: "bottom"
|
|
89
|
-
}),
|
|
90
|
-
cardDark: () => t({
|
|
91
|
-
colors: [...n.neutral.darkGray],
|
|
92
|
-
startPoint: "top",
|
|
93
|
-
endPoint: "bottom"
|
|
94
|
-
}),
|
|
95
|
-
glass: () => t({
|
|
96
|
-
colors: ["rgba(255, 255, 255, 0.25)", "rgba(255, 255, 255, 0.05)"],
|
|
97
|
-
startPoint: "top",
|
|
98
|
-
endPoint: "bottom"
|
|
99
|
-
}),
|
|
100
|
-
frosted: () => t({
|
|
101
|
-
colors: ["rgba(255, 255, 255, 0.1)", "rgba(255, 255, 255, 0.3)"],
|
|
102
|
-
startPoint: "topLeading",
|
|
103
|
-
endPoint: "bottomTrailing"
|
|
104
|
-
})
|
|
105
|
-
}, r = {
|
|
106
|
-
primaryButton: () => ({
|
|
107
|
-
default: a.iosBlue(),
|
|
108
|
-
hover: t({
|
|
109
|
-
colors: ["#1A8FFF", "#0062E3"],
|
|
110
|
-
startPoint: "top",
|
|
111
|
-
endPoint: "bottom"
|
|
112
|
-
}),
|
|
113
|
-
active: t({
|
|
114
|
-
colors: ["#0066CC", "#004499"],
|
|
115
|
-
startPoint: "top",
|
|
116
|
-
endPoint: "bottom"
|
|
117
|
-
}),
|
|
118
|
-
disabled: "#CCCCCC",
|
|
119
|
-
animation: {
|
|
120
|
-
duration: 150,
|
|
121
|
-
easing: "ease-out"
|
|
122
|
-
}
|
|
123
|
-
}),
|
|
124
|
-
secondaryButton: () => ({
|
|
125
|
-
default: a.cardLight(),
|
|
126
|
-
hover: t({
|
|
127
|
-
colors: ["#e9ecef", "#dee2e6"],
|
|
128
|
-
startPoint: "top",
|
|
129
|
-
endPoint: "bottom"
|
|
130
|
-
}),
|
|
131
|
-
active: t({
|
|
132
|
-
colors: ["#dee2e6", "#ced4da"],
|
|
133
|
-
startPoint: "top",
|
|
134
|
-
endPoint: "bottom"
|
|
135
|
-
}),
|
|
136
|
-
animation: {
|
|
137
|
-
duration: 100,
|
|
138
|
-
easing: "ease-out"
|
|
139
|
-
}
|
|
140
|
-
}),
|
|
141
|
-
dangerButton: () => ({
|
|
142
|
-
default: t({
|
|
143
|
-
colors: [...n.ios.red],
|
|
144
|
-
startPoint: "top",
|
|
145
|
-
endPoint: "bottom"
|
|
146
|
-
}),
|
|
147
|
-
hover: t({
|
|
148
|
-
colors: ["#FF5A52", "#D13029"],
|
|
149
|
-
startPoint: "top",
|
|
150
|
-
endPoint: "bottom"
|
|
151
|
-
}),
|
|
152
|
-
active: t({
|
|
153
|
-
colors: ["#E6342C", "#B32821"],
|
|
154
|
-
startPoint: "top",
|
|
155
|
-
endPoint: "bottom"
|
|
156
|
-
}),
|
|
157
|
-
disabled: "#CCCCCC",
|
|
158
|
-
animation: {
|
|
159
|
-
duration: 120,
|
|
160
|
-
easing: "ease-out"
|
|
161
|
-
}
|
|
162
|
-
}),
|
|
163
|
-
successButton: () => ({
|
|
164
|
-
default: t({
|
|
165
|
-
colors: [...n.ios.green],
|
|
166
|
-
startPoint: "top",
|
|
167
|
-
endPoint: "bottom"
|
|
168
|
-
}),
|
|
169
|
-
hover: t({
|
|
170
|
-
colors: ["#40D866", "#2C8F45"],
|
|
171
|
-
startPoint: "top",
|
|
172
|
-
endPoint: "bottom"
|
|
173
|
-
}),
|
|
174
|
-
active: t({
|
|
175
|
-
colors: ["#28B946", "#1F7A35"],
|
|
176
|
-
startPoint: "top",
|
|
177
|
-
endPoint: "bottom"
|
|
178
|
-
}),
|
|
179
|
-
disabled: "#CCCCCC",
|
|
180
|
-
animation: {
|
|
181
|
-
duration: 120,
|
|
182
|
-
easing: "ease-out"
|
|
183
|
-
}
|
|
184
|
-
}),
|
|
185
|
-
hoverCard: () => ({
|
|
186
|
-
default: "#FFFFFF",
|
|
187
|
-
hover: a.glass(),
|
|
188
|
-
animation: {
|
|
189
|
-
duration: 200,
|
|
190
|
-
easing: "ease"
|
|
191
|
-
}
|
|
192
|
-
}),
|
|
193
|
-
focusInput: () => ({
|
|
194
|
-
default: "#FFFFFF",
|
|
195
|
-
focus: t({
|
|
196
|
-
colors: ["#F0F8FF", "#E6F3FF"],
|
|
197
|
-
startPoint: "top",
|
|
198
|
-
endPoint: "bottom"
|
|
199
|
-
}),
|
|
200
|
-
disabled: "#F5F5F5",
|
|
201
|
-
animation: {
|
|
202
|
-
duration: 100,
|
|
203
|
-
easing: "ease-in-out"
|
|
204
|
-
}
|
|
205
|
-
})
|
|
206
|
-
}, d = {
|
|
207
|
-
/**
|
|
208
|
-
* Create a theme-responsive gradient that switches between light and dark variants
|
|
209
|
-
*/
|
|
210
|
-
createThemeGradient: (o, e) => o,
|
|
211
|
-
/**
|
|
212
|
-
* Auto-generate dark mode variant of a gradient
|
|
213
|
-
*/
|
|
214
|
-
createDarkVariant: (o) => o
|
|
215
|
-
}, l = {
|
|
216
|
-
/**
|
|
217
|
-
* Reverse the colors in a gradient
|
|
218
|
-
*/
|
|
219
|
-
reverse: (o) => {
|
|
220
|
-
const e = { ...o };
|
|
221
|
-
return "colors" in e.options && (e.options = {
|
|
222
|
-
...e.options,
|
|
223
|
-
colors: [...e.options.colors].reverse()
|
|
224
|
-
}), e;
|
|
225
|
-
},
|
|
226
|
-
/**
|
|
227
|
-
* Rotate a linear gradient by swapping start and end points
|
|
228
|
-
*/
|
|
229
|
-
rotate: (o) => ({
|
|
230
|
-
...o,
|
|
231
|
-
startPoint: o.endPoint,
|
|
232
|
-
endPoint: o.startPoint
|
|
233
|
-
}),
|
|
234
|
-
/**
|
|
235
|
-
* Add transparency to gradient colors
|
|
236
|
-
*/
|
|
237
|
-
withOpacity: (o, e) => o,
|
|
238
|
-
/**
|
|
239
|
-
* Blend two gradients together
|
|
240
|
-
*/
|
|
241
|
-
blend: (o, e, i = 0.5) => o
|
|
242
|
-
};
|
|
243
|
-
({
|
|
244
|
-
...a,
|
|
245
|
-
...r
|
|
246
|
-
});
|
|
247
|
-
export {
|
|
248
|
-
n as GradientColors,
|
|
249
|
-
l as GradientUtils,
|
|
250
|
-
r as InteractiveGradientPresets,
|
|
251
|
-
a as LinearGradientPresets,
|
|
252
|
-
d as ThemeGradients
|
|
253
|
-
};
|
|
254
|
-
//# sourceMappingURL=presets.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"presets.js","sources":["../../src/gradients/presets.ts"],"sourcesContent":["/**\n * Gradient Presets for TachUI\n * \n * Common gradient patterns and presets for quick development.\n * Includes popular design system gradients and utility patterns.\n */\n\nimport { LinearGradient, RadialGradient, AngularGradient } from './index'\nimport type { \n GradientDefinition, \n StateGradientOptions,\n LinearGradientOptions\n} from './types'\n\n/**\n * Common color schemes for gradients\n */\nexport const GradientColors = {\n // iOS-style colors\n ios: {\n blue: ['#007AFF', '#0051D2'] as const,\n green: ['#30D158', '#248A3D'] as const,\n orange: ['#FF9500', '#CC7700'] as const,\n red: ['#FF3B30', '#CC2E26'] as const,\n purple: ['#AF52DE', '#8C42B8'] as const,\n pink: ['#FF2D92', '#CC2475'] as const,\n teal: ['#5AC8FA', '#48A3C8'] as const,\n indigo: ['#5856D6', '#4644AB'] as const\n },\n\n // Material Design colors\n material: {\n blue: ['#2196F3', '#1976D2'] as const,\n green: ['#4CAF50', '#388E3C'] as const,\n orange: ['#FF9800', '#F57C00'] as const,\n red: ['#F44336', '#D32F2F'] as const,\n purple: ['#9C27B0', '#7B1FA2'] as const,\n pink: ['#E91E63', '#C2185B'] as const,\n teal: ['#009688', '#00695C'] as const,\n indigo: ['#3F51B5', '#303F9F'] as const\n },\n\n // Modern web gradients\n modern: {\n ocean: ['#667eea', '#764ba2'] as const,\n sunset: ['#ff7e5f', '#feb47b'] as const,\n forest: ['#134e5e', '#71b280'],\n lavender: ['#a8edea', '#fed6e3'],\n fire: ['#ff416c', '#ff4b2b'],\n aurora: ['#4facfe', '#00f2fe'],\n cosmic: ['#c471ed', '#f64f59'],\n emerald: ['#11998e', '#38ef7d']\n },\n\n // Neutral gradients\n neutral: {\n lightGray: ['#f8f9fa', '#e9ecef'],\n darkGray: ['#495057', '#212529'],\n warmGray: ['#f5f5f4', '#e7e5e4'],\n coolGray: ['#f1f5f9', '#e2e8f0'],\n slate: ['#f8fafc', '#f1f5f9'],\n stone: ['#fafaf9', '#f5f5f4']\n }\n} as const\n\n/**\n * Predefined linear gradient presets\n */\nexport const LinearGradientPresets = {\n // Direction-based presets\n vertical: (colors: [string, string]) => LinearGradient({\n colors,\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n\n horizontal: (colors: [string, string]) => LinearGradient({\n colors,\n startPoint: 'leading',\n endPoint: 'trailing'\n }),\n\n diagonal: (colors: [string, string]) => LinearGradient({\n colors,\n startPoint: 'topLeading',\n endPoint: 'bottomTrailing'\n }),\n\n diagonalReverse: (colors: [string, string]) => LinearGradient({\n colors,\n startPoint: 'topTrailing',\n endPoint: 'bottomLeading'\n }),\n\n // Popular gradient patterns\n iosBlue: () => LinearGradient({\n colors: [...GradientColors.ios.blue],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n\n materialBlue: () => LinearGradient({\n colors: [...GradientColors.material.blue],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n\n ocean: () => LinearGradient({\n colors: [...GradientColors.modern.ocean],\n startPoint: 'topLeading',\n endPoint: 'bottomTrailing'\n }),\n\n sunset: () => LinearGradient({\n colors: [...GradientColors.modern.sunset],\n startPoint: 'leading',\n endPoint: 'trailing'\n }),\n\n aurora: () => LinearGradient({\n colors: [...GradientColors.modern.aurora],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n\n // Multi-color gradients\n rainbow: () => LinearGradient({\n colors: ['#ff0000', '#ff7f00', '#ffff00', '#00ff00', '#0000ff', '#8f00ff'],\n startPoint: 'leading',\n endPoint: 'trailing',\n stops: [0, 16.66, 33.33, 50, 66.66, 83.33, 100]\n }),\n\n prism: () => LinearGradient({\n colors: ['#ff6b6b', '#4ecdc4', '#45b7d1', '#96ceb4', '#feca57'],\n startPoint: 'topLeading',\n endPoint: 'bottomTrailing'\n }),\n\n // Card and surface gradients\n cardLight: () => LinearGradient({\n colors: [...GradientColors.neutral.lightGray],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n\n cardDark: () => LinearGradient({\n colors: [...GradientColors.neutral.darkGray],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n\n glass: () => LinearGradient({\n colors: ['rgba(255, 255, 255, 0.25)', 'rgba(255, 255, 255, 0.05)'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n\n frosted: () => LinearGradient({\n colors: ['rgba(255, 255, 255, 0.1)', 'rgba(255, 255, 255, 0.3)'],\n startPoint: 'topLeading',\n endPoint: 'bottomTrailing'\n })\n} as const\n\n/**\n * Predefined radial gradient presets\n */\nexport const RadialGradientPresets = {\n spotlight: (colors: [string, string]) => RadialGradient({\n colors,\n center: 'center',\n startRadius: 0,\n endRadius: 100\n }),\n\n vignette: (colors: [string, string]) => RadialGradient({\n colors,\n center: 'center',\n startRadius: 50,\n endRadius: 200\n }),\n\n buttonGlow: () => RadialGradient({\n colors: ['rgba(255, 255, 255, 0.3)', 'rgba(255, 255, 255, 0)'],\n center: 'center',\n startRadius: 0,\n endRadius: 50\n }),\n\n halo: () => RadialGradient({\n colors: ['rgba(74, 172, 254, 0.4)', 'rgba(74, 172, 254, 0)'],\n center: 'center',\n startRadius: 20,\n endRadius: 80\n })\n} as const\n\n/**\n * Predefined angular/conic gradient presets\n */\nexport const AngularGradientPresets = {\n rainbow: () => AngularGradient({\n colors: ['#ff0000', '#ff7f00', '#ffff00', '#00ff00', '#0000ff', '#8f00ff', '#ff0000'],\n center: 'center',\n startAngle: 0,\n endAngle: 360\n }),\n\n loading: () => AngularGradient({\n colors: ['#007AFF', 'rgba(0, 122, 255, 0.3)', '#007AFF'],\n center: 'center',\n startAngle: 0,\n endAngle: 360\n }),\n\n progress: () => AngularGradient({\n colors: ['#30D158', 'rgba(48, 209, 88, 0.3)', 'rgba(48, 209, 88, 0)'],\n center: 'center',\n startAngle: -90,\n endAngle: 270\n })\n} as const\n\n/**\n * Interactive gradient presets with state support\n */\nexport const InteractiveGradientPresets = {\n primaryButton: (): StateGradientOptions => ({\n default: LinearGradientPresets.iosBlue(),\n hover: LinearGradient({\n colors: ['#1A8FFF', '#0062E3'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n active: LinearGradient({\n colors: ['#0066CC', '#004499'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n disabled: '#CCCCCC',\n animation: {\n duration: 150,\n easing: 'ease-out'\n }\n }),\n\n secondaryButton: (): StateGradientOptions => ({\n default: LinearGradientPresets.cardLight(),\n hover: LinearGradient({\n colors: ['#e9ecef', '#dee2e6'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n active: LinearGradient({\n colors: ['#dee2e6', '#ced4da'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n animation: {\n duration: 100,\n easing: 'ease-out'\n }\n }),\n\n dangerButton: (): StateGradientOptions => ({\n default: LinearGradient({\n colors: [...GradientColors.ios.red],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n hover: LinearGradient({\n colors: ['#FF5A52', '#D13029'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n active: LinearGradient({\n colors: ['#E6342C', '#B32821'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n disabled: '#CCCCCC',\n animation: {\n duration: 120,\n easing: 'ease-out'\n }\n }),\n\n successButton: (): StateGradientOptions => ({\n default: LinearGradient({\n colors: [...GradientColors.ios.green],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n hover: LinearGradient({\n colors: ['#40D866', '#2C8F45'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n active: LinearGradient({\n colors: ['#28B946', '#1F7A35'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n disabled: '#CCCCCC',\n animation: {\n duration: 120,\n easing: 'ease-out'\n }\n }),\n\n hoverCard: (): StateGradientOptions => ({\n default: '#FFFFFF',\n hover: LinearGradientPresets.glass(),\n animation: {\n duration: 200,\n easing: 'ease'\n }\n }),\n\n focusInput: (): StateGradientOptions => ({\n default: '#FFFFFF',\n focus: LinearGradient({\n colors: ['#F0F8FF', '#E6F3FF'],\n startPoint: 'top',\n endPoint: 'bottom'\n }),\n disabled: '#F5F5F5',\n animation: {\n duration: 100,\n easing: 'ease-in-out'\n }\n })\n} as const\n\n/**\n * Theme-aware gradient utilities\n */\nexport const ThemeGradients = {\n /**\n * Create a theme-responsive gradient that switches between light and dark variants\n */\n createThemeGradient: (\n lightGradient: GradientDefinition,\n _darkGradient: GradientDefinition\n ) => {\n // This would integrate with the Asset system for theme reactivity\n // Implementation depends on the current theme detection system\n return lightGradient // Placeholder - would be enhanced with actual theme system\n },\n\n /**\n * Auto-generate dark mode variant of a gradient\n */\n createDarkVariant: (gradient: GradientDefinition): GradientDefinition => {\n // Placeholder for auto-generating dark variants\n // Would analyze colors and create appropriate dark theme equivalents\n return gradient\n }\n} as const\n\n/**\n * Gradient composition utilities\n */\nexport const GradientUtils = {\n /**\n * Reverse the colors in a gradient\n */\n reverse: (gradient: GradientDefinition): GradientDefinition => {\n const newGradient = { ...gradient }\n if ('colors' in newGradient.options) {\n newGradient.options = {\n ...newGradient.options,\n colors: [...newGradient.options.colors].reverse()\n }\n }\n return newGradient\n },\n\n /**\n * Rotate a linear gradient by swapping start and end points\n */\n rotate: (gradient: LinearGradientOptions): LinearGradientOptions => {\n return {\n ...gradient,\n startPoint: gradient.endPoint,\n endPoint: gradient.startPoint\n }\n },\n\n /**\n * Add transparency to gradient colors\n */\n withOpacity: (gradient: GradientDefinition, _opacity: number): GradientDefinition => {\n // Implementation would modify colors to add alpha values\n // This is a placeholder for the concept\n return gradient\n },\n\n /**\n * Blend two gradients together\n */\n blend: (\n gradient1: GradientDefinition, \n _gradient2: GradientDefinition, \n _ratio: number = 0.5\n ): GradientDefinition => {\n // Implementation would blend the colors mathematically\n // This is a placeholder for the concept\n return gradient1\n }\n} as const\n\n/**\n * Export commonly used presets as default exports\n */\nexport const CommonGradients = {\n ...LinearGradientPresets,\n ...RadialGradientPresets,\n ...AngularGradientPresets,\n ...InteractiveGradientPresets\n} as const"],"names":["GradientColors","LinearGradientPresets","colors","LinearGradient","InteractiveGradientPresets","ThemeGradients","lightGradient","_darkGradient","gradient","GradientUtils","newGradient","_opacity","gradient1","_gradient2","_ratio"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("../assets/Asset.cjs"),u=require("./index.cjs"),h=require("./state-gradient-asset.cjs");var p=Object.defineProperty,b=(i,e,t)=>e in i?p(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,o=(i,e,t)=>b(i,typeof e!="symbol"?e+"":e,t);class n extends d.Asset{constructor(e,t,s){super(e),this.reactiveDefinition=t,o(this,"currentGradient"),o(this,"subscriptions",[]),o(this,"updateCallback"),this.updateCallback=s,this.currentGradient=this.resolveStaticGradient(),this.setupSignalSubscriptions()}resolve(){return this.gradientToCSS(this.currentGradient)}getCurrentGradient(){return this.currentGradient}updateDefinition(e){this.cleanup(),this.reactiveDefinition=e,this.currentGradient=this.resolveStaticGradient(),this.setupSignalSubscriptions(),this.notifyUpdate()}cleanup(){this.subscriptions.forEach(e=>e()),this.subscriptions=[]}resolveStaticGradient(){const{type:e,options:t}=this.reactiveDefinition;switch(e){case"linear":return u.LinearGradient(this.resolveLinearOptions(t));case"radial":return u.RadialGradient(this.resolveRadialOptions(t));case"angular":case"conic":return u.AngularGradient(this.resolveAngularOptions(t));default:throw new Error(`Unsupported reactive gradient type: ${e}`)}}resolveLinearOptions(e){return{colors:e.colors.map(t=>this.resolveValue(t)),stops:e.stops?.map(t=>this.resolveValue(t)),startPoint:this.resolveValue(e.startPoint),endPoint:this.resolveValue(e.endPoint),angle:e.angle?this.resolveValue(e.angle):void 0}}resolveRadialOptions(e){return{colors:e.colors.map(t=>this.resolveValue(t)),stops:e.stops?.map(t=>this.resolveValue(t)),center:this.resolveValue(e.center),startRadius:this.resolveValue(e.startRadius),endRadius:this.resolveValue(e.endRadius),shape:e.shape?this.resolveValue(e.shape):void 0}}resolveAngularOptions(e){return{colors:e.colors.map(t=>this.resolveValue(t)),stops:e.stops?.map(t=>this.resolveValue(t)),center:this.resolveValue(e.center),startAngle:this.resolveValue(e.startAngle),endAngle:this.resolveValue(e.endAngle)}}resolveValue(e){return this.isSignal(e)?e.value:e}isSignal(e){return e!==null&&typeof e=="object"&&"value"in e&&"subscribe"in e}setupSignalSubscriptions(){this.subscribeToSignalsInOptions(this.reactiveDefinition.options)}subscribeToSignalsInOptions(e){for(const[t,s]of Object.entries(e))if(Array.isArray(s))s.forEach(a=>{if(this.isSignal(a)){const c=a.subscribe(()=>this.handleSignalChange());this.subscriptions.push(c)}});else if(this.isSignal(s)){const a=s.subscribe(()=>this.handleSignalChange());this.subscriptions.push(a)}}handleSignalChange(){this.currentGradient=this.resolveStaticGradient(),this.notifyUpdate()}notifyUpdate(){this.updateCallback&&this.updateCallback()}gradientToCSS(e){const{gradientToCSS:t}=require("./css-generator");return t(e)}}class r extends h.StateGradientAsset{constructor(e,t,s){const a=r.resolveStateOptions(t);super(e,a),this.reactiveStateGradients=t,this.updateCallback=s,o(this,"reactiveSubscriptions",[]),this.setupStateSignalSubscriptions()}updateReactiveState(e){this.cleanupStateSubscriptions(),this.reactiveStateGradients=e;const t=r.resolveStateOptions(e);this.updateStateGradients(t),this.setupStateSignalSubscriptions(),this.notifyStateUpdate()}cleanupStateSubscriptions(){this.reactiveSubscriptions.forEach(e=>e()),this.reactiveSubscriptions=[]}static resolveStateOptions(e){const t={default:r.resolveValue(e.default),animation:e.animation};return e.hover&&(t.hover=r.resolveValue(e.hover)),e.active&&(t.active=r.resolveValue(e.active)),e.focus&&(t.focus=r.resolveValue(e.focus)),e.disabled&&(t.disabled=r.resolveValue(e.disabled)),t}static resolveValue(e){return e!==null&&typeof e=="object"&&"value"in e&&"subscribe"in e?e.value:e}static isSignal(e){return e!==null&&typeof e=="object"&&"value"in e&&"subscribe"in e}setupStateSignalSubscriptions(){Object.entries(this.reactiveStateGradients).forEach(([e,t])=>{if(e!=="animation"&&r.isSignal(t)){const s=t.subscribe(()=>this.handleStateSignalChange());this.reactiveSubscriptions.push(s)}})}handleStateSignalChange(){const e=r.resolveStateOptions(this.reactiveStateGradients);this.updateStateGradients(e),this.notifyStateUpdate()}notifyStateUpdate(){this.updateCallback&&this.updateCallback()}}const l={linear:(i,e)=>new n("reactive-linear",{type:"linear",options:i,__reactive:!0},e),radial:(i,e)=>new n("reactive-radial",{type:"radial",options:i,__reactive:!0},e),angular:(i,e)=>new n("reactive-angular",{type:"angular",options:i,__reactive:!0},e),state:(i,e,t)=>new r(i,e,t)},f={createAnimatedGradient:(i,e=3e3)=>{const t={value:i[0],subscribe:s=>()=>{}};return l.linear({colors:[t,i[1]],startPoint:"top",endPoint:"bottom"})},createProgressGradient:(i,e="#007AFF")=>l.linear({colors:[e,"transparent"],stops:[i,i],startPoint:"leading",endPoint:"trailing"}),createDataGradient:(i,e,t,s=["#ff0000","#ffff00","#00ff00"])=>l.linear({colors:s,startPoint:"top",endPoint:"bottom"})},v={isReactiveBackground:i=>i instanceof n||i instanceof r,fromSignal:i=>l.state("signal-background",{default:i})};exports.ReactiveBackgroundUtils=v;exports.ReactiveGradientAsset=n;exports.ReactiveGradientUtils=f;exports.ReactiveGradients=l;exports.ReactiveStateGradientAsset=r;
|
|
2
|
-
//# sourceMappingURL=reactive.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reactive.cjs","sources":["../../src/gradients/reactive.ts"],"sourcesContent":["/**\n * Reactive Signal Integration for TachUI Gradients\n * \n * Enables dynamic gradients that update based on reactive signals,\n * allowing for animated and data-driven gradient effects.\n */\n\n// Define Signal interface for gradients\ninterface Signal<T> {\n readonly value: T\n subscribe(callback: () => void): () => void\n}\nimport type { Asset } from '../assets/types'\nimport { Asset as AssetClass } from '../assets/Asset'\nimport type {\n GradientDefinition,\n LinearGradientOptions,\n RadialGradientOptions,\n AngularGradientOptions,\n StateGradientOptions,\n StatefulBackgroundValue\n} from './types'\nimport { LinearGradient, RadialGradient, AngularGradient } from './index'\nimport { StateGradientAsset } from './state-gradient-asset'\n\n/**\n * Reactive gradient options supporting signal-based values\n */\nexport interface ReactiveLinearGradientOptions {\n colors: (string | Asset | Signal<string>)[]\n stops?: (number | Signal<number>)[]\n startPoint: LinearGradientOptions['startPoint'] | Signal<LinearGradientOptions['startPoint']>\n endPoint: LinearGradientOptions['endPoint'] | Signal<LinearGradientOptions['endPoint']>\n angle?: number | Signal<number>\n}\n\nexport interface ReactiveRadialGradientOptions {\n colors: (string | Asset | Signal<string>)[]\n stops?: (number | Signal<number>)[]\n center: RadialGradientOptions['center'] | Signal<RadialGradientOptions['center']>\n startRadius: number | Signal<number>\n endRadius: number | Signal<number>\n shape?: RadialGradientOptions['shape'] | Signal<RadialGradientOptions['shape']>\n}\n\nexport interface ReactiveAngularGradientOptions {\n colors: (string | Asset | Signal<string>)[]\n stops?: (number | Signal<number>)[]\n center: AngularGradientOptions['center'] | Signal<AngularGradientOptions['center']>\n startAngle: number | Signal<number>\n endAngle: number | Signal<number>\n}\n\n/**\n * Reactive gradient definition\n */\nexport interface ReactiveGradientDefinition {\n type: GradientDefinition['type']\n options: ReactiveLinearGradientOptions | ReactiveRadialGradientOptions | ReactiveAngularGradientOptions\n __reactive: true\n}\n\n/**\n * Reactive gradient asset that updates when signals change\n */\nexport class ReactiveGradientAsset extends AssetClass<string> {\n private currentGradient: GradientDefinition\n private subscriptions: (() => void)[] = []\n private updateCallback?: () => void\n\n constructor(\n name: string,\n private reactiveDefinition: ReactiveGradientDefinition,\n updateCallback?: () => void\n ) {\n super(name)\n this.updateCallback = updateCallback\n this.currentGradient = this.resolveStaticGradient()\n this.setupSignalSubscriptions()\n }\n\n /**\n * Resolve current gradient to CSS\n */\n resolve(): string {\n return this.gradientToCSS(this.currentGradient)\n }\n\n /**\n * Get current static gradient (resolved from signals)\n */\n getCurrentGradient(): GradientDefinition {\n return this.currentGradient\n }\n\n /**\n * Update the reactive definition and re-subscribe to signals\n */\n updateDefinition(newDefinition: ReactiveGradientDefinition): void {\n this.cleanup()\n this.reactiveDefinition = newDefinition\n this.currentGradient = this.resolveStaticGradient()\n this.setupSignalSubscriptions()\n this.notifyUpdate()\n }\n\n /**\n * Clean up signal subscriptions\n */\n cleanup(): void {\n this.subscriptions.forEach(unsubscribe => unsubscribe())\n this.subscriptions = []\n }\n\n private resolveStaticGradient(): GradientDefinition {\n const { type, options } = this.reactiveDefinition\n\n switch (type) {\n case 'linear':\n return LinearGradient(this.resolveLinearOptions(options as ReactiveLinearGradientOptions))\n case 'radial':\n return RadialGradient(this.resolveRadialOptions(options as ReactiveRadialGradientOptions))\n case 'angular':\n case 'conic':\n return AngularGradient(this.resolveAngularOptions(options as ReactiveAngularGradientOptions))\n default:\n throw new Error(`Unsupported reactive gradient type: ${type}`)\n }\n }\n\n private resolveLinearOptions(options: ReactiveLinearGradientOptions): LinearGradientOptions {\n return {\n colors: options.colors.map(color => this.resolveValue(color)),\n stops: options.stops?.map(stop => this.resolveValue(stop)),\n startPoint: this.resolveValue(options.startPoint),\n endPoint: this.resolveValue(options.endPoint),\n angle: options.angle ? this.resolveValue(options.angle) : undefined\n }\n }\n\n private resolveRadialOptions(options: ReactiveRadialGradientOptions): RadialGradientOptions {\n return {\n colors: options.colors.map(color => this.resolveValue(color)),\n stops: options.stops?.map(stop => this.resolveValue(stop)),\n center: this.resolveValue(options.center),\n startRadius: this.resolveValue(options.startRadius),\n endRadius: this.resolveValue(options.endRadius),\n shape: options.shape ? this.resolveValue(options.shape) : undefined\n }\n }\n\n private resolveAngularOptions(options: ReactiveAngularGradientOptions): AngularGradientOptions {\n return {\n colors: options.colors.map(color => this.resolveValue(color)),\n stops: options.stops?.map(stop => this.resolveValue(stop)),\n center: this.resolveValue(options.center),\n startAngle: this.resolveValue(options.startAngle),\n endAngle: this.resolveValue(options.endAngle)\n }\n }\n\n private resolveValue<T>(value: T | Signal<T>): T {\n if (this.isSignal(value)) {\n return (value as Signal<T>).value\n }\n return value as T\n }\n\n private isSignal<T>(value: T | Signal<T>): value is Signal<T> {\n return value !== null && \n typeof value === 'object' && \n 'value' in value && \n 'subscribe' in value\n }\n\n private setupSignalSubscriptions(): void {\n this.subscribeToSignalsInOptions(this.reactiveDefinition.options)\n }\n\n private subscribeToSignalsInOptions(options: any): void {\n for (const [_key, value] of Object.entries(options)) {\n if (Array.isArray(value)) {\n // Handle arrays (colors, stops)\n value.forEach(item => {\n if (this.isSignal(item)) {\n const unsubscribe = (item as Signal<any>).subscribe(() => this.handleSignalChange())\n this.subscriptions.push(unsubscribe)\n }\n })\n } else if (this.isSignal(value)) {\n // Handle individual signals\n const unsubscribe = (value as Signal<any>).subscribe(() => this.handleSignalChange())\n this.subscriptions.push(unsubscribe)\n }\n }\n }\n\n private handleSignalChange(): void {\n this.currentGradient = this.resolveStaticGradient()\n this.notifyUpdate()\n }\n\n private notifyUpdate(): void {\n if (this.updateCallback) {\n this.updateCallback()\n }\n }\n\n private gradientToCSS(gradient: GradientDefinition): string {\n // Import and use the existing CSS generator\n const { gradientToCSS } = require('./css-generator')\n return gradientToCSS(gradient)\n }\n}\n\n/**\n * Reactive state gradient asset with signal support\n */\nexport class ReactiveStateGradientAsset extends StateGradientAsset {\n private reactiveSubscriptions: (() => void)[] = []\n\n constructor(\n name: string,\n private reactiveStateGradients: {\n default: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n hover?: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n active?: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n focus?: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n disabled?: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n animation?: StateGradientOptions['animation']\n },\n private updateCallback?: () => void\n ) {\n // Resolve initial state\n const initialState = ReactiveStateGradientAsset.resolveStateOptions(reactiveStateGradients)\n super(name, initialState)\n \n this.setupStateSignalSubscriptions()\n }\n\n /**\n * Update reactive state configuration\n */\n updateReactiveState(\n newState: ReactiveStateGradientAsset['reactiveStateGradients']\n ): void {\n this.cleanupStateSubscriptions()\n this.reactiveStateGradients = newState\n \n // Update the underlying state gradients\n const resolvedState = ReactiveStateGradientAsset.resolveStateOptions(newState)\n this.updateStateGradients(resolvedState)\n \n this.setupStateSignalSubscriptions()\n this.notifyStateUpdate()\n }\n\n /**\n * Clean up signal subscriptions\n */\n cleanupStateSubscriptions(): void {\n this.reactiveSubscriptions.forEach(unsubscribe => unsubscribe())\n this.reactiveSubscriptions = []\n }\n\n private static resolveStateOptions(\n reactiveState: ReactiveStateGradientAsset['reactiveStateGradients']\n ): StateGradientOptions {\n const resolved: StateGradientOptions = {\n default: ReactiveStateGradientAsset.resolveValue(reactiveState.default) as any,\n animation: reactiveState.animation\n }\n\n if (reactiveState.hover) {\n resolved.hover = ReactiveStateGradientAsset.resolveValue(reactiveState.hover) as any\n }\n if (reactiveState.active) {\n resolved.active = ReactiveStateGradientAsset.resolveValue(reactiveState.active) as any\n }\n if (reactiveState.focus) {\n resolved.focus = ReactiveStateGradientAsset.resolveValue(reactiveState.focus) as any\n }\n if (reactiveState.disabled) {\n resolved.disabled = ReactiveStateGradientAsset.resolveValue(reactiveState.disabled) as any\n }\n\n return resolved\n }\n\n private static resolveValue<T>(value: T | Signal<T>): T {\n if (value !== null && \n typeof value === 'object' && \n 'value' in value && \n 'subscribe' in value) {\n return (value as Signal<T>).value\n }\n return value as T\n }\n\n private static isSignal<T>(value: T | Signal<T>): value is Signal<T> {\n return value !== null && \n typeof value === 'object' && \n 'value' in value && \n 'subscribe' in value\n }\n\n private setupStateSignalSubscriptions(): void {\n Object.entries(this.reactiveStateGradients).forEach(([key, value]) => {\n if (key === 'animation') return // Skip animation\n \n if (ReactiveStateGradientAsset.isSignal(value)) {\n const unsubscribe = (value as Signal<any>).subscribe(() => this.handleStateSignalChange())\n this.reactiveSubscriptions.push(unsubscribe)\n }\n })\n }\n\n private handleStateSignalChange(): void {\n const resolvedState = ReactiveStateGradientAsset.resolveStateOptions(this.reactiveStateGradients)\n this.updateStateGradients(resolvedState)\n this.notifyStateUpdate()\n }\n\n private notifyStateUpdate(): void {\n if (this.updateCallback) {\n this.updateCallback()\n }\n }\n}\n\n/**\n * Factory functions for creating reactive gradients\n */\nexport const ReactiveGradients = {\n /**\n * Create a reactive linear gradient\n */\n linear: (\n options: ReactiveLinearGradientOptions,\n updateCallback?: () => void\n ): ReactiveGradientAsset => {\n return new ReactiveGradientAsset(\n 'reactive-linear',\n { type: 'linear', options, __reactive: true },\n updateCallback\n )\n },\n\n /**\n * Create a reactive radial gradient\n */\n radial: (\n options: ReactiveRadialGradientOptions,\n updateCallback?: () => void\n ): ReactiveGradientAsset => {\n return new ReactiveGradientAsset(\n 'reactive-radial',\n { type: 'radial', options, __reactive: true },\n updateCallback\n )\n },\n\n /**\n * Create a reactive angular gradient\n */\n angular: (\n options: ReactiveAngularGradientOptions,\n updateCallback?: () => void\n ): ReactiveGradientAsset => {\n return new ReactiveGradientAsset(\n 'reactive-angular',\n { type: 'angular', options, __reactive: true },\n updateCallback\n )\n },\n\n /**\n * Create a reactive state gradient\n */\n state: (\n name: string,\n options: ReactiveStateGradientAsset['reactiveStateGradients'],\n updateCallback?: () => void\n ): ReactiveStateGradientAsset => {\n return new ReactiveStateGradientAsset(name, options, updateCallback)\n }\n} as const\n\n/**\n * Utility functions for working with reactive gradients\n */\nexport const ReactiveGradientUtils = {\n /**\n * Create an animated gradient that cycles through colors\n */\n createAnimatedGradient: (\n colors: string[],\n _duration: number = 3000\n ): ReactiveGradientAsset => {\n // This would need actual signal implementation\n // Placeholder for the concept\n const colorSignal = {\n value: colors[0],\n subscribe: (_callback: () => void) => {\n // Implementation would cycle through colors\n return () => {} // unsubscribe\n }\n } satisfies Signal<string>\n\n return ReactiveGradients.linear({\n colors: [colorSignal, colors[1]],\n startPoint: 'top',\n endPoint: 'bottom'\n })\n },\n\n /**\n * Create a progress gradient that fills based on a signal\n */\n createProgressGradient: (\n progressSignal: Signal<number>,\n color: string = '#007AFF'\n ): ReactiveGradientAsset => {\n return ReactiveGradients.linear({\n colors: [color, 'transparent'],\n stops: [progressSignal, progressSignal], // Both stops use the same signal\n startPoint: 'leading',\n endPoint: 'trailing'\n })\n },\n\n /**\n * Create a data-driven gradient that reflects numeric values\n */\n createDataGradient: (\n _valueSignal: Signal<number>,\n _minValue: number,\n _maxValue: number,\n colorScale: string[] = ['#ff0000', '#ffff00', '#00ff00']\n ): ReactiveGradientAsset => {\n // Implementation would map value to color index\n // This is a conceptual placeholder\n return ReactiveGradients.linear({\n colors: colorScale,\n startPoint: 'top',\n endPoint: 'bottom'\n })\n }\n} as const\n\n/**\n * Enhanced background modifier support for reactive gradients\n */\nexport const ReactiveBackgroundUtils = {\n /**\n * Check if a background value is reactive\n */\n isReactiveBackground: (value: unknown): value is ReactiveGradientAsset | ReactiveStateGradientAsset => {\n return value instanceof ReactiveGradientAsset || value instanceof ReactiveStateGradientAsset\n },\n\n /**\n * Create a reactive background from a signal\n */\n fromSignal: (backgroundSignal: Signal<StatefulBackgroundValue>): ReactiveStateGradientAsset => {\n return ReactiveGradients.state('signal-background', {\n default: backgroundSignal\n })\n }\n} as const"],"names":["ReactiveGradientAsset","AssetClass","name","reactiveDefinition","updateCallback","__publicField","newDefinition","unsubscribe","type","options","LinearGradient","RadialGradient","AngularGradient","color","stop","value","_key","item","gradient","gradientToCSS","ReactiveStateGradientAsset","StateGradientAsset","reactiveStateGradients","initialState","newState","resolvedState","reactiveState","resolved","key","ReactiveGradients","ReactiveGradientUtils","colors","_duration","colorSignal","_callback","progressSignal","_valueSignal","_minValue","_maxValue","colorScale","ReactiveBackgroundUtils","backgroundSignal"],"mappings":"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"}
|
|
@@ -1,239 +0,0 @@
|
|
|
1
|
-
import { Asset as c } from "../assets/Asset.js";
|
|
2
|
-
import { AngularGradient as h, RadialGradient as d, LinearGradient as p } from "./index.js";
|
|
3
|
-
import { StateGradientAsset as b } from "./state-gradient-asset.js";
|
|
4
|
-
var f = Object.defineProperty, g = (i, e, t) => e in i ? f(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t, n = (i, e, t) => g(i, typeof e != "symbol" ? e + "" : e, t);
|
|
5
|
-
class l extends c {
|
|
6
|
-
constructor(e, t, s) {
|
|
7
|
-
super(e), this.reactiveDefinition = t, n(this, "currentGradient"), n(this, "subscriptions", []), n(this, "updateCallback"), this.updateCallback = s, this.currentGradient = this.resolveStaticGradient(), this.setupSignalSubscriptions();
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Resolve current gradient to CSS
|
|
11
|
-
*/
|
|
12
|
-
resolve() {
|
|
13
|
-
return this.gradientToCSS(this.currentGradient);
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Get current static gradient (resolved from signals)
|
|
17
|
-
*/
|
|
18
|
-
getCurrentGradient() {
|
|
19
|
-
return this.currentGradient;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Update the reactive definition and re-subscribe to signals
|
|
23
|
-
*/
|
|
24
|
-
updateDefinition(e) {
|
|
25
|
-
this.cleanup(), this.reactiveDefinition = e, this.currentGradient = this.resolveStaticGradient(), this.setupSignalSubscriptions(), this.notifyUpdate();
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Clean up signal subscriptions
|
|
29
|
-
*/
|
|
30
|
-
cleanup() {
|
|
31
|
-
this.subscriptions.forEach((e) => e()), this.subscriptions = [];
|
|
32
|
-
}
|
|
33
|
-
resolveStaticGradient() {
|
|
34
|
-
const { type: e, options: t } = this.reactiveDefinition;
|
|
35
|
-
switch (e) {
|
|
36
|
-
case "linear":
|
|
37
|
-
return p(this.resolveLinearOptions(t));
|
|
38
|
-
case "radial":
|
|
39
|
-
return d(this.resolveRadialOptions(t));
|
|
40
|
-
case "angular":
|
|
41
|
-
case "conic":
|
|
42
|
-
return h(this.resolveAngularOptions(t));
|
|
43
|
-
default:
|
|
44
|
-
throw new Error(`Unsupported reactive gradient type: ${e}`);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
resolveLinearOptions(e) {
|
|
48
|
-
return {
|
|
49
|
-
colors: e.colors.map((t) => this.resolveValue(t)),
|
|
50
|
-
stops: e.stops?.map((t) => this.resolveValue(t)),
|
|
51
|
-
startPoint: this.resolveValue(e.startPoint),
|
|
52
|
-
endPoint: this.resolveValue(e.endPoint),
|
|
53
|
-
angle: e.angle ? this.resolveValue(e.angle) : void 0
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
resolveRadialOptions(e) {
|
|
57
|
-
return {
|
|
58
|
-
colors: e.colors.map((t) => this.resolveValue(t)),
|
|
59
|
-
stops: e.stops?.map((t) => this.resolveValue(t)),
|
|
60
|
-
center: this.resolveValue(e.center),
|
|
61
|
-
startRadius: this.resolveValue(e.startRadius),
|
|
62
|
-
endRadius: this.resolveValue(e.endRadius),
|
|
63
|
-
shape: e.shape ? this.resolveValue(e.shape) : void 0
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
resolveAngularOptions(e) {
|
|
67
|
-
return {
|
|
68
|
-
colors: e.colors.map((t) => this.resolveValue(t)),
|
|
69
|
-
stops: e.stops?.map((t) => this.resolveValue(t)),
|
|
70
|
-
center: this.resolveValue(e.center),
|
|
71
|
-
startAngle: this.resolveValue(e.startAngle),
|
|
72
|
-
endAngle: this.resolveValue(e.endAngle)
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
resolveValue(e) {
|
|
76
|
-
return this.isSignal(e) ? e.value : e;
|
|
77
|
-
}
|
|
78
|
-
isSignal(e) {
|
|
79
|
-
return e !== null && typeof e == "object" && "value" in e && "subscribe" in e;
|
|
80
|
-
}
|
|
81
|
-
setupSignalSubscriptions() {
|
|
82
|
-
this.subscribeToSignalsInOptions(this.reactiveDefinition.options);
|
|
83
|
-
}
|
|
84
|
-
subscribeToSignalsInOptions(e) {
|
|
85
|
-
for (const [t, s] of Object.entries(e))
|
|
86
|
-
if (Array.isArray(s))
|
|
87
|
-
s.forEach((a) => {
|
|
88
|
-
if (this.isSignal(a)) {
|
|
89
|
-
const u = a.subscribe(() => this.handleSignalChange());
|
|
90
|
-
this.subscriptions.push(u);
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
else if (this.isSignal(s)) {
|
|
94
|
-
const a = s.subscribe(() => this.handleSignalChange());
|
|
95
|
-
this.subscriptions.push(a);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
handleSignalChange() {
|
|
99
|
-
this.currentGradient = this.resolveStaticGradient(), this.notifyUpdate();
|
|
100
|
-
}
|
|
101
|
-
notifyUpdate() {
|
|
102
|
-
this.updateCallback && this.updateCallback();
|
|
103
|
-
}
|
|
104
|
-
gradientToCSS(e) {
|
|
105
|
-
const { gradientToCSS: t } = require("./css-generator");
|
|
106
|
-
return t(e);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
class r extends b {
|
|
110
|
-
constructor(e, t, s) {
|
|
111
|
-
const a = r.resolveStateOptions(t);
|
|
112
|
-
super(e, a), this.reactiveStateGradients = t, this.updateCallback = s, n(this, "reactiveSubscriptions", []), this.setupStateSignalSubscriptions();
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* Update reactive state configuration
|
|
116
|
-
*/
|
|
117
|
-
updateReactiveState(e) {
|
|
118
|
-
this.cleanupStateSubscriptions(), this.reactiveStateGradients = e;
|
|
119
|
-
const t = r.resolveStateOptions(e);
|
|
120
|
-
this.updateStateGradients(t), this.setupStateSignalSubscriptions(), this.notifyStateUpdate();
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Clean up signal subscriptions
|
|
124
|
-
*/
|
|
125
|
-
cleanupStateSubscriptions() {
|
|
126
|
-
this.reactiveSubscriptions.forEach((e) => e()), this.reactiveSubscriptions = [];
|
|
127
|
-
}
|
|
128
|
-
static resolveStateOptions(e) {
|
|
129
|
-
const t = {
|
|
130
|
-
default: r.resolveValue(e.default),
|
|
131
|
-
animation: e.animation
|
|
132
|
-
};
|
|
133
|
-
return e.hover && (t.hover = r.resolveValue(e.hover)), e.active && (t.active = r.resolveValue(e.active)), e.focus && (t.focus = r.resolveValue(e.focus)), e.disabled && (t.disabled = r.resolveValue(e.disabled)), t;
|
|
134
|
-
}
|
|
135
|
-
static resolveValue(e) {
|
|
136
|
-
return e !== null && typeof e == "object" && "value" in e && "subscribe" in e ? e.value : e;
|
|
137
|
-
}
|
|
138
|
-
static isSignal(e) {
|
|
139
|
-
return e !== null && typeof e == "object" && "value" in e && "subscribe" in e;
|
|
140
|
-
}
|
|
141
|
-
setupStateSignalSubscriptions() {
|
|
142
|
-
Object.entries(this.reactiveStateGradients).forEach(([e, t]) => {
|
|
143
|
-
if (e !== "animation" && r.isSignal(t)) {
|
|
144
|
-
const s = t.subscribe(() => this.handleStateSignalChange());
|
|
145
|
-
this.reactiveSubscriptions.push(s);
|
|
146
|
-
}
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
handleStateSignalChange() {
|
|
150
|
-
const e = r.resolveStateOptions(this.reactiveStateGradients);
|
|
151
|
-
this.updateStateGradients(e), this.notifyStateUpdate();
|
|
152
|
-
}
|
|
153
|
-
notifyStateUpdate() {
|
|
154
|
-
this.updateCallback && this.updateCallback();
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
const o = {
|
|
158
|
-
/**
|
|
159
|
-
* Create a reactive linear gradient
|
|
160
|
-
*/
|
|
161
|
-
linear: (i, e) => new l(
|
|
162
|
-
"reactive-linear",
|
|
163
|
-
{ type: "linear", options: i, __reactive: !0 },
|
|
164
|
-
e
|
|
165
|
-
),
|
|
166
|
-
/**
|
|
167
|
-
* Create a reactive radial gradient
|
|
168
|
-
*/
|
|
169
|
-
radial: (i, e) => new l(
|
|
170
|
-
"reactive-radial",
|
|
171
|
-
{ type: "radial", options: i, __reactive: !0 },
|
|
172
|
-
e
|
|
173
|
-
),
|
|
174
|
-
/**
|
|
175
|
-
* Create a reactive angular gradient
|
|
176
|
-
*/
|
|
177
|
-
angular: (i, e) => new l(
|
|
178
|
-
"reactive-angular",
|
|
179
|
-
{ type: "angular", options: i, __reactive: !0 },
|
|
180
|
-
e
|
|
181
|
-
),
|
|
182
|
-
/**
|
|
183
|
-
* Create a reactive state gradient
|
|
184
|
-
*/
|
|
185
|
-
state: (i, e, t) => new r(i, e, t)
|
|
186
|
-
}, m = {
|
|
187
|
-
/**
|
|
188
|
-
* Create an animated gradient that cycles through colors
|
|
189
|
-
*/
|
|
190
|
-
createAnimatedGradient: (i, e = 3e3) => {
|
|
191
|
-
const t = {
|
|
192
|
-
value: i[0],
|
|
193
|
-
subscribe: (s) => () => {
|
|
194
|
-
}
|
|
195
|
-
};
|
|
196
|
-
return o.linear({
|
|
197
|
-
colors: [t, i[1]],
|
|
198
|
-
startPoint: "top",
|
|
199
|
-
endPoint: "bottom"
|
|
200
|
-
});
|
|
201
|
-
},
|
|
202
|
-
/**
|
|
203
|
-
* Create a progress gradient that fills based on a signal
|
|
204
|
-
*/
|
|
205
|
-
createProgressGradient: (i, e = "#007AFF") => o.linear({
|
|
206
|
-
colors: [e, "transparent"],
|
|
207
|
-
stops: [i, i],
|
|
208
|
-
// Both stops use the same signal
|
|
209
|
-
startPoint: "leading",
|
|
210
|
-
endPoint: "trailing"
|
|
211
|
-
}),
|
|
212
|
-
/**
|
|
213
|
-
* Create a data-driven gradient that reflects numeric values
|
|
214
|
-
*/
|
|
215
|
-
createDataGradient: (i, e, t, s = ["#ff0000", "#ffff00", "#00ff00"]) => o.linear({
|
|
216
|
-
colors: s,
|
|
217
|
-
startPoint: "top",
|
|
218
|
-
endPoint: "bottom"
|
|
219
|
-
})
|
|
220
|
-
}, G = {
|
|
221
|
-
/**
|
|
222
|
-
* Check if a background value is reactive
|
|
223
|
-
*/
|
|
224
|
-
isReactiveBackground: (i) => i instanceof l || i instanceof r,
|
|
225
|
-
/**
|
|
226
|
-
* Create a reactive background from a signal
|
|
227
|
-
*/
|
|
228
|
-
fromSignal: (i) => o.state("signal-background", {
|
|
229
|
-
default: i
|
|
230
|
-
})
|
|
231
|
-
};
|
|
232
|
-
export {
|
|
233
|
-
G as ReactiveBackgroundUtils,
|
|
234
|
-
l as ReactiveGradientAsset,
|
|
235
|
-
m as ReactiveGradientUtils,
|
|
236
|
-
o as ReactiveGradients,
|
|
237
|
-
r as ReactiveStateGradientAsset
|
|
238
|
-
};
|
|
239
|
-
//# sourceMappingURL=reactive.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reactive.js","sources":["../../src/gradients/reactive.ts"],"sourcesContent":["/**\n * Reactive Signal Integration for TachUI Gradients\n * \n * Enables dynamic gradients that update based on reactive signals,\n * allowing for animated and data-driven gradient effects.\n */\n\n// Define Signal interface for gradients\ninterface Signal<T> {\n readonly value: T\n subscribe(callback: () => void): () => void\n}\nimport type { Asset } from '../assets/types'\nimport { Asset as AssetClass } from '../assets/Asset'\nimport type {\n GradientDefinition,\n LinearGradientOptions,\n RadialGradientOptions,\n AngularGradientOptions,\n StateGradientOptions,\n StatefulBackgroundValue\n} from './types'\nimport { LinearGradient, RadialGradient, AngularGradient } from './index'\nimport { StateGradientAsset } from './state-gradient-asset'\n\n/**\n * Reactive gradient options supporting signal-based values\n */\nexport interface ReactiveLinearGradientOptions {\n colors: (string | Asset | Signal<string>)[]\n stops?: (number | Signal<number>)[]\n startPoint: LinearGradientOptions['startPoint'] | Signal<LinearGradientOptions['startPoint']>\n endPoint: LinearGradientOptions['endPoint'] | Signal<LinearGradientOptions['endPoint']>\n angle?: number | Signal<number>\n}\n\nexport interface ReactiveRadialGradientOptions {\n colors: (string | Asset | Signal<string>)[]\n stops?: (number | Signal<number>)[]\n center: RadialGradientOptions['center'] | Signal<RadialGradientOptions['center']>\n startRadius: number | Signal<number>\n endRadius: number | Signal<number>\n shape?: RadialGradientOptions['shape'] | Signal<RadialGradientOptions['shape']>\n}\n\nexport interface ReactiveAngularGradientOptions {\n colors: (string | Asset | Signal<string>)[]\n stops?: (number | Signal<number>)[]\n center: AngularGradientOptions['center'] | Signal<AngularGradientOptions['center']>\n startAngle: number | Signal<number>\n endAngle: number | Signal<number>\n}\n\n/**\n * Reactive gradient definition\n */\nexport interface ReactiveGradientDefinition {\n type: GradientDefinition['type']\n options: ReactiveLinearGradientOptions | ReactiveRadialGradientOptions | ReactiveAngularGradientOptions\n __reactive: true\n}\n\n/**\n * Reactive gradient asset that updates when signals change\n */\nexport class ReactiveGradientAsset extends AssetClass<string> {\n private currentGradient: GradientDefinition\n private subscriptions: (() => void)[] = []\n private updateCallback?: () => void\n\n constructor(\n name: string,\n private reactiveDefinition: ReactiveGradientDefinition,\n updateCallback?: () => void\n ) {\n super(name)\n this.updateCallback = updateCallback\n this.currentGradient = this.resolveStaticGradient()\n this.setupSignalSubscriptions()\n }\n\n /**\n * Resolve current gradient to CSS\n */\n resolve(): string {\n return this.gradientToCSS(this.currentGradient)\n }\n\n /**\n * Get current static gradient (resolved from signals)\n */\n getCurrentGradient(): GradientDefinition {\n return this.currentGradient\n }\n\n /**\n * Update the reactive definition and re-subscribe to signals\n */\n updateDefinition(newDefinition: ReactiveGradientDefinition): void {\n this.cleanup()\n this.reactiveDefinition = newDefinition\n this.currentGradient = this.resolveStaticGradient()\n this.setupSignalSubscriptions()\n this.notifyUpdate()\n }\n\n /**\n * Clean up signal subscriptions\n */\n cleanup(): void {\n this.subscriptions.forEach(unsubscribe => unsubscribe())\n this.subscriptions = []\n }\n\n private resolveStaticGradient(): GradientDefinition {\n const { type, options } = this.reactiveDefinition\n\n switch (type) {\n case 'linear':\n return LinearGradient(this.resolveLinearOptions(options as ReactiveLinearGradientOptions))\n case 'radial':\n return RadialGradient(this.resolveRadialOptions(options as ReactiveRadialGradientOptions))\n case 'angular':\n case 'conic':\n return AngularGradient(this.resolveAngularOptions(options as ReactiveAngularGradientOptions))\n default:\n throw new Error(`Unsupported reactive gradient type: ${type}`)\n }\n }\n\n private resolveLinearOptions(options: ReactiveLinearGradientOptions): LinearGradientOptions {\n return {\n colors: options.colors.map(color => this.resolveValue(color)),\n stops: options.stops?.map(stop => this.resolveValue(stop)),\n startPoint: this.resolveValue(options.startPoint),\n endPoint: this.resolveValue(options.endPoint),\n angle: options.angle ? this.resolveValue(options.angle) : undefined\n }\n }\n\n private resolveRadialOptions(options: ReactiveRadialGradientOptions): RadialGradientOptions {\n return {\n colors: options.colors.map(color => this.resolveValue(color)),\n stops: options.stops?.map(stop => this.resolveValue(stop)),\n center: this.resolveValue(options.center),\n startRadius: this.resolveValue(options.startRadius),\n endRadius: this.resolveValue(options.endRadius),\n shape: options.shape ? this.resolveValue(options.shape) : undefined\n }\n }\n\n private resolveAngularOptions(options: ReactiveAngularGradientOptions): AngularGradientOptions {\n return {\n colors: options.colors.map(color => this.resolveValue(color)),\n stops: options.stops?.map(stop => this.resolveValue(stop)),\n center: this.resolveValue(options.center),\n startAngle: this.resolveValue(options.startAngle),\n endAngle: this.resolveValue(options.endAngle)\n }\n }\n\n private resolveValue<T>(value: T | Signal<T>): T {\n if (this.isSignal(value)) {\n return (value as Signal<T>).value\n }\n return value as T\n }\n\n private isSignal<T>(value: T | Signal<T>): value is Signal<T> {\n return value !== null && \n typeof value === 'object' && \n 'value' in value && \n 'subscribe' in value\n }\n\n private setupSignalSubscriptions(): void {\n this.subscribeToSignalsInOptions(this.reactiveDefinition.options)\n }\n\n private subscribeToSignalsInOptions(options: any): void {\n for (const [_key, value] of Object.entries(options)) {\n if (Array.isArray(value)) {\n // Handle arrays (colors, stops)\n value.forEach(item => {\n if (this.isSignal(item)) {\n const unsubscribe = (item as Signal<any>).subscribe(() => this.handleSignalChange())\n this.subscriptions.push(unsubscribe)\n }\n })\n } else if (this.isSignal(value)) {\n // Handle individual signals\n const unsubscribe = (value as Signal<any>).subscribe(() => this.handleSignalChange())\n this.subscriptions.push(unsubscribe)\n }\n }\n }\n\n private handleSignalChange(): void {\n this.currentGradient = this.resolveStaticGradient()\n this.notifyUpdate()\n }\n\n private notifyUpdate(): void {\n if (this.updateCallback) {\n this.updateCallback()\n }\n }\n\n private gradientToCSS(gradient: GradientDefinition): string {\n // Import and use the existing CSS generator\n const { gradientToCSS } = require('./css-generator')\n return gradientToCSS(gradient)\n }\n}\n\n/**\n * Reactive state gradient asset with signal support\n */\nexport class ReactiveStateGradientAsset extends StateGradientAsset {\n private reactiveSubscriptions: (() => void)[] = []\n\n constructor(\n name: string,\n private reactiveStateGradients: {\n default: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n hover?: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n active?: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n focus?: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n disabled?: StatefulBackgroundValue | Signal<StatefulBackgroundValue>\n animation?: StateGradientOptions['animation']\n },\n private updateCallback?: () => void\n ) {\n // Resolve initial state\n const initialState = ReactiveStateGradientAsset.resolveStateOptions(reactiveStateGradients)\n super(name, initialState)\n \n this.setupStateSignalSubscriptions()\n }\n\n /**\n * Update reactive state configuration\n */\n updateReactiveState(\n newState: ReactiveStateGradientAsset['reactiveStateGradients']\n ): void {\n this.cleanupStateSubscriptions()\n this.reactiveStateGradients = newState\n \n // Update the underlying state gradients\n const resolvedState = ReactiveStateGradientAsset.resolveStateOptions(newState)\n this.updateStateGradients(resolvedState)\n \n this.setupStateSignalSubscriptions()\n this.notifyStateUpdate()\n }\n\n /**\n * Clean up signal subscriptions\n */\n cleanupStateSubscriptions(): void {\n this.reactiveSubscriptions.forEach(unsubscribe => unsubscribe())\n this.reactiveSubscriptions = []\n }\n\n private static resolveStateOptions(\n reactiveState: ReactiveStateGradientAsset['reactiveStateGradients']\n ): StateGradientOptions {\n const resolved: StateGradientOptions = {\n default: ReactiveStateGradientAsset.resolveValue(reactiveState.default) as any,\n animation: reactiveState.animation\n }\n\n if (reactiveState.hover) {\n resolved.hover = ReactiveStateGradientAsset.resolveValue(reactiveState.hover) as any\n }\n if (reactiveState.active) {\n resolved.active = ReactiveStateGradientAsset.resolveValue(reactiveState.active) as any\n }\n if (reactiveState.focus) {\n resolved.focus = ReactiveStateGradientAsset.resolveValue(reactiveState.focus) as any\n }\n if (reactiveState.disabled) {\n resolved.disabled = ReactiveStateGradientAsset.resolveValue(reactiveState.disabled) as any\n }\n\n return resolved\n }\n\n private static resolveValue<T>(value: T | Signal<T>): T {\n if (value !== null && \n typeof value === 'object' && \n 'value' in value && \n 'subscribe' in value) {\n return (value as Signal<T>).value\n }\n return value as T\n }\n\n private static isSignal<T>(value: T | Signal<T>): value is Signal<T> {\n return value !== null && \n typeof value === 'object' && \n 'value' in value && \n 'subscribe' in value\n }\n\n private setupStateSignalSubscriptions(): void {\n Object.entries(this.reactiveStateGradients).forEach(([key, value]) => {\n if (key === 'animation') return // Skip animation\n \n if (ReactiveStateGradientAsset.isSignal(value)) {\n const unsubscribe = (value as Signal<any>).subscribe(() => this.handleStateSignalChange())\n this.reactiveSubscriptions.push(unsubscribe)\n }\n })\n }\n\n private handleStateSignalChange(): void {\n const resolvedState = ReactiveStateGradientAsset.resolveStateOptions(this.reactiveStateGradients)\n this.updateStateGradients(resolvedState)\n this.notifyStateUpdate()\n }\n\n private notifyStateUpdate(): void {\n if (this.updateCallback) {\n this.updateCallback()\n }\n }\n}\n\n/**\n * Factory functions for creating reactive gradients\n */\nexport const ReactiveGradients = {\n /**\n * Create a reactive linear gradient\n */\n linear: (\n options: ReactiveLinearGradientOptions,\n updateCallback?: () => void\n ): ReactiveGradientAsset => {\n return new ReactiveGradientAsset(\n 'reactive-linear',\n { type: 'linear', options, __reactive: true },\n updateCallback\n )\n },\n\n /**\n * Create a reactive radial gradient\n */\n radial: (\n options: ReactiveRadialGradientOptions,\n updateCallback?: () => void\n ): ReactiveGradientAsset => {\n return new ReactiveGradientAsset(\n 'reactive-radial',\n { type: 'radial', options, __reactive: true },\n updateCallback\n )\n },\n\n /**\n * Create a reactive angular gradient\n */\n angular: (\n options: ReactiveAngularGradientOptions,\n updateCallback?: () => void\n ): ReactiveGradientAsset => {\n return new ReactiveGradientAsset(\n 'reactive-angular',\n { type: 'angular', options, __reactive: true },\n updateCallback\n )\n },\n\n /**\n * Create a reactive state gradient\n */\n state: (\n name: string,\n options: ReactiveStateGradientAsset['reactiveStateGradients'],\n updateCallback?: () => void\n ): ReactiveStateGradientAsset => {\n return new ReactiveStateGradientAsset(name, options, updateCallback)\n }\n} as const\n\n/**\n * Utility functions for working with reactive gradients\n */\nexport const ReactiveGradientUtils = {\n /**\n * Create an animated gradient that cycles through colors\n */\n createAnimatedGradient: (\n colors: string[],\n _duration: number = 3000\n ): ReactiveGradientAsset => {\n // This would need actual signal implementation\n // Placeholder for the concept\n const colorSignal = {\n value: colors[0],\n subscribe: (_callback: () => void) => {\n // Implementation would cycle through colors\n return () => {} // unsubscribe\n }\n } satisfies Signal<string>\n\n return ReactiveGradients.linear({\n colors: [colorSignal, colors[1]],\n startPoint: 'top',\n endPoint: 'bottom'\n })\n },\n\n /**\n * Create a progress gradient that fills based on a signal\n */\n createProgressGradient: (\n progressSignal: Signal<number>,\n color: string = '#007AFF'\n ): ReactiveGradientAsset => {\n return ReactiveGradients.linear({\n colors: [color, 'transparent'],\n stops: [progressSignal, progressSignal], // Both stops use the same signal\n startPoint: 'leading',\n endPoint: 'trailing'\n })\n },\n\n /**\n * Create a data-driven gradient that reflects numeric values\n */\n createDataGradient: (\n _valueSignal: Signal<number>,\n _minValue: number,\n _maxValue: number,\n colorScale: string[] = ['#ff0000', '#ffff00', '#00ff00']\n ): ReactiveGradientAsset => {\n // Implementation would map value to color index\n // This is a conceptual placeholder\n return ReactiveGradients.linear({\n colors: colorScale,\n startPoint: 'top',\n endPoint: 'bottom'\n })\n }\n} as const\n\n/**\n * Enhanced background modifier support for reactive gradients\n */\nexport const ReactiveBackgroundUtils = {\n /**\n * Check if a background value is reactive\n */\n isReactiveBackground: (value: unknown): value is ReactiveGradientAsset | ReactiveStateGradientAsset => {\n return value instanceof ReactiveGradientAsset || value instanceof ReactiveStateGradientAsset\n },\n\n /**\n * Create a reactive background from a signal\n */\n fromSignal: (backgroundSignal: Signal<StatefulBackgroundValue>): ReactiveStateGradientAsset => {\n return ReactiveGradients.state('signal-background', {\n default: backgroundSignal\n })\n }\n} as const"],"names":["ReactiveGradientAsset","AssetClass","name","reactiveDefinition","updateCallback","__publicField","newDefinition","unsubscribe","type","options","LinearGradient","RadialGradient","AngularGradient","color","stop","value","_key","item","gradient","gradientToCSS","ReactiveStateGradientAsset","StateGradientAsset","reactiveStateGradients","initialState","newState","resolvedState","reactiveState","resolved","key","ReactiveGradients","ReactiveGradientUtils","colors","_duration","colorSignal","_callback","progressSignal","_valueSignal","_minValue","_maxValue","colorScale","ReactiveBackgroundUtils","backgroundSignal"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../assets/Asset.cjs"),o=require("./css-generator.cjs");var d=Object.defineProperty,h=(i,t,e)=>t in i?d(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e,n=(i,t,e)=>h(i,typeof t!="symbol"?t+"":t,e);class r extends a.Asset{constructor(t,e){super(t),this.stateGradients=e,n(this,"currentState","default"),n(this,"animationOptions"),n(this,"resolvedGradientCache",new Map),n(this,"isTransitioning",!1),this.animationOptions=e.animation||{duration:300,easing:"ease",delay:0},this.preResolveGradients()}setState(t){t!==this.currentState&&this.stateGradients[t]&&!this.isTransitioning&&(this.currentState=t,this.animationOptions.duration&&this.animationOptions.duration>0&&(this.isTransitioning=!0,setTimeout(()=>{this.isTransitioning=!1},this.animationOptions.duration+(this.animationOptions.delay||0))))}getState(){return this.currentState}resolve(){const t=this.currentState;if(this.resolvedGradientCache.has(t))return this.resolvedGradientCache.get(t);const e=this.stateGradients[this.currentState]||this.stateGradients.default,s=this.resolveGradientValue(e);return this.resolvedGradientCache.set(t,s),s}getStateGradient(t){const e=this.stateGradients[t]||this.stateGradients.default;return this.resolveGradientValue(e)}getAnimationCSS(){const{duration:t,easing:e,delay:s}=this.animationOptions;return`transition: background ${t}ms ${e} ${s||0}ms;`}getAvailableStates(){return Object.keys(this.stateGradients).filter(t=>this.stateGradients[t]!==void 0)}hasState(t){return t in this.stateGradients&&this.stateGradients[t]!==void 0}setAnimation(t){this.animationOptions={...this.animationOptions,...t}}resolveGradientValue(t){return typeof t=="string"?t:this.isAsset(t)?t.resolve():this.isGradientDefinition(t)?o.gradientToCSS(t):""}isAsset(t){return t&&typeof t=="object"&&typeof t.resolve=="function"}isGradientDefinition(t){return t&&typeof t=="object"&&"type"in t&&"options"in t}preResolveGradients(){Object.keys(this.stateGradients).forEach(t=>{const e=t;if(e!=="animation"&&this.stateGradients[e]){const s=this.resolveGradientValue(this.stateGradients[e]);this.resolvedGradientCache.set(e,s)}})}clearCache(){this.resolvedGradientCache.clear(),this.preResolveGradients()}updateStateGradients(t){this.stateGradients=t,this.animationOptions=t.animation||this.animationOptions,this.clearCache()}}function c(i,t){return new r(i,t)}exports.StateGradient=c;exports.StateGradientAsset=r;
|
|
2
|
-
//# sourceMappingURL=state-gradient-asset.cjs.map
|