@cambly/syntax-core 9.7.0 → 9.8.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. package/dist/Avatar/Avatar.css +1784 -1
  2. package/dist/Avatar/Avatar.css.map +1 -1
  3. package/dist/Avatar/Avatar.d.ts +12 -6
  4. package/dist/Avatar/Avatar.js +6 -2
  5. package/dist/Avatar/Avatar.mjs +5 -1
  6. package/dist/AvatarGroup/AvatarGroup.css +1811 -0
  7. package/dist/AvatarGroup/AvatarGroup.css.map +1 -0
  8. package/dist/AvatarGroup/AvatarGroup.d.ts +24 -0
  9. package/dist/AvatarGroup/AvatarGroup.js +14 -0
  10. package/dist/AvatarGroup/AvatarGroup.js.map +1 -0
  11. package/dist/AvatarGroup/AvatarGroup.mjs +14 -0
  12. package/dist/AvatarGroup/AvatarGroup.mjs.map +1 -0
  13. package/dist/AvatarGroup/AvatarGroupAvatar.css +1811 -0
  14. package/dist/AvatarGroup/AvatarGroupAvatar.css.map +1 -0
  15. package/dist/AvatarGroup/AvatarGroupAvatar.d.ts +38 -0
  16. package/dist/AvatarGroup/AvatarGroupAvatar.js +13 -0
  17. package/dist/AvatarGroup/AvatarGroupAvatar.js.map +1 -0
  18. package/dist/AvatarGroup/AvatarGroupAvatar.mjs +13 -0
  19. package/dist/AvatarGroup/AvatarGroupAvatar.mjs.map +1 -0
  20. package/dist/Badge/Badge.css +7 -7
  21. package/dist/Badge/Badge.css.map +1 -1
  22. package/dist/Badge/Badge.js +6 -6
  23. package/dist/Badge/Badge.mjs +5 -5
  24. package/dist/Box/Box.css +5 -5
  25. package/dist/Box/Box.css.map +1 -1
  26. package/dist/Box/Box.js +4 -4
  27. package/dist/Box/Box.mjs +3 -3
  28. package/dist/Button/Button.css +28 -30
  29. package/dist/Button/Button.css.map +1 -1
  30. package/dist/Button/Button.js +11 -11
  31. package/dist/Button/Button.mjs +10 -10
  32. package/dist/Button/constants/iconSize.css +22 -24
  33. package/dist/Button/constants/iconSize.css.map +1 -1
  34. package/dist/Button/constants/iconSize.js +2 -2
  35. package/dist/Button/constants/iconSize.mjs +1 -1
  36. package/dist/ButtonGroup/ButtonGroup.css +1 -1
  37. package/dist/ButtonGroup/ButtonGroup.css.map +1 -1
  38. package/dist/ButtonGroup/ButtonGroup.d.ts +1 -1
  39. package/dist/ButtonGroup/ButtonGroup.js +2 -2
  40. package/dist/ButtonGroup/ButtonGroup.mjs +1 -1
  41. package/dist/Card/Card.css +5 -5
  42. package/dist/Card/Card.css.map +1 -1
  43. package/dist/Card/Card.js +5 -5
  44. package/dist/Card/Card.mjs +4 -4
  45. package/dist/Checkbox/Checkbox.css +4 -4
  46. package/dist/Checkbox/Checkbox.css.map +1 -1
  47. package/dist/Checkbox/Checkbox.d.ts +1 -1
  48. package/dist/Checkbox/Checkbox.js +5 -5
  49. package/dist/Checkbox/Checkbox.mjs +4 -4
  50. package/dist/Chip/Chip.css +7 -7
  51. package/dist/Chip/Chip.css.map +1 -1
  52. package/dist/Chip/Chip.js +6 -6
  53. package/dist/Chip/Chip.mjs +5 -5
  54. package/dist/Divider/Divider.css +1 -1
  55. package/dist/Divider/Divider.css.map +1 -1
  56. package/dist/Divider/Divider.js +2 -2
  57. package/dist/Divider/Divider.mjs +1 -1
  58. package/dist/Heading/Heading.css +2 -2
  59. package/dist/Heading/Heading.css.map +1 -1
  60. package/dist/Heading/Heading.d.ts +1 -1
  61. package/dist/Heading/Heading.js +4 -4
  62. package/dist/Heading/Heading.mjs +3 -3
  63. package/dist/IconButton/IconButton.css +2 -2
  64. package/dist/IconButton/IconButton.css.map +1 -1
  65. package/dist/IconButton/IconButton.js +5 -5
  66. package/dist/IconButton/IconButton.mjs +4 -4
  67. package/dist/LinkButton/LinkButton.css +25 -27
  68. package/dist/LinkButton/LinkButton.css.map +1 -1
  69. package/dist/LinkButton/LinkButton.js +9 -9
  70. package/dist/LinkButton/LinkButton.mjs +8 -8
  71. package/dist/MiniActionCard/MiniActionCard.css +19 -0
  72. package/dist/MiniActionCard/MiniActionCard.css.map +1 -0
  73. package/dist/MiniActionCard/MiniActionCard.d.ts +11 -0
  74. package/dist/MiniActionCard/MiniActionCard.js +8 -0
  75. package/dist/MiniActionCard/MiniActionCard.js.map +1 -0
  76. package/dist/MiniActionCard/MiniActionCard.mjs +8 -0
  77. package/dist/MiniActionCard/MiniActionCard.mjs.map +1 -0
  78. package/dist/Modal/Layer.css +5 -5
  79. package/dist/Modal/Layer.css.map +1 -1
  80. package/dist/Modal/Layer.js +5 -5
  81. package/dist/Modal/Layer.mjs +4 -4
  82. package/dist/Modal/Modal.css +7 -7
  83. package/dist/Modal/Modal.css.map +1 -1
  84. package/dist/Modal/Modal.js +8 -8
  85. package/dist/Modal/Modal.mjs +7 -7
  86. package/dist/RadioButton/RadioButton.css +4 -4
  87. package/dist/RadioButton/RadioButton.css.map +1 -1
  88. package/dist/RadioButton/RadioButton.d.ts +1 -1
  89. package/dist/RadioButton/RadioButton.js +5 -5
  90. package/dist/RadioButton/RadioButton.mjs +4 -4
  91. package/dist/SelectList/SelectList.css +4 -4
  92. package/dist/SelectList/SelectList.css.map +1 -1
  93. package/dist/SelectList/SelectList.js +5 -5
  94. package/dist/SelectList/SelectList.mjs +4 -4
  95. package/dist/TapArea/TapArea.css +2 -2
  96. package/dist/TapArea/TapArea.css.map +1 -1
  97. package/dist/TapArea/TapArea.js +3 -3
  98. package/dist/TapArea/TapArea.mjs +2 -2
  99. package/dist/TextField/TextField.css +7 -7
  100. package/dist/TextField/TextField.css.map +1 -1
  101. package/dist/TextField/TextField.js +6 -6
  102. package/dist/TextField/TextField.mjs +5 -5
  103. package/dist/Typography/Typography.css +2 -2
  104. package/dist/Typography/Typography.css.map +1 -1
  105. package/dist/Typography/Typography.d.ts +1 -1
  106. package/dist/Typography/Typography.js +3 -3
  107. package/dist/Typography/Typography.mjs +2 -2
  108. package/dist/__chunks/{FUBK3VZO.js → 25AVG5RK.js} +1 -1
  109. package/dist/__chunks/{FUBK3VZO.js.map → 25AVG5RK.js.map} +1 -1
  110. package/dist/__chunks/2AXWRBLG.mjs +34 -0
  111. package/dist/__chunks/2AXWRBLG.mjs.map +1 -0
  112. package/dist/__chunks/{4PWSK5GI.js → 37REMIOM.js} +1 -1
  113. package/dist/__chunks/37REMIOM.js.map +1 -0
  114. package/dist/__chunks/{BCWLWS7W.mjs → 3HUELEGR.mjs} +2 -2
  115. package/dist/__chunks/{BCWLWS7W.mjs.map → 3HUELEGR.mjs.map} +1 -1
  116. package/dist/__chunks/{HAZN2FCY.mjs → 3LM54GWV.mjs} +1 -1
  117. package/dist/__chunks/3LM54GWV.mjs.map +1 -0
  118. package/dist/__chunks/3MG27OMA.js +64 -0
  119. package/dist/__chunks/3MG27OMA.js.map +1 -0
  120. package/dist/__chunks/3N6HHI46.js +32 -0
  121. package/dist/__chunks/3N6HHI46.js.map +1 -0
  122. package/dist/__chunks/{PYNS67IV.js → 3OXEYQS2.js} +5 -5
  123. package/dist/__chunks/{PYNS67IV.js.map → 3OXEYQS2.js.map} +1 -1
  124. package/dist/__chunks/4EEVXYO7.js +216 -0
  125. package/dist/__chunks/4EEVXYO7.js.map +1 -0
  126. package/dist/__chunks/{UNIBFDXV.js → 4ONM4N5U.js} +5 -5
  127. package/dist/__chunks/{UNIBFDXV.js.map → 4ONM4N5U.js.map} +1 -1
  128. package/dist/__chunks/{CPBWDVD4.mjs → 4U36457H.mjs} +4 -4
  129. package/dist/__chunks/{CPBWDVD4.mjs.map → 4U36457H.mjs.map} +1 -1
  130. package/dist/__chunks/4VIJNV7V.mjs +216 -0
  131. package/dist/__chunks/4VIJNV7V.mjs.map +1 -0
  132. package/dist/__chunks/5C5EHJ47.js +34 -0
  133. package/dist/__chunks/5C5EHJ47.js.map +1 -0
  134. package/dist/__chunks/{R6CDK4GP.mjs → 5QXUIARJ.mjs} +3 -2
  135. package/dist/__chunks/5QXUIARJ.mjs.map +1 -0
  136. package/dist/__chunks/5VIJTDOF.mjs +120 -0
  137. package/dist/__chunks/5VIJTDOF.mjs.map +1 -0
  138. package/dist/__chunks/{3VUMTAUX.js → 5VV77UJJ.js} +5 -5
  139. package/dist/__chunks/{3VUMTAUX.js.map → 5VV77UJJ.js.map} +1 -1
  140. package/dist/__chunks/{SXTRSFG5.mjs → 6KRS5AXC.mjs} +1 -1
  141. package/dist/__chunks/6KRS5AXC.mjs.map +1 -0
  142. package/dist/__chunks/6LPXMM72.js +29 -0
  143. package/dist/__chunks/6LPXMM72.js.map +1 -0
  144. package/dist/__chunks/{MX7C572C.mjs → A2VHEPTR.mjs} +2 -2
  145. package/dist/__chunks/A4I7G22A.js +7 -0
  146. package/dist/__chunks/A4I7G22A.js.map +1 -0
  147. package/dist/__chunks/AR6OTJE4.mjs +120 -0
  148. package/dist/__chunks/AR6OTJE4.mjs.map +1 -0
  149. package/dist/__chunks/AXK2UBWP.js +120 -0
  150. package/dist/__chunks/AXK2UBWP.js.map +1 -0
  151. package/dist/__chunks/{CGGEM6XS.mjs → AYC7TUMS.mjs} +8 -8
  152. package/dist/__chunks/{CGGEM6XS.mjs.map → AYC7TUMS.mjs.map} +1 -1
  153. package/dist/__chunks/{LJHH6KUW.js → BBNBUAJV.js} +1 -1
  154. package/dist/__chunks/BBNBUAJV.js.map +1 -0
  155. package/dist/__chunks/{TKYRBLSM.js → BFZW2SIU.js} +14 -14
  156. package/dist/__chunks/{TKYRBLSM.js.map → BFZW2SIU.js.map} +1 -1
  157. package/dist/__chunks/BNRC45PX.js +15 -0
  158. package/dist/__chunks/BNRC45PX.js.map +1 -0
  159. package/dist/__chunks/{6VWFOSQZ.js → BXCLZFW3.js} +1 -1
  160. package/dist/__chunks/BXCLZFW3.js.map +1 -0
  161. package/dist/__chunks/C33AWSV6.js +61 -0
  162. package/dist/__chunks/C33AWSV6.js.map +1 -0
  163. package/dist/__chunks/CUVXZOBA.mjs +7 -0
  164. package/dist/__chunks/CUVXZOBA.mjs.map +1 -0
  165. package/dist/__chunks/CWODDNFV.mjs +66 -0
  166. package/dist/__chunks/CWODDNFV.mjs.map +1 -0
  167. package/dist/__chunks/{LZSDWT4M.mjs → D4JUFTND.mjs} +3 -3
  168. package/dist/__chunks/{LZSDWT4M.mjs.map → D4JUFTND.mjs.map} +1 -1
  169. package/dist/__chunks/{D24RSGYP.js → DOUZDU3A.js} +1 -1
  170. package/dist/__chunks/DOUZDU3A.js.map +1 -0
  171. package/dist/__chunks/{AGAHNSZM.js → DPOT7MLO.js} +6 -6
  172. package/dist/__chunks/{AGAHNSZM.js.map → DPOT7MLO.js.map} +1 -1
  173. package/dist/__chunks/EDT4HTWE.js +24 -0
  174. package/dist/__chunks/EDT4HTWE.js.map +1 -0
  175. package/dist/__chunks/{ERXGNP37.js → ESGV3EEU.js} +1 -1
  176. package/dist/__chunks/ESGV3EEU.js.map +1 -0
  177. package/dist/__chunks/F4HTASEF.mjs +24 -0
  178. package/dist/__chunks/{Q2TIB7ZC.mjs.map → F4HTASEF.mjs.map} +1 -1
  179. package/dist/__chunks/{JSEHOGL7.mjs → FLKYHNRX.mjs} +1 -1
  180. package/dist/__chunks/FLKYHNRX.mjs.map +1 -0
  181. package/dist/__chunks/FOSMT7QJ.js +34 -0
  182. package/dist/__chunks/FOSMT7QJ.js.map +1 -0
  183. package/dist/__chunks/FVU4BA3R.mjs +15 -0
  184. package/dist/__chunks/FVU4BA3R.mjs.map +1 -0
  185. package/dist/__chunks/FZO6U2EP.mjs +61 -0
  186. package/dist/__chunks/FZO6U2EP.mjs.map +1 -0
  187. package/dist/__chunks/GD77DL2Y.mjs +106 -0
  188. package/dist/__chunks/GD77DL2Y.mjs.map +1 -0
  189. package/dist/__chunks/{LKQ7PJ4S.mjs → HJYCSDLB.mjs} +3 -3
  190. package/dist/__chunks/HJYCSDLB.mjs.map +1 -0
  191. package/dist/__chunks/HPQ27RVD.js +7 -0
  192. package/dist/__chunks/HPQ27RVD.js.map +1 -0
  193. package/dist/__chunks/{GPS2XNQI.js → IAF6S5CX.js} +16 -20
  194. package/dist/__chunks/IAF6S5CX.js.map +1 -0
  195. package/dist/__chunks/IFTFN6UJ.mjs +96 -0
  196. package/dist/__chunks/IFTFN6UJ.mjs.map +1 -0
  197. package/dist/__chunks/IMA6TVID.js +14 -0
  198. package/dist/__chunks/IMA6TVID.js.map +1 -0
  199. package/dist/__chunks/{RRE7PRE5.mjs → JJQRVIE2.mjs} +3 -3
  200. package/dist/__chunks/{RRE7PRE5.mjs.map → JJQRVIE2.mjs.map} +1 -1
  201. package/dist/__chunks/{BJXYKZMK.mjs → JMKHYRFL.mjs} +3 -3
  202. package/dist/__chunks/JMKHYRFL.mjs.map +1 -0
  203. package/dist/__chunks/JQHT6NET.mjs +110 -0
  204. package/dist/__chunks/JQHT6NET.mjs.map +1 -0
  205. package/dist/__chunks/{DVVFHZBW.mjs → K3JR7BCX.mjs} +10 -14
  206. package/dist/__chunks/K3JR7BCX.mjs.map +1 -0
  207. package/dist/__chunks/K6XUX6LJ.mjs +34 -0
  208. package/dist/__chunks/K6XUX6LJ.mjs.map +1 -0
  209. package/dist/__chunks/{BSWWGQAS.js → KCIQ73YD.js} +6 -6
  210. package/dist/__chunks/{BSWWGQAS.js.map → KCIQ73YD.js.map} +1 -1
  211. package/dist/__chunks/{RSU3GDHB.mjs → KDEHEUYG.mjs} +3 -3
  212. package/dist/__chunks/{RSU3GDHB.mjs.map → KDEHEUYG.mjs.map} +1 -1
  213. package/dist/__chunks/KEVWT27Z.mjs +81 -0
  214. package/dist/__chunks/KEVWT27Z.mjs.map +1 -0
  215. package/dist/__chunks/KNBS7I65.mjs +34 -0
  216. package/dist/__chunks/KNBS7I65.mjs.map +1 -0
  217. package/dist/__chunks/KNDHXB3A.js +66 -0
  218. package/dist/__chunks/KNDHXB3A.js.map +1 -0
  219. package/dist/__chunks/KNTQWIRZ.mjs +64 -0
  220. package/dist/__chunks/KNTQWIRZ.mjs.map +1 -0
  221. package/dist/__chunks/LCM6DHNZ.mjs +120 -0
  222. package/dist/__chunks/{DVVFHZBW.mjs.map → LCM6DHNZ.mjs.map} +1 -1
  223. package/dist/__chunks/{FWVHWU47.mjs → LICJ6EW4.mjs} +1 -1
  224. package/dist/__chunks/LICJ6EW4.mjs.map +1 -0
  225. package/dist/__chunks/LJA4ANIH.js +120 -0
  226. package/dist/__chunks/LJA4ANIH.js.map +1 -0
  227. package/dist/__chunks/{37CQV3RS.js → LKIXWY5D.js} +3 -3
  228. package/dist/__chunks/{37CQV3RS.js.map → LKIXWY5D.js.map} +1 -1
  229. package/dist/__chunks/LTYTYJEN.mjs +20 -0
  230. package/dist/__chunks/{XN5AALLC.mjs.map → LTYTYJEN.mjs.map} +1 -1
  231. package/dist/__chunks/{RVT6EXR3.mjs → MF2FZIOI.mjs} +2 -2
  232. package/dist/__chunks/{WJDAVT5R.mjs → MQPPALTP.mjs} +1 -1
  233. package/dist/__chunks/MQPPALTP.mjs.map +1 -0
  234. package/dist/__chunks/MQYAYRG7.js +106 -0
  235. package/dist/__chunks/MQYAYRG7.js.map +1 -0
  236. package/dist/__chunks/MUJ5ZM2P.mjs +14 -0
  237. package/dist/__chunks/MUJ5ZM2P.mjs.map +1 -0
  238. package/dist/__chunks/NCGV4CPL.mjs +7 -0
  239. package/dist/__chunks/NCGV4CPL.mjs.map +1 -0
  240. package/dist/__chunks/NS7JP3FM.mjs +105 -0
  241. package/dist/__chunks/NS7JP3FM.mjs.map +1 -0
  242. package/dist/__chunks/{CQ2HIJ62.js → O24347EQ.js} +3 -3
  243. package/dist/__chunks/O7DAECUN.js +110 -0
  244. package/dist/__chunks/O7DAECUN.js.map +1 -0
  245. package/dist/__chunks/{BSFWQWVJ.js → OLOF45YI.js} +3 -3
  246. package/dist/__chunks/{2JWMSFS7.js → P4CNOF3E.js} +3 -3
  247. package/dist/__chunks/PLJUFTJY.js +120 -0
  248. package/dist/__chunks/PLJUFTJY.js.map +1 -0
  249. package/dist/__chunks/{OQ26OWU4.mjs → PN7GAGSA.mjs} +2 -2
  250. package/dist/__chunks/{OQ26OWU4.mjs.map → PN7GAGSA.mjs.map} +1 -1
  251. package/dist/__chunks/PR3BB3FG.js +96 -0
  252. package/dist/__chunks/PR3BB3FG.js.map +1 -0
  253. package/dist/__chunks/PRHHEVW3.mjs +14 -0
  254. package/dist/__chunks/PRHHEVW3.mjs.map +1 -0
  255. package/dist/__chunks/{F3ZST4RL.js → PTAZUBW6.js} +9 -9
  256. package/dist/__chunks/{F3ZST4RL.js.map → PTAZUBW6.js.map} +1 -1
  257. package/dist/__chunks/{3PCHHAIY.mjs → QQUTU6E5.mjs} +1 -1
  258. package/dist/__chunks/QQUTU6E5.mjs.map +1 -0
  259. package/dist/__chunks/QTRAGVT2.js +81 -0
  260. package/dist/__chunks/QTRAGVT2.js.map +1 -0
  261. package/dist/__chunks/QX4SPXNO.js +27 -0
  262. package/dist/__chunks/QX4SPXNO.js.map +1 -0
  263. package/dist/__chunks/R3JL4P3Q.js +72 -0
  264. package/dist/__chunks/R3JL4P3Q.js.map +1 -0
  265. package/dist/__chunks/{WCEOAOUO.mjs → RBVOI6NO.mjs} +3 -3
  266. package/dist/__chunks/{WCEOAOUO.mjs.map → RBVOI6NO.mjs.map} +1 -1
  267. package/dist/__chunks/{A7UVLRKG.mjs → RCT3DP22.mjs} +1 -1
  268. package/dist/__chunks/RCT3DP22.mjs.map +1 -0
  269. package/dist/__chunks/{MZEIZAZH.mjs → S2O3PM7G.mjs} +2 -2
  270. package/dist/__chunks/{TPMQI44L.js → S2OLRDIA.js} +1 -1
  271. package/dist/__chunks/S2OLRDIA.js.map +1 -0
  272. package/dist/__chunks/{XN5AALLC.mjs → SFLBYQCV.mjs} +2 -1
  273. package/dist/__chunks/SFLBYQCV.mjs.map +1 -0
  274. package/dist/__chunks/{Q2TIB7ZC.mjs → SSU3B5AR.mjs} +3 -2
  275. package/dist/__chunks/SSU3B5AR.mjs.map +1 -0
  276. package/dist/__chunks/{M6YFAP6P.mjs → SWA6IQLD.mjs} +1 -1
  277. package/dist/__chunks/{M6YFAP6P.mjs.map → SWA6IQLD.mjs.map} +1 -1
  278. package/dist/__chunks/TC3MWLLE.js +20 -0
  279. package/dist/__chunks/TC3MWLLE.js.map +1 -0
  280. package/dist/__chunks/{ERJ5XXDH.js → TCDLLMZO.js} +12 -12
  281. package/dist/__chunks/{ERJ5XXDH.js.map → TCDLLMZO.js.map} +1 -1
  282. package/dist/__chunks/TCXV6BXC.js +34 -0
  283. package/dist/__chunks/TCXV6BXC.js.map +1 -0
  284. package/dist/__chunks/{FOTKCGZZ.js → TQ4QQTSW.js} +6 -6
  285. package/dist/__chunks/TQ4QQTSW.js.map +1 -0
  286. package/dist/__chunks/USJPERI4.js +58 -0
  287. package/dist/__chunks/USJPERI4.js.map +1 -0
  288. package/dist/__chunks/{5R6HCJP6.mjs → V4YM6NMQ.mjs} +3 -3
  289. package/dist/__chunks/{5R6HCJP6.mjs.map → V4YM6NMQ.mjs.map} +1 -1
  290. package/dist/__chunks/VDPH7IK3.js +105 -0
  291. package/dist/__chunks/VDPH7IK3.js.map +1 -0
  292. package/dist/__chunks/{2O6FDRTF.js → VPGRPGP7.js} +1 -1
  293. package/dist/__chunks/VPGRPGP7.js.map +1 -0
  294. package/dist/__chunks/WIDP7NHD.mjs +72 -0
  295. package/dist/__chunks/WIDP7NHD.mjs.map +1 -0
  296. package/dist/__chunks/{X74O4HUS.js → WLELQDTJ.js} +5 -5
  297. package/dist/__chunks/{X74O4HUS.js.map → WLELQDTJ.js.map} +1 -1
  298. package/dist/__chunks/{2PHVTRWC.js → WO3NKGKN.js} +7 -7
  299. package/dist/__chunks/{2PHVTRWC.js.map → WO3NKGKN.js.map} +1 -1
  300. package/dist/__chunks/WOYU2W3H.js +53 -0
  301. package/dist/__chunks/WOYU2W3H.js.map +1 -0
  302. package/dist/__chunks/WPIBNMAN.mjs +53 -0
  303. package/dist/__chunks/WPIBNMAN.mjs.map +1 -0
  304. package/dist/__chunks/WSCARST6.mjs +58 -0
  305. package/dist/__chunks/WSCARST6.mjs.map +1 -0
  306. package/dist/__chunks/{HQVZUEWO.js → YKIJQZYO.js} +2 -1
  307. package/dist/__chunks/YKIJQZYO.js.map +1 -0
  308. package/dist/__chunks/YOICG7YI.mjs +31 -0
  309. package/dist/__chunks/YOICG7YI.mjs.map +1 -0
  310. package/dist/__chunks/{BWTLHCW3.mjs → YUPTQIXD.mjs} +3 -3
  311. package/dist/__chunks/{BWTLHCW3.mjs.map → YUPTQIXD.mjs.map} +1 -1
  312. package/dist/__chunks/Z6VJIDKQ.js +31 -0
  313. package/dist/__chunks/Z6VJIDKQ.js.map +1 -0
  314. package/dist/__chunks/ZCN7X7TS.js +14 -0
  315. package/dist/__chunks/ZCN7X7TS.js.map +1 -0
  316. package/dist/__chunks/ZHZ6U63Z.mjs +29 -0
  317. package/dist/__chunks/{R6CDK4GP.mjs.map → ZHZ6U63Z.mjs.map} +1 -1
  318. package/dist/colors/backgroundColor.css +1 -1
  319. package/dist/colors/backgroundColor.css.map +1 -1
  320. package/dist/colors/backgroundColor.js +3 -3
  321. package/dist/colors/backgroundColor.mjs +2 -2
  322. package/dist/colors/foregroundColor.css +1 -1
  323. package/dist/colors/foregroundColor.css.map +1 -1
  324. package/dist/colors/foregroundColor.js +3 -3
  325. package/dist/colors/foregroundColor.mjs +2 -2
  326. package/dist/colors/foregroundTypographyColor.js +2 -2
  327. package/dist/colors/foregroundTypographyColor.mjs +1 -1
  328. package/dist/index.css +288 -290
  329. package/dist/index.css.map +1 -1
  330. package/dist/index.d.ts +2 -0
  331. package/dist/index.js +33 -28
  332. package/dist/index.mjs +32 -27
  333. package/package.json +16 -16
  334. package/LICENSE +0 -201
  335. package/dist/__chunks/2O6FDRTF.js.map +0 -1
  336. package/dist/__chunks/3PCHHAIY.mjs.map +0 -1
  337. package/dist/__chunks/4PWSK5GI.js.map +0 -1
  338. package/dist/__chunks/6VWFOSQZ.js.map +0 -1
  339. package/dist/__chunks/A7UVLRKG.mjs.map +0 -1
  340. package/dist/__chunks/BJXYKZMK.mjs.map +0 -1
  341. package/dist/__chunks/CATJI2RJ.js +0 -26
  342. package/dist/__chunks/CATJI2RJ.js.map +0 -1
  343. package/dist/__chunks/D24RSGYP.js.map +0 -1
  344. package/dist/__chunks/ERXGNP37.js.map +0 -1
  345. package/dist/__chunks/FOTKCGZZ.js.map +0 -1
  346. package/dist/__chunks/FWVHWU47.mjs.map +0 -1
  347. package/dist/__chunks/G4DDTGDI.js +0 -31
  348. package/dist/__chunks/G4DDTGDI.js.map +0 -1
  349. package/dist/__chunks/GPS2XNQI.js.map +0 -1
  350. package/dist/__chunks/HAZN2FCY.mjs.map +0 -1
  351. package/dist/__chunks/HQVZUEWO.js.map +0 -1
  352. package/dist/__chunks/JSEHOGL7.mjs.map +0 -1
  353. package/dist/__chunks/LJHH6KUW.js.map +0 -1
  354. package/dist/__chunks/LKQ7PJ4S.mjs.map +0 -1
  355. package/dist/__chunks/SXTRSFG5.mjs.map +0 -1
  356. package/dist/__chunks/TPMQI44L.js.map +0 -1
  357. package/dist/__chunks/WJDAVT5R.mjs.map +0 -1
  358. /package/dist/__chunks/{MX7C572C.mjs.map → A2VHEPTR.mjs.map} +0 -0
  359. /package/dist/__chunks/{RVT6EXR3.mjs.map → MF2FZIOI.mjs.map} +0 -0
  360. /package/dist/__chunks/{CQ2HIJ62.js.map → O24347EQ.js.map} +0 -0
  361. /package/dist/__chunks/{BSFWQWVJ.js.map → OLOF45YI.js.map} +0 -0
  362. /package/dist/__chunks/{2JWMSFS7.js.map → P4CNOF3E.js.map} +0 -0
  363. /package/dist/__chunks/{MZEIZAZH.mjs.map → S2O3PM7G.mjs.map} +0 -0
