@starci/grammar 0.3.0 → 0.4.1

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 (250) hide show
  1. package/README.md +74 -39
  2. package/dist/common/conformance.d.ts +31 -0
  3. package/dist/common/conformance.d.ts.map +1 -0
  4. package/dist/common/conformance.js +33 -0
  5. package/dist/common/conformance.js.map +1 -0
  6. package/dist/common/index.d.ts +5 -5
  7. package/dist/common/index.d.ts.map +1 -1
  8. package/dist/common/index.js +5 -10
  9. package/dist/common/index.js.map +1 -1
  10. package/dist/common/registry.d.ts +79 -0
  11. package/dist/common/registry.d.ts.map +1 -0
  12. package/dist/common/registry.js +34 -0
  13. package/dist/common/registry.js.map +1 -0
  14. package/dist/common/renderers.d.ts +41 -0
  15. package/dist/common/renderers.d.ts.map +1 -0
  16. package/dist/common/renderers.js +44 -0
  17. package/dist/common/renderers.js.map +1 -0
  18. package/dist/common/rule-catalog.generated.d.ts +40 -0
  19. package/dist/common/rule-catalog.generated.d.ts.map +1 -0
  20. package/dist/common/rule-catalog.generated.js +230 -0
  21. package/dist/common/rule-catalog.generated.js.map +1 -0
  22. package/dist/common/spacing.d.ts +20 -0
  23. package/dist/common/spacing.d.ts.map +1 -0
  24. package/dist/common/spacing.js +18 -0
  25. package/dist/common/spacing.js.map +1 -0
  26. package/dist/common/state.d.ts +6 -0
  27. package/dist/common/state.d.ts.map +1 -0
  28. package/dist/common/state.js +11 -0
  29. package/dist/common/state.js.map +1 -0
  30. package/dist/common/styles.css +1566 -2
  31. package/dist/core/OtpInput.d.ts.map +1 -1
  32. package/dist/core/OtpInput.js +2 -1
  33. package/dist/core/OtpInput.js.map +1 -1
  34. package/dist/core/branch/MarkdownArticle/index.d.ts.map +1 -1
  35. package/dist/core/branch/MarkdownArticle/index.js +2 -2
  36. package/dist/core/branch/MarkdownArticle/index.js.map +1 -1
  37. package/dist/core/branch/Rail/classNames.d.ts.map +1 -1
  38. package/dist/core/branch/Rail/classNames.js +4 -4
  39. package/dist/core/branch/Rail/classNames.js.map +1 -1
  40. package/dist/core/branch/Rail/index.d.ts +4 -0
  41. package/dist/core/branch/Rail/index.d.ts.map +1 -1
  42. package/dist/core/branch/Rail/index.js +12 -2
  43. package/dist/core/branch/Rail/index.js.map +1 -1
  44. package/dist/core/branch/Subnav/classNames.d.ts +8 -0
  45. package/dist/core/branch/Subnav/classNames.d.ts.map +1 -0
  46. package/dist/core/branch/Subnav/classNames.js +9 -0
  47. package/dist/core/branch/Subnav/classNames.js.map +1 -0
  48. package/dist/core/branch/Subnav/index.d.ts +17 -0
  49. package/dist/core/branch/Subnav/index.d.ts.map +1 -0
  50. package/dist/core/branch/Subnav/index.js +6 -0
  51. package/dist/core/branch/Subnav/index.js.map +1 -0
  52. package/dist/core/branch/SurfaceAccordionCard/classNames.d.ts +6 -2
  53. package/dist/core/branch/SurfaceAccordionCard/classNames.d.ts.map +1 -1
  54. package/dist/core/branch/SurfaceAccordionCard/classNames.js +14 -9
  55. package/dist/core/branch/SurfaceAccordionCard/classNames.js.map +1 -1
  56. package/dist/core/branch/SurfaceAccordionCard/index.d.ts +8 -1
  57. package/dist/core/branch/SurfaceAccordionCard/index.d.ts.map +1 -1
  58. package/dist/core/branch/SurfaceAccordionCard/index.js +29 -11
  59. package/dist/core/branch/SurfaceAccordionCard/index.js.map +1 -1
  60. package/dist/core/branch/SurfaceCard/classNames.d.ts +11 -1
  61. package/dist/core/branch/SurfaceCard/classNames.d.ts.map +1 -1
  62. package/dist/core/branch/SurfaceCard/classNames.js +16 -7
  63. package/dist/core/branch/SurfaceCard/classNames.js.map +1 -1
  64. package/dist/core/branch/SurfaceCard/index.d.ts +11 -1
  65. package/dist/core/branch/SurfaceCard/index.d.ts.map +1 -1
  66. package/dist/core/branch/SurfaceCard/index.js +15 -4
  67. package/dist/core/branch/SurfaceCard/index.js.map +1 -1
  68. package/dist/core/branch/SurfaceListCard/classNames.d.ts +2 -0
  69. package/dist/core/branch/SurfaceListCard/classNames.d.ts.map +1 -1
  70. package/dist/core/branch/SurfaceListCard/classNames.js +7 -5
  71. package/dist/core/branch/SurfaceListCard/classNames.js.map +1 -1
  72. package/dist/core/branch/SurfaceListCard/index.d.ts.map +1 -1
  73. package/dist/core/branch/SurfaceListCard/index.js +3 -2
  74. package/dist/core/branch/SurfaceListCard/index.js.map +1 -1
  75. package/dist/core/branch/Tabs/classNames.d.ts +11 -0
  76. package/dist/core/branch/Tabs/classNames.d.ts.map +1 -0
  77. package/dist/core/branch/Tabs/classNames.js +13 -0
  78. package/dist/core/branch/Tabs/classNames.js.map +1 -0
  79. package/dist/core/branch/Tabs/index.d.ts +22 -0
  80. package/dist/core/branch/Tabs/index.d.ts.map +1 -0
  81. package/dist/core/branch/Tabs/index.js +28 -0
  82. package/dist/core/branch/Tabs/index.js.map +1 -0
  83. package/dist/core/branch/Tooltip/classNames.d.ts +3 -0
  84. package/dist/core/branch/Tooltip/classNames.d.ts.map +1 -0
  85. package/dist/core/branch/Tooltip/classNames.js +4 -0
  86. package/dist/core/branch/Tooltip/classNames.js.map +1 -0
  87. package/dist/core/branch/Tooltip/index.d.ts +18 -0
  88. package/dist/core/branch/Tooltip/index.d.ts.map +1 -0
  89. package/dist/core/branch/Tooltip/index.js +14 -0
  90. package/dist/core/branch/Tooltip/index.js.map +1 -0
  91. package/dist/core/classNames.d.ts.map +1 -1
  92. package/dist/core/classNames.js +3 -3
  93. package/dist/core/classNames.js.map +1 -1
  94. package/dist/core/composite/EmptyNotice/index.d.ts +17 -0
  95. package/dist/core/composite/EmptyNotice/index.d.ts.map +1 -0
  96. package/dist/core/composite/EmptyNotice/index.js +7 -0
  97. package/dist/core/composite/EmptyNotice/index.js.map +1 -0
  98. package/dist/core/composite/HorizontalScrollRegion/index.d.ts +2 -0
  99. package/dist/core/composite/HorizontalScrollRegion/index.d.ts.map +1 -1
  100. package/dist/core/composite/HorizontalScrollRegion/index.js +5 -2
  101. package/dist/core/composite/HorizontalScrollRegion/index.js.map +1 -1
  102. package/dist/core/composite/StaticStateRow/index.d.ts.map +1 -1
  103. package/dist/core/composite/StaticStateRow/index.js +1 -1
  104. package/dist/core/composite/StaticStateRow/index.js.map +1 -1
  105. package/dist/core/composite/VerticalScrollRegion/index.d.ts +2 -0
  106. package/dist/core/composite/VerticalScrollRegion/index.d.ts.map +1 -1
  107. package/dist/core/composite/VerticalScrollRegion/index.js +2 -2
  108. package/dist/core/composite/VerticalScrollRegion/index.js.map +1 -1
  109. package/dist/core/composition/ChatWorkspace/classNames.d.ts +30 -0
  110. package/dist/core/composition/ChatWorkspace/classNames.d.ts.map +1 -0
  111. package/dist/core/composition/ChatWorkspace/classNames.js +31 -0
  112. package/dist/core/composition/ChatWorkspace/classNames.js.map +1 -0
  113. package/dist/core/composition/ChatWorkspace/index.d.ts +48 -0
  114. package/dist/core/composition/ChatWorkspace/index.d.ts.map +1 -0
  115. package/dist/core/composition/ChatWorkspace/index.js +40 -0
  116. package/dist/core/composition/ChatWorkspace/index.js.map +1 -0
  117. package/dist/core/composition/NavigationFeatureNav/classNames.d.ts +9 -0
  118. package/dist/core/composition/NavigationFeatureNav/classNames.d.ts.map +1 -0
  119. package/dist/core/composition/NavigationFeatureNav/classNames.js +10 -0
  120. package/dist/core/composition/NavigationFeatureNav/classNames.js.map +1 -0
  121. package/dist/core/composition/NavigationFeatureNav/index.d.ts +26 -0
  122. package/dist/core/composition/NavigationFeatureNav/index.d.ts.map +1 -0
  123. package/dist/core/composition/NavigationFeatureNav/index.js +13 -0
  124. package/dist/core/composition/NavigationFeatureNav/index.js.map +1 -0
  125. package/dist/core/composition/PrimaryRailLayout/index.d.ts +14 -0
  126. package/dist/core/composition/PrimaryRailLayout/index.d.ts.map +1 -0
  127. package/dist/core/composition/PrimaryRailLayout/index.js +8 -0
  128. package/dist/core/composition/PrimaryRailLayout/index.js.map +1 -0
  129. package/dist/core/composition/Sidebar/index.d.ts +31 -0
  130. package/dist/core/composition/Sidebar/index.d.ts.map +1 -0
  131. package/dist/core/composition/Sidebar/index.js +40 -0
  132. package/dist/core/composition/Sidebar/index.js.map +1 -0
  133. package/dist/core/composition/WorkspaceShell/classNames.d.ts +11 -0
  134. package/dist/core/composition/WorkspaceShell/classNames.d.ts.map +1 -0
  135. package/dist/core/composition/WorkspaceShell/classNames.js +12 -0
  136. package/dist/core/composition/WorkspaceShell/classNames.js.map +1 -0
  137. package/dist/core/composition/WorkspaceShell/index.d.ts +67 -0
  138. package/dist/core/composition/WorkspaceShell/index.d.ts.map +1 -0
  139. package/dist/core/composition/WorkspaceShell/index.js +20 -0
  140. package/dist/core/composition/WorkspaceShell/index.js.map +1 -0
  141. package/dist/core/dna.d.ts +180 -0
  142. package/dist/core/dna.d.ts.map +1 -0
  143. package/dist/core/dna.js +175 -0
  144. package/dist/core/dna.js.map +1 -0
  145. package/dist/core/index.d.ts +58 -11
  146. package/dist/core/index.d.ts.map +1 -1
  147. package/dist/core/index.js +27 -11
  148. package/dist/core/index.js.map +1 -1
  149. package/dist/core/primitive/Badge/index.d.ts +12 -0
  150. package/dist/core/primitive/Badge/index.d.ts.map +1 -0
  151. package/dist/core/primitive/Badge/index.js +15 -0
  152. package/dist/core/primitive/Badge/index.js.map +1 -0
  153. package/dist/core/primitive/Button/index.d.ts +52 -0
  154. package/dist/core/primitive/Button/index.d.ts.map +1 -0
  155. package/dist/core/primitive/Button/index.js +26 -0
  156. package/dist/core/primitive/Button/index.js.map +1 -0
  157. package/dist/core/primitive/Divider/index.d.ts +7 -0
  158. package/dist/core/primitive/Divider/index.d.ts.map +1 -0
  159. package/dist/core/primitive/Divider/index.js +5 -0
  160. package/dist/core/primitive/Divider/index.js.map +1 -0
  161. package/dist/core/primitive/GrammarRoot/index.d.ts +10 -0
  162. package/dist/core/primitive/GrammarRoot/index.d.ts.map +1 -0
  163. package/dist/core/primitive/GrammarRoot/index.js +5 -0
  164. package/dist/core/primitive/GrammarRoot/index.js.map +1 -0
  165. package/dist/core/primitive/Heading/index.d.ts +15 -0
  166. package/dist/core/primitive/Heading/index.d.ts.map +1 -0
  167. package/dist/core/primitive/Heading/index.js +26 -0
  168. package/dist/core/primitive/Heading/index.js.map +1 -0
  169. package/dist/core/primitive/Icon/index.d.ts +31 -0
  170. package/dist/core/primitive/Icon/index.d.ts.map +1 -0
  171. package/dist/core/primitive/Icon/index.js +23 -0
  172. package/dist/core/primitive/Icon/index.js.map +1 -0
  173. package/dist/core/primitive/IconButton/index.d.ts +13 -0
  174. package/dist/core/primitive/IconButton/index.d.ts.map +1 -0
  175. package/dist/core/primitive/IconButton/index.js +9 -0
  176. package/dist/core/primitive/IconButton/index.js.map +1 -0
  177. package/dist/core/primitive/IconTile/index.d.ts +17 -0
  178. package/dist/core/primitive/IconTile/index.d.ts.map +1 -0
  179. package/dist/core/primitive/IconTile/index.js +32 -0
  180. package/dist/core/primitive/IconTile/index.js.map +1 -0
  181. package/dist/core/primitive/IncludedMark/index.d.ts +10 -0
  182. package/dist/core/primitive/IncludedMark/index.d.ts.map +1 -0
  183. package/dist/core/primitive/IncludedMark/index.js +8 -0
  184. package/dist/core/primitive/IncludedMark/index.js.map +1 -0
  185. package/dist/core/primitive/Input/index.d.ts +31 -0
  186. package/dist/core/primitive/Input/index.d.ts.map +1 -0
  187. package/dist/core/primitive/Input/index.js +27 -0
  188. package/dist/core/primitive/Input/index.js.map +1 -0
  189. package/dist/core/primitive/Label/classNames.d.ts +12 -0
  190. package/dist/core/primitive/Label/classNames.d.ts.map +1 -0
  191. package/dist/core/primitive/Label/classNames.js +13 -0
  192. package/dist/core/primitive/Label/classNames.js.map +1 -0
  193. package/dist/core/primitive/Label/index.d.ts +11 -0
  194. package/dist/core/primitive/Label/index.d.ts.map +1 -0
  195. package/dist/core/primitive/Label/index.js +14 -0
  196. package/dist/core/primitive/Label/index.js.map +1 -0
  197. package/dist/core/primitive/MediaFrame/index.d.ts +15 -0
  198. package/dist/core/primitive/MediaFrame/index.d.ts.map +1 -0
  199. package/dist/core/primitive/MediaFrame/index.js +8 -0
  200. package/dist/core/primitive/MediaFrame/index.js.map +1 -0
  201. package/dist/core/primitive/PageContainer/index.d.ts +9 -0
  202. package/dist/core/primitive/PageContainer/index.d.ts.map +1 -0
  203. package/dist/core/primitive/PageContainer/index.js +8 -0
  204. package/dist/core/primitive/PageContainer/index.js.map +1 -0
  205. package/dist/core/primitive/Progress/index.d.ts +11 -0
  206. package/dist/core/primitive/Progress/index.d.ts.map +1 -0
  207. package/dist/core/primitive/Progress/index.js +13 -0
  208. package/dist/core/primitive/Progress/index.js.map +1 -0
  209. package/dist/core/primitive/RankArtwork/index.d.ts +12 -0
  210. package/dist/core/primitive/RankArtwork/index.d.ts.map +1 -0
  211. package/dist/core/primitive/RankArtwork/index.js +14 -0
  212. package/dist/core/primitive/RankArtwork/index.js.map +1 -0
  213. package/dist/core/primitive/SectionHeader/index.d.ts +15 -0
  214. package/dist/core/primitive/SectionHeader/index.d.ts.map +1 -0
  215. package/dist/core/primitive/SectionHeader/index.js +6 -0
  216. package/dist/core/primitive/SectionHeader/index.js.map +1 -0
  217. package/dist/core/primitive/SurfaceCopyGroup/index.d.ts +7 -0
  218. package/dist/core/primitive/SurfaceCopyGroup/index.d.ts.map +1 -0
  219. package/dist/core/primitive/SurfaceCopyGroup/index.js +5 -0
  220. package/dist/core/primitive/SurfaceCopyGroup/index.js.map +1 -0
  221. package/dist/core/primitive/Text/index.d.ts +25 -0
  222. package/dist/core/primitive/Text/index.d.ts.map +1 -0
  223. package/dist/core/primitive/Text/index.js +57 -0
  224. package/dist/core/primitive/Text/index.js.map +1 -0
  225. package/dist/core/primitive/TextAction/index.d.ts +45 -0
  226. package/dist/core/primitive/TextAction/index.d.ts.map +1 -0
  227. package/dist/core/primitive/TextAction/index.js +112 -0
  228. package/dist/core/primitive/TextAction/index.js.map +1 -0
  229. package/dist/core/primitive/actionStyles.d.ts +5 -0
  230. package/dist/core/primitive/actionStyles.d.ts.map +1 -0
  231. package/dist/core/primitive/actionStyles.js +19 -0
  232. package/dist/core/primitive/actionStyles.js.map +1 -0
  233. package/dist/core/state.d.ts +2 -2
  234. package/dist/core/state.js +1 -1
  235. package/dist/core/styles.css +163 -592
  236. package/dist/heritage/index.d.ts +27 -0
  237. package/dist/heritage/index.d.ts.map +1 -0
  238. package/dist/heritage/index.js +44 -0
  239. package/dist/heritage/index.js.map +1 -0
  240. package/dist/heritage/styles.css +165 -0
  241. package/dist/offset-pop/index.d.ts +12 -0
  242. package/dist/offset-pop/index.d.ts.map +1 -0
  243. package/dist/offset-pop/index.js +41 -0
  244. package/dist/offset-pop/index.js.map +1 -0
  245. package/dist/offset-pop/styles.css +292 -393
  246. package/package.json +78 -68
  247. package/dist/core/scrollable-surfaces.spec.d.ts +0 -2
  248. package/dist/core/scrollable-surfaces.spec.d.ts.map +0 -1
  249. package/dist/core/scrollable-surfaces.spec.js +0 -37
  250. package/dist/core/scrollable-surfaces.spec.js.map +0 -1
