@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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transformations.cjs","sources":["../../src/modifiers/transformations.ts"],"sourcesContent":["/**\n * Transformation Modifiers - CSS Transform System\n *\n * Provides comprehensive 2D and 3D transform capabilities including\n * scale, rotate, translate, skew, perspective, and matrix transforms.\n */\n\nimport type { DOMNode } from '../runtime/types'\nimport { BaseModifier } from './base'\nimport type { ModifierContext, ReactiveModifierProps } from './types'\n\nexport interface TransformConfig {\n scale?: number | { x?: number; y?: number }\n rotate?: string\n translate?: { x?: number | string; y?: number | string }\n skew?: { x?: string; y?: string }\n perspective?: number\n}\n\nexport interface Transform3DConfig extends TransformConfig {\n rotateX?: string\n rotateY?: string\n rotateZ?: string\n translate?: { x?: number | string; y?: number | string; z?: number | string }\n translateZ?: number | string\n scaleZ?: number\n}\n\nexport interface ModifierTransformOptions {\n transform?: TransformConfig | Transform3DConfig\n transformOrigin?: string\n backfaceVisibility?: 'visible' | 'hidden'\n transformStyle?: 'flat' | 'preserve-3d'\n}\n\nexport type ReactiveTransformOptions = ReactiveModifierProps<ModifierTransformOptions>\n\nexport class TransformModifier extends BaseModifier<ModifierTransformOptions> {\n readonly type = 'transform'\n readonly priority = 45\n\n constructor(options: ReactiveTransformOptions) {\n const resolvedOptions: ModifierTransformOptions = {}\n for (const [key, value] of Object.entries(options)) {\n if (typeof value === 'function' && 'peek' in value) {\n ;(resolvedOptions as any)[key] = (value as any).peek()\n } else {\n ;(resolvedOptions as any)[key] = value\n }\n }\n super(resolvedOptions)\n }\n\n apply(_node: DOMNode, context: ModifierContext): DOMNode | undefined {\n if (!context.element) return\n\n const styles = this.computeTransformStyles(this.properties)\n this.applyStyles(context.element, styles)\n\n return undefined\n }\n\n private computeTransformStyles(props: ModifierTransformOptions) {\n const styles: Record<string, string> = {}\n\n if (props.transform) {\n styles.transform = this.generateTransformCSS(props.transform)\n }\n\n if (props.transformOrigin) {\n styles.transformOrigin = props.transformOrigin\n }\n\n if (props.backfaceVisibility) {\n styles.backfaceVisibility = props.backfaceVisibility\n }\n\n if (props.transformStyle) {\n styles.transformStyle = props.transformStyle\n }\n\n return styles\n }\n\n private generateTransformCSS(config: TransformConfig | Transform3DConfig): string {\n const transforms: string[] = []\n\n // Handle perspective first (for 3D transforms)\n if ('perspective' in config && config.perspective !== undefined) {\n transforms.push(`perspective(${config.perspective}px)`)\n }\n\n // Handle scale\n if (config.scale !== undefined) {\n if (typeof config.scale === 'number') {\n transforms.push(`scale(${config.scale})`)\n } else {\n const x = config.scale.x ?? 1\n const y = config.scale.y ?? 1\n transforms.push(`scale(${x}, ${y})`)\n }\n }\n\n // Handle rotate (2D)\n if (config.rotate !== undefined) {\n transforms.push(`rotate(${config.rotate})`)\n }\n\n // Handle 3D rotations\n if ('rotateX' in config && config.rotateX !== undefined) {\n transforms.push(`rotateX(${config.rotateX})`)\n }\n if ('rotateY' in config && config.rotateY !== undefined) {\n transforms.push(`rotateY(${config.rotateY})`)\n }\n if ('rotateZ' in config && config.rotateZ !== undefined) {\n transforms.push(`rotateZ(${config.rotateZ})`)\n }\n\n // Handle translate\n if (config.translate !== undefined) {\n const x = this.formatLength(config.translate.x ?? 0)\n const y = this.formatLength(config.translate.y ?? 0)\n\n // Check for Z value in translate object or translateZ property\n let z = '0'\n if ('z' in config.translate && config.translate.z !== undefined) {\n z = this.formatLength(config.translate.z)\n } else if ('translateZ' in config && config.translateZ !== undefined) {\n z = this.formatLength(config.translateZ)\n }\n\n // Always use translate3d for hardware acceleration\n transforms.push(`translate3d(${x}, ${y}, ${z})`)\n }\n\n // Handle 3D scale\n if ('scaleZ' in config && config.scaleZ !== undefined) {\n transforms.push(`scaleZ(${config.scaleZ})`)\n }\n\n // Handle skew\n if (config.skew !== undefined) {\n if (config.skew.x !== undefined && config.skew.y !== undefined) {\n transforms.push(`skew(${config.skew.x}, ${config.skew.y})`)\n } else if (config.skew.x !== undefined) {\n transforms.push(`skewX(${config.skew.x})`)\n } else if (config.skew.y !== undefined) {\n transforms.push(`skewY(${config.skew.y})`)\n }\n }\n\n return transforms.join(' ')\n }\n\n private formatLength(value: number | string): string {\n if (typeof value === 'number') {\n return `${value}px`\n }\n return value\n }\n}\n\n// ============================================================================\n// Advanced Transform System for Matrix and Extended 3D\n// ============================================================================\n\nexport interface MatrixTransformConfig {\n matrix?: [number, number, number, number, number, number]\n matrix3d?: [\n number, number, number, number,\n number, number, number, number,\n number, number, number, number,\n number, number, number, number\n ]\n}\n\nexport interface Advanced3DTransformConfig {\n rotate3d?: { x: number; y: number; z: number; angle: string }\n scale3d?: { x: number; y: number; z: number }\n translate3d?: { x?: number | string; y?: number | string; z?: number | string }\n scaleX?: number\n scaleY?: number\n scaleZ?: number\n translateX?: number | string\n translateY?: number | string\n translateZ?: number | string\n}\n\nexport interface ModifierAdvancedTransformOptions {\n transform?: TransformConfig | Transform3DConfig | MatrixTransformConfig | Advanced3DTransformConfig\n transformOrigin?: string\n perspectiveOrigin?: string\n transformStyle?: 'flat' | 'preserve-3d'\n backfaceVisibility?: 'visible' | 'hidden'\n}\n\nexport type ReactiveAdvancedTransformOptions = ReactiveModifierProps<ModifierAdvancedTransformOptions>\n\nexport class AdvancedTransformModifier extends BaseModifier<ModifierAdvancedTransformOptions> {\n readonly type = 'advancedTransform'\n readonly priority = 45\n\n constructor(options: ReactiveAdvancedTransformOptions) {\n const resolvedOptions: ModifierAdvancedTransformOptions = {}\n for (const [key, value] of Object.entries(options)) {\n if (typeof value === 'function' && 'peek' in value) {\n ;(resolvedOptions as any)[key] = (value as any).peek()\n } else {\n ;(resolvedOptions as any)[key] = value\n }\n }\n super(resolvedOptions)\n }\n\n apply(_node: DOMNode, context: ModifierContext): DOMNode | undefined {\n if (!context.element) return\n\n const styles = this.computeAdvancedTransformStyles(this.properties)\n this.applyStyles(context.element, styles)\n\n return undefined\n }\n\n private computeAdvancedTransformStyles(props: ModifierAdvancedTransformOptions) {\n const styles: Record<string, string> = {}\n\n if (props.transform) {\n styles.transform = this.generateAdvancedTransformCSS(props.transform)\n }\n\n if (props.transformOrigin) {\n styles.transformOrigin = props.transformOrigin\n }\n\n if (props.perspectiveOrigin) {\n styles.perspectiveOrigin = props.perspectiveOrigin\n }\n\n if (props.backfaceVisibility) {\n styles.backfaceVisibility = props.backfaceVisibility\n }\n\n if (props.transformStyle) {\n styles.transformStyle = props.transformStyle\n }\n\n return styles\n }\n\n private generateAdvancedTransformCSS(config: any): string {\n const transforms: string[] = []\n\n // Handle matrix transforms\n if ('matrix' in config && config.matrix) {\n transforms.push(`matrix(${config.matrix.join(', ')})`)\n }\n if ('matrix3d' in config && config.matrix3d) {\n transforms.push(`matrix3d(${config.matrix3d.join(', ')})`)\n }\n\n // Handle advanced 3D transforms\n if ('rotate3d' in config && config.rotate3d) {\n const { x, y, z, angle } = config.rotate3d\n transforms.push(`rotate3d(${x}, ${y}, ${z}, ${angle})`)\n }\n\n if ('scale3d' in config && config.scale3d) {\n const { x, y, z } = config.scale3d\n transforms.push(`scale3d(${x}, ${y}, ${z})`)\n }\n\n if ('translate3d' in config && config.translate3d) {\n const x = this.formatLength(config.translate3d.x ?? 0)\n const y = this.formatLength(config.translate3d.y ?? 0)\n const z = this.formatLength(config.translate3d.z ?? 0)\n transforms.push(`translate3d(${x}, ${y}, ${z})`)\n }\n\n // Individual axis transforms\n if ('scaleX' in config && config.scaleX !== undefined) {\n transforms.push(`scaleX(${config.scaleX})`)\n }\n if ('scaleY' in config && config.scaleY !== undefined) {\n transforms.push(`scaleY(${config.scaleY})`)\n }\n if ('scaleZ' in config && config.scaleZ !== undefined) {\n transforms.push(`scaleZ(${config.scaleZ})`)\n }\n if ('translateX' in config && config.translateX !== undefined) {\n transforms.push(`translateX(${this.formatLength(config.translateX)})`)\n }\n if ('translateY' in config && config.translateY !== undefined) {\n transforms.push(`translateY(${this.formatLength(config.translateY)})`)\n }\n if ('translateZ' in config && config.translateZ !== undefined) {\n transforms.push(`translateZ(${this.formatLength(config.translateZ)})`)\n }\n\n // Fallback to basic transform generation\n if (transforms.length === 0) {\n return this.generateTransformCSS(config)\n }\n\n return transforms.join(' ')\n }\n\n private generateTransformCSS(config: TransformConfig | Transform3DConfig): string {\n // Reuse the basic transform generation logic\n const transformModifier = new TransformModifier({ transform: config })\n return (transformModifier as any).generateTransformCSS(config)\n }\n\n private formatLength(value: number | string): string {\n if (typeof value === 'number') {\n return `${value}px`\n }\n return value\n }\n}\n\n// ============================================================================\n// Transform Functions\n// ============================================================================\n\n/**\n * General transform modifier with flexible configuration\n *\n * @example\n * ```typescript\n * .transform({\n * scale: 1.1,\n * rotate: '45deg',\n * translate: { x: 10, y: 20 }\n * })\n * ```\n */\nexport function transform(config: TransformConfig | Transform3DConfig): TransformModifier {\n return new TransformModifier({ transform: config })\n}\n\n/**\n * Scale transformation\n *\n * @example\n * ```typescript\n * .scale(1.2) // Uniform scale\n * .scale({ x: 1.5, y: 0.8 }) // Non-uniform scale\n * ```\n */\nexport function scale(value: number | { x?: number; y?: number }): TransformModifier {\n return new TransformModifier({ transform: { scale: value } })\n}\n\n/**\n * 2D rotation transformation\n *\n * @example\n * ```typescript\n * .rotate('45deg')\n * .rotate('-90deg')\n * .rotate('0.5turn')\n * ```\n */\nexport function rotate(angle: string): TransformModifier {\n return new TransformModifier({ transform: { rotate: angle } })\n}\n\n/**\n * Translation transformation\n *\n * @example\n * ```typescript\n * .translate({ x: 10, y: 20 })\n * .translate({ x: '50%', y: '-10px' })\n * ```\n */\nexport function translate(offset: { x?: number | string; y?: number | string }): TransformModifier {\n return new TransformModifier({ transform: { translate: offset } })\n}\n\n/**\n * Skew transformation\n *\n * @example\n * ```typescript\n * .skew({ x: '15deg', y: '10deg' })\n * .skew({ x: '20deg' }) // Only X axis\n * ```\n */\nexport function skew(angles: { x?: string; y?: string }): TransformModifier {\n return new TransformModifier({ transform: { skew: angles } })\n}\n\n// ============================================================================\n// 3D Transform Functions\n// ============================================================================\n\n/**\n * X-axis rotation (3D)\n *\n * @example\n * ```typescript\n * .rotateX('45deg')\n * .rotateX('1rad')\n * ```\n */\nexport function rotateX(angle: string): TransformModifier {\n return new TransformModifier({ transform: { rotateX: angle } })\n}\n\n/**\n * Y-axis rotation (3D)\n *\n * @example\n * ```typescript\n * .rotateY('90deg')\n * .rotateY('-45deg')\n * ```\n */\nexport function rotateY(angle: string): TransformModifier {\n return new TransformModifier({ transform: { rotateY: angle } })\n}\n\n/**\n * Z-axis rotation (3D)\n *\n * @example\n * ```typescript\n * .rotateZ('180deg')\n * .rotateZ('0.25turn')\n * ```\n */\nexport function rotateZ(angle: string): TransformModifier {\n return new TransformModifier({ transform: { rotateZ: angle } })\n}\n\n/**\n * 3D perspective\n *\n * @example\n * ```typescript\n * .perspective(1000) // 1000px perspective\n * .perspective(500) // Closer perspective\n * ```\n */\nexport function perspective(value: number): TransformModifier {\n return new TransformModifier({ transform: { perspective: value } })\n}\n\n// ============================================================================\n// Advanced Transform Functions (Matrix, Extended 3D)\n// ============================================================================\n\n/**\n * Advanced transform modifier with matrix and extended 3D support\n *\n * @example\n * ```typescript\n * .advancedTransform({\n * rotate3d: { x: 1, y: 1, z: 0, angle: '45deg' },\n * scale3d: { x: 1.2, y: 1.2, z: 1 }\n * })\n * ```\n */\nexport function advancedTransform(config: Advanced3DTransformConfig | MatrixTransformConfig): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: config })\n}\n\n/**\n * 2D matrix transformation\n *\n * @example\n * ```typescript\n * .matrix([1, 0, 0, 1, 50, 100]) // Translate(50, 100)\n * ```\n */\nexport function matrix(values: [number, number, number, number, number, number]): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { matrix: values } })\n}\n\n/**\n * 3D matrix transformation\n *\n * @example\n * ```typescript\n * .matrix3d([1,0,0,0, 0,1,0,0, 0,0,1,0, 50,100,0,1])\n * ```\n */\nexport function matrix3d(values: [\n number, number, number, number,\n number, number, number, number,\n number, number, number, number,\n number, number, number, number\n]): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { matrix3d: values } })\n}\n\n/**\n * 3D rotation around arbitrary axis\n *\n * @example\n * ```typescript\n * .rotate3d(1, 1, 0, '45deg') // Rotate around X and Y axis\n * ```\n */\nexport function rotate3d(x: number, y: number, z: number, angle: string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { rotate3d: { x, y, z, angle } } })\n}\n\n/**\n * 3D scale transformation\n *\n * @example\n * ```typescript\n * .scale3d(1.2, 1.2, 0.8) // Scale XY up, Z down\n * ```\n */\nexport function scale3d(x: number, y: number, z: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { scale3d: { x, y, z } } })\n}\n\n/**\n * 3D translation transformation\n *\n * @example\n * ```typescript\n * .translate3d(10, 20, 30) // Hardware accelerated\n * .translate3d('50%', 0, 0) // Percentage values\n * ```\n */\nexport function translate3d(x?: number | string, y?: number | string, z?: number | string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { translate3d: { x, y, z } } })\n}\n\n// Individual axis scale functions\nexport function scaleX(value: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { scaleX: value } })\n}\n\nexport function scaleY(value: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { scaleY: value } })\n}\n\nexport function scaleZ(value: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { scaleZ: value } })\n}\n\n// Individual axis translate functions\nexport function translateX(value: number | string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { translateX: value } })\n}\n\nexport function translateY(value: number | string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { translateY: value } })\n}\n\nexport function translateZ(value: number | string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { translateZ: value } })\n}\n\n// Transform utility functions\nexport function perspectiveOrigin(value: string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ perspectiveOrigin: value })\n}\n\nexport function transformStyle(value: 'flat' | 'preserve-3d'): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transformStyle: value })\n}\n\nexport function backfaceVisibility(value: 'visible' | 'hidden'): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ backfaceVisibility: value })\n}\n\n// ============================================================================\n// SwiftUI Compatibility Functions\n// ============================================================================\n\ntype AnchorPoint = 'center' | 'top' | 'bottom' | 'leading' | 'trailing' | \n 'topLeading' | 'topTrailing' | 'bottomLeading' | 'bottomTrailing'\n\n/**\n * SwiftUI-compatible scaleEffect modifier\n * \n * @example\n * ```typescript\n * .scaleEffect(1.5) // Uniform scale\n * .scaleEffect(1.5, 2.0) // Non-uniform scale \n * .scaleEffect(1.2, undefined, 'topLeading') // Scale from top-leading corner\n * ```\n */\nexport function scaleEffect(\n x: number,\n y?: number,\n anchor: AnchorPoint = 'center'\n): AdvancedTransformModifier {\n const scaleX = x\n const scaleY = y ?? x\n const transformOrigin = getTransformOrigin(anchor)\n \n return new AdvancedTransformModifier({ \n transform: { scaleX, scaleY },\n transformOrigin \n })\n}\n\n/**\n * SwiftUI-compatible offset modifier (relative positioning via transform)\n * \n * Note: SwiftUI's .position() sets absolute coordinates, but in web context\n * we use .offset() for relative positioning which is more common.\n * \n * @example\n * ```typescript\n * .offset(100, 50) // Offset by x=100, y=50 relative to current position\n * ```\n */\nexport function offset(x: number, y: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({\n transform: { translateX: x, translateY: y }\n })\n}\n\n/**\n * Convert SwiftUI anchor point to CSS transform-origin\n */\nfunction getTransformOrigin(anchor: AnchorPoint): string {\n switch (anchor) {\n case 'center': return 'center center'\n case 'top': return 'center top'\n case 'bottom': return 'center bottom'\n case 'leading': return 'left center'\n case 'trailing': return 'right center'\n case 'topLeading': return 'left top'\n case 'topTrailing': return 'right top'\n case 'bottomLeading': return 'left bottom'\n case 'bottomTrailing': return 'right bottom'\n default: return 'center center'\n }\n}\n"],"names":["TransformModifier","BaseModifier","options","resolvedOptions","key","value","__publicField","_node","context","styles","props","config","transforms","x","y","z","AdvancedTransformModifier","angle","transform","scale","rotate","translate","offset","skew","angles","rotateX","rotateY","rotateZ","perspective","advancedTransform","matrix","values","matrix3d","rotate3d","scale3d","translate3d","scaleX","scaleY","scaleZ","translateX","translateY","translateZ","perspectiveOrigin","transformStyle","backfaceVisibility","scaleEffect","anchor","transformOrigin","getTransformOrigin"],"mappings":"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"}
|
|
@@ -1,216 +0,0 @@
|
|
|
1
|
-
import { BaseModifier as u } from "./base.js";
|
|
2
|
-
var f = Object.defineProperty, c = (r, t, e) => t in r ? f(r, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[t] = e, l = (r, t, e) => c(r, typeof t != "symbol" ? t + "" : t, e);
|
|
3
|
-
class o extends u {
|
|
4
|
-
constructor(t) {
|
|
5
|
-
const e = {};
|
|
6
|
-
for (const [a, n] of Object.entries(t))
|
|
7
|
-
typeof n == "function" && "peek" in n ? e[a] = n.peek() : e[a] = n;
|
|
8
|
-
super(e), l(this, "type", "transform"), l(this, "priority", 45);
|
|
9
|
-
}
|
|
10
|
-
apply(t, e) {
|
|
11
|
-
if (!e.element) return;
|
|
12
|
-
const a = this.computeTransformStyles(this.properties);
|
|
13
|
-
this.applyStyles(e.element, a);
|
|
14
|
-
}
|
|
15
|
-
computeTransformStyles(t) {
|
|
16
|
-
const e = {};
|
|
17
|
-
return t.transform && (e.transform = this.generateTransformCSS(t.transform)), t.transformOrigin && (e.transformOrigin = t.transformOrigin), t.backfaceVisibility && (e.backfaceVisibility = t.backfaceVisibility), t.transformStyle && (e.transformStyle = t.transformStyle), e;
|
|
18
|
-
}
|
|
19
|
-
generateTransformCSS(t) {
|
|
20
|
-
const e = [];
|
|
21
|
-
if ("perspective" in t && t.perspective !== void 0 && e.push(`perspective(${t.perspective}px)`), t.scale !== void 0)
|
|
22
|
-
if (typeof t.scale == "number")
|
|
23
|
-
e.push(`scale(${t.scale})`);
|
|
24
|
-
else {
|
|
25
|
-
const a = t.scale.x ?? 1, n = t.scale.y ?? 1;
|
|
26
|
-
e.push(`scale(${a}, ${n})`);
|
|
27
|
-
}
|
|
28
|
-
if (t.rotate !== void 0 && e.push(`rotate(${t.rotate})`), "rotateX" in t && t.rotateX !== void 0 && e.push(`rotateX(${t.rotateX})`), "rotateY" in t && t.rotateY !== void 0 && e.push(`rotateY(${t.rotateY})`), "rotateZ" in t && t.rotateZ !== void 0 && e.push(`rotateZ(${t.rotateZ})`), t.translate !== void 0) {
|
|
29
|
-
const a = this.formatLength(t.translate.x ?? 0), n = this.formatLength(t.translate.y ?? 0);
|
|
30
|
-
let i = "0";
|
|
31
|
-
"z" in t.translate && t.translate.z !== void 0 ? i = this.formatLength(t.translate.z) : "translateZ" in t && t.translateZ !== void 0 && (i = this.formatLength(t.translateZ)), e.push(`translate3d(${a}, ${n}, ${i})`);
|
|
32
|
-
}
|
|
33
|
-
return "scaleZ" in t && t.scaleZ !== void 0 && e.push(`scaleZ(${t.scaleZ})`), t.skew !== void 0 && (t.skew.x !== void 0 && t.skew.y !== void 0 ? e.push(`skew(${t.skew.x}, ${t.skew.y})`) : t.skew.x !== void 0 ? e.push(`skewX(${t.skew.x})`) : t.skew.y !== void 0 && e.push(`skewY(${t.skew.y})`)), e.join(" ");
|
|
34
|
-
}
|
|
35
|
-
formatLength(t) {
|
|
36
|
-
return typeof t == "number" ? `${t}px` : t;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
class s extends u {
|
|
40
|
-
constructor(t) {
|
|
41
|
-
const e = {};
|
|
42
|
-
for (const [a, n] of Object.entries(t))
|
|
43
|
-
typeof n == "function" && "peek" in n ? e[a] = n.peek() : e[a] = n;
|
|
44
|
-
super(e), l(this, "type", "advancedTransform"), l(this, "priority", 45);
|
|
45
|
-
}
|
|
46
|
-
apply(t, e) {
|
|
47
|
-
if (!e.element) return;
|
|
48
|
-
const a = this.computeAdvancedTransformStyles(this.properties);
|
|
49
|
-
this.applyStyles(e.element, a);
|
|
50
|
-
}
|
|
51
|
-
computeAdvancedTransformStyles(t) {
|
|
52
|
-
const e = {};
|
|
53
|
-
return t.transform && (e.transform = this.generateAdvancedTransformCSS(t.transform)), t.transformOrigin && (e.transformOrigin = t.transformOrigin), t.perspectiveOrigin && (e.perspectiveOrigin = t.perspectiveOrigin), t.backfaceVisibility && (e.backfaceVisibility = t.backfaceVisibility), t.transformStyle && (e.transformStyle = t.transformStyle), e;
|
|
54
|
-
}
|
|
55
|
-
generateAdvancedTransformCSS(t) {
|
|
56
|
-
const e = [];
|
|
57
|
-
if ("matrix" in t && t.matrix && e.push(`matrix(${t.matrix.join(", ")})`), "matrix3d" in t && t.matrix3d && e.push(`matrix3d(${t.matrix3d.join(", ")})`), "rotate3d" in t && t.rotate3d) {
|
|
58
|
-
const { x: a, y: n, z: i, angle: m } = t.rotate3d;
|
|
59
|
-
e.push(`rotate3d(${a}, ${n}, ${i}, ${m})`);
|
|
60
|
-
}
|
|
61
|
-
if ("scale3d" in t && t.scale3d) {
|
|
62
|
-
const { x: a, y: n, z: i } = t.scale3d;
|
|
63
|
-
e.push(`scale3d(${a}, ${n}, ${i})`);
|
|
64
|
-
}
|
|
65
|
-
if ("translate3d" in t && t.translate3d) {
|
|
66
|
-
const a = this.formatLength(t.translate3d.x ?? 0), n = this.formatLength(t.translate3d.y ?? 0), i = this.formatLength(t.translate3d.z ?? 0);
|
|
67
|
-
e.push(`translate3d(${a}, ${n}, ${i})`);
|
|
68
|
-
}
|
|
69
|
-
return "scaleX" in t && t.scaleX !== void 0 && e.push(`scaleX(${t.scaleX})`), "scaleY" in t && t.scaleY !== void 0 && e.push(`scaleY(${t.scaleY})`), "scaleZ" in t && t.scaleZ !== void 0 && e.push(`scaleZ(${t.scaleZ})`), "translateX" in t && t.translateX !== void 0 && e.push(`translateX(${this.formatLength(t.translateX)})`), "translateY" in t && t.translateY !== void 0 && e.push(`translateY(${this.formatLength(t.translateY)})`), "translateZ" in t && t.translateZ !== void 0 && e.push(`translateZ(${this.formatLength(t.translateZ)})`), e.length === 0 ? this.generateTransformCSS(t) : e.join(" ");
|
|
70
|
-
}
|
|
71
|
-
generateTransformCSS(t) {
|
|
72
|
-
return new o({ transform: t }).generateTransformCSS(t);
|
|
73
|
-
}
|
|
74
|
-
formatLength(t) {
|
|
75
|
-
return typeof t == "number" ? `${t}px` : t;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
function p(r) {
|
|
79
|
-
return new o({ transform: r });
|
|
80
|
-
}
|
|
81
|
-
function y(r) {
|
|
82
|
-
return new o({ transform: { scale: r } });
|
|
83
|
-
}
|
|
84
|
-
function v(r) {
|
|
85
|
-
return new o({ transform: { rotate: r } });
|
|
86
|
-
}
|
|
87
|
-
function w(r) {
|
|
88
|
-
return new o({ transform: { translate: r } });
|
|
89
|
-
}
|
|
90
|
-
function $(r) {
|
|
91
|
-
return new o({ transform: { skew: r } });
|
|
92
|
-
}
|
|
93
|
-
function b(r) {
|
|
94
|
-
return new o({ transform: { rotateX: r } });
|
|
95
|
-
}
|
|
96
|
-
function S(r) {
|
|
97
|
-
return new o({ transform: { rotateY: r } });
|
|
98
|
-
}
|
|
99
|
-
function x(r) {
|
|
100
|
-
return new o({ transform: { rotateZ: r } });
|
|
101
|
-
}
|
|
102
|
-
function Z(r) {
|
|
103
|
-
return new o({ transform: { perspective: r } });
|
|
104
|
-
}
|
|
105
|
-
function k(r) {
|
|
106
|
-
return new s({ transform: r });
|
|
107
|
-
}
|
|
108
|
-
function X(r) {
|
|
109
|
-
return new s({ transform: { matrix: r } });
|
|
110
|
-
}
|
|
111
|
-
function Y(r) {
|
|
112
|
-
return new s({ transform: { matrix3d: r } });
|
|
113
|
-
}
|
|
114
|
-
function O(r, t, e, a) {
|
|
115
|
-
return new s({ transform: { rotate3d: { x: r, y: t, z: e, angle: a } } });
|
|
116
|
-
}
|
|
117
|
-
function T(r, t, e) {
|
|
118
|
-
return new s({ transform: { scale3d: { x: r, y: t, z: e } } });
|
|
119
|
-
}
|
|
120
|
-
function L(r, t, e) {
|
|
121
|
-
return new s({ transform: { translate3d: { x: r, y: t, z: e } } });
|
|
122
|
-
}
|
|
123
|
-
function z(r) {
|
|
124
|
-
return new s({ transform: { scaleX: r } });
|
|
125
|
-
}
|
|
126
|
-
function V(r) {
|
|
127
|
-
return new s({ transform: { scaleY: r } });
|
|
128
|
-
}
|
|
129
|
-
function _(r) {
|
|
130
|
-
return new s({ transform: { scaleZ: r } });
|
|
131
|
-
}
|
|
132
|
-
function C(r) {
|
|
133
|
-
return new s({ transform: { translateX: r } });
|
|
134
|
-
}
|
|
135
|
-
function j(r) {
|
|
136
|
-
return new s({ transform: { translateY: r } });
|
|
137
|
-
}
|
|
138
|
-
function A(r) {
|
|
139
|
-
return new s({ transform: { translateZ: r } });
|
|
140
|
-
}
|
|
141
|
-
function M(r) {
|
|
142
|
-
return new s({ perspectiveOrigin: r });
|
|
143
|
-
}
|
|
144
|
-
function P(r) {
|
|
145
|
-
return new s({ transformStyle: r });
|
|
146
|
-
}
|
|
147
|
-
function B(r) {
|
|
148
|
-
return new s({ backfaceVisibility: r });
|
|
149
|
-
}
|
|
150
|
-
function E(r, t, e = "center") {
|
|
151
|
-
const a = r, n = t ?? r, i = d(e);
|
|
152
|
-
return new s({
|
|
153
|
-
transform: { scaleX: a, scaleY: n },
|
|
154
|
-
transformOrigin: i
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
function F(r, t) {
|
|
158
|
-
return new s({
|
|
159
|
-
transform: { translateX: r, translateY: t }
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
function d(r) {
|
|
163
|
-
switch (r) {
|
|
164
|
-
case "center":
|
|
165
|
-
return "center center";
|
|
166
|
-
case "top":
|
|
167
|
-
return "center top";
|
|
168
|
-
case "bottom":
|
|
169
|
-
return "center bottom";
|
|
170
|
-
case "leading":
|
|
171
|
-
return "left center";
|
|
172
|
-
case "trailing":
|
|
173
|
-
return "right center";
|
|
174
|
-
case "topLeading":
|
|
175
|
-
return "left top";
|
|
176
|
-
case "topTrailing":
|
|
177
|
-
return "right top";
|
|
178
|
-
case "bottomLeading":
|
|
179
|
-
return "left bottom";
|
|
180
|
-
case "bottomTrailing":
|
|
181
|
-
return "right bottom";
|
|
182
|
-
default:
|
|
183
|
-
return "center center";
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
export {
|
|
187
|
-
s as AdvancedTransformModifier,
|
|
188
|
-
o as TransformModifier,
|
|
189
|
-
k as advancedTransform,
|
|
190
|
-
B as backfaceVisibility,
|
|
191
|
-
X as matrix,
|
|
192
|
-
Y as matrix3d,
|
|
193
|
-
F as offset,
|
|
194
|
-
Z as perspective,
|
|
195
|
-
M as perspectiveOrigin,
|
|
196
|
-
v as rotate,
|
|
197
|
-
O as rotate3d,
|
|
198
|
-
b as rotateX,
|
|
199
|
-
S as rotateY,
|
|
200
|
-
x as rotateZ,
|
|
201
|
-
y as scale,
|
|
202
|
-
T as scale3d,
|
|
203
|
-
E as scaleEffect,
|
|
204
|
-
z as scaleX,
|
|
205
|
-
V as scaleY,
|
|
206
|
-
_ as scaleZ,
|
|
207
|
-
$ as skew,
|
|
208
|
-
p as transform,
|
|
209
|
-
P as transformStyle,
|
|
210
|
-
w as translate,
|
|
211
|
-
L as translate3d,
|
|
212
|
-
C as translateX,
|
|
213
|
-
j as translateY,
|
|
214
|
-
A as translateZ
|
|
215
|
-
};
|
|
216
|
-
//# sourceMappingURL=transformations.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transformations.js","sources":["../../src/modifiers/transformations.ts"],"sourcesContent":["/**\n * Transformation Modifiers - CSS Transform System\n *\n * Provides comprehensive 2D and 3D transform capabilities including\n * scale, rotate, translate, skew, perspective, and matrix transforms.\n */\n\nimport type { DOMNode } from '../runtime/types'\nimport { BaseModifier } from './base'\nimport type { ModifierContext, ReactiveModifierProps } from './types'\n\nexport interface TransformConfig {\n scale?: number | { x?: number; y?: number }\n rotate?: string\n translate?: { x?: number | string; y?: number | string }\n skew?: { x?: string; y?: string }\n perspective?: number\n}\n\nexport interface Transform3DConfig extends TransformConfig {\n rotateX?: string\n rotateY?: string\n rotateZ?: string\n translate?: { x?: number | string; y?: number | string; z?: number | string }\n translateZ?: number | string\n scaleZ?: number\n}\n\nexport interface ModifierTransformOptions {\n transform?: TransformConfig | Transform3DConfig\n transformOrigin?: string\n backfaceVisibility?: 'visible' | 'hidden'\n transformStyle?: 'flat' | 'preserve-3d'\n}\n\nexport type ReactiveTransformOptions = ReactiveModifierProps<ModifierTransformOptions>\n\nexport class TransformModifier extends BaseModifier<ModifierTransformOptions> {\n readonly type = 'transform'\n readonly priority = 45\n\n constructor(options: ReactiveTransformOptions) {\n const resolvedOptions: ModifierTransformOptions = {}\n for (const [key, value] of Object.entries(options)) {\n if (typeof value === 'function' && 'peek' in value) {\n ;(resolvedOptions as any)[key] = (value as any).peek()\n } else {\n ;(resolvedOptions as any)[key] = value\n }\n }\n super(resolvedOptions)\n }\n\n apply(_node: DOMNode, context: ModifierContext): DOMNode | undefined {\n if (!context.element) return\n\n const styles = this.computeTransformStyles(this.properties)\n this.applyStyles(context.element, styles)\n\n return undefined\n }\n\n private computeTransformStyles(props: ModifierTransformOptions) {\n const styles: Record<string, string> = {}\n\n if (props.transform) {\n styles.transform = this.generateTransformCSS(props.transform)\n }\n\n if (props.transformOrigin) {\n styles.transformOrigin = props.transformOrigin\n }\n\n if (props.backfaceVisibility) {\n styles.backfaceVisibility = props.backfaceVisibility\n }\n\n if (props.transformStyle) {\n styles.transformStyle = props.transformStyle\n }\n\n return styles\n }\n\n private generateTransformCSS(config: TransformConfig | Transform3DConfig): string {\n const transforms: string[] = []\n\n // Handle perspective first (for 3D transforms)\n if ('perspective' in config && config.perspective !== undefined) {\n transforms.push(`perspective(${config.perspective}px)`)\n }\n\n // Handle scale\n if (config.scale !== undefined) {\n if (typeof config.scale === 'number') {\n transforms.push(`scale(${config.scale})`)\n } else {\n const x = config.scale.x ?? 1\n const y = config.scale.y ?? 1\n transforms.push(`scale(${x}, ${y})`)\n }\n }\n\n // Handle rotate (2D)\n if (config.rotate !== undefined) {\n transforms.push(`rotate(${config.rotate})`)\n }\n\n // Handle 3D rotations\n if ('rotateX' in config && config.rotateX !== undefined) {\n transforms.push(`rotateX(${config.rotateX})`)\n }\n if ('rotateY' in config && config.rotateY !== undefined) {\n transforms.push(`rotateY(${config.rotateY})`)\n }\n if ('rotateZ' in config && config.rotateZ !== undefined) {\n transforms.push(`rotateZ(${config.rotateZ})`)\n }\n\n // Handle translate\n if (config.translate !== undefined) {\n const x = this.formatLength(config.translate.x ?? 0)\n const y = this.formatLength(config.translate.y ?? 0)\n\n // Check for Z value in translate object or translateZ property\n let z = '0'\n if ('z' in config.translate && config.translate.z !== undefined) {\n z = this.formatLength(config.translate.z)\n } else if ('translateZ' in config && config.translateZ !== undefined) {\n z = this.formatLength(config.translateZ)\n }\n\n // Always use translate3d for hardware acceleration\n transforms.push(`translate3d(${x}, ${y}, ${z})`)\n }\n\n // Handle 3D scale\n if ('scaleZ' in config && config.scaleZ !== undefined) {\n transforms.push(`scaleZ(${config.scaleZ})`)\n }\n\n // Handle skew\n if (config.skew !== undefined) {\n if (config.skew.x !== undefined && config.skew.y !== undefined) {\n transforms.push(`skew(${config.skew.x}, ${config.skew.y})`)\n } else if (config.skew.x !== undefined) {\n transforms.push(`skewX(${config.skew.x})`)\n } else if (config.skew.y !== undefined) {\n transforms.push(`skewY(${config.skew.y})`)\n }\n }\n\n return transforms.join(' ')\n }\n\n private formatLength(value: number | string): string {\n if (typeof value === 'number') {\n return `${value}px`\n }\n return value\n }\n}\n\n// ============================================================================\n// Advanced Transform System for Matrix and Extended 3D\n// ============================================================================\n\nexport interface MatrixTransformConfig {\n matrix?: [number, number, number, number, number, number]\n matrix3d?: [\n number, number, number, number,\n number, number, number, number,\n number, number, number, number,\n number, number, number, number\n ]\n}\n\nexport interface Advanced3DTransformConfig {\n rotate3d?: { x: number; y: number; z: number; angle: string }\n scale3d?: { x: number; y: number; z: number }\n translate3d?: { x?: number | string; y?: number | string; z?: number | string }\n scaleX?: number\n scaleY?: number\n scaleZ?: number\n translateX?: number | string\n translateY?: number | string\n translateZ?: number | string\n}\n\nexport interface ModifierAdvancedTransformOptions {\n transform?: TransformConfig | Transform3DConfig | MatrixTransformConfig | Advanced3DTransformConfig\n transformOrigin?: string\n perspectiveOrigin?: string\n transformStyle?: 'flat' | 'preserve-3d'\n backfaceVisibility?: 'visible' | 'hidden'\n}\n\nexport type ReactiveAdvancedTransformOptions = ReactiveModifierProps<ModifierAdvancedTransformOptions>\n\nexport class AdvancedTransformModifier extends BaseModifier<ModifierAdvancedTransformOptions> {\n readonly type = 'advancedTransform'\n readonly priority = 45\n\n constructor(options: ReactiveAdvancedTransformOptions) {\n const resolvedOptions: ModifierAdvancedTransformOptions = {}\n for (const [key, value] of Object.entries(options)) {\n if (typeof value === 'function' && 'peek' in value) {\n ;(resolvedOptions as any)[key] = (value as any).peek()\n } else {\n ;(resolvedOptions as any)[key] = value\n }\n }\n super(resolvedOptions)\n }\n\n apply(_node: DOMNode, context: ModifierContext): DOMNode | undefined {\n if (!context.element) return\n\n const styles = this.computeAdvancedTransformStyles(this.properties)\n this.applyStyles(context.element, styles)\n\n return undefined\n }\n\n private computeAdvancedTransformStyles(props: ModifierAdvancedTransformOptions) {\n const styles: Record<string, string> = {}\n\n if (props.transform) {\n styles.transform = this.generateAdvancedTransformCSS(props.transform)\n }\n\n if (props.transformOrigin) {\n styles.transformOrigin = props.transformOrigin\n }\n\n if (props.perspectiveOrigin) {\n styles.perspectiveOrigin = props.perspectiveOrigin\n }\n\n if (props.backfaceVisibility) {\n styles.backfaceVisibility = props.backfaceVisibility\n }\n\n if (props.transformStyle) {\n styles.transformStyle = props.transformStyle\n }\n\n return styles\n }\n\n private generateAdvancedTransformCSS(config: any): string {\n const transforms: string[] = []\n\n // Handle matrix transforms\n if ('matrix' in config && config.matrix) {\n transforms.push(`matrix(${config.matrix.join(', ')})`)\n }\n if ('matrix3d' in config && config.matrix3d) {\n transforms.push(`matrix3d(${config.matrix3d.join(', ')})`)\n }\n\n // Handle advanced 3D transforms\n if ('rotate3d' in config && config.rotate3d) {\n const { x, y, z, angle } = config.rotate3d\n transforms.push(`rotate3d(${x}, ${y}, ${z}, ${angle})`)\n }\n\n if ('scale3d' in config && config.scale3d) {\n const { x, y, z } = config.scale3d\n transforms.push(`scale3d(${x}, ${y}, ${z})`)\n }\n\n if ('translate3d' in config && config.translate3d) {\n const x = this.formatLength(config.translate3d.x ?? 0)\n const y = this.formatLength(config.translate3d.y ?? 0)\n const z = this.formatLength(config.translate3d.z ?? 0)\n transforms.push(`translate3d(${x}, ${y}, ${z})`)\n }\n\n // Individual axis transforms\n if ('scaleX' in config && config.scaleX !== undefined) {\n transforms.push(`scaleX(${config.scaleX})`)\n }\n if ('scaleY' in config && config.scaleY !== undefined) {\n transforms.push(`scaleY(${config.scaleY})`)\n }\n if ('scaleZ' in config && config.scaleZ !== undefined) {\n transforms.push(`scaleZ(${config.scaleZ})`)\n }\n if ('translateX' in config && config.translateX !== undefined) {\n transforms.push(`translateX(${this.formatLength(config.translateX)})`)\n }\n if ('translateY' in config && config.translateY !== undefined) {\n transforms.push(`translateY(${this.formatLength(config.translateY)})`)\n }\n if ('translateZ' in config && config.translateZ !== undefined) {\n transforms.push(`translateZ(${this.formatLength(config.translateZ)})`)\n }\n\n // Fallback to basic transform generation\n if (transforms.length === 0) {\n return this.generateTransformCSS(config)\n }\n\n return transforms.join(' ')\n }\n\n private generateTransformCSS(config: TransformConfig | Transform3DConfig): string {\n // Reuse the basic transform generation logic\n const transformModifier = new TransformModifier({ transform: config })\n return (transformModifier as any).generateTransformCSS(config)\n }\n\n private formatLength(value: number | string): string {\n if (typeof value === 'number') {\n return `${value}px`\n }\n return value\n }\n}\n\n// ============================================================================\n// Transform Functions\n// ============================================================================\n\n/**\n * General transform modifier with flexible configuration\n *\n * @example\n * ```typescript\n * .transform({\n * scale: 1.1,\n * rotate: '45deg',\n * translate: { x: 10, y: 20 }\n * })\n * ```\n */\nexport function transform(config: TransformConfig | Transform3DConfig): TransformModifier {\n return new TransformModifier({ transform: config })\n}\n\n/**\n * Scale transformation\n *\n * @example\n * ```typescript\n * .scale(1.2) // Uniform scale\n * .scale({ x: 1.5, y: 0.8 }) // Non-uniform scale\n * ```\n */\nexport function scale(value: number | { x?: number; y?: number }): TransformModifier {\n return new TransformModifier({ transform: { scale: value } })\n}\n\n/**\n * 2D rotation transformation\n *\n * @example\n * ```typescript\n * .rotate('45deg')\n * .rotate('-90deg')\n * .rotate('0.5turn')\n * ```\n */\nexport function rotate(angle: string): TransformModifier {\n return new TransformModifier({ transform: { rotate: angle } })\n}\n\n/**\n * Translation transformation\n *\n * @example\n * ```typescript\n * .translate({ x: 10, y: 20 })\n * .translate({ x: '50%', y: '-10px' })\n * ```\n */\nexport function translate(offset: { x?: number | string; y?: number | string }): TransformModifier {\n return new TransformModifier({ transform: { translate: offset } })\n}\n\n/**\n * Skew transformation\n *\n * @example\n * ```typescript\n * .skew({ x: '15deg', y: '10deg' })\n * .skew({ x: '20deg' }) // Only X axis\n * ```\n */\nexport function skew(angles: { x?: string; y?: string }): TransformModifier {\n return new TransformModifier({ transform: { skew: angles } })\n}\n\n// ============================================================================\n// 3D Transform Functions\n// ============================================================================\n\n/**\n * X-axis rotation (3D)\n *\n * @example\n * ```typescript\n * .rotateX('45deg')\n * .rotateX('1rad')\n * ```\n */\nexport function rotateX(angle: string): TransformModifier {\n return new TransformModifier({ transform: { rotateX: angle } })\n}\n\n/**\n * Y-axis rotation (3D)\n *\n * @example\n * ```typescript\n * .rotateY('90deg')\n * .rotateY('-45deg')\n * ```\n */\nexport function rotateY(angle: string): TransformModifier {\n return new TransformModifier({ transform: { rotateY: angle } })\n}\n\n/**\n * Z-axis rotation (3D)\n *\n * @example\n * ```typescript\n * .rotateZ('180deg')\n * .rotateZ('0.25turn')\n * ```\n */\nexport function rotateZ(angle: string): TransformModifier {\n return new TransformModifier({ transform: { rotateZ: angle } })\n}\n\n/**\n * 3D perspective\n *\n * @example\n * ```typescript\n * .perspective(1000) // 1000px perspective\n * .perspective(500) // Closer perspective\n * ```\n */\nexport function perspective(value: number): TransformModifier {\n return new TransformModifier({ transform: { perspective: value } })\n}\n\n// ============================================================================\n// Advanced Transform Functions (Matrix, Extended 3D)\n// ============================================================================\n\n/**\n * Advanced transform modifier with matrix and extended 3D support\n *\n * @example\n * ```typescript\n * .advancedTransform({\n * rotate3d: { x: 1, y: 1, z: 0, angle: '45deg' },\n * scale3d: { x: 1.2, y: 1.2, z: 1 }\n * })\n * ```\n */\nexport function advancedTransform(config: Advanced3DTransformConfig | MatrixTransformConfig): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: config })\n}\n\n/**\n * 2D matrix transformation\n *\n * @example\n * ```typescript\n * .matrix([1, 0, 0, 1, 50, 100]) // Translate(50, 100)\n * ```\n */\nexport function matrix(values: [number, number, number, number, number, number]): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { matrix: values } })\n}\n\n/**\n * 3D matrix transformation\n *\n * @example\n * ```typescript\n * .matrix3d([1,0,0,0, 0,1,0,0, 0,0,1,0, 50,100,0,1])\n * ```\n */\nexport function matrix3d(values: [\n number, number, number, number,\n number, number, number, number,\n number, number, number, number,\n number, number, number, number\n]): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { matrix3d: values } })\n}\n\n/**\n * 3D rotation around arbitrary axis\n *\n * @example\n * ```typescript\n * .rotate3d(1, 1, 0, '45deg') // Rotate around X and Y axis\n * ```\n */\nexport function rotate3d(x: number, y: number, z: number, angle: string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { rotate3d: { x, y, z, angle } } })\n}\n\n/**\n * 3D scale transformation\n *\n * @example\n * ```typescript\n * .scale3d(1.2, 1.2, 0.8) // Scale XY up, Z down\n * ```\n */\nexport function scale3d(x: number, y: number, z: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { scale3d: { x, y, z } } })\n}\n\n/**\n * 3D translation transformation\n *\n * @example\n * ```typescript\n * .translate3d(10, 20, 30) // Hardware accelerated\n * .translate3d('50%', 0, 0) // Percentage values\n * ```\n */\nexport function translate3d(x?: number | string, y?: number | string, z?: number | string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { translate3d: { x, y, z } } })\n}\n\n// Individual axis scale functions\nexport function scaleX(value: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { scaleX: value } })\n}\n\nexport function scaleY(value: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { scaleY: value } })\n}\n\nexport function scaleZ(value: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { scaleZ: value } })\n}\n\n// Individual axis translate functions\nexport function translateX(value: number | string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { translateX: value } })\n}\n\nexport function translateY(value: number | string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { translateY: value } })\n}\n\nexport function translateZ(value: number | string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transform: { translateZ: value } })\n}\n\n// Transform utility functions\nexport function perspectiveOrigin(value: string): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ perspectiveOrigin: value })\n}\n\nexport function transformStyle(value: 'flat' | 'preserve-3d'): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ transformStyle: value })\n}\n\nexport function backfaceVisibility(value: 'visible' | 'hidden'): AdvancedTransformModifier {\n return new AdvancedTransformModifier({ backfaceVisibility: value })\n}\n\n// ============================================================================\n// SwiftUI Compatibility Functions\n// ============================================================================\n\ntype AnchorPoint = 'center' | 'top' | 'bottom' | 'leading' | 'trailing' | \n 'topLeading' | 'topTrailing' | 'bottomLeading' | 'bottomTrailing'\n\n/**\n * SwiftUI-compatible scaleEffect modifier\n * \n * @example\n * ```typescript\n * .scaleEffect(1.5) // Uniform scale\n * .scaleEffect(1.5, 2.0) // Non-uniform scale \n * .scaleEffect(1.2, undefined, 'topLeading') // Scale from top-leading corner\n * ```\n */\nexport function scaleEffect(\n x: number,\n y?: number,\n anchor: AnchorPoint = 'center'\n): AdvancedTransformModifier {\n const scaleX = x\n const scaleY = y ?? x\n const transformOrigin = getTransformOrigin(anchor)\n \n return new AdvancedTransformModifier({ \n transform: { scaleX, scaleY },\n transformOrigin \n })\n}\n\n/**\n * SwiftUI-compatible offset modifier (relative positioning via transform)\n * \n * Note: SwiftUI's .position() sets absolute coordinates, but in web context\n * we use .offset() for relative positioning which is more common.\n * \n * @example\n * ```typescript\n * .offset(100, 50) // Offset by x=100, y=50 relative to current position\n * ```\n */\nexport function offset(x: number, y: number): AdvancedTransformModifier {\n return new AdvancedTransformModifier({\n transform: { translateX: x, translateY: y }\n })\n}\n\n/**\n * Convert SwiftUI anchor point to CSS transform-origin\n */\nfunction getTransformOrigin(anchor: AnchorPoint): string {\n switch (anchor) {\n case 'center': return 'center center'\n case 'top': return 'center top'\n case 'bottom': return 'center bottom'\n case 'leading': return 'left center'\n case 'trailing': return 'right center'\n case 'topLeading': return 'left top'\n case 'topTrailing': return 'right top'\n case 'bottomLeading': return 'left bottom'\n case 'bottomTrailing': return 'right bottom'\n default: return 'center center'\n }\n}\n"],"names":["TransformModifier","BaseModifier","options","resolvedOptions","key","value","__publicField","_node","context","styles","props","config","transforms","x","y","z","AdvancedTransformModifier","angle","transform","scale","rotate","translate","offset","skew","angles","rotateX","rotateY","rotateZ","perspective","advancedTransform","matrix","values","matrix3d","rotate3d","scale3d","translate3d","scaleX","scaleY","scaleZ","translateX","translateY","translateZ","perspectiveOrigin","transformStyle","backfaceVisibility","scaleEffect","anchor","transformOrigin","getTransformOrigin"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./base.cjs");var T=Object.defineProperty,g=(n,t,i)=>t in n?T(n,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):n[t]=i,c=(n,t,i)=>g(n,typeof t!="symbol"?t+"":t,i);class a extends d.BaseModifier{constructor(t){const i={};for(const[o,e]of Object.entries(t))typeof e=="function"&&"peek"in e?i[o]=e.peek():i[o]=e;super(i),c(this,"type","transition"),c(this,"priority",25)}apply(t,i){if(!i.element)return;const o=this.computeTransitionStyles(this.properties);this.applyStyles(i.element,o)}computeTransitionStyles(t){const i={};if(t.transition&&(i.transition=t.transition),t.transitions){const o=this.generateTransitionsCSS(t.transitions);i.transition=o}return i}generateTransitionsCSS(t){return Object.entries(t).map(([i,o])=>{const e=this.toCSSProperty(i),l=o.duration||300,f=o.easing||"ease",u=o.delay||0;return`${e} ${l}ms ${f}${u>0?` ${u}ms`:""}`}).join(", ")}}function r(n="all",t=300,i="ease",o=0){const e=`${n} ${t}ms ${i}${o>0?` ${o}ms`:""}`;return new a({transition:e})}function s(n){return new a({transitions:n})}function m(n=200){return r("opacity",n,"ease-out")}function p(n=300){return r("transform",n,"ease-out")}function b(n=150){return s({color:{duration:n,easing:"ease-out"},backgroundColor:{duration:n,easing:"ease-out"},borderColor:{duration:n,easing:"ease-out"}})}function y(n=250){return s({width:{duration:n,easing:"ease-out"},height:{duration:n,easing:"ease-out"},margin:{duration:n,easing:"ease-out"},padding:{duration:n,easing:"ease-out"}})}function h(){return s({backgroundColor:{duration:150,easing:"ease-out"},transform:{duration:200,easing:"ease-out"},boxShadow:{duration:200,easing:"ease-out"}})}function S(){return s({transform:{duration:200,easing:"ease-out"},boxShadow:{duration:300,easing:"ease-out"},borderColor:{duration:150,easing:"ease-out"}})}function $(){return s({opacity:{duration:200,easing:"ease-out"},transform:{duration:300,easing:"cubic-bezier(0.34, 1.56, 0.64, 1)"}})}function w(n=300){return r("all",n,"ease-out")}function C(n=150){return r("all",n,"ease-out")}function _(n=500){return r("all",n,"ease-out")}exports.TransitionModifier=a;exports.buttonTransition=h;exports.cardTransition=S;exports.colorTransition=b;exports.fadeTransition=m;exports.layoutTransition=y;exports.modalTransition=$;exports.quickTransition=C;exports.slowTransition=_;exports.smoothTransition=w;exports.transformTransition=p;exports.transition=r;exports.transitions=s;
|
|
2
|
-
//# sourceMappingURL=transitions.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transitions.cjs","sources":["../../src/modifiers/transitions.ts"],"sourcesContent":["/**\n * Transition Modifiers - CSS transition system\n *\n * Provides comprehensive CSS transition capabilities with support for\n * individual property transitions and complex multi-property animations.\n */\n\nimport type { DOMNode } from '../runtime/types'\nimport { BaseModifier } from './base'\nimport type { ModifierContext, ReactiveModifierProps } from './types'\n\nexport interface TransitionConfig {\n property?: string\n duration?: number\n easing?: string\n delay?: number\n}\n\nexport interface TransitionsConfig {\n [property: string]: TransitionConfig\n}\n\nexport interface ModifierTransitionOptions {\n transition?: string\n transitions?: TransitionsConfig\n}\n\nexport type ReactiveTransitionOptions = ReactiveModifierProps<ModifierTransitionOptions>\n\nexport class TransitionModifier extends BaseModifier<ModifierTransitionOptions> {\n readonly type = 'transition'\n readonly priority = 25\n\n constructor(options: ReactiveTransitionOptions) {\n const resolvedOptions: ModifierTransitionOptions = {}\n for (const [key, value] of Object.entries(options)) {\n if (typeof value === 'function' && 'peek' in value) {\n ;(resolvedOptions as any)[key] = (value as any).peek()\n } else {\n ;(resolvedOptions as any)[key] = value\n }\n }\n super(resolvedOptions)\n }\n\n apply(_node: DOMNode, context: ModifierContext): DOMNode | undefined {\n if (!context.element) return\n\n const styles = this.computeTransitionStyles(this.properties)\n this.applyStyles(context.element, styles)\n \n return undefined\n }\n\n private computeTransitionStyles(props: ModifierTransitionOptions) {\n const styles: Record<string, string> = {}\n\n if (props.transition) {\n styles.transition = props.transition\n }\n\n if (props.transitions) {\n const transitionValue = this.generateTransitionsCSS(props.transitions)\n styles.transition = transitionValue\n }\n\n return styles\n }\n\n private generateTransitionsCSS(config: TransitionsConfig): string {\n return Object.entries(config)\n .map(([property, settings]) => {\n const prop = this.toCSSProperty(property)\n const duration = settings.duration || 300\n const easing = settings.easing || 'ease'\n const delay = settings.delay || 0\n \n return `${prop} ${duration}ms ${easing}${delay > 0 ? ` ${delay}ms` : ''}`\n })\n .join(', ')\n }\n}\n\n// ============================================================================\n// Transition Functions\n// ============================================================================\n\n/**\n * Simple transition modifier with sensible defaults\n *\n * @example\n * ```typescript\n * .transition() // All properties, 300ms, ease\n * .transition('opacity') // Just opacity\n * .transition('all', 200) // All properties, 200ms\n * .transition('transform', 300, 'ease-out') // Transform with custom easing\n * .transition('opacity', 150, 'ease-in', 50) // With delay\n * ```\n */\nexport function transition(\n property: string = 'all', \n duration: number = 300, \n easing: string = 'ease', \n delay: number = 0\n): TransitionModifier {\n const transitionValue = `${property} ${duration}ms ${easing}${delay > 0 ? ` ${delay}ms` : ''}`\n return new TransitionModifier({ transition: transitionValue })\n}\n\n/**\n * Complex transitions with multiple properties\n *\n * @example\n * ```typescript\n * .transitions({\n * opacity: { duration: 200, easing: 'ease-out' },\n * transform: { duration: 300, easing: 'ease-in-out', delay: 100 },\n * backgroundColor: { duration: 150 }\n * })\n * ```\n */\nexport function transitions(config: TransitionsConfig): TransitionModifier {\n return new TransitionModifier({ transitions: config })\n}\n\n// ============================================================================\n// Common Transition Presets\n// ============================================================================\n\n/**\n * Quick fade transition\n */\nexport function fadeTransition(duration: number = 200): TransitionModifier {\n return transition('opacity', duration, 'ease-out')\n}\n\n/**\n * Smooth transform transition\n */\nexport function transformTransition(duration: number = 300): TransitionModifier {\n return transition('transform', duration, 'ease-out')\n}\n\n/**\n * Color change transition\n */\nexport function colorTransition(duration: number = 150): TransitionModifier {\n return transitions({\n color: { duration, easing: 'ease-out' },\n backgroundColor: { duration, easing: 'ease-out' },\n borderColor: { duration, easing: 'ease-out' }\n })\n}\n\n/**\n * Layout transition for size changes\n */\nexport function layoutTransition(duration: number = 250): TransitionModifier {\n return transitions({\n width: { duration, easing: 'ease-out' },\n height: { duration, easing: 'ease-out' },\n margin: { duration, easing: 'ease-out' },\n padding: { duration, easing: 'ease-out' }\n })\n}\n\n/**\n * Button hover transition\n */\nexport function buttonTransition(): TransitionModifier {\n return transitions({\n backgroundColor: { duration: 150, easing: 'ease-out' },\n transform: { duration: 200, easing: 'ease-out' },\n boxShadow: { duration: 200, easing: 'ease-out' }\n })\n}\n\n/**\n * Card hover transition\n */\nexport function cardTransition(): TransitionModifier {\n return transitions({\n transform: { duration: 200, easing: 'ease-out' },\n boxShadow: { duration: 300, easing: 'ease-out' },\n borderColor: { duration: 150, easing: 'ease-out' }\n })\n}\n\n/**\n * Modal/dialog transition\n */\nexport function modalTransition(): TransitionModifier {\n return transitions({\n opacity: { duration: 200, easing: 'ease-out' },\n transform: { duration: 300, easing: 'cubic-bezier(0.34, 1.56, 0.64, 1)' }\n })\n}\n\n/**\n * Smooth all-properties transition\n */\nexport function smoothTransition(duration: number = 300): TransitionModifier {\n return transition('all', duration, 'ease-out')\n}\n\n/**\n * Quick transition for interactive elements\n */\nexport function quickTransition(duration: number = 150): TransitionModifier {\n return transition('all', duration, 'ease-out')\n}\n\n/**\n * Slow transition for dramatic effects\n */\nexport function slowTransition(duration: number = 500): TransitionModifier {\n return transition('all', duration, 'ease-out')\n}"],"names":["TransitionModifier","BaseModifier","options","resolvedOptions","key","value","__publicField","_node","context","styles","props","transitionValue","config","property","settings","prop","duration","easing","delay","transition","transitions","fadeTransition","transformTransition","colorTransition","layoutTransition","buttonTransition","cardTransition","modalTransition","smoothTransition","quickTransition","slowTransition"],"mappings":"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"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { BaseModifier as d } from "./base.js";
|
|
2
|
-
var g = Object.defineProperty, p = (n, t, e) => t in n ? g(n, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[t] = e, u = (n, t, e) => p(n, typeof t != "symbol" ? t + "" : t, e);
|
|
3
|
-
class c extends d {
|
|
4
|
-
constructor(t) {
|
|
5
|
-
const e = {};
|
|
6
|
-
for (const [o, i] of Object.entries(t))
|
|
7
|
-
typeof i == "function" && "peek" in i ? e[o] = i.peek() : e[o] = i;
|
|
8
|
-
super(e), u(this, "type", "transition"), u(this, "priority", 25);
|
|
9
|
-
}
|
|
10
|
-
apply(t, e) {
|
|
11
|
-
if (!e.element) return;
|
|
12
|
-
const o = this.computeTransitionStyles(this.properties);
|
|
13
|
-
this.applyStyles(e.element, o);
|
|
14
|
-
}
|
|
15
|
-
computeTransitionStyles(t) {
|
|
16
|
-
const e = {};
|
|
17
|
-
if (t.transition && (e.transition = t.transition), t.transitions) {
|
|
18
|
-
const o = this.generateTransitionsCSS(t.transitions);
|
|
19
|
-
e.transition = o;
|
|
20
|
-
}
|
|
21
|
-
return e;
|
|
22
|
-
}
|
|
23
|
-
generateTransitionsCSS(t) {
|
|
24
|
-
return Object.entries(t).map(([e, o]) => {
|
|
25
|
-
const i = this.toCSSProperty(e), l = o.duration || 300, f = o.easing || "ease", a = o.delay || 0;
|
|
26
|
-
return `${i} ${l}ms ${f}${a > 0 ? ` ${a}ms` : ""}`;
|
|
27
|
-
}).join(", ");
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
function r(n = "all", t = 300, e = "ease", o = 0) {
|
|
31
|
-
const i = `${n} ${t}ms ${e}${o > 0 ? ` ${o}ms` : ""}`;
|
|
32
|
-
return new c({ transition: i });
|
|
33
|
-
}
|
|
34
|
-
function s(n) {
|
|
35
|
-
return new c({ transitions: n });
|
|
36
|
-
}
|
|
37
|
-
function b(n = 200) {
|
|
38
|
-
return r("opacity", n, "ease-out");
|
|
39
|
-
}
|
|
40
|
-
function y(n = 300) {
|
|
41
|
-
return r("transform", n, "ease-out");
|
|
42
|
-
}
|
|
43
|
-
function T(n = 150) {
|
|
44
|
-
return s({
|
|
45
|
-
color: { duration: n, easing: "ease-out" },
|
|
46
|
-
backgroundColor: { duration: n, easing: "ease-out" },
|
|
47
|
-
borderColor: { duration: n, easing: "ease-out" }
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
function h(n = 250) {
|
|
51
|
-
return s({
|
|
52
|
-
width: { duration: n, easing: "ease-out" },
|
|
53
|
-
height: { duration: n, easing: "ease-out" },
|
|
54
|
-
margin: { duration: n, easing: "ease-out" },
|
|
55
|
-
padding: { duration: n, easing: "ease-out" }
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
function S() {
|
|
59
|
-
return s({
|
|
60
|
-
backgroundColor: { duration: 150, easing: "ease-out" },
|
|
61
|
-
transform: { duration: 200, easing: "ease-out" },
|
|
62
|
-
boxShadow: { duration: 200, easing: "ease-out" }
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
function $() {
|
|
66
|
-
return s({
|
|
67
|
-
transform: { duration: 200, easing: "ease-out" },
|
|
68
|
-
boxShadow: { duration: 300, easing: "ease-out" },
|
|
69
|
-
borderColor: { duration: 150, easing: "ease-out" }
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
function w() {
|
|
73
|
-
return s({
|
|
74
|
-
opacity: { duration: 200, easing: "ease-out" },
|
|
75
|
-
transform: { duration: 300, easing: "cubic-bezier(0.34, 1.56, 0.64, 1)" }
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
function C(n = 300) {
|
|
79
|
-
return r("all", n, "ease-out");
|
|
80
|
-
}
|
|
81
|
-
function _(n = 150) {
|
|
82
|
-
return r("all", n, "ease-out");
|
|
83
|
-
}
|
|
84
|
-
function v(n = 500) {
|
|
85
|
-
return r("all", n, "ease-out");
|
|
86
|
-
}
|
|
87
|
-
export {
|
|
88
|
-
c as TransitionModifier,
|
|
89
|
-
S as buttonTransition,
|
|
90
|
-
$ as cardTransition,
|
|
91
|
-
T as colorTransition,
|
|
92
|
-
b as fadeTransition,
|
|
93
|
-
h as layoutTransition,
|
|
94
|
-
w as modalTransition,
|
|
95
|
-
_ as quickTransition,
|
|
96
|
-
v as slowTransition,
|
|
97
|
-
C as smoothTransition,
|
|
98
|
-
y as transformTransition,
|
|
99
|
-
r as transition,
|
|
100
|
-
s as transitions
|
|
101
|
-
};
|
|
102
|
-
//# sourceMappingURL=transitions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transitions.js","sources":["../../src/modifiers/transitions.ts"],"sourcesContent":["/**\n * Transition Modifiers - CSS transition system\n *\n * Provides comprehensive CSS transition capabilities with support for\n * individual property transitions and complex multi-property animations.\n */\n\nimport type { DOMNode } from '../runtime/types'\nimport { BaseModifier } from './base'\nimport type { ModifierContext, ReactiveModifierProps } from './types'\n\nexport interface TransitionConfig {\n property?: string\n duration?: number\n easing?: string\n delay?: number\n}\n\nexport interface TransitionsConfig {\n [property: string]: TransitionConfig\n}\n\nexport interface ModifierTransitionOptions {\n transition?: string\n transitions?: TransitionsConfig\n}\n\nexport type ReactiveTransitionOptions = ReactiveModifierProps<ModifierTransitionOptions>\n\nexport class TransitionModifier extends BaseModifier<ModifierTransitionOptions> {\n readonly type = 'transition'\n readonly priority = 25\n\n constructor(options: ReactiveTransitionOptions) {\n const resolvedOptions: ModifierTransitionOptions = {}\n for (const [key, value] of Object.entries(options)) {\n if (typeof value === 'function' && 'peek' in value) {\n ;(resolvedOptions as any)[key] = (value as any).peek()\n } else {\n ;(resolvedOptions as any)[key] = value\n }\n }\n super(resolvedOptions)\n }\n\n apply(_node: DOMNode, context: ModifierContext): DOMNode | undefined {\n if (!context.element) return\n\n const styles = this.computeTransitionStyles(this.properties)\n this.applyStyles(context.element, styles)\n \n return undefined\n }\n\n private computeTransitionStyles(props: ModifierTransitionOptions) {\n const styles: Record<string, string> = {}\n\n if (props.transition) {\n styles.transition = props.transition\n }\n\n if (props.transitions) {\n const transitionValue = this.generateTransitionsCSS(props.transitions)\n styles.transition = transitionValue\n }\n\n return styles\n }\n\n private generateTransitionsCSS(config: TransitionsConfig): string {\n return Object.entries(config)\n .map(([property, settings]) => {\n const prop = this.toCSSProperty(property)\n const duration = settings.duration || 300\n const easing = settings.easing || 'ease'\n const delay = settings.delay || 0\n \n return `${prop} ${duration}ms ${easing}${delay > 0 ? ` ${delay}ms` : ''}`\n })\n .join(', ')\n }\n}\n\n// ============================================================================\n// Transition Functions\n// ============================================================================\n\n/**\n * Simple transition modifier with sensible defaults\n *\n * @example\n * ```typescript\n * .transition() // All properties, 300ms, ease\n * .transition('opacity') // Just opacity\n * .transition('all', 200) // All properties, 200ms\n * .transition('transform', 300, 'ease-out') // Transform with custom easing\n * .transition('opacity', 150, 'ease-in', 50) // With delay\n * ```\n */\nexport function transition(\n property: string = 'all', \n duration: number = 300, \n easing: string = 'ease', \n delay: number = 0\n): TransitionModifier {\n const transitionValue = `${property} ${duration}ms ${easing}${delay > 0 ? ` ${delay}ms` : ''}`\n return new TransitionModifier({ transition: transitionValue })\n}\n\n/**\n * Complex transitions with multiple properties\n *\n * @example\n * ```typescript\n * .transitions({\n * opacity: { duration: 200, easing: 'ease-out' },\n * transform: { duration: 300, easing: 'ease-in-out', delay: 100 },\n * backgroundColor: { duration: 150 }\n * })\n * ```\n */\nexport function transitions(config: TransitionsConfig): TransitionModifier {\n return new TransitionModifier({ transitions: config })\n}\n\n// ============================================================================\n// Common Transition Presets\n// ============================================================================\n\n/**\n * Quick fade transition\n */\nexport function fadeTransition(duration: number = 200): TransitionModifier {\n return transition('opacity', duration, 'ease-out')\n}\n\n/**\n * Smooth transform transition\n */\nexport function transformTransition(duration: number = 300): TransitionModifier {\n return transition('transform', duration, 'ease-out')\n}\n\n/**\n * Color change transition\n */\nexport function colorTransition(duration: number = 150): TransitionModifier {\n return transitions({\n color: { duration, easing: 'ease-out' },\n backgroundColor: { duration, easing: 'ease-out' },\n borderColor: { duration, easing: 'ease-out' }\n })\n}\n\n/**\n * Layout transition for size changes\n */\nexport function layoutTransition(duration: number = 250): TransitionModifier {\n return transitions({\n width: { duration, easing: 'ease-out' },\n height: { duration, easing: 'ease-out' },\n margin: { duration, easing: 'ease-out' },\n padding: { duration, easing: 'ease-out' }\n })\n}\n\n/**\n * Button hover transition\n */\nexport function buttonTransition(): TransitionModifier {\n return transitions({\n backgroundColor: { duration: 150, easing: 'ease-out' },\n transform: { duration: 200, easing: 'ease-out' },\n boxShadow: { duration: 200, easing: 'ease-out' }\n })\n}\n\n/**\n * Card hover transition\n */\nexport function cardTransition(): TransitionModifier {\n return transitions({\n transform: { duration: 200, easing: 'ease-out' },\n boxShadow: { duration: 300, easing: 'ease-out' },\n borderColor: { duration: 150, easing: 'ease-out' }\n })\n}\n\n/**\n * Modal/dialog transition\n */\nexport function modalTransition(): TransitionModifier {\n return transitions({\n opacity: { duration: 200, easing: 'ease-out' },\n transform: { duration: 300, easing: 'cubic-bezier(0.34, 1.56, 0.64, 1)' }\n })\n}\n\n/**\n * Smooth all-properties transition\n */\nexport function smoothTransition(duration: number = 300): TransitionModifier {\n return transition('all', duration, 'ease-out')\n}\n\n/**\n * Quick transition for interactive elements\n */\nexport function quickTransition(duration: number = 150): TransitionModifier {\n return transition('all', duration, 'ease-out')\n}\n\n/**\n * Slow transition for dramatic effects\n */\nexport function slowTransition(duration: number = 500): TransitionModifier {\n return transition('all', duration, 'ease-out')\n}"],"names":["TransitionModifier","BaseModifier","options","resolvedOptions","key","value","__publicField","_node","context","styles","props","transitionValue","config","property","settings","prop","duration","easing","delay","transition","transitions","fadeTransition","transformTransition","colorTransition","layoutTransition","buttonTransition","cardTransition","modalTransition","smoothTransition","quickTransition","slowTransition"],"mappings":"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"}
|
package/dist/modifiers/types.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var T=(A=>(A[A.LAYOUT=100]="LAYOUT",A[A.APPEARANCE=200]="APPEARANCE",A[A.INTERACTION=300]="INTERACTION",A[A.ANIMATION=400]="ANIMATION",A[A.CUSTOM=500]="CUSTOM",A))(T||{});exports.ModifierPriority=T;
|
|
2
|
-
//# sourceMappingURL=types.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.cjs","sources":["../../src/modifiers/types.ts"],"sourcesContent":["/**\n * SwiftUI Modifier System Types\n *\n * Core type definitions for the SwiftUI-inspired modifier system.\n * Enables chaining modifiers on components similar to SwiftUI.\n */\n\nimport type { Signal } from '../reactive/types'\nimport type { ComponentInstance, ComponentProps, DOMNode } from '../runtime/types'\nimport type { FontWeight } from './typography'\nimport type { Dimension } from '../constants/layout'\nimport type { StatefulBackgroundValue } from '../gradients/types'\nimport type { ResponsiveModifierBuilder, ResponsiveBreakpointBuilder } from './responsive/responsive-builder'\nimport type { Asset } from '../assets/Asset'\nimport type { ColorAssetProxy, ImageAssetProxy, FontAssetProxy } from '../assets/types'\n\n/**\n * Valid color value types for modifiers\n */\nexport type ColorValue = string | Asset | ColorAssetProxy | Signal<string>\n\n/**\n * Valid asset types for modifiers\n */\nexport type AssetValue = Asset | ColorAssetProxy | ImageAssetProxy | FontAssetProxy\n\n/**\n * Text component interface for type safety with asHTML modifier\n */\nexport interface TextComponent extends ComponentInstance {\n readonly __tachui_component_type: 'Text'\n content: string\n}\n\n/**\n * Base modifier interface that all modifiers must implement\n */\nexport interface Modifier<TProps = {}> {\n readonly type: string\n readonly priority: number\n readonly properties: TProps\n apply(node: DOMNode, context: ModifierContext): DOMNode | undefined\n}\n\n/**\n * Context passed to modifiers during application\n */\nexport interface ModifierContext {\n componentId: string\n componentInstance?: ComponentInstance\n element?: Element\n parentElement?: Element\n phase: 'creation' | 'update' | 'cleanup'\n previousModifiers?: Modifier[]\n}\n\n/**\n * Modifier application result\n */\nexport interface ModifierResult {\n node: DOMNode\n effects?: (() => void)[]\n cleanup?: (() => void)[]\n}\n\n/**\n * Reactive modifier properties that can contain signals\n */\nexport type ReactiveModifierProps<T> = {\n [K in keyof T]: T[K] | Signal<T[K]>\n}\n\n/**\n * Strict TextShadow configuration interface\n * Prevents common mistakes like using 'radius' instead of 'blur'\n */\nexport interface TextShadowConfig {\n readonly x: number\n readonly y: number \n readonly blur: number\n readonly color: string\n}\n\n/**\n * Layout modifier properties\n */\nexport interface LayoutModifierProps {\n frame?: {\n width?: Dimension\n height?: Dimension\n minWidth?: Dimension\n maxWidth?: Dimension\n minHeight?: Dimension\n maxHeight?: Dimension\n }\n padding?:\n | {\n top?: number\n right?: number\n bottom?: number\n left?: number\n }\n | number\n margin?:\n | {\n top?: number | string\n right?: number | string\n bottom?: number | string\n left?: number | string\n }\n | number | string\n alignment?: 'leading' | 'center' | 'trailing' | 'top' | 'bottom'\n layoutPriority?: number\n offset?: {\n x?: number\n y?: number\n }\n aspectRatio?: {\n ratio?: number\n contentMode?: 'fit' | 'fill'\n }\n fixedSize?: {\n horizontal?: boolean\n vertical?: boolean\n }\n // Transform Properties (Phase 3 - Epic: Butternut)\n scaleEffect?: {\n x?: number\n y?: number\n anchor?:\n | 'center'\n | 'top'\n | 'topLeading'\n | 'topTrailing'\n | 'bottom'\n | 'bottomLeading'\n | 'bottomTrailing'\n | 'leading'\n | 'trailing'\n }\n position?: {\n x?: number\n y?: number\n }\n zIndex?: number\n}\n\n/**\n * Appearance modifier properties\n */\nexport interface AppearanceModifierProps {\n foregroundColor?: ColorValue\n backgroundColor?: ColorValue\n background?: StatefulBackgroundValue\n opacity?: number\n font?: {\n family?: string\n size?: number | string | Signal<number> | Signal<string>\n weight?:\n | 'normal'\n | 'bold'\n | '100'\n | '200'\n | '300'\n | '400'\n | '500'\n | '600'\n | '700'\n | '800'\n | '900'\n style?: 'normal' | 'italic' | 'oblique'\n }\n cornerRadius?: number\n border?: {\n width?: number | Signal<number>\n color?: ColorValue\n style?: 'solid' | 'dashed' | 'dotted'\n }\n shadow?: {\n color?: string\n radius?: number\n x?: number\n y?: number\n }\n clipped?: boolean\n clipShape?: {\n shape: 'circle' | 'ellipse' | 'rect' | 'polygon'\n parameters?: Record<string, any>\n }\n // Visual Effects (Phase 2 - Epic: Butternut)\n blur?: number // CSS filter: blur(Npx)\n brightness?: number // CSS filter: brightness(N) - 1.0 is normal\n contrast?: number // CSS filter: contrast(N) - 1.0 is normal \n saturation?: number // CSS filter: saturate(N) - 1.0 is normal\n hueRotation?: number // CSS filter: hue-rotate(Ndeg)\n grayscale?: number // CSS filter: grayscale(N) - 0.0 to 1.0\n colorInvert?: number // CSS filter: invert(N) - 0.0 to 1.0\n}\n\n/**\n * Interaction modifier properties\n */\nexport interface InteractionModifierProps {\n // Existing mouse events\n onTap?: (event: MouseEvent) => void\n onHover?: (isHovered: boolean) => void\n onMouseEnter?: (event: MouseEvent) => void\n onMouseLeave?: (event: MouseEvent) => void\n onMouseDown?: (event: MouseEvent) => void\n onMouseUp?: (event: MouseEvent) => void\n onDoubleClick?: (event: MouseEvent) => void\n onContextMenu?: (event: MouseEvent) => void\n \n // Existing drag events\n onDragStart?: (event: DragEvent) => void\n onDragOver?: (event: DragEvent) => void\n onDragLeave?: (event: DragEvent) => void\n onDrop?: (event: DragEvent) => void\n \n // Focus events (onFocus exists, adding onBlur)\n onFocus?: (isFocused: boolean) => void\n onBlur?: (isFocused: boolean) => void\n \n // Keyboard events\n onKeyPress?: (event: KeyboardEvent) => void\n onKeyDown?: (event: KeyboardEvent) => void\n onKeyUp?: (event: KeyboardEvent) => void\n \n // Scroll and wheel events\n onScroll?: (event: Event) => void\n onWheel?: (event: WheelEvent) => void\n \n // Input events\n onInput?: (event: InputEvent) => void\n onChange?: (value: any, event?: Event) => void\n \n // Clipboard events\n onCopy?: (event: ClipboardEvent) => void\n onCut?: (event: ClipboardEvent) => void\n onPaste?: (event: ClipboardEvent) => void\n \n // Other events\n onSelect?: (event: Event) => void\n \n // Advanced Gesture Modifiers (Phase 4 - Epic: Butternut)\n onLongPressGesture?: {\n minimumDuration?: number // ms, default 500\n maximumDistance?: number // px, default 10\n perform: () => void\n onPressingChanged?: (isPressing: boolean) => void\n }\n \n // Keyboard Shortcuts (Phase 4 - Epic: Butternut)\n keyboardShortcut?: {\n key: string\n modifiers?: ('cmd' | 'ctrl' | 'shift' | 'alt' | 'meta')[]\n action: () => void\n }\n \n // Focus Management (Phase 4 - Epic: Butternut) \n focused?: boolean | Signal<boolean>\n focusable?: {\n isFocusable?: boolean\n interactions?: ('activate' | 'edit')[]\n }\n \n // Enhanced Hover Tracking (Phase 4 - Epic: Butternut)\n onContinuousHover?: {\n coordinateSpace?: 'local' | 'global'\n perform: (location: { x: number; y: number } | null) => void\n }\n \n // Gesture Priority System (Phase 4 - Epic: Butternut)\n highPriorityGesture?: {\n gesture: any // Will define gesture types later\n including?: ('all' | 'subviews' | 'none')[]\n }\n simultaneousGesture?: {\n gesture: any\n including?: ('all' | 'subviews' | 'none')[]\n }\n \n // Hit Testing Control (Phase 4 - Epic: Butternut)\n allowsHitTesting?: boolean\n \n // Existing state properties\n disabled?: boolean\n draggable?: boolean\n accessibilityLabel?: string\n accessibilityHint?: string\n}\n\n/**\n * Animation modifier properties\n */\nexport interface AnimationModifierProps {\n transition?: {\n property?: string\n duration?: number\n easing?: string\n delay?: number\n }\n animation?: {\n keyframes?: Record<string, Record<string, string>>\n duration?: number\n easing?: string\n iterations?: number | 'infinite'\n direction?: 'normal' | 'reverse' | 'alternate' | 'alternate-reverse'\n }\n transform?: string | Signal<string>\n rotationEffect?: {\n angle: number\n anchor?:\n | 'center'\n | 'top'\n | 'topLeading'\n | 'topTrailing'\n | 'bottom'\n | 'bottomLeading'\n | 'bottomTrailing'\n | 'leading'\n | 'trailing'\n }\n overlay?: {\n content: any // ComponentInstance or function that returns ComponentInstance\n alignment?:\n | 'center'\n | 'top'\n | 'bottom'\n | 'leading'\n | 'trailing'\n | 'topLeading'\n | 'topTrailing'\n | 'bottomLeading'\n | 'bottomTrailing'\n }\n}\n\n/**\n * Lifecycle modifier properties\n */\nexport interface LifecycleModifierProps {\n onAppear?: () => void\n onDisappear?: () => void\n task?: {\n operation: () => Promise<void> | void\n id?: string\n priority?: 'background' | 'userInitiated' | 'utility' | 'default'\n }\n refreshable?: {\n onRefresh: () => Promise<void>\n isRefreshing?: boolean | Signal<boolean>\n }\n}\n\n/**\n * Modifier factory function type\n */\nexport type ModifierFactory<TProps = {}> = (\n props: ReactiveModifierProps<TProps>\n) => Modifier<TProps>\n\n/**\n * Modifier builder interface for creating chainable modifiers\n */\nexport interface ModifierBuilder<T extends ComponentInstance = ComponentInstance> {\n // Layout modifiers\n frame(width?: Dimension, height?: Dimension): ModifierBuilder<T>\n frame(options: LayoutModifierProps['frame']): ModifierBuilder<T>\n padding(value: number): ModifierBuilder<T>\n padding(options: LayoutModifierProps['padding']): ModifierBuilder<T>\n margin(value: number | string): ModifierBuilder<T>\n margin(options: LayoutModifierProps['margin']): ModifierBuilder<T>\n\n // New multi-property modifiers\n size(options: {\n width?: Dimension\n height?: Dimension\n minWidth?: Dimension\n maxWidth?: Dimension\n minHeight?: Dimension\n maxHeight?: Dimension\n }): ModifierBuilder<T>\n width(value: Dimension): ModifierBuilder<T>\n height(value: Dimension): ModifierBuilder<T>\n maxWidth(value: Dimension): ModifierBuilder<T>\n minWidth(value: Dimension): ModifierBuilder<T>\n maxHeight(value: Dimension): ModifierBuilder<T>\n minHeight(value: Dimension): ModifierBuilder<T>\n marginTop(value: number | string): ModifierBuilder<T>\n marginBottom(value: number | string): ModifierBuilder<T>\n marginHorizontal(value: number | string): ModifierBuilder<T>\n marginVertical(value: number | string): ModifierBuilder<T>\n\n // Typography modifiers\n typography(options: {\n size?: number | string\n weight?: FontWeight | number\n family?: string\n lineHeight?: number | string\n letterSpacing?: number | string\n align?: string\n transform?: string\n decoration?: string\n variant?: string\n style?: string\n color?: string\n }): ModifierBuilder<T>\n textAlign(value: 'left' | 'center' | 'right' | 'justify' | 'start' | 'end'): ModifierBuilder<T>\n textTransform(value: 'none' | 'uppercase' | 'lowercase' | 'capitalize'): ModifierBuilder<T>\n letterSpacing(value: number | string): ModifierBuilder<T>\n lineHeight(value: number | string): ModifierBuilder<T>\n gradientText(gradient: string): ModifierBuilder<T>\n\n // Border modifiers\n borderTop(\n width: number | Signal<number>,\n color: ColorValue,\n style?: 'solid' | 'dashed' | 'dotted' | 'double' | 'groove' | 'ridge' | 'inset' | 'outset'\n ): ModifierBuilder<T>\n borderRight(\n width: number | Signal<number>,\n color: ColorValue,\n style?: 'solid' | 'dashed' | 'dotted' | 'double' | 'groove' | 'ridge' | 'inset' | 'outset'\n ): ModifierBuilder<T>\n borderBottom(\n width: number | Signal<number>,\n color: ColorValue,\n style?: 'solid' | 'dashed' | 'dotted' | 'double' | 'groove' | 'ridge' | 'inset' | 'outset'\n ): ModifierBuilder<T>\n borderLeft(\n width: number | Signal<number>,\n color: ColorValue,\n style?: 'solid' | 'dashed' | 'dotted' | 'double' | 'groove' | 'ridge' | 'inset' | 'outset'\n ): ModifierBuilder<T>\n\n // Flexbox modifiers\n flexGrow(value: number): ModifierBuilder<T>\n flexShrink(value: number): ModifierBuilder<T>\n justifyContent(\n value: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly'\n ): ModifierBuilder<T>\n alignItems(\n value: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'\n ): ModifierBuilder<T>\n gap(value: number | string): ModifierBuilder<T>\n flexDirection(value: 'row' | 'row-reverse' | 'column' | 'column-reverse'): ModifierBuilder<T>\n flexWrap(value: 'nowrap' | 'wrap' | 'wrap-reverse'): ModifierBuilder<T>\n\n // Utility modifiers\n cursor(\n value:\n | 'auto'\n | 'default'\n | 'pointer'\n | 'text'\n | 'wait'\n | 'help'\n | 'not-allowed'\n | 'grab'\n | 'grabbing'\n ): ModifierBuilder<T>\n overflowY(value: 'visible' | 'hidden' | 'scroll' | 'auto'): ModifierBuilder<T>\n overflowX(value: 'visible' | 'hidden' | 'scroll' | 'auto'): ModifierBuilder<T>\n position(value: 'static' | 'relative' | 'absolute' | 'fixed' | 'sticky'): ModifierBuilder<T>\n zIndex(value: number): ModifierBuilder<T>\n display(\n value: 'block' | 'inline' | 'inline-block' | 'flex' | 'inline-flex' | 'grid' | 'none'\n ): ModifierBuilder<T>\n transform(value: string | Signal<string>): ModifierBuilder<T>\n\n // Raw CSS modifiers\n css(properties: { [property: string]: string | number | undefined }): ModifierBuilder<T>\n cssProperty(property: string, value: string | number): ModifierBuilder<T>\n cssVariable(name: string, value: string | number): ModifierBuilder<T>\n\n // Phase 1 SwiftUI modifiers\n offset(x: number | Signal<number>, y?: number | Signal<number>): ModifierBuilder<T>\n clipped(): ModifierBuilder<T>\n rotationEffect(\n angle: number | Signal<number>,\n anchor?:\n | 'center'\n | 'top'\n | 'topLeading'\n | 'topTrailing'\n | 'bottom'\n | 'bottomLeading'\n | 'bottomTrailing'\n | 'leading'\n | 'trailing'\n ): ModifierBuilder<T>\n\n // Phase 2 SwiftUI modifiers\n aspectRatio(ratio?: number | Signal<number>, contentMode?: 'fit' | 'fill'): ModifierBuilder<T>\n fixedSize(horizontal?: boolean, vertical?: boolean): ModifierBuilder<T>\n clipShape(\n shape: 'circle' | 'ellipse' | 'rect' | 'polygon',\n parameters?: Record<string, any>\n ): ModifierBuilder<T>\n overlay(\n content: any,\n alignment?:\n | 'center'\n | 'top'\n | 'bottom'\n | 'leading'\n | 'trailing'\n | 'topLeading'\n | 'topTrailing'\n | 'bottomLeading'\n | 'bottomTrailing'\n ): ModifierBuilder<T>\n\n // Phase 3 SwiftUI modifiers - Critical Transform Modifiers\n scaleEffect(\n x: number | Signal<number>,\n y?: number | Signal<number>,\n anchor?:\n | 'center'\n | 'top'\n | 'topLeading'\n | 'topTrailing'\n | 'bottom'\n | 'bottomLeading'\n | 'bottomTrailing'\n | 'leading'\n | 'trailing'\n ): ModifierBuilder<T>\n \n // Note: SwiftUI-style position for absolute positioning (different from CSS position)\n absolutePosition(x: number | Signal<number>, y: number | Signal<number>): ModifierBuilder<T>\n\n // Appearance modifiers\n foregroundColor(color: ColorValue): ModifierBuilder<T>\n backgroundColor(color: ColorValue): ModifierBuilder<T>\n background(value: StatefulBackgroundValue | Signal<string>): ModifierBuilder<T>\n font(options: AppearanceModifierProps['font']): ModifierBuilder<T>\n font(size: number | string): ModifierBuilder<T>\n fontWeight(weight: NonNullable<AppearanceModifierProps['font']>['weight']): ModifierBuilder<T>\n fontSize(size: number | string | Signal<number> | Signal<string>): ModifierBuilder<T>\n opacity(value: number | Signal<number>): ModifierBuilder<T>\n cornerRadius(radius: number | Signal<number>): ModifierBuilder<T>\n border(width: number | Signal<number>, color?: ColorValue): ModifierBuilder<T>\n border(options: AppearanceModifierProps['border']): ModifierBuilder<T>\n borderWidth(width: number | Signal<number>): ModifierBuilder<T>\n shadow(options: AppearanceModifierProps['shadow']): ModifierBuilder<T>\n shadow(config: { x: number; y: number; blur: number; color: string; spread?: number; inset?: boolean }): ModifierBuilder<T>\n shadows(configs: Array<{ x: number; y: number; blur: number; color: string; spread?: number; inset?: boolean }>): ModifierBuilder<T>\n textShadow(config: TextShadowConfig): ModifierBuilder<T>\n shadowPreset(presetName: string): ModifierBuilder<T>\n\n // Visual Effects Modifiers (Phase 2 - Epic: Butternut)\n blur(radius: number | Signal<number>): ModifierBuilder<T>\n brightness(amount: number | Signal<number>): ModifierBuilder<T>\n contrast(amount: number | Signal<number>): ModifierBuilder<T>\n saturation(amount: number | Signal<number>): ModifierBuilder<T>\n hueRotation(angle: number | Signal<number>): ModifierBuilder<T>\n grayscale(amount: number | Signal<number>): ModifierBuilder<T>\n colorInvert(amount?: number | Signal<number>): ModifierBuilder<T>\n dropShadow(shadow: string): ModifierBuilder<T>\n \n // Additional filter methods\n filter(config: { blur?: number; brightness?: number; contrast?: number; saturate?: number; [key: string]: any } | string): ModifierBuilder<T>\n saturate(value: number): ModifierBuilder<T>\n sepia(value: number): ModifierBuilder<T>\n hueRotate(angle: string): ModifierBuilder<T>\n invert(value: number): ModifierBuilder<T>\n \n // Filter presets\n vintagePhoto(sepiaAmount?: number, contrastAmount?: number): ModifierBuilder<T>\n blackAndWhite(contrastAmount?: number): ModifierBuilder<T>\n vibrant(saturationAmount?: number, contrastAmount?: number): ModifierBuilder<T>\n warmTone(hueShift?: string): ModifierBuilder<T>\n coolTone(hueShift?: string): ModifierBuilder<T>\n faded(contrastAmount?: number, saturationAmount?: number): ModifierBuilder<T>\n highKey(brightnessAmount?: number, contrastAmount?: number): ModifierBuilder<T>\n lowKey(brightnessAmount?: number, contrastAmount?: number): ModifierBuilder<T>\n softFocus(blurAmount?: number): ModifierBuilder<T>\n highContrastMode(): ModifierBuilder<T>\n subtleBlur(): ModifierBuilder<T>\n darkModeInvert(): ModifierBuilder<T>\n\n // Transform modifiers (SwiftUI-style)\n scale(value: number | { x?: number; y?: number }): ModifierBuilder<T>\n rotate(angle: string): ModifierBuilder<T>\n translate(offset: { x?: number | string; y?: number | string }): ModifierBuilder<T>\n perspective(value: number): ModifierBuilder<T>\n\n // Hover and cursor effect modifiers\n hover(styles: any, transition?: string | number): ModifierBuilder<T>\n hoverEffect(effect: 'automatic' | 'highlight' | 'lift' | 'scale', isEnabled?: boolean): ModifierBuilder<T>\n hoverWithTransition(styles: any, duration?: number): ModifierBuilder<T>\n conditionalHover(effect: 'automatic' | 'highlight' | 'lift' | 'scale', isEnabled: boolean): ModifierBuilder<T>\n\n // Cursor preset methods\n interactiveCursor(): ModifierBuilder<T>\n draggableCursor(): ModifierBuilder<T>\n textCursor(): ModifierBuilder<T>\n disabledCursor(): ModifierBuilder<T>\n loadingCursor(): ModifierBuilder<T>\n helpCursor(): ModifierBuilder<T>\n zoomCursor(mode?: 'in' | 'out'): ModifierBuilder<T>\n\n // Hover effect presets\n buttonHover(): ModifierBuilder<T>\n cardHover(): ModifierBuilder<T>\n linkHover(): ModifierBuilder<T>\n imageHover(): ModifierBuilder<T>\n\n // Interaction modifiers\n onTap(handler: (event: MouseEvent) => void): ModifierBuilder<T>\n onHover(handler: (isHovered: boolean) => void): ModifierBuilder<T>\n onMouseEnter(handler: (event: MouseEvent) => void): ModifierBuilder<T>\n onMouseLeave(handler: (event: MouseEvent) => void): ModifierBuilder<T>\n onMouseDown(handler: (event: MouseEvent) => void): ModifierBuilder<T>\n onMouseUp(handler: (event: MouseEvent) => void): ModifierBuilder<T>\n onDoubleClick(handler: (event: MouseEvent) => void): ModifierBuilder<T>\n onContextMenu(handler: (event: MouseEvent) => void): ModifierBuilder<T>\n onDragStart(handler: (event: DragEvent) => void): ModifierBuilder<T>\n onDragOver(handler: (event: DragEvent) => void): ModifierBuilder<T>\n onDragLeave(handler: (event: DragEvent) => void): ModifierBuilder<T>\n onDrop(handler: (event: DragEvent) => void): ModifierBuilder<T>\n \n // Focus events\n onFocus(handler: (isFocused: boolean) => void): ModifierBuilder<T>\n onBlur(handler: (isFocused: boolean) => void): ModifierBuilder<T>\n \n // Keyboard events\n onKeyPress(handler: (event: KeyboardEvent) => void): ModifierBuilder<T>\n onKeyDown(handler: (event: KeyboardEvent) => void): ModifierBuilder<T>\n onKeyUp(handler: (event: KeyboardEvent) => void): ModifierBuilder<T>\n \n // Scroll and wheel events\n onScroll(handler: (event: Event) => void): ModifierBuilder<T>\n onWheel(handler: (event: WheelEvent) => void): ModifierBuilder<T>\n \n // Input events\n onInput(handler: (event: InputEvent) => void): ModifierBuilder<T>\n onChange(handler: (value: any, event?: Event) => void): ModifierBuilder<T>\n \n // Clipboard events\n onCopy(handler: (event: ClipboardEvent) => void): ModifierBuilder<T>\n onCut(handler: (event: ClipboardEvent) => void): ModifierBuilder<T>\n onPaste(handler: (event: ClipboardEvent) => void): ModifierBuilder<T>\n \n // Other events\n onSelect(handler: (event: Event) => void): ModifierBuilder<T>\n \n // Advanced Gesture Modifiers (Phase 4 - Epic: Butternut)\n onLongPressGesture(\n options: {\n minimumDuration?: number\n maximumDistance?: number\n perform: () => void\n onPressingChanged?: (isPressing: boolean) => void\n }\n ): ModifierBuilder<T>\n \n // Keyboard Shortcuts (Phase 4 - Epic: Butternut)\n keyboardShortcut(\n key: string,\n modifiers: ('cmd' | 'ctrl' | 'shift' | 'alt' | 'meta')[],\n action: () => void\n ): ModifierBuilder<T>\n \n // Focus Management (Phase 4 - Epic: Butternut)\n focused(binding: boolean | Signal<boolean>): ModifierBuilder<T>\n focusable(\n isFocusable?: boolean,\n interactions?: ('activate' | 'edit')[]\n ): ModifierBuilder<T>\n \n // Enhanced Hover Tracking (Phase 4 - Epic: Butternut)\n onContinuousHover(\n coordinateSpace: 'local' | 'global',\n perform: (location: { x: number; y: number } | null) => void\n ): ModifierBuilder<T>\n \n // Gesture Priority System (Phase 4 - Epic: Butternut)\n highPriorityGesture(\n gesture: any,\n including?: ('all' | 'subviews' | 'none')[]\n ): ModifierBuilder<T>\n simultaneousGesture(\n gesture: any,\n including?: ('all' | 'subviews' | 'none')[]\n ): ModifierBuilder<T>\n \n // Hit Testing Control (Phase 4 - Epic: Butternut)\n allowsHitTesting(enabled: boolean): ModifierBuilder<T>\n \n // HTML and ARIA Attributes\n id(value: string): ModifierBuilder<T>\n data(attributes: { [key: string]: string | number | boolean }): ModifierBuilder<T>\n aria(attributes: { [key: string]: string | number | boolean | undefined }): ModifierBuilder<T>\n tabIndex(value: number): ModifierBuilder<T>\n\n // Text Modifiers\n lineClamp(lines: number): ModifierBuilder<T>\n wordBreak(value: 'normal' | 'break-all' | 'keep-all' | 'break-word'): ModifierBuilder<T>\n overflowWrap(value: 'normal' | 'break-word' | 'anywhere'): ModifierBuilder<T>\n hyphens(value: 'none' | 'manual' | 'auto'): ModifierBuilder<T>\n\n // Backdrop Filter Modifiers (Unified Implementation)\n backdropFilter(config: { blur?: number; brightness?: number; contrast?: number; saturate?: number; [key: string]: any }, fallbackColor?: ColorValue): ModifierBuilder<T>\n backdropFilter(cssValue: string, fallbackColor?: ColorValue): ModifierBuilder<T>\n glassmorphism(intensity?: 'subtle' | 'light' | 'medium' | 'heavy', customFallback?: ColorValue): ModifierBuilder<T>\n\n // Pseudo-element modifiers\n before(styles: { content: string; color?: string; [key: string]: any }): ModifierBuilder<T>\n after(styles: { content: string; color?: string; [key: string]: any }): ModifierBuilder<T>\n\n // State modifiers\n disabled(isDisabled?: boolean | Signal<boolean>): ModifierBuilder<T>\n draggable(isDraggable?: boolean): ModifierBuilder<T>\n setAttribute(name: string, value: string): ModifierBuilder<T>\n accessibilityLabel(label: string): ModifierBuilder<T>\n\n // Animation modifiers\n transition(property?: string, duration?: number, easing?: string, delay?: number): ModifierBuilder<T>\n transitions(config: any): ModifierBuilder<T>\n animation(options: AnimationModifierProps['animation']): ModifierBuilder<T>\n\n // Transition presets\n fadeTransition(duration?: number): ModifierBuilder<T>\n transformTransition(duration?: number): ModifierBuilder<T>\n colorTransition(duration?: number): ModifierBuilder<T>\n layoutTransition(duration?: number): ModifierBuilder<T>\n buttonTransition(): ModifierBuilder<T>\n cardTransition(): ModifierBuilder<T>\n modalTransition(): ModifierBuilder<T>\n smoothTransition(duration?: number): ModifierBuilder<T>\n quickTransition(duration?: number): ModifierBuilder<T>\n slowTransition(duration?: number): ModifierBuilder<T>\n\n // Scroll modifiers\n scroll(config: any): ModifierBuilder<T>\n scrollBehavior(value: 'auto' | 'smooth'): ModifierBuilder<T>\n overscrollBehavior(value: 'auto' | 'contain' | 'none'): ModifierBuilder<T>\n overscrollBehaviorX(value: 'auto' | 'contain' | 'none'): ModifierBuilder<T>\n overscrollBehaviorY(value: 'auto' | 'contain' | 'none'): ModifierBuilder<T>\n scrollMargin(margin: number | string | { top?: number | string, right?: number | string, bottom?: number | string, left?: number | string }): ModifierBuilder<T>\n scrollPadding(padding: number | string | { top?: number | string, right?: number | string, bottom?: number | string, left?: number | string }): ModifierBuilder<T>\n scrollSnap(\n type: 'none' | 'x mandatory' | 'y mandatory' | 'x proximity' | 'y proximity' | 'both mandatory' | 'both proximity',\n align?: 'start' | 'end' | 'center',\n stop?: 'normal' | 'always'\n ): ModifierBuilder<T>\n\n // Lifecycle modifiers\n onAppear(handler: () => void): ModifierBuilder<T>\n onDisappear(handler: () => void): ModifierBuilder<T>\n task(\n operation: () => Promise<void> | void,\n options?: { id?: string; priority?: 'background' | 'userInitiated' | 'utility' | 'default' }\n ): ModifierBuilder<T>\n refreshable(\n onRefresh: () => Promise<void>,\n isRefreshing?: boolean | Signal<boolean>\n ): ModifierBuilder<T>\n\n // Custom modifier application\n modifier(modifier: Modifier): ModifierBuilder<T>\n\n // Resizable modifier for images\n resizable(): ModifierBuilder<T>\n\n // Text case alias for textTransform\n textCase(value: 'none' | 'uppercase' | 'lowercase' | 'capitalize'): ModifierBuilder<T>\n\n // HTML Content Rendering (Text components only)\n /**\n * Render component content as HTML instead of plain text\n * \n * ⚠️ **RESTRICTION**: Only available on Text components for security\n * ⚠️ **SECURITY NOTICE**: This modifier treats content as HTML.\n * - Default: Basic sanitization removes common XSS vectors\n * - Use skipSanitizer: true only with fully trusted content\n * - Consider DOMPurify for comprehensive sanitization\n * - Non-reactive for performance (content is processed once)\n * \n * @param options - Configuration options\n * \n * @example\n * ```typescript\n * // ✅ Allowed: Text components only\n * Text('<p>Hello <strong>world</strong></p>').modifier.asHTML().build()\n * \n * // ❌ Compile Error: Not a Text component\n * VStack({}).modifier.asHTML() // TypeScript error\n * \n * // ✅ Dangerous: Skip sanitization\n * Text(serverTemplate).modifier.asHTML({ skipSanitizer: true }).build()\n * ```\n */\n asHTML(options?: import('./as-html').AsHTMLOptions): ModifierBuilder<T>\n\n // Responsive Design Methods\n responsive(): ResponsiveModifierBuilder<T>\n \n // Responsive Breakpoint Shorthand Properties\n readonly base: ResponsiveBreakpointBuilder<T>\n readonly sm: ResponsiveBreakpointBuilder<T>\n readonly md: ResponsiveBreakpointBuilder<T>\n readonly lg: ResponsiveBreakpointBuilder<T>\n readonly xl: ResponsiveBreakpointBuilder<T>\n readonly '2xl': ResponsiveBreakpointBuilder<T>\n \n addModifier(modifier: Modifier): void\n\n // Build the final component with all modifiers applied\n build(): T\n}\n\n/**\n * Modifiable component - components that can have modifiers applied\n */\nexport interface ModifiableComponent<P extends ComponentProps = ComponentProps>\n extends ComponentInstance<P> {\n modifiers: Modifier[]\n modifierBuilder?: ModifierBuilder<ModifiableComponent<P>>\n}\n\n/**\n * CSS style properties that can be generated by modifiers\n */\nexport interface CSSStyleProperties {\n [property: string]: string | number | Signal<string> | Signal<number> | undefined\n}\n\n/**\n * CSS class names that can be applied by modifiers\n */\nexport interface CSSClassNames {\n base?: string[]\n state?: Record<string, string[]>\n responsive?: Record<string, string[]>\n}\n\n/**\n * Modifier registry for registering custom modifiers\n */\nexport interface ModifierRegistry {\n register<TProps>(name: string, factory: ModifierFactory<TProps>): void\n get<TProps>(name: string): ModifierFactory<TProps> | undefined\n has(name: string): boolean\n list(): string[]\n}\n\n/**\n * Modifier application options\n */\nexport interface ModifierApplicationOptions {\n immediate?: boolean\n batch?: boolean\n suppressEffects?: boolean\n enableAnimations?: boolean\n}\n\n/**\n * Modifier priority levels for ordering\n */\nexport enum ModifierPriority {\n LAYOUT = 100,\n APPEARANCE = 200,\n INTERACTION = 300,\n ANIMATION = 400,\n CUSTOM = 500,\n}\n\n/**\n * Modifier application strategy\n */\nexport type ModifierApplicationStrategy =\n | 'sequential' // Apply modifiers one by one in order\n | 'batch' // Batch all style changes and apply at once\n | 'immediate' // Apply each modifier immediately\n\n/**\n * Style computation context for reactive styles\n */\nexport interface StyleComputationContext {\n componentId: string\n element: Element\n modifiers: Modifier[]\n signals: Set<Signal<any>>\n cleanup: (() => void)[]\n}\n"],"names":["ModifierPriority"],"mappings":"gFA+1BO,IAAKA,GAAAA,IACVA,EAAAA,EAAA,OAAS,GAAA,EAAT,SACAA,EAAAA,EAAA,WAAa,GAAA,EAAb,aACAA,EAAAA,EAAA,YAAc,GAAA,EAAd,cACAA,EAAAA,EAAA,UAAY,GAAA,EAAZ,YACAA,EAAAA,EAAA,OAAS,GAAA,EAAT,SALUA,IAAAA,GAAA,CAAA,CAAA"}
|
package/dist/modifiers/types.js
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
var N = /* @__PURE__ */ ((A) => (A[A.LAYOUT = 100] = "LAYOUT", A[A.APPEARANCE = 200] = "APPEARANCE", A[A.INTERACTION = 300] = "INTERACTION", A[A.ANIMATION = 400] = "ANIMATION", A[A.CUSTOM = 500] = "CUSTOM", A))(N || {});
|
|
2
|
-
export {
|
|
3
|
-
N as ModifierPriority
|
|
4
|
-
};
|
|
5
|
-
//# sourceMappingURL=types.js.map
|