zyzz 0.0.0 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +380 -0
- package/dist/Config.d.ts +170 -0
- package/dist/Config.d.ts.map +1 -0
- package/dist/Config.js +249 -0
- package/dist/Config.js.map +1 -0
- package/dist/Props.d.ts +7 -0
- package/dist/Props.d.ts.map +1 -0
- package/dist/Props.js +3 -0
- package/dist/Props.js.map +1 -0
- package/dist/Style.d.ts +170 -0
- package/dist/Style.d.ts.map +1 -0
- package/dist/Style.js +325 -0
- package/dist/Style.js.map +1 -0
- package/dist/Theme.d.ts +157 -0
- package/dist/Theme.d.ts.map +1 -0
- package/dist/Theme.js +273 -0
- package/dist/Theme.js.map +1 -0
- package/dist/babel/NativeEdits.d.ts +8 -0
- package/dist/babel/NativeEdits.d.ts.map +1 -0
- package/dist/babel/NativeEdits.js +233 -0
- package/dist/babel/NativeEdits.js.map +1 -0
- package/dist/babel/NativeJsx.d.ts +10 -0
- package/dist/babel/NativeJsx.d.ts.map +1 -0
- package/dist/babel/NativeJsx.js +204 -0
- package/dist/babel/NativeJsx.js.map +1 -0
- package/dist/babel/index.d.ts +51 -0
- package/dist/babel/index.d.ts.map +1 -0
- package/dist/babel/index.js +220 -0
- package/dist/babel/index.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +178 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/compiler/Graph.d.ts +64 -0
- package/dist/compiler/Graph.d.ts.map +1 -0
- package/dist/compiler/Graph.js +1111 -0
- package/dist/compiler/Graph.js.map +1 -0
- package/dist/compiler/Native.d.ts +53 -0
- package/dist/compiler/Native.d.ts.map +1 -0
- package/dist/compiler/Native.js +617 -0
- package/dist/compiler/Native.js.map +1 -0
- package/dist/compiler/Source.d.ts +167 -0
- package/dist/compiler/Source.d.ts.map +1 -0
- package/dist/compiler/Source.js +1012 -0
- package/dist/compiler/Source.js.map +1 -0
- package/dist/compiler/Transform.d.ts +57 -0
- package/dist/compiler/Transform.d.ts.map +1 -0
- package/dist/compiler/Transform.js +886 -0
- package/dist/compiler/Transform.js.map +1 -0
- package/dist/compiler/index.d.ts +13 -0
- package/dist/compiler/index.d.ts.map +1 -0
- package/dist/compiler/index.js +13 -0
- package/dist/compiler/index.js.map +1 -0
- package/dist/compiler/internal/Applications.d.ts +35 -0
- package/dist/compiler/internal/Applications.d.ts.map +1 -0
- package/dist/compiler/internal/Applications.js +248 -0
- package/dist/compiler/internal/Applications.js.map +1 -0
- package/dist/compiler/internal/AtRules.d.ts +8 -0
- package/dist/compiler/internal/AtRules.d.ts.map +1 -0
- package/dist/compiler/internal/AtRules.js +180 -0
- package/dist/compiler/internal/AtRules.js.map +1 -0
- package/dist/compiler/internal/Catalogs.d.ts +19 -0
- package/dist/compiler/internal/Catalogs.d.ts.map +1 -0
- package/dist/compiler/internal/Catalogs.js +68 -0
- package/dist/compiler/internal/Catalogs.js.map +1 -0
- package/dist/compiler/internal/ColorProfiles.d.ts +3 -0
- package/dist/compiler/internal/ColorProfiles.d.ts.map +1 -0
- package/dist/compiler/internal/ColorProfiles.js +84 -0
- package/dist/compiler/internal/ColorProfiles.js.map +1 -0
- package/dist/compiler/internal/CompositionBindings.d.ts +16 -0
- package/dist/compiler/internal/CompositionBindings.d.ts.map +1 -0
- package/dist/compiler/internal/CompositionBindings.js +89 -0
- package/dist/compiler/internal/CompositionBindings.js.map +1 -0
- package/dist/compiler/internal/Compositions.d.ts +32 -0
- package/dist/compiler/internal/Compositions.d.ts.map +1 -0
- package/dist/compiler/internal/Compositions.js +464 -0
- package/dist/compiler/internal/Compositions.js.map +1 -0
- package/dist/compiler/internal/Configurations.d.ts +21 -0
- package/dist/compiler/internal/Configurations.d.ts.map +1 -0
- package/dist/compiler/internal/Configurations.js +171 -0
- package/dist/compiler/internal/Configurations.js.map +1 -0
- package/dist/compiler/internal/Contract.d.ts +27 -0
- package/dist/compiler/internal/Contract.d.ts.map +1 -0
- package/dist/compiler/internal/Contract.js +607 -0
- package/dist/compiler/internal/Contract.js.map +1 -0
- package/dist/compiler/internal/Contributions.d.ts +54 -0
- package/dist/compiler/internal/Contributions.d.ts.map +1 -0
- package/dist/compiler/internal/Contributions.js +1109 -0
- package/dist/compiler/internal/Contributions.js.map +1 -0
- package/dist/compiler/internal/Descriptors.d.ts +15 -0
- package/dist/compiler/internal/Descriptors.d.ts.map +1 -0
- package/dist/compiler/internal/Descriptors.js +183 -0
- package/dist/compiler/internal/Descriptors.js.map +1 -0
- package/dist/compiler/internal/Dynamic.d.ts +14 -0
- package/dist/compiler/internal/Dynamic.d.ts.map +1 -0
- package/dist/compiler/internal/Dynamic.js +172 -0
- package/dist/compiler/internal/Dynamic.js.map +1 -0
- package/dist/compiler/internal/Edits.d.ts +12 -0
- package/dist/compiler/internal/Edits.d.ts.map +1 -0
- package/dist/compiler/internal/Edits.js +5 -0
- package/dist/compiler/internal/Edits.js.map +1 -0
- package/dist/compiler/internal/Expression.d.ts +12 -0
- package/dist/compiler/internal/Expression.d.ts.map +1 -0
- package/dist/compiler/internal/Expression.js +98 -0
- package/dist/compiler/internal/Expression.js.map +1 -0
- package/dist/compiler/internal/Functions.d.ts +5 -0
- package/dist/compiler/internal/Functions.d.ts.map +1 -0
- package/dist/compiler/internal/Functions.js +191 -0
- package/dist/compiler/internal/Functions.js.map +1 -0
- package/dist/compiler/internal/Identifiers.d.ts +9 -0
- package/dist/compiler/internal/Identifiers.d.ts.map +1 -0
- package/dist/compiler/internal/Identifiers.js +106 -0
- package/dist/compiler/internal/Identifiers.js.map +1 -0
- package/dist/compiler/internal/Keyframes.d.ts +5 -0
- package/dist/compiler/internal/Keyframes.d.ts.map +1 -0
- package/dist/compiler/internal/Keyframes.js +51 -0
- package/dist/compiler/internal/Keyframes.js.map +1 -0
- package/dist/compiler/internal/Namespaces.d.ts +17 -0
- package/dist/compiler/internal/Namespaces.d.ts.map +1 -0
- package/dist/compiler/internal/Namespaces.js +265 -0
- package/dist/compiler/internal/Namespaces.js.map +1 -0
- package/dist/compiler/internal/NativeBindings.d.ts +74 -0
- package/dist/compiler/internal/NativeBindings.d.ts.map +1 -0
- package/dist/compiler/internal/NativeBindings.js +117 -0
- package/dist/compiler/internal/NativeBindings.js.map +1 -0
- package/dist/compiler/internal/PackedStyles.d.ts +35 -0
- package/dist/compiler/internal/PackedStyles.d.ts.map +1 -0
- package/dist/compiler/internal/PackedStyles.js +345 -0
- package/dist/compiler/internal/PackedStyles.js.map +1 -0
- package/dist/compiler/internal/Properties.d.ts +5 -0
- package/dist/compiler/internal/Properties.d.ts.map +1 -0
- package/dist/compiler/internal/Properties.js +82 -0
- package/dist/compiler/internal/Properties.js.map +1 -0
- package/dist/compiler/internal/RecipeConditions.d.ts +41 -0
- package/dist/compiler/internal/RecipeConditions.d.ts.map +1 -0
- package/dist/compiler/internal/RecipeConditions.js +82 -0
- package/dist/compiler/internal/RecipeConditions.js.map +1 -0
- package/dist/compiler/internal/RecipePayloads.d.ts +31 -0
- package/dist/compiler/internal/RecipePayloads.d.ts.map +1 -0
- package/dist/compiler/internal/RecipePayloads.js +99 -0
- package/dist/compiler/internal/RecipePayloads.js.map +1 -0
- package/dist/compiler/internal/Recipes.d.ts +32 -0
- package/dist/compiler/internal/Recipes.d.ts.map +1 -0
- package/dist/compiler/internal/Recipes.js +339 -0
- package/dist/compiler/internal/Recipes.js.map +1 -0
- package/dist/compiler/internal/Relative.d.ts +19 -0
- package/dist/compiler/internal/Relative.d.ts.map +1 -0
- package/dist/compiler/internal/Relative.js +62 -0
- package/dist/compiler/internal/Relative.js.map +1 -0
- package/dist/compiler/internal/Scope.d.ts +10 -0
- package/dist/compiler/internal/Scope.d.ts.map +1 -0
- package/dist/compiler/internal/Scope.js +28 -0
- package/dist/compiler/internal/Scope.js.map +1 -0
- package/dist/compiler/internal/Selectors.d.ts +12 -0
- package/dist/compiler/internal/Selectors.d.ts.map +1 -0
- package/dist/compiler/internal/Selectors.js +265 -0
- package/dist/compiler/internal/Selectors.js.map +1 -0
- package/dist/compiler/internal/Static.d.ts +39 -0
- package/dist/compiler/internal/Static.d.ts.map +1 -0
- package/dist/compiler/internal/Static.js +532 -0
- package/dist/compiler/internal/Static.js.map +1 -0
- package/dist/compiler/internal/Stylesheets.d.ts +47 -0
- package/dist/compiler/internal/Stylesheets.d.ts.map +1 -0
- package/dist/compiler/internal/Stylesheets.js +272 -0
- package/dist/compiler/internal/Stylesheets.js.map +1 -0
- package/dist/compiler/internal/Syntax.d.ts +17 -0
- package/dist/compiler/internal/Syntax.d.ts.map +1 -0
- package/dist/compiler/internal/Syntax.js +19 -0
- package/dist/compiler/internal/Syntax.js.map +1 -0
- package/dist/compiler/internal/Themes.d.ts +158 -0
- package/dist/compiler/internal/Themes.d.ts.map +1 -0
- package/dist/compiler/internal/Themes.js +1169 -0
- package/dist/compiler/internal/Themes.js.map +1 -0
- package/dist/compiler/internal/Variables.d.ts +31 -0
- package/dist/compiler/internal/Variables.d.ts.map +1 -0
- package/dist/compiler/internal/Variables.js +376 -0
- package/dist/compiler/internal/Variables.js.map +1 -0
- package/dist/compiler/internal/ViewTransitions.d.ts +3 -0
- package/dist/compiler/internal/ViewTransitions.d.ts.map +1 -0
- package/dist/compiler/internal/ViewTransitions.js +68 -0
- package/dist/compiler/internal/ViewTransitions.js.map +1 -0
- package/dist/cx.d.ts +18 -0
- package/dist/cx.d.ts.map +1 -0
- package/dist/cx.js +60 -0
- package/dist/cx.js.map +1 -0
- package/dist/default.d.ts +3225 -0
- package/dist/default.d.ts.map +1 -0
- package/dist/default.js +547 -0
- package/dist/default.js.map +7 -0
- package/dist/default.js.zyzz.json +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/Authoring.d.ts +26 -0
- package/dist/internal/Authoring.d.ts.map +1 -0
- package/dist/internal/Authoring.js +134 -0
- package/dist/internal/Authoring.js.map +1 -0
- package/dist/internal/Binding.d.ts +64 -0
- package/dist/internal/Binding.d.ts.map +1 -0
- package/dist/internal/Binding.js +27 -0
- package/dist/internal/Binding.js.map +1 -0
- package/dist/internal/BindingDomains.d.ts +11 -0
- package/dist/internal/BindingDomains.d.ts.map +1 -0
- package/dist/internal/BindingDomains.js +459 -0
- package/dist/internal/BindingDomains.js.map +1 -0
- package/dist/internal/Cascade.d.ts +45 -0
- package/dist/internal/Cascade.d.ts.map +1 -0
- package/dist/internal/Cascade.js +165 -0
- package/dist/internal/Cascade.js.map +1 -0
- package/dist/internal/Compound.d.ts +132 -0
- package/dist/internal/Compound.d.ts.map +1 -0
- package/dist/internal/Compound.js +2 -0
- package/dist/internal/Compound.js.map +1 -0
- package/dist/internal/Condition.d.ts +33 -0
- package/dist/internal/Condition.d.ts.map +1 -0
- package/dist/internal/Condition.js +180 -0
- package/dist/internal/Condition.js.map +1 -0
- package/dist/internal/Corner.d.ts +9 -0
- package/dist/internal/Corner.d.ts.map +1 -0
- package/dist/internal/Corner.js +14 -0
- package/dist/internal/Corner.js.map +1 -0
- package/dist/internal/FunctionSyntax.d.ts +27 -0
- package/dist/internal/FunctionSyntax.d.ts.map +1 -0
- package/dist/internal/FunctionSyntax.js +91 -0
- package/dist/internal/FunctionSyntax.js.map +1 -0
- package/dist/internal/FunctionValue.d.ts +19 -0
- package/dist/internal/FunctionValue.d.ts.map +1 -0
- package/dist/internal/FunctionValue.js +2 -0
- package/dist/internal/FunctionValue.js.map +1 -0
- package/dist/internal/Geometry.d.ts +8 -0
- package/dist/internal/Geometry.d.ts.map +1 -0
- package/dist/internal/Geometry.js +2 -0
- package/dist/internal/Geometry.js.map +1 -0
- package/dist/internal/Grid.d.ts +15 -0
- package/dist/internal/Grid.d.ts.map +1 -0
- package/dist/internal/Grid.js +2 -0
- package/dist/internal/Grid.js.map +1 -0
- package/dist/internal/Identifier.d.ts +15 -0
- package/dist/internal/Identifier.d.ts.map +1 -0
- package/dist/internal/Identifier.js +2 -0
- package/dist/internal/Identifier.js.map +1 -0
- package/dist/internal/Identity.d.ts +16 -0
- package/dist/internal/Identity.d.ts.map +1 -0
- package/dist/internal/Identity.js +78 -0
- package/dist/internal/Identity.js.map +1 -0
- package/dist/internal/Lexical.d.ts +89 -0
- package/dist/internal/Lexical.d.ts.map +1 -0
- package/dist/internal/Lexical.js +15 -0
- package/dist/internal/Lexical.js.map +1 -0
- package/dist/internal/Literal.d.ts +3459 -0
- package/dist/internal/Literal.d.ts.map +1 -0
- package/dist/internal/Literal.js +3371 -0
- package/dist/internal/Literal.js.map +1 -0
- package/dist/internal/NativeProperties.d.ts +596 -0
- package/dist/internal/NativeProperties.d.ts.map +1 -0
- package/dist/internal/NativeProperties.js +2 -0
- package/dist/internal/NativeProperties.js.map +1 -0
- package/dist/internal/Numeric.d.ts +23 -0
- package/dist/internal/Numeric.d.ts.map +1 -0
- package/dist/internal/Numeric.js +2 -0
- package/dist/internal/Numeric.js.map +1 -0
- package/dist/internal/Query.d.ts +15 -0
- package/dist/internal/Query.d.ts.map +1 -0
- package/dist/internal/Query.js +58 -0
- package/dist/internal/Query.js.map +1 -0
- package/dist/internal/Recipe.d.ts +17 -0
- package/dist/internal/Recipe.d.ts.map +1 -0
- package/dist/internal/Recipe.js +2 -0
- package/dist/internal/Recipe.js.map +1 -0
- package/dist/internal/RuleReference.d.ts +23 -0
- package/dist/internal/RuleReference.d.ts.map +1 -0
- package/dist/internal/RuleReference.js +65 -0
- package/dist/internal/RuleReference.js.map +1 -0
- package/dist/internal/Scheme.d.ts +12 -0
- package/dist/internal/Scheme.d.ts.map +1 -0
- package/dist/internal/Scheme.js +16 -0
- package/dist/internal/Scheme.js.map +1 -0
- package/dist/internal/Shorthands.d.ts +20 -0
- package/dist/internal/Shorthands.d.ts.map +1 -0
- package/dist/internal/Shorthands.js +50 -0
- package/dist/internal/Shorthands.js.map +1 -0
- package/dist/internal/Targets.d.ts +43 -0
- package/dist/internal/Targets.d.ts.map +1 -0
- package/dist/internal/Targets.js +60 -0
- package/dist/internal/Targets.js.map +1 -0
- package/dist/internal/Token.d.ts +104 -0
- package/dist/internal/Token.d.ts.map +1 -0
- package/dist/internal/Token.js +162 -0
- package/dist/internal/Token.js.map +1 -0
- package/dist/internal/Tuple.d.ts +23 -0
- package/dist/internal/Tuple.d.ts.map +1 -0
- package/dist/internal/Tuple.js +2 -0
- package/dist/internal/Tuple.js.map +1 -0
- package/dist/internal/Typography.d.ts +23 -0
- package/dist/internal/Typography.d.ts.map +1 -0
- package/dist/internal/Typography.js +18 -0
- package/dist/internal/Typography.js.map +1 -0
- package/dist/internal/Value.d.ts +74 -0
- package/dist/internal/Value.d.ts.map +1 -0
- package/dist/internal/Value.js +60 -0
- package/dist/internal/Value.js.map +1 -0
- package/dist/metro/Graph.d.ts +8 -0
- package/dist/metro/Graph.d.ts.map +1 -0
- package/dist/metro/Graph.js +63 -0
- package/dist/metro/Graph.js.map +1 -0
- package/dist/metro/Watch.d.ts +21 -0
- package/dist/metro/Watch.d.ts.map +1 -0
- package/dist/metro/Watch.js +51 -0
- package/dist/metro/Watch.js.map +1 -0
- package/dist/metro/index.d.ts +30 -0
- package/dist/metro/index.d.ts.map +1 -0
- package/dist/metro/index.js +52 -0
- package/dist/metro/index.js.map +1 -0
- package/dist/metro/transformer.d.ts +21 -0
- package/dist/metro/transformer.d.ts.map +1 -0
- package/dist/metro/transformer.js +71 -0
- package/dist/metro/transformer.js.map +1 -0
- package/dist/next/index.d.ts +18 -0
- package/dist/next/index.d.ts.map +1 -0
- package/dist/next/index.js +92 -0
- package/dist/next/index.js.map +1 -0
- package/dist/next/loader.d.ts +16 -0
- package/dist/next/loader.d.ts.map +1 -0
- package/dist/next/loader.js +282 -0
- package/dist/next/loader.js.map +1 -0
- package/dist/node/Host.d.ts +80 -0
- package/dist/node/Host.d.ts.map +1 -0
- package/dist/node/Host.js +882 -0
- package/dist/node/Host.js.map +1 -0
- package/dist/node/index.d.ts +7 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.js +7 -0
- package/dist/node/index.js.map +1 -0
- package/dist/react-native/Host.d.ts +76 -0
- package/dist/react-native/Host.d.ts.map +1 -0
- package/dist/react-native/Host.js +209 -0
- package/dist/react-native/Host.js.map +1 -0
- package/dist/react-native/StyleSheet.d.ts +226 -0
- package/dist/react-native/StyleSheet.d.ts.map +1 -0
- package/dist/react-native/StyleSheet.js +606 -0
- package/dist/react-native/StyleSheet.js.map +1 -0
- package/dist/react-native/Variants.d.ts +38 -0
- package/dist/react-native/Variants.d.ts.map +1 -0
- package/dist/react-native/Variants.js +66 -0
- package/dist/react-native/Variants.js.map +1 -0
- package/dist/react-native/index.d.ts +8 -0
- package/dist/react-native/index.d.ts.map +1 -0
- package/dist/react-native/index.js +8 -0
- package/dist/react-native/index.js.map +1 -0
- package/dist/react-native/internal/Color.d.ts +7 -0
- package/dist/react-native/internal/Color.d.ts.map +1 -0
- package/dist/react-native/internal/Color.js +93 -0
- package/dist/react-native/internal/Color.js.map +1 -0
- package/dist/react-native/internal/NativeSchema.d.ts +5138 -0
- package/dist/react-native/internal/NativeSchema.d.ts.map +1 -0
- package/dist/react-native/internal/NativeSchema.js +3097 -0
- package/dist/react-native/internal/NativeSchema.js.map +1 -0
- package/dist/react-native/internal/Scalar.d.ts +95 -0
- package/dist/react-native/internal/Scalar.d.ts.map +1 -0
- package/dist/react-native/internal/Scalar.js +199 -0
- package/dist/react-native/internal/Scalar.js.map +1 -0
- package/dist/react-native/internal/Values.d.ts +5 -0
- package/dist/react-native/internal/Values.d.ts.map +1 -0
- package/dist/react-native/internal/Values.js +65 -0
- package/dist/react-native/internal/Values.js.map +1 -0
- package/dist/react-native/react.d.ts +22 -0
- package/dist/react-native/react.d.ts.map +1 -0
- package/dist/react-native/react.js +26 -0
- package/dist/react-native/react.js.map +1 -0
- package/dist/reset.css +244 -0
- package/dist/runtime/Appearance.d.ts +55 -0
- package/dist/runtime/Appearance.d.ts.map +1 -0
- package/dist/runtime/Appearance.js +84 -0
- package/dist/runtime/Appearance.js.map +1 -0
- package/dist/runtime/Composition.d.ts +46 -0
- package/dist/runtime/Composition.d.ts.map +1 -0
- package/dist/runtime/Composition.js +52 -0
- package/dist/runtime/Composition.js.map +1 -0
- package/dist/runtime/CompositionHtml.d.ts +15 -0
- package/dist/runtime/CompositionHtml.d.ts.map +1 -0
- package/dist/runtime/CompositionHtml.js +20 -0
- package/dist/runtime/CompositionHtml.js.map +1 -0
- package/dist/runtime/ConditionalRecipe.d.ts +30 -0
- package/dist/runtime/ConditionalRecipe.d.ts.map +1 -0
- package/dist/runtime/ConditionalRecipe.js +39 -0
- package/dist/runtime/ConditionalRecipe.js.map +1 -0
- package/dist/runtime/Dynamic.d.ts +19 -0
- package/dist/runtime/Dynamic.d.ts.map +1 -0
- package/dist/runtime/Dynamic.js +22 -0
- package/dist/runtime/Dynamic.js.map +1 -0
- package/dist/runtime/Html.d.ts +32 -0
- package/dist/runtime/Html.d.ts.map +1 -0
- package/dist/runtime/Html.js +63 -0
- package/dist/runtime/Html.js.map +1 -0
- package/dist/runtime/Native.d.ts +48 -0
- package/dist/runtime/Native.d.ts.map +1 -0
- package/dist/runtime/Native.js +78 -0
- package/dist/runtime/Native.js.map +1 -0
- package/dist/runtime/NativeContext.d.ts +17 -0
- package/dist/runtime/NativeContext.d.ts.map +1 -0
- package/dist/runtime/NativeContext.js +47 -0
- package/dist/runtime/NativeContext.js.map +1 -0
- package/dist/runtime/NativeDynamic.d.ts +47 -0
- package/dist/runtime/NativeDynamic.d.ts.map +1 -0
- package/dist/runtime/NativeDynamic.js +141 -0
- package/dist/runtime/NativeDynamic.js.map +1 -0
- package/dist/runtime/PayloadRecipe.d.ts +22 -0
- package/dist/runtime/PayloadRecipe.d.ts.map +1 -0
- package/dist/runtime/PayloadRecipe.js +59 -0
- package/dist/runtime/PayloadRecipe.js.map +1 -0
- package/dist/runtime/Props.d.ts +21 -0
- package/dist/runtime/Props.d.ts.map +1 -0
- package/dist/runtime/Props.js +17 -0
- package/dist/runtime/Props.js.map +1 -0
- package/dist/runtime/Recipe.d.ts +52 -0
- package/dist/runtime/Recipe.d.ts.map +1 -0
- package/dist/runtime/Recipe.js +30 -0
- package/dist/runtime/Recipe.js.map +1 -0
- package/dist/runtime/Selection.d.ts +31 -0
- package/dist/runtime/Selection.d.ts.map +1 -0
- package/dist/runtime/Selection.js +30 -0
- package/dist/runtime/Selection.js.map +1 -0
- package/dist/runtime/Variable.d.ts +6 -0
- package/dist/runtime/Variable.d.ts.map +1 -0
- package/dist/runtime/Variable.js +10 -0
- package/dist/runtime/Variable.js.map +1 -0
- package/dist/runtime/index.d.ts +33 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +33 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/styleFunction.d.ts +72 -0
- package/dist/styleFunction.d.ts.map +1 -0
- package/dist/styleFunction.js +18 -0
- package/dist/styleFunction.js.map +1 -0
- package/dist/themes/LICENSE.tailwind +21 -0
- package/dist/variable.d.ts +50 -0
- package/dist/variable.d.ts.map +1 -0
- package/dist/variable.js +20 -0
- package/dist/variable.js.map +1 -0
- package/dist/variants.d.ts +84 -0
- package/dist/variants.d.ts.map +1 -0
- package/dist/variants.js +21 -0
- package/dist/variants.js.map +1 -0
- package/dist/vite/index.d.ts +24 -0
- package/dist/vite/index.d.ts.map +1 -0
- package/dist/vite/index.js +1089 -0
- package/dist/vite/index.js.map +1 -0
- package/dist/web/Css.d.ts +81 -0
- package/dist/web/Css.d.ts.map +1 -0
- package/dist/web/Css.js +593 -0
- package/dist/web/Css.js.map +1 -0
- package/dist/web/colorProfile.d.ts +28 -0
- package/dist/web/colorProfile.d.ts.map +1 -0
- package/dist/web/colorProfile.js +8 -0
- package/dist/web/colorProfile.js.map +1 -0
- package/dist/web/counterStyle.d.ts +48 -0
- package/dist/web/counterStyle.d.ts.map +1 -0
- package/dist/web/counterStyle.js +8 -0
- package/dist/web/counterStyle.js.map +1 -0
- package/dist/web/cssFunction.d.ts +80 -0
- package/dist/web/cssFunction.d.ts.map +1 -0
- package/dist/web/cssFunction.js +18 -0
- package/dist/web/cssFunction.js.map +1 -0
- package/dist/web/customMedia.d.ts +12 -0
- package/dist/web/customMedia.d.ts.map +1 -0
- package/dist/web/customMedia.js +7 -0
- package/dist/web/customMedia.js.map +1 -0
- package/dist/web/fontFace.d.ts +26 -0
- package/dist/web/fontFace.d.ts.map +1 -0
- package/dist/web/fontFace.js +7 -0
- package/dist/web/fontFace.js.map +1 -0
- package/dist/web/fontFeatureValues.d.ts +40 -0
- package/dist/web/fontFeatureValues.d.ts.map +1 -0
- package/dist/web/fontFeatureValues.js +7 -0
- package/dist/web/fontFeatureValues.js.map +1 -0
- package/dist/web/fontPaletteValues.d.ts +21 -0
- package/dist/web/fontPaletteValues.d.ts.map +1 -0
- package/dist/web/fontPaletteValues.js +9 -0
- package/dist/web/fontPaletteValues.js.map +1 -0
- package/dist/web/global.d.ts +19 -0
- package/dist/web/global.d.ts.map +1 -0
- package/dist/web/global.js +6 -0
- package/dist/web/global.js.map +1 -0
- package/dist/web/importCss.d.ts +18 -0
- package/dist/web/importCss.d.ts.map +1 -0
- package/dist/web/importCss.js +7 -0
- package/dist/web/importCss.js.map +1 -0
- package/dist/web/index.d.ts +22 -0
- package/dist/web/index.d.ts.map +1 -0
- package/dist/web/index.js +22 -0
- package/dist/web/index.js.map +1 -0
- package/dist/web/internal/Block.d.ts +18 -0
- package/dist/web/internal/Block.d.ts.map +1 -0
- package/dist/web/internal/Block.js +13 -0
- package/dist/web/internal/Block.js.map +1 -0
- package/dist/web/internal/ClassName.d.ts +19 -0
- package/dist/web/internal/ClassName.d.ts.map +1 -0
- package/dist/web/internal/ClassName.js +77 -0
- package/dist/web/internal/ClassName.js.map +1 -0
- package/dist/web/internal/Context.d.ts +11 -0
- package/dist/web/internal/Context.d.ts.map +1 -0
- package/dist/web/internal/Context.js +2 -0
- package/dist/web/internal/Context.js.map +1 -0
- package/dist/web/internal/Contributions.d.ts +70 -0
- package/dist/web/internal/Contributions.d.ts.map +1 -0
- package/dist/web/internal/Contributions.js +109 -0
- package/dist/web/internal/Contributions.js.map +1 -0
- package/dist/web/internal/Namespace.d.ts +13 -0
- package/dist/web/internal/Namespace.d.ts.map +1 -0
- package/dist/web/internal/Namespace.js +13 -0
- package/dist/web/internal/Namespace.js.map +1 -0
- package/dist/web/internal/Themes.d.ts +13 -0
- package/dist/web/internal/Themes.d.ts.map +1 -0
- package/dist/web/internal/Themes.js +96 -0
- package/dist/web/internal/Themes.js.map +1 -0
- package/dist/web/keyframes.d.ts +14 -0
- package/dist/web/keyframes.d.ts.map +1 -0
- package/dist/web/keyframes.js +8 -0
- package/dist/web/keyframes.js.map +1 -0
- package/dist/web/layers.d.ts +4 -0
- package/dist/web/layers.d.ts.map +1 -0
- package/dist/web/layers.js +7 -0
- package/dist/web/layers.js.map +1 -0
- package/dist/web/namespace.d.ts +14 -0
- package/dist/web/namespace.d.ts.map +1 -0
- package/dist/web/namespace.js +7 -0
- package/dist/web/namespace.js.map +1 -0
- package/dist/web/page.d.ts +38 -0
- package/dist/web/page.d.ts.map +1 -0
- package/dist/web/page.js +7 -0
- package/dist/web/page.js.map +1 -0
- package/dist/web/positionTry.d.ts +14 -0
- package/dist/web/positionTry.d.ts.map +1 -0
- package/dist/web/positionTry.js +9 -0
- package/dist/web/positionTry.js.map +1 -0
- package/dist/web/property.d.ts +24 -0
- package/dist/web/property.d.ts.map +1 -0
- package/dist/web/property.js +7 -0
- package/dist/web/property.js.map +1 -0
- package/dist/web/viewTransition.d.ts +29 -0
- package/dist/web/viewTransition.d.ts.map +1 -0
- package/dist/web/viewTransition.js +7 -0
- package/dist/web/viewTransition.js.map +1 -0
- package/package.json +136 -10
- package/src/Config.ts +691 -0
- package/src/Props.ts +8 -0
- package/src/Style.ts +812 -0
- package/src/Theme.ts +784 -0
- package/src/babel/NativeEdits.ts +273 -0
- package/src/babel/NativeJsx.ts +260 -0
- package/src/babel/index.ts +332 -0
- package/src/cli/index.ts +196 -0
- package/src/compiler/Graph.ts +1586 -0
- package/src/compiler/Native.ts +801 -0
- package/src/compiler/Source.ts +1579 -0
- package/src/compiler/Transform.ts +1241 -0
- package/src/compiler/index.ts +12 -0
- package/src/compiler/internal/Applications.ts +378 -0
- package/src/compiler/internal/AtRules.ts +202 -0
- package/src/compiler/internal/Catalogs.ts +114 -0
- package/src/compiler/internal/ColorProfiles.ts +93 -0
- package/src/compiler/internal/CompositionBindings.ts +120 -0
- package/src/compiler/internal/Compositions.ts +629 -0
- package/src/compiler/internal/Configurations.ts +244 -0
- package/src/compiler/internal/Contract.ts +860 -0
- package/src/compiler/internal/Contributions.ts +1507 -0
- package/src/compiler/internal/Descriptors.ts +238 -0
- package/src/compiler/internal/Dynamic.ts +266 -0
- package/src/compiler/internal/Edits.ts +13 -0
- package/src/compiler/internal/Expression.ts +135 -0
- package/src/compiler/internal/Functions.ts +206 -0
- package/src/compiler/internal/Identifiers.ts +124 -0
- package/src/compiler/internal/Keyframes.ts +62 -0
- package/src/compiler/internal/Namespaces.ts +296 -0
- package/src/compiler/internal/NativeBindings.ts +151 -0
- package/src/compiler/internal/PackedStyles.ts +464 -0
- package/src/compiler/internal/Properties.ts +121 -0
- package/src/compiler/internal/RecipeConditions.ts +139 -0
- package/src/compiler/internal/RecipePayloads.ts +132 -0
- package/src/compiler/internal/Recipes.ts +531 -0
- package/src/compiler/internal/Relative.ts +87 -0
- package/src/compiler/internal/Scope.ts +36 -0
- package/src/compiler/internal/Selectors.ts +334 -0
- package/src/compiler/internal/Static.ts +783 -0
- package/src/compiler/internal/Stylesheets.ts +361 -0
- package/src/compiler/internal/Syntax.ts +31 -0
- package/src/compiler/internal/Themes.ts +1794 -0
- package/src/compiler/internal/Variables.ts +497 -0
- package/src/compiler/internal/ViewTransitions.ts +82 -0
- package/src/cx.ts +98 -0
- package/src/default.ts +1177 -0
- package/src/index.ts +20 -0
- package/src/internal/Authoring.ts +199 -0
- package/src/internal/Binding.ts +187 -0
- package/src/internal/BindingDomains.ts +458 -0
- package/src/internal/Cascade.ts +165 -0
- package/src/internal/Compound.ts +522 -0
- package/src/internal/Condition.ts +283 -0
- package/src/internal/Corner.ts +17 -0
- package/src/internal/FunctionSyntax.ts +271 -0
- package/src/internal/FunctionValue.ts +96 -0
- package/src/internal/Geometry.ts +30 -0
- package/src/internal/Grid.ts +67 -0
- package/src/internal/Identifier.ts +14 -0
- package/src/internal/Identity.ts +89 -0
- package/src/internal/Lexical.ts +202 -0
- package/src/internal/Literal.ts +3820 -0
- package/src/internal/NativeProperties.ts +936 -0
- package/src/internal/Numeric.ts +77 -0
- package/src/internal/Query.ts +87 -0
- package/src/internal/Recipe.ts +17 -0
- package/src/internal/RuleReference.ts +102 -0
- package/src/internal/Scheme.ts +20 -0
- package/src/internal/Shorthands.ts +122 -0
- package/src/internal/Targets.ts +162 -0
- package/src/internal/Token.ts +380 -0
- package/src/internal/Tuple.ts +29 -0
- package/src/internal/Typography.ts +51 -0
- package/src/internal/Value.ts +320 -0
- package/src/metro/Graph.ts +78 -0
- package/src/metro/Watch.ts +88 -0
- package/src/metro/index.ts +99 -0
- package/src/metro/transformer.ts +97 -0
- package/src/next/index.ts +114 -0
- package/src/next/loader.ts +369 -0
- package/src/node/Host.ts +1204 -0
- package/src/node/index.ts +6 -0
- package/src/react-native/Host.ts +289 -0
- package/src/react-native/StyleSheet.ts +1084 -0
- package/src/react-native/Variants.ts +122 -0
- package/src/react-native/index.ts +7 -0
- package/src/react-native/internal/Color.ts +110 -0
- package/src/react-native/internal/NativeSchema.ts +3096 -0
- package/src/react-native/internal/Scalar.ts +253 -0
- package/src/react-native/internal/Values.ts +87 -0
- package/src/react-native/react.ts +47 -0
- package/src/reset.css +244 -0
- package/src/runtime/Appearance.ts +155 -0
- package/src/runtime/Composition.ts +87 -0
- package/src/runtime/CompositionHtml.ts +38 -0
- package/src/runtime/ConditionalRecipe.ts +70 -0
- package/src/runtime/Dynamic.ts +51 -0
- package/src/runtime/Html.ts +91 -0
- package/src/runtime/Native.ts +144 -0
- package/src/runtime/NativeContext.ts +74 -0
- package/src/runtime/NativeDynamic.ts +246 -0
- package/src/runtime/PayloadRecipe.ts +96 -0
- package/src/runtime/Props.ts +33 -0
- package/src/runtime/Recipe.ts +74 -0
- package/src/runtime/Selection.ts +82 -0
- package/src/runtime/Variable.ts +15 -0
- package/src/runtime/index.ts +45 -0
- package/src/styleFunction.ts +138 -0
- package/src/themes/LICENSE.tailwind +21 -0
- package/src/variable.ts +105 -0
- package/src/variants.ts +218 -0
- package/src/vite/index.ts +1473 -0
- package/src/web/Css.ts +801 -0
- package/src/web/colorProfile.ts +60 -0
- package/src/web/counterStyle.ts +82 -0
- package/src/web/cssFunction.ts +181 -0
- package/src/web/customMedia.ts +16 -0
- package/src/web/fontFace.ts +41 -0
- package/src/web/fontFeatureValues.ts +79 -0
- package/src/web/fontPaletteValues.ts +42 -0
- package/src/web/global.ts +39 -0
- package/src/web/importCss.ts +23 -0
- package/src/web/index.ts +22 -0
- package/src/web/internal/Block.ts +29 -0
- package/src/web/internal/ClassName.ts +112 -0
- package/src/web/internal/Context.ts +16 -0
- package/src/web/internal/Contributions.ts +219 -0
- package/src/web/internal/Namespace.ts +21 -0
- package/src/web/internal/Themes.ts +133 -0
- package/src/web/keyframes.ts +43 -0
- package/src/web/layers.ts +6 -0
- package/src/web/namespace.ts +19 -0
- package/src/web/page.ts +140 -0
- package/src/web/positionTry.ts +71 -0
- package/src/web/property.ts +35 -0
- package/src/web/viewTransition.ts +89 -0
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Declares the token-free authoring boundary consumed by source transforms.
|
|
3
|
+
* @module
|
|
4
|
+
*/
|
|
5
|
+
import * as Authoring from './internal/Authoring.js'
|
|
6
|
+
import type * as Binding from './internal/Binding.js'
|
|
7
|
+
import type * as Literal from './internal/Literal.js'
|
|
8
|
+
import type * as Style from './Style.js'
|
|
9
|
+
|
|
10
|
+
/** Restricts callback hints to inferred declarations instead of expanding every property grammar. */
|
|
11
|
+
type CompletionProperties<styles = Record<string, unknown>> = {
|
|
12
|
+
readonly [property in keyof typeof Literal.rules & keyof styles]?:
|
|
13
|
+
| Literal.Properties[property]
|
|
14
|
+
| (string & {})
|
|
15
|
+
| number
|
|
16
|
+
| object
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
type Keys<value> = value extends unknown ? keyof value : never
|
|
20
|
+
|
|
21
|
+
type VariableOptions<input> = input extends {
|
|
22
|
+
readonly variables: infer variables
|
|
23
|
+
}
|
|
24
|
+
? {
|
|
25
|
+
readonly variables: {
|
|
26
|
+
readonly [key in keyof variables]: string extends key
|
|
27
|
+
? variables[key]
|
|
28
|
+
: key extends `--${string}`
|
|
29
|
+
? variables[key]
|
|
30
|
+
: never
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
: unknown
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Declares literal styles for source extraction. Requires a compile-time transform.
|
|
37
|
+
* @param styles - Token-free literal CSS properties. Omit for an empty definition.
|
|
38
|
+
* @returns A callable style definition after source rewriting.
|
|
39
|
+
* @throws {Error} When a definition needs an explicit identity and none is supplied.
|
|
40
|
+
*/
|
|
41
|
+
export function style(): style.ReturnType
|
|
42
|
+
export function style<
|
|
43
|
+
const values extends Record<string, string | number>,
|
|
44
|
+
const styles extends Record<string, unknown>,
|
|
45
|
+
const callback extends (...args: never[]) => unknown,
|
|
46
|
+
>(
|
|
47
|
+
styles: callback &
|
|
48
|
+
((
|
|
49
|
+
values: values,
|
|
50
|
+
) => styles &
|
|
51
|
+
NoInfer<Style.Accepted<styles, {}, true> & Binding.Checked<styles>>) &
|
|
52
|
+
CompletionProperties<NoInfer<styles>>,
|
|
53
|
+
// Exclude invalid callbacks by arity so they cannot mask object-property diagnostics.
|
|
54
|
+
...options: Parameters<callback> extends [Record<string, string | number>]
|
|
55
|
+
? values extends Binding.Inputs<values>
|
|
56
|
+
? [options?: style.DefinitionOptions]
|
|
57
|
+
: [invalid: never, unavailable: never]
|
|
58
|
+
: [invalid: never, unavailable: never]
|
|
59
|
+
): style.Dynamic<values>
|
|
60
|
+
export function style<const styles extends Record<string, unknown>>(
|
|
61
|
+
styles: styles &
|
|
62
|
+
NoInfer<Style.Accepted<styles, {}, true>> &
|
|
63
|
+
CompletionProperties,
|
|
64
|
+
options?: style.DefinitionOptions,
|
|
65
|
+
): style.ReturnType
|
|
66
|
+
export function style(
|
|
67
|
+
styles?: unknown,
|
|
68
|
+
options: style.DefinitionOptions = {},
|
|
69
|
+
): style.ReturnType {
|
|
70
|
+
return Authoring.create(styles, options)
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/** Compile-time brand identifying callable style definitions. */
|
|
74
|
+
declare const identity: unique symbol
|
|
75
|
+
type Reference = { readonly [identity]: true }
|
|
76
|
+
|
|
77
|
+
/** Contracts for the literal authoring boundary. */
|
|
78
|
+
export declare namespace style {
|
|
79
|
+
/** Stable identity for selectors and definitions that cannot be content-addressed. */
|
|
80
|
+
type DefinitionOptions = { readonly id?: string | undefined }
|
|
81
|
+
/** Callable compiled bindings with required scalar inputs and styling overrides. */
|
|
82
|
+
type Dynamic<values, output extends Output = 'react'> = Reference &
|
|
83
|
+
(<const input extends values & Options>(
|
|
84
|
+
input: input &
|
|
85
|
+
VariableOptions<input> &
|
|
86
|
+
Record<Exclude<keyof input, keyof values | keyof Options>, never>,
|
|
87
|
+
) => Props<output>)
|
|
88
|
+
|
|
89
|
+
/** Failure from executing source without a transform. */
|
|
90
|
+
type ErrorType = Error
|
|
91
|
+
|
|
92
|
+
/** Styling overrides consumed by a transformed definition. */
|
|
93
|
+
type Options = {
|
|
94
|
+
/** External class names appended to the generated classes. */
|
|
95
|
+
readonly className?: string | undefined
|
|
96
|
+
/** Literal inline styling overrides. */
|
|
97
|
+
readonly style?: Literal.Properties | undefined
|
|
98
|
+
/** Inline custom-property assignments, merged before explicit style overrides. */
|
|
99
|
+
readonly variables?:
|
|
100
|
+
| Readonly<Record<`--${string}`, string | number | undefined>>
|
|
101
|
+
| undefined
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/** Props produced by a transformed web definition. */
|
|
105
|
+
type Output = 'html' | 'react'
|
|
106
|
+
|
|
107
|
+
/** Renderer-native props selected by configuration. */
|
|
108
|
+
type Props<output extends Output = 'react'> = output extends 'html'
|
|
109
|
+
? { readonly class: string; readonly style?: string | undefined }
|
|
110
|
+
: {
|
|
111
|
+
/** Compiled and supplied class names. */
|
|
112
|
+
readonly className: string
|
|
113
|
+
/** Supplied inline styling overrides when present. */
|
|
114
|
+
readonly style?:
|
|
115
|
+
| Readonly<Record<string, string | number | undefined>>
|
|
116
|
+
| undefined
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/** Callable definition; source rewriting supplies its implementation. */
|
|
120
|
+
type ReturnType<output extends Output = 'react'> = Reference &
|
|
121
|
+
(<const options extends Options = Options>(
|
|
122
|
+
options?: options &
|
|
123
|
+
VariableOptions<options> &
|
|
124
|
+
Record<Exclude<Keys<options>, keyof Options>, never>,
|
|
125
|
+
) => Props<output>)
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/** Executed authoring source has not been rewritten. */
|
|
129
|
+
export class MissingTransformError extends Error {
|
|
130
|
+
/** Explains the missing transform without generating runtime CSS. */
|
|
131
|
+
constructor() {
|
|
132
|
+
super(
|
|
133
|
+
'style requires a compile-time transform. Source extraction alone does not rewrite calls; do not execute untransformed authoring source.',
|
|
134
|
+
)
|
|
135
|
+
}
|
|
136
|
+
/** Stable namespaced diagnostic name. */
|
|
137
|
+
override name = 'style.MissingTransformError'
|
|
138
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) Tailwind Labs, Inc.
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/src/variable.ts
ADDED
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/** Declares optionally typed CSS variables with static references and inline assignments. @module */
|
|
2
|
+
import type * as Binding from './internal/Binding.js'
|
|
3
|
+
import type * as Literal from './internal/Literal.js'
|
|
4
|
+
import * as Identity from './internal/Identity.js'
|
|
5
|
+
import * as Variable from './runtime/Variable.js'
|
|
6
|
+
|
|
7
|
+
/** Declares a custom property. Omitting the domain accepts any string or number; typed options register CSS @property. */
|
|
8
|
+
export function variable(options: {
|
|
9
|
+
readonly id: string
|
|
10
|
+
}): variable.Reference<'*'>
|
|
11
|
+
export function variable<kind extends Binding.Kind>(
|
|
12
|
+
kind: kind,
|
|
13
|
+
options: { readonly id: string },
|
|
14
|
+
): variable.Reference<kind>
|
|
15
|
+
export function variable(): variable.Reference<'*'>
|
|
16
|
+
export function variable<const kind extends Binding.Kind>(
|
|
17
|
+
kind: kind,
|
|
18
|
+
): variable.Reference<kind>
|
|
19
|
+
export function variable<
|
|
20
|
+
const kind extends Binding.Kind,
|
|
21
|
+
const options extends variable.Options<kind>,
|
|
22
|
+
>(
|
|
23
|
+
kind: kind,
|
|
24
|
+
options: options &
|
|
25
|
+
Record<Exclude<keyof options, keyof variable.Options<kind>>, never> & {
|
|
26
|
+
readonly initialValue: Literal.Checked<options['initialValue']> &
|
|
27
|
+
Independent<options['initialValue']> &
|
|
28
|
+
(kind extends 'length'
|
|
29
|
+
? options['initialValue'] extends `-${string}`
|
|
30
|
+
? never
|
|
31
|
+
: unknown
|
|
32
|
+
: unknown)
|
|
33
|
+
},
|
|
34
|
+
): variable.Reference<kind>
|
|
35
|
+
export function variable(
|
|
36
|
+
kind?: Binding.Kind | { readonly id: string },
|
|
37
|
+
options?: { readonly id?: string | undefined },
|
|
38
|
+
): unknown {
|
|
39
|
+
const id = typeof kind === 'object' ? kind.id : options?.id
|
|
40
|
+
return Variable.create({
|
|
41
|
+
name: `--z-v${Identity.requireId(id, 'variable')}`,
|
|
42
|
+
type: typeof kind === 'string' ? kind : '*',
|
|
43
|
+
variable: true,
|
|
44
|
+
})
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/** Types shared by variable declarations and assignments. */
|
|
48
|
+
export declare namespace variable {
|
|
49
|
+
/** Supported scalar domains. */
|
|
50
|
+
type Kind = Binding.Kind
|
|
51
|
+
/** Optional registration uses the variable's scalar domain as its CSS syntax. */
|
|
52
|
+
type Options<kind extends Binding.Kind = Binding.Kind> = {
|
|
53
|
+
/** Stable identity required without source transformation. */
|
|
54
|
+
readonly id?: string | undefined
|
|
55
|
+
/** Whether the custom property inherits through the DOM. */
|
|
56
|
+
readonly inherits: boolean
|
|
57
|
+
/** Computationally independent initial value emitted in @property. */
|
|
58
|
+
readonly initialValue: Initial<kind>
|
|
59
|
+
/** Matching CSS syntax; inferred from the domain when omitted. */
|
|
60
|
+
readonly syntax?: Syntax<kind> | undefined
|
|
61
|
+
}
|
|
62
|
+
/** Opaque computed key and declaration reference; the untyped domain accepts any scalar. */
|
|
63
|
+
type Reference<kind extends Binding.Domain = Binding.Domain> = string &
|
|
64
|
+
Binding.Reference<kind> & {
|
|
65
|
+
/** Produces one inline custom-property assignment without runtime value validation. */
|
|
66
|
+
readonly set: <const value extends Binding.Value<kind>>(
|
|
67
|
+
value: value & (kind extends '*' ? unknown : Literal.Checked<value>),
|
|
68
|
+
) => Readonly<Record<`--${string}`, value>>
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/** Computationally independent initial values for registered properties. */
|
|
73
|
+
type Initial<kind extends Binding.Kind> = kind extends 'length' | 'signedLength'
|
|
74
|
+
? 0 | '0' | `${number}${'px' | 'in' | 'cm' | 'mm' | 'q' | 'pt' | 'pc'}`
|
|
75
|
+
: kind extends 'color'
|
|
76
|
+
? Exclude<
|
|
77
|
+
Binding.Value<kind>,
|
|
78
|
+
'currentColor' | 'currentcolor' | `light-dark(${string})`
|
|
79
|
+
>
|
|
80
|
+
: Binding.Value<kind>
|
|
81
|
+
|
|
82
|
+
type Independent<value> = value extends string
|
|
83
|
+
? Lowercase<value> extends `${string}${'currentcolor' | 'var(' | 'env(' | 'light-dark('}${string}`
|
|
84
|
+
? never
|
|
85
|
+
: value
|
|
86
|
+
: value
|
|
87
|
+
|
|
88
|
+
/** CSS syntax corresponding to a supported scalar domain. */
|
|
89
|
+
type Syntax<kind extends Binding.Kind> = kind extends 'signedLength'
|
|
90
|
+
? '<length>'
|
|
91
|
+
: kind extends 'signedPercentage'
|
|
92
|
+
? '<percentage>'
|
|
93
|
+
: `<${kind}>`
|
|
94
|
+
|
|
95
|
+
/** Reports execution of authoring source without its compile-time transform. */
|
|
96
|
+
export class MissingTransformError extends Error {
|
|
97
|
+
/** Explains the missing transform. */
|
|
98
|
+
constructor() {
|
|
99
|
+
super(
|
|
100
|
+
'variable requires a compile-time transform; do not execute untransformed authoring source.',
|
|
101
|
+
)
|
|
102
|
+
}
|
|
103
|
+
/** Stable namespaced diagnostic name. */
|
|
104
|
+
override name = 'variable.MissingTransformError'
|
|
105
|
+
}
|
package/src/variants.ts
ADDED
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
/** Declares single-element recipes for ahead-of-time compilation. @module */
|
|
2
|
+
import * as Authoring from './internal/Authoring.js'
|
|
3
|
+
import type { style } from './styleFunction.js'
|
|
4
|
+
import type * as Config from './Config.js'
|
|
5
|
+
import type * as Binding from './internal/Binding.js'
|
|
6
|
+
import type * as Condition from './internal/Condition.js'
|
|
7
|
+
import type * as Shorthands from './internal/Shorthands.js'
|
|
8
|
+
import type * as Style from './Style.js'
|
|
9
|
+
import type * as Theme from './Theme.js'
|
|
10
|
+
|
|
11
|
+
type Axes<definition> = definition extends { readonly variants: infer axes }
|
|
12
|
+
? axes
|
|
13
|
+
: {}
|
|
14
|
+
type Conditions<definition> = definition extends {
|
|
15
|
+
readonly conditions: infer conditions
|
|
16
|
+
}
|
|
17
|
+
? conditions
|
|
18
|
+
: {}
|
|
19
|
+
type ChoiceName<choices> = keyof choices extends infer key
|
|
20
|
+
? key extends 'true' | 'false'
|
|
21
|
+
? key extends 'true'
|
|
22
|
+
? true
|
|
23
|
+
: false
|
|
24
|
+
: key extends string
|
|
25
|
+
? key
|
|
26
|
+
: never
|
|
27
|
+
: never
|
|
28
|
+
type DynamicKeys<choices> = {
|
|
29
|
+
[key in keyof choices]: choices[key] extends (...args: never[]) => unknown
|
|
30
|
+
? key
|
|
31
|
+
: never
|
|
32
|
+
}[keyof choices]
|
|
33
|
+
type Choice<choices> =
|
|
34
|
+
| ChoiceName<Omit<choices, DynamicKeys<choices>>>
|
|
35
|
+
| {
|
|
36
|
+
[key in DynamicKeys<choices>]: choices[key] extends (
|
|
37
|
+
values: infer values,
|
|
38
|
+
) => unknown
|
|
39
|
+
? { readonly [name in key]: values } & {
|
|
40
|
+
readonly [name in Exclude<keyof choices, key>]?: never
|
|
41
|
+
}
|
|
42
|
+
: never
|
|
43
|
+
}[DynamicKeys<choices>]
|
|
44
|
+
type CheckedChoice<
|
|
45
|
+
style,
|
|
46
|
+
tokens extends Theme.Tokens,
|
|
47
|
+
layers extends string,
|
|
48
|
+
mappings extends Shorthands.Map,
|
|
49
|
+
> = style extends (values: infer values) => infer body
|
|
50
|
+
? (
|
|
51
|
+
values: values,
|
|
52
|
+
) => CheckedStyles<body, tokens, layers, mappings> &
|
|
53
|
+
Binding.Checked<body> &
|
|
54
|
+
(string extends keyof values
|
|
55
|
+
? never
|
|
56
|
+
: values extends Record<string, string | number> &
|
|
57
|
+
Binding.Inputs<values>
|
|
58
|
+
? unknown
|
|
59
|
+
: never)
|
|
60
|
+
: CheckedStyles<style, tokens, layers, mappings>
|
|
61
|
+
type Keys<value> = value extends unknown ? keyof value : never
|
|
62
|
+
type Selections<axes> = {
|
|
63
|
+
readonly [axis in keyof axes]?: Choice<axes[axis]> | null | undefined
|
|
64
|
+
}
|
|
65
|
+
type Input<definition> = Selections<Axes<definition>> &
|
|
66
|
+
style.Options &
|
|
67
|
+
(keyof Conditions<definition> extends never
|
|
68
|
+
? {}
|
|
69
|
+
: {
|
|
70
|
+
readonly conditions?:
|
|
71
|
+
| {
|
|
72
|
+
readonly [name in keyof Conditions<definition>]?:
|
|
73
|
+
| Selections<Axes<definition>>
|
|
74
|
+
| undefined
|
|
75
|
+
}
|
|
76
|
+
| undefined
|
|
77
|
+
})
|
|
78
|
+
type CheckedStyles<
|
|
79
|
+
style,
|
|
80
|
+
tokens extends Theme.Tokens,
|
|
81
|
+
layers extends string,
|
|
82
|
+
mappings extends Shorthands.Map,
|
|
83
|
+
> =
|
|
84
|
+
style extends Record<string, unknown>
|
|
85
|
+
? [keyof mappings | layers] extends [never]
|
|
86
|
+
? Style.Accepted<style, tokens, keyof tokens extends never ? true : false>
|
|
87
|
+
: Config.Body<style, tokens, layers, mappings>
|
|
88
|
+
: never
|
|
89
|
+
type Checked<
|
|
90
|
+
definition,
|
|
91
|
+
tokens extends Theme.Tokens,
|
|
92
|
+
layers extends string,
|
|
93
|
+
mappings extends Shorthands.Map,
|
|
94
|
+
> = {
|
|
95
|
+
readonly [key in keyof definition]: key extends 'base'
|
|
96
|
+
? CheckedStyles<definition[key], tokens, layers, mappings>
|
|
97
|
+
: key extends 'variants'
|
|
98
|
+
? {
|
|
99
|
+
readonly [axis in keyof definition[key]]: axis extends
|
|
100
|
+
| keyof style.Options
|
|
101
|
+
| 'class'
|
|
102
|
+
| 'conditions'
|
|
103
|
+
| 'key'
|
|
104
|
+
| 'ref'
|
|
105
|
+
| `zyzz-condition-${string}`
|
|
106
|
+
? never
|
|
107
|
+
: {
|
|
108
|
+
readonly [choice in keyof definition[key][axis]]: CheckedChoice<
|
|
109
|
+
definition[key][axis][choice],
|
|
110
|
+
tokens,
|
|
111
|
+
layers,
|
|
112
|
+
mappings
|
|
113
|
+
>
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
: key extends 'conditions'
|
|
117
|
+
? {
|
|
118
|
+
readonly [name in keyof definition[key]]: Extract<
|
|
119
|
+
Condition.Keys<tokens>,
|
|
120
|
+
`@${'media' | 'supports'}${' ' | '(' | '/' | '\t' | '\n' | '\r' | '\f'}${string}`
|
|
121
|
+
>
|
|
122
|
+
}
|
|
123
|
+
: key extends 'defaultVariants'
|
|
124
|
+
? Selections<Axes<definition>> &
|
|
125
|
+
Record<
|
|
126
|
+
Exclude<keyof definition[key], keyof Axes<definition>>,
|
|
127
|
+
never
|
|
128
|
+
>
|
|
129
|
+
: key extends 'compoundVariants'
|
|
130
|
+
? readonly {
|
|
131
|
+
readonly when: {
|
|
132
|
+
readonly [axis in keyof Axes<definition>]?:
|
|
133
|
+
| ChoiceName<Axes<definition>[axis]>
|
|
134
|
+
| readonly ChoiceName<Axes<definition>[axis]>[]
|
|
135
|
+
}
|
|
136
|
+
readonly style: Record<string, unknown>
|
|
137
|
+
}[] & {
|
|
138
|
+
readonly [index in keyof definition[key]]: definition[key][index] extends {
|
|
139
|
+
readonly style: infer style
|
|
140
|
+
readonly when: infer when
|
|
141
|
+
}
|
|
142
|
+
? {
|
|
143
|
+
readonly style: CheckedStyles<
|
|
144
|
+
style,
|
|
145
|
+
tokens,
|
|
146
|
+
layers,
|
|
147
|
+
mappings
|
|
148
|
+
>
|
|
149
|
+
readonly when: Record<
|
|
150
|
+
Exclude<keyof when, keyof Axes<definition>>,
|
|
151
|
+
never
|
|
152
|
+
>
|
|
153
|
+
} & Record<
|
|
154
|
+
Exclude<keyof definition[key][index], 'style' | 'when'>,
|
|
155
|
+
never
|
|
156
|
+
>
|
|
157
|
+
: definition[key][index]
|
|
158
|
+
}
|
|
159
|
+
: never
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Declares base styles, variant axes, defaults, and ordered compounds.
|
|
164
|
+
* @param definition - Static recipe for one element.
|
|
165
|
+
* @returns A callable selecting precompiled styles and returning one props object.
|
|
166
|
+
* @throws {Error} When uncompiled authoring omits an explicit identity.
|
|
167
|
+
*/
|
|
168
|
+
export function variants<const definition extends Record<string, unknown>>(
|
|
169
|
+
definition: definition & NoInfer<Checked<definition, {}, never, {}>>,
|
|
170
|
+
options: style.DefinitionOptions = {},
|
|
171
|
+
): variants.ReturnType<definition> {
|
|
172
|
+
return Authoring.variants(
|
|
173
|
+
definition,
|
|
174
|
+
options,
|
|
175
|
+
) as variants.ReturnType<definition>
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/** Inferred recipe authoring and selection contracts. */
|
|
179
|
+
export declare namespace variants {
|
|
180
|
+
/** Theme-bound authoring with the same inferred selection contract. */
|
|
181
|
+
type Bound<
|
|
182
|
+
tokens extends Theme.Tokens,
|
|
183
|
+
output extends style.Output = 'react',
|
|
184
|
+
layers extends string = never,
|
|
185
|
+
mappings extends Shorthands.Map = {},
|
|
186
|
+
> = <const definition extends Record<string, unknown>>(
|
|
187
|
+
definition: definition &
|
|
188
|
+
NoInfer<Checked<definition, tokens, layers, mappings>>,
|
|
189
|
+
options?: style.DefinitionOptions,
|
|
190
|
+
) => ReturnType<definition, output>
|
|
191
|
+
|
|
192
|
+
/** Callable selection; omitted values use defaults and null suppresses them. */
|
|
193
|
+
type ReturnType<definition, output extends style.Output = 'react'> = <
|
|
194
|
+
const input extends Input<definition> = Input<definition>,
|
|
195
|
+
>(
|
|
196
|
+
input?: input &
|
|
197
|
+
Record<Exclude<Keys<input>, keyof Input<definition>>, never>,
|
|
198
|
+
) => style.Props<output> & {
|
|
199
|
+
readonly [axis in keyof Axes<definition> as `data-${axis & string}`]?:
|
|
200
|
+
| string
|
|
201
|
+
| undefined
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
/** Missing source transformation diagnostic. */
|
|
205
|
+
type ErrorType = Error
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
/** Executed recipe authoring has not been rewritten. */
|
|
209
|
+
export class MissingTransformError extends Error {
|
|
210
|
+
/** Explains the required recipe transformation. */
|
|
211
|
+
constructor() {
|
|
212
|
+
super(
|
|
213
|
+
'variants requires a compile-time transform. Do not execute untransformed recipe authoring.',
|
|
214
|
+
)
|
|
215
|
+
}
|
|
216
|
+
/** Stable recipe diagnostic name. */
|
|
217
|
+
override name = 'variants.MissingTransformError'
|
|
218
|
+
}
|