@@ -0,0 +1,96 @@
1
+ import {
2
+ textVariant_default
3
+ } from "./AMBZXKUQ.mjs";
4
+ import {
5
+ iconSize_default
6
+ } from "./FVU4BA3R.mjs";
7
+ import {
8
+ Typography_default
9
+ } from "./3HUELEGR.mjs";
10
+ import {
11
+ foregroundTypographyColor
12
+ } from "./SFLBYQCV.mjs";
13
+ import {
14
+ foregroundColor
15
+ } from "./SSU3B5AR.mjs";
16
+ import {
17
+ backgroundColor
18
+ } from "./5QXUIARJ.mjs";
19
+
20
+ // src/LinkButton/LinkButton.tsx
21
+ import { forwardRef } from "react";
22
+ import classNames from "classnames";
23
+
24
+ // css-module:../Button/Button.module.css#css-module
25
+ var Button_module_default = { "button": "_button_raa9c_1", "buttonGap": "_buttonGap_raa9c_10", "fullWidth": "_fullWidth_raa9c_51", "sm": "_sm_raa9c_55", "md": "_md_raa9c_61", "lg": "_lg_raa9c_67", "icon": "_icon_raa9c_73", "smIcon": "_smIcon_raa9c_77", "mdIcon": "_mdIcon_raa9c_84", "lgIcon": "_lgIcon_raa9c_91", "secondaryBorder": "_secondaryBorder_raa9c_98", "secondaryDestructiveBorder": "_secondaryDestructiveBorder_raa9c_102", "loading": "_loading_raa9c_116", "syntaxButtonLoadingRotate": "_syntaxButtonLoadingRotate_raa9c_1", "loadingCircle": "_loadingCircle_raa9c_120" };
26
+
27
+ // css-module:./LinkButton.module.css#css-module
28
+ var LinkButton_module_default = { "linkButton": "_linkButton_1qjrb_1", "fitContent": "_fitContent_1qjrb_11" };
29
+
30
+ // src/LinkButton/LinkButton.tsx
31
+ import { jsx, jsxs } from "react/jsx-runtime";
32
+ var LinkButton = forwardRef(
33
+ ({
34
+ text,
35
+ href,
36
+ target,
37
+ rel,
38
+ "data-testid": dataTestId,
39
+ color = "primary",
40
+ size = "md",
41
+ fullWidth = false,
42
+ startIcon: StartIcon,
43
+ endIcon: EndIcon,
44
+ onClick
45
+ }, ref) => {
46
+ return /* @__PURE__ */ jsxs(
47
+ "a",
48
+ {
49
+ href,
50
+ "data-testid": dataTestId,
51
+ target,
52
+ ref,
53
+ rel,
54
+ className: classNames(
55
+ LinkButton_module_default.linkButton,
56
+ Button_module_default.button,
57
+ foregroundColor(color),
58
+ backgroundColor(color),
59
+ Button_module_default[size],
60
+ {
61
+ [Button_module_default.fullWidth]: fullWidth,
62
+ [LinkButton_module_default.fitContent]: !fullWidth,
63
+ [Button_module_default.buttonGap]: size === "lg" || size === "md",
64
+ [Button_module_default.secondaryBorder]: color === "secondary",
65
+ [Button_module_default.secondaryDestructiveBorder]: color === "destructive-secondary"
66
+ }
67
+ ),
68
+ onClick,
69
+ children: [
70
+ StartIcon && /* @__PURE__ */ jsx(
71
+ StartIcon,
72
+ {
73
+ className: classNames(Button_module_default.icon, iconSize_default[size])
74
+ }
75
+ ),
76
+ /* @__PURE__ */ jsx(
77
+ Typography_default,
78
+ {
79
+ color: foregroundTypographyColor(color),
80
+ size: textVariant_default[size],
81
+ children: /* @__PURE__ */ jsx("span", { style: { fontWeight: 500 }, children: text })
82
+ }
83
+ ),
84
+ EndIcon && /* @__PURE__ */ jsx(EndIcon, { className: classNames(Button_module_default.icon, iconSize_default[size]) })
85
+ ]
86
+ }
87
+ );
88
+ }
89
+ );
90
+ LinkButton.displayName = "LinkButton";
91
+ var LinkButton_default = LinkButton;
92
+
93
+ export {
94
+ LinkButton_default
95
+ };
96
+ //# sourceMappingURL=IFTFN6UJ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/LinkButton/LinkButton.tsx","css-module:../Button/Button.module.css#css-module","css-module:./LinkButton.module.css#css-module"],"sourcesContent":["import { forwardRef, type HtmlHTMLAttributes } from \"react\";\nimport classNames from \"classnames\";\nimport backgroundColor from \"../colors/backgroundColor\";\nimport foregroundColor from \"../colors/foregroundColor\";\nimport foregroundTypographyColor from \"../colors/foregroundTypographyColor\";\nimport React from \"react\";\nimport { type Size } from \"../constants\";\nimport Typography from \"../Typography/Typography\";\n\nimport buttonStyles from \"../Button/Button.module.css\";\nimport iconSize from \"../Button/constants/iconSize\";\nimport textVariant from \"../Button/constants/textVariant\";\n\nimport styles from \"./LinkButton.module.css\";\n\ntype LinkButtonProps = {\n /**\n * Test id for the button\n */\n \"data-testid\"?: string;\n /**\n * The text to be displayed inside the button\n */\n text: string;\n /**\n * The link that the LinkButton should route to.\n *\n */\n href?: string;\n /**\n * The target attribute specifies where to open the linked document.\n *\n */\n target?: \"_blank\" | \"_self\" | \"_parent\" | \"_top\";\n /**\n * The rel attribute specifies the relationship between the document and the link.\n *\n */\n rel?: HtmlHTMLAttributes<HTMLAnchorElement>[\"rel\"];\n /**\n * The color of the button\n *\n * @defaultValue \"primary\"\n */\n color?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"destructive-primary\"\n | \"destructive-secondary\"\n | \"destructive-tertiary\"\n | \"branded\"\n | \"success\";\n /**\n * The size of the button\n *\n * * `sm`: 32px\n * * `md`: 40px\n * * `lg`: 48px\n *\n * @defaultValue \"md\"\n */\n size?: (typeof Size)[number];\n /**\n * If `true`, the button will take up the full width of its container\n *\n * @defaultValue false\n */\n fullWidth?: boolean;\n /**\n * The icon to be displayed at the start of the button. Please use a [Rounded Material Icon](https://material.io/resources/icons/?style=round)\n */\n startIcon?: React.ComponentType<{ className?: string }>;\n /**\n * The icon to be displayed at the end of the button. Please use a [Rounded Material Icon](https://material.io/resources/icons/?style=round)\n */\n endIcon?: React.ComponentType<{ className?: string }>;\n /**\n * An optional onClick event. This is used for certain wrapper's support (such as react-router-dom).\n */\n onClick?: React.MouseEventHandler<HTMLAnchorElement>;\n};\n\n/**\n * [LinkButton](https://cambly-syntax.vercel.app/?path=/docs/components-linkbutton--docs) is a \"variation\" of Button that should look identical to Button, but should be used to render links instead.\n */\nconst LinkButton = forwardRef<HTMLAnchorElement, LinkButtonProps>(\n (\n {\n text,\n href,\n target,\n rel,\n \"data-testid\": dataTestId,\n color = \"primary\",\n size = \"md\",\n fullWidth = false,\n startIcon: StartIcon,\n endIcon: EndIcon,\n onClick,\n }: LinkButtonProps,\n ref,\n ) => {\n return (\n <a\n href={href}\n data-testid={dataTestId}\n target={target}\n ref={ref}\n rel={rel}\n className={classNames(\n styles.linkButton,\n buttonStyles.button,\n foregroundColor(color),\n backgroundColor(color),\n buttonStyles[size],\n {\n [buttonStyles.fullWidth]: fullWidth,\n [styles.fitContent]: !fullWidth,\n [buttonStyles.buttonGap]: size === \"lg\" || size === \"md\",\n [buttonStyles.secondaryBorder]: color === \"secondary\",\n [buttonStyles.secondaryDestructiveBorder]:\n color === \"destructive-secondary\",\n },\n )}\n onClick={onClick}\n >\n {StartIcon && (\n <StartIcon\n className={classNames(buttonStyles.icon, iconSize[size])}\n />\n )}\n <Typography\n color={foregroundTypographyColor(color)}\n size={textVariant[size]}\n >\n <span style={{ fontWeight: 500 }}>{text}</span>\n </Typography>\n {EndIcon && (\n <EndIcon className={classNames(buttonStyles.icon, iconSize[size])} />\n )}\n </a>\n );\n },\n);\n\nLinkButton.displayName = \"LinkButton\";\n\nexport default LinkButton;\n","import \"/Users/christian/cambly/syntax/packages/syntax-core/src/Button/Button.module.css\"; export default {\"button\":\"_button_raa9c_1\",\"buttonGap\":\"_buttonGap_raa9c_10\",\"fullWidth\":\"_fullWidth_raa9c_51\",\"sm\":\"_sm_raa9c_55\",\"md\":\"_md_raa9c_61\",\"lg\":\"_lg_raa9c_67\",\"icon\":\"_icon_raa9c_73\",\"smIcon\":\"_smIcon_raa9c_77\",\"mdIcon\":\"_mdIcon_raa9c_84\",\"lgIcon\":\"_lgIcon_raa9c_91\",\"secondaryBorder\":\"_secondaryBorder_raa9c_98\",\"secondaryDestructiveBorder\":\"_secondaryDestructiveBorder_raa9c_102\",\"loading\":\"_loading_raa9c_116\",\"syntaxButtonLoadingRotate\":\"_syntaxButtonLoadingRotate_raa9c_1\",\"loadingCircle\":\"_loadingCircle_raa9c_120\"}","import \"/Users/christian/cambly/syntax/packages/syntax-core/src/LinkButton/LinkButton.module.css\"; export default {\"linkButton\":\"_linkButton_1qjrb_1\",\"fitContent\":\"_fitContent_1qjrb_11\"}"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,SAAS,kBAA2C;AACpD,OAAO,gBAAgB;;;ACDoE,IAAO,wBAAQ,EAAC,UAAS,mBAAkB,aAAY,uBAAsB,aAAY,uBAAsB,MAAK,gBAAe,MAAK,gBAAe,MAAK,gBAAe,QAAO,kBAAiB,UAAS,oBAAmB,UAAS,oBAAmB,UAAS,oBAAmB,mBAAkB,6BAA4B,8BAA6B,yCAAwC,WAAU,sBAAqB,6BAA4B,sCAAqC,iBAAgB,2BAA0B;;;ACA5gB,IAAO,4BAAQ,EAAC,cAAa,uBAAsB,cAAa,uBAAsB;;;AFwGnL,SAwBI,KAxBJ;AAlBN,IAAM,aAAa;AAAA,EACjB,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,SAAS;AAAA,IACT;AAAA,EACF,GACA,QACG;AACH,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,eAAa;AAAA,QACb;AAAA,QACA;AAAA,QACA;AAAA,QACA,WAAW;AAAA,UACT,0BAAO;AAAA,UACP,sBAAa;AAAA,UACb,gBAAgB,KAAK;AAAA,UACrB,gBAAgB,KAAK;AAAA,UACrB,sBAAa,IAAI;AAAA,UACjB;AAAA,YACE,CAAC,sBAAa,SAAS,GAAG;AAAA,YAC1B,CAAC,0BAAO,UAAU,GAAG,CAAC;AAAA,YACtB,CAAC,sBAAa,SAAS,GAAG,SAAS,QAAQ,SAAS;AAAA,YACpD,CAAC,sBAAa,eAAe,GAAG,UAAU;AAAA,YAC1C,CAAC,sBAAa,0BAA0B,GACtC,UAAU;AAAA,UACd;AAAA,QACF;AAAA,QACA;AAAA,QAEC;AAAA,uBACC;AAAA,YAAC;AAAA;AAAA,cACC,WAAW,WAAW,sBAAa,MAAM,iBAAS,IAAI,CAAC;AAAA;AAAA,UACzD;AAAA,UAEF;AAAA,YAAC;AAAA;AAAA,cACC,OAAO,0BAA0B,KAAK;AAAA,cACtC,MAAM,oBAAY,IAAI;AAAA,cAEtB,8BAAC,UAAK,OAAO,EAAE,YAAY,IAAI,GAAI,gBAAK;AAAA;AAAA,UAC1C;AAAA,UACC,WACC,oBAAC,WAAQ,WAAW,WAAW,sBAAa,MAAM,iBAAS,IAAI,CAAC,GAAG;AAAA;AAAA;AAAA,IAEvE;AAAA,EAEJ;AACF;AAEA,WAAW,cAAc;AAEzB,IAAO,qBAAQ;","names":[]}
@@ -0,0 +1,14 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// css-module:./Divider.module.css#css-module
2
+ var Divider_module_default = { "divider": "_divider_1ddgq_1" };
3
+
4
+ // src/Divider/Divider.tsx
5
+ var _jsxruntime = require('react/jsx-runtime');
6
+ function Divider() {
7
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "hr", { className: Divider_module_default.divider });
8
+ }
9
+ Divider.displayName = "Divider";
10
+
11
+
12
+
13
+ exports.Divider = Divider;
14
+ //# sourceMappingURL=IMA6TVID.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["css-module:./Divider.module.css#css-module","../../src/Divider/Divider.tsx"],"names":[],"mappings":";AAA6F,IAAO,yBAAQ,EAAC,WAAU,mBAAkB;;;ACMhI;AADM,SAAR,UAA+C;AACpD,SAAO,oBAAC,QAAG,WAAW,uBAAO,SAAS;AACxC;AAEA,QAAQ,cAAc","sourcesContent":["import \"/Users/christian/cambly/syntax/packages/syntax-core/src/Divider/Divider.module.css\"; export default {\"divider\":\"_divider_1ddgq_1\"}","import styles from \"./Divider.module.css\";\n\n/**\n * [Divider](https://cambly-syntax.vercel.app/?path=/docs/components-divider--docs) is a thin horizontal line to group content in lists and layouts.\n */\nexport default function Divider(): React.ReactElement {\n return <hr className={styles.divider} />;\n}\n\nDivider.displayName = \"Divider\";\n"]}
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  Box_default
3
- } from "./LKQ7PJ4S.mjs";
3
+ } from "./HJYCSDLB.mjs";
4
4
  import {
5
5
  Typography_default
6
- } from "./BCWLWS7W.mjs";
6
+ } from "./3HUELEGR.mjs";
7
7
  import {
8
8
  useIsHydrated
9
9
  } from "./XFKGXL73.mjs";
