zyzz 0.0.0 → 0.0.2
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 +167 -0
- package/dist/Style.d.ts.map +1 -0
- package/dist/Style.js +284 -0
- package/dist/Style.js.map +1 -0
- package/dist/Theme.d.ts +154 -0
- package/dist/Theme.d.ts.map +1 -0
- package/dist/Theme.js +257 -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 +165 -0
- package/dist/compiler/Source.d.ts.map +1 -0
- package/dist/compiler/Source.js +990 -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 +884 -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 +600 -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 +2008 -0
- package/dist/default.d.ts.map +1 -0
- package/dist/default.js +243 -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 +49 -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/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 +690 -0
- package/src/Props.ts +8 -0
- package/src/Style.ts +748 -0
- package/src/Theme.ts +713 -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 +1550 -0
- package/src/compiler/Transform.ts +1235 -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 +846 -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 +484 -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 +120 -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/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,22 @@
|
|
|
1
|
+
/** Binds required runtime scalars to fixed private variables and merges styling overrides. */
|
|
2
|
+
export function create(options) {
|
|
3
|
+
const { className } = options;
|
|
4
|
+
const slots = Object.entries(options.slots);
|
|
5
|
+
return ((input) => {
|
|
6
|
+
const values = slots.map(([key]) => {
|
|
7
|
+
const value = input[key];
|
|
8
|
+
return value === '' ? ' ' : value;
|
|
9
|
+
});
|
|
10
|
+
const external = input.className;
|
|
11
|
+
const style = { ...input.variables, ...input.style };
|
|
12
|
+
for (let index = 0; index < slots.length; index++)
|
|
13
|
+
style[slots[index][1].name] = values[index];
|
|
14
|
+
return {
|
|
15
|
+
className: className && external
|
|
16
|
+
? `${className} ${external}`
|
|
17
|
+
: external || className,
|
|
18
|
+
style,
|
|
19
|
+
};
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=Dynamic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dynamic.js","sourceRoot":"","sources":["../../src/runtime/Dynamic.ts"],"names":[],"mappings":"AAGA,8FAA8F;AAC9F,MAAM,UAAU,MAAM,CACpB,OAAuB;IAEvB,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;IAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAE3C,OAAO,CAAC,CAAC,KAAsD,EAAE,EAAE;QACjE,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAE,CAAA;YAEzB,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA;QACnC,CAAC,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAA;QAChC,MAAM,KAAK,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QAEpD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE;YAC/C,KAAK,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAE,CAAA;QAE/C,OAAO;YACL,SAAS,EACP,SAAS,IAAI,QAAQ;gBACnB,CAAC,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE;gBAC5B,CAAC,CAAC,QAAQ,IAAI,SAAS;YAC3B,KAAK;SACN,CAAA;IACH,CAAC,CAAmD,CAAA;AACtD,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/** Converts compiled styling props to DOM attributes and HTML text. @module */
|
|
2
|
+
import type { style } from '../styleFunction.js';
|
|
3
|
+
import * as Props from './Props.js';
|
|
4
|
+
/** DOM attributes ready for a framework spread or setAttribute. */
|
|
5
|
+
export type Attributes = {
|
|
6
|
+
/** Compiled and external classes. */
|
|
7
|
+
readonly class: string;
|
|
8
|
+
/** Serialized CSS declarations; renderers own HTML escaping. */
|
|
9
|
+
readonly style?: string | undefined;
|
|
10
|
+
} & {
|
|
11
|
+
readonly [name: `data-${string}`]: string | undefined;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Converts compiled styling props without generating CSS rules or mutating inputs.
|
|
15
|
+
* Values retain explicit CSS units. Custom properties retain their spelling.
|
|
16
|
+
* @param props - Applied style or theme props, including owned data attributes.
|
|
17
|
+
* @returns Unescaped DOM attribute values; never insert them into HTML directly.
|
|
18
|
+
*/
|
|
19
|
+
export declare function from(props: style.Props & {
|
|
20
|
+
readonly [name: `data-${string}`]: string | undefined;
|
|
21
|
+
}): Attributes;
|
|
22
|
+
/**
|
|
23
|
+
* Serializes styling attributes for insertion inside an HTML opening tag.
|
|
24
|
+
* @param attributes - DOM attributes returned by from.
|
|
25
|
+
* @returns Space-separated attributes with quoted, HTML-escaped values.
|
|
26
|
+
*/
|
|
27
|
+
export declare function serialize(attributes: Attributes): string;
|
|
28
|
+
/** Binds compiler-generated props to native HTML attributes. */
|
|
29
|
+
export declare function bind<input>(fn: (input: input) => style.Props): (input: input) => style.Props<'html'>;
|
|
30
|
+
/** Creates a static HTML style callable without CSS generation. */
|
|
31
|
+
export declare function create(options: Props.create.Options): style.ReturnType<'html'>;
|
|
32
|
+
//# sourceMappingURL=Html.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Html.d.ts","sourceRoot":"","sources":["../../src/runtime/Html.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,mEAAmE;AACnE,MAAM,MAAM,UAAU,GAAG;IACvB,qCAAqC;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,gEAAgE;IAChE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACpC,GAAG;IAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AAE7D;;;;;GAKG;AACH,wBAAgB,IAAI,CAClB,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG;IACnB,QAAQ,EAAE,IAAI,EAAE,QAAQ,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAAA;CACtD,GACA,UAAU,CA8BZ;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAKxD;AAcD,gEAAgE;AAChE,wBAAgB,IAAI,CAAC,KAAK,EACxB,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,CAAC,KAAK,GAChC,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAEvC;AAED,mEAAmE;AACnE,wBAAgB,MAAM,CACpB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,GAC5B,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAE1B"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import * as Props from './Props.js';
|
|
2
|
+
/**
|
|
3
|
+
* Converts compiled styling props without generating CSS rules or mutating inputs.
|
|
4
|
+
* Values retain explicit CSS units. Custom properties retain their spelling.
|
|
5
|
+
* @param props - Applied style or theme props, including owned data attributes.
|
|
6
|
+
* @returns Unescaped DOM attribute values; never insert them into HTML directly.
|
|
7
|
+
*/
|
|
8
|
+
export function from(props) {
|
|
9
|
+
const result = { class: props.className };
|
|
10
|
+
if (props.style !== undefined) {
|
|
11
|
+
const declarations = [];
|
|
12
|
+
for (const [property, value] of Object.entries(props.style)) {
|
|
13
|
+
if (value === undefined || value === null)
|
|
14
|
+
continue;
|
|
15
|
+
const name = property.startsWith('--')
|
|
16
|
+
? property
|
|
17
|
+
: property
|
|
18
|
+
.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`)
|
|
19
|
+
.replace(/^ms-/, '-ms-');
|
|
20
|
+
declarations.push(`${name}:${value}`);
|
|
21
|
+
}
|
|
22
|
+
result.style = declarations.join(';');
|
|
23
|
+
}
|
|
24
|
+
for (const [name, value] of Object.entries(props))
|
|
25
|
+
if (name.startsWith('data-'))
|
|
26
|
+
result[name] = value;
|
|
27
|
+
return result;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Serializes styling attributes for insertion inside an HTML opening tag.
|
|
31
|
+
* @param attributes - DOM attributes returned by from.
|
|
32
|
+
* @returns Space-separated attributes with quoted, HTML-escaped values.
|
|
33
|
+
*/
|
|
34
|
+
export function serialize(attributes) {
|
|
35
|
+
return Object.entries(attributes)
|
|
36
|
+
.filter(([, value]) => value !== undefined)
|
|
37
|
+
.map(([name, value]) => `${escape(name)}="${escape(value)}"`)
|
|
38
|
+
.join(' ');
|
|
39
|
+
}
|
|
40
|
+
function escape(value) {
|
|
41
|
+
return value.replace(/[&<>"'\s]/g, (character) => {
|
|
42
|
+
if (character === '&')
|
|
43
|
+
return '&';
|
|
44
|
+
if (character === '<')
|
|
45
|
+
return '<';
|
|
46
|
+
if (character === '>')
|
|
47
|
+
return '>';
|
|
48
|
+
if (character === '"')
|
|
49
|
+
return '"';
|
|
50
|
+
if (character === "'")
|
|
51
|
+
return ''';
|
|
52
|
+
return `&#${character.charCodeAt(0)};`;
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
/** Binds compiler-generated props to native HTML attributes. */
|
|
56
|
+
export function bind(fn) {
|
|
57
|
+
return (input) => from(fn(input));
|
|
58
|
+
}
|
|
59
|
+
/** Creates a static HTML style callable without CSS generation. */
|
|
60
|
+
export function create(options) {
|
|
61
|
+
return bind(Props.create(options));
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=Html.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Html.js","sourceRoot":"","sources":["../../src/runtime/Html.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAUnC;;;;;GAKG;AACH,MAAM,UAAU,IAAI,CAClB,KAEC;IAED,MAAM,MAAM,GAIR,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAE9B,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,YAAY,GAAa,EAAE,CAAA;QAEjC,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;gBAAE,SAAQ;YAEnD,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;gBACpC,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,QAAQ;qBACL,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;qBACzD,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YAE9B,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAA;QACvC,CAAC;QAED,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvC,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;QAC/C,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAC1B,MAAM,CAAC,IAAwB,CAAC,GAAG,KAA2B,CAAA;IAElE,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,UAAsB;IAC9C,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;SAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC;SAC1C,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,KAAM,CAAC,GAAG,CAAC;SAC7D,IAAI,CAAC,GAAG,CAAC,CAAA;AACd,CAAC;AAED,SAAS,MAAM,CAAC,KAAa;IAC3B,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,EAAE;QAC/C,IAAI,SAAS,KAAK,GAAG;YAAE,OAAO,OAAO,CAAA;QACrC,IAAI,SAAS,KAAK,GAAG;YAAE,OAAO,MAAM,CAAA;QACpC,IAAI,SAAS,KAAK,GAAG;YAAE,OAAO,MAAM,CAAA;QACpC,IAAI,SAAS,KAAK,GAAG;YAAE,OAAO,QAAQ,CAAA;QACtC,IAAI,SAAS,KAAK,GAAG;YAAE,OAAO,OAAO,CAAA;QAErC,OAAO,KAAK,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAA;IACxC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,IAAI,CAClB,EAAiC;IAEjC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;AACnC,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,MAAM,CACpB,OAA6B;IAE7B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAA6B,CAAA;AAChE,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/** Selects precompiled native props and composes caller-owned native style values. @module */
|
|
2
|
+
import type * as StyleSheet from '../react-native/StyleSheet.js';
|
|
3
|
+
type Choices<values extends readonly string[]> = values[number] extends infer value ? value extends 'true' ? true : value extends 'false' ? false : value : never;
|
|
4
|
+
/** Inferred finite inputs for a generated native recipe callable. */
|
|
5
|
+
export type Callable<axes extends Readonly<Record<string, readonly string[]>>, style extends object = StyleSheet.NativeStyle> = <const overrides extends object = never>(input?: {
|
|
6
|
+
readonly [axis in keyof axes]?: Choices<axes[axis]> | null | undefined;
|
|
7
|
+
} & {
|
|
8
|
+
/** Caller-owned native overrides, applied after the selected table entry. */
|
|
9
|
+
readonly style?: StyleSheet.StyleProp<overrides> | undefined;
|
|
10
|
+
}) => Props<style | overrides>;
|
|
11
|
+
type EntryStyle<entry> = entry extends Props<infer style> ? style : never;
|
|
12
|
+
/**
|
|
13
|
+
* Combines applied native props in order without flattening caller-owned values.
|
|
14
|
+
* @param entries - Applied props or falsy conditional entries.
|
|
15
|
+
* @returns Native style props preserving nested arrays and object identity.
|
|
16
|
+
*/
|
|
17
|
+
export declare function compose<const entries extends readonly (Props<object> | false | null | undefined)[]>(...entries: entries): Props<EntryStyle<entries[number]>>;
|
|
18
|
+
/**
|
|
19
|
+
* Binds a finite native table to defaults and optional styling overrides.
|
|
20
|
+
* @param options - Compiler-owned axes, defaults, and a selected theme/scheme table.
|
|
21
|
+
* @returns A callable that only looks up static data and composes native overrides.
|
|
22
|
+
* @throws {SelectionError} For undeclared axes, choices, or missing table entries.
|
|
23
|
+
*/
|
|
24
|
+
export declare function create<const axes extends Readonly<Record<string, readonly string[]>>, const styles extends Readonly<Record<string, StyleSheet.NativeStyle>>>(options: create.Options<axes, styles>): Callable<axes, styles[keyof styles]>;
|
|
25
|
+
/** Inputs emitted by the native compiler. */
|
|
26
|
+
export declare namespace create {
|
|
27
|
+
/** Finite metadata and precompiled objects, with no device-state lookup. */
|
|
28
|
+
type Options<axes extends Readonly<Record<string, readonly string[]>> = Readonly<Record<string, readonly string[]>>, styles extends Readonly<Record<string, StyleSheet.NativeStyle>> = Readonly<Record<string, StyleSheet.NativeStyle>>> = {
|
|
29
|
+
/** Ordered finite choice names. */
|
|
30
|
+
readonly axes: axes;
|
|
31
|
+
/** Default selections. Null suppresses an axis. */
|
|
32
|
+
readonly defaults: Readonly<Record<string, string | null>>;
|
|
33
|
+
/** One theme/scheme table indexed by finite selections. */
|
|
34
|
+
readonly styles: styles;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
/** Props returned by compiled native definitions and native composition. */
|
|
38
|
+
export type Props<style extends object = StyleSheet.NativeStyle> = {
|
|
39
|
+
/** Native style values ready for an ordinary component's style prop. */
|
|
40
|
+
readonly style: StyleSheet.StyleProp<style>;
|
|
41
|
+
};
|
|
42
|
+
/** An application selected an unknown finite native variant. */
|
|
43
|
+
export declare class SelectionError extends Error {
|
|
44
|
+
/** Stable namespaced diagnostic name. */
|
|
45
|
+
name: string;
|
|
46
|
+
}
|
|
47
|
+
export {};
|
|
48
|
+
//# sourceMappingURL=Native.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Native.d.ts","sourceRoot":"","sources":["../../src/runtime/Native.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Combines applied native props in order without flattening caller-owned values.
|
|
3
|
+
* @param entries - Applied props or falsy conditional entries.
|
|
4
|
+
* @returns Native style props preserving nested arrays and object identity.
|
|
5
|
+
*/
|
|
6
|
+
export function compose(...entries) {
|
|
7
|
+
for (const entry of entries)
|
|
8
|
+
if (entry &&
|
|
9
|
+
(!Object.hasOwn(entry, 'style') ||
|
|
10
|
+
Object.keys(entry).some((key) => key !== 'style')))
|
|
11
|
+
throw new SelectionError('Native composition requires native style props.');
|
|
12
|
+
const styles = entries
|
|
13
|
+
.filter((entry) => !!entry)
|
|
14
|
+
.map((entry) => entry.style);
|
|
15
|
+
return { style: styles.length === 1 ? styles[0] : styles };
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Binds a finite native table to defaults and optional styling overrides.
|
|
19
|
+
* @param options - Compiler-owned axes, defaults, and a selected theme/scheme table.
|
|
20
|
+
* @returns A callable that only looks up static data and composes native overrides.
|
|
21
|
+
* @throws {SelectionError} For undeclared axes, choices, or missing table entries.
|
|
22
|
+
*/
|
|
23
|
+
export function create(options) {
|
|
24
|
+
const axes = Object.entries(options.axes);
|
|
25
|
+
for (const style of Object.values(options.styles))
|
|
26
|
+
freeze(style);
|
|
27
|
+
const staticStyle = axes.length === 0 ? options.styles['0'] : undefined;
|
|
28
|
+
const staticProps = staticStyle
|
|
29
|
+
? Object.freeze({ style: staticStyle })
|
|
30
|
+
: undefined;
|
|
31
|
+
return (input) => {
|
|
32
|
+
if (input === undefined && staticProps)
|
|
33
|
+
return staticProps;
|
|
34
|
+
if (input === undefined)
|
|
35
|
+
input = {};
|
|
36
|
+
for (const key of Object.keys(input))
|
|
37
|
+
if (key !== 'style' && !Object.hasOwn(options.axes, key))
|
|
38
|
+
throw new SelectionError(`Unknown native recipe input: ${key}.`);
|
|
39
|
+
let index = 0;
|
|
40
|
+
let stride = 1;
|
|
41
|
+
const values = input;
|
|
42
|
+
for (const [axis, choices] of axes) {
|
|
43
|
+
const supplied = Object.hasOwn(values, axis) ? values[axis] : undefined;
|
|
44
|
+
const selected = supplied === undefined
|
|
45
|
+
? Object.hasOwn(options.defaults, axis)
|
|
46
|
+
? options.defaults[axis]
|
|
47
|
+
: undefined
|
|
48
|
+
: supplied;
|
|
49
|
+
const choice = selected === null || selected === undefined
|
|
50
|
+
? choices.length
|
|
51
|
+
: typeof selected === 'string' || typeof selected === 'boolean'
|
|
52
|
+
? choices.indexOf(String(selected))
|
|
53
|
+
: -1;
|
|
54
|
+
if (choice < 0)
|
|
55
|
+
throw new SelectionError(`Unknown native recipe choice for ${axis}.`);
|
|
56
|
+
index += choice * stride;
|
|
57
|
+
stride *= choices.length + 1;
|
|
58
|
+
}
|
|
59
|
+
const style = options.styles[String(index)];
|
|
60
|
+
if (!style)
|
|
61
|
+
throw new SelectionError('Native recipe table is missing a selection.');
|
|
62
|
+
return { style: input.style ? [style, input.style] : style };
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
/** An application selected an unknown finite native variant. */
|
|
66
|
+
export class SelectionError extends Error {
|
|
67
|
+
/** Stable namespaced diagnostic name. */
|
|
68
|
+
name = 'Native.SelectionError';
|
|
69
|
+
}
|
|
70
|
+
function freeze(value) {
|
|
71
|
+
if (Object.isFrozen(value))
|
|
72
|
+
return;
|
|
73
|
+
for (const child of Object.values(value))
|
|
74
|
+
if (child && typeof child === 'object')
|
|
75
|
+
freeze(child);
|
|
76
|
+
Object.freeze(value);
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=Native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Native.js","sourceRoot":"","sources":["../../src/runtime/Native.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Defers precompiled native selection until a React render supplies its context. @module */
|
|
2
|
+
import type * as Native from './Native.js';
|
|
3
|
+
/** Render-local theme and resolved appearance. */
|
|
4
|
+
export type Context = {
|
|
5
|
+
/** Resolved system appearance or an explicit override. */
|
|
6
|
+
readonly colorScheme: 'dark' | 'light';
|
|
7
|
+
/** Named compiled theme; omission uses each configuration default. */
|
|
8
|
+
readonly theme?: string | undefined;
|
|
9
|
+
};
|
|
10
|
+
type Callable = (input: never) => Native.Props<object>;
|
|
11
|
+
type Tables = Readonly<Record<string, Readonly<Record<'dark' | 'light', Callable>>>>;
|
|
12
|
+
/** Retains compiled alternatives without selecting a device context at module evaluation. */
|
|
13
|
+
export declare function create<const tables extends Tables>(tables: tables, defaultTheme: keyof tables & string): tables[keyof tables]['light'];
|
|
14
|
+
/** Resolves generated bindings and arrays while preserving caller-owned native objects. */
|
|
15
|
+
export declare function resolve(value: unknown, context: Context | undefined, input?: unknown): unknown;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=NativeContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeContext.d.ts","sourceRoot":"","sources":["../../src/runtime/NativeContext.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAI1C,kDAAkD;AAClD,MAAM,MAAM,OAAO,GAAG;IACpB,0DAA0D;IAC1D,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAA;IACtC,sEAAsE;IACtE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACpC,CAAA;AAED,KAAK,QAAQ,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;AACtD,KAAK,MAAM,GAAG,QAAQ,CACpB,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAC7D,CAAA;AAED,6FAA6F;AAC7F,wBAAgB,MAAM,CAAC,KAAK,CAAC,MAAM,SAAS,MAAM,EAChD,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,MAAM,GAAG,MAAM,GAClC,MAAM,CAAC,MAAM,MAAM,CAAC,CAAC,OAAO,CAAC,CA4B/B;AAED,2FAA2F;AAC3F,wBAAgB,OAAO,CACrB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,OAAO,GAAG,SAAS,EAC5B,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAgBT"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
const binding = Symbol('zyzz.native.context');
|
|
2
|
+
/** Retains compiled alternatives without selecting a device context at module evaluation. */
|
|
3
|
+
export function create(tables, defaultTheme) {
|
|
4
|
+
const fallback = Object.keys(tables).length === 1 && defaultTheme === 'default'
|
|
5
|
+
? tables.default
|
|
6
|
+
: undefined;
|
|
7
|
+
function select(context, input) {
|
|
8
|
+
const theme = context.theme ?? defaultTheme;
|
|
9
|
+
const table = tables[theme] ?? fallback;
|
|
10
|
+
if (!table)
|
|
11
|
+
throw new Error(`Unknown native theme: ${theme}.`);
|
|
12
|
+
return table[context.colorScheme](input).style;
|
|
13
|
+
}
|
|
14
|
+
function props(input) {
|
|
15
|
+
return {
|
|
16
|
+
style: {
|
|
17
|
+
[binding]: (context) => select(context, input),
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
const defaults = props();
|
|
22
|
+
Object.freeze(defaults.style);
|
|
23
|
+
Object.freeze(defaults);
|
|
24
|
+
const callable = (input) => input === undefined ? defaults : props(input);
|
|
25
|
+
Object.defineProperty(callable, binding, {
|
|
26
|
+
value: select,
|
|
27
|
+
});
|
|
28
|
+
return callable;
|
|
29
|
+
}
|
|
30
|
+
/** Resolves generated bindings and arrays while preserving caller-owned native objects. */
|
|
31
|
+
export function resolve(value, context, input) {
|
|
32
|
+
if (Array.isArray(value))
|
|
33
|
+
return value.map((entry) => resolve(entry, context));
|
|
34
|
+
if (value &&
|
|
35
|
+
(typeof value === 'object' || typeof value === 'function') &&
|
|
36
|
+
binding in value) {
|
|
37
|
+
if (!context)
|
|
38
|
+
throw new Error('Compiled native styles require a Zyzz Provider.');
|
|
39
|
+
const select = value[binding];
|
|
40
|
+
if (typeof select === 'function')
|
|
41
|
+
return resolve(select(context, input), context);
|
|
42
|
+
}
|
|
43
|
+
if (typeof value === 'function')
|
|
44
|
+
return (...args) => resolve(value(...args), context);
|
|
45
|
+
return value;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=NativeContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeContext.js","sourceRoot":"","sources":["../../src/runtime/NativeContext.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAA;AAe7C,6FAA6F;AAC7F,MAAM,UAAU,MAAM,CACpB,MAAc,EACd,YAAmC;IAEnC,MAAM,QAAQ,GACZ,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,KAAK,SAAS;QAC5D,CAAC,CAAC,MAAM,CAAC,OAAO;QAChB,CAAC,CAAC,SAAS,CAAA;IAEf,SAAS,MAAM,CAAC,OAAgB,EAAE,KAAa;QAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,CAAA;QAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAA;QACvC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,GAAG,CAAC,CAAA;QAC9D,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAM,CAAC,CAAC,KAAK,CAAA;IACjD,CAAC;IACD,SAAS,KAAK,CAAC,KAAa;QAC1B,OAAO;YACL,KAAK,EAAE;gBACL,CAAC,OAAO,CAAC,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC;aACxD;SACF,CAAA;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,EAAE,CAAA;IACxB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7B,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACvB,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE,CACjC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAC/C,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE;QACvC,KAAK,EAAE,MAAM;KACd,CAAC,CAAA;IACF,OAAO,QAAyC,CAAA;AAClD,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,OAAO,CACrB,KAAc,EACd,OAA4B,EAC5B,KAAe;IAEf,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;IAC9E,IACE,KAAK;QACL,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,UAAU,CAAC;QAC1D,OAAO,IAAI,KAAK,EAChB,CAAC;QACD,IAAI,CAAC,OAAO;YACV,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;QACpE,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;QAC7B,IAAI,OAAO,MAAM,KAAK,UAAU;YAC9B,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAA;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,UAAU;QAC7B,OAAO,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;IACjE,OAAO,KAAK,CAAA;AACd,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/** Applies compiled native binding instructions to runtime scalar payloads. @module */
|
|
2
|
+
import * as Scalar from '../react-native/internal/Scalar.js';
|
|
3
|
+
import type * as StyleSheet from '../react-native/StyleSheet.js';
|
|
4
|
+
import * as Native from './Native.js';
|
|
5
|
+
import type * as Recipe from './Recipe.js';
|
|
6
|
+
/** A generated callable with required application payloads and native overrides. */
|
|
7
|
+
export type Callable<input> = <const overrides extends object = StyleSheet.NativeStyle>(input: input & {
|
|
8
|
+
/** Caller-owned overrides applied after generated values. */
|
|
9
|
+
readonly style?: StyleSheet.StyleProp<overrides> | undefined;
|
|
10
|
+
}) => Native.Props<StyleSheet.NativeStyle | overrides>;
|
|
11
|
+
/** A native variant callable whose omitted input applies declared defaults. */
|
|
12
|
+
export type RecipeCallable<input> = <const overrides extends object = StyleSheet.NativeStyle>(input?: input & {
|
|
13
|
+
/** Caller-owned overrides applied after selected variant values. */
|
|
14
|
+
readonly style?: StyleSheet.StyleProp<overrides> | undefined;
|
|
15
|
+
}) => Native.Props<StyleSheet.NativeStyle | overrides>;
|
|
16
|
+
/** Adapts a published web callable's payload to native styling overrides. */
|
|
17
|
+
export type From<fn> = fn extends (...args: infer args) => unknown ? [] extends args ? RecipeCallable<Omit<NonNullable<args[0]>, 'style' | 'className' | 'variables'>> : Callable<Omit<NonNullable<args[0]>, 'style' | 'className' | 'variables'>> : never;
|
|
18
|
+
/** Ordered static and dynamic assignments selected by finite recipe choices. */
|
|
19
|
+
export type Program = {
|
|
20
|
+
/** Required top-level input fields mapped to internal slot names. */
|
|
21
|
+
readonly slots: Readonly<Record<string, string>>;
|
|
22
|
+
/** Base, variant, and compound rules in authored order. */
|
|
23
|
+
readonly rules: readonly {
|
|
24
|
+
readonly matches: readonly (readonly [string, readonly string[]])[];
|
|
25
|
+
readonly steps: readonly ({
|
|
26
|
+
readonly style: string;
|
|
27
|
+
} | {
|
|
28
|
+
readonly property: keyof typeof Scalar.properties;
|
|
29
|
+
readonly parts: readonly (string | number | {
|
|
30
|
+
readonly slot: string;
|
|
31
|
+
})[];
|
|
32
|
+
})[];
|
|
33
|
+
}[];
|
|
34
|
+
};
|
|
35
|
+
/** Binds generated instructions without running authoring callbacks or generating CSS. */
|
|
36
|
+
export declare function create(options: create.Options): Callable<Record<string, unknown>>;
|
|
37
|
+
/** Compiler-owned metadata consumed by native dynamic application. */
|
|
38
|
+
export declare namespace create {
|
|
39
|
+
/** Selected static data and ordered runtime bindings. */
|
|
40
|
+
type Options = Recipe.Definition & Scalar.Options & {
|
|
41
|
+
/** Binding instructions containing no executable authoring code. */
|
|
42
|
+
readonly program: Program;
|
|
43
|
+
/** Static fragments for one theme and color scheme. */
|
|
44
|
+
readonly styles: Readonly<Record<string, StyleSheet.NativeStyle>>;
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=NativeDynamic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeDynamic.d.ts","sourceRoot":"","sources":["../../src/runtime/NativeDynamic.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/** Applies compiled native binding instructions to runtime scalar payloads. @module */
|
|
2
|
+
import * as Scalar from '../react-native/internal/Scalar.js';
|
|
3
|
+
import * as Native from './Native.js';
|
|
4
|
+
/** Binds generated instructions without running authoring callbacks or generating CSS. */
|
|
5
|
+
export function create(options) {
|
|
6
|
+
function freeze(value) {
|
|
7
|
+
if (Object.isFrozen(value))
|
|
8
|
+
return;
|
|
9
|
+
for (const child of Object.values(value))
|
|
10
|
+
if (child && typeof child === 'object')
|
|
11
|
+
freeze(child);
|
|
12
|
+
Object.freeze(value);
|
|
13
|
+
}
|
|
14
|
+
for (const style of Object.values(options.styles))
|
|
15
|
+
freeze(style);
|
|
16
|
+
return (input = {}) => {
|
|
17
|
+
const bindings = Object.create(null);
|
|
18
|
+
const selected = Object.create(null);
|
|
19
|
+
for (const key of Object.keys(input))
|
|
20
|
+
if (key !== 'style' &&
|
|
21
|
+
!Object.hasOwn(options.axes, key) &&
|
|
22
|
+
!Object.hasOwn(options.program.slots, key))
|
|
23
|
+
throw new Native.SelectionError(`Unknown native recipe input: ${key}.`);
|
|
24
|
+
function bind(slots, values) {
|
|
25
|
+
if (!values || typeof values !== 'object' || Array.isArray(values))
|
|
26
|
+
throw new Native.SelectionError('Native payloads require scalar fields.');
|
|
27
|
+
const record = values;
|
|
28
|
+
for (const [field, slot] of Object.entries(slots)) {
|
|
29
|
+
const value = Object.hasOwn(record, field) ? record[field] : undefined;
|
|
30
|
+
if ((typeof value !== 'number' && typeof value !== 'string') ||
|
|
31
|
+
(typeof value === 'number' && !Number.isFinite(value)))
|
|
32
|
+
throw new Native.SelectionError(`Missing or invalid native payload: ${field}.`);
|
|
33
|
+
bindings[slot] = value;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
bind(options.program.slots, input);
|
|
37
|
+
for (const [axis, choices] of Object.entries(options.axes)) {
|
|
38
|
+
let value = Object.hasOwn(input, axis) ? input[axis] : undefined;
|
|
39
|
+
if (value === undefined) {
|
|
40
|
+
value = options.defaults[axis];
|
|
41
|
+
if (value != null && Object.hasOwn(options.defaultPayloads ?? {}, axis))
|
|
42
|
+
value = { [String(value)]: options.defaultPayloads[axis] };
|
|
43
|
+
}
|
|
44
|
+
if (value == null) {
|
|
45
|
+
selected[axis] = value;
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
let payload;
|
|
49
|
+
if (typeof value === 'object' && !Array.isArray(value)) {
|
|
50
|
+
const entries = Object.entries(value);
|
|
51
|
+
if (entries.length !== 1)
|
|
52
|
+
throw new Native.SelectionError('Native payloads require exactly one choice.');
|
|
53
|
+
[value, payload] = entries[0];
|
|
54
|
+
}
|
|
55
|
+
if ((typeof value !== 'string' && typeof value !== 'boolean') ||
|
|
56
|
+
!choices.includes(String(value)))
|
|
57
|
+
throw new Native.SelectionError(`Unknown native recipe choice for ${axis}.`);
|
|
58
|
+
const choice = String(value);
|
|
59
|
+
selected[axis] = choice;
|
|
60
|
+
const definition = options.payloads?.find((entry) => entry.axis === axis && entry.choice === choice);
|
|
61
|
+
if (definition)
|
|
62
|
+
bind(definition.slots[0], payload);
|
|
63
|
+
else if (payload !== undefined)
|
|
64
|
+
throw new Native.SelectionError(`Static native choice does not accept a payload: ${axis}.`);
|
|
65
|
+
}
|
|
66
|
+
const output = {};
|
|
67
|
+
let lineHeight;
|
|
68
|
+
for (const rule of options.program.rules) {
|
|
69
|
+
if (!rule.matches.every(([axis, choices]) => selected[axis] != null && choices.includes(selected[axis])))
|
|
70
|
+
continue;
|
|
71
|
+
for (const step of rule.steps) {
|
|
72
|
+
if ('style' in step) {
|
|
73
|
+
const style = options.styles[step.style];
|
|
74
|
+
if (!style)
|
|
75
|
+
throw new Native.SelectionError('Native binding program is missing a static style.');
|
|
76
|
+
Object.assign(output, style);
|
|
77
|
+
if (style.lineHeight !== undefined)
|
|
78
|
+
lineHeight = undefined;
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
const values = step.parts.map((part) => typeof part === 'object' ? bindings[part.slot] : part);
|
|
82
|
+
if (values.some((value) => value === undefined))
|
|
83
|
+
throw new Native.SelectionError('Native binding program references an unbound slot.');
|
|
84
|
+
const value = values.length === 1 ? values[0] : values.join('');
|
|
85
|
+
const { property } = step;
|
|
86
|
+
if (property === 'lineHeight') {
|
|
87
|
+
lineHeight = value;
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
const converted = Scalar.convert(Scalar.properties[property], value, options, [property]);
|
|
91
|
+
if (property === 'padding' || property === 'margin') {
|
|
92
|
+
const parts = typeof value === 'string' ? value.trim().split(/\s+/) : [value];
|
|
93
|
+
const [top, right = top, bottom = top, left = right] = parts.map((part) => Scalar.length(part, options, property === 'margin', [property]));
|
|
94
|
+
Object.assign(output, {
|
|
95
|
+
[`${property}Top`]: top,
|
|
96
|
+
[`${property}Right`]: right,
|
|
97
|
+
[`${property}Bottom`]: bottom,
|
|
98
|
+
[`${property}Left`]: left,
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
else if (property === 'borderColor' || property === 'borderWidth') {
|
|
102
|
+
for (const side of ['Top', 'Right', 'Bottom', 'Left'])
|
|
103
|
+
output[`border${side}${property === 'borderColor' ? 'Color' : 'Width'}`] = converted;
|
|
104
|
+
}
|
|
105
|
+
else if (property === 'borderRadius') {
|
|
106
|
+
for (const corner of [
|
|
107
|
+
'TopLeft',
|
|
108
|
+
'TopRight',
|
|
109
|
+
'BottomRight',
|
|
110
|
+
'BottomLeft',
|
|
111
|
+
])
|
|
112
|
+
output[`border${corner}Radius`] = converted;
|
|
113
|
+
}
|
|
114
|
+
else if (property === 'gap') {
|
|
115
|
+
output.columnGap = converted;
|
|
116
|
+
output.rowGap = converted;
|
|
117
|
+
}
|
|
118
|
+
else
|
|
119
|
+
output[property] = converted;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
if (lineHeight !== undefined) {
|
|
123
|
+
if (typeof lineHeight === 'number') {
|
|
124
|
+
if (!Number.isFinite(lineHeight) ||
|
|
125
|
+
lineHeight < 0 ||
|
|
126
|
+
typeof output.fontSize !== 'number')
|
|
127
|
+
throw new Native.SelectionError('Numeric lineHeight requires an explicit fontSize and a nonnegative finite multiplier.');
|
|
128
|
+
output.lineHeight = lineHeight * output.fontSize;
|
|
129
|
+
if (!Number.isFinite(output.lineHeight))
|
|
130
|
+
throw new Native.SelectionError('Converted lineHeight must be finite.');
|
|
131
|
+
}
|
|
132
|
+
else
|
|
133
|
+
output.lineHeight = Scalar.length(lineHeight, options, false, [
|
|
134
|
+
'lineHeight',
|
|
135
|
+
]);
|
|
136
|
+
}
|
|
137
|
+
const style = output;
|
|
138
|
+
return { style: input.style ? [style, input.style] : style };
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=NativeDynamic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeDynamic.js","sourceRoot":"","sources":["../../src/runtime/NativeDynamic.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/** Binds scoped recipe payloads to precompiled per-condition variable slots. @module */
|
|
2
|
+
import type { style } from '../styleFunction.js';
|
|
3
|
+
import * as Html from './Html.js';
|
|
4
|
+
import type * as Recipe from './Recipe.js';
|
|
5
|
+
/** Creates a serializer over an already compiled recipe selection function. */
|
|
6
|
+
export declare function create(options: create.Options): (input?: Record<string, unknown> & style.Options) => {
|
|
7
|
+
readonly className: string;
|
|
8
|
+
readonly style?: Readonly<Record<string, string | number | undefined>> | undefined;
|
|
9
|
+
} | Html.Attributes;
|
|
10
|
+
/** Fixed payload serializer inputs. */
|
|
11
|
+
export declare namespace create {
|
|
12
|
+
/** Validated compiler metadata and a selection-only delegate. */
|
|
13
|
+
type Options = Recipe.Definition & {
|
|
14
|
+
/** Final output uses native HTML attributes when enabled. */
|
|
15
|
+
readonly html?: boolean | undefined;
|
|
16
|
+
/** Dynamic choices present in this recipe. */
|
|
17
|
+
readonly payloads: readonly Recipe.Payload[];
|
|
18
|
+
/** Precompiled selector returning React-shaped props. */
|
|
19
|
+
readonly select: ReturnType<typeof Recipe.create>;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=PayloadRecipe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PayloadRecipe.d.ts","sourceRoot":"","sources":["../../src/runtime/PayloadRecipe.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAE1C,+EAA+E;AAC/E,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,YAa7B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,OAAO;;;oBA+DvD;AAED,uCAAuC;AACvC,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,iEAAiE;IACjE,KAAK,OAAO,GAAG,MAAM,CAAC,UAAU,GAAG;QACjC,6DAA6D;QAC7D,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACnC,8CAA8C;QAC9C,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,CAAC,OAAO,EAAE,CAAA;QAC5C,yDAAyD;QACzD,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAA;KAClD,CAAA;CACF"}
|