@servicetitan/anvil2 2.9.2 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (499) hide show
  1. package/CHANGELOG.md +79 -2
  2. package/dist/{AiMark-DhgDh95y.js → AiMark-B1-M3ZgP.js} +27 -26
  3. package/dist/{AiMark-DhgDh95y.js.map → AiMark-B1-M3ZgP.js.map} +1 -1
  4. package/dist/AiMark.css +246 -256
  5. package/dist/AiMark.js +1 -1
  6. package/dist/{Alert-DffLPz0l.js → Alert-C04WIw7A.js} +20 -31
  7. package/dist/Alert-C04WIw7A.js.map +1 -0
  8. package/dist/Alert.css +72 -90
  9. package/dist/Alert.js +1 -1
  10. package/dist/{Announcement-B9zm-_1S.js → Announcement-_C5g2Lzm.js} +14 -14
  11. package/dist/{Announcement-B9zm-_1S.js.map → Announcement-_C5g2Lzm.js.map} +1 -1
  12. package/dist/Announcement.css +108 -97
  13. package/dist/Announcement.js +1 -1
  14. package/dist/{AnvilProvider-DUPYyMc7.js → AnvilProvider-JXEbeQjR.js} +13 -8
  15. package/dist/AnvilProvider-JXEbeQjR.js.map +1 -0
  16. package/dist/AnvilProvider.css +1 -2
  17. package/dist/AnvilProvider.js +1 -1
  18. package/dist/{Avatar-ChybzixS.js → Avatar-BmNcLUg-.js} +2 -2
  19. package/dist/{Avatar-ChybzixS.js.map → Avatar-BmNcLUg-.js.map} +1 -1
  20. package/dist/{Avatar-BckUfs1N.js → Avatar-Cw8B8xZV.js} +24 -24
  21. package/dist/Avatar-Cw8B8xZV.js.map +1 -0
  22. package/dist/Avatar.css +116 -177
  23. package/dist/Avatar.js +2 -2
  24. package/dist/{Badge-C2W7Dls9.js → Badge-C_wTvtnB.js} +7 -7
  25. package/dist/{Badge-C2W7Dls9.js.map → Badge-C_wTvtnB.js.map} +1 -1
  26. package/dist/Badge.css +42 -50
  27. package/dist/Badge.js +1 -1
  28. package/dist/{Breadcrumbs-CkPZHJGM.js → Breadcrumbs-CAJMeA1D.js} +7 -7
  29. package/dist/{Breadcrumbs-CkPZHJGM.js.map → Breadcrumbs-CAJMeA1D.js.map} +1 -1
  30. package/dist/Breadcrumbs.css +37 -45
  31. package/dist/Breadcrumbs.js +1 -1
  32. package/dist/{Button-BdrrhBTI.js → Button-Bnt8XUI7.js} +13 -10
  33. package/dist/{Button-BdrrhBTI.js.map → Button-Bnt8XUI7.js.map} +1 -1
  34. package/dist/Button.css +274 -335
  35. package/dist/Button.js +1 -1
  36. package/dist/Button.module-DsGhJYRw.js +23 -0
  37. package/dist/Button.module-DsGhJYRw.js.map +1 -0
  38. package/dist/{ButtonCompound-Cmw3cgMY.js → ButtonCompound-DsrK7G3q.js} +11 -4
  39. package/dist/ButtonCompound-DsrK7G3q.js.map +1 -0
  40. package/dist/ButtonCompound.css +25 -0
  41. package/dist/ButtonCompound.js +1 -1
  42. package/dist/{ButtonLink-BJKTJER8.js → ButtonLink-j3h_wRNi.js} +9 -6
  43. package/dist/ButtonLink-j3h_wRNi.js.map +1 -0
  44. package/dist/ButtonLink.js +1 -1
  45. package/dist/{ButtonToggle-DaFQ3DBG.js → ButtonToggle-Ct9_5bhC.js} +7 -4
  46. package/dist/ButtonToggle-Ct9_5bhC.js.map +1 -0
  47. package/dist/ButtonToggle.css +109 -0
  48. package/dist/ButtonToggle.js +1 -1
  49. package/dist/{Calendar-CaWPwtb3.js → Calendar-BAbAagIx.js} +2 -2
  50. package/dist/{Calendar-CaWPwtb3.js.map → Calendar-BAbAagIx.js.map} +1 -1
  51. package/dist/{Calendar-0DG2so95.js → Calendar-CaCMa_jq.js} +38 -35
  52. package/dist/Calendar-CaCMa_jq.js.map +1 -0
  53. package/dist/Calendar.css +250 -301
  54. package/dist/Calendar.js +2 -2
  55. package/dist/{Card-wz71dEVA.js → Card-DSFuXUGk.js} +11 -11
  56. package/dist/{Card-wz71dEVA.js.map → Card-DSFuXUGk.js.map} +1 -1
  57. package/dist/Card.css +51 -65
  58. package/dist/Card.js +1 -1
  59. package/dist/{Checkbox-B1I1OfZU.js → Checkbox-BSAS8-DM.js} +28 -39
  60. package/dist/Checkbox-BSAS8-DM.js.map +1 -0
  61. package/dist/{Checkbox-CTR7JfWk.js → Checkbox-Ckl8EFpF.js} +2 -2
  62. package/dist/{Checkbox-CTR7JfWk.js.map → Checkbox-Ckl8EFpF.js.map} +1 -1
  63. package/dist/Checkbox.css +237 -271
  64. package/dist/Checkbox.js +1 -1
  65. package/dist/Checkbox.module-TYMeYIxw.js +28 -0
  66. package/dist/Checkbox.module-TYMeYIxw.js.map +1 -0
  67. package/dist/{Chip-lIWu8uXb.js → Chip-Da8c7tKP.js} +31 -23
  68. package/dist/Chip-Da8c7tKP.js.map +1 -0
  69. package/dist/Chip.css +191 -206
  70. package/dist/Chip.js +1 -1
  71. package/dist/{Combobox-Dt3AnO9Z.js → Combobox-CBLaT1lU.js} +59 -72
  72. package/dist/Combobox-CBLaT1lU.js.map +1 -0
  73. package/dist/Combobox.css +158 -176
  74. package/dist/Combobox.js +1 -1
  75. package/dist/{DataTable-bMoIuYBK.js → DataTable-BDXdCF7J.js} +73 -72
  76. package/dist/{DataTable-bMoIuYBK.js.map → DataTable-BDXdCF7J.js.map} +1 -1
  77. package/dist/DataTable.css +593 -780
  78. package/dist/{DateFieldRange-B_D6v-F7.js → DateFieldRange-DPTC3EZz.js} +6 -6
  79. package/dist/{DateFieldRange-B_D6v-F7.js.map → DateFieldRange-DPTC3EZz.js.map} +1 -1
  80. package/dist/DateFieldRange.js +1 -1
  81. package/dist/{DateFieldSingle-D_Ve0E6q.js → DateFieldSingle-w1G-zd9G.js} +6 -6
  82. package/dist/{DateFieldSingle-D_Ve0E6q.js.map → DateFieldSingle-w1G-zd9G.js.map} +1 -1
  83. package/dist/DateFieldSingle.js +1 -1
  84. package/dist/{DateFieldYearless-Bg7OLIsT.js → DateFieldYearless-DHNVc7Sd.js} +7 -7
  85. package/dist/{DateFieldYearless-Bg7OLIsT.js.map → DateFieldYearless-DHNVc7Sd.js.map} +1 -1
  86. package/dist/DateFieldYearless.js +1 -1
  87. package/dist/{DateFieldYearlessRange-C40uUmLK.js → DateFieldYearlessRange-C5ktVUgG.js} +10 -10
  88. package/dist/{DateFieldYearlessRange-C40uUmLK.js.map → DateFieldYearlessRange-C5ktVUgG.js.map} +1 -1
  89. package/dist/DateFieldYearlessRange.css +11 -19
  90. package/dist/DateFieldYearlessRange.js +1 -1
  91. package/dist/{DaysOfTheWeek-2a8Ukq59.js → DaysOfTheWeek-BubWkBZ0.js} +10 -10
  92. package/dist/{DaysOfTheWeek-2a8Ukq59.js.map → DaysOfTheWeek-BubWkBZ0.js.map} +1 -1
  93. package/dist/DaysOfTheWeek.css +19 -27
  94. package/dist/DaysOfTheWeek.js +1 -1
  95. package/dist/{Details-CZOIpNP_.js → Details-DYRJcLWL.js} +10 -10
  96. package/dist/{Details-CZOIpNP_.js.map → Details-DYRJcLWL.js.map} +1 -1
  97. package/dist/Details.css +134 -138
  98. package/dist/Details.js +1 -1
  99. package/dist/{Dialog-zxpNOCDS.js → Dialog-ByTyuybu.js} +29 -28
  100. package/dist/Dialog-ByTyuybu.js.map +1 -0
  101. package/dist/Dialog.css +108 -143
  102. package/dist/Dialog.js +1 -1
  103. package/dist/{DialogCancelButton-Czz4Wpse.js → DialogCancelButton-CbtQcf2J.js} +2 -2
  104. package/dist/{DialogCancelButton-Czz4Wpse.js.map → DialogCancelButton-CbtQcf2J.js.map} +1 -1
  105. package/dist/{Divider-B1UoK8ho.js → Divider-Ds3WKsKa.js} +19 -19
  106. package/dist/{Divider-B1UoK8ho.js.map → Divider-Ds3WKsKa.js.map} +1 -1
  107. package/dist/Divider.css +93 -169
  108. package/dist/Divider.js +1 -1
  109. package/dist/Dnd.js +1 -1
  110. package/dist/DndSort.css +18 -34
  111. package/dist/DndSort.js +10 -10
  112. package/dist/{Drawer-DkCcE434.js → Drawer-CwyfBcwt.js} +27 -28
  113. package/dist/{Drawer-DkCcE434.js.map → Drawer-CwyfBcwt.js.map} +1 -1
  114. package/dist/Drawer.css +109 -144
  115. package/dist/Drawer.js +1 -1
  116. package/dist/DrillDown.css +117 -131
  117. package/dist/DrillDown.js +1 -1
  118. package/dist/DrillDown.module-D1Bf9_yP.js +27 -0
  119. package/dist/{DrillDown.module-C8VOhzaF.js.map → DrillDown.module-D1Bf9_yP.js.map} +1 -1
  120. package/dist/{EditCard-BKHmnbKP.js → EditCard-DqLSnkih.js} +21 -20
  121. package/dist/{EditCard-BKHmnbKP.js.map → EditCard-DqLSnkih.js.map} +1 -1
  122. package/dist/EditCard.css +71 -65
  123. package/dist/EditCard.js +1 -1
  124. package/dist/{FieldLabel-M5v4-PAV.js → FieldLabel-DZWu5dMp.js} +17 -17
  125. package/dist/{FieldLabel-M5v4-PAV.js.map → FieldLabel-DZWu5dMp.js.map} +1 -1
  126. package/dist/FieldLabel.css +66 -102
  127. package/dist/FieldLabel.js +1 -1
  128. package/dist/FieldMessage-DzxfodaI.js +81 -0
  129. package/dist/FieldMessage-DzxfodaI.js.map +1 -0
  130. package/dist/FieldMessage.css +20 -29
  131. package/dist/FieldMessage.js +1 -1
  132. package/dist/{Toolbar-Dsaufi65.js → FilterBar-BU8StPPd.js} +129 -941
  133. package/dist/FilterBar-BU8StPPd.js.map +1 -0
  134. package/dist/FilterBar.css +59 -0
  135. package/dist/FilterBar.d.ts +6 -0
  136. package/dist/FilterBar.js +2 -0
  137. package/dist/FilterBar.js.map +1 -0
  138. package/dist/{Flex-WyyZm1bf.js → Flex-DOUtHiPi.js} +4 -4
  139. package/dist/{Flex-WyyZm1bf.js.map → Flex-DOUtHiPi.js.map} +1 -1
  140. package/dist/Flex.css +25 -28
  141. package/dist/Flex.js +1 -1
  142. package/dist/{Grid-DeYIx5k4.js → Grid-B1VVssDD.js} +5 -5
  143. package/dist/{Grid-DeYIx5k4.js.map → Grid-B1VVssDD.js.map} +1 -1
  144. package/dist/Grid.css +37 -54
  145. package/dist/Grid.js +1 -1
  146. package/dist/{Helper-B_FIOlhy.js → Helper-DtDeaYTn.js} +8 -10
  147. package/dist/Helper-DtDeaYTn.js.map +1 -0
  148. package/dist/Helper.css +4 -16
  149. package/dist/{Icon-DuIlne4x.js → Icon-BMMbp40n.js} +7 -7
  150. package/dist/{Icon-DuIlne4x.js.map → Icon-BMMbp40n.js.map} +1 -1
  151. package/dist/Icon.css +42 -48
  152. package/dist/Icon.js +1 -1
  153. package/dist/{InputMask-PVCfJodz.js → InputMask-EwEJlW-t.js} +3 -3
  154. package/dist/{InputMask-PVCfJodz.js.map → InputMask-EwEJlW-t.js.map} +1 -1
  155. package/dist/InputMask.js +1 -1
  156. package/dist/{InteractiveCard-GTYbR6Xy.js → InteractiveCard-CnW0m_F-.js} +7 -7
  157. package/dist/{InteractiveCard-GTYbR6Xy.js.map → InteractiveCard-CnW0m_F-.js.map} +1 -1
  158. package/dist/InteractiveCard.css +56 -57
  159. package/dist/InteractiveCard.js +1 -1
  160. package/dist/{Layout-CISAxILX.js → Layout-C2Q2hyLG.js} +80 -80
  161. package/dist/{Layout-CISAxILX.js.map → Layout-C2Q2hyLG.js.map} +1 -1
  162. package/dist/Layout.css +260 -324
  163. package/dist/Layout.js +1 -1
  164. package/dist/{Link-jTvzyXca.js → Link-BUgivkGS.js} +8 -8
  165. package/dist/{Link-jTvzyXca.js.map → Link-BUgivkGS.js.map} +1 -1
  166. package/dist/Link.css +48 -65
  167. package/dist/Link.js +1 -1
  168. package/dist/Link.module-DJc0cOlg.js +12 -0
  169. package/dist/Link.module-DJc0cOlg.js.map +1 -0
  170. package/dist/{LinkButton-DGyHR1E7.js → LinkButton-CuHSdGdj.js} +7 -16
  171. package/dist/LinkButton-CuHSdGdj.js.map +1 -0
  172. package/dist/LinkButton.js +1 -1
  173. package/dist/{List--KhCpjZn.js → List-BXyHWQ9e.js} +8 -8
  174. package/dist/{List--KhCpjZn.js.map → List-BXyHWQ9e.js.map} +1 -1
  175. package/dist/List.css +39 -58
  176. package/dist/List.js +1 -1
  177. package/dist/{ListView-DT32FdKH.js → ListView-DBO9Bl1H.js} +4 -4
  178. package/dist/{ListView-DT32FdKH.js.map → ListView-DBO9Bl1H.js.map} +1 -1
  179. package/dist/ListView.css +108 -120
  180. package/dist/ListView.js +1 -1
  181. package/dist/ListView.module-CRk9NfLG.js +9 -0
  182. package/dist/ListView.module-CRk9NfLG.js.map +1 -0
  183. package/dist/{Listbox-BR0HTJaM.js → Listbox-C0tjQFDF.js} +7 -7
  184. package/dist/{Listbox-BR0HTJaM.js.map → Listbox-C0tjQFDF.js.map} +1 -1
  185. package/dist/Listbox.css +102 -143
  186. package/dist/Listbox.js +1 -1
  187. package/dist/Listbox.module-CfpLm9pS.js +18 -0
  188. package/dist/Listbox.module-CfpLm9pS.js.map +1 -0
  189. package/dist/{LocalizationProvider-DWCyga_d.js → LocalizationProvider-CO8fQGqs.js} +2 -2
  190. package/dist/{LocalizationProvider-DWCyga_d.js.map → LocalizationProvider-CO8fQGqs.js.map} +1 -1
  191. package/dist/LocalizationProvider.js +1 -1
  192. package/dist/{Menu-CCavGohP.js → Menu-wpTyUDac.js} +10 -10
  193. package/dist/{Menu-CCavGohP.js.map → Menu-wpTyUDac.js.map} +1 -1
  194. package/dist/Menu.css +135 -137
  195. package/dist/Menu.js +1 -1
  196. package/dist/MultiSelectField.js +1 -1
  197. package/dist/{MultiSelectFieldSync-fV2O5J0N.js → MultiSelectFieldSync-ueey5UBM.js} +34 -33
  198. package/dist/MultiSelectFieldSync-ueey5UBM.js.map +1 -0
  199. package/dist/MultiSelectFieldSync.css +263 -257
  200. package/dist/MultiSelectMenu.js +1 -1
  201. package/dist/{MultiSelectMenuSync-BViWKlX1.js → MultiSelectMenuSync-D7hqugcQ.js} +4 -4
  202. package/dist/{MultiSelectMenuSync-BViWKlX1.js.map → MultiSelectMenuSync-D7hqugcQ.js.map} +1 -1
  203. package/dist/{NumberField-BxWTjbmF.js → NumberField-DJbdyatF.js} +15 -12
  204. package/dist/{NumberField-BxWTjbmF.js.map → NumberField-DJbdyatF.js.map} +1 -1
  205. package/dist/NumberField.css +34 -49
  206. package/dist/NumberField.js +1 -1
  207. package/dist/Overflow.css +143 -164
  208. package/dist/Overflow.js +44 -42
  209. package/dist/Overflow.js.map +1 -1
  210. package/dist/{Page-DFjOwTzH.js → Page-DbK-JKyB.js} +66 -66
  211. package/dist/Page-DbK-JKyB.js.map +1 -0
  212. package/dist/Page.css +384 -404
  213. package/dist/Page.js +1 -1
  214. package/dist/{Pagination-B9pdkp_V.js → Pagination-Bg5Nsdik.js} +29 -34
  215. package/dist/{Pagination-B9pdkp_V.js.map → Pagination-Bg5Nsdik.js.map} +1 -1
  216. package/dist/Pagination.css +63 -117
  217. package/dist/Pagination.js +1 -1
  218. package/dist/{Popover-CfG1IJP6.js → Popover-CyB7yzSf.js} +8 -8
  219. package/dist/{Popover-CfG1IJP6.js.map → Popover-CyB7yzSf.js.map} +1 -1
  220. package/dist/Popover.css +84 -97
  221. package/dist/Popover.js +1 -1
  222. package/dist/{ProgressBar-CFKKuXeN.js → ProgressBar-DSrjgLTx.js} +15 -15
  223. package/dist/{ProgressBar-CFKKuXeN.js.map → ProgressBar-DSrjgLTx.js.map} +1 -1
  224. package/dist/ProgressBar.css +59 -81
  225. package/dist/ProgressBar.js +1 -1
  226. package/dist/{Radio-CeVjHOXe.js → Radio-CQaXJ72d.js} +2 -2
  227. package/dist/{Radio-CeVjHOXe.js.map → Radio-CQaXJ72d.js.map} +1 -1
  228. package/dist/{Radio-Dda5sh2r.js → Radio-DO4UhbBE.js} +45 -48
  229. package/dist/Radio-DO4UhbBE.js.map +1 -0
  230. package/dist/Radio.css +233 -229
  231. package/dist/Radio.js +1 -1
  232. package/dist/{SearchField-im7AHGYo.js → SearchField-BKJOW-vI.js} +11 -20
  233. package/dist/SearchField-BKJOW-vI.js.map +1 -0
  234. package/dist/SearchField-BplvDpBG.js +13 -0
  235. package/dist/SearchField-BplvDpBG.js.map +1 -0
  236. package/dist/SearchField.css +22 -39
  237. package/dist/SearchField.js +1 -1
  238. package/dist/{SegmentedControl-B9NWUF7s.js → SegmentedControl-Chhqyyra.js} +15 -16
  239. package/dist/SegmentedControl-Chhqyyra.js.map +1 -0
  240. package/dist/SegmentedControl.css +103 -122
  241. package/dist/SegmentedControl.js +1 -1
  242. package/dist/SelectCard-CtXwY8FZ.js +351 -0
  243. package/dist/SelectCard-CtXwY8FZ.js.map +1 -0
  244. package/dist/SelectCard.css +135 -82
  245. package/dist/SelectCard.js +1 -1
  246. package/dist/SelectField.js +1 -1
  247. package/dist/{SelectFieldLabel-ChEvk0uS.js → SelectFieldLabel-DLT5dKbx.js} +3 -3
  248. package/dist/{SelectFieldLabel-ChEvk0uS.js.map → SelectFieldLabel-DLT5dKbx.js.map} +1 -1
  249. package/dist/{SelectFieldSync-CDIRIYv2.js → SelectFieldSync-W_-jTf7z.js} +9 -8
  250. package/dist/SelectFieldSync-W_-jTf7z.js.map +1 -0
  251. package/dist/SelectMenu.js +1 -1
  252. package/dist/{SelectMenuSync-DkQrikHz.js → SelectMenuSync-QcjbQtCO.js} +4 -4
  253. package/dist/{SelectMenuSync-DkQrikHz.js.map → SelectMenuSync-QcjbQtCO.js.map} +1 -1
  254. package/dist/{SelectOptions-BN1tCi7P.js → SelectOptions-BsX0f22q.js} +2 -2
  255. package/dist/{SelectOptions-BN1tCi7P.js.map → SelectOptions-BsX0f22q.js.map} +1 -1
  256. package/dist/{SelectTrigger-LZUtpAFW.js → SelectTrigger-BaDvF9JD.js} +5 -5
  257. package/dist/{SelectTrigger-LZUtpAFW.js.map → SelectTrigger-BaDvF9JD.js.map} +1 -1
  258. package/dist/SelectTrigger.js +1 -1
  259. package/dist/{SelectTriggerBase-qeFownmF.js → SelectTriggerBase-kMRqbXwu.js} +8 -7
  260. package/dist/{SelectTriggerBase-qeFownmF.js.map → SelectTriggerBase-kMRqbXwu.js.map} +1 -1
  261. package/dist/SelectTriggerBase.css +231 -305
  262. package/dist/SelectTriggerBase.module-DKF1FQnc.js +37 -0
  263. package/dist/SelectTriggerBase.module-DKF1FQnc.js.map +1 -0
  264. package/dist/{SideNav-CrxYExjh.js → SideNav-CZRVOSbt.js} +19 -14
  265. package/dist/SideNav-CZRVOSbt.js.map +1 -0
  266. package/dist/SideNav.css +126 -294
  267. package/dist/SideNav.js +1 -1
  268. package/dist/Skeleton.css +57 -65
  269. package/dist/Skeleton.js +16 -16
  270. package/dist/Skeleton.js.map +1 -1
  271. package/dist/{Spinner-BqmcE2pb.js → Spinner-lPMo68yW.js} +16 -17
  272. package/dist/Spinner-lPMo68yW.js.map +1 -0
  273. package/dist/Spinner.css +33 -43
  274. package/dist/Spinner.js +1 -1
  275. package/dist/{SrOnly-eUpYGpAT.js → SrOnly-pnf8ajnh.js} +2 -2
  276. package/dist/{SrOnly-eUpYGpAT.js.map → SrOnly-pnf8ajnh.js.map} +1 -1
  277. package/dist/SrOnly.css +12 -14
  278. package/dist/SrOnly.js +1 -1
  279. package/dist/StatusIcon-BwULopyH.js +57 -0
  280. package/dist/StatusIcon-BwULopyH.js.map +1 -0
  281. package/dist/StatusIcon.css +32 -0
  282. package/dist/{Stepper-Dt2xAXth.js → Stepper-CYY64NU1.js} +16 -16
  283. package/dist/{Stepper-Dt2xAXth.js.map → Stepper-CYY64NU1.js.map} +1 -1
  284. package/dist/Stepper.css +180 -239
  285. package/dist/Stepper.js +1 -1
  286. package/dist/{Switch-3u7oAQQV.js → Switch-DeBu4Ucg.js} +17 -13
  287. package/dist/{Switch-3u7oAQQV.js.map → Switch-DeBu4Ucg.js.map} +1 -1
  288. package/dist/Switch.css +109 -125
  289. package/dist/Switch.js +1 -1
  290. package/dist/{Tab-BZpTCG0i.js → Tab-CewPzmuK.js} +20 -34
  291. package/dist/Tab-CewPzmuK.js.map +1 -0
  292. package/dist/Tab.css +232 -194
  293. package/dist/Tab.js +1 -1
  294. package/dist/Table.js +1 -1
  295. package/dist/{Text-DQ78JchQ.js → Text-BH8gglCL.js} +15 -38
  296. package/dist/Text-BH8gglCL.js.map +1 -0
  297. package/dist/Text.css +101 -142
  298. package/dist/Text.js +1 -1
  299. package/dist/Text.module-BXrY87ui.js +23 -0
  300. package/dist/Text.module-BXrY87ui.js.map +1 -0
  301. package/dist/{TextField-DHk1k3cf.js → TextField-CRDTnuUN.js} +7 -7
  302. package/dist/{TextField-DHk1k3cf.js.map → TextField-CRDTnuUN.js.map} +1 -1
  303. package/dist/{TextField-Bu5kAe9_.js → TextField-YlMkDHp-.js} +2 -2
  304. package/dist/{TextField-Bu5kAe9_.js.map → TextField-YlMkDHp-.js.map} +1 -1
  305. package/dist/TextField.css +156 -148
  306. package/dist/TextField.js +1 -1
  307. package/dist/TextField.module-MRVo1X9H.js +23 -0
  308. package/dist/TextField.module-MRVo1X9H.js.map +1 -0
  309. package/dist/{Textarea-CYv02rxW.js → Textarea-CxXmr_Gx.js} +16 -13
  310. package/dist/{Textarea-CYv02rxW.js.map → Textarea-CxXmr_Gx.js.map} +1 -1
  311. package/dist/Textarea.css +71 -81
  312. package/dist/Textarea.js +1 -1
  313. package/dist/{ThemeProvider-CaYW3RuA.js → ThemeProvider-D4KdGCaP.js} +11 -9
  314. package/dist/ThemeProvider-D4KdGCaP.js.map +1 -0
  315. package/dist/ThemeProvider.css +586 -517
  316. package/dist/ThemeProvider.js +1 -1
  317. package/dist/{TimeField-BYtP64Qx.js → TimeField-Cz4tMYb3.js} +7 -7
  318. package/dist/{TimeField-BYtP64Qx.js.map → TimeField-Cz4tMYb3.js.map} +1 -1
  319. package/dist/TimeField.css +5 -8
  320. package/dist/TimeField.js +1 -1
  321. package/dist/{TimezoneMessage-Cnsl4cHT.js → TimezoneMessage-BrKB_psP.js} +2 -2
  322. package/dist/{TimezoneMessage-Cnsl4cHT.js.map → TimezoneMessage-BrKB_psP.js.map} +1 -1
  323. package/dist/TimezoneMessage.css +5 -5
  324. package/dist/Toast.js +2 -2
  325. package/dist/{Toaster-BRjGoIQu.js → Toaster-BV8RjmIN.js} +35 -34
  326. package/dist/Toaster-BV8RjmIN.js.map +1 -0
  327. package/dist/{Toaster-DO83u5o3.js → Toaster-DYGDohJT.js} +2 -2
  328. package/dist/{Toaster-DO83u5o3.js.map → Toaster-DYGDohJT.js.map} +1 -1
  329. package/dist/Toaster.css +210 -242
  330. package/dist/Toolbar-Dzj2KMEy.js +588 -0
  331. package/dist/Toolbar-Dzj2KMEy.js.map +1 -0
  332. package/dist/Toolbar.css +29 -204
  333. package/dist/Toolbar.js +2 -1
  334. package/dist/Toolbar.js.map +1 -1
  335. package/dist/ToolbarButtonToggle--2Ka05N8.js +284 -0
  336. package/dist/ToolbarButtonToggle--2Ka05N8.js.map +1 -0
  337. package/dist/ToolbarButtonToggle.css +41 -0
  338. package/dist/{Tooltip-C1PBRnJv.js → Tooltip-BlStOXN3.js} +8 -8
  339. package/dist/{Tooltip-C1PBRnJv.js.map → Tooltip-BlStOXN3.js.map} +1 -1
  340. package/dist/Tooltip.css +46 -58
  341. package/dist/Tooltip.js +1 -1
  342. package/dist/{YearlessDateInputWithPicker-CChqr1gR.js → YearlessDateInputWithPicker-DyytWt0x.js} +14 -16
  343. package/dist/{YearlessDateInputWithPicker-CChqr1gR.js.map → YearlessDateInputWithPicker-DyytWt0x.js.map} +1 -1
  344. package/dist/YearlessDateInputWithPicker.css +110 -196
  345. package/dist/assets/css-utils/a2-border.css +47 -45
  346. package/dist/assets/css-utils/a2-color.css +443 -227
  347. package/dist/assets/css-utils/a2-font.css +0 -2
  348. package/dist/assets/css-utils/a2-spacing.css +476 -478
  349. package/dist/assets/css-utils/a2-utils.css +992 -772
  350. package/dist/assets/css-utils/border.css +47 -45
  351. package/dist/assets/css-utils/color.css +443 -227
  352. package/dist/assets/css-utils/font.css +0 -2
  353. package/dist/assets/css-utils/spacing.css +476 -478
  354. package/dist/assets/css-utils/utils.css +992 -772
  355. package/dist/assets/icons/st/unsorted.svg +1 -1
  356. package/dist/beta/components/FilterBar/FilterBar.d.ts +87 -0
  357. package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterToggleButton.d.ts +1 -1
  358. package/dist/beta/components/FilterBar/index.d.ts +3 -0
  359. package/dist/beta/components/{Toolbar/Filters → FilterBar}/internal/FilterGroupContext.d.ts +5 -5
  360. package/dist/beta/components/{Toolbar/Filters → FilterBar}/internal/types.d.ts +2 -2
  361. package/dist/beta/components/{Toolbar/Filters → FilterBar}/internal/utils/test.d.ts +1 -0
  362. package/dist/beta/components/Toolbar/Toolbar.d.ts +0 -54
  363. package/dist/beta/components/Toolbar/index.d.ts +0 -1
  364. package/dist/beta/components/index.d.ts +1 -0
  365. package/dist/beta.js +12 -10
  366. package/dist/beta.js.map +1 -1
  367. package/dist/{indeterminate_check_box-B4zobNlt.js → check_box-0U1tbEAd.js} +2 -4
  368. package/dist/check_box-0U1tbEAd.js.map +1 -0
  369. package/dist/components/DateFieldRange/internal/MaskedDateRangeInput.d.ts +1 -1
  370. package/dist/components/DateFieldRange/internal/useDateFieldRangeConversion.d.ts +1 -1
  371. package/dist/components/DateFieldSingle/internal/MaskedDateInput.d.ts +1 -1
  372. package/dist/components/DateFieldYearless/internal/YearlessDateInput.d.ts +1 -1
  373. package/dist/components/DateFieldYearless/internal/YearlessDateInputWithPicker.d.ts +1 -1
  374. package/dist/components/NumberField/NumberField.d.ts +1 -1
  375. package/dist/components/Page/Page.d.ts +2 -2
  376. package/dist/components/SearchField/internal/SearchField.d.ts +1 -1
  377. package/dist/components/Stepper/Stepper.d.ts +1 -1
  378. package/dist/components/Stepper/StepperStep.d.ts +1 -1
  379. package/dist/components/Tab/Tab.d.ts +1 -1
  380. package/dist/components/Tab/TabButton.d.ts +1 -1
  381. package/dist/indeterminate_check_box-jjLG4UY6.js +6 -0
  382. package/dist/indeterminate_check_box-jjLG4UY6.js.map +1 -0
  383. package/dist/{index-D6ag_WQW.js → index-ByMdotWU.js} +18 -18
  384. package/dist/{index-D6ag_WQW.js.map → index-ByMdotWU.js.map} +1 -1
  385. package/dist/index.css +98 -126
  386. package/dist/index.js +85 -82
  387. package/dist/index.js.map +1 -1
  388. package/dist/index2.css +57 -74
  389. package/dist/internal/components/StatusIcon/StatusIcon.d.ts +5 -5
  390. package/dist/internal/hooks/useSelectOrchestration.d.ts +1 -1
  391. package/dist/primitive-DXlHdTFb.js +1056 -0
  392. package/dist/primitive-DXlHdTFb.js.map +1 -0
  393. package/dist/providers/ThemeProvider/ThemeProvider.d.ts +1 -0
  394. package/dist/{stripInlineMarkdown-V3M_UxQ8.js → stripInlineMarkdown-BWbMy7r_.js} +2 -2
  395. package/dist/{stripInlineMarkdown-V3M_UxQ8.js.map → stripInlineMarkdown-BWbMy7r_.js.map} +1 -1
  396. package/dist/{syncFilterUtils-DtOBvzdr.js → syncFilterUtils-nJS_tCsu.js} +50 -50
  397. package/dist/syncFilterUtils-nJS_tCsu.js.map +1 -0
  398. package/dist/syncFilterUtils.css +189 -217
  399. package/dist/token/core/component-variables.scss +1088 -131
  400. package/dist/token/core/component.d.ts +558 -0
  401. package/dist/token/core/component.js +6685 -249
  402. package/dist/token/core/component.scss +557 -69
  403. package/dist/token/core/css-utils/a2-border.css +47 -45
  404. package/dist/token/core/css-utils/a2-color.css +443 -227
  405. package/dist/token/core/css-utils/a2-font.css +0 -2
  406. package/dist/token/core/css-utils/a2-spacing.css +476 -478
  407. package/dist/token/core/css-utils/a2-utils.css +992 -772
  408. package/dist/token/core/css-utils/border.css +47 -45
  409. package/dist/token/core/css-utils/color.css +443 -227
  410. package/dist/token/core/css-utils/font.css +0 -2
  411. package/dist/token/core/css-utils/spacing.css +476 -478
  412. package/dist/token/core/css-utils/utils.css +992 -772
  413. package/dist/token/core/index.d.ts +6 -0
  414. package/dist/token/core/index.js +1 -1
  415. package/dist/token/core/primitive-variables.scss +148 -65
  416. package/dist/token/core/primitive.d.ts +209 -0
  417. package/dist/token/core/primitive.js +779 -61
  418. package/dist/token/core/primitive.scss +207 -124
  419. package/dist/token/core/semantic-variables.scss +363 -245
  420. package/dist/token/core/semantic.d.ts +221 -0
  421. package/dist/token/core/semantic.js +1592 -347
  422. package/dist/token/core/semantic.scss +219 -140
  423. package/dist/token.js +9075 -828
  424. package/dist/token.js.map +1 -1
  425. package/dist/{useBreakpoint-okJ64T1D.js → useBreakpoint-CeaUyHxh.js} +2 -2
  426. package/dist/{useBreakpoint-okJ64T1D.js.map → useBreakpoint-CeaUyHxh.js.map} +1 -1
  427. package/dist/useBreakpoint.js +1 -1
  428. package/dist/{useDrillDownContext-BssSasVB.js → useDrillDownContext-iUvoTget.js} +2 -2
  429. package/dist/{useDrillDownContext-BssSasVB.js.map → useDrillDownContext-iUvoTget.js.map} +1 -1
  430. package/dist/{useDrilldown-CK9KzXvI.js → useDrilldown-DwzT0Fse.js} +8 -8
  431. package/dist/{useDrilldown-CK9KzXvI.js.map → useDrilldown-DwzT0Fse.js.map} +1 -1
  432. package/dist/{useInitialFocus-BIvXK1Rp.js → useInitialFocus-BUxEDMEG.js} +2 -2
  433. package/dist/{useInitialFocus-BIvXK1Rp.js.map → useInitialFocus-BUxEDMEG.js.map} +1 -1
  434. package/dist/{useLayoutPropsUtil-DMDdfIah.js → useLayoutPropsUtil-CB_zHDbW.js} +3 -3
  435. package/dist/{useLayoutPropsUtil-DMDdfIah.js.map → useLayoutPropsUtil-CB_zHDbW.js.map} +1 -1
  436. package/dist/{usePopoverTransitionStates-B1opfxxn.js → usePopoverTransitionStates-CDXCdyKa.js} +2 -1
  437. package/dist/{usePopoverTransitionStates-B1opfxxn.js.map → usePopoverTransitionStates-CDXCdyKa.js.map} +1 -1
  438. package/dist/{useToggleSelection-BMXohj4f.js → useToggleSelection-CAwGOeXk.js} +2 -2
  439. package/dist/{useToggleSelection-BMXohj4f.js.map → useToggleSelection-CAwGOeXk.js.map} +1 -1
  440. package/package.json +11 -11
  441. package/dist/Alert-DffLPz0l.js.map +0 -1
  442. package/dist/AnvilProvider-DUPYyMc7.js.map +0 -1
  443. package/dist/Avatar-BckUfs1N.js.map +0 -1
  444. package/dist/Button.module-wCtFYGVD.js +0 -26
  445. package/dist/Button.module-wCtFYGVD.js.map +0 -1
  446. package/dist/ButtonCompound-Cmw3cgMY.js.map +0 -1
  447. package/dist/ButtonLink-BJKTJER8.js.map +0 -1
  448. package/dist/ButtonToggle-DaFQ3DBG.js.map +0 -1
  449. package/dist/Calendar-0DG2so95.js.map +0 -1
  450. package/dist/Checkbox-B1I1OfZU.js.map +0 -1
  451. package/dist/Checkbox.module-EkRZO48Y.js +0 -28
  452. package/dist/Checkbox.module-EkRZO48Y.js.map +0 -1
  453. package/dist/Chip-lIWu8uXb.js.map +0 -1
  454. package/dist/Combobox-Dt3AnO9Z.js.map +0 -1
  455. package/dist/Dialog-zxpNOCDS.js.map +0 -1
  456. package/dist/DrillDown.module-C8VOhzaF.js +0 -27
  457. package/dist/FieldMessage-COHqUdj5.js +0 -132
  458. package/dist/FieldMessage-COHqUdj5.js.map +0 -1
  459. package/dist/Helper-B_FIOlhy.js.map +0 -1
  460. package/dist/Link.module-CZt9wvuD.js +0 -12
  461. package/dist/Link.module-CZt9wvuD.js.map +0 -1
  462. package/dist/LinkButton-DGyHR1E7.js.map +0 -1
  463. package/dist/LinkButton.css +0 -5
  464. package/dist/ListView.module-BilDg12y.js +0 -9
  465. package/dist/ListView.module-BilDg12y.js.map +0 -1
  466. package/dist/Listbox.module-HAXMOKvC.js +0 -18
  467. package/dist/Listbox.module-HAXMOKvC.js.map +0 -1
  468. package/dist/MultiSelectFieldSync-fV2O5J0N.js.map +0 -1
  469. package/dist/Page-DFjOwTzH.js.map +0 -1
  470. package/dist/Radio-Dda5sh2r.js.map +0 -1
  471. package/dist/SearchField-im7AHGYo.js.map +0 -1
  472. package/dist/SegmentedControl-B9NWUF7s.js.map +0 -1
  473. package/dist/SelectCard-COJn0wT6.js +0 -352
  474. package/dist/SelectCard-COJn0wT6.js.map +0 -1
  475. package/dist/SelectFieldSync-CDIRIYv2.js.map +0 -1
  476. package/dist/SelectTriggerBase.module-CKoq6qzX.js +0 -38
  477. package/dist/SelectTriggerBase.module-CKoq6qzX.js.map +0 -1
  478. package/dist/SideNav-CrxYExjh.js.map +0 -1
  479. package/dist/Spinner-BqmcE2pb.js.map +0 -1
  480. package/dist/Tab-BZpTCG0i.js.map +0 -1
  481. package/dist/Text-DQ78JchQ.js.map +0 -1
  482. package/dist/TextField.module-BP-hDP5m.js +0 -22
  483. package/dist/TextField.module-BP-hDP5m.js.map +0 -1
  484. package/dist/ThemeProvider-CaYW3RuA.js.map +0 -1
  485. package/dist/Toaster-BRjGoIQu.js.map +0 -1
  486. package/dist/Toolbar-Dsaufi65.js.map +0 -1
  487. package/dist/beta/components/Toolbar/Filters/FilterGroup.d.ts +0 -25
  488. package/dist/indeterminate_check_box-B4zobNlt.js.map +0 -1
  489. package/dist/primitive-C3RFDRA8.js +0 -255
  490. package/dist/primitive-C3RFDRA8.js.map +0 -1
  491. package/dist/syncFilterUtils-DtOBvzdr.js.map +0 -1
  492. package/dist/token/core/raw.js +0 -234
  493. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterButton.d.ts +0 -0
  494. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterDateRange.d.ts +0 -0
  495. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterDateSingle.d.ts +0 -0
  496. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterDrawer.d.ts +0 -0
  497. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterItemWrapper.d.ts +0 -0
  498. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterSelect.d.ts +0 -0
  499. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/internal/utils/filter-state.d.ts +0 -0