@@ -83,4 +83,4 @@ function TextField({
83
83
  export {
84
84
  TextField
85
85
  };
86
- //# sourceMappingURL=RRE7PRE5.mjs.map
86
+ //# sourceMappingURL=JJQRVIE2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/TextField/TextField.tsx","css-module:./TextField.module.css#css-module"],"sourcesContent":["import React, {\n type ReactElement,\n type HTMLInputTypeAttribute,\n useId,\n} from \"react\";\nimport classNames from \"classnames\";\nimport styles from \"./TextField.module.css\";\nimport Box from \"../Box/Box\";\nimport Typography from \"../Typography/Typography\";\nimport useIsHydrated from \"../useIsHydrated\";\n\n/**\n * [TextField](https://cambly-syntax.vercel.app/?path=/docs/components-textfield--docs) is a component that allows users to enter text.\n */\nexport default function TextField({\n autoComplete,\n \"data-testid\": dataTestId,\n disabled: disabledProp = false,\n errorText = \"\",\n helperText = \"\",\n id,\n label,\n onChange,\n placeholder = \"\",\n size = \"md\",\n type = \"text\",\n value = \"\",\n}: {\n /**\n * The autocomplete attribute specifies whether or not an input field should have autocomplete enabled.\n *\n * Feel free to add new values from the [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) as needed\n */\n autoComplete?: \"current-password\" | \"new-password\" | \"off\" | \"on\" | \"email\";\n /**\n * A data-testid to make querying for the TextField easier.\n */\n \"data-testid\"?: string;\n /**\n * If true, the TextField will be disabled.\n *\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * Text shown below TextField if there is an input error.\n */\n errorText?: string;\n /**\n * Informative helper text shown below TextField\n */\n helperText?: string;\n /**\n * TextField id, if not provided, a unique id will be generated\n */\n id?: string;\n /**\n * TextField visible label\n */\n label: string;\n /**\n * The callback to be called the input changes\n */\n onChange: React.ChangeEventHandler<HTMLInputElement>;\n /**\n * Optional TextField placeholder text\n */\n placeholder?: string;\n /**\n * Size of the TextField\n * * `sm`: 32px\n * * `md`: 40px\n * * `lg`: 48px\n *\n * @defaultValue \"md\"\n */\n size?: \"sm\" | \"md\" | \"lg\";\n /**\n * Input type of the TextField\n *\n * See [full list of input types](https://developer.mozilla.org/en-US/docs/Learn/Forms/HTML5_input_types)\n */\n type?: HTMLInputTypeAttribute;\n /**\n * Value of the TextField\n */\n value: string;\n}): ReactElement {\n const isHydrated = useIsHydrated();\n const disabled = !isHydrated || disabledProp;\n const reactId = useId();\n const inputId = id ?? reactId;\n\n return (\n <Box\n display=\"flex\"\n direction=\"column\"\n gap={2}\n width=\"100%\"\n dangerouslySetInlineStyle={{\n __style: {\n opacity: disabled ? 0.5 : 1,\n },\n }}\n >\n {label && (\n <label className={styles.label} htmlFor={inputId}>\n <Box paddingX={1}>\n <Typography size={100} color=\"gray700\">\n {label}\n </Typography>\n </Box>\n </label>\n )}\n <input\n autoComplete={autoComplete}\n className={classNames(styles.textfield, styles[size], {\n [styles.inputError]: errorText,\n })}\n data-testid={dataTestId}\n disabled={disabled}\n id={inputId}\n type={type}\n onChange={onChange}\n placeholder={placeholder}\n value={value}\n />\n {(helperText || errorText) && (\n <Box paddingX={1}>\n <Typography\n size={100}\n color={errorText ? \"destructive-primary\" : \"gray700\"}\n >\n {errorText || helperText}\n </Typography>\n </Box>\n )}\n </Box>\n );\n}\n","import \"/home/runner/work/syntax/syntax/packages/syntax-core/src/TextField/TextField.module.css\"; export default {\"textfield\":\"_textfield_cltsv_1\",\"label\":\"_label_cltsv_21\",\"sm\":\"_sm_cltsv_25\",\"md\":\"_md_cltsv_30\",\"lg\":\"_lg_cltsv_35\",\"inputError\":\"_inputError_cltsv_40\"}"],"mappings":";;;;;;;;;;;AAAA;AAAA,EAGE;AAAA,OACK;AACP,OAAO,gBAAgB;;;ACL2E,IAAO,2BAAQ,EAAC,aAAY,sBAAqB,SAAQ,mBAAkB,MAAK,gBAAe,MAAK,gBAAe,MAAK,gBAAe,cAAa,uBAAsB;;;AD8FxQ,SAcQ,KAdR;AAhFW,SAAR,UAA2B;AAAA,EAChC;AAAA,EACA,eAAe;AAAA,EACf,UAAU,eAAe;AAAA,EACzB,YAAY;AAAA,EACZ,aAAa;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd,OAAO;AAAA,EACP,OAAO;AAAA,EACP,QAAQ;AACV,GA4DiB;AACf,QAAM,aAAa,cAAc;AACjC,QAAM,WAAW,CAAC,cAAc;AAChC,QAAM,UAAU,MAAM;AACtB,QAAM,UAAU,kBAAM;AAEtB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAQ;AAAA,MACR,WAAU;AAAA,MACV,KAAK;AAAA,MACL,OAAM;AAAA,MACN,2BAA2B;AAAA,QACzB,SAAS;AAAA,UACP,SAAS,WAAW,MAAM;AAAA,QAC5B;AAAA,MACF;AAAA,MAEC;AAAA,iBACC,oBAAC,WAAM,WAAW,yBAAO,OAAO,SAAS,SACvC,8BAAC,eAAI,UAAU,GACb,8BAAC,sBAAW,MAAM,KAAK,OAAM,WAC1B,iBACH,GACF,GACF;AAAA,QAEF;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA,WAAW,WAAW,yBAAO,WAAW,yBAAO,IAAI,GAAG;AAAA,cACpD,CAAC,yBAAO,UAAU,GAAG;AAAA,YACvB,CAAC;AAAA,YACD,eAAa;AAAA,YACb;AAAA,YACA,IAAI;AAAA,YACJ;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA;AAAA,QACF;AAAA,SACE,cAAc,cACd,oBAAC,eAAI,UAAU,GACb;AAAA,UAAC;AAAA;AAAA,YACC,MAAM;AAAA,YACN,OAAO,YAAY,wBAAwB;AAAA,YAE1C,uBAAa;AAAA;AAAA,QAChB,GACF;AAAA;AAAA;AAAA,EAEJ;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../src/TextField/TextField.tsx","css-module:./TextField.module.css#css-module"],"sourcesContent":["import React, {\n type ReactElement,\n type HTMLInputTypeAttribute,\n useId,\n} from \"react\";\nimport classNames from \"classnames\";\nimport styles from \"./TextField.module.css\";\nimport Box from \"../Box/Box\";\nimport Typography from \"../Typography/Typography\";\nimport useIsHydrated from \"../useIsHydrated\";\n\n/**\n * [TextField](https://cambly-syntax.vercel.app/?path=/docs/components-textfield--docs) is a component that allows users to enter text.\n */\nexport default function TextField({\n autoComplete,\n \"data-testid\": dataTestId,\n disabled: disabledProp = false,\n errorText = \"\",\n helperText = \"\",\n id,\n label,\n onChange,\n placeholder = \"\",\n size = \"md\",\n type = \"text\",\n value = \"\",\n}: {\n /**\n * The autocomplete attribute specifies whether or not an input field should have autocomplete enabled.\n *\n * Feel free to add new values from the [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) as needed\n */\n autoComplete?: \"current-password\" | \"new-password\" | \"off\" | \"on\" | \"email\";\n /**\n * A data-testid to make querying for the TextField easier.\n */\n \"data-testid\"?: string;\n /**\n * If true, the TextField will be disabled.\n *\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * Text shown below TextField if there is an input error.\n */\n errorText?: string;\n /**\n * Informative helper text shown below TextField\n */\n helperText?: string;\n /**\n * TextField id, if not provided, a unique id will be generated\n */\n id?: string;\n /**\n * TextField visible label\n */\n label: string;\n /**\n * The callback to be called the input changes\n */\n onChange: React.ChangeEventHandler<HTMLInputElement>;\n /**\n * Optional TextField placeholder text\n */\n placeholder?: string;\n /**\n * Size of the TextField\n * * `sm`: 32px\n * * `md`: 40px\n * * `lg`: 48px\n *\n * @defaultValue \"md\"\n */\n size?: \"sm\" | \"md\" | \"lg\";\n /**\n * Input type of the TextField\n *\n * See [full list of input types](https://developer.mozilla.org/en-US/docs/Learn/Forms/HTML5_input_types)\n */\n type?: HTMLInputTypeAttribute;\n /**\n * Value of the TextField\n */\n value: string;\n}): ReactElement {\n const isHydrated = useIsHydrated();\n const disabled = !isHydrated || disabledProp;\n const reactId = useId();\n const inputId = id ?? reactId;\n\n return (\n <Box\n display=\"flex\"\n direction=\"column\"\n gap={2}\n width=\"100%\"\n dangerouslySetInlineStyle={{\n __style: {\n opacity: disabled ? 0.5 : 1,\n },\n }}\n >\n {label && (\n <label className={styles.label} htmlFor={inputId}>\n <Box paddingX={1}>\n <Typography size={100} color=\"gray700\">\n {label}\n </Typography>\n </Box>\n </label>\n )}\n <input\n autoComplete={autoComplete}\n className={classNames(styles.textfield, styles[size], {\n [styles.inputError]: errorText,\n })}\n data-testid={dataTestId}\n disabled={disabled}\n id={inputId}\n type={type}\n onChange={onChange}\n placeholder={placeholder}\n value={value}\n />\n {(helperText || errorText) && (\n <Box paddingX={1}>\n <Typography\n size={100}\n color={errorText ? \"destructive-primary\" : \"gray700\"}\n >\n {errorText || helperText}\n </Typography>\n </Box>\n )}\n </Box>\n );\n}\n","import \"/Users/christian/cambly/syntax/packages/syntax-core/src/TextField/TextField.module.css\"; export default {\"textfield\":\"_textfield_cltsv_1\",\"label\":\"_label_cltsv_21\",\"sm\":\"_sm_cltsv_25\",\"md\":\"_md_cltsv_30\",\"lg\":\"_lg_cltsv_35\",\"inputError\":\"_inputError_cltsv_40\"}"],"mappings":";;;;;;;;;;;AAAA;AAAA,EAGE;AAAA,OACK;AACP,OAAO,gBAAgB;;;ACL0E,IAAO,2BAAQ,EAAC,aAAY,sBAAqB,SAAQ,mBAAkB,MAAK,gBAAe,MAAK,gBAAe,MAAK,gBAAe,cAAa,uBAAsB;;;AD8FvQ,SAcQ,KAdR;AAhFW,SAAR,UAA2B;AAAA,EAChC;AAAA,EACA,eAAe;AAAA,EACf,UAAU,eAAe;AAAA,EACzB,YAAY;AAAA,EACZ,aAAa;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd,OAAO;AAAA,EACP,OAAO;AAAA,EACP,QAAQ;AACV,GA4DiB;AACf,QAAM,aAAa,cAAc;AACjC,QAAM,WAAW,CAAC,cAAc;AAChC,QAAM,UAAU,MAAM;AACtB,QAAM,UAAU,kBAAM;AAEtB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAQ;AAAA,MACR,WAAU;AAAA,MACV,KAAK;AAAA,MACL,OAAM;AAAA,MACN,2BAA2B;AAAA,QACzB,SAAS;AAAA,UACP,SAAS,WAAW,MAAM;AAAA,QAC5B;AAAA,MACF;AAAA,MAEC;AAAA,iBACC,oBAAC,WAAM,WAAW,yBAAO,OAAO,SAAS,SACvC,8BAAC,eAAI,UAAU,GACb,8BAAC,sBAAW,MAAM,KAAK,OAAM,WAC1B,iBACH,GACF,GACF;AAAA,QAEF;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA,WAAW,WAAW,yBAAO,WAAW,yBAAO,IAAI,GAAG;AAAA,cACpD,CAAC,yBAAO,UAAU,GAAG;AAAA,YACvB,CAAC;AAAA,YACD,eAAa;AAAA,YACb;AAAA,YACA,IAAI;AAAA,YACJ;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA;AAAA,QACF;AAAA,SACE,cAAc,cACd,oBAAC,eAAI,UAAU,GACb;AAAA,UAAC;AAAA;AAAA,YACC,MAAM;AAAA,YACN,OAAO,YAAY,wBAAwB;AAAA,YAE1C,uBAAa;AAAA;AAAA,QAChB,GACF;AAAA;AAAA;AAAA,EAEJ;AAEJ;","names":[]}
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  Box_default
3
- } from "./LKQ7PJ4S.mjs";
3
+ } from "./HJYCSDLB.mjs";
4
4
  import {
5
5
  Typography_default
6
- } from "./BCWLWS7W.mjs";
6
+ } from "./3HUELEGR.mjs";
7
7
 
