@frosted-ui/react-native 0.0.1-canary.91

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 (188) hide show
  1. package/README.md +102 -0
  2. package/dist/components/accordion.d.ts +21 -0
  3. package/dist/components/accordion.d.ts.map +1 -0
  4. package/dist/components/accordion.js +94 -0
  5. package/dist/components/accordion.js.map +1 -0
  6. package/dist/components/alert-dialog.d.ts +67 -0
  7. package/dist/components/alert-dialog.d.ts.map +1 -0
  8. package/dist/components/alert-dialog.js +170 -0
  9. package/dist/components/alert-dialog.js.map +1 -0
  10. package/dist/components/aspect-ratio.d.ts +4 -0
  11. package/dist/components/aspect-ratio.d.ts.map +1 -0
  12. package/dist/components/aspect-ratio.js +4 -0
  13. package/dist/components/aspect-ratio.js.map +1 -0
  14. package/dist/components/avatar.d.ts +23 -0
  15. package/dist/components/avatar.d.ts.map +1 -0
  16. package/dist/components/avatar.js +143 -0
  17. package/dist/components/avatar.js.map +1 -0
  18. package/dist/components/badge.d.ts +17 -0
  19. package/dist/components/badge.d.ts.map +1 -0
  20. package/dist/components/badge.js +95 -0
  21. package/dist/components/badge.js.map +1 -0
  22. package/dist/components/button.d.ts +14 -0
  23. package/dist/components/button.d.ts.map +1 -0
  24. package/dist/components/button.js +85 -0
  25. package/dist/components/button.js.map +1 -0
  26. package/dist/components/callout.d.ts +25 -0
  27. package/dist/components/callout.d.ts.map +1 -0
  28. package/dist/components/callout.js +146 -0
  29. package/dist/components/callout.js.map +1 -0
  30. package/dist/components/card.d.ts +10 -0
  31. package/dist/components/card.d.ts.map +1 -0
  32. package/dist/components/card.js +41 -0
  33. package/dist/components/card.js.map +1 -0
  34. package/dist/components/checkbox.d.ts +13 -0
  35. package/dist/components/checkbox.d.ts.map +1 -0
  36. package/dist/components/checkbox.js +116 -0
  37. package/dist/components/checkbox.js.map +1 -0
  38. package/dist/components/code.d.ts +20 -0
  39. package/dist/components/code.d.ts.map +1 -0
  40. package/dist/components/code.js +83 -0
  41. package/dist/components/code.js.map +1 -0
  42. package/dist/components/context-menu.d.ts +65 -0
  43. package/dist/components/context-menu.d.ts.map +1 -0
  44. package/dist/components/context-menu.js +441 -0
  45. package/dist/components/context-menu.js.map +1 -0
  46. package/dist/components/dialog.d.ts +49 -0
  47. package/dist/components/dialog.d.ts.map +1 -0
  48. package/dist/components/dialog.js +141 -0
  49. package/dist/components/dialog.js.map +1 -0
  50. package/dist/components/dropdown-menu.d.ts +65 -0
  51. package/dist/components/dropdown-menu.d.ts.map +1 -0
  52. package/dist/components/dropdown-menu.js +441 -0
  53. package/dist/components/dropdown-menu.js.map +1 -0
  54. package/dist/components/heading.d.ts +15 -0
  55. package/dist/components/heading.d.ts.map +1 -0
  56. package/dist/components/heading.js +8 -0
  57. package/dist/components/heading.js.map +1 -0
  58. package/dist/components/hover-card.d.ts +24 -0
  59. package/dist/components/hover-card.d.ts.map +1 -0
  60. package/dist/components/hover-card.js +49 -0
  61. package/dist/components/hover-card.js.map +1 -0
  62. package/dist/components/icon-button.d.ts +14 -0
  63. package/dist/components/icon-button.d.ts.map +1 -0
  64. package/dist/components/icon-button.js +85 -0
  65. package/dist/components/icon-button.js.map +1 -0
  66. package/dist/components/icon.d.ts +28 -0
  67. package/dist/components/icon.d.ts.map +1 -0
  68. package/dist/components/icon.js +45 -0
  69. package/dist/components/icon.js.map +1 -0
  70. package/dist/components/index.d.ts +33 -0
  71. package/dist/components/index.d.ts.map +1 -0
  72. package/dist/components/index.js +45 -0
  73. package/dist/components/index.js.map +1 -0
  74. package/dist/components/label.d.ts +8 -0
  75. package/dist/components/label.d.ts.map +1 -0
  76. package/dist/components/label.js +26 -0
  77. package/dist/components/label.js.map +1 -0
  78. package/dist/components/native-only-animated-view.d.ts +223 -0
  79. package/dist/components/native-only-animated-view.d.ts.map +1 -0
  80. package/dist/components/native-only-animated-view.js +26 -0
  81. package/dist/components/native-only-animated-view.js.map +1 -0
  82. package/dist/components/popover.d.ts +24 -0
  83. package/dist/components/popover.d.ts.map +1 -0
  84. package/dist/components/popover.js +52 -0
  85. package/dist/components/popover.js.map +1 -0
  86. package/dist/components/progress.d.ts +15 -0
  87. package/dist/components/progress.d.ts.map +1 -0
  88. package/dist/components/progress.js +68 -0
  89. package/dist/components/progress.js.map +1 -0
  90. package/dist/components/radio-group.d.ts +19 -0
  91. package/dist/components/radio-group.d.ts.map +1 -0
  92. package/dist/components/radio-group.js +138 -0
  93. package/dist/components/radio-group.js.map +1 -0
  94. package/dist/components/segmented-control.d.ts +21 -0
  95. package/dist/components/segmented-control.d.ts.map +1 -0
  96. package/dist/components/segmented-control.js +113 -0
  97. package/dist/components/segmented-control.js.map +1 -0
  98. package/dist/components/select.d.ts +58 -0
  99. package/dist/components/select.d.ts.map +1 -0
  100. package/dist/components/select.js +493 -0
  101. package/dist/components/select.js.map +1 -0
  102. package/dist/components/separator.d.ts +12 -0
  103. package/dist/components/separator.d.ts.map +1 -0
  104. package/dist/components/separator.js +64 -0
  105. package/dist/components/separator.js.map +1 -0
  106. package/dist/components/skeleton.d.ts +28 -0
  107. package/dist/components/skeleton.d.ts.map +1 -0
  108. package/dist/components/skeleton.js +153 -0
  109. package/dist/components/skeleton.js.map +1 -0
  110. package/dist/components/spinner.d.ts +17 -0
  111. package/dist/components/spinner.d.ts.map +1 -0
  112. package/dist/components/spinner.js +199 -0
  113. package/dist/components/spinner.js.map +1 -0
  114. package/dist/components/switch.d.ts +13 -0
  115. package/dist/components/switch.d.ts.map +1 -0
  116. package/dist/components/switch.js +204 -0
  117. package/dist/components/switch.js.map +1 -0
  118. package/dist/components/tabs.d.ts +25 -0
  119. package/dist/components/tabs.d.ts.map +1 -0
  120. package/dist/components/tabs.js +124 -0
  121. package/dist/components/tabs.js.map +1 -0
  122. package/dist/components/text-area.d.ts +16 -0
  123. package/dist/components/text-area.d.ts.map +1 -0
  124. package/dist/components/text-area.js +117 -0
  125. package/dist/components/text-area.js.map +1 -0
  126. package/dist/components/text-field.d.ts +35 -0
  127. package/dist/components/text-field.d.ts.map +1 -0
  128. package/dist/components/text-field.js +256 -0
  129. package/dist/components/text-field.js.map +1 -0
  130. package/dist/components/text.d.ts +23 -0
  131. package/dist/components/text.d.ts.map +1 -0
  132. package/dist/components/text.js +33 -0
  133. package/dist/components/text.js.map +1 -0
  134. package/dist/components/tooltip.d.ts +24 -0
  135. package/dist/components/tooltip.d.ts.map +1 -0
  136. package/dist/components/tooltip.js +63 -0
  137. package/dist/components/tooltip.js.map +1 -0
  138. package/dist/index.d.ts +4 -0
  139. package/dist/index.d.ts.map +1 -0
  140. package/dist/index.js +8 -0
  141. package/dist/index.js.map +1 -0
  142. package/dist/lib/button-styles.d.ts +13 -0
  143. package/dist/lib/button-styles.d.ts.map +1 -0
  144. package/dist/lib/button-styles.js +131 -0
  145. package/dist/lib/button-styles.js.map +1 -0
  146. package/dist/lib/color-utils.d.ts +21 -0
  147. package/dist/lib/color-utils.d.ts.map +1 -0
  148. package/dist/lib/color-utils.js +84 -0
  149. package/dist/lib/color-utils.js.map +1 -0
  150. package/dist/lib/dialog-styles.d.ts +42 -0
  151. package/dist/lib/dialog-styles.d.ts.map +1 -0
  152. package/dist/lib/dialog-styles.js +162 -0
  153. package/dist/lib/dialog-styles.js.map +1 -0
  154. package/dist/lib/native-colors.d.ts +8 -0
  155. package/dist/lib/native-colors.d.ts.map +1 -0
  156. package/dist/lib/native-colors.js +67 -0
  157. package/dist/lib/native-colors.js.map +1 -0
  158. package/dist/lib/panel-styles.d.ts +32 -0
  159. package/dist/lib/panel-styles.d.ts.map +1 -0
  160. package/dist/lib/panel-styles.js +96 -0
  161. package/dist/lib/panel-styles.js.map +1 -0
  162. package/dist/lib/text-input-styles.d.ts +35 -0
  163. package/dist/lib/text-input-styles.d.ts.map +1 -0
  164. package/dist/lib/text-input-styles.js +107 -0
  165. package/dist/lib/text-input-styles.js.map +1 -0
  166. package/dist/lib/theme-vars.d.ts +222 -0
  167. package/dist/lib/theme-vars.d.ts.map +1 -0
  168. package/dist/lib/theme-vars.js +173 -0
  169. package/dist/lib/theme-vars.js.map +1 -0
  170. package/dist/lib/theme.d.ts +57 -0
  171. package/dist/lib/theme.d.ts.map +1 -0
  172. package/dist/lib/theme.js +80 -0
  173. package/dist/lib/theme.js.map +1 -0
  174. package/dist/lib/types.d.ts +14 -0
  175. package/dist/lib/types.d.ts.map +1 -0
  176. package/dist/lib/types.js +2 -0
  177. package/dist/lib/types.js.map +1 -0
  178. package/dist/lib/use-theme-vars.d.ts +325 -0
  179. package/dist/lib/use-theme-vars.d.ts.map +1 -0
  180. package/dist/lib/use-theme-vars.js +17 -0
  181. package/dist/lib/use-theme-vars.js.map +1 -0
  182. package/dist/lib/utils.d.ts +3 -0
  183. package/dist/lib/utils.d.ts.map +1 -0
  184. package/dist/lib/utils.js +17 -0
  185. package/dist/lib/utils.js.map +1 -0
  186. package/global.css +1813 -0
  187. package/package.json +114 -0
  188. package/tailwind-preset.js +310 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog-styles.js","sourceRoot":"","sources":["../../src/lib/dialog-styles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { AccentColor } from './types';