@@ -0,0 +1,180 @@
1
+ /**
2
+ * Stable visual identity shipped by Core Grammar.
3
+ *
4
+ * This is presentation data, not a registry of UI laws. Product rules remain
5
+ * outside the package; consumers use these values to render the same StarCi
6
+ * family without rebuilding its palette, geometry or motion from memory.
7
+ */
8
+ export declare const STARCI_CORE_DNA: Readonly<{
9
+ readonly id: "starci-core";
10
+ readonly version: 1;
11
+ readonly color: Readonly<{
12
+ accent: "#7547ff";
13
+ accentForeground: "oklch(100% 0 0)";
14
+ focus: "#7248ff";
15
+ light: Readonly<{
16
+ canvas: "oklch(97.02% 0.0015 354.13)";
17
+ surface: "oklch(100% 0.0008 354.13)";
18
+ surfaceSecondary: "oklch(95.24% 0.0012 354.13)";
19
+ foreground: "oklch(21.03% 0.0015 354.13)";
20
+ muted: "oklch(55.17% 0.003 354.13)";
21
+ border: "oklch(90% 0.0015 354.13)";
22
+ separator: "oklch(92% 0.0015 354.13)";
23
+ success: "oklch(73.29% 0.1941 162.85)";
24
+ successForeground: "oklch(21.03% 0.0059 162.85)";
25
+ warning: "oklch(78.19% 0.159 84.37)";
26
+ warningForeground: "oklch(21.03% 0.0059 84.37)";
27
+ danger: "oklch(65.32% 0.2335 37.78)";
28
+ dangerForeground: "oklch(99.11% 0 0)";
29
+ info: "oklch(72% 0.17 250)";
30
+ infoForeground: "oklch(21.03% 0.0059 250)";
31
+ }>;
32
+ dark: Readonly<{
33
+ canvas: "oklch(12% 0.0015 354.13)";
34
+ surface: "oklch(21.03% 0.003 354.13)";
35
+ surfaceSecondary: "oklch(25.7% 0.0023 354.13)";
36
+ foreground: "oklch(99.11% 0.0015 354.13)";
37
+ muted: "oklch(70.5% 0.003 354.13)";
38
+ border: "oklch(28% 0.0015 354.13)";
39
+ separator: "oklch(25% 0.0015 354.13)";
40
+ success: "oklch(73.29% 0.1941 162.85)";
41
+ successForeground: "oklch(21.03% 0.0059 162.85)";
42
+ warning: "oklch(82.03% 0.1392 88.38)";
43
+ warningForeground: "oklch(21.03% 0.0059 88.38)";
44
+ danger: "oklch(59.4% 0.1973 36.67)";
45
+ dangerForeground: "oklch(99.11% 0 0)";
46
+ info: "oklch(72% 0.17 250)";
47
+ infoForeground: "oklch(21.03% 0.0059 250)";
48
+ }>;
49
+ }>;
50
+ readonly geometry: Readonly<{
51
+ pageMeasure: "80rem";
52
+ readingMeasure: "72ch";
53
+ surfaceRadius: "1rem";
54
+ controlRadius: "0.75rem";
55
+ pillRadius: "999px";
56
+ }>;
57
+ readonly rhythm: Readonly<{
58
+ inlineGap: "0.5rem";
59
+ rowGap: "0.75rem";
60
+ sectionGap: "1rem";
61
+ regionGap: "1.5rem";
62
+ pageInset: "clamp(1rem, 3vw, 2rem)";
63
+ }>;
64
+ readonly elevation: Readonly<{
65
+ surface: "0 8px 28px oklch(21.03% 0.0059 354.13 / 0.07)";
66
+ }>;
67
+ readonly motion: Readonly<{
68
+ duration: "180ms";
69
+ easing: "cubic-bezier(0.2, 0, 0, 1)";
70
+ }>;
71
+ }>;
72
+ /** Canonical 4px spacing scale shared by Core components and host composition. */
73
+ export declare const STARCI_CORE_SPACING_SCALE: Readonly<{
74
+ readonly "0": "0rem";
75
+ readonly "0.5": "0.125rem";
76
+ readonly "1": "0.25rem";
77
+ readonly "1.5": "0.375rem";
78
+ readonly "2": "0.5rem";
79
+ readonly "2.5": "0.625rem";
80
+ readonly "3": "0.75rem";
81
+ readonly "4": "1rem";
82
+ readonly "5": "1.25rem";
83
+ readonly "6": "1.5rem";
84
+ readonly "8": "2rem";
85
+ readonly "10": "2.5rem";
86
+ readonly "12": "3rem";
87
+ readonly "16": "4rem";
88
+ }>;
89
+ export type StarCiCoreSpacingStep = keyof typeof STARCI_CORE_SPACING_SCALE;
90
+ export type StarCiCoreSpacingValue = (typeof STARCI_CORE_SPACING_SCALE)[StarCiCoreSpacingStep];
91
+ /** CSS custom-property contract for adapting Core without renaming its anatomy. */
92
+ export declare const STARCI_CORE_TOKEN_NAMES: Readonly<{
93
+ readonly accent: "--starci-core-accent";
94
+ readonly accentForeground: "--starci-core-accent-foreground";
95
+ readonly focus: "--starci-core-focus";
96
+ readonly canvas: "--starci-core-canvas";
97
+ readonly surface: "--starci-core-surface";
98
+ readonly surfaceSecondary: "--starci-core-surface-secondary";
99
+ readonly foreground: "--starci-core-foreground";
100
+ readonly muted: "--starci-core-muted";
101
+ readonly border: "--starci-core-border";
102
+ readonly separator: "--starci-core-separator";
103
+ readonly success: "--starci-core-success";
104
+ readonly successForeground: "--starci-core-success-foreground";
105
+ readonly warning: "--starci-core-warning";
106
+ readonly warningForeground: "--starci-core-warning-foreground";
107
+ readonly danger: "--starci-core-danger";
108
+ readonly dangerForeground: "--starci-core-danger-foreground";
109
+ readonly info: "--starci-core-info";
110
+ readonly infoForeground: "--starci-core-info-foreground";
111
+ readonly pageMeasure: "--starci-core-page-measure";
112
+ readonly readingMeasure: "--starci-core-reading-measure";
113
+ readonly surfaceRadius: "--starci-core-surface-radius";
114
+ readonly controlRadius: "--starci-core-control-radius";
115
+ readonly pillRadius: "--starci-core-pill-radius";
116
+ readonly pageInset: "--starci-core-page-inset";
117
+ readonly inlineGap: "--starci-core-inline-gap";
118
+ readonly rowGap: "--starci-core-row-gap";
119
+ readonly sectionGap: "--starci-core-section-gap";
120
+ readonly regionGap: "--starci-core-region-gap";
121
+ readonly elevation: "--starci-core-surface-shadow";
122
+ readonly motionDuration: "--starci-core-motion-duration";
123
+ readonly motionEasing: "--starci-core-motion-easing";
124
+ }>;
125
+ export type StarCiCoreDna = typeof STARCI_CORE_DNA;
126
+ export type StarCiCoreTokenName = (typeof STARCI_CORE_TOKEN_NAMES)[keyof typeof STARCI_CORE_TOKEN_NAMES];
127
+ /** Portable light/default values keyed by the public CSS custom-property contract. */
128
+ export declare const STARCI_CORE_TOKEN_DEFAULTS: Readonly<{
129
+ "--starci-core-accent": "#7547ff";
130
+ "--starci-core-accent-foreground": "oklch(100% 0 0)";
131
+ "--starci-core-focus": "#7248ff";
132
+ "--starci-core-canvas": "oklch(97.02% 0.0015 354.13)";
133
+ "--starci-core-surface": "oklch(100% 0.0008 354.13)";
134
+ "--starci-core-surface-secondary": "oklch(95.24% 0.0012 354.13)";
135
+ "--starci-core-foreground": "oklch(21.03% 0.0015 354.13)";
136
+ "--starci-core-muted": "oklch(55.17% 0.003 354.13)";
137
+ "--starci-core-border": "oklch(90% 0.0015 354.13)";
138
+ "--starci-core-separator": "oklch(92% 0.0015 354.13)";
139
+ "--starci-core-success": "oklch(73.29% 0.1941 162.85)";
140
+ "--starci-core-success-foreground": "oklch(21.03% 0.0059 162.85)";
141
+ "--starci-core-warning": "oklch(78.19% 0.159 84.37)";
142
+ "--starci-core-warning-foreground": "oklch(21.03% 0.0059 84.37)";
143
+ "--starci-core-danger": "oklch(65.32% 0.2335 37.78)";
144
+ "--starci-core-danger-foreground": "oklch(99.11% 0 0)";
145
+ "--starci-core-info": "oklch(72% 0.17 250)";
146
+ "--starci-core-info-foreground": "oklch(21.03% 0.0059 250)";
147
+ "--starci-core-page-measure": "80rem";
148
+ "--starci-core-reading-measure": "72ch";
149
+ "--starci-core-surface-radius": "1rem";
150
+ "--starci-core-control-radius": "0.75rem";
151
+ "--starci-core-pill-radius": "999px";
152
+ "--starci-core-page-inset": "clamp(1rem, 3vw, 2rem)";
153
+ "--starci-core-inline-gap": "0.5rem";
154
+ "--starci-core-row-gap": "0.75rem";
155
+ "--starci-core-section-gap": "1rem";
156
+ "--starci-core-region-gap": "1.5rem";
157
+ "--starci-core-surface-shadow": "0 8px 28px oklch(21.03% 0.0059 354.13 / 0.07)";
158
+ "--starci-core-motion-duration": "180ms";
159
+ "--starci-core-motion-easing": "cubic-bezier(0.2, 0, 0, 1)";
160
+ }>;
161
+ /** Theme overrides layered on the default token set by `GrammarRoot` dark mode. */
162
+ export declare const STARCI_CORE_DARK_TOKEN_DEFAULTS: Readonly<{
163
+ "--starci-core-canvas": "oklch(12% 0.0015 354.13)";
164
+ "--starci-core-surface": "oklch(21.03% 0.003 354.13)";
165
+ "--starci-core-surface-secondary": "oklch(25.7% 0.0023 354.13)";
166
+ "--starci-core-foreground": "oklch(99.11% 0.0015 354.13)";
167
+ "--starci-core-muted": "oklch(70.5% 0.003 354.13)";
168
+ "--starci-core-border": "oklch(28% 0.0015 354.13)";
169
+ "--starci-core-separator": "oklch(25% 0.0015 354.13)";
170
+ "--starci-core-success": "oklch(73.29% 0.1941 162.85)";
171
+ "--starci-core-success-foreground": "oklch(21.03% 0.0059 162.85)";
172
+ "--starci-core-warning": "oklch(82.03% 0.1392 88.38)";
173
+ "--starci-core-warning-foreground": "oklch(21.03% 0.0059 88.38)";
174
+ "--starci-core-danger": "oklch(59.4% 0.1973 36.67)";
175
+ "--starci-core-danger-foreground": "oklch(99.11% 0 0)";
176
+ "--starci-core-info": "oklch(72% 0.17 250)";
177
+ "--starci-core-info-foreground": "oklch(21.03% 0.0059 250)";
178
+ }>;
179
+ export type StarCiCoreTokenDefaults = typeof STARCI_CORE_TOKEN_DEFAULTS;
180
+ //# sourceMappingURL=dna.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dna.d.ts","sourceRoot":"","sources":["../../src/core/dna.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+DjB,CAAA;AAEX,kFAAkF;AAClF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;EAe3B,CAAA;AAEX,MAAM,MAAM,qBAAqB,GAAG,MAAM,OAAO,yBAAyB,CAAA;AAC1E,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,qBAAqB,CAAC,CAAA;AAE9F,mFAAmF;AACnF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCzB,CAAA;AAEX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAA;AAClD,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,OAAO,uBAAuB,CAAC,CAAA;AAExG,sFAAsF;AACtF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCmB,CAAA;AAE1D,mFAAmF;AACnF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;EAgBuB,CAAA;AAEnE,MAAM,MAAM,uBAAuB,GAAG,OAAO,0BAA0B,CAAA"}
@@ -0,0 +1,175 @@
1
+ /**
2
+ * Stable visual identity shipped by Core Grammar.
3
+ *
4
+ * This is presentation data, not a registry of UI laws. Product rules remain
5
+ * outside the package; consumers use these values to render the same StarCi
6
+ * family without rebuilding its palette, geometry or motion from memory.
7
+ */
8
+ export const STARCI_CORE_DNA = Object.freeze({
9
+ id: "starci-core",
10
+ version: 1,
11
+ color: Object.freeze({
12
+ accent: "#7547ff",
13
+ accentForeground: "oklch(100% 0 0)",
14
+ focus: "#7248ff",
15
+ light: Object.freeze({
16
+ canvas: "oklch(97.02% 0.0015 354.13)",
17
+ surface: "oklch(100% 0.0008 354.13)",
18
+ surfaceSecondary: "oklch(95.24% 0.0012 354.13)",
19
+ foreground: "oklch(21.03% 0.0015 354.13)",
20
+ muted: "oklch(55.17% 0.003 354.13)",
21
+ border: "oklch(90% 0.0015 354.13)",
22
+ separator: "oklch(92% 0.0015 354.13)",
23
+ success: "oklch(73.29% 0.1941 162.85)",
24
+ successForeground: "oklch(21.03% 0.0059 162.85)",
25
+ warning: "oklch(78.19% 0.159 84.37)",
26
+ warningForeground: "oklch(21.03% 0.0059 84.37)",
27
+ danger: "oklch(65.32% 0.2335 37.78)",
28
+ dangerForeground: "oklch(99.11% 0 0)",
29
+ info: "oklch(72% 0.17 250)",
30
+ infoForeground: "oklch(21.03% 0.0059 250)",
31
+ }),
32
+ dark: Object.freeze({
33
+ canvas: "oklch(12% 0.0015 354.13)",
34
+ surface: "oklch(21.03% 0.003 354.13)",
35
+ surfaceSecondary: "oklch(25.7% 0.0023 354.13)",
36
+ foreground: "oklch(99.11% 0.0015 354.13)",
37
+ muted: "oklch(70.5% 0.003 354.13)",
38
+ border: "oklch(28% 0.0015 354.13)",
39
+ separator: "oklch(25% 0.0015 354.13)",
40
+ success: "oklch(73.29% 0.1941 162.85)",
41
+ successForeground: "oklch(21.03% 0.0059 162.85)",
42
+ warning: "oklch(82.03% 0.1392 88.38)",
43
+ warningForeground: "oklch(21.03% 0.0059 88.38)",
44
+ danger: "oklch(59.4% 0.1973 36.67)",
45
+ dangerForeground: "oklch(99.11% 0 0)",
46
+ info: "oklch(72% 0.17 250)",
47
+ infoForeground: "oklch(21.03% 0.0059 250)",
48
+ }),
49
+ }),
50
+ geometry: Object.freeze({
51
+ pageMeasure: "80rem",
52
+ readingMeasure: "72ch",
53
+ surfaceRadius: "1rem",
54
+ controlRadius: "0.75rem",
55
+ pillRadius: "999px",
56
+ }),
57
+ rhythm: Object.freeze({
58
+ inlineGap: "0.5rem",
59
+ rowGap: "0.75rem",
60
+ sectionGap: "1rem",
61
+ regionGap: "1.5rem",
62
+ pageInset: "clamp(1rem, 3vw, 2rem)",
63
+ }),
64
+ elevation: Object.freeze({
65
+ surface: "0 8px 28px oklch(21.03% 0.0059 354.13 / 0.07)",
66
+ }),
67
+ motion: Object.freeze({
68
+ duration: "180ms",
69
+ easing: "cubic-bezier(0.2, 0, 0, 1)",
70
+ }),
71
+ });
72
+ /** Canonical 4px spacing scale shared by Core components and host composition. */
73
+ export const STARCI_CORE_SPACING_SCALE = Object.freeze({
74
+ "0": "0rem",
75
+ "0.5": "0.125rem",
76
+ "1": "0.25rem",
77
+ "1.5": "0.375rem",
78
+ "2": "0.5rem",
79
+ "2.5": "0.625rem",
80
+ "3": "0.75rem",
81
+ "4": "1rem",
82
+ "5": "1.25rem",
83
+ "6": "1.5rem",
84
+ "8": "2rem",
85
+ "10": "2.5rem",
86
+ "12": "3rem",
87
+ "16": "4rem",
88
+ });
89
+ /** CSS custom-property contract for adapting Core without renaming its anatomy. */
90
+ export const STARCI_CORE_TOKEN_NAMES = Object.freeze({
91
+ accent: "--starci-core-accent",
92
+ accentForeground: "--starci-core-accent-foreground",
93
+ focus: "--starci-core-focus",
94
+ canvas: "--starci-core-canvas",
95
+ surface: "--starci-core-surface",
96
+ surfaceSecondary: "--starci-core-surface-secondary",
97
+ foreground: "--starci-core-foreground",
98
+ muted: "--starci-core-muted",
99
+ border: "--starci-core-border",
100
+ separator: "--starci-core-separator",
101
+ success: "--starci-core-success",
102
+ successForeground: "--starci-core-success-foreground",
103
+ warning: "--starci-core-warning",
104
+ warningForeground: "--starci-core-warning-foreground",
105
+ danger: "--starci-core-danger",
106
+ dangerForeground: "--starci-core-danger-foreground",
107
+ info: "--starci-core-info",
108
+ infoForeground: "--starci-core-info-foreground",
109
+ pageMeasure: "--starci-core-page-measure",
110
+ readingMeasure: "--starci-core-reading-measure",
111
+ surfaceRadius: "--starci-core-surface-radius",
112
+ controlRadius: "--starci-core-control-radius",
113
+ pillRadius: "--starci-core-pill-radius",
114
+ pageInset: "--starci-core-page-inset",
115
+ inlineGap: "--starci-core-inline-gap",
116
+ rowGap: "--starci-core-row-gap",
117
+ sectionGap: "--starci-core-section-gap",
118
+ regionGap: "--starci-core-region-gap",
119
+ elevation: "--starci-core-surface-shadow",
120
+ motionDuration: "--starci-core-motion-duration",
121
+ motionEasing: "--starci-core-motion-easing",
122
+ });
123
+ /** Portable light/default values keyed by the public CSS custom-property contract. */
124
+ export const STARCI_CORE_TOKEN_DEFAULTS = Object.freeze({
125
+ "--starci-core-accent": STARCI_CORE_DNA.color.accent,
126
+ "--starci-core-accent-foreground": STARCI_CORE_DNA.color.accentForeground,
127
+ "--starci-core-focus": STARCI_CORE_DNA.color.focus,
128
+ "--starci-core-canvas": STARCI_CORE_DNA.color.light.canvas,
129
+ "--starci-core-surface": STARCI_CORE_DNA.color.light.surface,
130
+ "--starci-core-surface-secondary": STARCI_CORE_DNA.color.light.surfaceSecondary,
131
+ "--starci-core-foreground": STARCI_CORE_DNA.color.light.foreground,
132
+ "--starci-core-muted": STARCI_CORE_DNA.color.light.muted,
133
+ "--starci-core-border": STARCI_CORE_DNA.color.light.border,
134
+ "--starci-core-separator": STARCI_CORE_DNA.color.light.separator,
135
+ "--starci-core-success": STARCI_CORE_DNA.color.light.success,
136
+ "--starci-core-success-foreground": STARCI_CORE_DNA.color.light.successForeground,
137
+ "--starci-core-warning": STARCI_CORE_DNA.color.light.warning,
138
+ "--starci-core-warning-foreground": STARCI_CORE_DNA.color.light.warningForeground,
139
+ "--starci-core-danger": STARCI_CORE_DNA.color.light.danger,
140
+ "--starci-core-danger-foreground": STARCI_CORE_DNA.color.light.dangerForeground,
141
+ "--starci-core-info": STARCI_CORE_DNA.color.light.info,
142
+ "--starci-core-info-foreground": STARCI_CORE_DNA.color.light.infoForeground,
143
+ "--starci-core-page-measure": STARCI_CORE_DNA.geometry.pageMeasure,
144
+ "--starci-core-reading-measure": STARCI_CORE_DNA.geometry.readingMeasure,
145
+ "--starci-core-surface-radius": STARCI_CORE_DNA.geometry.surfaceRadius,
146
+ "--starci-core-control-radius": STARCI_CORE_DNA.geometry.controlRadius,
147
+ "--starci-core-pill-radius": STARCI_CORE_DNA.geometry.pillRadius,
148
+ "--starci-core-page-inset": STARCI_CORE_DNA.rhythm.pageInset,
149
+ "--starci-core-inline-gap": STARCI_CORE_DNA.rhythm.inlineGap,
150
+ "--starci-core-row-gap": STARCI_CORE_DNA.rhythm.rowGap,
151
+ "--starci-core-section-gap": STARCI_CORE_DNA.rhythm.sectionGap,
152
+ "--starci-core-region-gap": STARCI_CORE_DNA.rhythm.regionGap,
153
+ "--starci-core-surface-shadow": STARCI_CORE_DNA.elevation.surface,
154
+ "--starci-core-motion-duration": STARCI_CORE_DNA.motion.duration,
155
+ "--starci-core-motion-easing": STARCI_CORE_DNA.motion.easing,
156
+ });
157
+ /** Theme overrides layered on the default token set by `GrammarRoot` dark mode. */
158
+ export const STARCI_CORE_DARK_TOKEN_DEFAULTS = Object.freeze({
159
+ "--starci-core-canvas": STARCI_CORE_DNA.color.dark.canvas,
160
+ "--starci-core-surface": STARCI_CORE_DNA.color.dark.surface,
161
+ "--starci-core-surface-secondary": STARCI_CORE_DNA.color.dark.surfaceSecondary,
162
+ "--starci-core-foreground": STARCI_CORE_DNA.color.dark.foreground,
163
+ "--starci-core-muted": STARCI_CORE_DNA.color.dark.muted,
164
+ "--starci-core-border": STARCI_CORE_DNA.color.dark.border,
165
+ "--starci-core-separator": STARCI_CORE_DNA.color.dark.separator,
166
+ "--starci-core-success": STARCI_CORE_DNA.color.dark.success,
167
+ "--starci-core-success-foreground": STARCI_CORE_DNA.color.dark.successForeground,
168
+ "--starci-core-warning": STARCI_CORE_DNA.color.dark.warning,
169
+ "--starci-core-warning-foreground": STARCI_CORE_DNA.color.dark.warningForeground,
170
+ "--starci-core-danger": STARCI_CORE_DNA.color.dark.danger,
171
+ "--starci-core-danger-foreground": STARCI_CORE_DNA.color.dark.dangerForeground,
172
+ "--starci-core-info": STARCI_CORE_DNA.color.dark.info,
173
+ "--starci-core-info-foreground": STARCI_CORE_DNA.color.dark.infoForeground,
174
+ });
175
+ //# sourceMappingURL=dna.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dna.js","sourceRoot":"","sources":["../../src/core/dna.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,60 @@
1
+ import { defineGrammarFamily, type GrammarRootProps } from "../common/index.js";
1
2
  export type { PresentationState } from "./state.js";
