@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,81 @@
1
+ import {
2
+ Box_default
3
+ } from "./4VIJNV7V.mjs";
4
+ import {
5
+ Typography_default
6
+ } from "./WIDP7NHD.mjs";
7
+
8
+ // src/TextField/TextField.tsx
9
+ import {
10
+ useId
11
+ } from "react";
12
+ import classNames from "classnames";
13
+
14
+ // css-module:./TextField.module.css#css-module
15
+ var TextField_module_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" };
16
+
17
+ // src/TextField/TextField.tsx
18
+ import { jsx, jsxs } from "react/jsx-runtime";
19
+ function TextField({
20
+ autoComplete,
21
+ "data-testid": dataTestId,
22
+ disabled = false,
23
+ errorText = "",
24
+ helperText = "",
25
+ id,
26
+ label,
27
+ onChange,
28
+ placeholder = "",
29
+ size = "md",
30
+ type = "text",
31
+ value = ""
32
+ }) {
33
+ const reactId = useId();
34
+ const inputId = id != null ? id : reactId;
35
+ return /* @__PURE__ */ jsxs(
36
+ Box_default,
37
+ {
38
+ display: "flex",
39
+ direction: "column",
40
+ gap: 2,
41
+ width: "100%",
42
+ dangerouslySetInlineStyle: {
43
+ __style: {
44
+ opacity: disabled ? 0.5 : 1
45
+ }
46
+ },
47
+ children: [
48
+ label && /* @__PURE__ */ jsx("label", { className: TextField_module_default.label, htmlFor: inputId, children: /* @__PURE__ */ jsx(Box_default, { paddingX: 1, children: /* @__PURE__ */ jsx(Typography_default, { size: 100, color: "gray700", children: label }) }) }),
49
+ /* @__PURE__ */ jsx(
50
+ "input",
51
+ {
52
+ autoComplete,
53
+ className: classNames(TextField_module_default.textfield, TextField_module_default[size], {
54
+ [TextField_module_default.inputError]: errorText
55
+ }),
56
+ "data-testid": dataTestId,
57
+ disabled,
58
+ id: inputId,
59
+ type,
60
+ onChange,
61
+ placeholder,
62
+ value
63
+ }
64
+ ),
65
+ (helperText || errorText) && /* @__PURE__ */ jsx(Box_default, { paddingX: 1, children: /* @__PURE__ */ jsx(
66
+ Typography_default,
67
+ {
68
+ size: 100,
69
+ color: errorText ? "destructive-primary" : "gray700",
70
+ children: errorText || helperText
71
+ }
72
+ ) })
73
+ ]
74
+ }
75
+ );
76
+ }
77
+
78
+ export {
79
+ TextField
80
+ };
81
+ //# sourceMappingURL=KEVWT27Z.mjs.map
@@ -0,0 +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\";\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 = 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 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;;;AD2FvQ,SAcQ,KAdR;AA9EW,SAAR,UAA2B;AAAA,EAChC;AAAA,EACA,eAAe;AAAA,EACf,WAAW;AAAA,EACX,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,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":[]}
@@ -0,0 +1,34 @@
1
+ import {
2
+ Typography_default
3
+ } from "./WIDP7NHD.mjs";
4
+
5
+ // src/Heading/Heading.tsx
6
+ import { jsx } from "react/jsx-runtime";
7
+ var Heading = ({
8
+ align = "start",
9
+ as = "h1",
10
+ children,
11
+ color = "gray900",
12
+ "data-testid": dataTestId,
13
+ size = 500
14
+ }) => {
15
+ const weight = [700, 800].includes(size) ? "heavy" : "bold";
16
+ return /* @__PURE__ */ jsx(
17
+ Typography_default,
18
+ {
19
+ align,
20
+ as,
21
+ color,
22
+ "data-testid": dataTestId,
23
+ size,
24
+ weight,
25
+ children
26
+ }
27
+ );
28
+ };
29
+ var Heading_default = Heading;
30
+
31
+ export {
32
+ Heading_default
33
+ };
34
+ //# sourceMappingURL=KNBS7I65.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Heading/Heading.tsx"],"sourcesContent":["import { type ReactElement, type ReactNode } from \"react\";\nimport { type Color } from \"../constants\";\nimport Typography from \"../Typography/Typography\";\n\n/**\n * [Heading](https://cambly-syntax.vercel.app/?path=/docs/components-heading--docs) enforces a consistent style & accessibility best practices for headings.\n */\nconst Heading = ({\n align = \"start\",\n as = \"h1\",\n children,\n color = \"gray900\",\n \"data-testid\": dataTestId,\n size = 500,\n}: {\n /**\n * Aligns the text to the left, right, or center of the container.\n * * `start` and `end` will align the text to the left or right of the container depending on the locale.\n * * `forceLeft` and `forceRight` will align the text to the left or right of the container regardless of the locale (should be used sparingly).\n *\n * @defaultValue \"start\"\n */\n align?: \"start\" | \"end\" | \"forceLeft\" | \"center\" | \"forceRight\";\n /**\n * DOM element to render as.\n *\n * @defaultValue \"h1\"\n */\n as?: \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n /**\n * The text to be rendered\n */\n children?: ReactNode;\n /**\n * The color of the text.\n *\n * @defaultValue \"gray900\"\n */\n color?: (typeof Color)[number];\n /**\n * Test id for the text.\n */\n \"data-testid\"?: string;\n /**\n * Size of the text.\n *\n * * `500`: 20px\n * * `600`: 28px\n * * `700`: 40px\n * * `800`: 64px\n *\n * @defaultValue 500\n */\n size?: 500 | 600 | 700 | 800;\n}): ReactElement => {\n const weight = [700, 800].includes(size) ? \"heavy\" : \"bold\";\n return (\n <Typography\n align={align}\n as={as}\n color={color}\n data-testid={dataTestId}\n size={size}\n weight={weight}\n >\n {children}\n </Typography>\n );\n};\n\nexport default Heading;\n"],"mappings":";;;;;AAyDI;AAlDJ,IAAM,UAAU,CAAC;AAAA,EACf,QAAQ;AAAA,EACR,KAAK;AAAA,EACL;AAAA,EACA,QAAQ;AAAA,EACR,eAAe;AAAA,EACf,OAAO;AACT,MAwCoB;AAClB,QAAM,SAAS,CAAC,KAAK,GAAG,EAAE,SAAS,IAAI,IAAI,UAAU;AACrD,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,eAAa;AAAA,MACb;AAAA,MACA;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;AAEA,IAAO,kBAAQ;","names":[]}
@@ -0,0 +1,66 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
+
3
+ var _4EEVXYO7js = require('./4EEVXYO7.js');
4
+
5
+
6
+ var _R3JL4P3Qjs = require('./R3JL4P3Q.js');
7
+
8
+ // src/Chip/Chip.tsx
9
+ var _react = require('react');
10
+ var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames);
11
+
12
+ // css-module:./Chip.module.css#css-module
13
+ var Chip_module_default = { "chip": "_chip_1rwvt_1", "selectedChip": "_selectedChip_1rwvt_12", "icon": "_icon_1rwvt_17", "selectedIcon": "_selectedIcon_1rwvt_25", "sm": "_sm_1rwvt_29", "lg": "_lg_1rwvt_35" };
14
+
15
+ // src/Chip/Chip.tsx
16
+ var _jsxruntime = require('react/jsx-runtime');
17
+ var Chip = _react.forwardRef.call(void 0,
18
+ ({
19
+ selected = false,
20
+ "data-testid": dataTestId,
21
+ size = "sm",
22
+ text,
23
+ onChange,
24
+ icon: Icon
25
+ }, ref) => {
26
+ const chipStyles = _classnames2.default.call(void 0, Chip_module_default.chip, Chip_module_default[size], {
27
+ [Chip_module_default.selectedChip]: selected
28
+ });
29
+ const iconStyles = _classnames2.default.call(void 0, Chip_module_default.icon, {
30
+ [Chip_module_default.selectedIcon]: selected
31
+ });
32
+ const typographySize = {
33
+ ["sm"]: 200,
34
+ ["lg"]: 300
35
+ };
36
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
37
+ "button",
38
+ {
39
+ className: chipStyles,
40
+ "data-testid": dataTestId,
41
+ ref,
42
+ type: "button",
43
+ "aria-pressed": selected,
44
+ onClick: onChange,
45
+ children: [
46
+ Icon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { className: iconStyles }),
47
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _4EEVXYO7js.Box_default, { paddingX: Icon ? 1 : 0, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
48
+ _R3JL4P3Qjs.Typography_default,
49
+ {
50
+ size: typographySize[size],
51
+ color: selected ? "white" : "gray900",
52
+ children: text
53
+ }
54
+ ) })
55
+ ]
56
+ }
57
+ );
58
+ }
59
+ );
60
+ Chip.displayName = "Chip";
61
+ var Chip_default = Chip;
62
+
63
+
64
+
65
+ exports.Chip_default = Chip_default;
66
+ //# sourceMappingURL=KNDHXB3A.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Chip/Chip.tsx","css-module:./Chip.module.css#css-module"],"names":[],"mappings":";;;;;;;;AAAA,SAAgB,kBAAkB;AAClC,OAAO,gBAAgB;;;ACDgE,IAAO,sBAAQ,EAAC,QAAO,iBAAgB,gBAAe,0BAAyB,QAAO,kBAAiB,gBAAe,0BAAyB,MAAK,gBAAe,MAAK,eAAc;;;ADmEvQ,SAQW,KARX;AAvBN,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,WAAW,oBAAO,MAAM,oBAAO,IAAI,GAAG;AAAA,MACvD,CAAC,oBAAO,YAAY,GAAG;AAAA,IACzB,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,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","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\";\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 chipStyles = classnames(styles.chip, styles[size], {\n [styles.selectedChip]: selected,\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 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_1rwvt_1\",\"selectedChip\":\"_selectedChip_1rwvt_12\",\"icon\":\"_icon_1rwvt_17\",\"selectedIcon\":\"_selectedIcon_1rwvt_25\",\"sm\":\"_sm_1rwvt_29\",\"lg\":\"_lg_1rwvt_35\"}"]}
@@ -0,0 +1,64 @@
1
+ import {
2
+ foregroundColor
3
+ } from "./F4HTASEF.mjs";
4
+ import {
5
+ backgroundColor
6
+ } from "./ZHZ6U63Z.mjs";
7
+
8
+ // src/IconButton/IconButton.tsx
9
+ import classNames from "classnames";
10
+ import { forwardRef } from "react";
11
+
12
+ // css-module:./IconButton.module.css#css-module
13
+ var IconButton_module_default = { "iconButton": "_iconButton_4e8qe_1", "sm": "_sm_4e8qe_46", "md": "_md_4e8qe_51", "lg": "_lg_4e8qe_56", "smIcon": "_smIcon_4e8qe_61", "mdIcon": "_mdIcon_4e8qe_68", "lgIcon": "_lgIcon_4e8qe_75", "secondaryBorder": "_secondaryBorder_4e8qe_82", "secondaryDestructiveBorder": "_secondaryDestructiveBorder_4e8qe_86" };
14
+
15
+ // src/IconButton/IconButton.tsx
16
+ import { jsx } from "react/jsx-runtime";
17
+ var iconSize = {
18
+ ["sm"]: IconButton_module_default.smIcon,
19
+ ["md"]: IconButton_module_default.mdIcon,
20
+ ["lg"]: IconButton_module_default.lgIcon
21
+ };
22
+ var IconButton = forwardRef(
23
+ ({
24
+ accessibilityLabel,
25
+ color = "primary",
26
+ "data-testid": dataTestId,
27
+ disabled = false,
28
+ icon: Icon,
29
+ size = "md",
30
+ tooltip,
31
+ onClick
32
+ }, ref) => {
33
+ return /* @__PURE__ */ jsx(
34
+ "button",
35
+ {
36
+ "aria-label": accessibilityLabel,
37
+ "data-testid": dataTestId,
38
+ type: "button",
39
+ title: tooltip,
40
+ disabled,
41
+ onClick,
42
+ className: classNames(
43
+ IconButton_module_default.iconButton,
44
+ foregroundColor(color),
45
+ backgroundColor(color),
46
+ IconButton_module_default[size],
47
+ {
48
+ [IconButton_module_default.secondaryBorder]: color === "secondary",
49
+ [IconButton_module_default.secondaryDestructiveBorder]: color === "destructive-secondary"
50
+ }
51
+ ),
52
+ ref,
53
+ children: /* @__PURE__ */ jsx(Icon, { className: iconSize[size] })
54
+ }
55
+ );
56
+ }
57
+ );
58
+ IconButton.displayName = "IconButton";
59
+ var IconButton_default = IconButton;
60
+
61
+ export {
62
+ IconButton_default
63
+ };
64
+ //# sourceMappingURL=KNTQWIRZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/IconButton/IconButton.tsx","css-module:./IconButton.module.css#css-module"],"sourcesContent":["import classNames from \"classnames\";\nimport backgroundColor from \"../colors//backgroundColor\";\nimport foregroundColor from \"../colors/foregroundColor\";\nimport React, { forwardRef } from \"react\";\nimport { type Color, type Size } from \"../constants\";\nimport styles from \"./IconButton.module.css\";\n\nconst iconSize = {\n [\"sm\"]: styles.smIcon,\n [\"md\"]: styles.mdIcon,\n [\"lg\"]: styles.lgIcon,\n};\n\ntype IconButtonProps = {\n /**\n * The color of the button\n *\n * @defaultValue \"primary\"\n */\n color?: (typeof Color)[number];\n /**\n * Test id for the button\n */\n \"data-testid\"?: string;\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 * The icon to be displayed. Please use a [Rounded Material Icon](https://material.io/resources/icons/?style=round)\n */\n icon: React.ComponentType<{ className?: string }>;\n /**\n * If `true`, the button will be disabled\n *\n * @defaultValue false\n */\n disabled?: boolean;\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\n/**\n * [IconButton](https://cambly-syntax.vercel.app/?path=/docs/components-iconbutton--docs) is a clickable element that is used to perform an action.\n */\nconst IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n (\n {\n accessibilityLabel,\n color = \"primary\",\n \"data-testid\": dataTestId,\n disabled = false,\n icon: Icon,\n size = \"md\",\n tooltip,\n onClick,\n }: IconButtonProps,\n ref,\n ) => {\n return (\n <button\n aria-label={accessibilityLabel}\n data-testid={dataTestId}\n type=\"button\"\n title={tooltip}\n disabled={disabled}\n onClick={onClick}\n className={classNames(\n styles.iconButton,\n foregroundColor(color),\n backgroundColor(color),\n styles[size],\n {\n [styles.secondaryBorder]: color === \"secondary\",\n [styles.secondaryDestructiveBorder]:\n color === \"destructive-secondary\",\n },\n )}\n ref={ref}\n >\n <Icon className={iconSize[size]} />\n </button>\n );\n },\n);\n\nIconButton.displayName = \"IconButton\";\n\nexport default IconButton;\n","import \"/Users/christian/cambly/syntax/packages/syntax-core/src/IconButton/IconButton.module.css\"; export default {\"iconButton\":\"_iconButton_4e8qe_1\",\"sm\":\"_sm_4e8qe_46\",\"md\":\"_md_4e8qe_51\",\"lg\":\"_lg_4e8qe_56\",\"smIcon\":\"_smIcon_4e8qe_61\",\"mdIcon\":\"_mdIcon_4e8qe_68\",\"lgIcon\":\"_lgIcon_4e8qe_75\",\"secondaryBorder\":\"_secondaryBorder_4e8qe_82\",\"secondaryDestructiveBorder\":\"_secondaryDestructiveBorder_4e8qe_86\"}"],"mappings":";;;;;;;;AAAA,OAAO,gBAAgB;AAGvB,SAAgB,kBAAkB;;;ACHiE,IAAO,4BAAQ,EAAC,cAAa,uBAAsB,MAAK,gBAAe,MAAK,gBAAe,MAAK,gBAAe,UAAS,oBAAmB,UAAS,oBAAmB,UAAS,oBAAmB,mBAAkB,6BAA4B,8BAA6B,uCAAsC;;;ADgG/Y;AAzFR,IAAM,WAAW;AAAA,EACf,CAAC,IAAI,GAAG,0BAAO;AAAA,EACf,CAAC,IAAI,GAAG,0BAAO;AAAA,EACf,CAAC,IAAI,GAAG,0BAAO;AACjB;AAkDA,IAAM,aAAa;AAAA,EACjB,CACE;AAAA,IACE;AAAA,IACA,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,WAAW;AAAA,IACX,MAAM;AAAA,IACN,OAAO;AAAA,IACP;AAAA,IACA;AAAA,EACF,GACA,QACG;AACH,WACE;AAAA,MAAC;AAAA;AAAA,QACC,cAAY;AAAA,QACZ,eAAa;AAAA,QACb,MAAK;AAAA,QACL,OAAO;AAAA,QACP;AAAA,QACA;AAAA,QACA,WAAW;AAAA,UACT,0BAAO;AAAA,UACP,gBAAgB,KAAK;AAAA,UACrB,gBAAgB,KAAK;AAAA,UACrB,0BAAO,IAAI;AAAA,UACX;AAAA,YACE,CAAC,0BAAO,eAAe,GAAG,UAAU;AAAA,YACpC,CAAC,0BAAO,0BAA0B,GAChC,UAAU;AAAA,UACd;AAAA,QACF;AAAA,QACA;AAAA,QAEA,8BAAC,QAAK,WAAW,SAAS,IAAI,GAAG;AAAA;AAAA,IACnC;AAAA,EAEJ;AACF;AAEA,WAAW,cAAc;AAEzB,IAAO,qBAAQ;","names":[]}
@@ -0,0 +1,120 @@
1
+ import {
2
+ loadingIconSize_default
3
+ } from "./EKJ4XOIM.mjs";
4
+ import {
5
+ textVariant_default
6
+ } from "./AMBZXKUQ.mjs";
7
+ import {
8
+ iconSize_default
9
+ } from "./FVU4BA3R.mjs";
10
+ import {
11
+ Box_default
12
+ } from "./HJYCSDLB.mjs";
13
+ import {
14
+ Typography_default
15
+ } from "./3HUELEGR.mjs";
16
+ import {
17
+ useIsHydrated
18
+ } from "./XFKGXL73.mjs";
19
+ import {
20
+ foregroundTypographyColor
21
+ } from "./SFLBYQCV.mjs";
22
+ import {
23
+ foregroundColor
24
+ } from "./SSU3B5AR.mjs";
25
+ import {
26
+ backgroundColor
27
+ } from "./5QXUIARJ.mjs";
28
+
29
+ // src/Button/Button.tsx
30
+ import { forwardRef } from "react";
31
+ import classNames from "classnames";
32
+
33
+ // css-module:./Button.module.css#css-module
34
+ 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" };
35
+
36
+ // src/Button/Button.tsx
37
+ import { jsx, jsxs } from "react/jsx-runtime";
38
+ var Button = forwardRef(
39
+ ({
40
+ "data-testid": dataTestId,
41
+ text,
42
+ loadingText,
43
+ color = "primary",
44
+ size = "md",
45
+ accessibilityLabel,
46
+ disabled = false,
47
+ loading = false,
48
+ fullWidth = false,
49
+ startIcon: StartIcon,
50
+ endIcon: EndIcon,
51
+ onClick,
52
+ tooltip,
53
+ type = "button"
54
+ }, ref) => {
55
+ const isHydrated = useIsHydrated();
56
+ return /* @__PURE__ */ jsxs(
57
+ "button",
58
+ {
59
+ "data-testid": dataTestId,
60
+ ref,
61
+ "aria-label": accessibilityLabel,
62
+ type,
63
+ title: tooltip,
64
+ disabled: !isHydrated || disabled || loading,
65
+ onClick,
66
+ className: classNames(
67
+ Button_module_default.button,
68
+ foregroundColor(color),
69
+ backgroundColor(color),
70
+ Button_module_default[size],
71
+ {
72
+ [Button_module_default.fullWidth]: fullWidth,
73
+ [Button_module_default.buttonGap]: size === "lg" || size === "md",
74
+ [Button_module_default.secondaryBorder]: color === "secondary",
75
+ [Button_module_default.secondaryDestructiveBorder]: color === "destructive-secondary"
76
+ }
77
+ ),
78
+ children: [
79
+ !loading && StartIcon && /* @__PURE__ */ jsx(StartIcon, { className: classNames(Button_module_default.icon, iconSize_default[size]) }),
80
+ (loading && loadingText || !loading && text) && /* @__PURE__ */ jsx(Box_default, { paddingX: 1, children: /* @__PURE__ */ jsx(
81
+ Typography_default,
82
+ {
83
+ size: textVariant_default[size],
84
+ color: foregroundTypographyColor(color),
85
+ children: loading ? loadingText : text
86
+ }
87
+ ) }),
88
+ !loading && EndIcon && /* @__PURE__ */ jsx(EndIcon, { className: classNames(Button_module_default.icon, iconSize_default[size]) }),
89
+ loading && /* @__PURE__ */ jsx(
90
+ "svg",
91
+ {
92
+ className: classNames(Button_module_default.loading, foregroundColor(color)),
93
+ viewBox: "22 22 44 44",
94
+ width: loadingIconSize_default[size],
95
+ height: loadingIconSize_default[size],
96
+ children: /* @__PURE__ */ jsx(
97
+ "circle",
98
+ {
99
+ className: Button_module_default.loadingCircle,
100
+ cx: "44",
101
+ cy: "44",
102
+ r: "20.2",
103
+ fill: "none",
104
+ strokeWidth: "3.6"
105
+ }
106
+ )
107
+ }
108
+ )
109
+ ]
110
+ }
111
+ );
112
+ }
113
+ );
114
+ Button.displayName = "Button";
115
+ var Button_default = Button;
116
+
117
+ export {
118
+ Button_default
119
+ };
120
+ //# sourceMappingURL=LCM6DHNZ.mjs.map
@@ -1 +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\";\nimport useIsHydrated from \"../useIsHydrated\";\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 | \"inverse\";\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 const isHydrated = useIsHydrated();\n\n return (\n <button\n data-testid={dataTestId}\n ref={ref}\n aria-label={accessibilityLabel}\n type={type}\n title={tooltip}\n disabled={!isHydrated || 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 \"/home/runner/work/syntax/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;;;ACDqE,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;;;AD4H1mB,SAuBI,KAvBJ;AAvBN,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,UAAM,aAAa,cAAc;AAEjC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAa;AAAA,QACb;AAAA,QACA,cAAY;AAAA,QACZ;AAAA,QACA,OAAO;AAAA,QACP,UAAU,CAAC,cAAc,YAAY;AAAA,QACrC;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":[]}
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\";\nimport useIsHydrated from \"../useIsHydrated\";\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 | \"inverse\";\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 const isHydrated = useIsHydrated();\n\n return (\n <button\n data-testid={dataTestId}\n ref={ref}\n aria-label={accessibilityLabel}\n type={type}\n title={tooltip}\n disabled={!isHydrated || 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 {loading ? loadingText : text}\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_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\"}"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAgB,kBAAkB;AAClC,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;;;AD4HzmB,SAuBI,KAvBJ;AAvBN,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,UAAM,aAAa,cAAc;AAEjC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAa;AAAA,QACb;AAAA,QACA,cAAY;AAAA,QACZ;AAAA,QACA,OAAO;AAAA,QACP,UAAU,CAAC,cAAc,YAAY;AAAA,QACrC;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,cAErC,oBAAU,cAAc;AAAA;AAAA,UAC3B,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":[]}
@@ -4,4 +4,4 @@ var colors_module_default = { "inheritColor": "_inheritColor_11l4y_2", "destruct
4
4
  export {
5
5
  colors_module_default
6
6
  };
7
- //# sourceMappingURL=FWVHWU47.mjs.map
7
+ //# sourceMappingURL=LICJ6EW4.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["css-module:../colors/colors.module.css#css-module"],"sourcesContent":["import \"/Users/christian/cambly/syntax/packages/syntax-core/src/colors/colors.module.css\"; export default {\"inheritColor\":\"_inheritColor_11l4y_2\",\"destructive700Color\":\"_destructive700Color_11l4y_6\",\"gray700Color\":\"_gray700Color_11l4y_10\",\"gray900Color\":\"_gray900Color_11l4y_14\",\"primary700Color\":\"_primary700Color_11l4y_18\",\"success700Color\":\"_success700Color_11l4y_22\",\"whiteColor\":\"_whiteColor_11l4y_26\",\"blackBackgroundColor\":\"_blackBackgroundColor_11l4y_31\",\"destructive100BackgroundColor\":\"_destructive100BackgroundColor_11l4y_35\",\"destructive200BackgroundColor\":\"_destructive200BackgroundColor_11l4y_39\",\"destructive300BackgroundColor\":\"_destructive300BackgroundColor_11l4y_43\",\"destructive700BackgroundColor\":\"_destructive700BackgroundColor_11l4y_47\",\"destructive800BackgroundColor\":\"_destructive800BackgroundColor_11l4y_51\",\"destructive900BackgroundColor\":\"_destructive900BackgroundColor_11l4y_55\",\"gray10BackgroundColor\":\"_gray10BackgroundColor_11l4y_59\",\"gray30BackgroundColor\":\"_gray30BackgroundColor_11l4y_63\",\"gray60BackgroundColor\":\"_gray60BackgroundColor_11l4y_67\",\"gray80BackgroundColor\":\"_gray80BackgroundColor_11l4y_71\",\"gray100BackgroundColor\":\"_gray100BackgroundColor_11l4y_75\",\"gray200BackgroundColor\":\"_gray200BackgroundColor_11l4y_79\",\"gray300BackgroundColor\":\"_gray300BackgroundColor_11l4y_83\",\"gray700BackgroundColor\":\"_gray700BackgroundColor_11l4y_87\",\"gray800BackgroundColor\":\"_gray800BackgroundColor_11l4y_91\",\"gray900BackgroundColor\":\"_gray900BackgroundColor_11l4y_95\",\"orange100BackgroundColor\":\"_orange100BackgroundColor_11l4y_99\",\"orange200BackgroundColor\":\"_orange200BackgroundColor_11l4y_103\",\"orange300BackgroundColor\":\"_orange300BackgroundColor_11l4y_107\",\"orange700BackgroundColor\":\"_orange700BackgroundColor_11l4y_111\",\"orange800BackgroundColor\":\"_orange800BackgroundColor_11l4y_115\",\"orange900BackgroundColor\":\"_orange900BackgroundColor_11l4y_119\",\"primary100BackgroundColor\":\"_primary100BackgroundColor_11l4y_123\",\"primary200BackgroundColor\":\"_primary200BackgroundColor_11l4y_127\",\"primary300BackgroundColor\":\"_primary300BackgroundColor_11l4y_131\",\"primary700BackgroundColor\":\"_primary700BackgroundColor_11l4y_135\",\"primary800BackgroundColor\":\"_primary800BackgroundColor_11l4y_139\",\"primary900BackgroundColor\":\"_primary900BackgroundColor_11l4y_143\",\"success100BackgroundColor\":\"_success100BackgroundColor_11l4y_147\",\"success200BackgroundColor\":\"_success200BackgroundColor_11l4y_151\",\"success300BackgroundColor\":\"_success300BackgroundColor_11l4y_155\",\"success700BackgroundColor\":\"_success700BackgroundColor_11l4y_159\",\"success800BackgroundColor\":\"_success800BackgroundColor_11l4y_163\",\"success900BackgroundColor\":\"_success900BackgroundColor_11l4y_167\",\"purple100BackgroundColor\":\"_purple100BackgroundColor_11l4y_171\",\"purple200BackgroundColor\":\"_purple200BackgroundColor_11l4y_175\",\"purple300BackgroundColor\":\"_purple300BackgroundColor_11l4y_179\",\"purple700BackgroundColor\":\"_purple700BackgroundColor_11l4y_183\",\"purple800BackgroundColor\":\"_purple800BackgroundColor_11l4y_187\",\"purple900BackgroundColor\":\"_purple900BackgroundColor_11l4y_191\",\"whiteBackgroundColor\":\"_whiteBackgroundColor_11l4y_195\",\"yellow100BackgroundColor\":\"_yellow100BackgroundColor_11l4y_199\",\"yellow200BackgroundColor\":\"_yellow200BackgroundColor_11l4y_203\",\"yellow300BackgroundColor\":\"_yellow300BackgroundColor_11l4y_207\",\"yellow700BackgroundColor\":\"_yellow700BackgroundColor_11l4y_211\",\"yellow800BackgroundColor\":\"_yellow800BackgroundColor_11l4y_215\",\"yellow900BackgroundColor\":\"_yellow900BackgroundColor_11l4y_219\"}"],"mappings":";AAA2F,IAAO,wBAAQ,EAAC,gBAAe,yBAAwB,uBAAsB,gCAA+B,gBAAe,0BAAyB,gBAAe,0BAAyB,mBAAkB,6BAA4B,mBAAkB,6BAA4B,cAAa,wBAAuB,wBAAuB,kCAAiC,iCAAgC,2CAA0C,iCAAgC,2CAA0C,iCAAgC,2CAA0C,iCAAgC,2CAA0C,iCAAgC,2CAA0C,iCAAgC,2CAA0C,yBAAwB,mCAAkC,yBAAwB,mCAAkC,yBAAwB,mCAAkC,yBAAwB,mCAAkC,0BAAyB,oCAAmC,0BAAyB,oCAAmC,0BAAyB,oCAAmC,0BAAyB,oCAAmC,0BAAyB,oCAAmC,0BAAyB,oCAAmC,4BAA2B,sCAAqC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,6BAA4B,wCAAuC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,wBAAuB,mCAAkC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,uCAAsC,4BAA2B,sCAAqC;","names":[]}
@@ -0,0 +1,120 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
+
3
+ var _SAEVPDUPjs = require('./SAEVPDUP.js');
4
+
5
+
6
+ var _5DBWL6IKjs = require('./5DBWL6IK.js');
7
+
8
+
9
+ var _BNRC45PXjs = require('./BNRC45PX.js');
10
+
11
+
12
+ var _3OXEYQS2js = require('./3OXEYQS2.js');
13
+
14
+
15
+ var _PTAZUBW6js = require('./PTAZUBW6.js');
16
+
17
+
18
+ var _YJ7YDIGBjs = require('./YJ7YDIGB.js');
19
+
20
+
21
+ var _YKIJQZYOjs = require('./YKIJQZYO.js');
22
+
23
+
24
+ var _QX4SPXNOjs = require('./QX4SPXNO.js');
25
+
26
+
27
+ var _3N6HHI46js = require('./3N6HHI46.js');
28
+
29
+ // src/Button/Button.tsx
30
+ var _react = require('react');
31
+ var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames);
32
+
33
+ // css-module:./Button.module.css#css-module
34
+ 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" };
35
+
36
+ // src/Button/Button.tsx
37
+ var _jsxruntime = require('react/jsx-runtime');
38
+ var Button = _react.forwardRef.call(void 0,
39
+ ({
40
+ "data-testid": dataTestId,
41
+ text,
42
+ loadingText,
43
+ color = "primary",
44
+ size = "md",
45
+ accessibilityLabel,
46
+ disabled = false,
47
+ loading = false,
48
+ fullWidth = false,
49
+ startIcon: StartIcon,
50
+ endIcon: EndIcon,
51
+ onClick,
52
+ tooltip,
53
+ type = "button"
54
+ }, ref) => {
55
+ const isHydrated = _YJ7YDIGBjs.useIsHydrated.call(void 0, );
56
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
57
+ "button",
58
+ {
59
+ "data-testid": dataTestId,
60
+ ref,
61
+ "aria-label": accessibilityLabel,
62
+ type,
63
+ title: tooltip,
64
+ disabled: !isHydrated || disabled || loading,
65
+ onClick,
66
+ className: _classnames2.default.call(void 0,
67
+ Button_module_default.button,
68
+ _QX4SPXNOjs.foregroundColor.call(void 0, color),
69
+ _3N6HHI46js.backgroundColor.call(void 0, color),
70
+ Button_module_default[size],
71
+ {
72
+ [Button_module_default.fullWidth]: fullWidth,
73
+ [Button_module_default.buttonGap]: size === "lg" || size === "md",
74
+ [Button_module_default.secondaryBorder]: color === "secondary",
75
+ [Button_module_default.secondaryDestructiveBorder]: color === "destructive-secondary"
76
+ }
77
+ ),
78
+ children: [
79
+ !loading && StartIcon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, StartIcon, { className: _classnames2.default.call(void 0, Button_module_default.icon, _BNRC45PXjs.iconSize_default[size]) }),
80
+ (loading && loadingText || !loading && text) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _3OXEYQS2js.Box_default, { paddingX: 1, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
81
+ _PTAZUBW6js.Typography_default,
82
+ {
83
+ size: _5DBWL6IKjs.textVariant_default[size],
84
+ color: _YKIJQZYOjs.foregroundTypographyColor.call(void 0, color),
85
+ children: loading ? loadingText : text
86
+ }
87
+ ) }),
88
+ !loading && EndIcon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EndIcon, { className: _classnames2.default.call(void 0, Button_module_default.icon, _BNRC45PXjs.iconSize_default[size]) }),
89
+ loading && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
90
+ "svg",
91
+ {
92
+ className: _classnames2.default.call(void 0, Button_module_default.loading, _QX4SPXNOjs.foregroundColor.call(void 0, color)),
93
+ viewBox: "22 22 44 44",
94
+ width: _SAEVPDUPjs.loadingIconSize_default[size],
95
+ height: _SAEVPDUPjs.loadingIconSize_default[size],
96
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
97
+ "circle",
98
+ {
99
+ className: Button_module_default.loadingCircle,
100
+ cx: "44",
101
+ cy: "44",
102
+ r: "20.2",
103
+ fill: "none",
104
+ strokeWidth: "3.6"
105
+ }
106
+ )
107
+ }
108
+ )
109
+ ]
110
+ }
111
+ );
112
+ }
113
+ );
114
+ Button.displayName = "Button";
115
+ var Button_default = Button;
116
+
117
+
118
+
119
+ exports.Button_default = Button_default;
120
+ //# sourceMappingURL=LJA4ANIH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Button/Button.tsx","css-module:./Button.module.css#css-module"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAgB,kBAAkB;AAClC,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;;;AD4HzmB,SAuBI,KAvBJ;AAvBN,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,UAAM,aAAa,cAAc;AAEjC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAa;AAAA,QACb;AAAA,QACA,cAAY;AAAA,QACZ;AAAA,QACA,OAAO;AAAA,QACP,UAAU,CAAC,cAAc,YAAY;AAAA,QACrC;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,cAErC,oBAAU,cAAc;AAAA;AAAA,UAC3B,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","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\";\nimport useIsHydrated from \"../useIsHydrated\";\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 | \"inverse\";\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 const isHydrated = useIsHydrated();\n\n return (\n <button\n data-testid={dataTestId}\n ref={ref}\n aria-label={accessibilityLabel}\n type={type}\n title={tooltip}\n disabled={!isHydrated || 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 {loading ? loadingText : text}\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_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\"}"]}
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
2
 
3
- var _TPMQI44Ljs = require('./TPMQI44L.js');
3
+ var _S2OLRDIAjs = require('./S2OLRDIA.js');
4
4
 
5
5
 
6
6
  var _YJ7YDIGBjs = require('./YJ7YDIGB.js');
@@ -92,7 +92,7 @@ var TapArea = _react.forwardRef.call(void 0,
92
92
  {
93
93
  className: _classnames2.default.call(void 0,
94
94
  TapArea_module_default.overlay,
95
- rounding !== "none" && _TPMQI44Ljs.rounding_module_default[`rounding${rounding}`]
95
+ rounding !== "none" && _S2OLRDIAjs.rounding_module_default[`rounding${rounding}`]
96
96
  )
97
97
  }
98
98
  ),
@@ -108,4 +108,4 @@ var TapArea_default = TapArea;
108
108
 
109
109
 
110
110
  exports.TapArea_default = TapArea_default;
111
- //# sourceMappingURL=37CQV3RS.js.map
111
+ //# sourceMappingURL=LKIXWY5D.js.map