2
+ type Shade = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';
3
+ type AlphaShade = 'a1' | 'a2' | 'a3' | 'a4' | 'a5' | 'a6' | 'a7' | 'a8' | 'a9' | 'a10' | 'a11' | 'a12';
4
+ export declare function getNativeAccentColor(color: AccentColor, shade: Shade): string | undefined;
5
+ export declare function getNativeAccentAlphaColor(color: AccentColor, shade: AlphaShade): string | undefined;
6
+ export declare function getNativeAccentContrastColor(color: AccentColor): string;
7
+ export {};
8
+ //# sourceMappingURL=native-colors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-colors.d.ts","sourceRoot":"","sources":["../../src/lib/native-colors.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAS3C,KAAK,KAAK,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEtF,KAAK,UAAU,GACX,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,KAAK,GACL,KAAK,CAAC;AAaV,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAKzF;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,UAAU,GAChB,MAAM,GAAG,SAAS,CAMpB;AAmCD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAEvE"}
@@ -0,0 +1,67 @@
1
+ /* eslint-disable @typescript-eslint/no-var-requires */
2
+ // Import the Frosted UI color palettes directly.
3
+ // This works on native because it's just a plain JS object.
4
+ // Shape example:
5
+ // frostedColors.blue = { blue1: '#...', blue2: '#...', ..., blue12: '#...' }
6
+ // frostedColors.blueA = { blueA1: 'rgba(...)', ..., blueA12: 'rgba(...)' }
7
+ const frostedColors = require('@frosted-ui/colors');
8
+ function getPalette(color) {
9
+ // e.g. 'blue' → frostedColors.blue.blue1 ... blue12
10
+ return frostedColors[color];
11
+ }
12
+ function getAlphaPalette(color) {
13
+ // e.g. 'blue' → frostedColors.blueA.blueA1 ... blueA12
14
+ const key = `${color}A`;
15
+ return frostedColors[key];
16
+ }
17
+ export function getNativeAccentColor(color, shade) {
18
+ const palette = getPalette(color);
19
+ if (!palette)
20
+ return undefined;
21
+ const key = `${color}${shade}`; // e.g. blue + '9' → 'blue9'
22
+ return palette[key];
23
+ }
24
+ export function getNativeAccentAlphaColor(color, shade) {
25
+ const alphaPalette = getAlphaPalette(color);
26
+ if (!alphaPalette)
27
+ return undefined;
28
+ const numericShade = shade.slice(1); // a1 -> '1'
29
+ const key = `${color}A${numericShade}`; // e.g. blueA1
30
+ return alphaPalette[key];
31
+ }
32
+ // For contrast text colors we reuse the same mapping as web (from color.css),
33
+ // but encoded directly as JS values so React Native can use them.
34
+ const contrastColors = {
35
+ tomato: 'white',
36
+ red: 'white',
37
+ ruby: 'white',
38
+ crimson: 'white',
39
+ pink: 'white',
40
+ plum: 'white',
41
+ purple: 'white',
42
+ violet: 'white',
43
+ iris: 'white',
44
+ cyan: 'white',
45
+ teal: 'white',
46
+ jade: 'white',
47
+ green: 'white',
48
+ grass: 'white',
49
+ brown: 'white',
50
+ sky: '#1C2024',
51
+ mint: '#1A211E',
52
+ yellow: '#21201C',
53
+ amber: '#21201C',
54
+ gold: 'white',
55
+ bronze: 'white',
56
+ gray: 'white',
57
+ blue: 'white',
58
+ orange: 'white',
59
+ indigo: 'white',
60
+ magenta: '#141212',
61
+ lemon: '#20240D',
62
+ lime: '#162715',
63
+ };
64
+ export function getNativeAccentContrastColor(color) {
65
+ return contrastColors[color];
66
+ }
67
+ //# sourceMappingURL=native-colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-colors.js","sourceRoot":"","sources":["../../src/lib/native-colors.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAIvD,iDAAiD;AACjD,4DAA4D;AAC5D,iBAAiB;AACjB,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAM,aAAa,GAAG,OAAO,CAAC,oBAAoB,CAA2C,CAAC;AAkB9F,SAAS,UAAU,CAAC,KAAkB;IACpC,oDAAoD;IACpD,OAAO,aAAa,CAAC,KAAK,CAAuC,CAAC;AACpE,CAAC;AAED,SAAS,eAAe,CAAC,KAAkB;IACzC,uDAAuD;IACvD,MAAM,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC;IACxB,OAAO,aAAa,CAAC,GAAG,CAAuC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAkB,EAAE,KAAY;IACnE,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,GAAG,GAAG,GAAG,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,4BAA4B;IAC5D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,KAAkB,EAClB,KAAiB;IAEjB,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY;IACjD,MAAM,GAAG,GAAG,GAAG,KAAK,IAAI,YAAY,EAAE,CAAC,CAAC,cAAc;IACtD,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,8EAA8E;AAC9E,kEAAkE;AAClE,MAAM,cAAc,GAAgC;IAClD,MAAM,EAAE,OAAO;IACf,GAAG,EAAE,OAAO;IACZ,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,OAAO;IACf,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,SAAS;IACd,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,OAAO;IACf,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF,MAAM,UAAU,4BAA4B,CAAC,KAAkB;IAC7D,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { type ViewStyle } from 'react-native';
2
+ type PanelSize = '1' | '2' | '3' | '4';
3
+ type PanelVariant = 'solid' | 'translucent';
4
+ interface ThemeColors {
5
+ panelSolid: string;
6
+ panelTranslucent: string;
7
+ palettes: {
8
+ gray: {
9
+ a6: string;
10
+ };
11
+ };
12
+ }
13
+ interface PanelStyleOptions {
14
+ size: PanelSize;
15
+ variant: PanelVariant;
16
+ colors: ThemeColors;
17
+ isDark: boolean;
18
+ }
19
+ /**
20
+ * Get padding and border radius for panel content based on size
21
+ */
22
+ declare function getPanelSizeStyle(size: PanelSize): {
23
+ padding: number;
24
+ borderRadius: number;
25
+ };
26
+ /**
27
+ * Get complete panel content style
28
+ */
29
+ declare function getPanelContentStyle(options: PanelStyleOptions): ViewStyle;
30
+ export { getPanelContentStyle, getPanelSizeStyle };
31
+ export type { PanelSize, PanelStyleOptions, PanelVariant };
32
+ //# sourceMappingURL=panel-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panel-styles.d.ts","sourceRoot":"","sources":["../../src/lib/panel-styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAExD,KAAK,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AACvC,KAAK,YAAY,GAAG,OAAO,GAAG,aAAa,CAAC;AAE5C,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,EAAE,EAAE,MAAM,CAAC;SACZ,CAAC;KACH,CAAC;CACH;AAED,UAAU,iBAAiB;IACzB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,iBAAS,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAWrF;AA6DD;;GAEG;AACH,iBAAS,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,GAAG,SAAS,CA0BnE;AAED,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,CAAC;AACnD,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,96 @@
1
+ import { Platform } from 'react-native';
2
+ /**
3
+ * Get padding and border radius for panel content based on size
4
+ */
5
+ function getPanelSizeStyle(size) {
6
+ switch (size) {
7
+ case '1':
8
+ return { padding: 12, borderRadius: 8 }; // space-3, 8px
9
+ case '2':
10
+ return { padding: 16, borderRadius: 12 }; // space-4, 12px
11
+ case '3':
12
+ return { padding: 24, borderRadius: 16 }; // space-5, 16px
13
+ case '4':
14
+ return { padding: 32, borderRadius: 20 }; // space-6, 20px
15
+ }
16
+ }
17
+ /**
18
+ * Get backdrop filter style for translucent panels (web only)
19
+ */
20
+ function getPanelBackdropStyle(variant, isDark) {
21
+ if (variant !== 'translucent' || Platform.OS !== 'web') {
22
+ return undefined;
23
+ }
24
+ const backdropFilter = isDark
25
+ ? 'blur(20px) saturate(190%) contrast(90%) brightness(80%)'
26
+ : 'blur(20px) saturate(190%) contrast(50%) brightness(130%)';
27
+ return {
28
+ backdropFilter,
29
+ WebkitBackdropFilter: backdropFilter,
30
+ };
31
+ }
32
+ /**
33
+ * Get shadow style for panel content
34
+ * Includes outline via boxShadow on web:
35
+ * - Light mode: 1px gray.a6 outline (no border)
36
+ * - Dark mode: 0.5px black outline (+ border)
37
+ */
38
+ function getPanelShadowStyle(colors, isDark) {
39
+ const baseShadow = '0px 12px 60px rgba(0, 0, 0, 0.25), 0px 2px 8px rgba(0, 0, 0, 0.12)';
40
+ const outlineShadow = isDark
41
+ ? `, 0 0 0 0.5px black`
42
+ : `, 0 0 0 1px ${colors.palettes.gray.a6}`;
43
+ return Platform.select({
44
+ web: {
45
+ boxShadow: baseShadow + outlineShadow,
46
+ },
47
+ default: {
48
+ shadowColor: '#000',
49
+ shadowOffset: { width: 0, height: 12 },
50
+ shadowOpacity: 0.25,
51
+ shadowRadius: 30,
52
+ elevation: 24,
53
+ },
54
+ });
55
+ }
56
+ /**
57
+ * Get border style for panel content
58
+ * Dark mode has 1px gray.a6 border on all platforms
59
+ * Light mode: no border on web (uses boxShadow outline), border on native as fallback
60
+ */
61
+ function getPanelBorderStyle(colors, isDark) {
62
+ if (isDark || Platform.OS !== 'web') {
63
+ return {
64
+ borderWidth: 1,
65
+ borderColor: colors.palettes.gray.a6,
66
+ };
67
+ }
68
+ return undefined;
69
+ }
70
+ /**
71
+ * Get complete panel content style
72
+ */
73
+ function getPanelContentStyle(options) {
74
+ const { size, variant, colors, isDark } = options;
75
+ const sizeStyle = getPanelSizeStyle(size);
76
+ // TODO: Handle translucent variant properly on native (iOS/Android) with blur effect
77
+ // For now, native always uses solid background since backdrop-filter is web-only
78
+ // and native blur requires additional setup (expo-blur or @react-native-community/blur)
79
+ const backgroundColor = Platform.OS === 'web' && variant === 'translucent'
80
+ ? colors.panelTranslucent
81
+ : colors.panelSolid;
82
+ const backdropStyle = getPanelBackdropStyle(variant, isDark);
83
+ const shadowStyle = getPanelShadowStyle(colors, isDark);
84
+ const borderStyle = getPanelBorderStyle(colors, isDark);
85
+ return {
86
+ backgroundColor,
87
+ padding: sizeStyle.padding,
88
+ borderRadius: sizeStyle.borderRadius,
89
+ overflow: 'hidden',
90
+ ...shadowStyle,
91
+ ...backdropStyle,
92
+ ...borderStyle,
93
+ };
94
+ }
95
+ export { getPanelContentStyle, getPanelSizeStyle };
96
+ //# sourceMappingURL=panel-styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panel-styles.js","sourceRoot":"","sources":["../../src/lib/panel-styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,cAAc,CAAC;AAsBxD;;GAEG;AACH,SAAS,iBAAiB,CAAC,IAAe;IACxC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,GAAG;YACN,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,eAAe;QAC1D,KAAK,GAAG;YACN,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,gBAAgB;QAC5D,KAAK,GAAG;YACN,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,gBAAgB;QAC5D,KAAK,GAAG;YACN,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,gBAAgB;IAC9D,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,OAAqB,EAAE,MAAe;IACnE,IAAI,OAAO,KAAK,aAAa,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;QACvD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,cAAc,GAAG,MAAM;QAC3B,CAAC,CAAC,yDAAyD;QAC3D,CAAC,CAAC,0DAA0D,CAAC;IAE/D,OAAO;QACL,cAAc;QACd,oBAAoB,EAAE,cAAc;KACxB,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,MAAmB,EAAE,MAAe;IAC/D,MAAM,UAAU,GAAG,oEAAoE,CAAC;IACxF,MAAM,aAAa,GAAG,MAAM;QAC1B,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,eAAe,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;IAE7C,OAAO,QAAQ,CAAC,MAAM,CAAC;QACrB,GAAG,EAAE;YACH,SAAS,EAAE,UAAU,GAAG,aAAa;SACzB;QACd,OAAO,EAAE;YACP,WAAW,EAAE,MAAM;YACnB,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;YACtC,aAAa,EAAE,IAAI;YACnB,YAAY,EAAE,EAAE;YAChB,SAAS,EAAE,EAAE;SACd;KACF,CAAc,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,MAAmB,EAAE,MAAe;IAC/D,IAAI,MAAM,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;QACpC,OAAO;YACL,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;SACrC,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,OAA0B;IACtD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAElD,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAE1C,qFAAqF;IACrF,iFAAiF;IACjF,wFAAwF;IACxF,MAAM,eAAe,GACnB,QAAQ,CAAC,EAAE,KAAK,KAAK,IAAI,OAAO,KAAK,aAAa;QAChD,CAAC,CAAC,MAAM,CAAC,gBAAgB;QACzB,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;IAExB,MAAM,aAAa,GAAG,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExD,OAAO;QACL,eAAe;QACf,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,YAAY,EAAE,SAAS,CAAC,YAAY;QACpC,QAAQ,EAAE,QAAQ;QAClB,GAAG,WAAW;QACd,GAAG,aAAa;QAChB,GAAG,WAAW;KACf,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,35 @@
1
+ import type { AccentColor, Color } from '../lib/types';
2
+ import { useThemeVars } from '../lib/use-theme-vars';
3
+ import { type ViewStyle } from 'react-native';
4
+ export type TextInputSize = '1' | '2' | '3' | '4';
5
+ export type TextInputVariant = 'surface' | 'soft';
6
+ export declare function resolveAccentFromColor(color?: Color): AccentColor;
7
+ /**
8
+ * Convert hex color to rgba with specified opacity
9
+ */
10
+ export declare function hexToRgba(hex: string, opacity: number): string;
11
+ /**
12
+ * Get background and border styles for surface variant
13
+ */
14
+ export declare function getSurfaceVariantStyle(colors: ReturnType<typeof useThemeVars>['colors']): ViewStyle;
15
+ /**
16
+ * Get background style for soft variant
17
+ */
18
+ export declare function getSoftVariantStyle(colors: ReturnType<typeof useThemeVars>['colors'], accentColor: AccentColor): ViewStyle;
19
+ /**
20
+ * Get text and placeholder colors based on variant
21
+ */
22
+ export declare function getTextInputColors(variant: TextInputVariant, colors: ReturnType<typeof useThemeVars>['colors'], accentColor: AccentColor, disabled?: boolean): {
23
+ textColor: string;
24
+ placeholderColor: string;
25
+ };
26
+ /**
27
+ * Get disabled background style for surface variant
28
+ * Uses gray-a3 overlay (simulated with opacity/background)
29
+ */
30
+ export declare function getDisabledSurfaceStyle(colors: ReturnType<typeof useThemeVars>['colors']): ViewStyle;
31
+ /**
32
+ * Get disabled background style for soft variant
33
+ */
34
+ export declare function getDisabledSoftStyle(colors: ReturnType<typeof useThemeVars>['colors']): ViewStyle;
35
+ //# sourceMappingURL=text-input-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-input-styles.d.ts","sourceRoot":"","sources":["../../src/lib/text-input-styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAMxD,MAAM,MAAM,aAAa,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAClD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAAC;AAMlD,wBAAgB,sBAAsB,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,WAAW,CAcjE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAO9D;AAMD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,GAChD,SAAS,CAiBX;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,EACjD,WAAW,EAAE,WAAW,GACvB,SAAS,CAIX;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,EACjD,WAAW,EAAE,WAAW,EACxB,QAAQ,CAAC,EAAE,OAAO,GACjB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,CAyBjD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,GAChD,SAAS,CAIX;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,GAAG,SAAS,CAIjG"}
@@ -0,0 +1,107 @@
1
+ import { Platform } from 'react-native';
2
+ // ============================================================================
3
+ // Helpers
4
+ // ============================================================================
5
+ export function resolveAccentFromColor(color) {
6
+ if (!color)
7
+ return 'gray';
8
+ switch (color) {
9
+ case 'danger':
10
+ return 'red';
11
+ case 'warning':
12
+ return 'amber';
13
+ case 'success':
14
+ return 'green';
15
+ case 'info':
16
+ return 'blue';
17
+ default:
18
+ return color;
19
+ }
20
+ }
21
+ /**
22
+ * Convert hex color to rgba with specified opacity
23
+ */
24
+ export function hexToRgba(hex, opacity) {
25
+ // Remove # if present
26
+ const cleanHex = hex.replace('#', '');
27
+ const r = parseInt(cleanHex.substring(0, 2), 16);
28
+ const g = parseInt(cleanHex.substring(2, 4), 16);
29
+ const b = parseInt(cleanHex.substring(4, 6), 16);
30
+ return `rgba(${r}, ${g}, ${b}, ${opacity})`;
31
+ }
32
+ // ============================================================================
33
+ // Variant Styles
34
+ // ============================================================================
35
+ /**
36
+ * Get background and border styles for surface variant
37
+ */
38
+ export function getSurfaceVariantStyle(colors) {
39
+ return {
40
+ backgroundColor: colors.surface,
41
+ borderWidth: 1,
42
+ borderColor: colors.palettes.gray.a5,
43
+ ...(Platform.OS === 'web'
44
+ ? {
45
+ boxShadow: '0px 1px 2px 0px rgba(0, 0, 0, 0.05)',
46
+ }
47
+ : {
48
+ shadowColor: '#000',
49
+ shadowOffset: { width: 0, height: 1 },
50
+ shadowOpacity: 0.05,
51
+ shadowRadius: 2,
52
+ elevation: 1,
53
+ }),
54
+ };
55
+ }
56
+ /**
57
+ * Get background style for soft variant
58
+ */
59
+ export function getSoftVariantStyle(colors, accentColor) {
60
+ return {
61
+ backgroundColor: colors.palettes[accentColor].a3,
62
+ };
63
+ }
64
+ /**
65
+ * Get text and placeholder colors based on variant
66
+ */
67
+ export function getTextInputColors(variant, colors, accentColor, disabled) {
68
+ const grayPalette = colors.palettes.gray;
69
+ const palette = colors.palettes[accentColor];
70
+ // Disabled state: always use gray-a11 for text
71
+ // Placeholder uses gray-a5 (lighter alpha shade approximating gray-a11 at 0.5 opacity)
72
+ if (disabled) {
73
+ return {
74
+ textColor: grayPalette.a11,
75
+ placeholderColor: grayPalette.a5,
76
+ };
77
+ }
78
+ if (variant === 'surface') {
79
+ return {
80
+ textColor: grayPalette['12'],
81
+ placeholderColor: grayPalette.a10,
82
+ };
83
+ }
84
+ // Soft variant
85
+ return {
86
+ textColor: palette['12'],
87
+ placeholderColor: hexToRgba(palette['12'], 0.65), // TextArea uses 0.65, TextField uses 0.6
88
+ };
89
+ }
90
+ /**
91
+ * Get disabled background style for surface variant
92
+ * Uses gray-a3 overlay (simulated with opacity/background)
93
+ */
94
+ export function getDisabledSurfaceStyle(colors) {
95
+ return {
96
+ backgroundColor: colors.palettes.gray.a3,
97
+ };
98
+ }
99
+ /**
100
+ * Get disabled background style for soft variant
101
+ */
102
+ export function getDisabledSoftStyle(colors) {
103
+ return {
104
+ backgroundColor: colors.palettes.gray.a4,
105
+ };
106
+ }
107
+ //# sourceMappingURL=text-input-styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-input-styles.js","sourceRoot":"","sources":["../../src/lib/text-input-styles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,222 @@
1
+ declare const typography: {
2
+ readonly '0': {
3
+ readonly fontSize: 10;
4
+ readonly lineHeight: 12;
5
+ readonly letterSpacing: 0.01;
6
+ };
7
+ readonly '1': {
8
+ readonly fontSize: 12;
9
+ readonly lineHeight: 16;
10
+ readonly letterSpacing: 0.01;
11
+ };
12
+ readonly '2': {
13
+ readonly fontSize: 14;
14
+ readonly lineHeight: 20;
15
+ readonly letterSpacing: 0.01;
16
+ };
17
+ readonly '3': {
18
+ readonly fontSize: 16;
19
+ readonly lineHeight: 24;
20
+ readonly letterSpacing: 0.01;
21
+ };
22
+ readonly '4': {
23
+ readonly fontSize: 18;
24
+ readonly lineHeight: 26;
25
+ readonly letterSpacing: 0.01;
26
+ };
27
+ readonly '5': {
28
+ readonly fontSize: 20;
29
+ readonly lineHeight: 28;
30
+ readonly letterSpacing: 0.01;
31
+ };
32
+ readonly '6': {
33
+ readonly fontSize: 24;
34
+ readonly lineHeight: 30;
35
+ readonly letterSpacing: 0.01;
36
+ };
37
+ readonly '7': {
38
+ readonly fontSize: 28;
39
+ readonly lineHeight: 34;
40
+ readonly letterSpacing: 0.005;
41
+ };
42
+ readonly '8': {
43
+ readonly fontSize: 32;
44
+ readonly lineHeight: 38;
45
+ readonly letterSpacing: 0;
46
+ };
47
+ readonly '9': {
48
+ readonly fontSize: 40;
49
+ readonly lineHeight: 48;
50
+ readonly letterSpacing: 0;
51
+ };
52
+ };
53
+ type TypographyStepKey = keyof typeof typography;
54
+ declare const fontWeights: {
55
+ readonly light: "300";
56
+ readonly regular: "400";
57
+ readonly medium: "500";
58
+ readonly 'semi-bold': "600";
59
+ readonly bold: "700";
60
+ };
61
+ type FontWeightKey = keyof typeof fontWeights;
62
+ type ShadeKey = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';
63
+ type AlphaShadeKey = 'a1' | 'a2' | 'a3' | 'a4' | 'a5' | 'a6' | 'a7' | 'a8' | 'a9' | 'a10' | 'a11' | 'a12';
64
+ type ColorShades = {
65
+ [K in ShadeKey]: string;
66
+ } & {
67
+ '9-contrast': string;
68
+ } & {
69
+ [K in AlphaShadeKey]: string;
70
+ };
71
+ type AlphaOnlyShades = {
72
+ [K in AlphaShadeKey]: string;
73
+ };
74
+ export declare function blackAndWhitePalettes(): {
75
+ black: AlphaOnlyShades;
76
+ white: AlphaOnlyShades;
77
+ };
78
+ export declare const themeVars: {
79
+ typography: {
80
+ readonly '0': {
81
+ readonly fontSize: 10;
82
+ readonly lineHeight: 12;
83
+ readonly letterSpacing: 0.01;
84
+ };
85
+ readonly '1': {
86
+ readonly fontSize: 12;
87
+ readonly lineHeight: 16;
88
+ readonly letterSpacing: 0.01;
89
+ };
90
+ readonly '2': {
91
+ readonly fontSize: 14;
92
+ readonly lineHeight: 20;
93
+ readonly letterSpacing: 0.01;
94
+ };
95
+ readonly '3': {
96
+ readonly fontSize: 16;
97
+ readonly lineHeight: 24;
98
+ readonly letterSpacing: 0.01;
99
+ };
100
+ readonly '4': {
101
+ readonly fontSize: 18;
102
+ readonly lineHeight: 26;
103
+ readonly letterSpacing: 0.01;
104
+ };
105
+ readonly '5': {
106
+ readonly fontSize: 20;
107
+ readonly lineHeight: 28;
108
+ readonly letterSpacing: 0.01;
109
+ };
110
+ readonly '6': {
111
+ readonly fontSize: 24;
112
+ readonly lineHeight: 30;
113
+ readonly letterSpacing: 0.01;
114
+ };
115
+ readonly '7': {
116
+ readonly fontSize: 28;
117
+ readonly lineHeight: 34;
118
+ readonly letterSpacing: 0.005;
119
+ };
120
+ readonly '8': {
121
+ readonly fontSize: 32;
122
+ readonly lineHeight: 38;
123
+ readonly letterSpacing: 0;
124
+ };
125
+ readonly '9': {
126
+ readonly fontSize: 40;
127
+ readonly lineHeight: 48;
128
+ readonly letterSpacing: 0;
129
+ };
130
+ };
131
+ fontWeights: {
132
+ readonly light: "300";
133
+ readonly regular: "400";
134
+ readonly medium: "500";
135
+ readonly 'semi-bold': "600";
136
+ readonly bold: "700";
137
+ };
138
+ colors: {
139
+ light: {
140
+ palettes: {
141
+ black: AlphaOnlyShades;
142
+ white: AlphaOnlyShades;
143
+ tomato: ColorShades;
144
+ red: ColorShades;
145
+ ruby: ColorShades;
146
+ crimson: ColorShades;
147
+ pink: ColorShades;
148
+ plum: ColorShades;
149
+ purple: ColorShades;
150
+ violet: ColorShades;
151
+ iris: ColorShades;
152
+ cyan: ColorShades;
153
+ teal: ColorShades;
154
+ jade: ColorShades;
155
+ green: ColorShades;
156
+ grass: ColorShades;
157
+ brown: ColorShades;
158
+ blue: ColorShades;
159
+ orange: ColorShades;
160
+ indigo: ColorShades;
161
+ sky: ColorShades;
162
+ mint: ColorShades;
163
+ yellow: ColorShades;
164
+ amber: ColorShades;
165
+ lime: ColorShades;
166
+ lemon: ColorShades;
167
+ magenta: ColorShades;
168
+ gold: ColorShades;
169
+ bronze: ColorShades;
170
+ gray: ColorShades;
171
+ };
172
+ background: string;
173
+ overlay: string;
174
+ panelSolid: string;
175
+ panelTranslucent: string;
176
+ surface: string;
177
+ stroke: string;
178
+ };
179
+ dark: {
180
+ palettes: {
181
+ black: AlphaOnlyShades;
182
+ white: AlphaOnlyShades;
183
+ tomato: ColorShades;
184
+ red: ColorShades;
185
+ ruby: ColorShades;
186
+ crimson: ColorShades;
187
+ pink: ColorShades;
188
+ plum: ColorShades;
189
+ purple: ColorShades;
190
+ violet: ColorShades;
191
+ iris: ColorShades;
192
+ cyan: ColorShades;
193
+ teal: ColorShades;
194
+ jade: ColorShades;
195
+ green: ColorShades;
196
+ grass: ColorShades;
197
+ brown: ColorShades;
198
+ blue: ColorShades;
199
+ orange: ColorShades;
200
+ indigo: ColorShades;
201
+ sky: ColorShades;
202
+ mint: ColorShades;
203
+ yellow: ColorShades;
204
+ amber: ColorShades;
205
+ lime: ColorShades;
206
+ lemon: ColorShades;
207
+ magenta: ColorShades;
208
+ gold: ColorShades;
209
+ bronze: ColorShades;
210
+ gray: ColorShades;
211
+ };
212
+ background: string;
213
+ overlay: string;
214
+ panelSolid: string;
215
+ panelTranslucent: string;
216
+ surface: string;
217
+ stroke: string;
218
+ };
219
+ };
220
+ };
221
+ export type { ColorShades, FontWeightKey, TypographyStepKey };
222
+ //# sourceMappingURL=theme-vars.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-vars.d.ts","sourceRoot":"","sources":["../../src/lib/theme-vars.ts"],"names":[],"mappings":"AAMA,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWN,CAAC;AAEX,KAAK,iBAAiB,GAAG,MAAM,OAAO,UAAU,CAAC;AAEjD,QAAA,MAAM,WAAW;;;;;;CAMP,CAAC;AAEX,KAAK,aAAa,GAAG,MAAM,OAAO,WAAW,CAAC;AAK9C,KAAK,QAAQ,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzF,KAAK,aAAa,GACd,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,KAAK,GACL,KAAK,CAAC;AAEV,KAAK,WAAW,GAAG;KAChB,CAAC,IAAI,QAAQ,GAAG,MAAM;CACxB,GAAG;IACF,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG;KACD,CAAC,IAAI,aAAa,GAAG,MAAM;CAC7B,CAAC;AAoIF,KAAK,eAAe,GAAG;KAAG,CAAC,IAAI,aAAa,GAAG,MAAM;CAAE,CAAC;AAqBxD,wBAAgB,qBAAqB;;;EAKpC;AAED,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBrB,CAAC;AAEF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC"}