@tamagui/web 1.74.3 → 1.74.5

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.
Files changed (213) hide show
  1. package/dist/cjs/helpers/getAnimationDriver.js +28 -0
  2. package/dist/cjs/helpers/getAnimationDriver.js.map +6 -0
  3. package/dist/cjs/helpers/getAnimationDriver.native.js +29 -0
  4. package/dist/cjs/helpers/getAnimationDriver.native.js.map +6 -0
  5. package/dist/cjs/helpers/propMapper.js +24 -19
  6. package/dist/cjs/helpers/propMapper.js.map +1 -1
  7. package/dist/cjs/helpers/propMapper.native.js +24 -19
  8. package/dist/cjs/helpers/propMapper.native.js.map +1 -1
  9. package/dist/cjs/hooks/useAnimationDriver.js +26 -0
  10. package/dist/cjs/hooks/useAnimationDriver.js.map +6 -0
  11. package/dist/cjs/hooks/useAnimationDriver.native.js +27 -0
  12. package/dist/cjs/hooks/useAnimationDriver.native.js.map +6 -0
  13. package/dist/cjs/hooks/useStyle.js +47 -0
  14. package/dist/cjs/hooks/useStyle.js.map +6 -0
  15. package/dist/cjs/hooks/useStyle.native.js +48 -0
  16. package/dist/cjs/hooks/useStyle.native.js.map +6 -0
  17. package/dist/cjs/hooks/useTheme.js +1 -1
  18. package/dist/cjs/hooks/useTheme.js.map +1 -1
  19. package/dist/cjs/hooks/useTheme.native.js +2 -2
  20. package/dist/cjs/hooks/useTheme.native.js.map +1 -1
  21. package/dist/cjs/views/AnimationDriverProvider.js +26 -0
  22. package/dist/cjs/views/AnimationDriverProvider.js.map +6 -0
  23. package/dist/cjs/views/AnimationDriverProvider.native.js +27 -0
  24. package/dist/cjs/views/AnimationDriverProvider.native.js.map +6 -0
  25. package/dist/esm/Tamagui.native.js +36 -0
  26. package/dist/esm/Tamagui.native.js.map +6 -0
  27. package/dist/esm/config.native.js +62 -0
  28. package/dist/esm/config.native.js.map +6 -0
  29. package/dist/esm/constants/accessibilityDirectMap.native.js +59 -0
  30. package/dist/esm/constants/accessibilityDirectMap.native.js.map +6 -0
  31. package/dist/esm/constants/constants.native.js +9 -0
  32. package/dist/esm/constants/constants.native.js.map +6 -0
  33. package/dist/esm/constants/isDevTools.native.js +12 -0
  34. package/dist/esm/constants/isDevTools.native.js.map +6 -0
  35. package/dist/esm/contexts/ComponentContext.native.js +22 -0
  36. package/dist/esm/contexts/ComponentContext.native.js.map +6 -0
  37. package/dist/esm/createComponent.native.js +683 -0
  38. package/dist/esm/createComponent.native.js.map +6 -0
  39. package/dist/esm/createFont.native.js +38 -0
  40. package/dist/esm/createFont.native.js.map +6 -0
  41. package/dist/esm/createShorthands.native.js +7 -0
  42. package/dist/esm/createShorthands.native.js.map +6 -0
  43. package/dist/esm/createTamagui.native.js +181 -0
  44. package/dist/esm/createTamagui.native.js.map +6 -0
  45. package/dist/esm/createTheme.native.js +5 -0
  46. package/dist/esm/createTheme.native.js.map +6 -0
  47. package/dist/esm/createTokens.native.js +8 -0
  48. package/dist/esm/createTokens.native.js.map +6 -0
  49. package/dist/esm/createVariable.native.js +57 -0
  50. package/dist/esm/createVariable.native.js.map +6 -0
  51. package/dist/esm/createVariables.native.js +34 -0
  52. package/dist/esm/createVariables.native.js.map +6 -0
  53. package/dist/esm/defaultComponentState.native.js +19 -0
  54. package/dist/esm/defaultComponentState.native.js.map +6 -0
  55. package/dist/esm/helpers/ThemeManager.native.js +157 -0
  56. package/dist/esm/helpers/ThemeManager.native.js.map +6 -0
  57. package/dist/esm/helpers/ThemeManagerContext.native.js +6 -0
  58. package/dist/esm/helpers/ThemeManagerContext.native.js.map +6 -0
  59. package/dist/esm/helpers/createChainedWeakCache.native.js +33 -0
  60. package/dist/esm/helpers/createChainedWeakCache.native.js.map +6 -0
  61. package/dist/esm/helpers/createMediaStyle.native.js +52 -0
  62. package/dist/esm/helpers/createMediaStyle.native.js.map +6 -0
  63. package/dist/esm/helpers/createProxy.native.js +14 -0
  64. package/dist/esm/helpers/createProxy.native.js.map +6 -0
  65. package/dist/esm/helpers/createShallowSetState.native.js +14 -0
  66. package/dist/esm/helpers/createShallowSetState.native.js.map +6 -0
  67. package/dist/esm/helpers/createStyledContext.native.js +30 -0
  68. package/dist/esm/helpers/createStyledContext.native.js.map +6 -0
  69. package/dist/esm/helpers/defaultOffset.native.js +5 -0
  70. package/dist/esm/helpers/defaultOffset.native.js.map +6 -0
  71. package/dist/esm/helpers/expandStyle.native.js +43 -0
  72. package/dist/esm/helpers/expandStyle.native.js.map +6 -0
  73. package/dist/esm/helpers/expandStyles.native.js +37 -0
  74. package/dist/esm/helpers/expandStyles.native.js.map +6 -0
  75. package/dist/esm/helpers/getAnimationDriver.js +8 -0
  76. package/dist/esm/helpers/getAnimationDriver.js.map +6 -0
  77. package/dist/esm/helpers/getExpandedShorthands.native.js +14 -0
  78. package/dist/esm/helpers/getExpandedShorthands.native.js.map +6 -0
  79. package/dist/esm/helpers/getFontLanguage.native.js +5 -0
  80. package/dist/esm/helpers/getFontLanguage.native.js.map +6 -0
  81. package/dist/esm/helpers/getGroupPropParts.native.js +11 -0
  82. package/dist/esm/helpers/getGroupPropParts.native.js.map +6 -0
  83. package/dist/esm/helpers/getSplitStyles.native.js +539 -0
  84. package/dist/esm/helpers/getSplitStyles.native.js.map +6 -0
  85. package/dist/esm/helpers/getStylesAtomic.native.js +10 -0
  86. package/dist/esm/helpers/getStylesAtomic.native.js.map +6 -0
  87. package/dist/esm/helpers/getThemeCSSRules.native.js +7 -0
  88. package/dist/esm/helpers/getThemeCSSRules.native.js.map +6 -0
  89. package/dist/esm/helpers/getVariantExtras.native.js +51 -0
  90. package/dist/esm/helpers/getVariantExtras.native.js.map +6 -0
  91. package/dist/esm/helpers/insertStyleRule.native.js +195 -0
  92. package/dist/esm/helpers/insertStyleRule.native.js.map +6 -0
  93. package/dist/esm/helpers/isObj.native.js +5 -0
  94. package/dist/esm/helpers/isObj.native.js.map +6 -0
  95. package/dist/esm/helpers/isTamaguiComponent.native.js +8 -0
  96. package/dist/esm/helpers/isTamaguiComponent.native.js.map +6 -0
  97. package/dist/esm/helpers/isTamaguiElement.native.js +7 -0
  98. package/dist/esm/helpers/isTamaguiElement.native.js.map +6 -0
  99. package/dist/esm/helpers/matchMedia.native.js +20 -0
  100. package/dist/esm/helpers/matchMedia.native.js.map +6 -0
  101. package/dist/esm/helpers/mergeProps.native.js +28 -0
  102. package/dist/esm/helpers/mergeProps.native.js.map +6 -0
  103. package/dist/esm/helpers/mergeVariants.native.js +35 -0
  104. package/dist/esm/helpers/mergeVariants.native.js.map +6 -0
  105. package/dist/esm/helpers/normalizeColor.native.js +20 -0
  106. package/dist/esm/helpers/normalizeColor.native.js.map +6 -0
  107. package/dist/esm/helpers/normalizeShadow.native.js +28 -0
  108. package/dist/esm/helpers/normalizeShadow.native.js.map +6 -0
  109. package/dist/esm/helpers/normalizeStylePropKeys.native.js +16 -0
  110. package/dist/esm/helpers/normalizeStylePropKeys.native.js.map +6 -0
  111. package/dist/esm/helpers/normalizeValueWithProperty.native.js +40 -0
  112. package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +6 -0
  113. package/dist/esm/helpers/objectIdentityKey.native.js +22 -0
  114. package/dist/esm/helpers/objectIdentityKey.native.js.map +6 -0
  115. package/dist/esm/helpers/propMapper.js +24 -19
  116. package/dist/esm/helpers/propMapper.js.map +1 -1
  117. package/dist/esm/helpers/propMapper.native.js +213 -0
  118. package/dist/esm/helpers/propMapper.native.js.map +6 -0
  119. package/dist/esm/helpers/proxyThemeToParents.native.js +40 -0
  120. package/dist/esm/helpers/proxyThemeToParents.native.js.map +6 -0
  121. package/dist/esm/helpers/proxyThemeVariables.native.js +16 -0
  122. package/dist/esm/helpers/proxyThemeVariables.native.js.map +6 -0
  123. package/dist/esm/helpers/pseudoDescriptors.native.js +37 -0
  124. package/dist/esm/helpers/pseudoDescriptors.native.js.map +6 -0
  125. package/dist/esm/helpers/registerCSSVariable.native.js +10 -0
  126. package/dist/esm/helpers/registerCSSVariable.native.js.map +6 -0
  127. package/dist/esm/helpers/themeable.native.js +29 -0
  128. package/dist/esm/helpers/themeable.native.js.map +6 -0
  129. package/dist/esm/helpers/themes.native.js +17 -0
  130. package/dist/esm/helpers/themes.native.js.map +6 -0
  131. package/dist/esm/helpers/timer.native.js +11 -0
  132. package/dist/esm/helpers/timer.native.js.map +6 -0
  133. package/dist/esm/helpers/withStaticProperties.native.js +20 -0
  134. package/dist/esm/helpers/withStaticProperties.native.js.map +6 -0
  135. package/dist/esm/hooks/getThemeUnwrapped.native.js +6 -0
  136. package/dist/esm/hooks/getThemeUnwrapped.native.js.map +6 -0
  137. package/dist/esm/hooks/useAnimationDriver.js +8 -0
  138. package/dist/esm/hooks/useAnimationDriver.js.map +6 -0
  139. package/dist/esm/hooks/useConfiguration.native.js +15 -0
  140. package/dist/esm/hooks/useConfiguration.native.js.map +6 -0
  141. package/dist/esm/hooks/useDisableSSR.native.js +15 -0
  142. package/dist/esm/hooks/useDisableSSR.native.js.map +6 -0
  143. package/dist/esm/hooks/useId.native.js +5 -0
  144. package/dist/esm/hooks/useId.native.js.map +6 -0
  145. package/dist/esm/hooks/useIsTouchDevice.native.js +7 -0
  146. package/dist/esm/hooks/useIsTouchDevice.native.js.map +6 -0
  147. package/dist/esm/hooks/useMedia.native.js +155 -0
  148. package/dist/esm/hooks/useMedia.native.js.map +6 -0
  149. package/dist/esm/hooks/useMemoDebug.native.js +10 -0
  150. package/dist/esm/hooks/useMemoDebug.native.js.map +6 -0
  151. package/dist/esm/hooks/useProps.native.js +49 -0
  152. package/dist/esm/hooks/useProps.native.js.map +6 -0
  153. package/dist/esm/hooks/useStyle.js +32 -0
  154. package/dist/esm/hooks/useStyle.js.map +6 -0
  155. package/dist/esm/hooks/useTheme.js +1 -1
  156. package/dist/esm/hooks/useTheme.js.map +1 -1
  157. package/dist/esm/hooks/useTheme.native.js +224 -0
  158. package/dist/esm/hooks/useTheme.native.js.map +6 -0
  159. package/dist/esm/hooks/useThemeName.native.js +17 -0
  160. package/dist/esm/hooks/useThemeName.native.js.map +6 -0
  161. package/dist/esm/index.native.js +90 -0
  162. package/dist/esm/index.native.js.map +6 -0
  163. package/dist/esm/inject-styles.native.js +12 -0
  164. package/dist/esm/inject-styles.native.js.map +6 -0
  165. package/dist/esm/insertFont.native.js +48 -0
  166. package/dist/esm/insertFont.native.js.map +6 -0
  167. package/dist/esm/interfaces/CSSColorNames.native.js +1 -0
  168. package/dist/esm/interfaces/CSSColorNames.native.js.map +6 -0
  169. package/dist/esm/interfaces/GetRef.native.js +1 -0
  170. package/dist/esm/interfaces/GetRef.native.js.map +6 -0
  171. package/dist/esm/interfaces/Role.native.js +1 -0
  172. package/dist/esm/interfaces/Role.native.js.map +6 -0
  173. package/dist/esm/setupHooks.native.js +9 -0
  174. package/dist/esm/setupHooks.native.js.map +6 -0
  175. package/dist/esm/setupReactNative.native.js +30 -0
  176. package/dist/esm/setupReactNative.native.js.map +6 -0
  177. package/dist/esm/styled.native.js +56 -0
  178. package/dist/esm/styled.native.js.map +6 -0
  179. package/dist/esm/types.native.js +1 -0
  180. package/dist/esm/types.native.js.map +6 -0
  181. package/dist/esm/views/AnimationDriverProvider.js +7 -0
  182. package/dist/esm/views/AnimationDriverProvider.js.map +6 -0
  183. package/dist/esm/views/Configuration.native.js +7 -0
  184. package/dist/esm/views/Configuration.native.js.map +6 -0
  185. package/dist/esm/views/FontLanguage.native.js +11 -0
  186. package/dist/esm/views/FontLanguage.native.js.map +6 -0
  187. package/dist/esm/views/FontLanguage.types.native.js +1 -0
  188. package/dist/esm/views/FontLanguage.types.native.js.map +6 -0
  189. package/dist/esm/views/Slot.native.js +40 -0
  190. package/dist/esm/views/Slot.native.js.map +6 -0
  191. package/dist/esm/views/Stack.native.js +12 -0
  192. package/dist/esm/views/Stack.native.js.map +6 -0
  193. package/dist/esm/views/TamaguiProvider.native.js +34 -0
  194. package/dist/esm/views/TamaguiProvider.native.js.map +6 -0
  195. package/dist/esm/views/Text.native.js +32 -0
  196. package/dist/esm/views/Text.native.js.map +6 -0
  197. package/dist/esm/views/Theme.native.js +85 -0
  198. package/dist/esm/views/Theme.native.js.map +6 -0
  199. package/dist/esm/views/ThemeDebug.native.js +11 -0
  200. package/dist/esm/views/ThemeDebug.native.js.map +6 -0
  201. package/dist/esm/views/ThemeProvider.native.js +26 -0
  202. package/dist/esm/views/ThemeProvider.native.js.map +6 -0
  203. package/dist/esm/views/View.native.js +13 -0
  204. package/dist/esm/views/View.native.js.map +6 -0
  205. package/package.json +9 -9
  206. package/src/helpers/propMapper.ts +36 -25
  207. package/src/hooks/useTheme.tsx +20 -3
  208. package/src/types.tsx +1 -1
  209. package/types/helpers/propMapper.d.ts.map +1 -1
  210. package/types/hooks/useTheme.d.ts +11 -1
  211. package/types/hooks/useTheme.d.ts.map +1 -1
  212. package/types/types.d.ts +1 -1
  213. package/types/types.d.ts.map +1 -1