2
- export { StateMark, type StateMarkProps } from "./StateMark.js";
3
- export { LeadingNumber, type LeadingNumberProps } from "./LeadingNumber.js";
4
- export { OtpInput, type OtpInputProps } from "./OtpInput.js";
5
- export { StaticStateRow, type StaticStateRowData, type StaticStateRowProps } from "./composite/StaticStateRow/index.js";
6
- export { HorizontalScrollRegion, type HorizontalScrollRegionProps } from "./composite/HorizontalScrollRegion/index.js";
7
- export { SurfaceCard, type SurfaceCardProps, type WholeCardAction } from "./branch/SurfaceCard/index.js";
8
- export { SurfaceListCard, type SurfaceListCardProps } from "./branch/SurfaceListCard/index.js";
9
- export { FencedCodeBlock, MarkdownArticle, MarkdownTableFrame, type FencedCodeBlockProps, type MarkdownArticleProps, type MarkdownTableFrameProps } from "./branch/MarkdownArticle/index.js";
10
- export { SurfaceAccordionCard, type SurfaceAccordionCardItem, type SurfaceAccordionCardProps } from "./branch/SurfaceAccordionCard/index.js";
11
- export { Rail, type RailProps } from "./branch/Rail/index.js";
12
- export { formCompactSurfaceClassName, formFieldClassName, formPageClassName, formScreenReaderLabelClassName, formScrollViewportClassName, formSurfaceClassName, horizontalScrollRegionClassName } from "./classNames.js";
3
+ export { STARCI_CORE_DARK_TOKEN_DEFAULTS, STARCI_CORE_DNA, STARCI_CORE_SPACING_SCALE, STARCI_CORE_TOKEN_DEFAULTS, STARCI_CORE_TOKEN_NAMES, type StarCiCoreDna, type StarCiCoreSpacingStep, type StarCiCoreSpacingValue, type StarCiCoreTokenDefaults, type StarCiCoreTokenName, } from "./dna.js";
4
+ /** @deprecated Use COMMON_GRAMMAR_COMPONENTS from `@starci/grammar/common`. */
5
+ export declare const CORE_GRAMMAR_COMPONENTS: Readonly<{
6
+ readonly Badge: ({ children, startContent, tone, isSkeleton }: import("./primitive/Badge/index.js").BadgeProps) => import("react").JSX.Element;
7
+ readonly Button: (props: import("./primitive/Button/index.js").ButtonProps) => import("react").JSX.Element;
8
+ readonly ChatWorkspace: (props: import("./composition/ChatWorkspace/index.js").ChatWorkspaceProps) => import("react").JSX.Element;
9
+ readonly Divider: ({ label }: import("./primitive/Divider/index.js").DividerProps) => import("react").JSX.Element;
10
+ readonly EmptyNotice: ({ message, description, iconSource, actionLabel, actionStartContent, actionVariant, isActionPending, onAction, }: import("./composite/EmptyNotice/index.js").EmptyNoticeProps) => import("react").JSX.Element;
11
+ readonly FencedCodeBlock: (props: import("./branch/MarkdownArticle/index.js").FencedCodeBlockProps) => import("react").JSX.Element;
12
+ readonly GrammarRoot: ({ className, theme, ...props }: GrammarRootProps) => import("react").JSX.Element;
13
+ readonly Heading: ({ children, level, scale, isSkeleton, isVisuallyHidden, }: import("./primitive/Heading/index.js").HeadingProps) => import("react").JSX.Element;
14
+ readonly HorizontalScrollRegion: import("react").ForwardRefExoticComponent<Omit<import("./composite/HorizontalScrollRegion/index.js").HorizontalScrollRegionProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
15
+ readonly Icon: ({ source: Source, usage, ariaLabel, isSkeleton }: import("./primitive/Icon/index.js").IconProps) => import("react").JSX.Element;
16
+ readonly IconButton: ({ source, label, isActive, isDisabled, isSkeleton, onPress, }: import("./primitive/IconButton/index.js").IconButtonProps) => import("react").JSX.Element;
17
+ readonly IconTile: ({ source, artwork, ariaLabel, tone, size, isSkeleton, }: import("./primitive/IconTile/index.js").IconTileProps) => import("react").JSX.Element;
18
+ readonly IncludedMark: ({ className, label, ...props }: import("./primitive/IncludedMark/index.js").IncludedMarkProps) => import("react").JSX.Element;
19
+ readonly Input: ({ id, name, label, kind: kindName, variant, placeholder, defaultValue, value, hint, errorMessage, isError, isDisabled, isRequired, isSkeleton, revealLabel, hideLabel, revealIcon: RevealIcon, hideIcon: HideIcon, onValueChange, }: import("./primitive/Input/index.js").InputProps) => import("react").JSX.Element;
20
+ readonly Label: ({ id, children, depth, as }: import("./primitive/Label/index.js").LabelProps) => import("react").JSX.Element;
21
+ readonly LeadingNumber: (props: import("./LeadingNumber.js").LeadingNumberProps) => import("react").JSX.Element;
22
+ readonly MarkdownArticle: (props: import("./branch/MarkdownArticle/index.js").MarkdownArticleProps) => import("react").JSX.Element;
23
+ readonly MarkdownTableFrame: (props: import("./branch/MarkdownArticle/index.js").MarkdownTableFrameProps) => import("react").JSX.Element;
24
+ readonly MediaFrame: ({ children, caption, aspect, fit, treatment, className, }: import("./primitive/MediaFrame/index.js").MediaFrameProps) => import("react").JSX.Element;
25
+ readonly NavigationFeatureNav: ({ identity, navigation, navigationLabel, compactNavigationTrigger, compactNavigationTriggerLabel, actions, actionsLabel, featureNavigation, featureNavigationLabel, measure, position, className, ...headerProps }: import("./composition/NavigationFeatureNav/index.js").NavigationFeatureNavProps) => import("react").JSX.Element;
26
+ readonly OtpInput: (props: import("./OtpInput.js").OtpInputProps) => import("react").JSX.Element;
27
+ readonly PageContainer: ({ className, measure, ...props }: import("./primitive/PageContainer/index.js").PageContainerProps) => import("react").JSX.Element;
28
+ readonly PrimaryRailLayout: ({ primary, rail, railWidth, align, className, }: import("./composition/PrimaryRailLayout/index.js").PrimaryRailLayoutProps) => import("react").JSX.Element;
29
+ readonly Progress: ({ label, value, isSkeleton }: import("./primitive/Progress/index.js").ProgressProps) => import("react").JSX.Element;
30
+ readonly Rail: (props: import("./branch/Rail/index.js").RailProps) => import("react").JSX.Element;
31
+ readonly RankArtwork: ({ className, kind, label, ...props }: import("./primitive/RankArtwork/index.js").RankArtworkProps) => import("react").JSX.Element;
32
+ readonly SectionHeader: ({ title, description, eyebrow, action, level, className, id, composition, }: import("./primitive/SectionHeader/index.js").SectionHeaderProps) => import("react").JSX.Element;
33
+ readonly Sidebar: ({ label, groups, selectedKey, presentation, isCollapsed, collapseLabel, expandLabel, toggleSource, header, footer, onAction, onCollapsedChange, }: import("./composition/Sidebar/index.js").SidebarProps) => import("react").JSX.Element;
34
+ readonly StateMark: (props: import("./StateMark.js").StateMarkProps) => import("react").JSX.Element | null;
35
+ readonly StaticStateRow: (props: import("./composite/StaticStateRow/index.js").StaticStateRowProps) => import("react").JSX.Element;
36
+ readonly Subnav: ({ label, title, leading, menuIcon, openMenuLabel, closeMenuLabel, isMenuOpen, onMenuOpenChange, position, visibility, className, ...navProps }: import("./branch/Subnav/index.js").SubnavProps) => import("react").JSX.Element;
37
+ readonly SurfaceAccordionCard: <Summary, Body>(props: import("./branch/SurfaceAccordionCard/index.js").SurfaceAccordionCardProps<Summary, Body>) => import("react").JSX.Element;
38
+ readonly SurfaceCard: (props: import("./branch/SurfaceCard/index.js").SurfaceCardProps) => import("react").JSX.Element;
39
+ readonly SurfaceCopyGroup: ({ className, density, ...props }: import("./primitive/SurfaceCopyGroup/index.js").SurfaceCopyGroupProps) => import("react").JSX.Element;
40
+ readonly SurfaceListCard: (props: import("./branch/SurfaceListCard/index.js").SurfaceListCardProps) => import("react").JSX.Element;
41
+ readonly Tabs: (props: import("./branch/Tabs/index.js").TabsProps) => import("react").JSX.Element;
42
+ readonly Text: ({ as: Element, id, children, startContent, size, tone, weight, live, isSkeleton, isSuperseded, parentEmphasis, }: import("./primitive/Text/index.js").TextProps) => import("react").JSX.Element;
43
+ readonly TextAction: (props: import("./primitive/TextAction/index.js").TextActionProps) => import("react").JSX.Element;
44
+ readonly Tooltip: ({ content, children, placement, }: import("./branch/Tooltip/index.js").TooltipProps) => import("react").JSX.Element;
45
+ readonly VerticalScrollRegion: (props: import("./composite/VerticalScrollRegion/index.js").VerticalScrollRegionProps) => import("react").JSX.Element;
46
+ readonly WorkspaceShell: (props: import("./composition/WorkspaceShell/index.js").WorkspaceShellProps) => import("react").JSX.Element;
47
+ }>;
48
+ export type CoreGrammarComponentName = keyof typeof CORE_GRAMMAR_COMPONENTS;
49
+ export declare const coreGrammar: import("./index.js").GrammarFamilyContract<"core", {}>;
50
+ export declare const CoreGrammarRoot: ({ className, theme, ...props }: GrammarRootProps) => import("react").JSX.Element;
51
+ export declare const coreRuleConformance: Readonly<{
52
+ familyId: string;
53
+ inheritedCommonRules: readonly string[];
54
+ familyEvidence: Readonly<{
55
+ [x: string]: readonly string[];
56
+ }>;
57
+ }>;
58
+ export { defineGrammarFamily };
59
+ export type { GrammarComponentRenderer, GrammarFamilyContract, GrammarFamilyStyles, } from "../common/index.js";
13
60
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACvH,OAAO,EAAE,sBAAsB,EAAE,KAAK,2BAA2B,EAAE,MAAM,6CAA6C,CAAA;AACtH,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,+BAA+B,CAAA;AACxG,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,KAAK,oBAAoB,EAAE,KAAK,oBAAoB,EAAE,KAAK,uBAAuB,EAAE,MAAM,mCAAmC,CAAA;AAC5L,OAAO,EAAE,oBAAoB,EAAE,KAAK,wBAAwB,EAAE,KAAK,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AAC5I,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAGH,mBAAmB,EAGnB,KAAK,gBAAgB,EACxB,MAAM,oBAAoB,CAAA;AAG3B,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EACH,+BAA+B,EAC/B,eAAe,EACf,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,EACvB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,GAC3B,MAAM,UAAU,CAAA;AAEjB,+EAA+E;AAC/E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA4B,CAAA;AAEhE,MAAM,MAAM,wBAAwB,GAAG,MAAM,OAAO,uBAAuB,CAAA;AAQ3E,eAAO,MAAM,WAAW,wDAOtB,CAAA;AAEF,eAAO,MAAM,eAAe,mFAAqC,CAAA;AAEjE,eAAO,MAAM,mBAAmB;;;;;;EAI9B,CAAA;AAGF,OAAO,EAAE,mBAAmB,EAAE,CAAA;AAC9B,YAAY,EACR,wBAAwB,EACxB,qBAAqB,EACrB,mBAAmB,GACtB,MAAM,oBAAoB,CAAA"}
@@ -1,12 +1,28 @@
1
- export { StateMark } from "./StateMark.js";
2
- export { LeadingNumber } from "./LeadingNumber.js";
3
- export { OtpInput } from "./OtpInput.js";
4
- export { StaticStateRow } from "./composite/StaticStateRow/index.js";
5
- export { HorizontalScrollRegion } from "./composite/HorizontalScrollRegion/index.js";
6
- export { SurfaceCard } from "./branch/SurfaceCard/index.js";
7
- export { SurfaceListCard } from "./branch/SurfaceListCard/index.js";
8
- export { FencedCodeBlock, MarkdownArticle, MarkdownTableFrame } from "./branch/MarkdownArticle/index.js";
9
- export { SurfaceAccordionCard } from "./branch/SurfaceAccordionCard/index.js";
10
- export { Rail } from "./branch/Rail/index.js";
11
- export { formCompactSurfaceClassName, formFieldClassName, formPageClassName, formScreenReaderLabelClassName, formScrollViewportClassName, formSurfaceClassName, horizontalScrollRegionClassName } from "./classNames.js";
1
+ "use client";
2
+ import { COMMON_GRAMMAR_COMPONENTS, COMMON_UI_RULE_IDS, defineGrammarFamily, defineGrammarRuleConformance, } from "../common/index.js";
3
+ import { createElement } from "react";
4
+ export { STARCI_CORE_DARK_TOKEN_DEFAULTS, STARCI_CORE_DNA, STARCI_CORE_SPACING_SCALE, STARCI_CORE_TOKEN_DEFAULTS, STARCI_CORE_TOKEN_NAMES, } from "./dna.js";
5
+ /** @deprecated Use COMMON_GRAMMAR_COMPONENTS from `@starci/grammar/common`. */
6
+ export const CORE_GRAMMAR_COMPONENTS = COMMON_GRAMMAR_COMPONENTS;
7
+ /** StarCi Core is one visual family implementing the Common contract. */
8
+ const CoreGrammarRootRenderer = (props) => {
9
+ const CommonGrammarRoot = COMMON_GRAMMAR_COMPONENTS.GrammarRoot;
10
+ return createElement(CommonGrammarRoot, { ...props, "data-grammar-family": "core" });
11
+ };
12
+ export const coreGrammar = defineGrammarFamily({
13
+ id: "core",
14
+ styles: {
15
+ entrypoint: "@starci/grammar/core/styles.css",
16
+ scope: { attribute: "data-grammar-family", value: "core" },
17
+ },
18
+ components: { replacements: { GrammarRoot: CoreGrammarRootRenderer }, extensions: {} },
19
+ });
20
+ export const CoreGrammarRoot = coreGrammar.components.GrammarRoot;
21
+ export const coreRuleConformance = defineGrammarRuleConformance({
22
+ familyId: "core",
23
+ inheritedCommonRules: COMMON_UI_RULE_IDS,
24
+ familyEvidence: {},
25
+ });
26
+ // Compatibility re-exports; Common is the canonical family-base authority.
27
+ export { defineGrammarFamily };
12
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,aAAa,EAA2B,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAAE,QAAQ,EAAsB,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAqD,MAAM,qCAAqC,CAAA;AACvH,OAAO,EAAE,sBAAsB,EAAoC,MAAM,6CAA6C,CAAA;AACtH,OAAO,EAAE,WAAW,EAA+C,MAAM,+BAA+B,CAAA;AACxG,OAAO,EAAE,eAAe,EAA6B,MAAM,mCAAmC,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAsF,MAAM,mCAAmC,CAAA;AAC5L,OAAO,EAAE,oBAAoB,EAAiE,MAAM,wCAAwC,CAAA;AAC5I,OAAO,EAAE,IAAI,EAAkB,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EACH,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,4BAA4B,GAG/B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAGrC,OAAO,EACH,+BAA+B,EAC/B,eAAe,EACf,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,GAM1B,MAAM,UAAU,CAAA;AAEjB,+EAA+E;AAC/E,MAAM,CAAC,MAAM,uBAAuB,GAAG,yBAAyB,CAAA;AAIhE,yEAAyE;AACzE,MAAM,uBAAuB,GAA+C,CAAC,KAAK,EAAE,EAAE;IAClF,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,WAAW,CAAA;IAC/D,OAAO,aAAa,CAAC,iBAAiB,EAAE,EAAE,GAAG,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,CAAC,CAAA;AACxF,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,mBAAmB,CAAC;IAC3C,EAAE,EAAE,MAAM;IACV,MAAM,EAAE;QACJ,UAAU,EAAE,iCAAiC;QAC7C,KAAK,EAAE,EAAE,SAAS,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,EAAE;KAC7D;IACD,UAAU,EAAE,EAAE,YAAY,EAAE,EAAE,WAAW,EAAE,uBAAuB,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;CACzF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC,UAAU,CAAC,WAAW,CAAA;AAEjE,MAAM,CAAC,MAAM,mBAAmB,GAAG,4BAA4B,CAAC;IAC5D,QAAQ,EAAE,MAAM;IAChB,oBAAoB,EAAE,kBAAkB;IACxC,cAAc,EAAE,EAAE;CACrB,CAAC,CAAA;AAEF,2EAA2E;AAC3E,OAAO,EAAE,mBAAmB,EAAE,CAAA"}
@@ -0,0 +1,12 @@
1
+ import type { ReactNode } from "react";
2
+ export type BadgeTone = "neutral" | "accent" | "success" | "warning" | "danger";
3
+ export type BadgeProps = {
4
+ readonly children?: ReactNode;
5
+ /** App-owned status glyph or artwork. */
6
+ readonly startContent?: ReactNode;
7
+ readonly tone?: BadgeTone;
8
+ readonly isSkeleton?: boolean;
9
+ };
10
+ /** Compact semantic status or figure; product glyph identity remains app-owned. */
11
+ export declare const Badge: ({ children, startContent, tone, isSkeleton }: BadgeProps) => import("react").JSX.Element;
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Badge/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAA;AAE/E,MAAM,MAAM,UAAU,GAAG;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,yCAAyC;IACzC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,CAAA;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAcD,mFAAmF;AACnF,eAAO,MAAM,KAAK,GAAI,8CAAkE,UAAU,gCAcjG,CAAA"}
@@ -0,0 +1,15 @@
1
+ import { jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Chip, skeletonVariants } from "@heroui/react";
3
+ const TONE_COLORS = {
4
+ neutral: "default",
5
+ accent: "accent",
6
+ success: "success",
7
+ warning: "warning",
8
+ danger: "danger",
9
+ };
10
+ const SKELETON_CLASS_NAME = skeletonVariants({ animationType: "shimmer" }).base({
11
+ className: "select-none text-transparent",
12
+ });
13
+ /** Compact semantic status or figure; product glyph identity remains app-owned. */
14
+ export const Badge = ({ children, startContent, tone = "neutral", isSkeleton = false }) => (_jsxs(Chip, { "data-tier": "atom", "data-component": "Badge", "data-tone": tone, "data-loading": isSkeleton ? "true" : "false", color: TONE_COLORS[tone], variant: "soft", size: "sm", ...(isSkeleton ? { "aria-hidden": true, className: SKELETON_CLASS_NAME } : {}), children: [isSkeleton ? null : startContent, children ?? "\u00a0"] }));
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Badge/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAatD,MAAM,WAAW,GAAG;IAChB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACV,CAAA;AAEV,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC;IAC5E,SAAS,EAAE,8BAA8B;CAC5C,CAAC,CAAA;AAEF,mFAAmF;AACnF,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,GAAG,SAAS,EAAE,UAAU,GAAG,KAAK,EAAc,EAAE,EAAE,CAAC,CACnG,MAAC,IAAI,iBACS,MAAM,oBACD,OAAO,eACX,IAAI,kBACD,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAC3C,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,EACxB,OAAO,EAAC,MAAM,EACd,IAAI,EAAC,IAAI,KACL,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAE9E,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,EAChC,QAAQ,IAAI,QAAQ,IAClB,CACV,CAAA"}
@@ -0,0 +1,52 @@
1
+ import type { ReactNode } from "react";
2
+ export type ButtonVariant = "primary" | "secondary" | "tertiary" | "outline" | "ghost";
3
+ export type ButtonSize = "sm" | "md" | "lg";
4
+ export type ButtonType = "button" | "submit" | "reset";
5
+ type ButtonBase = {
6
+ /** The visible action label. It remains present while the action is pending. */
7
+ readonly children: ReactNode;
8
+ readonly variant?: ButtonVariant;
9
+ readonly size?: ButtonSize;
10
+ /** Decorative or explanatory content before the label. Product icon identity stays with the app. */
11
+ readonly startContent?: ReactNode;
12
+ /** Directional or explanatory content after the label. */
13
+ readonly endContent?: ReactNode;
14
+ readonly isDisabled?: boolean;
15
+ /** Initial unresolved-content geometry. It is distinct from action-owned pending. */
16
+ readonly isSkeleton?: boolean;
17
+ /** Pending belongs to the action that started the work and blocks duplicate presses. */
18
+ readonly isPending?: boolean;
19
+ };
20
+ /**
21
+ * A real browser destination wearing the button appearance. It renders an anchor, so the platform
22
+ * supplies middle-click, copy-link, and the `link` role. Pending or disabled withholds the href.
23
+ */
24
+ type DestinationButton = {
25
+ readonly href: string;
26
+ readonly target?: "_blank" | "_self";
27
+ readonly rel?: string;
28
+ readonly download?: boolean | string;
29
+ /** Runs alongside navigation. It cannot cancel the destination. */
30
+ readonly onFollow?: () => void;
31
+ readonly onPress?: never;
32
+ readonly type?: never;
33
+ };
34
+ /** A same-document command. It renders the vendor button and may submit or reset a form. */
35
+ type CommandButton = {
36
+ readonly onPress?: () => void;
37
+ readonly type?: ButtonType;
38
+ readonly href?: never;
39
+ readonly target?: never;
40
+ readonly rel?: never;
41
+ readonly download?: never;
42
+ readonly onFollow?: never;
43
+ };
44
+ /**
45
+ * The button-shaped action. The element is decided by which of `href` or `onPress` is present, and
46
+ * the type forbids both, so a destination cannot be written as a button by choosing the wrong leaf.
47
+ */
48
+ export type ButtonProps = ButtonBase & (DestinationButton | CommandButton);
49
+ /** Button-shaped action: an anchor for a destination, the vendor button for a command. */
50
+ export declare const Button: (props: ButtonProps) => import("react").JSX.Element;
51
+ export {};
52
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Button/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAA;AACtF,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAC3C,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;AAEtD,KAAK,UAAU,GAAG;IACd,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAA;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,oGAAoG;IACpG,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,CAAA;IACjC,0DAA0D;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAA;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,qFAAqF;IACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,wFAAwF;IACxF,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAED;;;GAGG;AACH,KAAK,iBAAiB,GAAG;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;IACpC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IACpC,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAA;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAA;CACxB,CAAA;AAED,4FAA4F;AAC5F,KAAK,aAAa,GAAG;IACjB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAA;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAA;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAA;CAC5B,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,CAAC,iBAAiB,GAAG,aAAa,CAAC,CAAA;AAe1E,0FAA0F;AAC1F,eAAO,MAAM,MAAM,GAAI,OAAO,WAAW,gCAgExC,CAAA"}