8
8
  // css-module:./Badge.module.css#css-module
9
9
  var Badge_module_default = { "icon": "_icon_1g9xb_1" };
@@ -50,4 +50,4 @@ var Badge_default = Badge;
50
50
  export {
51
51
  Badge_default
52
52
  };
53
- //# sourceMappingURL=BJXYKZMK.mjs.map
53
+ //# sourceMappingURL=JMKHYRFL.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["css-module:./Badge.module.css#css-module","../../src/Badge/Badge.tsx"],"sourcesContent":["import \"/Users/christian/cambly/syntax/packages/syntax-core/src/Badge/Badge.module.css\"; export default {\"icon\":\"_icon_1g9xb_1\"}","import Typography from \"../Typography/Typography\";\nimport Box from \"../Box/Box\";\nimport styles from \"./Badge.module.css\";\n\nconst BadgeColor = [\n \"gray200\",\n \"gray900\",\n \"destructive700\",\n \"orange700\",\n \"yellow700\",\n \"success700\",\n \"primary700\",\n \"purple700\",\n] as const;\n\nconst textColorForBackgroundColor = (\n color: (typeof BadgeColor)[number],\n): \"gray900\" | \"white\" => {\n switch (color) {\n case \"gray200\":\n case \"yellow700\":\n return \"gray900\";\n default:\n return \"white\";\n }\n};\n\n/**\n * [Badge](https://cambly-syntax.vercel.app/?path=/docs/components-badge--docs) is a component to display short text and give additional context to features and other components.\n */\nconst Badge = ({\n icon: Icon,\n text,\n color = \"primary700\",\n}: {\n /**\n * The icon to be displayed. Please use a [Material Icon](https://material.io/resources/icons/)\n */\n icon?: React.ComponentType<{ className?: string }>;\n /**\n * The text to display inside the badge\n */\n text: string;\n /**\n * The color of the badge\n *\n * @defaultValue \"primary700\"\n */\n color?: (typeof BadgeColor)[number];\n}): JSX.Element => (\n <Box\n display=\"inlineBlock\"\n paddingX={2}\n paddingY={1}\n rounding=\"full\"\n backgroundColor={color}\n >\n <Typography color={textColorForBackgroundColor(color)} size={100}>\n <Box display=\"flex\" gap={1} alignItems=\"center\" justifyContent=\"start\">\n {Icon && <Icon className={styles.icon} />}\n <Typography\n color={textColorForBackgroundColor(color)}\n size={100}\n weight=\"bold\"\n >\n {text}\n </Typography>\n </Box>\n </Typography>\n </Box>\n);\n\nexport default Badge;\n"],"mappings":";;;;;;;;AAAyF,IAAO,uBAAQ,EAAC,QAAO,gBAAe;;;AC0DzH,SACW,KADX;AA3CN,IAAM,8BAA8B,CAClC,UACwB;AACxB,UAAQ,OAAO;AAAA,IACb,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;AAKA,IAAM,QAAQ,CAAC;AAAA,EACb,MAAM;AAAA,EACN;AAAA,EACA,QAAQ;AACV,MAgBE;AAAA,EAAC;AAAA;AAAA,IACC,SAAQ;AAAA,IACR,UAAU;AAAA,IACV,UAAU;AAAA,IACV,UAAS;AAAA,IACT,iBAAiB;AAAA,IAEjB,8BAAC,sBAAW,OAAO,4BAA4B,KAAK,GAAG,MAAM,KAC3D,+BAAC,eAAI,SAAQ,QAAO,KAAK,GAAG,YAAW,UAAS,gBAAe,SAC5D;AAAA,cAAQ,oBAAC,QAAK,WAAW,qBAAO,MAAM;AAAA,MACvC;AAAA,QAAC;AAAA;AAAA,UACC,OAAO,4BAA4B,KAAK;AAAA,UACxC,MAAM;AAAA,UACN,QAAO;AAAA,UAEN;AAAA;AAAA,MACH;AAAA,OACF,GACF;AAAA;AACF;AAGF,IAAO,gBAAQ;","names":[]}
@@ -0,0 +1,110 @@
1
+ import {
2
+ Heading_default
3
+ } from "./KNBS7I65.mjs";
4
+ import {
5
+ StopScroll
6
+ } from "./UCMB6MFN.mjs";
7
+ import {
8
+ Layer
9
+ } from "./YOICG7YI.mjs";
10
+ import {
11
+ Box_default
12
+ } from "./4VIJNV7V.mjs";
13
+ import {
14
+ FocusTrap
15
+ } from "./PGVLU6C3.mjs";
16
+
17
+ // src/Modal/Modal.tsx
18
+ import classnames from "classnames";
19
+
20
+ // css-module:./Modal.module.css#css-module
21
+ var Modal_module_default = { "backdrop": "_backdrop_30t3h_1", "closeButton": "_closeButton_30t3h_12", "closeButtonWithImage": "_closeButtonWithImage_30t3h_32" };
22
+
23
+ // src/Modal/Modal.tsx
24
+ import { jsx, jsxs } from "react/jsx-runtime";
25
+ function XIcon({ color = "#000" }) {
26
+ return /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "12", height: "12", fill: color, children: /* @__PURE__ */ jsx(
27
+ "path",
28
+ {
29
+ fill: "inherit",
30
+ d: "M11.25.758a.83.83 0 0 0-1.175 0L6 4.825 1.925.75A.83.83 0 1 0 .75 1.925L4.825 6 .75 10.075a.83.83 0 1 0 1.175 1.175L6 7.175l4.075 4.075a.83.83 0 1 0 1.175-1.175L7.175 6l4.075-4.075a.835.835 0 0 0 0-1.167Z"
31
+ }
32
+ ) });
33
+ }
34
+ var sizeWidth = {
35
+ sm: 400,
36
+ lg: 600
37
+ };
38
+ function Modal({
39
+ header,
40
+ children,
41
+ image,
42
+ onDismiss,
43
+ footer,
44
+ accessibilityCloseLabel = "close modal",
45
+ size = "sm",
46
+ zIndex = 1,
47
+ "data-testid": dataTestId
48
+ }) {
49
+ return /* @__PURE__ */ jsx(Layer, { zIndex, children: /* @__PURE__ */ jsx(StopScroll, { children: /* @__PURE__ */ jsx(FocusTrap, { children: /* @__PURE__ */ jsx(
50
+ "div",
51
+ {
52
+ className: Modal_module_default.backdrop,
53
+ role: "presentation",
54
+ onClick: (e) => e.target === e.currentTarget && onDismiss(),
55
+ onKeyDown: (e) => e.key === "Escape" && onDismiss(),
56
+ children: /* @__PURE__ */ jsxs(
57
+ Box_default,
58
+ {
59
+ "data-testid": dataTestId,
60
+ backgroundColor: "white",
61
+ rounding: "xl",
62
+ display: "flex",
63
+ direction: "column",
64
+ minWidth: 240,
65
+ maxWidth: sizeWidth[size],
66
+ width: "100%",
67
+ dangerouslySetInlineStyle: { __style: { overflow: "hidden" } },
68
+ children: [
69
+ /* @__PURE__ */ jsx(Box_default, { position: "relative", children: /* @__PURE__ */ jsx(
70
+ "button",
71
+ {
72
+ "aria-label": accessibilityCloseLabel,
73
+ type: "button",
74
+ className: classnames(Modal_module_default.closeButton, {
75
+ [Modal_module_default.closeButtonWithImage]: !!image
76
+ }),
77
+ onClick: onDismiss,
78
+ children: /* @__PURE__ */ jsx(XIcon, { color: image ? "#fff" : "#000" })
79
+ }
80
+ ) }),
81
+ image && /* @__PURE__ */ jsx(Box_default, { maxHeight: 200, children: image }),
82
+ /* @__PURE__ */ jsxs(Box_default, { display: "flex", gap: 3, direction: "column", padding: 9, children: [
83
+ /* @__PURE__ */ jsx(Heading_default, { as: "h1", size: 500, children: header }),
84
+ /* @__PURE__ */ jsx(Box_default, { marginBottom: 4, children }),
85
+ footer && /* @__PURE__ */ jsx(
86
+ Box_default,
87
+ {
88
+ display: "flex",
89
+ direction: "column",
90
+ gap: 3,
91
+ smDirection: "row",
92
+ smJustifyContent: "end",
93
+ lgDirection: "row",
94
+ lgJustifyContent: "end",
95
+ children: footer
96
+ }
97
+ )
98
+ ] })
99
+ ]
100
+ }
101
+ )
102
+ }
103
+ ) }) }) });
104
+ }
105
+ Modal.displayName = "Modal";
106
+
107
+ export {
108
+ Modal
109
+ };
110
+ //# sourceMappingURL=JQHT6NET.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Modal/Modal.tsx","css-module:./Modal.module.css#css-module"],"sourcesContent":["import { type ReactElement } from \"react\";\nimport classnames from \"classnames\";\n\nimport Heading from \"../Heading/Heading\";\nimport Box from \"../Box/Box\";\n\nimport FocusTrap from \"./FocusTrap\";\nimport StopScroll from \"./StopScroll\";\nimport Layer from \"./Layer\";\nimport styles from \"./Modal.module.css\";\n\nfunction XIcon({ color = \"#000\" }: { color?: string }) {\n return (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" fill={color}>\n <path\n fill=\"inherit\"\n d=\"M11.25.758a.83.83 0 0 0-1.175 0L6 4.825 1.925.75A.83.83 0 1 0 .75 1.925L4.825 6 .75 10.075a.83.83 0 1 0 1.175 1.175L6 7.175l4.075 4.075a.83.83 0 1 0 1.175-1.175L7.175 6l4.075-4.075a.835.835 0 0 0 0-1.167Z\"\n />\n </svg>\n );\n}\n\n// Note: Only sm + lg size currently. design thinks there should only be two sizes.\n// If there IS a md size at some point, we should use the \"size\" const.\nconst sizeWidth = {\n sm: 400,\n lg: 600,\n} as const;\n\n/**\n * [Modal](https://cambly-syntax.vercel.app/?path=/docs/components-modal--docs) is a dialog that appears on top of the main content and locks user interaction within the modal.\n *\n ```\n const [showModal, setShowModal] = useState(false)\n\n return (\n <>\n {showModal && <Modal\n header=\"header text\"\n onDismiss={() => setShowModal(false)}\n footer={\n <>\n <Button\n text=\"Cancel\"\n color=\"secondary\"\n onClick={() => {}}\n />\n <Button\n text=\"Confirm\"\n onClick={() => {}}\n />\n </>\n }\n >\n <Typography>\n Body text goes here!\n </Typography>\n </Modal> }\n </>\n )\n ```\n */\nexport default function Modal({\n header,\n children,\n image,\n onDismiss,\n footer,\n accessibilityCloseLabel = \"close modal\",\n size = \"sm\",\n zIndex = 1,\n \"data-testid\": dataTestId,\n}: {\n /**\n * The modal's main content. Should typically take in `Typography`'d text.\n */\n children: JSX.Element;\n /**\n * The header inside a modal as a string.\n */\n header: string;\n /**\n * What the X button (or clicking out of the modal area) does.\n * Typically used for closing the Modal\n */\n onDismiss: () => void;\n /**\n * The optional image rendered above the Modal.\n * Image size should be 400w x 200h.\n * If images aren't that sized, should ask design to give another image.\n */\n image?: JSX.Element;\n /**\n * The footer for the bottom area of the Modal. Typically used for rendering buttons.\n * * Use Syntax `Button` and pass it into footer.\n * * If one button, just pass it in. If two, wrap in a React fragment (`<> </>`)\n * * If two(2) buttons, put primary button _second_.\n *\n <>\n <Button\n text=\"Cancel\"\n color=\"secondary\"\n onClick={() => {}}\n />\n <Button\n text=\"Confirm\"\n onClick={() => {}}\n />\n </>\n */\n footer?: JSX.Element;\n /**\n * The accessibilty text on the close button.\n * (Sets the aria-label of the button)\n *\n *\n * @defaultValue close modal\n */\n accessibilityCloseLabel?: string;\n /**\n * The size of the card\n *\n * * `sm`: 400px\n * * `lg`: 600px\n *\n *\n * @defaultValue sm\n */\n size?: keyof typeof sizeWidth;\n /**\n * The z-index for the modal.\n * Typically used if there are other things on the page with higher z-index and you need this overlayed on top.\n *\n * @defaultValue 0\n */\n zIndex?: number;\n /**\n * Test id for the modal\n */\n \"data-testid\"?: string;\n}): ReactElement {\n return (\n <Layer zIndex={zIndex}>\n <StopScroll>\n <FocusTrap>\n <div\n className={styles.backdrop}\n role=\"presentation\"\n onClick={(e) => e.target === e.currentTarget && onDismiss()}\n onKeyDown={(e) => e.key === \"Escape\" && onDismiss()}\n >\n <Box\n data-testid={dataTestId}\n backgroundColor=\"white\"\n rounding=\"xl\"\n display=\"flex\"\n direction=\"column\"\n minWidth={240}\n maxWidth={sizeWidth[size]}\n width=\"100%\"\n dangerouslySetInlineStyle={{ __style: { overflow: \"hidden\" } }}\n >\n <Box position=\"relative\">\n <button\n aria-label={accessibilityCloseLabel}\n type=\"button\"\n className={classnames(styles.closeButton, {\n [styles.closeButtonWithImage]: !!image,\n })}\n onClick={onDismiss}\n >\n <XIcon color={image ? \"#fff\" : \"#000\"} />\n </button>\n </Box>\n {image && <Box maxHeight={200}>{image}</Box>}\n <Box display=\"flex\" gap={3} direction=\"column\" padding={9}>\n <Heading as=\"h1\" size={500}>\n {header}\n </Heading>\n <Box marginBottom={4}>{children}</Box>\n {footer && (\n <Box\n display=\"flex\"\n direction=\"column\"\n gap={3}\n smDirection=\"row\"\n smJustifyContent=\"end\"\n lgDirection=\"row\"\n lgJustifyContent=\"end\"\n >\n {footer}\n </Box>\n )}\n </Box>\n </Box>\n </div>\n </FocusTrap>\n </StopScroll>\n </Layer>\n );\n}\n\nModal.displayName = \"Modal\";\n","import \"/Users/christian/cambly/syntax/packages/syntax-core/src/Modal/Modal.module.css\"; export default {\"backdrop\":\"_backdrop_30t3h_1\",\"closeButton\":\"_closeButton_30t3h_12\",\"closeButtonWithImage\":\"_closeButtonWithImage_30t3h_32\"}"],"mappings":";;;;;;;;;;;;;;;;;AACA,OAAO,gBAAgB;;;ACDkE,IAAO,uBAAQ,EAAC,YAAW,qBAAoB,eAAc,yBAAwB,wBAAuB,iCAAgC;;;ADc/N,cAiKQ,YAjKR;AAHN,SAAS,MAAM,EAAE,QAAQ,OAAO,GAAuB;AACrD,SACE,oBAAC,SAAI,OAAM,8BAA6B,OAAM,MAAK,QAAO,MAAK,MAAM,OACnE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,GAAE;AAAA;AAAA,EACJ,GACF;AAEJ;AAIA,IAAM,YAAY;AAAA,EAChB,IAAI;AAAA,EACJ,IAAI;AACN;AAmCe,SAAR,MAAuB;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,0BAA0B;AAAA,EAC1B,OAAO;AAAA,EACP,SAAS;AAAA,EACT,eAAe;AACjB,GAoEiB;AACf,SACE,oBAAC,SAAM,QACL,8BAAC,cACC,8BAAC,aACC;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,qBAAO;AAAA,MAClB,MAAK;AAAA,MACL,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,iBAAiB,UAAU;AAAA,MAC1D,WAAW,CAAC,MAAM,EAAE,QAAQ,YAAY,UAAU;AAAA,MAElD;AAAA,QAAC;AAAA;AAAA,UACC,eAAa;AAAA,UACb,iBAAgB;AAAA,UAChB,UAAS;AAAA,UACT,SAAQ;AAAA,UACR,WAAU;AAAA,UACV,UAAU;AAAA,UACV,UAAU,UAAU,IAAI;AAAA,UACxB,OAAM;AAAA,UACN,2BAA2B,EAAE,SAAS,EAAE,UAAU,SAAS,EAAE;AAAA,UAE7D;AAAA,gCAAC,eAAI,UAAS,YACZ;AAAA,cAAC;AAAA;AAAA,gBACC,cAAY;AAAA,gBACZ,MAAK;AAAA,gBACL,WAAW,WAAW,qBAAO,aAAa;AAAA,kBACxC,CAAC,qBAAO,oBAAoB,GAAG,CAAC,CAAC;AAAA,gBACnC,CAAC;AAAA,gBACD,SAAS;AAAA,gBAET,8BAAC,SAAM,OAAO,QAAQ,SAAS,QAAQ;AAAA;AAAA,YACzC,GACF;AAAA,YACC,SAAS,oBAAC,eAAI,WAAW,KAAM,iBAAM;AAAA,YACtC,qBAAC,eAAI,SAAQ,QAAO,KAAK,GAAG,WAAU,UAAS,SAAS,GACtD;AAAA,kCAAC,mBAAQ,IAAG,MAAK,MAAM,KACpB,kBACH;AAAA,cACA,oBAAC,eAAI,cAAc,GAAI,UAAS;AAAA,cAC/B,UACC;AAAA,gBAAC;AAAA;AAAA,kBACC,SAAQ;AAAA,kBACR,WAAU;AAAA,kBACV,KAAK;AAAA,kBACL,aAAY;AAAA,kBACZ,kBAAiB;AAAA,kBACjB,aAAY;AAAA,kBACZ,kBAAiB;AAAA,kBAEhB;AAAA;AAAA,cACH;AAAA,eAEJ;AAAA;AAAA;AAAA,MACF;AAAA;AAAA,EACF,GACF,GACF,GACF;AAEJ;AAEA,MAAM,cAAc;","names":[]}
@@ -6,25 +6,22 @@ import {
6
6
  } from "./AMBZXKUQ.mjs";