@@ -0,0 +1,351 @@
1
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
+ import { useContext, createContext, useState, useMemo, useId, forwardRef, useLayoutEffect, useRef } from 'react';
3
+ import { c as cx } from './index-De1g9FRV.js';
4
+ import { a as CheckboxGroup, C as Checkbox } from './Checkbox-BSAS8-DM.js';
5
+ import { a as RadioGroup, R as Radio, S as SvgRadioButtonChecked, b as SvgRadioButtonUnchecked } from './Radio-DO4UhbBE.js';
6
+ import { C as Card } from './Card-DSFuXUGk.js';
7
+ import { I as Icon } from './Icon-BMMbp40n.js';
8
+ import { S as SvgCheckBox, a as SvgCheckBoxOutlineBlank } from './check_box-0U1tbEAd.js';
9
+ import { u as useOptionallyControlledState } from './useOptionallyControlledState-DbDuos5L.js';
10
+
11
+ import './SelectCard.css';const SelectCardContext = createContext(null);
12
+ const useSelectCardContext = () => useContext(SelectCardContext);
13
+
14
+ const SelectCardProvider = ({
15
+ children,
16
+ defaultValue,
17
+ onChange,
18
+ selectionMode,
19
+ showSelectIndicator,
20
+ value
21
+ }) => {
22
+ const isControlled = value !== void 0;
23
+ const [internalSelection, setInternalSelection] = useState(() => {
24
+ const ids = defaultValue ?? [];
25
+ return new Set(selectionMode === "single" ? ids.slice(0, 1) : ids);
26
+ });
27
+ const selection = useMemo(() => {
28
+ if (!isControlled) return internalSelection;
29
+ const ids = value ?? [];
30
+ return new Set(selectionMode === "single" ? ids.slice(0, 1) : ids);
31
+ }, [isControlled, value, internalSelection, selectionMode]);
32
+ const radioName = useId();
33
+ const handleChange = (e, state, options) => {
34
+ if (!state || !state.id) {
35
+ if (!options?.internal) {
36
+ onChange?.(e, state);
37
+ }
38
+ return;
39
+ }
40
+ if (!isControlled) {
41
+ if (selectionMode === "single") {
42
+ setInternalSelection(state.checked ? /* @__PURE__ */ new Set([state.id]) : /* @__PURE__ */ new Set());
43
+ } else {
44
+ setInternalSelection((prev) => {
45
+ const next = new Set(prev);
46
+ if (state.checked) {
47
+ next.add(state.id);
48
+ } else {
49
+ next.delete(state.id);
50
+ }
51
+ return next;
52
+ });
53
+ }
54
+ }
55
+ if (!options?.internal) {
56
+ onChange?.(e, state);
57
+ }
58
+ };
59
+ const context = {
60
+ hasGroupDefault: defaultValue !== void 0,
61
+ isGroupControlled: isControlled,
62
+ selectionMode,
63
+ onChange: handleChange,
64
+ radioName,
65
+ selection,
66
+ showSelectIndicator
67
+ };
68
+ return /* @__PURE__ */ jsx(SelectCardContext.Provider, { value: context, children });
69
+ };
70
+
71
+ const SelectCardGroup = forwardRef((props, _ref) => {
72
+ const {
73
+ ariaLabelledBy,
74
+ children,
75
+ defaultValue,
76
+ legend,
77
+ legendProps,
78
+ moreInfo,
79
+ onChange,
80
+ required = false,
81
+ selectionMode,
82
+ showSelectIndicator = false,
83
+ value,
84
+ ...rest
85
+ } = props;
86
+ return /* @__PURE__ */ jsxs(
87
+ SelectCardProvider,
88
+ {
89
+ defaultValue,
90
+ onChange,
91
+ selectionMode,
92
+ showSelectIndicator,
93
+ value,
94
+ children: [
95
+ selectionMode === "multiple" && /* @__PURE__ */ jsx(
96
+ CheckboxGroup,
97
+ {
98
+ "aria-labelledby": ariaLabelledBy,
99
+ legend,
100
+ legendProps,
101
+ required,
102
+ moreInfo,
103
+ ...rest,
104
+ children
105
+ }
106
+ ),
107
+ selectionMode === "single" && /* @__PURE__ */ jsx(
108
+ RadioGroup,
109
+ {
110
+ "aria-labelledby": ariaLabelledBy,
111
+ legend,
112
+ legendProps,
113
+ required,
114
+ moreInfo,
115
+ ...rest,
116
+ children
117
+ }
118
+ )
119
+ ]
120
+ }
121
+ );
122
+ });
123
+ SelectCardGroup.displayName = "SelectCardGroup";
124
+
125
+ const styles = {
126
+ "select-card": "_select-card_qn7fm_1",
127
+ "icon-wrapper": "_icon-wrapper_qn7fm_39",
128
+ "icon-checked": "_icon-checked_qn7fm_43",
129
+ "icon-unchecked": "_icon-unchecked_qn7fm_47",
130
+ "icon-checked-error": "_icon-checked-error_qn7fm_51",
131
+ "icon-checked-disabled": "_icon-checked-disabled_qn7fm_55",
132
+ "select-card-checkbox-unchecked": "_select-card-checkbox-unchecked_qn7fm_59",
133
+ "select-card-checkbox-checked": "_select-card-checkbox-checked_qn7fm_66",
134
+ "select-card-checkbox-error": "_select-card-checkbox-error_qn7fm_73",
135
+ "select-card--selected": "_select-card--selected_qn7fm_113",
136
+ "select-card--checked": "_select-card--checked_qn7fm_144",
137
+ "select-card--errored": "_select-card--errored_qn7fm_150",
138
+ "select-card--disabled": "_select-card--disabled_qn7fm_182",
139
+ "select-card--remove-drop-shadow": "_select-card--remove-drop-shadow_qn7fm_187",
140
+ "select-card-wrapper": "_select-card-wrapper_qn7fm_191",
141
+ "select-card-label": "_select-card-label_qn7fm_195"
142
+ };
143
+
144
+ const SelectCardElement = forwardRef(
145
+ (props, ref) => {
146
+ const {
147
+ checkboxProps,
148
+ children,
149
+ checked: checkedProp,
150
+ className,
151
+ defaultChecked: defaultCheckedProp,
152
+ disabled,
153
+ errored,
154
+ radioProps,
155
+ onChange,
156
+ removeDropShadow,
157
+ showSelectIndicator = false,
158
+ id,
159
+ ...rest
160
+ } = props;
161
+ const [checked, setChecked] = useOptionallyControlledState({
162
+ controlledValue: checkedProp,
163
+ defaultValue: defaultCheckedProp || false,
164
+ onChange
165
+ });
166
+ const context = useSelectCardContext();
167
+ const isCardControlled = checkedProp !== void 0;
168
+ const isGroupControlled = context?.isGroupControlled ?? false;
169
+ const [_, setForceRenderCount] = useState(0);
170
+ useLayoutEffect(() => {
171
+ const initialChecked = checkedProp ?? defaultCheckedProp;
172
+ if (initialChecked && !isGroupControlled && !context?.hasGroupDefault) {
173
+ context?.onChange?.(
174
+ void 0,
175
+ {
176
+ id,
177
+ checked: initialChecked
178
+ },
179
+ { internal: true }
180
+ );
181
+ setForceRenderCount((prev) => prev + 1);
182
+ }
183
+ }, []);
184
+ const isFirstRender = useRef(true);
185
+ useLayoutEffect(() => {
186
+ if (isFirstRender.current) {
187
+ isFirstRender.current = false;
188
+ return;
189
+ }
190
+ if (isCardControlled && context) {
191
+ if (context.selectionMode === "single" && !checkedProp) {
192
+ return;
193
+ }
194
+ context.onChange?.(
195
+ void 0,
196
+ {
197
+ id,
198
+ checked: checkedProp
199
+ },
200
+ { internal: true }
201
+ );
202
+ }
203
+ }, [checkedProp]);
204
+ const handleChange = (event) => {
205
+ const newChecked = event ? event.target.checked : false;
206
+ setChecked(newChecked);
207
+ context?.onChange?.(event, {
208
+ id,
209
+ checked: newChecked
210
+ });
211
+ };
212
+ const isChecked = context ? context.selection.has(id) : checked;
213
+ const showIndicator = context?.showSelectIndicator || showSelectIndicator;
214
+ const inputChecked = isGroupControlled ? isChecked : isCardControlled ? checkedProp : void 0;
215
+ const inputDefaultChecked = isGroupControlled || isCardControlled ? void 0 : context?.hasGroupDefault ? context.selection.has(id) : defaultCheckedProp;
216
+ const contentClassName = cx(styles["select-card"], className, {
217
+ [styles["select-card--remove-drop-shadow"]]: removeDropShadow,
218
+ [styles["select-card--checked"]]: isChecked,
219
+ [styles["select-card--selected"]]: isChecked && !errored,
220
+ [styles["select-card--errored"]]: errored,
221
+ [styles["select-card--disabled"]]: disabled
222
+ });
223
+ const iconClassNames = cx({
224
+ [styles["icon-checked"]]: isChecked && !errored && !disabled,
225
+ [styles["icon-unchecked"]]: !isChecked && !disabled,
226
+ [styles["icon-checked-error"]]: errored && !disabled,
227
+ [styles["icon-checked-disabled"]]: disabled
228
+ });
229
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
230
+ (!context || context?.selectionMode === "multiple") && /* @__PURE__ */ jsx(
231
+ Checkbox,
232
+ {
233
+ ...checkboxProps,
234
+ className: cx(
235
+ styles["select-card-wrapper"],
236
+ checkboxProps?.className,
237
+ {
238
+ [styles["select-card-checkbox-unchecked"]]: !isChecked && !errored,
239
+ [styles["select-card-checkbox-checked"]]: isChecked && !errored,
240
+ [styles["select-card-checkbox-error"]]: errored
241
+ }
242
+ ),
243
+ labelWrapperClassName: styles["select-card-label"],
244
+ checked: inputChecked,
245
+ defaultChecked: inputDefaultChecked,
246
+ onChange: handleChange,
247
+ disabled,
248
+ ref,
249
+ label: /* @__PURE__ */ jsx(
250
+ Card,
251
+ {
252
+ ...rest,
253
+ className: contentClassName,
254
+ flex: showIndicator ? "1" : void 0,
255
+ gap: showIndicator ? "2" : void 0,
256
+ alignItems: showIndicator ? "flex-start" : void 0,
257
+ children: showIndicator ? /* @__PURE__ */ jsxs(Fragment, { children: [
258
+ /* @__PURE__ */ jsx("span", { className: styles["icon-wrapper"], "aria-hidden": true, children: /* @__PURE__ */ jsx(
259
+ Icon,
260
+ {
261
+ size: "large",
262
+ svg: isChecked ? SvgCheckBox : SvgCheckBoxOutlineBlank,
263
+ className: iconClassNames
264
+ }
265
+ ) }),
266
+ children
267
+ ] }) : children
268
+ }
269
+ ),
270
+ hideCheckbox: true
271
+ }
272
+ ),
273
+ context?.selectionMode === "single" && /* @__PURE__ */ jsx(
274
+ Radio,
275
+ {
276
+ ...radioProps,
277
+ className: cx(
278
+ styles["select-card-wrapper"],
279
+ radioProps?.className,
280
+ {
281
+ [styles["select-card-checkbox-unchecked"]]: !isChecked && !errored,
282
+ [styles["select-card-checkbox-checked"]]: isChecked && !errored,
283
+ [styles["select-card-checkbox-error"]]: errored
284
+ }
285
+ ),
286
+ labelWrapperClassName: styles["select-card-label"],
287
+ checked: inputChecked,
288
+ defaultChecked: inputDefaultChecked,
289
+ onChange: handleChange,
290
+ disabled,
291
+ ref,
292
+ name: context.radioName,
293
+ label: /* @__PURE__ */ jsx(
294
+ Card,
295
+ {
296
+ ...rest,
297
+ className: contentClassName,
298
+ flex: showIndicator ? "1" : void 0,
299
+ gap: showIndicator ? "2" : void 0,
300
+ alignItems: showIndicator ? "flex-start" : void 0,
301
+ children: showIndicator ? /* @__PURE__ */ jsxs(Fragment, { children: [
302
+ /* @__PURE__ */ jsx("span", { className: styles["icon-wrapper"], "aria-hidden": true, children: /* @__PURE__ */ jsx(
303
+ Icon,
304
+ {
305
+ size: "large",
306
+ svg: isChecked ? SvgRadioButtonChecked : SvgRadioButtonUnchecked,
307
+ className: iconClassNames
308
+ }
309
+ ) }),
310
+ children
311
+ ] }) : children
312
+ }
313
+ ),
314
+ hideRadio: true
315
+ }
316
+ )
317
+ ] });
318
+ }
319
+ );
320
+ SelectCardElement.displayName = "SelectCard";
321
+ const SelectCard = Object.assign(SelectCardElement, {
322
+ /**
323
+ * SelectCardGroup component for managing groups of selectable cards.
324
+ *
325
+ * Features:
326
+ * - Manages selection state for multiple SelectCard components
327
+ * - Supports both single and multiple selection modes
328
+ * - Provides proper accessibility with legends and ARIA labels
329
+ * - Handles required field validation
330
+ * - Automatic radio button grouping for single selection
331
+ * - Context provider for child SelectCard components
332
+ *
333
+ * @example
334
+ * <SelectCard.Group
335
+ * legend="Choose your plan"
336
+ * selectionMode="single"
337
+ * onChange={(e, state) => console.log('Selection changed:', state)}
338
+ * >
339
+ * <SelectCard id="basic" onChange={() => {}}>
340
+ * <Text variant="headline" size="small">Basic Plan</Text>
341
+ * </SelectCard>
342
+ * <SelectCard id="premium" onChange={() => {}}>
343
+ * <Text variant="headline" size="small">Premium Plan</Text>
344
+ * </SelectCard>
345
+ * </SelectCard.Group>
346
+ */
347
+ Group: SelectCardGroup
348
+ });
349
+
350
+ export { SelectCard as S };
351
+ //# sourceMappingURL=SelectCard-CtXwY8FZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectCard-CtXwY8FZ.js","sources":["../src/components/SelectCard/internal/SelectCardContext.tsx","../src/components/SelectCard/internal/SelectCardProvider.tsx","../src/components/SelectCard/SelectCardGroup.tsx","../src/components/SelectCard/SelectCard.tsx"],"sourcesContent":["import { ChangeEvent, createContext, useContext } from \"react\";\n\n/**\n * Interface for the select card state\n */\nexport interface ISelectCardState {\n /**\n * When `true`, adds the item to the selected state holder.\n */\n checked: boolean;\n\n /**\n * Gives an explicit id to each item in the set.\n */\n id?: string | number;\n}\n\n/**\n * Interface for the select card onChange options\n */\nexport interface ISelectCardOnChangeOptions {\n /**\n * When `true`, doesn't fire the user's `onChange`\n */\n internal?: boolean;\n}\n\n/**\n * Interface for the select card context\n */\nexport interface ISelectCardContext {\n /**\n * Callback function that is triggered when the selection state changes.\n *\n * @callback OnChangeCallback\n * @param {ChangeEvent<HTMLInputElement>} [e] - The native HTML input change event.\n * @param {ISelectCardState} [state] - The current state of the select card component after the change.\n * @returns {void}\n */\n onChange?: (\n e?: ChangeEvent<HTMLInputElement>,\n state?: ISelectCardState,\n options?: ISelectCardOnChangeOptions,\n ) => void;\n\n /**\n * Sets how many cards the user can select, either 'single' (radio buttons) or 'multiple' (checkboxes)\n */\n selectionMode: \"single\" | \"multiple\";\n\n /**\n * Used internally to create a UUID for the HTML `name` property on radios.\n */\n radioName: string;\n\n /**\n * Creates a set of ids that are selected.\n */\n selection: Set<string | number>;\n\n /**\n * When `true`, indicates that selection is controlled at the group level via the `value` prop.\n * @default false\n */\n isGroupControlled?: boolean;\n\n /**\n * When `true`, the group was given a `defaultValue` and owns the initial selection state.\n * Individual `SelectCard` mount syncs should be skipped to avoid overriding it.\n * @default false\n */\n hasGroupDefault?: boolean;\n\n /**\n * When `true`, displays a checkbox or radio indicator in a separate column on the left side of the card.\n * The indicator type (checkbox or radio) is automatically determined by the selection mode from SelectCard.Group context.\n * @default false\n */\n showSelectIndicator?: boolean;\n}\n\nexport const SelectCardContext = createContext<ISelectCardContext | null>(null);\n\n/**\n * Custom hook for accessing the SelectCard context.\n * @returns The SelectCard context or null if not within a SelectCardProvider\n */\nexport const useSelectCardContext = () => useContext(SelectCardContext);\n","import { ChangeEvent, ReactNode, useId, useMemo, useState } from \"react\";\nimport {\n ISelectCardContext,\n ISelectCardOnChangeOptions,\n ISelectCardState,\n SelectCardContext,\n} from \"./SelectCardContext\";\n\n/**\n * Props for the SelectCardProvider component\n * @extends Omit<ISelectCardContext, \"radioName\" | \"selection\">\n */\ninterface ISelectCardProviderProps extends Omit<\n ISelectCardContext,\n \"radioName\" | \"selection\"\n> {\n children: ReactNode;\n\n /**\n * Controlled selection state. When provided, the group becomes controlled.\n * Array of `SelectCard` ids that are currently selected.\n */\n value?: Array<string | number>;\n\n /**\n * Initial selection state for uncontrolled usage.\n * Array of `SelectCard` ids that are selected on first render.\n */\n defaultValue?: Array<string | number>;\n}\n\n/**\n * SelectCardProvider component for managing selection state across SelectCard components.\n *\n * Features:\n * - Provides context for SelectCard components to share selection state\n * - Manages selection mode (single vs multiple)\n * - Handles selection state updates and callbacks\n * - Generates unique radio button names for single selection mode\n * - Maintains a set of selected card IDs\n * - Integrates with SelectCardGroup for automatic context provision\n *\n * @example\n * <SelectCardProvider\n * selectionMode=\"multiple\"\n * onChange={(e, state) => console.log('Selection changed:', state)}\n * >\n * <SelectCard id=\"1\" onChange={() => {}}>Option 1</SelectCard>\n * <SelectCard id=\"2\" onChange={() => {}}>Option 2</SelectCard>\n * </SelectCardProvider>\n */\nexport const SelectCardProvider = ({\n children,\n defaultValue,\n onChange,\n selectionMode,\n showSelectIndicator,\n value,\n}: ISelectCardProviderProps) => {\n const isControlled = value !== undefined;\n const [internalSelection, setInternalSelection] = useState<\n Set<string | number>\n >(() => {\n const ids = defaultValue ?? [];\n return new Set(selectionMode === \"single\" ? ids.slice(0, 1) : ids);\n });\n const selection = useMemo(() => {\n if (!isControlled) return internalSelection;\n const ids = value ?? [];\n return new Set(selectionMode === \"single\" ? ids.slice(0, 1) : ids);\n }, [isControlled, value, internalSelection, selectionMode]);\n\n const radioName = useId();\n\n const handleChange = (\n e?: ChangeEvent<HTMLInputElement>,\n state?: ISelectCardState,\n options?: ISelectCardOnChangeOptions,\n ) => {\n if (!state || !state.id) {\n if (!options?.internal) {\n onChange?.(e, state);\n }\n\n return;\n }\n\n // Update internal selection when uncontrolled\n if (!isControlled) {\n if (selectionMode === \"single\") {\n setInternalSelection(state.checked ? new Set([state.id]) : new Set());\n } else {\n setInternalSelection((prev) => {\n const next = new Set(prev);\n if (state.checked) {\n next.add(state.id!);\n } else {\n next.delete(state.id!);\n }\n return next;\n });\n }\n }\n\n if (!options?.internal) {\n onChange?.(e, state);\n }\n };\n\n const context = {\n hasGroupDefault: defaultValue !== undefined,\n isGroupControlled: isControlled,\n selectionMode,\n onChange: handleChange,\n radioName,\n selection,\n showSelectIndicator,\n };\n\n return (\n <SelectCardContext.Provider value={context}>\n {children}\n </SelectCardContext.Provider>\n );\n};\n","import { forwardRef, ReactNode } from \"react\";\nimport { CheckboxGroup, CheckboxGroupProps } from \"../Checkbox/CheckboxGroup\";\nimport { RadioGroup } from \"../Radio/RadioGroup\";\nimport { SelectCardProvider } from \"./internal/SelectCardProvider\";\nimport { ISelectCardContext } from \"./internal/SelectCardContext\";\n\n/**\n * Props for the SelectCardGroup component\n * @extends Omit<ISelectCardContext, \"radioName\" | \"selection\">\n */\nexport interface SelectCardGroupProps\n extends\n Omit<ISelectCardContext, \"radioName\" | \"selection\">,\n Pick<CheckboxGroupProps, \"moreInfo\"> {\n /**\n * Associates the legend with content below.\n */\n ariaLabelledBy?: string;\n\n children?: ReactNode;\n\n /**\n * Initial selection state for uncontrolled usage.\n * Array of `SelectCard` ids that are selected on first render.\n * Takes precedence over individual `SelectCard` `defaultChecked` props.\n */\n defaultValue?: Array<string | number>;\n\n /**\n * Sets the legend on the group.\n */\n legend: CheckboxGroupProps[\"legend\"];\n\n /**\n * Additional props for the legend `FieldLabel` (for example `aiMark`, `className`).\n */\n legendProps?: CheckboxGroupProps[\"legendProps\"];\n\n /**\n * When `true`, sets \"required\" text in label.\n * @accessibility This does not enforce error when nothing is selected.\n * @default false\n */\n required?: boolean;\n\n /**\n * When `true`, displays a checkbox or radio indicator in a separate column on the left side of the card.\n * The indicator type (checkbox or radio) is automatically determined by the `selectionMode` setting.\n * @default false\n */\n showSelectIndicator?: boolean;\n\n /**\n * Controlled selection state. When provided, the group becomes controlled.\n * Array of `SelectCard` ids that are currently selected.\n */\n value?: Array<string | number>;\n}\n\n/**\n * SelectCardGroup component for managing groups of selectable cards.\n *\n * Features:\n * - Manages selection state for multiple SelectCard components\n * - Supports both single and multiple selection modes\n * - Provides proper accessibility with legends and ARIA labels\n * - Handles required field validation\n * - Automatic radio button grouping for single selection\n * - Context provider for child SelectCard components\n * - Integrates with CheckboxGroup and RadioGroup for proper form semantics\n * - Supports AI mark indicator\n *\n * @example\n * <SelectCardGroup\n * legend=\"Choose your plan\"\n * selectionMode=\"single\"\n * onChange={(e, state) => console.log('Selection changed:', state)}\n * legendProps={{ aiMark: true }}\n * >\n * <SelectCard id=\"basic\" onChange={() => {}}>\n * <Text variant=\"headline\" size=\"small\" el=\"h3\">Basic Plan</Text>\n * </SelectCard>\n * <SelectCard id=\"premium\" onChange={() => {}}>\n * <Text variant=\"headline\" size=\"small\" el=\"h3\">Premium Plan</Text>\n * </SelectCard>\n * </SelectCardGroup>\n */\nexport const SelectCardGroup = forwardRef<\n HTMLInputElement,\n SelectCardGroupProps\n>((props, _ref) => {\n const {\n ariaLabelledBy,\n children,\n defaultValue,\n legend,\n legendProps,\n moreInfo,\n onChange,\n required = false,\n selectionMode,\n showSelectIndicator = false,\n value,\n ...rest\n } = props;\n\n return (\n <SelectCardProvider\n defaultValue={defaultValue}\n onChange={onChange}\n selectionMode={selectionMode}\n showSelectIndicator={showSelectIndicator}\n value={value}\n >\n {selectionMode === \"multiple\" && (\n <CheckboxGroup\n aria-labelledby={ariaLabelledBy}\n legend={legend}\n legendProps={legendProps}\n required={required}\n moreInfo={moreInfo}\n {...rest}\n >\n {children}\n </CheckboxGroup>\n )}\n {selectionMode === \"single\" && (\n <RadioGroup\n aria-labelledby={ariaLabelledBy}\n legend={legend}\n legendProps={legendProps}\n required={required}\n moreInfo={moreInfo}\n {...rest}\n >\n {children}\n </RadioGroup>\n )}\n </SelectCardProvider>\n );\n});\n\nSelectCardGroup.displayName = \"SelectCardGroup\";\n","import {\n useLayoutEffect,\n useState,\n useRef,\n forwardRef,\n type ChangeEvent,\n} from \"react\";\nimport cx from \"classnames\";\n\nimport { SelectCardGroup } from \"./SelectCardGroup\";\nimport { Card, CardProps } from \"../Card\";\nimport { Radio, RadioProps } from \"../Radio/internal/Radio\";\nimport { Checkbox, CheckboxProps } from \"../Checkbox/internal/Checkbox\";\nimport { useOptionallyControlledState } from \"../../internal/hooks\";\nimport { useSelectCardContext } from \"./internal/SelectCardContext\";\nimport { Icon } from \"../Icon\";\n\nimport CheckboxOutline from \"@servicetitan/hammer-icon/mdi/round/check_box_outline_blank.svg\";\nimport CheckboxChecked from \"@servicetitan/hammer-icon/mdi/round/check_box.svg\";\nimport RadioOutline from \"@servicetitan/hammer-icon/mdi/two-tone/radio_button_unchecked.svg\";\nimport RadioChecked from \"@servicetitan/hammer-icon/mdi/two-tone/radio_button_checked.svg\";\n\nimport styles from \"./SelectCard.module.scss\";\n\n/**\n * Props for the SelectCard component\n * @extends Omit<CardProps, \"onChange\" | \"id\">\n */\nexport interface SelectCardProps extends Omit<CardProps, \"onChange\" | \"id\"> {\n /**\n * Passes props to the underlying `<Checkbox />` component.\n */\n checkboxProps?: Omit<CheckboxProps, \"label\">;\n\n /**\n * Controlled state. When provided, the component becomes controlled.\n */\n checked?: boolean;\n\n /**\n * Uncontrolled initial state. Ignored when inside a `SelectCard.Group` that sets `defaultValue`.\n */\n defaultChecked?: boolean;\n\n /**\n * When `true`, disables the card.\n */\n disabled?: boolean;\n\n /**\n * When `true`, sets error styling on the card.\n */\n errored?: boolean;\n\n /**\n * A unique identifier for the card, used to track the selection state.\n */\n id: string | number;\n\n /**\n * Function called on selection state change.\n */\n onChange?: (value: boolean) => void;\n\n /**\n * Passes props to the underlying `<Radio />` component.\n */\n radioProps?: Omit<RadioProps, \"label\">;\n\n /**\n * Removes the drop shadow effect on the card.\n */\n removeDropShadow?: boolean;\n\n /**\n * When `true`, displays a checkbox or radio indicator in a separate column on the left side of the card.\n * The indicator type (checkbox or radio) is automatically determined by the `selectionMode` prop on the\n * `SelectCard.Group`, and defaults to checkbox if no `SelectCard.Group` is used.\n * @default false\n */\n showSelectIndicator?: boolean;\n}\n\nconst SelectCardElement = forwardRef<HTMLInputElement, SelectCardProps>(\n (props, ref) => {\n const {\n checkboxProps,\n children,\n checked: checkedProp,\n className,\n defaultChecked: defaultCheckedProp,\n disabled,\n errored,\n radioProps,\n onChange,\n removeDropShadow,\n showSelectIndicator = false,\n id,\n ...rest\n } = props;\n\n const [checked, setChecked] = useOptionallyControlledState<boolean>({\n controlledValue: checkedProp,\n defaultValue: defaultCheckedProp || false,\n onChange,\n });\n\n const context = useSelectCardContext();\n const isCardControlled = checkedProp !== undefined;\n const isGroupControlled = context?.isGroupControlled ?? false;\n\n // we need to re-render after setting the initial selection state on context\n const [_, setForceRenderCount] = useState(0);\n useLayoutEffect(() => {\n // Sync initial checked state to context (for both controlled and uncontrolled modes).\n // Skip when group is controlled — the group's value prop owns the selection Set.\n const initialChecked = checkedProp ?? defaultCheckedProp;\n if (initialChecked && !isGroupControlled && !context?.hasGroupDefault) {\n context?.onChange?.(\n undefined,\n {\n id,\n checked: initialChecked,\n },\n { internal: true },\n );\n\n setForceRenderCount((prev) => prev + 1);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // Sync controlled state changes to context (skip initial mount - handled by above effect)\n const isFirstRender = useRef(true);\n useLayoutEffect(() => {\n if (isFirstRender.current) {\n isFirstRender.current = false;\n return;\n }\n if (isCardControlled && context) {\n // In single selection mode, only sync when checked is true.\n // Unchecking is implicit when another card becomes checked.\n // Syncing checked=false would clear the entire selection.\n if (context.selectionMode === \"single\" && !checkedProp) {\n return;\n }\n context.onChange?.(\n undefined,\n {\n id,\n checked: checkedProp!,\n },\n { internal: true },\n );\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [checkedProp]);\n\n const handleChange = (event?: ChangeEvent<HTMLInputElement>) => {\n const newChecked = event ? event.target.checked : false;\n setChecked(newChecked);\n context?.onChange?.(event, {\n id,\n checked: newChecked,\n });\n };\n\n // A selection in the group context supersedes the normal checked state of the card\n const isChecked = context ? context.selection.has(id) : checked;\n const showIndicator = context?.showSelectIndicator || showSelectIndicator;\n\n // When group is controlled (value prop), drive input from context selection.\n // When group has defaultValue, it takes precedence — ignore individual defaultChecked.\n const inputChecked = isGroupControlled\n ? isChecked\n : isCardControlled\n ? checkedProp\n : undefined;\n const inputDefaultChecked =\n isGroupControlled || isCardControlled\n ? undefined\n : context?.hasGroupDefault\n ? context.selection.has(id)\n : defaultCheckedProp;\n\n const contentClassName = cx(styles[\"select-card\"], className, {\n [styles[\"select-card--remove-drop-shadow\"]]: removeDropShadow,\n [styles[\"select-card--checked\"]]: isChecked,\n [styles[\"select-card--selected\"]]: isChecked && !errored,\n [styles[\"select-card--errored\"]]: errored,\n [styles[\"select-card--disabled\"]]: disabled,\n });\n\n const iconClassNames = cx({\n [styles[\"icon-checked\"]]: isChecked && !errored && !disabled,\n [styles[\"icon-unchecked\"]]: !isChecked && !disabled,\n [styles[\"icon-checked-error\"]]: errored && !disabled,\n [styles[\"icon-checked-disabled\"]]: disabled,\n });\n\n return (\n <>\n {(!context || context?.selectionMode === \"multiple\") && (\n <Checkbox\n {...checkboxProps}\n className={cx(\n styles[\"select-card-wrapper\"],\n checkboxProps?.className,\n {\n [styles[\"select-card-checkbox-unchecked\"]]:\n !isChecked && !errored,\n [styles[\"select-card-checkbox-checked\"]]: isChecked && !errored,\n [styles[\"select-card-checkbox-error\"]]: errored,\n },\n )}\n labelWrapperClassName={styles[\"select-card-label\"]}\n checked={inputChecked}\n defaultChecked={inputDefaultChecked}\n onChange={handleChange}\n disabled={disabled}\n ref={ref}\n label={\n <Card\n {...rest}\n className={contentClassName}\n flex={showIndicator ? \"1\" : undefined}\n gap={showIndicator ? \"2\" : undefined}\n alignItems={showIndicator ? \"flex-start\" : undefined}\n >\n {showIndicator ? (\n <>\n <span className={styles[\"icon-wrapper\"]} aria-hidden>\n <Icon\n size=\"large\"\n svg={isChecked ? CheckboxChecked : CheckboxOutline}\n className={iconClassNames}\n />\n </span>\n {children}\n </>\n ) : (\n children\n )}\n </Card>\n }\n hideCheckbox\n />\n )}\n {context?.selectionMode === \"single\" && (\n <Radio\n {...radioProps}\n className={cx(\n styles[\"select-card-wrapper\"],\n radioProps?.className,\n {\n [styles[\"select-card-checkbox-unchecked\"]]:\n !isChecked && !errored,\n [styles[\"select-card-checkbox-checked\"]]: isChecked && !errored,\n [styles[\"select-card-checkbox-error\"]]: errored,\n },\n )}\n labelWrapperClassName={styles[\"select-card-label\"]}\n checked={inputChecked}\n defaultChecked={inputDefaultChecked}\n onChange={handleChange}\n disabled={disabled}\n ref={ref}\n name={context.radioName}\n label={\n <Card\n {...rest}\n className={contentClassName}\n flex={showIndicator ? \"1\" : undefined}\n gap={showIndicator ? \"2\" : undefined}\n alignItems={showIndicator ? \"flex-start\" : undefined}\n >\n {showIndicator ? (\n <>\n <span className={styles[\"icon-wrapper\"]} aria-hidden>\n <Icon\n size=\"large\"\n svg={isChecked ? RadioChecked : RadioOutline}\n className={iconClassNames}\n />\n </span>\n {children}\n </>\n ) : (\n children\n )}\n </Card>\n }\n hideRadio\n />\n )}\n </>\n );\n },\n);\n\nSelectCardElement.displayName = \"SelectCard\";\n\n/**\n * SelectCard component for creating interactive card-based selection interfaces.\n *\n * Features:\n * - Supports both single selection (radio) and multiple selection (checkbox) modes\n * - Automatic context detection for selection behavior\n * - Visual feedback for selected, disabled, and error states\n * - Accessible with proper ARIA roles and keyboard navigation\n * - Customizable styling through Card component props\n * - Hover and focus states with smooth transitions\n * - Integration with SelectCardGroup for grouped selection\n *\n * @example\n * <SelectCard\n * id=\"option-1\"\n * onChange={(checked) => console.log('Selected:', checked)}\n * >\n * <Text variant=\"headline\" size=\"small\">Option 1</Text>\n * <Text>Description of option 1</Text>\n * </SelectCard>\n */\nexport const SelectCard = Object.assign(SelectCardElement, {\n /**\n * SelectCardGroup component for managing groups of selectable cards.\n *\n * Features:\n * - Manages selection state for multiple SelectCard components\n * - Supports both single and multiple selection modes\n * - Provides proper accessibility with legends and ARIA labels\n * - Handles required field validation\n * - Automatic radio button grouping for single selection\n * - Context provider for child SelectCard components\n *\n * @example\n * <SelectCard.Group\n * legend=\"Choose your plan\"\n * selectionMode=\"single\"\n * onChange={(e, state) => console.log('Selection changed:', state)}\n * >\n * <SelectCard id=\"basic\" onChange={() => {}}>\n * <Text variant=\"headline\" size=\"small\">Basic Plan</Text>\n * </SelectCard>\n * <SelectCard id=\"premium\" onChange={() => {}}>\n * <Text variant=\"headline\" size=\"small\">Premium Plan</Text>\n * </SelectCard>\n * </SelectCard.Group>\n */\n Group: SelectCardGroup,\n});\n"],"names":["CheckboxChecked","CheckboxOutline","RadioChecked","RadioOutline"],"mappings":"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"}
@@ -1,84 +1,137 @@
1
- @layer starter, reset, base, state, application;
2
- @layer base {
3
- ._select-card_1grbf_2 {
4
- --box-shadow-size: 0rem 0.125rem 0.5rem;
5
- --box-shadow-color: var(--shadow-color, rgba(20, 20, 20, 0.0784313725));
6
- box-shadow: var(--box-shadow-size) var(--box-shadow-color);
7
- cursor: pointer;
8
- transition-property: box-shadow, color, background-color, border-color, text-decoration-color, fill, stroke;
9
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
10
- transition-duration: 200ms;
11
- isolation: isolate;
12
- position: relative;
13
- width: 100%;
14
- }
15
- ._select-card_1grbf_2::before {
16
- position: absolute;
17
- inset: 0;
18
- z-index: -1;
19
- border-radius: inherit;
20
- }
21
- ._select-card-wrapper_1grbf_20 {
22
- display: flex;
23
- }
24
- ._select-card-label_1grbf_23 {
25
- flex: 1;
26
- }
27
- ._icon-wrapper_1grbf_26 {
28
- --a2-checkbox-indicator-icon-checked-display: none;
29
- --a2-checkbox-indicator-icon-unchecked-display: inline-flex;
30
- --a2-checkbox-indicator-icon-color: var(
31
- --checkbox-unchecked-fill-color-default
32
- );
33
- }
34
- ._icon-wrapper_1grbf_26 ._icon-checked_1grbf_33,
35
- ._icon-wrapper_1grbf_26 ._icon-unchecked_1grbf_34 {
36
- color: var(--a2-checkbox-indicator-icon-color);
37
- }
38
- ._icon-wrapper_1grbf_26 ._icon-checked_1grbf_33 {
39
- display: var(--a2-checkbox-indicator-icon-checked-display);
40
- }
41
- ._icon-wrapper_1grbf_26 ._icon-unchecked_1grbf_34 {
42
- display: var(--a2-checkbox-indicator-icon-unchecked-display);
43
- }
1
+ .anvil2 {._select-card_qn7fm_1 {
2
+ --a2-internal-select-card-checkbox-foreground-color: var(
3
+ --a2-mod-select-card-checkbox-foreground-color
4
+ );
5
+ --a2-mod-select-card-background-color-active: var(--a2-select-card-unchecked-default-background-color-active, var(--a2-background-color-default-active, light-dark(var(--a2-color-neutral-40, #f1f1f1), var(--a2-color-neutral-700, #404040))));
6
+ --a2-mod-select-card-background-color-hover: var(--a2-select-card-unchecked-default-background-color-hover, var(--a2-background-color-default-hover, light-dark(var(--a2-color-neutral-20, #f9f9f9), var(--a2-color-neutral-800, #292929))));
7
+ --a2-mod-select-card-background-color: var(--a2-select-card-unchecked-default-background-color, var(--a2-background-color-default, light-dark(var(--a2-color-neutral-0, #ffffff), var(--a2-color-neutral-900, #1a1a1a))));
8
+ --a2-mod-select-card-border-color: var(--a2-select-card-unchecked-border-color, var(--a2-border-color-subdued, light-dark(var(--a2-color-neutral-80, #e6e6e6), var(--a2-color-neutral-700, #404040))));
9
+ --a2-mod-select-card-border-width: var(--a2-size-quarter, 0.0625rem);
10
+ --a2-mod-select-card-box-shadow: var(--a2-shadow-size-float, var(--a2-size-0, 0rem) var(--a2-size-half, 0.125rem) var(--a2-size-2, 0.5rem))
11
+ var(--a2-mod-select-card-shadow-color);
12
+ --a2-mod-select-card-checkbox-foreground-color: var(--a2-select-card-unchecked-foreground-color, var(--a2-foreground-color-primary, light-dark(var(--a2-color-blue-600, #0265dc), var(--a2-color-blue-300, #70b1ff))));
13
+ --a2-mod-select-card-checkbox-foreground-color-active: var(--a2-select-card-unchecked-foreground-color-active, var(--a2-foreground-color-primary-active, light-dark(var(--a2-color-blue-800, #003472), var(--a2-color-blue-200, #9ecaff))));
14
+ --a2-mod-select-card-checkbox-foreground-color-hover: var(--a2-select-card-unchecked-foreground-color-hover, var(--a2-foreground-color-primary-hover, light-dark(var(--a2-color-blue-700, #1d4ca3), var(--a2-color-blue-200, #9ecaff))));
15
+ --a2-mod-select-card-cursor: pointer;
16
+ --a2-mod-select-card-focus-ring-color: var(--a2-select-card-unchecked-focus-ring-color, var(--a2-focus-ring-color-default, var(--a2-status-color-info, light-dark(var(--a2-color-blue-600, #0265dc), var(--a2-color-blue-300, #70b1ff)))));
17
+ --a2-mod-select-card-icon-checked-display: none;
18
+ --a2-mod-select-card-icon-color: var(--a2-select-card-unchecked-icon-color, var(--a2-foreground-color-default, light-dark(var(--a2-color-neutral-950, #040404), var(--a2-color-neutral-0, #ffffff))));
19
+ --a2-mod-select-card-icon-unchecked-display: inline-flex;
20
+ --a2-mod-select-card-opacity: 1;
21
+ --a2-mod-select-card-outline-color: transparent;
22
+ --a2-mod-select-card-outline-width: 0;
23
+ --a2-mod-select-card-shadow-color: var(--a2-select-card-unchecked-shadow-color, var(--a2-shadow-color-default, light-dark(rgba(26, 26, 26, 0.0784313725), rgba(255, 255, 255, 0.0784313725))));
24
+ box-shadow: var(--a2-mod-select-card-box-shadow);
25
+ cursor: var(--a2-mod-select-card-cursor);
26
+ isolation: isolate;
27
+ opacity: var(--a2-mod-select-card-opacity);
28
+ outline-width: var(--a2-mod-select-card-border-width);
29
+ outline-color: var(--a2-mod-select-card-border-color);
30
+ outline-style: solid;
31
+ outline-offset: calc(var(--a2-mod-select-card-border-width) * -1);
32
+ position: relative;
33
+ transition-duration: var(--a2-duration-default, 200ms);
34
+ transition-property: box-shadow, color, background-color, border-color, text-decoration-color, fill, stroke;
35
+ transition-timing-function: var(--a2-transition-ease, cubic-bezier(0.4, 0, 0.2, 1));
36
+ width: 100%;
37
+ }._icon-wrapper_qn7fm_39 {
38
+ height: var(--a2-size-6, 1.5rem);
39
+ }._icon-checked_qn7fm_43 {
40
+ color: var(--a2-select-card-checked-icon-color, var(--a2-foreground-color-primary, light-dark(var(--a2-color-blue-600, #0265dc), var(--a2-color-blue-300, #70b1ff))));
41
+ }._icon-unchecked_qn7fm_47 {
42
+ color: var(--a2-select-card-unchecked-icon-color, var(--a2-foreground-color-default, light-dark(var(--a2-color-neutral-950, #040404), var(--a2-color-neutral-0, #ffffff))));
43
+ }._icon-checked-error_qn7fm_51 {
44
+ color: var(--a2-select-card-checked-error-icon-color, var(--a2-foreground-color-danger, light-dark(var(--a2-color-red-600, #d62100), var(--a2-color-red-400, #ff5b3d))));
45
+ }._icon-checked-disabled_qn7fm_55 {
46
+ color: var(--a2-select-card-checked-icon-color-disabled, var(--a2-foreground-color-subdued, light-dark(var(--a2-color-neutral-500, #707070), var(--a2-color-neutral-200, #c4c4c4))));
47
+ }._select-card-checkbox-unchecked_qn7fm_59 {
48
+ --a2-mod-checkbox-label-border-radius: var(--a2-border-radius-large, var(--a2-radius-4, 0.75rem));
49
+ --a2-mod-checkbox-label-focus-ring-color: var(--a2-select-card-unchecked-focus-ring-color, var(--a2-focus-ring-color-default, var(--a2-status-color-info, light-dark(var(--a2-color-blue-600, #0265dc), var(--a2-color-blue-300, #70b1ff)))));
50
+ --a2-mod-radio-label-border-radius: var(--a2-border-radius-large, var(--a2-radius-4, 0.75rem));
51
+ --a2-mod-radio-label-focus-ring-color: var(--a2-select-card-unchecked-focus-ring-color, var(--a2-focus-ring-color-default, var(--a2-status-color-info, light-dark(var(--a2-color-blue-600, #0265dc), var(--a2-color-blue-300, #70b1ff)))));
52
+ }._select-card-checkbox-checked_qn7fm_66 {
53
+ --a2-mod-checkbox-label-border-radius: var(--a2-border-radius-large, var(--a2-radius-4, 0.75rem));
54
+ --a2-mod-checkbox-label-focus-ring-color: var(--a2-select-card-checked-focus-ring-color, var(--a2-focus-ring-color-default, var(--a2-status-color-info, light-dark(var(--a2-color-blue-600, #0265dc), var(--a2-color-blue-300, #70b1ff)))));
55
+ --a2-mod-radio-label-border-radius: var(--a2-border-radius-large, var(--a2-radius-4, 0.75rem));
56
+ --a2-mod-radio-label-focus-ring-color: var(--a2-select-card-checked-focus-ring-color, var(--a2-focus-ring-color-default, var(--a2-status-color-info, light-dark(var(--a2-color-blue-600, #0265dc), var(--a2-color-blue-300, #70b1ff)))));
57
+ }._select-card-checkbox-error_qn7fm_73 {
58
+ --a2-mod-checkbox-label-border-radius: var(--a2-border-radius-large, var(--a2-radius-4, 0.75rem));
59
+ --a2-mod-checkbox-label-focus-ring-color: var(--a2-select-card-checked-error-focus-ring-color, var(--a2-focus-ring-color-danger, var(--a2-status-color-danger, light-dark(var(--a2-color-red-600, #d62100), var(--a2-color-red-400, #ff5b3d)))));
60
+ --a2-mod-radio-label-border-radius: var(--a2-border-radius-large, var(--a2-radius-4, 0.75rem));
61
+ --a2-mod-radio-label-focus-ring-color: var(--a2-select-card-checked-error-focus-ring-color, var(--a2-focus-ring-color-danger, var(--a2-status-color-danger, light-dark(var(--a2-color-red-600, #d62100), var(--a2-color-red-400, #ff5b3d)))));
62
+ }._select-card_qn7fm_1:hover {
63
+ --a2-internal-select-card-checkbox-foreground-color: var(
64
+ --a2-mod-select-card-checkbox-foreground-color-hover
65
+ );
66
+ --a2-mod-card-background-color: var(--a2-select-card-unchecked-default-background-color-hover, var(--a2-background-color-default-hover, light-dark(var(--a2-color-neutral-20, #f9f9f9), var(--a2-color-neutral-800, #292929))));
67
+ }._select-card_qn7fm_1:active {
68
+ --a2-internal-select-card-checkbox-foreground-color: var(
69
+ --a2-mod-select-card-checkbox-foreground-color-active
70
+ );
71
+ --a2-mod-card-background-color: var(--a2-select-card-unchecked-default-background-color-active, var(--a2-background-color-default-active, light-dark(var(--a2-color-neutral-40, #f1f1f1), var(--a2-color-neutral-700, #404040))));
72
+ }._select-card-bg-strong_qn7fm_93 {
73
+ --a2-mod-card-background-color: var(--a2-select-card-unchecked-strong-background-color, var(--a2-background-color-strong, light-dark(var(--a2-color-neutral-20, #f9f9f9), var(--a2-color-neutral-800, #292929))));
74
+ }._select-card-bg-strong_qn7fm_93:hover, ._select-card-bg-strong_qn7fm_93[data-interactive=hover] {
75
+ --a2-mod-card-background-color: var(--a2-select-card-unchecked-strong-background-color-hover, var(--a2-background-color-strong-hover, light-dark(var(--a2-color-neutral-50, #eeeeee), var(--a2-color-neutral-700, #404040))));
76
+ }._select-card-bg-strong_qn7fm_93:active, ._select-card-bg-strong_qn7fm_93[data-interactive=active] {
77
+ --a2-mod-card-background-color: var(--a2-select-card-unchecked-strong-background-color-active, var(--a2-background-color-strong-active, light-dark(var(--a2-color-neutral-70, #e8e8e8), var(--a2-color-neutral-600, #545454))));
78
+ }._select-card-bg-stronger_qn7fm_103 {
79
+ --a2-mod-card-background-color: var(--a2-select-card-unchecked-stronger-background-color, var(--a2-background-color-stronger, light-dark(var(--a2-color-neutral-50, #eeeeee), var(--a2-color-neutral-700, #404040))));
80
+ }._select-card-bg-stronger_qn7fm_103:hover, ._select-card-bg-stronger_qn7fm_103[data-interactive=hover] {
81
+ --a2-mod-card-background-color: var(--a2-select-card-unchecked-stronger-background-color-hover, var(--a2-background-color-stronger-hover, light-dark(var(--a2-color-neutral-90, #e5e5e5), var(--a2-color-neutral-600, #545454))));
82
+ }._select-card-bg-stronger_qn7fm_103:active, ._select-card-bg-stronger_qn7fm_103[data-interactive=active] {
83
+ --a2-mod-card-background-color: var(--a2-select-card-unchecked-stronger-background-color-active, var(--a2-background-color-stronger-active, light-dark(var(--a2-color-neutral-100, #dfdfdf), var(--a2-color-neutral-500, #707070))));
84
+ }._select-card--selected_qn7fm_113 {
85
+ --a2-mod-select-card-border-color: var(--a2-select-card-checked-border-color, var(--a2-border-color-strong, light-dark(var(--a2-color-neutral-700, #404040), var(--a2-color-neutral-80, #e6e6e6))));
86
+ --a2-mod-select-card-border-width: var(--a2-size-half, 0.125rem);
87
+ }._select-card--selected_qn7fm_113:hover, ._select-card--selected_qn7fm_113[data-interactive=hover] {
88
+ --a2-mod-card-background-color: var(--a2-select-card-checked-default-background-color-hover, var(--a2-background-color-default-hover, light-dark(var(--a2-color-neutral-20, #f9f9f9), var(--a2-color-neutral-800, #292929))));
89
+ }._select-card--selected_qn7fm_113:active, ._select-card--selected_qn7fm_113[data-interactive=active] {
90
+ --a2-mod-card-background-color: var(--a2-select-card-checked-default-background-color-active, var(--a2-background-color-default-active, light-dark(var(--a2-color-neutral-40, #f1f1f1), var(--a2-color-neutral-700, #404040))));
91
+ }._select-card--selected_qn7fm_113._select-card-bg-strong_qn7fm_93 {
92
+ --a2-mod-card-background-color: var(--a2-select-card-checked-strong-background-color, var(--a2-background-color-strong, light-dark(var(--a2-color-neutral-20, #f9f9f9), var(--a2-color-neutral-800, #292929))));
93
+ }._select-card--selected_qn7fm_113._select-card-bg-strong_qn7fm_93:hover, ._select-card--selected_qn7fm_113._select-card-bg-strong_qn7fm_93[data-interactive=hover] {
94
+ --a2-mod-card-background-color: var(--a2-select-card-checked-strong-background-color-hover, var(--a2-background-color-strong-hover, light-dark(var(--a2-color-neutral-50, #eeeeee), var(--a2-color-neutral-700, #404040))));
95
+ }._select-card--selected_qn7fm_113._select-card-bg-strong_qn7fm_93:active, ._select-card--selected_qn7fm_113._select-card-bg-strong_qn7fm_93[data-interactive=active] {
96
+ --a2-mod-card-background-color: var(--a2-select-card-checked-strong-background-color-active, var(--a2-background-color-strong-active, light-dark(var(--a2-color-neutral-70, #e8e8e8), var(--a2-color-neutral-600, #545454))));
97
+ }._select-card--selected_qn7fm_113._select-card-bg-stronger_qn7fm_103 {
98
+ --a2-mod-card-background-color: var(--a2-select-card-checked-stronger-background-color, var(--a2-background-color-stronger, light-dark(var(--a2-color-neutral-50, #eeeeee), var(--a2-color-neutral-700, #404040))));
99
+ }._select-card--selected_qn7fm_113._select-card-bg-stronger_qn7fm_103:hover, ._select-card--selected_qn7fm_113._select-card-bg-stronger_qn7fm_103[data-interactive=hover] {
100
+ --a2-mod-card-background-color: var(--a2-select-card-checked-stronger-background-color-hover, var(--a2-background-color-stronger-hover, light-dark(var(--a2-color-neutral-90, #e5e5e5), var(--a2-color-neutral-600, #545454))));
101
+ }._select-card--selected_qn7fm_113._select-card-bg-stronger_qn7fm_103:active, ._select-card--selected_qn7fm_113._select-card-bg-stronger_qn7fm_103[data-interactive=active] {
102
+ --a2-mod-card-background-color: var(--a2-select-card-checked-stronger-background-color-active, var(--a2-background-color-stronger-active, light-dark(var(--a2-color-neutral-100, #dfdfdf), var(--a2-color-neutral-500, #707070))));
103
+ }._select-card--checked_qn7fm_144 {
104
+ --a2-mod-select-card-icon-color: var(
105
+ --a2-internal-select-card-checkbox-foreground-color
106
+ );
107
+ }._select-card--errored_qn7fm_150 {
108
+ --a2-mod-select-card-border-color: var(--a2-select-card-checked-error-border-color, var(--a2-border-color-danger, light-dark(var(--a2-color-red-600, #d62100), var(--a2-color-red-200, #ffac9e))));
109
+ --a2-mod-select-card-border-width: var(--a2-size-half, 0.125rem);
110
+ --a2-mod-select-card-icon-color: var(--a2-select-card-checked-error-icon-color, var(--a2-foreground-color-danger, light-dark(var(--a2-color-red-600, #d62100), var(--a2-color-red-400, #ff5b3d))));
111
+ }._select-card--errored_qn7fm_150:hover, ._select-card--errored_qn7fm_150[data-interactive=hover] {
112
+ --a2-mod-card-background-color: var(--a2-select-card-checked-error-default-background-color-hover, var(--a2-background-color-default-hover, light-dark(var(--a2-color-neutral-20, #f9f9f9), var(--a2-color-neutral-800, #292929))));
113
+ }._select-card--errored_qn7fm_150:active, ._select-card--errored_qn7fm_150[data-interactive=active] {
114
+ --a2-mod-card-background-color: var(--a2-select-card-checked-error-default-background-color-active, var(--a2-background-color-default-active, light-dark(var(--a2-color-neutral-40, #f1f1f1), var(--a2-color-neutral-700, #404040))));
115
+ }._select-card--errored_qn7fm_150._select-card-bg-strong_qn7fm_93 {
116
+ --a2-mod-card-background-color: var(--a2-select-card-checked-error-strong-background-color, var(--a2-background-color-strong, light-dark(var(--a2-color-neutral-20, #f9f9f9), var(--a2-color-neutral-800, #292929))));
117
+ }._select-card--errored_qn7fm_150._select-card-bg-strong_qn7fm_93:hover, ._select-card--errored_qn7fm_150._select-card-bg-strong_qn7fm_93[data-interactive=hover] {
118
+ --a2-mod-card-background-color: var(--a2-select-card-checked-error-strong-background-color-hover, var(--a2-background-color-strong-hover, light-dark(var(--a2-color-neutral-50, #eeeeee), var(--a2-color-neutral-700, #404040))));
119
+ }._select-card--errored_qn7fm_150._select-card-bg-strong_qn7fm_93:active, ._select-card--errored_qn7fm_150._select-card-bg-strong_qn7fm_93[data-interactive=active] {
120
+ --a2-mod-card-background-color: var(--a2-select-card-checked-error-strong-background-color-active, var(--a2-background-color-strong-active, light-dark(var(--a2-color-neutral-70, #e8e8e8), var(--a2-color-neutral-600, #545454))));
121
+ }._select-card--errored_qn7fm_150._select-card-bg-stronger_qn7fm_103 {
122
+ --a2-mod-card-background-color: var(--a2-select-card-checked-error-stronger-background-color, var(--a2-background-color-stronger, light-dark(var(--a2-color-neutral-50, #eeeeee), var(--a2-color-neutral-700, #404040))));
123
+ }._select-card--errored_qn7fm_150._select-card-bg-stronger_qn7fm_103:hover, ._select-card--errored_qn7fm_150._select-card-bg-stronger_qn7fm_103[data-interactive=hover] {
124
+ --a2-mod-card-background-color: var(--a2-select-card-checked-error-stronger-background-color-hover, var(--a2-background-color-stronger-hover, light-dark(var(--a2-color-neutral-90, #e5e5e5), var(--a2-color-neutral-600, #545454))));
125
+ }._select-card--errored_qn7fm_150._select-card-bg-stronger_qn7fm_103:active, ._select-card--errored_qn7fm_150._select-card-bg-stronger_qn7fm_103[data-interactive=active] {
126
+ --a2-mod-card-background-color: var(--a2-select-card-checked-error-stronger-background-color-active, var(--a2-background-color-stronger-active, light-dark(var(--a2-color-neutral-100, #dfdfdf), var(--a2-color-neutral-500, #707070))));
127
+ }._select-card--disabled_qn7fm_182 {
128
+ --a2-mod-select-card-cursor: not-allowed;
129
+ --a2-mod-select-card-opacity: 0.4;
130
+ }._select-card--remove-drop-shadow_qn7fm_187 {
131
+ --a2-mod-select-card-box-shadow: none;
132
+ }._select-card-wrapper_qn7fm_191 {
133
+ display: flex;
134
+ }._select-card-label_qn7fm_195 {
135
+ flex: 1;
44
136
  }
45
- @layer state {
46
- ._select-card--selected_1grbf_45 {
47
- border: 0.0625rem solid var(--border-color-strong, #444445);
48
- outline: 0.0625rem solid var(--border-color-strong, #444445);
49
- }
50
- ._select-card_1grbf_2:hover::before {
51
- content: "";
52
- background-color: var(--overlay-color-hover, rgba(20, 20, 20, 0.0784313725));
53
- }
54
- ._select-card_1grbf_2:active::before {
55
- content: "";
56
- background-color: var(--overlay-color-active, rgba(20, 20, 20, 0.1607843137));
57
- }
58
- ._select-card_1grbf_2:focus {
59
- outline: 0.25rem solid var(--focus-ring-color, #0265DC);
60
- outline-offset: 0.125rem;
61
- }
62
- ._select-card--checked_1grbf_61 ._icon-wrapper_1grbf_26 {
63
- --a2-checkbox-indicator-icon-checked-display: inline-flex;
64
- --a2-checkbox-indicator-icon-unchecked-display: none;
65
- --a2-checkbox-indicator-icon-color: var(
66
- --checkbox-checked-fill-color-default
67
- );
68
- }
69
- ._select-card--errored_1grbf_68 {
70
- border: 2px solid var(--border-color-danger, #e13212);
71
- }
72
- ._select-card--errored_1grbf_68 ._icon-wrapper_1grbf_26 {
73
- --a2-checkbox-indicator-icon-color: var(
74
- --checkbox-checked-error-fill-color-default
75
- );
76
- }
77
- ._select-card--disabled_1grbf_76 {
78
- opacity: 0.4;
79
- cursor: not-allowed;
80
- }
81
- ._select-card--remove-drop-shadow_1grbf_80 {
82
- box-shadow: none;
83
- }
84
137
  }