@@ -0,0 +1,539 @@
1
+ import {
2
+ currentPlatform,
3
+ isAndroid,
4
+ isClient,
5
+ isServer,
6
+ isWeb,
7
+ useIsomorphicLayoutEffect
8
+ } from "@tamagui/constants";
9
+ import {
10
+ stylePropsText,
11
+ stylePropsTransform,
12
+ validPseudoKeys,
13
+ validStyles,
14
+ validStylesOnBaseProps
15
+ } from "@tamagui/helpers";
16
+ import { useInsertionEffect } from "react";
17
+ import { getConfig, getFont } from "../config";
18
+ import {
19
+ accessibilityWebRoleToNativeRole,
20
+ nativeAccessibilityState,
21
+ nativeAccessibilityValue,
22
+ webToNativeAccessibilityDirectMap
23
+ } from "../constants/accessibilityDirectMap";
24
+ import { isDevTools } from "../constants/isDevTools";
25
+ import {
26
+ getMediaImportanceIfMoreImportant,
27
+ mediaState as globalMediaState,
28
+ isMediaKey,
29
+ mediaKeyMatch,
30
+ mediaQueryConfig,
31
+ mergeMediaByImportance
32
+ } from "../hooks/useMedia";
33
+ import { createMediaStyle } from "./createMediaStyle";
34
+ import { fixStyles } from "./expandStyles";
35
+ import { getGroupPropParts } from "./getGroupPropParts";
36
+ import {
37
+ generateAtomicStyles,
38
+ getStylesAtomic,
39
+ styleToCSS
40
+ } from "./getStylesAtomic";
41
+ import {
42
+ insertStyleRules
43
+ } from "./insertStyleRule";
44
+ import {
45
+ normalizeValueWithProperty
46
+ } from "./normalizeValueWithProperty";
47
+ import { getPropMappedFontFamily, propMapper } from "./propMapper";
48
+ import { pseudoDescriptors, pseudoPriorities } from "./pseudoDescriptors";
49
+ const fontFamilyKey = "fontFamily", IS_STATIC = process.env.IS_STATIC === "is_static";
50
+ let conf;
51
+ const PROP_SPLIT = "-", getSplitStyles = (props, staticConfig, theme, themeName, componentState, styleProps, parentSplitStyles, context, elementType, debug) => {
52
+ conf = conf || getConfig();
53
+ const { shorthands } = conf, {
54
+ isHOC,
55
+ isText,
56
+ variants,
57
+ isReactNative,
58
+ inlineProps,
59
+ inlineWhenUnflattened,
60
+ parentStaticConfig,
61
+ acceptsClassName
62
+ } = staticConfig, validStyleProps = isText ? stylePropsText : validStyles, viewProps = {}, mediaState = styleProps.mediaState || globalMediaState, usedKeys = {}, shouldDoClasses = acceptsClassName && isWeb && !styleProps.noClassNames, rulesToInsert = [], classNames = {}, transforms = {};
63
+ let pseudos = null, space = props.space, hasMedia = !1, dynamicThemeAccess, pseudoGroups, mediaGroups, style = {}, className = "", mediaStylesSeen = 0;
64
+ const styleState = {
65
+ curProps: Object.assign({}, props),
66
+ classNames,
67
+ conf,
68
+ props,
69
+ styleProps,
70
+ componentState,
71
+ staticConfig,
72
+ style,
73
+ theme,
74
+ usedKeys,
75
+ viewProps,
76
+ context,
77
+ debug
78
+ };
79
+ process.env.NODE_ENV === "development" && debug && debug !== "profile" && isClient && (console.groupCollapsed("getSplitStyles (collapsed)"), console.log({
80
+ props,
81
+ staticConfig,
82
+ shouldDoClasses,
83
+ styleProps,
84
+ componentState,
85
+ styleState,
86
+ theme: { ...theme }
87
+ }), console.groupEnd());
88
+ for (const keyOg in props) {
89
+ let keyInit = keyOg, valInit = props[keyOg];
90
+ if (styleProps.disableExpandShorthands || keyInit in shorthands && (keyInit = shorthands[keyInit]), keyInit === "className" || keyInit in usedKeys || keyInit in skipProps && !isHOC)
91
+ continue;
92
+ const valInitType = typeof valInit;
93
+ if (styleState.curProps[keyInit] = valInit, !isAndroid && keyInit === "elevationAndroid")
94
+ continue;
95
+ if (keyInit === "userSelect")
96
+ keyInit = "selectable", valInit = valInit !== "none";
97
+ else if (keyInit === "role") {
98
+ viewProps.accessibilityRole = accessibilityWebRoleToNativeRole[valInit];
99
+ continue;
100
+ } else if (keyInit.startsWith("aria-")) {
101
+ if (webToNativeAccessibilityDirectMap[keyInit]) {
102
+ const nativeA11yProp = webToNativeAccessibilityDirectMap[keyInit];
103
+ keyInit === "aria-hidden" && (viewProps["aria-hidden"] = valInit), viewProps[nativeA11yProp] = valInit;
104
+ continue;
105
+ } else if (nativeAccessibilityValue[keyInit]) {
106
+ let field = nativeAccessibilityValue[keyInit];
107
+ viewProps.accessibilityValue ? viewProps.accessibilityValue[field] = valInit : viewProps.accessibilityValue = {
108
+ [field]: valInit
109
+ };
110
+ } else if (nativeAccessibilityState[keyInit]) {
111
+ let field = nativeAccessibilityState[keyInit];
112
+ viewProps.accessibilityState ? viewProps.accessibilityState[field] = valInit : viewProps.accessibilityState = {
113
+ [field]: valInit
114
+ };
115
+ }
116
+ continue;
117
+ } else if (keyInit.startsWith("data-"))
118
+ continue;
119
+ if (keyInit === "dataSet") {
120
+ for (const keyInit2 in valInit)
121
+ viewProps[`data-${hyphenate(keyInit2)}`] = valInit[keyInit2];
122
+ continue;
123
+ }
124
+ if (keyInit[0] === "_" && keyInit.startsWith("_style")) {
125
+ mergeStyleProp(styleState, valInit);
126
+ continue;
127
+ }
128
+ if (!1 && !styleProps.noExpand && !isReactNative) {
129
+ if (!(keyInit in accessibilityDirectMap))
130
+ switch (keyInit) {
131
+ case "accessibilityRole":
132
+ case "accessibilityLabelledBy":
133
+ case "accessibilityFlowTo":
134
+ case "accessibilityControls":
135
+ case "accessibilityDescribedBy":
136
+ case "accessibilityKeyShortcuts":
137
+ case "accessibilityLiveRegion":
138
+ case "accessibilityReadOnly":
139
+ case "accessibilityRequired":
140
+ default:
141
+ }
142
+ }
143
+ const isValidStyleKeyInit = keyInit in validStyleProps, isShorthand = keyInit in shorthands;
144
+ let isVariant = !isValidStyleKeyInit && variants && keyInit in variants;
145
+ const isStyleLikeKey = isShorthand || isValidStyleKeyInit || isVariant;
146
+ let isPseudo = keyInit in validPseudoKeys, isMedia = !isStyleLikeKey && !isPseudo && isMediaKey(keyInit), isMediaOrPseudo = isMedia || isPseudo;
147
+ const isStyleProp = isMediaOrPseudo || isVariant && !styleProps.noExpand || isValidStyleKeyInit || isShorthand;
148
+ if (isStyleProp && (props.asChild === "except-style" || props.asChild === "except-style-web"))
149
+ continue;
150
+ const shouldPassProp = !isStyleProp || // is in parent variants
151
+ isHOC && parentStaticConfig?.variants && keyInit in parentStaticConfig.variants || inlineProps?.has(keyInit), parentVariant = parentStaticConfig?.variants?.[keyInit], isHOCShouldPassThrough = !!(isHOC && (isShorthand || isValidStyleKeyInit || isMediaOrPseudo || parentVariant || keyInit in skipProps)), shouldPassThrough = shouldPassProp || isHOCShouldPassThrough;
152
+ if (process.env.NODE_ENV === "development" && debug === "verbose" && (console.groupCollapsed(
153
+ `\u{1F539}\u{1F539}\u{1F539}\u{1F539} ${keyOg}${keyInit !== keyOg ? ` (shorthand for ${keyInit})` : ""} ${shouldPassThrough ? "(pass)" : ""} \u{1F539}\u{1F539}\u{1F539}\u{1F539}`
154
+ ), console.log({ isVariant, valInit, shouldPassProp }), isClient && console.log({
155
+ variants,
156
+ variant: variants?.[keyInit],
157
+ isVariant,
158
+ isHOCShouldPassThrough,
159
+ curProps: { ...styleState.curProps },
160
+ parentStaticConfig
161
+ }), console.groupEnd()), shouldPassThrough && (passDownProp(viewProps, keyInit, valInit, isMediaOrPseudo), !isVariant) || !styleProps.noSkip && keyInit in skipProps)
162
+ continue;
163
+ if (isText && valInit && (keyInit === fontFamilyKey || keyInit === shorthands[fontFamilyKey]) && valInit in conf.fontsParsed && (styleState.fontFamily = valInit), isValidStyleKeyInit && !variants && (valInitType === "number" || valInitType === "string" && valInit[0] !== "$")) {
164
+ style[keyInit] = valInit;
165
+ continue;
166
+ }
167
+ const expanded = isMediaOrPseudo || !isVariant && !isValidStyleKeyInit ? [[keyInit, valInit]] : propMapper(keyInit, valInit, styleState), next = getPropMappedFontFamily(expanded);
168
+ if (next && (styleState.fontFamily = next), process.env.NODE_ENV === "development" && debug === "verbose") {
169
+ console.groupCollapsed(" \u{1F4A0} expanded", keyInit, valInit);
170
+ try {
171
+ !isServer && isDevTools && (console.log({
172
+ expanded,
173
+ styleProps,
174
+ componentState,
175
+ isVariant,
176
+ variant: variants?.[keyInit],
177
+ shouldPassProp,
178
+ isHOCShouldPassThrough,
179
+ theme,
180
+ usedKeys: { ...usedKeys },
181
+ curProps: { ...styleState.curProps }
182
+ }), console.log("expanded", expanded, `
183
+ usedKeys`, { ...usedKeys }, `
184
+ current`, {
185
+ ...style
186
+ }));
187
+ } catch {
188
+ }
189
+ console.groupEnd();
190
+ }
191
+ if (expanded) {
192
+ for (const [key, val] of expanded) {
193
+ if (val == null || key in usedKeys)
194
+ continue;
195
+ if (isPseudo = key in validPseudoKeys, isMedia = !isPseudo && !isValidStyleKeyInit && isMediaKey(key), isMediaOrPseudo = isMedia || isPseudo, isVariant = variants && key in variants, (inlineProps?.has(key) || IS_STATIC && inlineWhenUnflattened?.has(key)) && (viewProps[key] = props[key] ?? val), styleProps.noExpand && isPseudo || isHOC && (isMediaOrPseudo || parentStaticConfig?.variants?.[keyInit])) {
196
+ passDownProp(viewProps, key, val, isMediaOrPseudo), process.env.NODE_ENV === "development" && debug === "verbose" && (console.groupCollapsed(` - passing down prop ${key}`), console.log({ val, after: { ...viewProps[key] } }), console.groupEnd());
197
+ continue;
198
+ }
199
+ if (isPseudo) {
200
+ if (!val)
201
+ continue;
202
+ const pseudoStyleObject = getSubStyle(
203
+ styleState,
204
+ key,
205
+ val,
206
+ styleProps.noClassNames
207
+ ), descriptor = pseudoDescriptors[key], isEnter = key === "enterStyle", isExit = key === "exitStyle";
208
+ if (process.env.NODE_ENV === "development" && !styleProps.isAnimated && !componentState.unmounted && (isEnter || isExit) && console.warn(
209
+ `No animation prop given to component ${staticConfig.componentName || ""} ${props["data-at"] || ""} with enterStyle / exitStyle, these styles will be ignored`,
210
+ { props }
211
+ ), !descriptor || isExit && !styleProps.isExiting)
212
+ continue;
213
+ if ((!shouldDoClasses || IS_STATIC) && (pseudos ||= {}, pseudos[key] ||= {}, IS_STATIC)) {
214
+ Object.assign(pseudos[key], pseudoStyleObject);
215
+ continue;
216
+ }
217
+ if (shouldDoClasses && !isEnter && !isExit) {
218
+ const pseudoStyles = generateAtomicStyles(pseudoStyleObject, descriptor);
219
+ process.env.NODE_ENV === "development" && debug === "verbose" && (console.groupCollapsed("pseudo (classes)", key), console.log({ pseudoStyleObject, pseudoStyles }), console.groupEnd());
220
+ for (const psuedoStyle of pseudoStyles) {
221
+ const fullKey = `${psuedoStyle.property}${PROP_SPLIT}${descriptor.name}`;
222
+ fullKey in usedKeys || (psuedoStyle.identifier, void 0);
223
+ }
224
+ } else {
225
+ const descriptorKey = descriptor.stateKey || descriptor.name, pseudoState = componentState[descriptorKey];
226
+ let isDisabled = isExit ? !styleProps.isExiting : !pseudoState;
227
+ isWeb && !isClient && isEnter && (isDisabled = !1), process.env.NODE_ENV === "development" && debug === "verbose" && (console.groupCollapsed("pseudo", key, { isDisabled }), console.log(pseudoStyleObject, {
228
+ isDisabled,
229
+ descriptorKey,
230
+ descriptor,
231
+ pseudoState,
232
+ state: { ...componentState }
233
+ }), console.groupEnd());
234
+ const importance = descriptor.priority;
235
+ for (const pkey in pseudoStyleObject) {
236
+ const val2 = pseudoStyleObject[pkey];
237
+ if (isDisabled) {
238
+ if (pkey in animatableDefaults && !(pkey in usedKeys)) {
239
+ const defaultVal = animatableDefaults[pkey];
240
+ mergeStyle(styleState, pkey, defaultVal);
241
+ }
242
+ } else {
243
+ const curImportance = usedKeys[pkey] || 0, shouldMerge = importance >= curImportance;
244
+ shouldMerge && (pseudos ||= {}, pseudos[key] ||= {}, pseudos[key][pkey] = val2, mergeStyle(styleState, pkey, val2)), process.env.NODE_ENV === "development" && debug === "verbose" && console.log(" subKey", pkey, shouldMerge, {
245
+ importance,
246
+ curImportance,
247
+ pkey,
248
+ val: val2,
249
+ transforms: { ...styleState.transforms }
250
+ });
251
+ }
252
+ }
253
+ if (!isDisabled)
254
+ for (const key2 in val) {
255
+ const k = shorthands[key2] || key2;
256
+ usedKeys[k] = Math.max(importance, usedKeys[k] || 0);
257
+ }
258
+ }
259
+ continue;
260
+ } else if (isMedia) {
261
+ if (!val)
262
+ continue;
263
+ const isPlatformMedia = key.startsWith("$platform-");
264
+ if (isPlatformMedia) {
265
+ const platform = key.slice(10);
266
+ if (
267
+ // supports web, ios, android
268
+ platform !== currentPlatform && // supports web, native
269
+ platform !== "native"
270
+ )
271
+ continue;
272
+ }
273
+ hasMedia ||= !0;
274
+ const mediaStyle = getSubStyle(
275
+ styleState,
276
+ key,
277
+ val,
278
+ // TODO try true like pseudo
279
+ !1
280
+ ), mediaKeyShort = key.slice(1);
281
+ process.env.NODE_ENV === "development" && debug === "verbose" && console.log(` \u{1F4FA} ${key}`, {
282
+ key,
283
+ val,
284
+ mediaStyle,
285
+ props,
286
+ shouldDoClasses,
287
+ componentState
288
+ });
289
+ const hasSpace = val.space;
290
+ if ((hasSpace || !shouldDoClasses) && (Array.isArray(hasMedia) || (hasMedia = []), hasMedia.push(mediaKeyShort)), shouldDoClasses) {
291
+ if (hasSpace && (delete mediaStyle.space, mediaState[mediaKeyShort])) {
292
+ const importance = getMediaImportanceIfMoreImportant(
293
+ mediaKeyShort,
294
+ "space",
295
+ usedKeys,
296
+ !0
297
+ );
298
+ importance && (space = val.space, usedKeys.space = importance, process.env.NODE_ENV === "development" && debug === "verbose" && console.log(
299
+ `Found more important space for current media ${mediaKeyShort}: ${val} (importance: ${importance})`
300
+ ));
301
+ }
302
+ const mediaStyles = getStylesAtomic(mediaStyle, debug), priority = mediaStylesSeen;
303
+ mediaStylesSeen += 1;
304
+ for (const style2 of mediaStyles) {
305
+ const out = createMediaStyle(
306
+ style2,
307
+ mediaKeyShort,
308
+ mediaQueryConfig,
309
+ !1,
310
+ priority
311
+ ), fullKey = `${style2.property}${PROP_SPLIT}${mediaKeyShort}`;
312
+ fullKey in usedKeys || (out.identifier, void 0);
313
+ }
314
+ } else {
315
+ const isThemeMedia = !isPlatformMedia && mediaKeyShort.startsWith("theme-"), isGroupMedia = !isPlatformMedia && !isThemeMedia && mediaKeyShort.startsWith("group-");
316
+ if (!isThemeMedia && !isPlatformMedia && !isGroupMedia && !mediaState[mediaKeyShort])
317
+ continue;
318
+ let importanceBump = 0;
319
+ if (isThemeMedia) {
320
+ dynamicThemeAccess = !0;
321
+ const mediaThemeName = mediaKeyShort.slice(6);
322
+ if (!(themeName === mediaThemeName || themeName.startsWith(mediaThemeName)))
323
+ continue;
324
+ } else if (isGroupMedia) {
325
+ const groupInfo = getGroupPropParts(mediaKeyShort), groupName = groupInfo.name, groupContext = context?.groups.state[groupName];
326
+ if (!groupContext) {
327
+ process.env.NODE_ENV === "development" && debug && console.warn(`No parent with group prop, skipping styles: ${groupName}`);
328
+ continue;
329
+ }
330
+ const groupPseudoKey = groupInfo.pseudo, groupMediaKey = groupInfo.media, componentGroupState = componentState.group?.[groupName];
331
+ if (groupMediaKey) {
332
+ mediaGroups ||= /* @__PURE__ */ new Set(), mediaGroups.add(groupMediaKey);
333
+ const mediaState2 = componentGroupState?.media;
334
+ let isActive = mediaState2?.[groupMediaKey];
335
+ if (!mediaState2 && groupContext.layout && (isActive = mediaKeyMatch(groupMediaKey, groupContext.layout)), !isActive)
336
+ continue;
337
+ importanceBump = 2;
338
+ }
339
+ if (groupPseudoKey) {
340
+ if (pseudoGroups ||= /* @__PURE__ */ new Set(), pseudoGroups.add(groupName), !(componentGroupState || // fallback to context initially
341
+ context.groups.state[groupName]).pseudo?.[groupPseudoKey])
342
+ continue;
343
+ importanceBump = pseudoPriorities[groupPseudoKey];
344
+ }
345
+ }
346
+ for (const subKey in mediaStyle) {
347
+ if (subKey === "space") {
348
+ space = valInit.space;
349
+ continue;
350
+ }
351
+ mergeMediaByImportance(
352
+ style,
353
+ mediaKeyShort,
354
+ subKey,
355
+ mediaStyle[subKey],
356
+ usedKeys,
357
+ mediaState[mediaKeyShort],
358
+ importanceBump
359
+ ), key === fontFamilyKey && (styleState.fontFamily = mediaStyle.fontFamily);
360
+ }
361
+ }
362
+ continue;
363
+ }
364
+ if (key === "pointerEvents") {
365
+ viewProps[key] = val;
366
+ continue;
367
+ }
368
+ if (
369
+ // is HOC we can just pass through the styles as props
370
+ // this fixes issues where style prop got merged with wrong priority
371
+ !isHOC && (key in validStyleProps || isAndroid && key === "elevation")
372
+ ) {
373
+ mergeStyle(styleState, key, val);
374
+ continue;
375
+ }
376
+ isVariant || (viewProps[key] = val);
377
+ }
378
+ if (process.env.NODE_ENV === "development" && debug === "verbose") {
379
+ console.groupCollapsed(" \u2714\uFE0F expand complete", keyInit);
380
+ try {
381
+ console.log("style", { ...style }), console.log("transforms", { ...transforms }), console.log("viewProps", { ...viewProps });
382
+ } catch {
383
+ }
384
+ console.groupEnd();
385
+ }
386
+ }
387
+ }
388
+ if (props.style && mergeStyleProp(styleState, props.style), !styleProps.noNormalize && (fixStyles(style), isWeb && !staticConfig.isReactNative && styleToCSS(style), styleState.transforms && Object.entries(styleState.transforms).sort(([a], [b]) => a.localeCompare(b)).forEach(([key, val]) => {
389
+ mergeTransform(style, key, val, !0);
390
+ }), parentSplitStyles && !shouldDoClasses))
391
+ for (const key in parentSplitStyles.style)
392
+ key in classNames || key in style || (style[key] = parentSplitStyles.style[key]);
393
+ const result = {
394
+ space,
395
+ hasMedia,
396
+ fontFamily: styleState.fontFamily,
397
+ viewProps,
398
+ // @ts-expect-error
399
+ style,
400
+ pseudos,
401
+ classNames,
402
+ rulesToInsert,
403
+ dynamicThemeAccess,
404
+ pseudoGroups,
405
+ mediaGroups
406
+ };
407
+ if (style.fontFamily) {
408
+ const faceInfo = getFont(style.fontFamily)?.face;
409
+ if (faceInfo) {
410
+ const overrideFace = faceInfo[style.fontWeight]?.[style.fontStyle || "normal"]?.val;
411
+ overrideFace && (style.fontFamily = overrideFace, styleState.fontFamily = overrideFace, delete style.fontWeight, delete style.fontStyle);
412
+ }
413
+ process.env.NODE_ENV === "development" && debug && debug !== "profile" && console.log(`Found fontFamily native: ${style.fontFamily}`, faceInfo);
414
+ }
415
+ if (className && (classNames.className = className), process.env.NODE_ENV === "development" && debug === "verbose" && isDevTools) {
416
+ console.groupCollapsed(" \u{1F539} ===>");
417
+ try {
418
+ const logs = {
419
+ ...result,
420
+ componentState,
421
+ transforms,
422
+ viewProps,
423
+ viewPropsOrder: Object.keys(viewProps),
424
+ rulesToInsert,
425
+ parentSplitStyles
426
+ };
427
+ for (const key in logs)
428
+ console.log(key, logs[key]);
429
+ } catch {
430
+ }
431
+ console.groupEnd();
432
+ }
433
+ return result;
434
+ };
435
+ function mergeStyle(styleState, key, val) {
436
+ const { classNames, viewProps, style, usedKeys, styleProps } = styleState;
437
+ if (isWeb && val?.[0] === "_")
438
+ classNames[key] = val, usedKeys[key] ||= 1;
439
+ else if (key in stylePropsTransform)
440
+ styleState.transforms ||= {}, styleState.transforms[key] = val;
441
+ else {
442
+ const out = isWeb && !styleProps.noNormalize ? normalizeValueWithProperty(val, key) : val;
443
+ key in validStylesOnBaseProps ? viewProps[key] = out : style[key] = out;
444
+ }
445
+ }
446
+ const getSubStyle = (styleState, subKey, styleIn, avoidMergeTransform) => {
447
+ const { staticConfig, props, conf: conf2, styleProps } = styleState, styleOut = {};
448
+ for (let key in styleIn) {
449
+ const val = styleIn[key];
450
+ key = conf2.shorthands[key] || key;
451
+ const expanded = propMapper(key, val, styleState, { ...props, ...props[subKey] });
452
+ if (!(!expanded || !staticConfig.isHOC && key in skipProps && !styleProps.noSkip))
453
+ for (const [skey, sval] of expanded)
454
+ !avoidMergeTransform && skey in stylePropsTransform ? mergeTransform(styleOut, skey, sval) : styleOut[skey] = styleProps.noNormalize ? sval : normalizeValueWithProperty(sval, key);
455
+ }
456
+ return styleProps.noNormalize || fixStyles(styleOut), styleOut;
457
+ };
458
+ function mergeStyleProp(styleState, val) {
459
+ if (!val)
460
+ return;
461
+ const styles = [].concat(val).flat();
462
+ for (const cur of styles) {
463
+ if (!cur)
464
+ continue;
465
+ if (cur.$$css)
466
+ Object.assign(styleState.classNames, cur);
467
+ else
468
+ for (const key in cur)
469
+ key in styleState.usedKeys || mergeStyle(styleState, key, cur[key]);
470
+ }
471
+ }
472
+ const useInsertEffectCompat = isWeb ? useInsertionEffect || useIsomorphicLayoutEffect : () => {
473
+ }, useSplitStyles = (...args) => {
474
+ const res = getSplitStyles(...args);
475
+ return useInsertEffectCompat(() => {
476
+ insertStyleRules(res.rulesToInsert);
477
+ }, [res.rulesToInsert]), res;
478
+ };
479
+ const animatableDefaults = {
480
+ opacity: 1,
481
+ scale: 1,
482
+ rotate: "0deg",
483
+ rotateY: "0deg",
484
+ rotateX: "0deg",
485
+ x: 0,
486
+ y: 0
487
+ }, lowercaseHyphenate = (match) => `-${match.toLowerCase()}`, hyphenate = (str) => str.replace(/[A-Z]/g, lowercaseHyphenate), mergeTransform = (obj, key, val, backwards = !1) => {
488
+ typeof obj.transform != "string" && (obj.transform ||= [], obj.transform[backwards ? "unshift" : "push"]({
489
+ [mapTransformKeys[key] || key]: val
490
+ }));
491
+ }, mapTransformKeys = {
492
+ x: "translateX",
493
+ y: "translateY"
494
+ }, skipProps = {
495
+ untilMeasured: 1,
496
+ animation: 1,
497
+ space: 1,
498
+ animateOnly: 1,
499
+ disableClassName: 1,
500
+ debug: 1,
501
+ componentName: 1,
502
+ disableOptimization: 1,
503
+ tag: 1,
504
+ style: 1,
505
+ // handled after loop so pseudos set usedKeys and override it if necessary
506
+ group: 1
507
+ };
508
+ process.env.NODE_ENV === "test" && (skipProps["data-test-renders"] = 1);
509
+ Object.assign(skipProps, {
510
+ whiteSpace: 1,
511
+ wordWrap: 1,
512
+ textOverflow: 1,
513
+ textDecorationDistance: 1,
514
+ cursor: 1,
515
+ contain: 1,
516
+ boxSizing: 1,
517
+ boxShadow: 1,
518
+ outlineStyle: 1,
519
+ outlineOffset: 1,
520
+ outlineWidth: 1,
521
+ outlineColor: 1
522
+ });
523
+ function passDownProp(viewProps, key, val, shouldMergeObject = !1) {
524
+ if (shouldMergeObject) {
525
+ const next = {
526
+ ...viewProps[key],
527
+ ...val
528
+ };
529
+ delete viewProps[key], viewProps[key] = next;
530
+ } else
531
+ viewProps[key] = val;
532
+ }
533
+ export {
534
+ PROP_SPLIT,
535
+ getSplitStyles,
536
+ getSubStyle,
537
+ useSplitStyles
538
+ };
539
+ //# sourceMappingURL=getSplitStyles.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getSplitStyles.tsx"],
4
+ "mappings": "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",
5
+ "names": ["keyInit", "val", "key", "style", "mediaState", "conf"]
6
+ }
@@ -0,0 +1,10 @@
1
+ const empty = () => {
2
+ console.warn("no-op native");
3
+ }, getStylesAtomic = empty, generateAtomicStyles = empty, getAtomicStyle = empty, styleToCSS = empty;
4
+ export {
5
+ generateAtomicStyles,
6
+ getAtomicStyle,
7
+ getStylesAtomic,
8
+ styleToCSS
9
+ };
10
+ //# sourceMappingURL=getStylesAtomic.native.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getStylesAtomic.native.ts"],
4
+ "mappings": "AAAA,MAAM,QAAQ,MAAM;AAClB,UAAQ,KAAK,cAAc;AAC7B,GAEa,kBAAkB,OAClB,uBAAuB,OACvB,iBAAiB,OACjB,aAAa;",
5
+ "names": []
6
+ }
@@ -0,0 +1,7 @@
1
+ function getThemeCSSRules() {
2
+ return [];
3
+ }
4
+ export {
5
+ getThemeCSSRules
6
+ };
7
+ //# sourceMappingURL=getThemeCSSRules.native.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getThemeCSSRules.native.ts"],
4
+ "mappings": "AAAO,SAAS,mBAAmB;AACjC,SAAO,CAAC;AACV;",
5
+ "names": []
6
+ }
@@ -0,0 +1,51 @@
1
+ import { getVariableValue } from "../createVariable";
2
+ import { createProxy } from "./createProxy";
3
+ function getVariantExtras(styleState) {
4
+ const { curProps, conf, context, theme } = styleState;
5
+ let fonts = conf.fontsParsed;
6
+ context?.language && (fonts = getFontsForLanguage(conf.fontsParsed, context.language));
7
+ const fontFamily = getVariableValue(
8
+ styleState.fontFamily || styleState.curProps.fontFamily || styleState.conf.defaultFont
9
+ );
10
+ return {
11
+ fonts,
12
+ tokens: conf.tokensParsed,
13
+ theme,
14
+ fontFamily,
15
+ font: fonts[fontFamily] || fonts[styleState.conf.defaultFont],
16
+ // TODO do this in splitstlye
17
+ // we avoid passing in default props for media queries because that would confuse things like SizableText.size:
18
+ props: createProxy(curProps, {
19
+ // handles shorthands
20
+ get(target, key) {
21
+ const shorthand = conf.inverseShorthands[key];
22
+ if (shorthand && Reflect.has(target, shorthand))
23
+ return Reflect.get(target, shorthand);
24
+ if (Reflect.has(target, key))
25
+ return Reflect.get(target, key);
26
+ }
27
+ })
28
+ };
29
+ }
30
+ const fontLanguageCache = /* @__PURE__ */ new WeakMap();
31
+ function getFontsForLanguage(fonts, language) {
32
+ if (fontLanguageCache.has(language))
33
+ return fontLanguageCache.get(language);
34
+ const next = {
35
+ ...fonts,
36
+ ...Object.fromEntries(
37
+ Object.entries(language).map(([name, lang]) => {
38
+ if (lang === "default")
39
+ return [];
40
+ const langKey = `$${name}_${lang}`;
41
+ return [`$${name}`, fonts[langKey]];
42
+ })
43
+ )
44
+ };
45
+ return fontLanguageCache.set(language, next), next;
46
+ }
47
+ export {
48
+ getFontsForLanguage,
49
+ getVariantExtras
50
+ };
51
+ //# sourceMappingURL=getVariantExtras.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getVariantExtras.tsx"],
4
+ "mappings": "AAAA,SAAS,wBAAwB;AAGjC,SAAS,mBAAmB;AAErB,SAAS,iBAAiB,YAA2B;AAC1D,QAAM,EAAE,UAAU,MAAM,SAAS,MAAM,IAAI;AAC3C,MAAI,QAAQ,KAAK;AACjB,EAAI,SAAS,aACX,QAAQ,oBAAoB,KAAK,aAAa,QAAQ,QAAQ;AAIhE,QAAM,aAAa;AAAA,IACjB,WAAW,cAAc,WAAW,SAAS,cAAc,WAAW,KAAK;AAAA,EAC7E;AA0BA,SAxBa;AAAA,IACX;AAAA,IACA,QAAQ,KAAK;AAAA,IACb;AAAA,IACA;AAAA,IACA,MAAM,MAAM,UAAU,KAAK,MAAM,WAAW,KAAK,WAAY;AAAA;AAAA;AAAA,IAG7D,OAAO,YAAY,UAAU;AAAA;AAAA,MAE3B,IAAI,QAAQ,KAAK;AACf,cAAM,YAAY,KAAK,kBAAkB,GAAU;AAGnD,YAAI,aAAa,QAAQ,IAAI,QAAQ,SAAS;AAC5C,iBAAO,QAAQ,IAAI,QAAQ,SAAS;AAEtC,YAAI,QAAQ,IAAI,QAAQ,GAAG;AACzB,iBAAO,QAAQ,IAAI,QAAQ,GAAG;AAAA,MAElC;AAAA,IACF,CAAC;AAAA,EACH;AAGF;AAEA,MAAM,oBAAoB,oBAAI,QAAQ;AAE/B,SAAS,oBAAoB,OAAqB,UAA+B;AACtF,MAAI,kBAAkB,IAAI,QAAQ;AAChC,WAAO,kBAAkB,IAAI,QAAQ;AAEvC,QAAM,OAAO;AAAA,IACX,GAAG;AAAA,IACH,GAAG,OAAO;AAAA,MACR,OAAO,QAAQ,QAAQ,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM;AAC7C,YAAI,SAAS;AACX,iBAAO,CAAC;AAEV,cAAM,UAAU,IAAI,IAAI,IAAI,IAAI;AAChC,eAAO,CAAC,IAAI,IAAI,IAAI,MAAM,OAAO,CAAC;AAAA,MACpC,CAAC;AAAA,IACH;AAAA,EACF;AACA,2BAAkB,IAAI,UAAU,IAAI,GAC7B;AACT;",
5
+ "names": []
6
+ }