se-design 1.0.2 → 1.0.8-5.dev.0

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 (564) hide show
  1. package/dist/assets/colors.css +26 -13
  2. package/dist/assets/icons/ai-off.svg +6 -0
  3. package/dist/assets/icons/ai-re-run.svg +5 -0
  4. package/dist/assets/icons/arrow-head.svg +8 -0
  5. package/dist/assets/icons/center-align.svg +3 -0
  6. package/dist/assets/icons/chat.svg +4 -0
  7. package/dist/assets/icons/checkbox-disabled-minus.svg +1 -1
  8. package/dist/assets/icons/checkbox-disabled-tick.svg +1 -1
  9. package/dist/assets/icons/checkbox-fill.svg +1 -1
  10. package/dist/assets/icons/checkbox-hover-fill.svg +2 -2
  11. package/dist/assets/icons/checkbox-hover-minus.svg +1 -1
  12. package/dist/assets/icons/checkbox-hover-tick.svg +1 -1
  13. package/dist/assets/icons/checkbox-minus.svg +1 -1
  14. package/dist/assets/icons/checkbox-tick.svg +1 -1
  15. package/dist/assets/icons/combobox-field.svg +6 -0
  16. package/dist/assets/icons/command.svg +1 -1
  17. package/dist/assets/icons/csv-file.svg +4 -4
  18. package/dist/assets/icons/doc-file.svg +6 -0
  19. package/dist/assets/icons/envelope.svg +4 -0
  20. package/dist/assets/icons/file-filled-checked.svg +8 -0
  21. package/dist/assets/icons/filter.svg +3 -0
  22. package/dist/assets/icons/google-drive.svg +8 -0
  23. package/dist/assets/icons/home.svg +3 -2
  24. package/dist/assets/icons/left-align.svg +3 -0
  25. package/dist/assets/icons/library.svg +6 -0
  26. package/dist/assets/icons/minus.svg +3 -0
  27. package/dist/assets/icons/office-building.svg +9 -0
  28. package/dist/assets/icons/photo.svg +5 -3
  29. package/dist/assets/icons/plus.svg +4 -0
  30. package/dist/assets/icons/reports.svg +4 -0
  31. package/dist/assets/icons/repository.svg +4 -0
  32. package/dist/assets/icons/right-align.svg +3 -0
  33. package/dist/assets/icons/sort-asc.svg +3 -4
  34. package/dist/assets/icons/sort-desc.svg +2 -3
  35. package/dist/assets/icons/tag.svg +2 -2
  36. package/dist/assets/icons/upload-csv.svg +37 -0
  37. package/dist/assets/icons/views.svg +7 -0
  38. package/dist/assets/icons/warning.svg +10 -0
  39. package/dist/assets/style.css +1 -1
  40. package/dist/assets/typographyMixin.scss +8 -0
  41. package/dist/components/AccessibleDiv/index.d.ts +46 -0
  42. package/dist/components/Accordion/index.d.ts +2 -0
  43. package/dist/components/AutoCompleteInput/index.d.ts +37 -7
  44. package/dist/components/Avatar/index.d.ts +1 -0
  45. package/dist/components/Badge/index.d.ts +2 -0
  46. package/dist/components/Banner/index.d.ts +17 -4
  47. package/dist/components/BottomSheet/index.d.ts +14 -0
  48. package/dist/components/BreadCrumbs/index.d.ts +5 -0
  49. package/dist/components/Button/index.d.ts +51 -7
  50. package/dist/components/Checkbox/index.d.ts +36 -0
  51. package/dist/components/CustomAccordion/index.d.ts +6 -0
  52. package/dist/components/CustomModal/index.d.ts +56 -1
  53. package/dist/components/DatePicker/index.d.ts +7 -0
  54. package/dist/components/DatePicker/useDatePickerA11y.d.ts +47 -0
  55. package/dist/components/Dropdown/index.d.ts +24 -0
  56. package/dist/components/DropdownWithInputTags/index.d.ts +14 -2
  57. package/dist/components/GuidedTour/index.d.ts +27 -0
  58. package/dist/components/Header/index.d.ts +3 -2
  59. package/dist/components/Icon/index.d.ts +45 -4
  60. package/dist/components/InfoBar/index.d.ts +10 -0
  61. package/dist/components/InfoTooltip/index.d.ts +21 -0
  62. package/dist/components/Input/index.d.ts +38 -6
  63. package/dist/components/InputWithIcon/index.d.ts +36 -2
  64. package/dist/components/KebabMenu/index.d.ts +1 -0
  65. package/dist/components/LabelChip/index.d.ts +3 -0
  66. package/dist/components/Link/index.d.ts +64 -0
  67. package/dist/components/MenuItem/index.d.ts +13 -3
  68. package/dist/components/MenuList/index.d.ts +3 -2
  69. package/dist/components/MessageBar/index.d.ts +20 -1
  70. package/dist/components/Modal/index.d.ts +3 -0
  71. package/dist/components/NavigationBar/TabButton.d.ts +20 -0
  72. package/dist/components/NavigationBar/index.d.ts +8 -1
  73. package/dist/components/OTPInput/index.d.ts +1 -0
  74. package/dist/components/OnboardingTour/index.d.ts +35 -0
  75. package/dist/components/Pagination/index.d.ts +2 -0
  76. package/dist/components/Paywall/index.d.ts +47 -0
  77. package/dist/components/PhoneInput/index.d.ts +27 -0
  78. package/dist/components/Popover/index.d.ts +19 -3
  79. package/dist/components/Radio/index.d.ts +7 -0
  80. package/dist/components/RadioGroup/index.d.ts +18 -0
  81. package/dist/components/ShimmerLoader/index.d.ts +4 -2
  82. package/dist/components/SidebarOverlay/index.d.ts +36 -0
  83. package/dist/components/SkipLinksBar/index.d.ts +11 -0
  84. package/dist/components/SnackBar/index.d.ts +5 -2
  85. package/dist/components/Spinner/index.d.ts +13 -1
  86. package/dist/components/TableLayout/index.d.ts +18 -0
  87. package/dist/components/Tabs/index.d.ts +6 -1
  88. package/dist/components/TimePicker/index.d.ts +14 -0
  89. package/dist/components/Toggle/index.d.ts +25 -1
  90. package/dist/components/Tooltip/index.d.ts +19 -2
  91. package/dist/components/index.d.ts +10 -0
  92. package/dist/index.js +152 -103
  93. package/dist/index.js.map +1 -1
  94. package/dist/index10.js +23 -48
  95. package/dist/index10.js.map +1 -1
  96. package/dist/index100.js +1 -1
  97. package/dist/index100.js.map +1 -1
  98. package/dist/index101.js +1 -1
  99. package/dist/index101.js.map +1 -1
  100. package/dist/index102.js +1 -1
  101. package/dist/index102.js.map +1 -1
  102. package/dist/index103.js +1 -1
  103. package/dist/index103.js.map +1 -1
  104. package/dist/index104.js +1 -1
  105. package/dist/index104.js.map +1 -1
  106. package/dist/index105.js +1 -1
  107. package/dist/index105.js.map +1 -1
  108. package/dist/index106.js +1 -1
  109. package/dist/index106.js.map +1 -1
  110. package/dist/index107.js +1 -1
  111. package/dist/index107.js.map +1 -1
  112. package/dist/index108.js +1 -1
  113. package/dist/index108.js.map +1 -1
  114. package/dist/index109.js +2 -2
  115. package/dist/index109.js.map +1 -1
  116. package/dist/index11.js +74 -18
  117. package/dist/index11.js.map +1 -1
  118. package/dist/index110.js +1 -1
  119. package/dist/index110.js.map +1 -1
  120. package/dist/index111.js +1 -1
  121. package/dist/index111.js.map +1 -1
  122. package/dist/index112.js +1 -1
  123. package/dist/index112.js.map +1 -1
  124. package/dist/index113.js +2 -2
  125. package/dist/index113.js.map +1 -1
  126. package/dist/index114.js +1 -1
  127. package/dist/index114.js.map +1 -1
  128. package/dist/index115.js +2 -2
  129. package/dist/index115.js.map +1 -1
  130. package/dist/index116.js +1 -1
  131. package/dist/index116.js.map +1 -1
  132. package/dist/index117.js +2 -2
  133. package/dist/index117.js.map +1 -1
  134. package/dist/index118.js +1 -1
  135. package/dist/index118.js.map +1 -1
  136. package/dist/index119.js +2 -2
  137. package/dist/index119.js.map +1 -1
  138. package/dist/index12.js +76 -11
  139. package/dist/index12.js.map +1 -1
  140. package/dist/index120.js +1 -1
  141. package/dist/index120.js.map +1 -1
  142. package/dist/index121.js +1 -1
  143. package/dist/index121.js.map +1 -1
  144. package/dist/index122.js +1 -1
  145. package/dist/index122.js.map +1 -1
  146. package/dist/index123.js +1 -1
  147. package/dist/index123.js.map +1 -1
  148. package/dist/index124.js +1 -1
  149. package/dist/index124.js.map +1 -1
  150. package/dist/index125.js +2 -2
  151. package/dist/index125.js.map +1 -1
  152. package/dist/index126.js +2 -2
  153. package/dist/index126.js.map +1 -1
  154. package/dist/index127.js +2 -2
  155. package/dist/index127.js.map +1 -1
  156. package/dist/index128.js +1 -1
  157. package/dist/index128.js.map +1 -1
  158. package/dist/index129.js +1 -1
  159. package/dist/index129.js.map +1 -1
  160. package/dist/index13.js +64 -5
  161. package/dist/index13.js.map +1 -1
  162. package/dist/index130.js +2 -2
  163. package/dist/index130.js.map +1 -1
  164. package/dist/index131.js +1 -1
  165. package/dist/index131.js.map +1 -1
  166. package/dist/index132.js +1 -1
  167. package/dist/index132.js.map +1 -1
  168. package/dist/index133.js +1 -1
  169. package/dist/index133.js.map +1 -1
  170. package/dist/index134.js +1 -1
  171. package/dist/index134.js.map +1 -1
  172. package/dist/index135.js +2 -2
  173. package/dist/index135.js.map +1 -1
  174. package/dist/index136.js +2 -2
  175. package/dist/index136.js.map +1 -1
  176. package/dist/index137.js +1 -1
  177. package/dist/index137.js.map +1 -1
  178. package/dist/index138.js +1 -1
  179. package/dist/index138.js.map +1 -1
  180. package/dist/index139.js +1 -1
  181. package/dist/index139.js.map +1 -1
  182. package/dist/index14.js +15 -138
  183. package/dist/index14.js.map +1 -1
  184. package/dist/index140.js +2 -2
  185. package/dist/index140.js.map +1 -1
  186. package/dist/index141.js +1 -1
  187. package/dist/index141.js.map +1 -1
  188. package/dist/index142.js +1 -1
  189. package/dist/index142.js.map +1 -1
  190. package/dist/index143.js +1 -1
  191. package/dist/index143.js.map +1 -1
  192. package/dist/index144.js +2 -2
  193. package/dist/index144.js.map +1 -1
  194. package/dist/index145.js +1 -1
  195. package/dist/index145.js.map +1 -1
  196. package/dist/index146.js +2 -2
  197. package/dist/index146.js.map +1 -1
  198. package/dist/index147.js +1 -1
  199. package/dist/index147.js.map +1 -1
  200. package/dist/index148.js +1 -1
  201. package/dist/index148.js.map +1 -1
  202. package/dist/index149.js +1 -1
  203. package/dist/index149.js.map +1 -1
  204. package/dist/index15.js +10 -54
  205. package/dist/index15.js.map +1 -1
  206. package/dist/index150.js +1 -1
  207. package/dist/index150.js.map +1 -1
  208. package/dist/index151.js +1 -1
  209. package/dist/index151.js.map +1 -1
  210. package/dist/index152.js +2 -2
  211. package/dist/index152.js.map +1 -1
  212. package/dist/index153.js +1 -1
  213. package/dist/index153.js.map +1 -1
  214. package/dist/index154.js +2 -2
  215. package/dist/index154.js.map +1 -1
  216. package/dist/index155.js +2 -149
  217. package/dist/index155.js.map +1 -1
  218. package/dist/index156.js +5 -0
  219. package/dist/index156.js.map +1 -0
  220. package/dist/index157.js +5 -0
  221. package/dist/index157.js.map +1 -0
  222. package/dist/index158.js +5 -0
  223. package/dist/index158.js.map +1 -0
  224. package/dist/index159.js +5 -0
  225. package/dist/index159.js.map +1 -0
  226. package/dist/index16.js +216 -54
  227. package/dist/index16.js.map +1 -1
  228. package/dist/index160.js +5 -0
  229. package/dist/index160.js.map +1 -0
  230. package/dist/index161.js +5 -0
  231. package/dist/index161.js.map +1 -0
  232. package/dist/index162.js +5 -0
  233. package/dist/index162.js.map +1 -0
  234. package/dist/index163.js +5 -0
  235. package/dist/index163.js.map +1 -0
  236. package/dist/index164.js +5 -0
  237. package/dist/index164.js.map +1 -0
  238. package/dist/index165.js +5 -0
  239. package/dist/index165.js.map +1 -0
  240. package/dist/index166.js +5 -0
  241. package/dist/index166.js.map +1 -0
  242. package/dist/index167.js +2 -12
  243. package/dist/index167.js.map +1 -1
  244. package/dist/index168.js +5 -0
  245. package/dist/index168.js.map +1 -0
  246. package/dist/index169.js +5 -0
  247. package/dist/index169.js.map +1 -0
  248. package/dist/index17.js +60 -250
  249. package/dist/index17.js.map +1 -1
  250. package/dist/index170.js +5 -0
  251. package/dist/index170.js.map +1 -0
  252. package/dist/index171.js +5 -0
  253. package/dist/index171.js.map +1 -0
  254. package/dist/index172.js +5 -0
  255. package/dist/index172.js.map +1 -0
  256. package/dist/index173.js +5 -0
  257. package/dist/index173.js.map +1 -0
  258. package/dist/index174.js +5 -0
  259. package/dist/index174.js.map +1 -0
  260. package/dist/index175.js +1 -1232
  261. package/dist/index175.js.map +1 -1
  262. package/dist/index176.js +5 -0
  263. package/dist/index176.js.map +1 -0
  264. package/dist/index177.js +5 -0
  265. package/dist/index177.js.map +1 -0
  266. package/dist/index178.js +5 -0
  267. package/dist/index178.js.map +1 -0
  268. package/dist/index179.js +2 -4
  269. package/dist/index179.js.map +1 -1
  270. package/dist/index18.js +128 -11
  271. package/dist/index18.js.map +1 -1
  272. package/dist/index180.js +5 -0
  273. package/dist/index180.js.map +1 -0
  274. package/dist/index181.js +5 -0
  275. package/dist/index181.js.map +1 -0
  276. package/dist/index182.js +5 -0
  277. package/dist/index182.js.map +1 -0
  278. package/dist/index183.js +2 -10
  279. package/dist/index183.js.map +1 -1
  280. package/dist/index184.js +1 -9
  281. package/dist/index184.js.map +1 -1
  282. package/dist/index185.js +2 -5
  283. package/dist/index185.js.map +1 -1
  284. package/dist/index186.js +2 -170
  285. package/dist/index186.js.map +1 -1
  286. package/dist/index187.js +2 -11
  287. package/dist/index187.js.map +1 -1
  288. package/dist/index188.js +1 -5
  289. package/dist/index188.js.map +1 -1
  290. package/dist/index189.js +2 -6
  291. package/dist/index189.js.map +1 -1
  292. package/dist/index19.js +360 -32
  293. package/dist/index19.js.map +1 -1
  294. package/dist/index190.js +2 -38
  295. package/dist/index190.js.map +1 -1
  296. package/dist/index191.js +2 -2
  297. package/dist/index191.js.map +1 -1
  298. package/dist/index192.js +2 -8
  299. package/dist/index192.js.map +1 -1
  300. package/dist/index193.js +2 -327
  301. package/dist/index193.js.map +1 -1
  302. package/dist/index194.js +2 -50
  303. package/dist/index194.js.map +1 -1
  304. package/dist/index195.js +2 -2
  305. package/dist/index195.js.map +1 -1
  306. package/dist/index196.js +2 -76
  307. package/dist/index196.js.map +1 -1
  308. package/dist/index197.js +2 -93
  309. package/dist/index197.js.map +1 -1
  310. package/dist/index198.js +2 -52
  311. package/dist/index198.js.map +1 -1
  312. package/dist/index199.js +2 -8
  313. package/dist/index199.js.map +1 -1
  314. package/dist/index20.js +18 -55
  315. package/dist/index20.js.map +1 -1
  316. package/dist/index200.js +2 -5
  317. package/dist/index200.js.map +1 -1
  318. package/dist/index201.js +2 -52
  319. package/dist/index201.js.map +1 -1
  320. package/dist/index202.js +2 -2
  321. package/dist/index202.js.map +1 -1
  322. package/dist/index203.js +149 -2
  323. package/dist/index203.js.map +1 -1
  324. package/dist/index204.js +12 -0
  325. package/dist/index204.js.map +1 -0
  326. package/dist/index205.js +9 -0
  327. package/dist/index205.js.map +1 -0
  328. package/dist/index206.js +8 -0
  329. package/dist/index206.js.map +1 -0
  330. package/dist/index207.js +46 -0
  331. package/dist/index207.js.map +1 -0
  332. package/dist/index208.js +24 -0
  333. package/dist/index208.js.map +1 -0
  334. package/dist/index21.js +33 -45
  335. package/dist/index21.js.map +1 -1
  336. package/dist/index215.js +31 -0
  337. package/dist/index215.js.map +1 -0
  338. package/dist/index216.js +75 -0
  339. package/dist/index216.js.map +1 -0
  340. package/dist/index22.js +64 -21
  341. package/dist/index22.js.map +1 -1
  342. package/dist/index224.js +15 -0
  343. package/dist/index224.js.map +1 -0
  344. package/dist/index23.js +84 -189
  345. package/dist/index23.js.map +1 -1
  346. package/dist/index232.js +1236 -0
  347. package/dist/index232.js.map +1 -0
  348. package/dist/index235.js +46 -0
  349. package/dist/index235.js.map +1 -0
  350. package/dist/index24.js +21 -45
  351. package/dist/index24.js.map +1 -1
  352. package/dist/index244.js +173 -0
  353. package/dist/index244.js.map +1 -0
  354. package/dist/index245.js +7 -0
  355. package/dist/index245.js.map +1 -0
  356. package/dist/index247.js +22 -0
  357. package/dist/index247.js.map +1 -0
  358. package/dist/index248.js +13 -0
  359. package/dist/index248.js.map +1 -0
  360. package/dist/index249.js +13 -0
  361. package/dist/index249.js.map +1 -0
  362. package/dist/index25.js +384 -18
  363. package/dist/index25.js.map +1 -1
  364. package/dist/index250.js +8 -0
  365. package/dist/index250.js.map +1 -0
  366. package/dist/index251.js +173 -0
  367. package/dist/index251.js.map +1 -0
  368. package/dist/index252.js +14 -0
  369. package/dist/index252.js.map +1 -0
  370. package/dist/index253.js +9 -0
  371. package/dist/index253.js.map +1 -0
  372. package/dist/index254.js +9 -0
  373. package/dist/index254.js.map +1 -0
  374. package/dist/index255.js +41 -0
  375. package/dist/index255.js.map +1 -0
  376. package/dist/index256.js +5 -0
  377. package/dist/index256.js.map +1 -0
  378. package/dist/index257.js +11 -0
  379. package/dist/index257.js.map +1 -0
  380. package/dist/index258.js +330 -0
  381. package/dist/index258.js.map +1 -0
  382. package/dist/index259.js +53 -0
  383. package/dist/index259.js.map +1 -0
  384. package/dist/index26.js +46 -51
  385. package/dist/index26.js.map +1 -1
  386. package/dist/index260.js +5 -0
  387. package/dist/index260.js.map +1 -0
  388. package/dist/index261.js +79 -0
  389. package/dist/index261.js.map +1 -0
  390. package/dist/index262.js +96 -0
  391. package/dist/index262.js.map +1 -0
  392. package/dist/index263.js +55 -0
  393. package/dist/index263.js.map +1 -0
  394. package/dist/index264.js +11 -0
  395. package/dist/index264.js.map +1 -0
  396. package/dist/index265.js +8 -0
  397. package/dist/index265.js.map +1 -0
  398. package/dist/index266.js +55 -0
  399. package/dist/index266.js.map +1 -0
  400. package/dist/index267.js +5 -0
  401. package/dist/index267.js.map +1 -0
  402. package/dist/index268.js +5 -0
  403. package/dist/index268.js.map +1 -0
  404. package/dist/index27.js +22 -74
  405. package/dist/index27.js.map +1 -1
  406. package/dist/index28.js +108 -83
  407. package/dist/index28.js.map +1 -1
  408. package/dist/index29.js +148 -49
  409. package/dist/index29.js.map +1 -1
  410. package/dist/index3.js +69 -65
  411. package/dist/index3.js.map +1 -1
  412. package/dist/index30.js +133 -95
  413. package/dist/index30.js.map +1 -1
  414. package/dist/index31.js +77 -77
  415. package/dist/index31.js.map +1 -1
  416. package/dist/index32.js +99 -32
  417. package/dist/index32.js.map +1 -1
  418. package/dist/index33.js +75 -36
  419. package/dist/index33.js.map +1 -1
  420. package/dist/index34.js +42 -46
  421. package/dist/index34.js.map +1 -1
  422. package/dist/index35.js +72 -56
  423. package/dist/index35.js.map +1 -1
  424. package/dist/index36.js +99 -169
  425. package/dist/index36.js.map +1 -1
  426. package/dist/index37.js +51 -38
  427. package/dist/index37.js.map +1 -1
  428. package/dist/index38.js +306 -82
  429. package/dist/index38.js.map +1 -1
  430. package/dist/index39.js +70 -31
  431. package/dist/index39.js.map +1 -1
  432. package/dist/index4.js +108 -42
  433. package/dist/index4.js.map +1 -1
  434. package/dist/index40.js +82 -50
  435. package/dist/index40.js.map +1 -1
  436. package/dist/index41.js +27 -67
  437. package/dist/index41.js.map +1 -1
  438. package/dist/index42.js +45 -51
  439. package/dist/index42.js.map +1 -1
  440. package/dist/index43.js +109 -94
  441. package/dist/index43.js.map +1 -1
  442. package/dist/index44.js +54 -92
  443. package/dist/index44.js.map +1 -1
  444. package/dist/index45.js +143 -35
  445. package/dist/index45.js.map +1 -1
  446. package/dist/index46.js +194 -30
  447. package/dist/index46.js.map +1 -1
  448. package/dist/index47.js +36 -30
  449. package/dist/index47.js.map +1 -1
  450. package/dist/index48.js +34 -53
  451. package/dist/index48.js.map +1 -1
  452. package/dist/index49.js +142 -359
  453. package/dist/index49.js.map +1 -1
  454. package/dist/index5.js +41 -232
  455. package/dist/index5.js.map +1 -1
  456. package/dist/index50.js +82 -61
  457. package/dist/index50.js.map +1 -1
  458. package/dist/index51.js +458 -35
  459. package/dist/index51.js.map +1 -1
  460. package/dist/index52.js +98 -38
  461. package/dist/index52.js.map +1 -1
  462. package/dist/index53.js +42 -84
  463. package/dist/index53.js.map +1 -1
  464. package/dist/index54.js +36 -140
  465. package/dist/index54.js.map +1 -1
  466. package/dist/index55.js +88 -136
  467. package/dist/index55.js.map +1 -1
  468. package/dist/index56.js +166 -0
  469. package/dist/index56.js.map +1 -0
  470. package/dist/index57.js +149 -2
  471. package/dist/index57.js.map +1 -1
  472. package/dist/index58.js +33 -2
  473. package/dist/index58.js.map +1 -1
  474. package/dist/index59.js +86 -2
  475. package/dist/index59.js.map +1 -1
  476. package/dist/index6.js +328 -50
  477. package/dist/index6.js.map +1 -1
  478. package/dist/index60.js +119 -2
  479. package/dist/index60.js.map +1 -1
  480. package/dist/index61.js +78 -2
  481. package/dist/index61.js.map +1 -1
  482. package/dist/index62.js +152 -2
  483. package/dist/index62.js.map +1 -1
  484. package/dist/index63.js +318 -2
  485. package/dist/index63.js.map +1 -1
  486. package/dist/index64.js +47 -2
  487. package/dist/index64.js.map +1 -1
  488. package/dist/index65.js +145 -2
  489. package/dist/index65.js.map +1 -1
  490. package/dist/index66.js +12 -2
  491. package/dist/index66.js.map +1 -1
  492. package/dist/index67.js +46 -2
  493. package/dist/index67.js.map +1 -1
  494. package/dist/index68.js +103 -2
  495. package/dist/index68.js.map +1 -1
  496. package/dist/index69.js +19 -2
  497. package/dist/index69.js.map +1 -1
  498. package/dist/index7.js +44 -51
  499. package/dist/index7.js.map +1 -1
  500. package/dist/index70.js +66 -2
  501. package/dist/index70.js.map +1 -1
  502. package/dist/index71.js +27 -2
  503. package/dist/index71.js.map +1 -1
  504. package/dist/index72.js +108 -2
  505. package/dist/index72.js.map +1 -1
  506. package/dist/index73.js +62 -2
  507. package/dist/index73.js.map +1 -1
  508. package/dist/index74.js +21 -2
  509. package/dist/index74.js.map +1 -1
  510. package/dist/index75.js +171 -2
  511. package/dist/index75.js.map +1 -1
  512. package/dist/index76.js +18 -2
  513. package/dist/index76.js.map +1 -1
  514. package/dist/index77.js +11 -2
  515. package/dist/index77.js.map +1 -1
  516. package/dist/index78.js +5 -2
  517. package/dist/index78.js.map +1 -1
  518. package/dist/index79.js +56 -2
  519. package/dist/index79.js.map +1 -1
  520. package/dist/index8.js +48 -18
  521. package/dist/index8.js.map +1 -1
  522. package/dist/index80.js +27 -2
  523. package/dist/index80.js.map +1 -1
  524. package/dist/index81.js +9 -2
  525. package/dist/index81.js.map +1 -1
  526. package/dist/index83.js +2 -2
  527. package/dist/index83.js.map +1 -1
  528. package/dist/index84.js +2 -2
  529. package/dist/index84.js.map +1 -1
  530. package/dist/index85.js +1 -1
  531. package/dist/index85.js.map +1 -1
  532. package/dist/index86.js +2 -2
  533. package/dist/index86.js.map +1 -1
  534. package/dist/index87.js +1 -1
  535. package/dist/index87.js.map +1 -1
  536. package/dist/index88.js +1 -1
  537. package/dist/index88.js.map +1 -1
  538. package/dist/index89.js +1 -1
  539. package/dist/index89.js.map +1 -1
  540. package/dist/index9.js +91 -59
  541. package/dist/index9.js.map +1 -1
  542. package/dist/index90.js +1 -1
  543. package/dist/index90.js.map +1 -1
  544. package/dist/index91.js +2 -2
  545. package/dist/index91.js.map +1 -1
  546. package/dist/index92.js +2 -2
  547. package/dist/index92.js.map +1 -1
  548. package/dist/index93.js +2 -2
  549. package/dist/index93.js.map +1 -1
  550. package/dist/index94.js +1 -1
  551. package/dist/index94.js.map +1 -1
  552. package/dist/index95.js +2 -2
  553. package/dist/index95.js.map +1 -1
  554. package/dist/index96.js +1 -1
  555. package/dist/index96.js.map +1 -1
  556. package/dist/index97.js +1 -1
  557. package/dist/index97.js.map +1 -1
  558. package/dist/index98.js +1 -1
  559. package/dist/index98.js.map +1 -1
  560. package/dist/index99.js +2 -2
  561. package/dist/index99.js.map +1 -1
  562. package/package.json +1 -1
  563. package/dist/index82.js +0 -5
  564. package/dist/index82.js.map +0 -1