7
7
  import {
8
8
  iconSize_default
9
- } from "./A7UVLRKG.mjs";
9
+ } from "./RCT3DP22.mjs";
10
10
  import {
11
11
  Box_default
12
- } from "./LKQ7PJ4S.mjs";
13
- import {
14
- Typography_default
15
- } from "./BCWLWS7W.mjs";
16
- import {
17
- useIsHydrated
18
- } from "./XFKGXL73.mjs";
12
+ } from "./4VIJNV7V.mjs";
19
13
  import {
20
14
  foregroundTypographyColor
21
- } from "./XN5AALLC.mjs";
15
+ } from "./LTYTYJEN.mjs";
22
16
  import {
23
17
  foregroundColor
24
- } from "./Q2TIB7ZC.mjs";
18
+ } from "./F4HTASEF.mjs";
25
19
  import {
26
20
  backgroundColor
27
- } from "./R6CDK4GP.mjs";
21
+ } from "./ZHZ6U63Z.mjs";
22
+ import {
23
+ Typography_default
24
+ } from "./WIDP7NHD.mjs";
28
25
 
29
26
  // src/Button/Button.tsx
30
27
  import { forwardRef } from "react";
@@ -52,7 +49,6 @@ var Button = forwardRef(
52
49
  tooltip,
53
50
  type = "button"
54
51
  }, ref) => {
55
- const isHydrated = useIsHydrated();
56
52
  return /* @__PURE__ */ jsxs(
57
53
  "button",
58
54
  {
@@ -61,7 +57,7 @@ var Button = forwardRef(
61
57
  "aria-label": accessibilityLabel,
62
58
  type,
63
59
  title: tooltip,
64
- disabled: !isHydrated || disabled || loading,
60
+ disabled: disabled || loading,
65
61
  onClick,
66
62
  className: classNames(
67
63
  Button_module_default.button,
@@ -117,4 +113,4 @@ var Button_default = Button;
117
113
  export {
118
114
  Button_default
119
115
  };
120
- //# sourceMappingURL=DVVFHZBW.mjs.map
116
+ //# sourceMappingURL=K3JR7BCX.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Button/Button.tsx","css-module:./Button.module.css#css-module"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport classNames from \"classnames\";\n\nimport backgroundColor from \"../colors//backgroundColor\";\nimport foregroundColor from \"../colors/foregroundColor\";\nimport foregroundTypographyColor from \"../colors/foregroundTypographyColor\";\nimport { type Size } from \"../constants\";\nimport Typography from \"../Typography/Typography\";\nimport Box from \"../Box/Box\";\n\nimport iconSize from \"./constants/iconSize\";\nimport textVariant from \"./constants/textVariant\";\nimport loadingIconSize from \"./constants/loadingIconSize\";\nimport styles from \"./Button.module.css\";\n\ntype ButtonProps = {\n /**\n * Test id for the button\n */\n \"data-testid\"?: string;\n /**\n * The text to be displayed inside the button\n */\n text: string;\n /**\n * The text to be displayed inside the button when it is in a loading state\n */\n loadingText?: string;\n /**\n * The color of the button\n *\n * @defaultValue \"primary\"\n */\n color?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"destructive-primary\"\n | \"destructive-secondary\"\n | \"destructive-tertiary\"\n | \"branded\"\n | \"success\";\n /**\n * The size of the button\n *\n * * `sm`: 32px\n * * `md`: 40px\n * * `lg`: 48px\n *\n * @defaultValue \"md\"\n */\n size?: (typeof Size)[number];\n /**\n * The label to be used for accessibility\n */\n accessibilityLabel?: string;\n /**\n * If `true`, the button will be disabled\n *\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * If `true`, the button will be in a loading state\n *\n * @defaultValue false\n */\n loading?: boolean;\n /**\n * If `true`, the button will take up the full width of its container\n *\n * @defaultValue false\n */\n fullWidth?: boolean;\n /**\n * The icon to be displayed at the start of the button. Please use a [Rounded Material Icon](https://material.io/resources/icons/?style=round)\n */\n startIcon?: React.ComponentType<{ className?: string }>;\n /**\n * The icon to be displayed at the end of the button. Please use a [Rounded Material Icon](https://material.io/resources/icons/?style=round)\n */\n endIcon?: React.ComponentType<{ className?: string }>;\n /**\n * The callback to be called when the button is clicked\n */\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * The tooltip to be displayed when the user hovers over the button\n */\n tooltip?: string;\n /**\n * The type you want to set for the primitive <button/>\n */\n type?: \"button\" | \"submit\" | \"reset\";\n};\n\n/**\n * [Button](https://cambly-syntax.vercel.app/?path=/docs/components-button--docs) is used to trigger an action or event, such as submitting a form, opening a dialog, canceling an action, or performing a delete operation.\n */\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n \"data-testid\": dataTestId,\n text,\n loadingText,\n color = \"primary\",\n size = \"md\",\n accessibilityLabel,\n disabled = false,\n loading = false,\n fullWidth = false,\n startIcon: StartIcon,\n endIcon: EndIcon,\n onClick,\n tooltip,\n type = \"button\",\n }: ButtonProps,\n ref,\n ) => {\n return (\n <button\n data-testid={dataTestId}\n ref={ref}\n aria-label={accessibilityLabel}\n type={type}\n title={tooltip}\n disabled={disabled || loading}\n onClick={onClick}\n className={classNames(\n styles.button,\n foregroundColor(color),\n backgroundColor(color),\n styles[size],\n {\n [styles.fullWidth]: fullWidth,\n [styles.buttonGap]: size === \"lg\" || size === \"md\",\n [styles.secondaryBorder]: color === \"secondary\",\n [styles.secondaryDestructiveBorder]:\n color === \"destructive-secondary\",\n },\n )}\n >\n {!loading && StartIcon && (\n <StartIcon className={classNames(styles.icon, iconSize[size])} />\n )}\n {((loading && loadingText) || (!loading && text)) && (\n <Box paddingX={1}>\n <Typography\n size={textVariant[size]}\n color={foregroundTypographyColor(color)}\n >\n <span style={{ fontWeight: 500 }}>\n {loading ? loadingText : text}\n </span>\n </Typography>\n </Box>\n )}\n {!loading && EndIcon && (\n <EndIcon className={classNames(styles.icon, iconSize[size])} />\n )}\n {loading && (\n <svg\n className={classNames(styles.loading, foregroundColor(color))}\n viewBox=\"22 22 44 44\"\n width={loadingIconSize[size]}\n height={loadingIconSize[size]}\n >\n <circle\n className={styles.loadingCircle}\n cx=\"44\"\n cy=\"44\"\n r=\"20.2\"\n fill=\"none\"\n strokeWidth=\"3.6\"\n />\n </svg>\n )}\n </button>\n );\n },\n);\n\nButton.displayName = \"Button\";\n\nexport default Button;\n","import \"/Users/christian/cambly/syntax/packages/syntax-core/src/Button/Button.module.css\"; export default {\"button\":\"_button_1iunh_1\",\"buttonGap\":\"_buttonGap_1iunh_9\",\"fullWidth\":\"_fullWidth_1iunh_50\",\"sm\":\"_sm_1iunh_54\",\"md\":\"_md_1iunh_61\",\"lg\":\"_lg_1iunh_68\",\"icon\":\"_icon_1iunh_75\",\"smIcon\":\"_smIcon_1iunh_79\",\"mdIcon\":\"_mdIcon_1iunh_86\",\"lgIcon\":\"_lgIcon_1iunh_93\",\"secondaryBorder\":\"_secondaryBorder_1iunh_100\",\"secondaryDestructiveBorder\":\"_secondaryDestructiveBorder_1iunh_104\",\"loading\":\"_loading_1iunh_118\",\"syntaxButtonLoadingRotate\":\"_syntaxButtonLoadingRotate_1iunh_1\",\"loadingCircle\":\"_loadingCircle_1iunh_122\"}"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAgB,kBAAkB;AAClC,OAAO,gBAAgB;;;ACDoE,IAAO,wBAAQ,EAAC,UAAS,mBAAkB,aAAY,sBAAqB,aAAY,uBAAsB,MAAK,gBAAe,MAAK,gBAAe,MAAK,gBAAe,QAAO,kBAAiB,UAAS,oBAAmB,UAAS,oBAAmB,UAAS,oBAAmB,mBAAkB,8BAA6B,8BAA6B,yCAAwC,WAAU,sBAAqB,6BAA4B,sCAAqC,iBAAgB,2BAA0B;;;ADwHzmB,SAuBI,KAvBJ;AArBN,IAAM,SAAS;AAAA,EACb,CACE;AAAA,IACE,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR,OAAO;AAAA,IACP;AAAA,IACA,WAAW;AAAA,IACX,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,OAAO;AAAA,EACT,GACA,QACG;AACH,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAa;AAAA,QACb;AAAA,QACA,cAAY;AAAA,QACZ;AAAA,QACA,OAAO;AAAA,QACP,UAAU,YAAY;AAAA,QACtB;AAAA,QACA,WAAW;AAAA,UACT,sBAAO;AAAA,UACP,gBAAgB,KAAK;AAAA,UACrB,gBAAgB,KAAK;AAAA,UACrB,sBAAO,IAAI;AAAA,UACX;AAAA,YACE,CAAC,sBAAO,SAAS,GAAG;AAAA,YACpB,CAAC,sBAAO,SAAS,GAAG,SAAS,QAAQ,SAAS;AAAA,YAC9C,CAAC,sBAAO,eAAe,GAAG,UAAU;AAAA,YACpC,CAAC,sBAAO,0BAA0B,GAChC,UAAU;AAAA,UACd;AAAA,QACF;AAAA,QAEC;AAAA,WAAC,WAAW,aACX,oBAAC,aAAU,WAAW,WAAW,sBAAO,MAAM,iBAAS,IAAI,CAAC,GAAG;AAAA,WAE9D,WAAW,eAAiB,CAAC,WAAW,SACzC,oBAAC,eAAI,UAAU,GACb;AAAA,YAAC;AAAA;AAAA,cACC,MAAM,oBAAY,IAAI;AAAA,cACtB,OAAO,0BAA0B,KAAK;AAAA,cAEtC,8BAAC,UAAK,OAAO,EAAE,YAAY,IAAI,GAC5B,oBAAU,cAAc,MAC3B;AAAA;AAAA,UACF,GACF;AAAA,UAED,CAAC,WAAW,WACX,oBAAC,WAAQ,WAAW,WAAW,sBAAO,MAAM,iBAAS,IAAI,CAAC,GAAG;AAAA,UAE9D,WACC;AAAA,YAAC;AAAA;AAAA,cACC,WAAW,WAAW,sBAAO,SAAS,gBAAgB,KAAK,CAAC;AAAA,cAC5D,SAAQ;AAAA,cACR,OAAO,wBAAgB,IAAI;AAAA,cAC3B,QAAQ,wBAAgB,IAAI;AAAA,cAE5B;AAAA,gBAAC;AAAA;AAAA,kBACC,WAAW,sBAAO;AAAA,kBAClB,IAAG;AAAA,kBACH,IAAG;AAAA,kBACH,GAAE;AAAA,kBACF,MAAK;AAAA,kBACL,aAAY;AAAA;AAAA,cACd;AAAA;AAAA,UACF;AAAA;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACF;AAEA,OAAO,cAAc;AAErB,IAAO,iBAAQ;","names":[]}
@@ -0,0 +1,34 @@
1
+ import {
2
+ AvatarGroupAvatar
3
+ } from "./FZO6U2EP.mjs";
4
+ import {
5
+ Box_default
6
+ } from "./HJYCSDLB.mjs";
7
+
8
+ // src/AvatarGroup/AvatarGroup.tsx
9
+ import { jsx } from "react/jsx-runtime";
10
+ function AvatarGroup({
11
+ children,
12
+ orientation = "standard"
13
+ }) {
14
+ return /* @__PURE__ */ jsx(
15
+ Box_default,
16
+ {
17
+ display: "flex",
18
+ alignItems: "center",
19
+ dangerouslySetInlineStyle: {
20
+ __style: {
21
+ flexDirection: orientation === "reverse" ? "row-reverse" : "row"
22
+ }
23
+ },
24
+ children
25
+ }
26
+ );
27
+ }
28
+ AvatarGroup.displayName = "AvatarGroup";
29
+ AvatarGroup.Avatar = AvatarGroupAvatar;
30
+
31
+ export {
32
+ AvatarGroup
33
+ };
34
+ //# sourceMappingURL=K6XUX6LJ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/AvatarGroup/AvatarGroup.tsx"],"sourcesContent":["import Box from \"../Box/Box\";\nimport { type ReactNode } from \"react\";\nimport AvatarGroupAvatar from \"./AvatarGroupAvatar\";\n\n/**\n * [AvatarGroup](https://cambly-syntax.vercel.app/?path=/docs/components-avatargroup--docs) is a stack of avatars to represent a group of people\n */\n\nexport default function AvatarGroup({\n children,\n orientation = \"standard\",\n}: {\n /**\n * One or more.Avatar components.\n */\n children: ReactNode;\n /**\n * Direction of the avatar stack\n * standard - avatars stack from right to left\n * reverse - avatars stack from left to right\n */\n orientation?: \"standard\" | \"reverse\";\n}): JSX.Element {\n return (\n <Box\n display=\"flex\"\n alignItems=\"center\"\n dangerouslySetInlineStyle={{\n __style: {\n flexDirection: orientation === \"reverse\" ? \"row-reverse\" : \"row\",\n },\n }}\n >\n {children}\n </Box>\n );\n}\n\nAvatarGroup.displayName = \"AvatarGroup\";\nAvatarGroup.Avatar = AvatarGroupAvatar;\n"],"mappings":";;;;;;;;AAwBI;AAhBW,SAAR,YAA6B;AAAA,EAClC;AAAA,EACA,cAAc;AAChB,GAWgB;AACd,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAQ;AAAA,MACR,YAAW;AAAA,MACX,2BAA2B;AAAA,QACzB,SAAS;AAAA,UACP,eAAe,gBAAgB,YAAY,gBAAgB;AAAA,QAC7D;AAAA,MACF;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;AAEA,YAAY,cAAc;AAC1B,YAAY,SAAS;","names":[]}
@@ -1,9 +1,9 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
2
 
3
- var _2O6FDRTFjs = require('./2O6FDRTF.js');
3
+ var _VPGRPGP7js = require('./VPGRPGP7.js');
4
4
 
5
5
 
6
- var _F3ZST4RLjs = require('./F3ZST4RL.js');
6
+ var _PTAZUBW6js = require('./PTAZUBW6.js');
7
7
 
8
8
 
9
9
  var _YJ7YDIGBjs = require('./YJ7YDIGB.js');
@@ -45,12 +45,12 @@ var Checkbox = ({
45
45
  const uncheckedStyling = _classnames2.default.call(void 0, checkboxStyling, Checkbox_module_default.uncheckedBox, {
46
46
  [Checkbox_module_default.uncheckedBorder]: !error,
47
47
  [Checkbox_module_default.uncheckedErrorBorder]: error,
48
- [_2O6FDRTFjs.Focus_module_default.accessibilityOutlineFocus]: isFocused && isFocusVisible
48
+ [_VPGRPGP7js.Focus_module_default.accessibilityOutlineFocus]: isFocused && isFocusVisible
49
49
  });
50
50
  const checkedStyling = _classnames2.default.call(void 0, checkboxStyling, Checkbox_module_default.checkedBox, {
51
51
  [Checkbox_module_default.checkedNonError]: !error,
52
52
  [Checkbox_module_default.checkedError]: error,
53
- [_2O6FDRTFjs.Focus_module_default.accessibilityOutlineFocus]: isFocused && isFocusVisible
53
+ [_VPGRPGP7js.Focus_module_default.accessibilityOutlineFocus]: isFocused && isFocusVisible
54
54
  });
55
55
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
56
56
  "label",
@@ -92,7 +92,7 @@ var Checkbox = ({
92
92
  }
93
93
  ),
94
94
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
95
- _F3ZST4RLjs.Typography_default,
95
+ _PTAZUBW6js.Typography_default,
96
96
  {
97
97
  size: typographySize[size],
98
98
  color: error ? "destructive-primary" : "gray800",
@@ -108,4 +108,4 @@ var Checkbox_default = Checkbox;
108
108
 
109
109
 
110
110
  exports.Checkbox_default = Checkbox_default;
111
- //# sourceMappingURL=BSWWGQAS.js.map
111
+ //# sourceMappingURL=KCIQ73YD.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Checkbox/Checkbox.tsx","css-module:./Checkbox.module.css#css-module"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,SAAmC,gBAAgB;AACnD,OAAO,gBAAgB;;;ACDyE,IAAO,0BAAQ,EAAC,iBAAgB,0BAAyB,gBAAe,yBAAwB,YAAW,sBAAqB,YAAW,sBAAqB,kBAAiB,4BAA2B,iBAAgB,2BAA0B,gBAAe,0BAAyB,mBAAkB,6BAA4B,wBAAuB,kCAAiC,cAAa,wBAAuB,mBAAkB,6BAA4B,gBAAe,0BAAyB,MAAK,gBAAe,MAAK,eAAc;;;ADwFjoB,SAYQ,KAZR;AAhFJ,IAAM,iBAAiB;AAAA,EACrB,IAAI;AAAA,EACJ,IAAI;AACN;AAEA,IAAM,YAAY;AAAA,EAChB,IAAI;AAAA,EACJ,IAAI;AACN;AAKA,IAAM,WAAW,CAAC;AAAA,EAChB,UAAU;AAAA,EACV,eAAe;AAAA,EACf,UAAU,eAAe;AAAA,EACzB,OAAO;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,EACR;AACF,MAwCoB;AAClB,QAAM,aAAa,cAAc;AACjC,QAAM,WAAW,CAAC,cAAc;AAChC,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,KAAK;AAChD,QAAM,EAAE,eAAe,IAAI,gBAAgB;AAE3C,QAAM,kBAAkB,WAAW,wBAAO,UAAU,wBAAO,IAAI,CAAC;AAChE,QAAM,mBAAmB,WAAW,iBAAiB,wBAAO,cAAc;AAAA,IACxE,CAAC,wBAAO,eAAe,GAAG,CAAC;AAAA,IAC3B,CAAC,wBAAO,oBAAoB,GAAG;AAAA,IAC/B,CAAC,qBAAY,yBAAyB,GAAG,aAAa;AAAA,EACxD,CAAC;AACD,QAAM,iBAAiB,WAAW,iBAAiB,wBAAO,YAAY;AAAA,IACpE,CAAC,wBAAO,eAAe,GAAG,CAAC;AAAA,IAC3B,CAAC,wBAAO,YAAY,GAAG;AAAA,IACvB,CAAC,qBAAY,yBAAyB,GAAG,aAAa;AAAA,EACxD,CAAC;AAED,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT,wBAAO;AAAA,QACP,wBAAO,SAAS,WAAW,aAAa,WAAW;AAAA,QACnD;AAAA,UACE,CAAC,wBAAO,QAAQ,GAAG;AAAA,QACrB;AAAA,MACF;AAAA,MAEA;AAAA,4BAAC,SAAI,WAAW,UAAU,iBAAiB,kBACxC,qBACC,oBAAC,SAAI,eAAY,QAAO,SAAQ,aAAY,OAAO,UAAU,IAAI,GAC/D;AAAA,UAAC;AAAA;AAAA,YACC,MAAK;AAAA,YACL,GAAE;AAAA;AAAA,QACH,GACH,GAEJ;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,eAAa;AAAA,YACb,MAAK;AAAA,YACL,WAAW;AAAA,cACT,wBAAO;AAAA,cACP,wBAAO,IAAI;AAAA,cACX,wBAAO,SAAS,WAAW,aAAa,WAAW;AAAA,YACrD;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,SAAS,MAAM;AACb,2BAAa,IAAI;AAAA,YACnB;AAAA,YACA,QAAQ,MAAM;AACZ,2BAAa,KAAK;AAAA,YACpB;AAAA;AAAA,QACF;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,MAAM,eAAe,IAAI;AAAA,YACzB,OAAO,QAAQ,wBAAwB;AAAA,YAEtC;AAAA;AAAA,QACH;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,mBAAQ","sourcesContent":["import React, { type ReactElement, useState } from \"react\";\nimport classNames from \"classnames\";\nimport useFocusVisible from \"../useFocusVisible\";\nimport styles from \"./Checkbox.module.css\";\nimport focusStyles from \"../Focus.module.css\";\nimport Typography from \"../Typography/Typography\";\nimport useIsHydrated from \"../useIsHydrated\";\n\nconst typographySize = {\n sm: 100,\n md: 200,\n} as const;\n\nconst iconWidth = {\n sm: 12,\n md: 20,\n};\n\n/**\n * [Checkbox](https://cambly-syntax.vercel.app/?path=/docs/components-checkbox--docs) is a clickable element that will show if an option has been selected or not.\n */\nconst Checkbox = ({\n checked = false,\n \"data-testid\": dataTestId,\n disabled: disabledProp = false,\n size = \"md\",\n label,\n error = false,\n onChange,\n}: {\n /**\n * Whether or not the box has been clicked\n *\n * @defaultValue false\n */\n checked: boolean;\n /**\n * Test id for the checkbox\n */\n \"data-testid\"?: string;\n /**\n * The callback to be called when the checkbox value changes\n */\n onChange: React.ChangeEventHandler<HTMLInputElement>;\n /**\n * Whether or not the box is disabled\n *\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * The size of the checkbox and icon\n *\n * * `sm`: 16px\n * * `md`: 24px\n *\n * @defaultValue \"md\"\n */\n size?: \"sm\" | \"md\";\n /**\n * The text accompanying the checkbox\n */\n label: string;\n /**\n * Whether or not there is an error with the input\n *\n * @defaultValue false\n */\n error?: boolean;\n}): ReactElement => {\n const isHydrated = useIsHydrated();\n const disabled = !isHydrated || disabledProp;\n const [isFocused, setIsFocused] = useState(false);\n const { isFocusVisible } = useFocusVisible();\n\n const checkboxStyling = classNames(styles.checkbox, styles[size]);\n const uncheckedStyling = classNames(checkboxStyling, styles.uncheckedBox, {\n [styles.uncheckedBorder]: !error,\n [styles.uncheckedErrorBorder]: error,\n [focusStyles.accessibilityOutlineFocus]: isFocused && isFocusVisible,\n });\n const checkedStyling = classNames(checkboxStyling, styles.checkedBox, {\n [styles.checkedNonError]: !error,\n [styles.checkedError]: error,\n [focusStyles.accessibilityOutlineFocus]: isFocused && isFocusVisible,\n });\n\n return (\n <label\n className={classNames(\n styles.mainContainer,\n styles[`cursor${disabled ? \"Disabled\" : \"Enabled\"}`],\n {\n [styles.disabled]: disabled,\n },\n )}\n >\n <div className={checked ? checkedStyling : uncheckedStyling}>\n {checked && (\n <svg aria-hidden=\"true\" viewBox=\"0 0 24 24\" width={iconWidth[size]}>\n <path\n fill=\"#fff\"\n d=\"m9 16.2-3.5-3.5a.9839.9839 0 0 0-1.4 0c-.39.39-.39 1.01 0 1.4l4.19 4.19c.39.39 1.02.39 1.41 0L20.3 7.7c.39-.39.39-1.01 0-1.4a.9839.9839 0 0 0-1.4 0L9 16.2z\"\n ></path>\n </svg>\n )}\n </div>\n <input\n data-testid={dataTestId}\n type=\"checkbox\"\n className={classNames(\n styles.inputOverlay,\n styles[size],\n styles[`cursor${disabled ? \"Disabled\" : \"Enabled\"}`],\n )}\n checked={checked}\n onChange={onChange}\n disabled={disabled}\n onFocus={() => {\n setIsFocused(true);\n }}\n onBlur={() => {\n setIsFocused(false);\n }}\n />\n <Typography\n size={typographySize[size]}\n color={error ? \"destructive-primary\" : \"gray800\"}\n >\n {label}\n </Typography>\n </label>\n );\n};\n\nexport default Checkbox;\n","import \"/home/runner/work/syntax/syntax/packages/syntax-core/src/Checkbox/Checkbox.module.css\"; export default {\"mainContainer\":\"_mainContainer_an7al_1\",\"inputOverlay\":\"_inputOverlay_an7al_9\",\"checkbox\":\"_checkbox_an7al_17\",\"disabled\":\"_disabled_an7al_25\",\"cursorDisabled\":\"_cursorDisabled_an7al_29\",\"cursorEnabled\":\"_cursorEnabled_an7al_33\",\"uncheckedBox\":\"_uncheckedBox_an7al_37\",\"uncheckedBorder\":\"_uncheckedBorder_an7al_41\",\"uncheckedErrorBorder\":\"_uncheckedErrorBorder_an7al_45\",\"checkedBox\":\"_checkedBox_an7al_49\",\"checkedNonError\":\"_checkedNonError_an7al_53\",\"checkedError\":\"_checkedError_an7al_57\",\"sm\":\"_sm_an7al_61\",\"md\":\"_md_an7al_67\"}"]}
1
+ {"version":3,"sources":["../../src/Checkbox/Checkbox.tsx","css-module:./Checkbox.module.css#css-module"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,SAAmC,gBAAgB;AACnD,OAAO,gBAAgB;;;ACDwE,IAAO,0BAAQ,EAAC,iBAAgB,0BAAyB,gBAAe,yBAAwB,YAAW,sBAAqB,YAAW,sBAAqB,kBAAiB,4BAA2B,iBAAgB,2BAA0B,gBAAe,0BAAyB,mBAAkB,6BAA4B,wBAAuB,kCAAiC,cAAa,wBAAuB,mBAAkB,6BAA4B,gBAAe,0BAAyB,MAAK,gBAAe,MAAK,eAAc;;;ADwFhoB,SAYQ,KAZR;AAhFJ,IAAM,iBAAiB;AAAA,EACrB,IAAI;AAAA,EACJ,IAAI;AACN;AAEA,IAAM,YAAY;AAAA,EAChB,IAAI;AAAA,EACJ,IAAI;AACN;AAKA,IAAM,WAAW,CAAC;AAAA,EAChB,UAAU;AAAA,EACV,eAAe;AAAA,EACf,UAAU,eAAe;AAAA,EACzB,OAAO;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,EACR;AACF,MAwCoB;AAClB,QAAM,aAAa,cAAc;AACjC,QAAM,WAAW,CAAC,cAAc;AAChC,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,KAAK;AAChD,QAAM,EAAE,eAAe,IAAI,gBAAgB;AAE3C,QAAM,kBAAkB,WAAW,wBAAO,UAAU,wBAAO,IAAI,CAAC;AAChE,QAAM,mBAAmB,WAAW,iBAAiB,wBAAO,cAAc;AAAA,IACxE,CAAC,wBAAO,eAAe,GAAG,CAAC;AAAA,IAC3B,CAAC,wBAAO,oBAAoB,GAAG;AAAA,IAC/B,CAAC,qBAAY,yBAAyB,GAAG,aAAa;AAAA,EACxD,CAAC;AACD,QAAM,iBAAiB,WAAW,iBAAiB,wBAAO,YAAY;AAAA,IACpE,CAAC,wBAAO,eAAe,GAAG,CAAC;AAAA,IAC3B,CAAC,wBAAO,YAAY,GAAG;AAAA,IACvB,CAAC,qBAAY,yBAAyB,GAAG,aAAa;AAAA,EACxD,CAAC;AAED,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT,wBAAO;AAAA,QACP,wBAAO,SAAS,WAAW,aAAa,WAAW;AAAA,QACnD;AAAA,UACE,CAAC,wBAAO,QAAQ,GAAG;AAAA,QACrB;AAAA,MACF;AAAA,MAEA;AAAA,4BAAC,SAAI,WAAW,UAAU,iBAAiB,kBACxC,qBACC,oBAAC,SAAI,eAAY,QAAO,SAAQ,aAAY,OAAO,UAAU,IAAI,GAC/D;AAAA,UAAC;AAAA;AAAA,YACC,MAAK;AAAA,YACL,GAAE;AAAA;AAAA,QACH,GACH,GAEJ;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,eAAa;AAAA,YACb,MAAK;AAAA,YACL,WAAW;AAAA,cACT,wBAAO;AAAA,cACP,wBAAO,IAAI;AAAA,cACX,wBAAO,SAAS,WAAW,aAAa,WAAW;AAAA,YACrD;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,SAAS,MAAM;AACb,2BAAa,IAAI;AAAA,YACnB;AAAA,YACA,QAAQ,MAAM;AACZ,2BAAa,KAAK;AAAA,YACpB;AAAA;AAAA,QACF;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,MAAM,eAAe,IAAI;AAAA,YACzB,OAAO,QAAQ,wBAAwB;AAAA,YAEtC;AAAA;AAAA,QACH;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,mBAAQ","sourcesContent":["import React, { type ReactElement, useState } from \"react\";\nimport classNames from \"classnames\";\nimport useFocusVisible from \"../useFocusVisible\";\nimport styles from \"./Checkbox.module.css\";\nimport focusStyles from \"../Focus.module.css\";\nimport Typography from \"../Typography/Typography\";\nimport useIsHydrated from \"../useIsHydrated\";\n\nconst typographySize = {\n sm: 100,\n md: 200,\n} as const;\n\nconst iconWidth = {\n sm: 12,\n md: 20,\n};\n\n/**\n * [Checkbox](https://cambly-syntax.vercel.app/?path=/docs/components-checkbox--docs) is a clickable element that will show if an option has been selected or not.\n */\nconst Checkbox = ({\n checked = false,\n \"data-testid\": dataTestId,\n disabled: disabledProp = false,\n size = \"md\",\n label,\n error = false,\n onChange,\n}: {\n /**\n * Whether or not the box has been clicked\n *\n * @defaultValue false\n */\n checked: boolean;\n /**\n * Test id for the checkbox\n */\n \"data-testid\"?: string;\n /**\n * The callback to be called when the checkbox value changes\n */\n onChange: React.ChangeEventHandler<HTMLInputElement>;\n /**\n * Whether or not the box is disabled\n *\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * The size of the checkbox and icon\n *\n * * `sm`: 16px\n * * `md`: 24px\n *\n * @defaultValue \"md\"\n */\n size?: \"sm\" | \"md\";\n /**\n * The text accompanying the checkbox\n */\n label: string;\n /**\n * Whether or not there is an error with the input\n *\n * @defaultValue false\n */\n error?: boolean;\n}): ReactElement => {\n const isHydrated = useIsHydrated();\n const disabled = !isHydrated || disabledProp;\n const [isFocused, setIsFocused] = useState(false);\n const { isFocusVisible } = useFocusVisible();\n\n const checkboxStyling = classNames(styles.checkbox, styles[size]);\n const uncheckedStyling = classNames(checkboxStyling, styles.uncheckedBox, {\n [styles.uncheckedBorder]: !error,\n [styles.uncheckedErrorBorder]: error,\n [focusStyles.accessibilityOutlineFocus]: isFocused && isFocusVisible,\n });\n const checkedStyling = classNames(checkboxStyling, styles.checkedBox, {\n [styles.checkedNonError]: !error,\n [styles.checkedError]: error,\n [focusStyles.accessibilityOutlineFocus]: isFocused && isFocusVisible,\n });\n\n return (\n <label\n className={classNames(\n styles.mainContainer,\n styles[`cursor${disabled ? \"Disabled\" : \"Enabled\"}`],\n {\n [styles.disabled]: disabled,\n },\n )}\n >\n <div className={checked ? checkedStyling : uncheckedStyling}>\n {checked && (\n <svg aria-hidden=\"true\" viewBox=\"0 0 24 24\" width={iconWidth[size]}>\n <path\n fill=\"#fff\"\n d=\"m9 16.2-3.5-3.5a.9839.9839 0 0 0-1.4 0c-.39.39-.39 1.01 0 1.4l4.19 4.19c.39.39 1.02.39 1.41 0L20.3 7.7c.39-.39.39-1.01 0-1.4a.9839.9839 0 0 0-1.4 0L9 16.2z\"\n ></path>\n </svg>\n )}\n </div>\n <input\n data-testid={dataTestId}\n type=\"checkbox\"\n className={classNames(\n styles.inputOverlay,\n styles[size],\n styles[`cursor${disabled ? \"Disabled\" : \"Enabled\"}`],\n )}\n checked={checked}\n onChange={onChange}\n disabled={disabled}\n onFocus={() => {\n setIsFocused(true);\n }}\n onBlur={() => {\n setIsFocused(false);\n }}\n />\n <Typography\n size={typographySize[size]}\n color={error ? \"destructive-primary\" : \"gray800\"}\n >\n {label}\n </Typography>\n </label>\n );\n};\n\nexport default Checkbox;\n","import \"/Users/christian/cambly/syntax/packages/syntax-core/src/Checkbox/Checkbox.module.css\"; export default {\"mainContainer\":\"_mainContainer_an7al_1\",\"inputOverlay\":\"_inputOverlay_an7al_9\",\"checkbox\":\"_checkbox_an7al_17\",\"disabled\":\"_disabled_an7al_25\",\"cursorDisabled\":\"_cursorDisabled_an7al_29\",\"cursorEnabled\":\"_cursorEnabled_an7al_33\",\"uncheckedBox\":\"_uncheckedBox_an7al_37\",\"uncheckedBorder\":\"_uncheckedBorder_an7al_41\",\"uncheckedErrorBorder\":\"_uncheckedErrorBorder_an7al_45\",\"checkedBox\":\"_checkedBox_an7al_49\",\"checkedNonError\":\"_checkedNonError_an7al_53\",\"checkedError\":\"_checkedError_an7al_57\",\"sm\":\"_sm_an7al_61\",\"md\":\"_md_an7al_67\"}"]}
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  Box_default
3
- } from "./LKQ7PJ4S.mjs";
3
+ } from "./HJYCSDLB.mjs";
4
4
  import {
5
5
  Typography_default
6
- } from "./BCWLWS7W.mjs";
6
+ } from "./3HUELEGR.mjs";
7
7
  import {
8
8
  useIsHydrated
9
9
  } from "./XFKGXL73.mjs";
@@ -70,4 +70,4 @@ var Chip_default = Chip;
70
70
  export {
71
71
  Chip_default
72
72
  };
73
- //# sourceMappingURL=RSU3GDHB.mjs.map
73
+ //# sourceMappingURL=KDEHEUYG.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Chip/Chip.tsx","css-module:./Chip.module.css#css-module"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport classnames from \"classnames\";\nimport Typography from \"../Typography/Typography\";\nimport Box from \"../Box/Box\";\nimport styles from \"./Chip.module.css\";\nimport useIsHydrated from \"../useIsHydrated\";\n\ntype ChipProps = {\n /**\n * Sets the initial status of this chip component.\n * * `true` will display a grey chip.\n * * `false` will display a premium800 color chip.\n *\n * @defaultValue \"false\"\n */\n selected?: boolean;\n /**\n * Test id for the button\n */\n \"data-testid\"?: string;\n /**\n * Size of the chip.\n *\n * * `sm`: 32px\n * * `lg`: 48px\n *\n * @defaultValue sm\n */\n size?: \"sm\" | \"lg\";\n /**\n * The text to be displayed on the chip\n */\n text: string;\n /**\n * The callback to be called when the chip is clicked\n */\n onChange: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * The icon to be displayed.\n */\n icon?: React.ComponentType<{ className?: string }>;\n};\n/**\n * [Chip](https://cambly-syntax.vercel.app/?path=/docs/components-chip--docs) is used to show status (selected/not selected) like a toggle button.\n */\nconst Chip = forwardRef<HTMLButtonElement, ChipProps>(\n (\n {\n selected = false,\n \"data-testid\": dataTestId,\n size = \"sm\",\n text,\n onChange,\n icon: Icon,\n }: ChipProps,\n ref,\n ) => {\n const isHydrated = useIsHydrated();\n const disabled = !isHydrated;\n\n const chipStyles = classnames(styles.chip, styles[size], {\n [styles.selectedChip]: selected,\n [styles.disabled]: disabled,\n });\n const iconStyles = classnames(styles.icon, {\n [styles.selectedIcon]: selected,\n });\n const typographySize = {\n [\"sm\"]: 200,\n [\"lg\"]: 300,\n } as const;\n return (\n <button\n className={chipStyles}\n disabled={disabled}\n data-testid={dataTestId}\n ref={ref}\n type=\"button\"\n aria-pressed={selected}\n onClick={onChange}\n >\n {Icon && <Icon className={iconStyles} />}\n <Box paddingX={Icon ? 1 : 0}>\n <Typography\n size={typographySize[size]}\n color={selected ? \"white\" : \"gray900\"}\n >\n {text}\n </Typography>\n </Box>\n </button>\n );\n },\n);\n\nChip.displayName = \"Chip\";\n\nexport default Chip;\n","import \"/home/runner/work/syntax/syntax/packages/syntax-core/src/Chip/Chip.module.css\"; export default {\"chip\":\"_chip_nvvgx_1\",\"disabled\":\"_disabled_nvvgx_12\",\"selectedChip\":\"_selectedChip_nvvgx_17\",\"icon\":\"_icon_nvvgx_22\",\"selectedIcon\":\"_selectedIcon_nvvgx_30\",\"sm\":\"_sm_nvvgx_34\",\"lg\":\"_lg_nvvgx_40\"}"],"mappings":";;;;;;;;;;;AAAA,SAAgB,kBAAkB;AAClC,OAAO,gBAAgB;;;ACDiE,IAAO,sBAAQ,EAAC,QAAO,iBAAgB,YAAW,sBAAqB,gBAAe,0BAAyB,QAAO,kBAAiB,gBAAe,0BAAyB,MAAK,gBAAe,MAAK,eAAc;;;ADwExS,SASW,KATX;AA3BN,IAAM,OAAO;AAAA,EACX,CACE;AAAA,IACE,WAAW;AAAA,IACX,eAAe;AAAA,IACf,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA,MAAM;AAAA,EACR,GACA,QACG;AACH,UAAM,aAAa,cAAc;AACjC,UAAM,WAAW,CAAC;AAElB,UAAM,aAAa,WAAW,oBAAO,MAAM,oBAAO,IAAI,GAAG;AAAA,MACvD,CAAC,oBAAO,YAAY,GAAG;AAAA,MACvB,CAAC,oBAAO,QAAQ,GAAG;AAAA,IACrB,CAAC;AACD,UAAM,aAAa,WAAW,oBAAO,MAAM;AAAA,MACzC,CAAC,oBAAO,YAAY,GAAG;AAAA,IACzB,CAAC;AACD,UAAM,iBAAiB;AAAA,MACrB,CAAC,IAAI,GAAG;AAAA,MACR,CAAC,IAAI,GAAG;AAAA,IACV;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAW;AAAA,QACX;AAAA,QACA,eAAa;AAAA,QACb;AAAA,QACA,MAAK;AAAA,QACL,gBAAc;AAAA,QACd,SAAS;AAAA,QAER;AAAA,kBAAQ,oBAAC,QAAK,WAAW,YAAY;AAAA,UACtC,oBAAC,eAAI,UAAU,OAAO,IAAI,GACxB;AAAA,YAAC;AAAA;AAAA,cACC,MAAM,eAAe,IAAI;AAAA,cACzB,OAAO,WAAW,UAAU;AAAA,cAE3B;AAAA;AAAA,UACH,GACF;AAAA;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;AAEA,KAAK,cAAc;AAEnB,IAAO,eAAQ;","names":[]}
1
+ {"version":3,"sources":["../../src/Chip/Chip.tsx","css-module:./Chip.module.css#css-module"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport classnames from \"classnames\";\nimport Typography from \"../Typography/Typography\";\nimport Box from \"../Box/Box\";\nimport styles from \"./Chip.module.css\";\nimport useIsHydrated from \"../useIsHydrated\";\n\ntype ChipProps = {\n /**\n * Sets the initial status of this chip component.\n * * `true` will display a grey chip.\n * * `false` will display a premium800 color chip.\n *\n * @defaultValue \"false\"\n */\n selected?: boolean;\n /**\n * Test id for the button\n */\n \"data-testid\"?: string;\n /**\n * Size of the chip.\n *\n * * `sm`: 32px\n * * `lg`: 48px\n *\n * @defaultValue sm\n */\n size?: \"sm\" | \"lg\";\n /**\n * The text to be displayed on the chip\n */\n text: string;\n /**\n * The callback to be called when the chip is clicked\n */\n onChange: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * The icon to be displayed.\n */\n icon?: React.ComponentType<{ className?: string }>;\n};\n/**\n * [Chip](https://cambly-syntax.vercel.app/?path=/docs/components-chip--docs) is used to show status (selected/not selected) like a toggle button.\n */\nconst Chip = forwardRef<HTMLButtonElement, ChipProps>(\n (\n {\n selected = false,\n \"data-testid\": dataTestId,\n size = \"sm\",\n text,\n onChange,\n icon: Icon,\n }: ChipProps,\n ref,\n ) => {\n const isHydrated = useIsHydrated();\n const disabled = !isHydrated;\n\n const chipStyles = classnames(styles.chip, styles[size], {\n [styles.selectedChip]: selected,\n [styles.disabled]: disabled,\n });\n const iconStyles = classnames(styles.icon, {\n [styles.selectedIcon]: selected,\n });\n const typographySize = {\n [\"sm\"]: 200,\n [\"lg\"]: 300,\n } as const;\n return (\n <button\n className={chipStyles}\n disabled={disabled}\n data-testid={dataTestId}\n ref={ref}\n type=\"button\"\n aria-pressed={selected}\n onClick={onChange}\n >\n {Icon && <Icon className={iconStyles} />}\n <Box paddingX={Icon ? 1 : 0}>\n <Typography\n size={typographySize[size]}\n color={selected ? \"white\" : \"gray900\"}\n >\n {text}\n </Typography>\n </Box>\n </button>\n );\n },\n);\n\nChip.displayName = \"Chip\";\n\nexport default Chip;\n","import \"/Users/christian/cambly/syntax/packages/syntax-core/src/Chip/Chip.module.css\"; export default {\"chip\":\"_chip_nvvgx_1\",\"disabled\":\"_disabled_nvvgx_12\",\"selectedChip\":\"_selectedChip_nvvgx_17\",\"icon\":\"_icon_nvvgx_22\",\"selectedIcon\":\"_selectedIcon_nvvgx_30\",\"sm\":\"_sm_nvvgx_34\",\"lg\":\"_lg_nvvgx_40\"}"],"mappings":";;;;;;;;;;;AAAA,SAAgB,kBAAkB;AAClC,OAAO,gBAAgB;;;ACDgE,IAAO,sBAAQ,EAAC,QAAO,iBAAgB,YAAW,sBAAqB,gBAAe,0BAAyB,QAAO,kBAAiB,gBAAe,0BAAyB,MAAK,gBAAe,MAAK,eAAc;;;ADwEvS,SASW,KATX;AA3BN,IAAM,OAAO;AAAA,EACX,CACE;AAAA,IACE,WAAW;AAAA,IACX,eAAe;AAAA,IACf,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA,MAAM;AAAA,EACR,GACA,QACG;AACH,UAAM,aAAa,cAAc;AACjC,UAAM,WAAW,CAAC;AAElB,UAAM,aAAa,WAAW,oBAAO,MAAM,oBAAO,IAAI,GAAG;AAAA,MACvD,CAAC,oBAAO,YAAY,GAAG;AAAA,MACvB,CAAC,oBAAO,QAAQ,GAAG;AAAA,IACrB,CAAC;AACD,UAAM,aAAa,WAAW,oBAAO,MAAM;AAAA,MACzC,CAAC,oBAAO,YAAY,GAAG;AAAA,IACzB,CAAC;AACD,UAAM,iBAAiB;AAAA,MACrB,CAAC,IAAI,GAAG;AAAA,MACR,CAAC,IAAI,GAAG;AAAA,IACV;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAW;AAAA,QACX;AAAA,QACA,eAAa;AAAA,QACb;AAAA,QACA,MAAK;AAAA,QACL,gBAAc;AAAA,QACd,SAAS;AAAA,QAER;AAAA,kBAAQ,oBAAC,QAAK,WAAW,YAAY;AAAA,UACtC,oBAAC,eAAI,UAAU,OAAO,IAAI,GACxB;AAAA,YAAC;AAAA;AAAA,cACC,MAAM,eAAe,IAAI;AAAA,cACzB,OAAO,WAAW,UAAU;AAAA,cAE3B;AAAA;AAAA,UACH,GACF;AAAA;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;AAEA,KAAK,cAAc;AAEnB,IAAO,eAAQ;","names":[]}