package/dist/index23.js CHANGED
@@ -1,195 +1,90 @@
1
- import t, { useState as h, useRef as X, useEffect as A } from "react";
2
- import { Popover as G } from "./index17.js";
3
- import { Icon as B } from "./index5.js";
4
- import { Checkbox as H } from "./index21.js";
5
- import { Button as P } from "./index3.js";
6
- import { InputWithIcon as Y } from "./index50.js";
7
- const ae = (o) => {
8
- const [i, M] = h(!1), [p, w] = h(""), [a, m] = h(() => o?.defaultSelectedValue ? Array.isArray(o?.defaultSelectedValue) ? o?.defaultSelectedValue : [o.defaultSelectedValue] : []), y = X(null), {
9
- selectBy: s = "",
10
- optionsUniqueBy: c = "",
11
- displaySelected: O = !1,
12
- dropDownOptions: g,
13
- defaultText: d = "Select",
14
- iconColor: S = "var(--color-gray-700)",
15
- disabled: u = !1,
16
- dropdownClassName: U = "",
17
- hasError: E = !1,
18
- errorMessage: j = "",
19
- customDropdownContent: C = null,
20
- isBorderless: L = !1,
21
- shouldShowSearch: D = !1,
22
- searchPlaceholder: R = "Search...",
23
- searchResultEmptyMessage: N = "No results found"
24
- } = o;
25
- A(() => {
26
- const e = o?.defaultSelectedValue ? Array.isArray(o?.defaultSelectedValue) ? o?.defaultSelectedValue : [o.defaultSelectedValue] : [];
27
- m(e);
28
- }, [o?.defaultSelectedValue]), A(() => {
29
- i || w("");
30
- }, [i]);
31
- const v = o?.type === "multi-select", k = () => p.trim() ? (g || []).filter((e) => (e?.[s]?.toString().toLowerCase() || "").includes(p.toLowerCase())) : g || [], V = (e) => {
32
- m([e]), y.current?.togglePopover(), o?.onOptionClick?.(e);
33
- }, T = (e) => v ? d : e?.[s] || d, q = () => {
34
- m([]);
35
- }, $ = (e, l = !1) => {
36
- if (o?.renderOptionChip)
37
- return o?.renderOptionChip(e, l);
38
- if (v && a?.length > 0) {
39
- const r = a[0]?.[s] || "", n = a.length - 1;
40
- return /* @__PURE__ */ t.createElement("div", {
41
- className: "option-chip flex items-center w-full"
42
- }, /* @__PURE__ */ t.createElement("div", {
43
- className: `${n > 0 ? "w-full" : "flex-1"} truncate`
44
- }, `${d}: ${r}`), n > 0 && /* @__PURE__ */ t.createElement("div", {
45
- className: "flex-shrink-0"
46
- }, "+", n));
1
+ import s, { useState as j, useEffect as B } from "react";
2
+ import { useStableId as K } from "./index205.js";
3
+ import { getA11yNameAttributes as L } from "./index81.js";
4
+ import "./index72.js";
5
+ import { mergeIds as q } from "./index206.js";
6
+ /* empty css */
7
+ function h() {
8
+ return h = Object.assign ? Object.assign.bind() : function(l) {
9
+ for (var i = 1; i < arguments.length; i++) {
10
+ var r = arguments[i];
11
+ for (var e in r) ({}).hasOwnProperty.call(r, e) && (l[e] = r[e]);
47
12
  }
48
- return /* @__PURE__ */ t.createElement("p", {
49
- className: "option-chip flex flex-1 items-center justify-between"
50
- }, T(e));
51
- }, I = () => /* @__PURE__ */ t.createElement("div", {
52
- className: " w-full relative flex items-center border-b border-[var(--color-gray-300)]"
53
- }, /* @__PURE__ */ t.createElement(Y, {
54
- leftIcon: {
55
- name: "search",
56
- position: "left",
57
- style: {
58
- color: "var(--color-gray-500)"
59
- }
60
- },
61
- value: p,
62
- onChange: (e) => w(e),
63
- placeholder: R,
64
- style: {
65
- margin: 0,
66
- gap: 0
67
- },
68
- inputStyle: {
69
- width: "100%",
70
- border: "none",
71
- outline: "none"
13
+ return l;
14
+ }, h.apply(null, arguments);
15
+ }
16
+ const Q = ({
17
+ className: l = "",
18
+ automationId: i = "",
19
+ defaultChecked: r = !1,
20
+ checked: e,
21
+ disabled: n = !1,
22
+ onChange: x,
23
+ checkMarkType: c = "",
24
+ label: u = "",
25
+ disabledLabel: g = "",
26
+ containerAutomationId: E = "",
27
+ ariaLabel: y,
28
+ ariaLabelledBy: C,
29
+ ariaDescribedBy: N,
30
+ ariaControls: I,
31
+ tabIndex: k,
32
+ ariaHidden: w = !1
33
+ }) => {
34
+ const o = e !== void 0, [t, m] = j(o ? e : r);
35
+ B(() => {
36
+ m(o ? e : r);
37
+ }, [e, r]);
38
+ const A = (a) => {
39
+ n || (o || m((b) => !b), x?.(o ? !e : !t, a));
40
+ }, $ = (a) => {
41
+ if (!n && (a.key === "Enter" || a.key === " ")) {
42
+ a.preventDefault(), a.stopPropagation();
43
+ const b = o ? !e : !t;
44
+ o || m(b);
45
+ const d = a.currentTarget.closest("label")?.querySelector("input");
46
+ d && x?.(b, {
47
+ target: d,
48
+ currentTarget: d
49
+ });
72
50
  }
73
- })), z = (e, l) => {
74
- const r = e[s], n = a[0]?.[s] || d, b = c?.length ? e[c] == a[0]?.[c] : !0, f = O && r === n && b;
75
- return /* @__PURE__ */ t.createElement("div", {
76
- key: `$drop-option-${crypto.randomUUID()}`,
77
- className: `option break-words px-3 py-2 hover:bg-gray-100 cursor-pointer flex items-center justify-between ${f ? "selected" : ""}`,
78
- onClick: () => V(e),
79
- onKeyDown: (x) => {
80
- (x.key === "Enter" || x.key === " ") && (x.preventDefault(), V(e));
81
- },
82
- role: "option",
83
- "aria-selected": f,
84
- tabIndex: 0,
85
- "data-automation-id": `dropdown-option-${e?.automationId || l}`
86
- }, $({
87
- ...e,
88
- isOptionSelected: f
89
- }, !1), f && /* @__PURE__ */ t.createElement(B, {
90
- name: "checkmark",
91
- stroke: S
92
- }));
93
- }, J = () => {
94
- const e = k();
95
- return /* @__PURE__ */ t.createElement("div", {
96
- className: "dropdown-content dropdown-options",
97
- role: "listbox",
98
- "aria-label": "Dropdown options"
99
- }, D && I(), /* @__PURE__ */ t.createElement("div", {
100
- className: "flex flex-col max-h-80 overflow-y-auto"
101
- }, e.length > 0 ? e.map((l, r) => z(l, r)) : /* @__PURE__ */ t.createElement("div", {
102
- className: "px-3 py-4 text-center text-[var(--color-gray-500)] text-sm",
103
- role: "status",
104
- "aria-live": "polite"
105
- }, N)));
106
- }, Q = (e, l) => {
107
- let r = [];
108
- e ? r = [...a, l] : r = a?.filter((n) => n[c] !== l[c]), m(r);
109
- }, W = () => {
110
- y.current?.togglePopover(), o?.onApply?.(a);
111
- }, _ = (e) => {
112
- const l = a.some((r) => r[c] === e[c]);
113
- return /* @__PURE__ */ t.createElement("div", {
114
- key: `$drop-option-${crypto.randomUUID()}`,
115
- className: "option px-3 py-2 hover:bg-gray-100 cursor-pointer flex items-center justify-between"
116
- }, /* @__PURE__ */ t.createElement(H, {
117
- automationId: "checkbox",
118
- className: "checkbox",
119
- defaultChecked: l,
120
- onChange: (r) => Q(r, e),
121
- label: e?.label
122
- }));
123
- }, F = () => {
124
- const e = k();
125
- return /* @__PURE__ */ t.createElement("div", {
126
- className: "dropdown-content dropdown-options",
127
- role: "listbox",
128
- "aria-label": "Multi-select dropdown options",
129
- "aria-multiselectable": "true"
130
- }, D && I(), /* @__PURE__ */ t.createElement("div", {
131
- className: "flex flex-col max-h-80 overflow-y-auto"
132
- }, e.length > 0 ? e.map((l) => _(l)) : /* @__PURE__ */ t.createElement("div", {
133
- className: "px-3 py-4 text-center text-[var(--color-gray-500)] text-sm",
134
- role: "status",
135
- "aria-live": "polite"
136
- }, N)), /* @__PURE__ */ t.createElement("div", {
137
- className: "flex items-center justify-end gap-4 p-3 border-t border-[var(--color-gray-200)]"
138
- }, /* @__PURE__ */ t.createElement(P, {
139
- label: "Clear",
140
- type: "link",
141
- size: "sm",
142
- onClick: q
143
- }), /* @__PURE__ */ t.createElement(P, {
144
- label: "Apply",
145
- type: "primary",
146
- size: "sm",
147
- onClick: W
148
- })));
149
- }, K = () => {
150
- const e = i ? "border-[var(--color-blue-500)]" : u ? "border-[var(--color-gray-300)]" : "border-[var(--color-gray-600)]", l = E ? "border-[var(--color-red-500)]" : "", r = `dropdown-src-element bg-[var(--color-white)] flex px-3 py-2 ${L ? "border-0" : `border rounded-md ${l || e}`} flex items-center ${U}`, n = a[0]?.[s] || d, b = o?.label ? `${o.label}: ${n}` : `Select option, currently selected: ${n}`;
151
- return /* @__PURE__ */ t.createElement("div", {
152
- className: r,
153
- role: "combobox",
154
- "aria-expanded": i,
155
- "aria-haspopup": "listbox",
156
- "aria-label": b,
157
- "aria-disabled": u
158
- }, /* @__PURE__ */ t.createElement("div", {
159
- className: "flex-1 min-w-0",
160
- "data-automation-id": o?.dropDownSelectAutomationId || "selected-dropdown-value"
161
- }, $(a[0], !0)), /* @__PURE__ */ t.createElement("div", {
162
- className: "flex-shrink-0 ml-2",
163
- "aria-hidden": "true"
164
- }, /* @__PURE__ */ t.createElement(B, {
165
- name: "chevron",
166
- rotation: i ? "180" : "0",
167
- className: "transition-transform",
168
- stroke: S
169
- })));
170
- };
171
- return /* @__PURE__ */ t.createElement("div", {
172
- className: `se-design-dropdown-container${o?.className ? ` ${o?.className}` : ""}`,
173
- style: o?.style
174
- }, o?.label && /* @__PURE__ */ t.createElement("div", {
175
- className: "se-design-dropdown-label mb-[3px] text-[var(--color-gray-700)] text-sm"
176
- }, o?.label), /* @__PURE__ */ t.createElement("div", {
177
- style: o?.style,
178
- className: `${u ? "bg-[var(--color-gray-50)] rounded-md cursor-not-allowed" : ""}`
179
- }, /* @__PURE__ */ t.createElement(G, {
180
- ref: y,
181
- renderPopoverContents: C || (v ? F : J),
182
- contentWidth: "full",
183
- renderPopoverSrcElement: K,
184
- onPopoverToggle: (e) => M(e),
185
- disabled: u,
186
- automationId: o?.dropDownSrcAutomationId,
187
- popoverContentAutomationId: o?.dropDownContentAutomationId
188
- })), E && /* @__PURE__ */ t.createElement("div", {
189
- className: "text-[var(--color-red-500)] text-sm"
190
- }, j));
51
+ }, D = () => n ? t && c === "tick" ? "disabled-tick" : t && c === "minus-checkbox" ? "disabled-minus-checkbox" : t && !c ? "disabled-tick" : "disabled-default" : c === "minus-checkbox" && t ? "minus-checkbox" : t ? "checked" : "unchecked", O = () => n ? "checkbox-label-disabled" : "checkbox-label", p = () => n && g ? g : u, f = K(void 0, "checkbox-input"), v = u ? `${f}-label` : void 0, S = L({
52
+ ariaLabelledBy: q(v, C),
53
+ ariaLabel: y,
54
+ ariaDescribedBy: N
55
+ }), _ = () => c === "minus-checkbox" && t ? "mixed" : t ? "true" : "false";
56
+ return /* @__PURE__ */ s.createElement("div", {
57
+ className: "se-design-checkbox-ctn",
58
+ "aria-hidden": w ? "true" : void 0
59
+ }, /* @__PURE__ */ s.createElement("label", h({
60
+ role: "checkbox",
61
+ htmlFor: f,
62
+ className: `se-design-checkbox ${l} ${D()}`,
63
+ "data-automation-id": E || "checkbox-container",
64
+ tabIndex: k !== void 0 ? k : n ? -1 : 0,
65
+ "aria-checked": _(),
66
+ "aria-disabled": n ? "true" : "false",
67
+ "aria-controls": I
68
+ }, S, {
69
+ onKeyDown: $
70
+ }), /* @__PURE__ */ s.createElement("input", {
71
+ id: f,
72
+ type: "checkbox",
73
+ checked: t,
74
+ onChange: A,
75
+ disabled: n,
76
+ tabIndex: -1,
77
+ "aria-hidden": "true"
78
+ }), /* @__PURE__ */ s.createElement("span", {
79
+ className: "checkbox-item",
80
+ "data-automation-id": i
81
+ }), p()?.length > 0 && /* @__PURE__ */ s.createElement("span", {
82
+ id: v,
83
+ className: O(),
84
+ "data-automation-id": i || (u ? `checkbox-label-${u}` : "checkbox-label")
85
+ }, p())));
191
86
  };
192
87
  export {
193
- ae as Dropdown
88
+ Q as Checkbox
194
89
  };
195
90
  //# sourceMappingURL=index23.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index23.js","sources":["../src/components/Dropdown/index.tsx"],"sourcesContent":["import React, { FC, useState, useRef, useEffect } from 'react';\n\nimport { Popover, PopoverHandle } from 'src/components/Popover';\nimport { Icon } from 'components/Icon';\nimport { Checkbox } from '../Checkbox';\nimport { Button } from '../Button';\nimport { InputWithIcon } from '../InputWithIcon';\n\ntype DropdownValue = {\n [key: string]: any;\n};\n\ntype DropdownProps = {\n label?: string;\n type: 'select' | 'multi-select';\n dropDownOptions?: DropdownValue[];\n defaultText?: string;\n selectBy?: string;\n optionsUniqueBy?: string;\n displaySelected?: boolean;\n defaultSelectedValue?: DropdownValue | DropdownValue[];\n onOptionClick?: (selectedValue: DropdownValue) => void;\n style?: React.CSSProperties;\n renderOptionChip?: (option: DropdownValue, srcOption: boolean) => React.ReactNode;\n className?: string;\n iconColor?: string;\n disabled?: boolean;\n dropdownClassName?: string;\n hasError?: boolean;\n errorMessage?: string;\n onApply?: (selectedValue: DropdownValue[]) => void;\n customDropdownContent?: () => React.ReactNode;\n isBorderless?: boolean;\n dropDownSrcAutomationId?: string;\n dropDownSelectAutomationId?: string;\n dropDownContentAutomationId?: string;\n shouldShowSearch?: boolean;\n searchPlaceholder?: string;\n searchResultEmptyMessage?: string;\n};\n\nexport const Dropdown: FC<DropdownProps> = (props) => {\n const [isDropDownOpen, setIsDropDownOpen] = useState(false);\n const [searchQuery, setSearchQuery] = useState('');\n const [selectedDropDownValues, setSelectedDropDownValues] = useState<DropdownValue[]>(() =>\n props?.defaultSelectedValue\n ? Array.isArray(props?.defaultSelectedValue)\n ? props?.defaultSelectedValue\n : [props.defaultSelectedValue]\n : []\n );\n const popoverRef = useRef<HTMLDivElement & PopoverHandle>(null);\n\n const {\n selectBy = '',\n optionsUniqueBy = '',\n displaySelected = false,\n dropDownOptions,\n defaultText = 'Select',\n iconColor = 'var(--color-gray-700)',\n disabled = false,\n dropdownClassName = '',\n hasError = false,\n errorMessage = '',\n customDropdownContent = null,\n isBorderless = false,\n shouldShowSearch = false,\n searchPlaceholder = 'Search...',\n searchResultEmptyMessage = 'No results found'\n } = props;\n\n useEffect(() => {\n const newValues = props?.defaultSelectedValue\n ? Array.isArray(props?.defaultSelectedValue)\n ? props?.defaultSelectedValue\n : [props.defaultSelectedValue]\n : [];\n setSelectedDropDownValues(newValues);\n }, [props?.defaultSelectedValue]);\n\n useEffect(() => {\n if (!isDropDownOpen) {\n setSearchQuery('');\n }\n }, [isDropDownOpen]);\n\n const isMultiSelect = props?.type === 'multi-select';\n\n const getFilteredOptions = () => {\n if (!searchQuery.trim()) {\n return dropDownOptions || [];\n }\n return (dropDownOptions || []).filter((option) => {\n const optionValue = option?.[selectBy]?.toString().toLowerCase() || '';\n return optionValue.includes(searchQuery.toLowerCase());\n });\n };\n\n const handleDropDownOptionClick = (dropDownOption: any) => {\n setSelectedDropDownValues([dropDownOption]);\n popoverRef.current?.togglePopover();\n props?.onOptionClick?.(dropDownOption);\n };\n\n const getSelectedDropDownValue = (option: DropdownValue) => {\n if (isMultiSelect) {\n return defaultText;\n }\n return option?.[selectBy] || defaultText;\n };\n\n const clearSelectedDropDownValues = () => {\n setSelectedDropDownValues([]);\n };\n\n const optionChip = (option: DropdownValue, srcOption: boolean = false) => {\n if (props?.renderOptionChip) {\n return props?.renderOptionChip(option, srcOption);\n }\n\n if (isMultiSelect && selectedDropDownValues?.length > 0) {\n const firstSelectedLabel = selectedDropDownValues[0]?.[selectBy] || '';\n const remainingCount = selectedDropDownValues.length - 1;\n\n // For multiple selections: text takes remaining space, count takes minimum space needed\n return (\n <div className={`option-chip flex items-center w-full`}>\n <div\n className={`${remainingCount > 0 ? 'w-full' : 'flex-1'} truncate`}\n >{`${defaultText}: ${firstSelectedLabel}`}</div>\n {remainingCount > 0 && <div className=\"flex-shrink-0\">+{remainingCount}</div>}\n </div>\n );\n }\n\n return <p className={`option-chip flex flex-1 items-center justify-between`}>{getSelectedDropDownValue(option)}</p>;\n };\n\n const renderSearchBar = () => {\n return (\n <div className=\" w-full relative flex items-center border-b border-[var(--color-gray-300)]\">\n <InputWithIcon\n leftIcon={{ name: 'search', position: 'left', style: { color: 'var(--color-gray-500)' } }}\n value={searchQuery}\n onChange={(value) => setSearchQuery(value)}\n placeholder={searchPlaceholder}\n style={{ margin: 0, gap: 0 }}\n inputStyle={{ width: '100%', border: 'none', outline: 'none' }}\n />\n </div>\n );\n };\n\n const dropDownOptionJsx = (dropDownOption: DropdownValue, index: number) => {\n const optionTxt = dropDownOption[selectBy];\n const dropDownSelectedValue = selectedDropDownValues[0]?.[selectBy] || defaultText;\n const selectByUniqueId = optionsUniqueBy?.length\n ? dropDownOption[optionsUniqueBy] == selectedDropDownValues[0]?.[optionsUniqueBy]\n : true;\n const isOptionSelected = displaySelected && optionTxt === dropDownSelectedValue && selectByUniqueId;\n return (\n <div\n key={`$drop-option-${crypto.randomUUID()}`}\n className={`option break-words px-3 py-2 hover:bg-gray-100 cursor-pointer flex items-center justify-between ${\n isOptionSelected ? 'selected' : ''\n }`}\n onClick={() => handleDropDownOptionClick(dropDownOption)}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n handleDropDownOptionClick(dropDownOption);\n }\n }}\n role=\"option\"\n aria-selected={isOptionSelected}\n tabIndex={0}\n data-automation-id={`dropdown-option-${dropDownOption?.automationId || index}`}\n >\n {optionChip({ ...dropDownOption, isOptionSelected }, false)}\n {isOptionSelected && <Icon name=\"checkmark\" stroke={iconColor} />}\n </div>\n );\n };\n\n const renderDropdownContents = () => {\n const filteredOptions = getFilteredOptions();\n return (\n <div className=\"dropdown-content dropdown-options\" role=\"listbox\" aria-label=\"Dropdown options\">\n {shouldShowSearch && renderSearchBar()}\n <div className=\"flex flex-col max-h-80 overflow-y-auto\">\n {filteredOptions.length > 0 ? (\n filteredOptions.map((dropDownOption, index) => dropDownOptionJsx(dropDownOption, index))\n ) : (\n <div className=\"px-3 py-4 text-center text-[var(--color-gray-500)] text-sm\" role=\"status\" aria-live=\"polite\">{searchResultEmptyMessage}</div>\n )}\n </div>\n </div>\n );\n };\n\n const handleMultiSelectDropdownOptionClick = (isSelected: boolean, dropDownOption: DropdownValue) => {\n let newSelectedDropDownValues: DropdownValue[] = [];\n if (isSelected) {\n newSelectedDropDownValues = [...selectedDropDownValues, dropDownOption];\n } else {\n newSelectedDropDownValues = selectedDropDownValues?.filter(\n (option) => option[optionsUniqueBy] !== dropDownOption[optionsUniqueBy]\n );\n }\n setSelectedDropDownValues(newSelectedDropDownValues);\n };\n\n const handleApplySelectedDropDownValues = () => {\n popoverRef.current?.togglePopover();\n props?.onApply?.(selectedDropDownValues);\n };\n\n const multiSelectDropdownOptionJSX = (dropDownOption: DropdownValue) => {\n const isOptionSelected = selectedDropDownValues.some(\n (option) => option[optionsUniqueBy] === dropDownOption[optionsUniqueBy]\n );\n return (\n <div\n key={`$drop-option-${crypto.randomUUID()}`}\n className=\"option px-3 py-2 hover:bg-gray-100 cursor-pointer flex items-center justify-between\"\n >\n <Checkbox\n automationId=\"checkbox\"\n className=\"checkbox\"\n defaultChecked={isOptionSelected}\n onChange={(value) => handleMultiSelectDropdownOptionClick(value, dropDownOption)}\n label={dropDownOption?.label}\n />\n </div>\n );\n };\n\n const renderMultiSelectDropdownContents = () => {\n const filteredOptions = getFilteredOptions();\n return (\n <div className=\"dropdown-content dropdown-options\" role=\"listbox\" aria-label=\"Multi-select dropdown options\" aria-multiselectable=\"true\">\n {shouldShowSearch && renderSearchBar()}\n <div className=\"flex flex-col max-h-80 overflow-y-auto\">\n {filteredOptions.length > 0 ? (\n filteredOptions.map((dropDownOption) => multiSelectDropdownOptionJSX(dropDownOption))\n ) : (\n <div className=\"px-3 py-4 text-center text-[var(--color-gray-500)] text-sm\" role=\"status\" aria-live=\"polite\">{searchResultEmptyMessage}</div>\n )}\n </div>\n <div className=\"flex items-center justify-end gap-4 p-3 border-t border-[var(--color-gray-200)]\">\n <Button label=\"Clear\" type=\"link\" size=\"sm\" onClick={clearSelectedDropDownValues} />\n <Button label=\"Apply\" type=\"primary\" size=\"sm\" onClick={handleApplySelectedDropDownValues} />\n </div>\n </div>\n );\n };\n\n const renderDropdownSelect = () => {\n const borderColor = isDropDownOpen\n ? 'border-[var(--color-blue-500)]'\n : disabled\n ? 'border-[var(--color-gray-300)]'\n : 'border-[var(--color-gray-600)]';\n const errorBorderColor = hasError ? 'border-[var(--color-red-500)]' : '';\n const dropDownSelectClass = `dropdown-src-element bg-[var(--color-white)] flex px-3 py-2 ${\n isBorderless ? 'border-0' : `border rounded-md ${errorBorderColor ? errorBorderColor : borderColor}`\n } flex items-center ${dropdownClassName}`;\n const selectedValue = selectedDropDownValues[0]?.[selectBy] || defaultText;\n const ariaLabel = props?.label ? `${props.label}: ${selectedValue}` : `Select option, currently selected: ${selectedValue}`;\n\n return (\n <div \n className={dropDownSelectClass}\n role=\"combobox\"\n aria-expanded={isDropDownOpen}\n aria-haspopup=\"listbox\"\n aria-label={ariaLabel}\n aria-disabled={disabled}\n >\n <div\n className=\"flex-1 min-w-0\"\n data-automation-id={props?.dropDownSelectAutomationId || 'selected-dropdown-value'}\n >\n {optionChip(selectedDropDownValues[0], true)}\n </div>\n <div className=\"flex-shrink-0 ml-2\" aria-hidden=\"true\">\n <Icon\n name={'chevron'}\n rotation={isDropDownOpen ? '180' : '0'}\n className={`transition-transform`}\n stroke={iconColor}\n />\n </div>\n </div>\n );\n };\n\n return (\n <div\n className={`se-design-dropdown-container${props?.className ? ` ${props?.className}` : ''}`}\n style={props?.style}\n >\n {props?.label && (\n <div className=\"se-design-dropdown-label mb-[3px] text-[var(--color-gray-700)] text-sm\">{props?.label}</div>\n )}\n <div\n style={props?.style}\n className={`${disabled ? 'bg-[var(--color-gray-50)] rounded-md cursor-not-allowed' : ''}`}\n >\n <Popover\n ref={popoverRef}\n renderPopoverContents={\n customDropdownContent\n ? customDropdownContent\n : isMultiSelect\n ? renderMultiSelectDropdownContents\n : renderDropdownContents\n }\n contentWidth={'full'}\n renderPopoverSrcElement={renderDropdownSelect}\n onPopoverToggle={(value) => setIsDropDownOpen(value)}\n disabled={disabled}\n automationId={props?.dropDownSrcAutomationId}\n popoverContentAutomationId={props?.dropDownContentAutomationId}\n />\n </div>\n {hasError && <div className=\"text-[var(--color-red-500)] text-sm\">{errorMessage}</div>}\n </div>\n );\n};\n"],"names":["React__default","useState","useRef","useEffect","Popover","Icon","Checkbox","Button","InputWithIcon","Dropdown","props","isDropDownOpen","setIsDropDownOpen","searchQuery","setSearchQuery","selectedDropDownValues","setSelectedDropDownValues","defaultSelectedValue","Array","isArray","popoverRef","selectBy","optionsUniqueBy","displaySelected","dropDownOptions","defaultText","iconColor","disabled","dropdownClassName","hasError","errorMessage","customDropdownContent","isBorderless","shouldShowSearch","searchPlaceholder","searchResultEmptyMessage","newValues","isMultiSelect","type","getFilteredOptions","trim","filter","option","toString","toLowerCase","includes","handleDropDownOptionClick","dropDownOption","current","togglePopover","onOptionClick","getSelectedDropDownValue","clearSelectedDropDownValues","optionChip","srcOption","renderOptionChip","length","firstSelectedLabel","remainingCount","React","createElement","className","renderSearchBar","leftIcon","name","position","style","color","value","onChange","placeholder","margin","gap","inputStyle","width","border","outline","dropDownOptionJsx","index","optionTxt","dropDownSelectedValue","selectByUniqueId","isOptionSelected","key","crypto","randomUUID","onClick","onKeyDown","e","preventDefault","role","tabIndex","automationId","stroke","renderDropdownContents","filteredOptions","map","handleMultiSelectDropdownOptionClick","isSelected","newSelectedDropDownValues","handleApplySelectedDropDownValues","onApply","multiSelectDropdownOptionJSX","some","defaultChecked","label","renderMultiSelectDropdownContents","size","renderDropdownSelect","borderColor","errorBorderColor","dropDownSelectClass","selectedValue","ariaLabel","dropDownSelectAutomationId","rotation","ref","renderPopoverContents","contentWidth","renderPopoverSrcElement","onPopoverToggle","dropDownSrcAutomationId","popoverContentAutomationId","dropDownContentAutomationId"],"mappings":"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"}
1
+ {"version":3,"file":"index23.js","sources":["../src/components/Checkbox/index.tsx"],"sourcesContent":["import React, { FC, useState, useEffect } from 'react';\nimport { useStableId } from '../../utils/useStableId';\nimport { getA11yNameAttributes } from '../../utils/a11y';\nimport { mergeIds } from '../../utils/mergeIds';\nimport './style.scss';\n\nexport interface CheckboxProps {\n className?: string;\n automationId?: string;\n defaultChecked?: boolean;\n /**\n * Controlled checked value. When provided, the checkbox is controlled by the parent\n * and its visual state always reflects this prop. Use `onChange` to update the parent state.\n */\n checked?: boolean;\n onChange?: (checked: boolean, e: React.ChangeEvent<HTMLInputElement>) => void;\n disabled?: boolean;\n checkMarkType?: 'tick' | 'minus-checkbox' | '';\n label?: string;\n disabledLabel?: string;\n containerAutomationId?: string;\n /**\n * Explicit accessible name for the checkbox.\n * Used as fallback when ariaLabelledBy is not provided and no internal label exists.\n */\n ariaLabel?: string;\n /**\n * ID(s) of element(s) that label this checkbox (for screen reader association).\n * Typically used when checkbox is part of a larger labelled context.\n */\n ariaLabelledBy?: string;\n /**\n * ID(s) of element(s) that describe this checkbox (provides additional context).\n * Often used for help text or instructions.\n */\n ariaDescribedBy?: string;\n /**\n * ID of the element controlled by this checkbox (e.g. an expandable region).\n */\n ariaControls?: string;\n /**\n * Override the default tabIndex. Pass -1 when the checkbox is used as a\n * visual-only indicator inside a composite widget (e.g. listbox option).\n */\n tabIndex?: number;\n /**\n * When true, sets aria-hidden=\"true\" on the checkbox container so the\n * checkbox role and state are hidden from assistive technology. Use when\n * the checkbox is purely visual (e.g. inside a role=\"option\" that already\n * conveys selection state via aria-selected).\n */\n ariaHidden?: boolean;\n}\n\nexport const Checkbox: FC<CheckboxProps> = ({\n className = '',\n automationId = '',\n defaultChecked = false,\n checked,\n disabled = false,\n onChange,\n checkMarkType = '',\n label = '',\n disabledLabel = '',\n containerAutomationId = '',\n ariaLabel,\n ariaLabelledBy,\n ariaDescribedBy,\n ariaControls,\n tabIndex: tabIndexProp,\n ariaHidden = false\n}) => {\n const isControlled = checked !== undefined;\n const [isChecked, setIsChecked] = useState(isControlled ? checked : defaultChecked);\n\n useEffect(() => {\n if (isControlled) {\n setIsChecked(checked!);\n } else {\n setIsChecked(defaultChecked);\n }\n }, [checked, defaultChecked]);\n\n const handleClick = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (disabled) return;\n if (!isControlled) {\n setIsChecked((prev) => !prev);\n }\n onChange?.(isControlled ? !checked : !isChecked, e);\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLLabelElement | HTMLSpanElement>) => {\n if (disabled) return;\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n const newChecked = isControlled ? !checked : !isChecked;\n if (!isControlled) {\n setIsChecked(newChecked);\n }\n\n // Create a proper synthetic event for the onChange callback\n const inputElement = e.currentTarget.closest('label')?.querySelector('input');\n if (inputElement) {\n const syntheticEvent = {\n target: inputElement,\n currentTarget: inputElement\n } as React.ChangeEvent<HTMLInputElement>;\n onChange?.(newChecked, syntheticEvent);\n }\n }\n };\n\n const getCheckBoxClassName = () => {\n // Handle disabled states with proper checked status\n if (disabled) {\n if (isChecked && checkMarkType === 'tick') return 'disabled-tick';\n if (isChecked && checkMarkType === 'minus-checkbox') return 'disabled-minus-checkbox';\n if (isChecked && !checkMarkType) return 'disabled-tick'; // Default to tick for checked disabled\n return 'disabled-default'; // Unchecked disabled\n }\n\n // Handle enabled states\n if (checkMarkType === 'minus-checkbox' && isChecked) return 'minus-checkbox';\n return isChecked ? 'checked' : 'unchecked';\n };\n\n const getLabelClassName = () => {\n return disabled ? 'checkbox-label-disabled' : 'checkbox-label';\n };\n\n const getLabelText = () => {\n if (disabled && disabledLabel) {\n return disabledLabel;\n }\n return label;\n };\n\n // Generate stable IDs (persists across renders)\n const inputId = useStableId(undefined, 'checkbox-input');\n const labelId = label ? `${inputId}-label` : undefined;\n\n const a11yNameAttributes = getA11yNameAttributes({\n ariaLabelledBy: mergeIds(labelId, ariaLabelledBy),\n ariaLabel,\n ariaDescribedBy\n });\n\n // Determine aria-checked value: \"mixed\" for indeterminate, \"true\" for checked, \"false\" for unchecked\n const getAriaChecked = () => {\n if (checkMarkType === 'minus-checkbox' && isChecked) {\n return 'mixed'; // Indeterminate/half-checked state\n }\n return isChecked ? 'true' : 'false';\n };\n\n return (\n <div className=\"se-design-checkbox-ctn\" aria-hidden={ariaHidden ? 'true' : undefined}>\n <label\n role=\"checkbox\"\n htmlFor={inputId}\n className={`se-design-checkbox ${className} ${getCheckBoxClassName()}`}\n data-automation-id={containerAutomationId || 'checkbox-container'}\n tabIndex={tabIndexProp !== undefined ? tabIndexProp : disabled ? -1 : 0}\n aria-checked={getAriaChecked()}\n aria-disabled={disabled ? 'true' : 'false'}\n aria-controls={ariaControls}\n {...a11yNameAttributes}\n onKeyDown={handleKeyDown}\n >\n <input\n id={inputId}\n type=\"checkbox\"\n checked={isChecked}\n onChange={handleClick}\n disabled={disabled}\n tabIndex={-1}\n aria-hidden=\"true\"\n />\n <span className=\"checkbox-item\" data-automation-id={automationId}></span>\n {getLabelText()?.length > 0 && (\n <span\n id={labelId}\n className={getLabelClassName()}\n data-automation-id={automationId || (label ? `checkbox-label-${label}` : 'checkbox-label')}\n >\n {getLabelText()}\n </span>\n )}\n </label>\n </div>\n );\n};\n"],"names":["Checkbox","className","automationId","defaultChecked","checked","disabled","onChange","checkMarkType","label","disabledLabel","containerAutomationId","ariaLabel","ariaLabelledBy","ariaDescribedBy","ariaControls","tabIndex","tabIndexProp","ariaHidden","isControlled","undefined","isChecked","setIsChecked","useState","useEffect","handleClick","e","prev","handleKeyDown","key","preventDefault","stopPropagation","newChecked","inputElement","currentTarget","closest","querySelector","target","getCheckBoxClassName","getLabelClassName","getLabelText","inputId","useStableId","labelId","a11yNameAttributes","getA11yNameAttributes","mergeIds","getAriaChecked","React","createElement","_extends","role","htmlFor","onKeyDown","id","type","length"],"mappings":"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"}