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/index21.js CHANGED
@@ -1,48 +1,36 @@
1
- import o, { useState as g, useEffect as E } from "react";
2
- /* empty css */
3
- const I = ({
4
- className: l = "",
5
- automationId: m = "",
6
- defaultChecked: s = !1,
7
- disabled: t = !1,
8
- onChange: b,
9
- checkMarkType: c = "",
10
- label: x = "",
11
- disabledLabel: a = "",
12
- containerAutomationId: d = ""
13
- }) => {
14
- const [e, i] = g(s);
15
- E(() => {
16
- i(s);
17
- }, [s]);
18
- const h = (n) => {
19
- t || (i((u) => !u), b?.(!e, n));
20
- }, f = () => {
21
- const n = "focus-visible:outline outline-2 outline-[var(--color-blue-400)] outline-offset-2 rounded";
22
- return t ? e && c === "tick" ? "disabled-tick" : e && c === "minus-checkbox" ? "disabled-minus-checkbox" : e && !c ? "disabled-tick" : "disabled-default" : c === "minus-checkbox" && e ? `minus-checkbox ${n}` : e ? `checked ${n}` : `unchecked ${n}`;
23
- }, k = () => t ? "checkbox-label-disabled" : "checkbox-label", C = () => t && a ? a : x, r = crypto.randomUUID();
24
- return /* @__PURE__ */ o.createElement("div", {
25
- className: "se-design-checkbox-ctn"
26
- }, /* @__PURE__ */ o.createElement("label", {
27
- htmlFor: r,
28
- className: `se-design-checkbox ${l} ${f()}`,
29
- "data-automation-id": d || "checkbox-container",
30
- tabIndex: t ? -1 : 0
31
- }, /* @__PURE__ */ o.createElement("input", {
32
- id: r,
33
- type: "checkbox",
34
- checked: e,
35
- onChange: h,
36
- disabled: t
37
- }), /* @__PURE__ */ o.createElement("span", {
38
- className: "checkbox-item",
39
- "data-automation-id": m
40
- }), /* @__PURE__ */ o.createElement("span", {
41
- className: k(),
42
- "data-automation-id": "checkbox-label"
43
- }, C())));
44
- };
1
+ import e from "react";
2
+ import { Popover as l } from "./index19.js";
3
+ import { Icon as s } from "./index6.js";
4
+ const t = {
5
+ base: "se-design-hamburger-menu rounded-[6px] transition-all duration-300 p-[3px] flex items-center",
6
+ active: "bg-[var(--color-blue-450)]",
7
+ hover: "hover:bg-[var(--color-blue-450)]"
8
+ }, u = ({
9
+ className: a = "",
10
+ automationId: n = "",
11
+ popoverContentAutomationId: m = "",
12
+ menuContent: o,
13
+ popoverClassName: c = ""
14
+ }) => /* @__PURE__ */ e.createElement(l, {
15
+ className: a,
16
+ position: "bottom-left",
17
+ automationId: n,
18
+ popoverContentAutomationId: m,
19
+ renderPopoverSrcElement: ({
20
+ displayPopover: r
21
+ }) => /* @__PURE__ */ e.createElement("div", {
22
+ className: `${t.base} ${r ? t.active : ""} ${t.hover}`
23
+ }, /* @__PURE__ */ e.createElement(s, {
24
+ name: "hamburger",
25
+ stroke: "var(--color-white)"
26
+ })),
27
+ renderPopoverContents: (r) => /* @__PURE__ */ e.createElement("div", {
28
+ className: `min-w-[212px] ${c}`
29
+ }, o && /* @__PURE__ */ e.createElement("div", {
30
+ className: "menu-content"
31
+ }, o(r)))
32
+ });
45
33
  export {
46
- I as Checkbox
34
+ u as HamburgerMenu
47
35
  };
48
36
  //# sourceMappingURL=index21.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index21.js","sources":["../src/components/Checkbox/index.tsx"],"sourcesContent":["import React, { FC, useState, useEffect } from 'react';\nimport './style.scss';\n\nexport interface CheckboxProps {\n className?: string;\n automationId?: string;\n defaultChecked?: 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\nexport const Checkbox: FC<CheckboxProps> = ({\n className = '',\n automationId = '',\n defaultChecked = false,\n disabled = false,\n onChange,\n checkMarkType = '',\n label = '',\n disabledLabel = '',\n containerAutomationId = ''\n}) => {\n const [isChecked, setIsChecked] = useState(defaultChecked);\n\n useEffect(() => {\n setIsChecked(defaultChecked);\n }, [defaultChecked]);\n\n const handleClick = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (disabled) return;\n setIsChecked((prev) => (checkMarkType === 'minus-checkbox' ? !prev : !prev));\n onChange?.(!isChecked, e);\n };\n\n const getCheckBoxClassName = () => {\n const focusClass = 'focus-visible:outline outline-2 outline-[var(--color-blue-400)] outline-offset-2 rounded';\n\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 ${focusClass}`;\n return isChecked ? `checked ${focusClass}` : `unchecked ${focusClass}`;\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 const uniqueId = crypto.randomUUID();\n\n return (\n <div className=\"se-design-checkbox-ctn\">\n <label\n htmlFor={uniqueId}\n className={`se-design-checkbox ${className} ${getCheckBoxClassName()}`}\n data-automation-id={containerAutomationId || 'checkbox-container'}\n tabIndex={disabled ? -1 : 0}\n >\n <input\n id={uniqueId}\n type=\"checkbox\"\n checked={isChecked}\n onChange={handleClick}\n disabled={disabled}\n />\n <span className=\"checkbox-item\" data-automation-id={automationId}></span>\n <span className={getLabelClassName()} data-automation-id=\"checkbox-label\">{getLabelText()}</span>\n </label>\n </div>\n );\n};\n"],"names":["Checkbox","className","automationId","defaultChecked","disabled","onChange","checkMarkType","label","disabledLabel","containerAutomationId","isChecked","setIsChecked","useState","useEffect","handleClick","e","prev","getCheckBoxClassName","focusClass","getLabelClassName","getLabelText","uniqueId","crypto","randomUUID","React","createElement","htmlFor","tabIndex","id","type","checked"],"mappings":";;AAeO,MAAMA,IAA8BA,CAAC;AAAA,EAC1CC,WAAAA,IAAY;AAAA,EACZC,cAAAA,IAAe;AAAA,EACfC,gBAAAA,IAAiB;AAAA,EACjBC,UAAAA,IAAW;AAAA,EACXC,UAAAA;AAAAA,EACAC,eAAAA,IAAgB;AAAA,EAChBC,OAAAA,IAAQ;AAAA,EACRC,eAAAA,IAAgB;AAAA,EAChBC,uBAAAA,IAAwB;AAC1B,MAAM;AACJ,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAST,CAAc;AAEzDU,EAAAA,EAAU,MAAM;AACdF,IAAAA,EAAaR,CAAc;AAAA,EAAA,GAC1B,CAACA,CAAc,CAAC;AAEbW,QAAAA,IAAcA,CAACC,MAA2C;AAC9D,IAAIX,MACJO,EAAcK,OAA+C,CAACA,CAAa,GAChEX,IAAA,CAACK,GAAWK,CAAC;AAAA,EAAA,GAGpBE,IAAuBA,MAAM;AACjC,UAAMC,IAAa;AAGnB,WAAId,IACEM,KAAaJ,MAAkB,SAAe,kBAC9CI,KAAaJ,MAAkB,mBAAyB,4BACxDI,KAAa,CAACJ,IAAsB,kBACjC,qBAILA,MAAkB,oBAAoBI,IAAkB,kBAAkBQ,CAAU,KACjFR,IAAY,WAAWQ,CAAU,KAAK,aAAaA,CAAU;AAAA,EAAA,GAGhEC,IAAoBA,MACjBf,IAAW,4BAA4B,kBAG1CgB,IAAeA,MACfhB,KAAYI,IACPA,IAEFD,GAEHc,IAAWC,OAAOC;AAGtBC,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKxB,WAAU;AAAA,EAAA,GACbwB,gBAAAA,EAAAA,cAAA,SAAA;AAAA,IACEC,SAASL;AAAAA,IACTpB,WAAW,sBAAsBA,CAAS,IAAIgB,EAAsB,CAAA;AAAA,IACpE,sBAAoBR,KAAyB;AAAA,IAC7CkB,UAAUvB,IAAW,KAAK;AAAA,EAAA,GAE1BqB,gBAAAA,EAAAA,cAAA,SAAA;AAAA,IACEG,IAAIP;AAAAA,IACJQ,MAAK;AAAA,IACLC,SAASpB;AAAAA,IACTL,UAAUS;AAAAA,IACVV,UAAAA;AAAAA,EAAAA,CACD,GACDqB,gBAAAA,EAAAA,cAAA,QAAA;AAAA,IAAMxB,WAAU;AAAA,IAAgB,sBAAoBC;AAAAA,EAAAA,CAAoB,GACxEuB,gBAAAA,EAAAA,cAAA,QAAA;AAAA,IAAMxB,WAAWkB,EAAkB;AAAA,IAAG,sBAAmB;AAAA,EAAA,GAAkBC,EAAAA,CAAqB,CAC3F,CACJ;AAET;"}
1
+ {"version":3,"file":"index21.js","sources":["../src/components/HamburgerMenu/index.tsx"],"sourcesContent":["import React, { FC } from 'react';\n\nimport { Popover } from 'src/components/Popover';\nimport { Icon } from 'src/components/Icon';\nexport interface HamburgerMenuProps {\n className?: string;\n automationId?: string;\n popoverContentAutomationId?: string;\n menuContent?: (data: any) => React.ReactNode;\n popoverClassName?: string;\n}\n\nconst menuClasses = {\n base: 'se-design-hamburger-menu rounded-[6px] transition-all duration-300 p-[3px] flex items-center',\n active: 'bg-[var(--color-blue-450)]',\n hover: 'hover:bg-[var(--color-blue-450)]'\n};\n\nexport const HamburgerMenu: FC<HamburgerMenuProps> = ({\n className = '',\n automationId = '',\n popoverContentAutomationId = '',\n menuContent,\n popoverClassName = ''\n}) => {\n\n return (\n <Popover\n className={className}\n position='bottom-left'\n automationId={automationId}\n popoverContentAutomationId={popoverContentAutomationId}\n renderPopoverSrcElement={({ displayPopover }) => (\n <div className={`${menuClasses.base} ${displayPopover ? menuClasses.active : ''} ${menuClasses.hover}`}>\n <Icon name='hamburger' stroke={'var(--color-white)'} />\n </div>\n )}\n renderPopoverContents={(data) => (\n <div className={`min-w-[212px] ${popoverClassName}`}>\n {menuContent && <div className='menu-content'>{menuContent(data)}</div>}\n </div>\n )}\n />\n );\n};\n"],"names":["React__default","Popover","Icon","menuClasses","base","active","hover","HamburgerMenu","className","automationId","popoverContentAutomationId","menuContent","popoverClassName","React","createElement","position","renderPopoverSrcElement","displayPopover","name","stroke","renderPopoverContents","data"],"mappings":"AAYA,OAAAA,OAAA;AAAA,SAAA,WAAAC,SAAA;AAAA,SAAA,QAAAC,SAAA;AAAA,MAAMC,IAAc;AAAA,EAClBC,MAAM;AAAA,EACNC,QAAQ;AAAA,EACRC,OAAO;AACT,GAEaC,IAAwCA,CAAC;AAAA,EACpDC,WAAAA,IAAY;AAAA,EACZC,cAAAA,IAAe;AAAA,EACfC,4BAAAA,IAA6B;AAAA,EAC7BC,aAAAA;AAAAA,EACAC,kBAAAA,IAAmB;AACrB,MAGIC,gBAAAA,EAAAC,cAACb,GAAO;AAAA,EACNO,WAAAA;AAAAA,EACAO,UAAS;AAAA,EACTN,cAAAA;AAAAA,EACAC,4BAAAA;AAAAA,EACAM,yBAAyBA,CAAC;AAAA,IAAEC,gBAAAA;AAAAA,EAAAA,MAC1BJ,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKN,WAAW,GAAGL,EAAYC,IAAI,IAAIa,IAAiBd,EAAYE,SAAS,EAAE,IAAIF,EAAYG,KAAK;AAAA,EAAA,GAClGO,gBAAAA,EAAAC,cAACZ,GAAI;AAAA,IAACgB,MAAK;AAAA,IAAYC,QAAQ;AAAA,EAAA,CAAuB,CACnD;AAAA,EAEPC,uBAAwBC,CAAAA,MACtBR,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKN,WAAW,iBAAiBI,CAAgB;AAAA,EAAA,GAC9CD,KAAeE,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKN,WAAU;AAAA,EAAA,GAAgBG,EAAYU,CAAI,CAAO,CACnE;AAAA,CAER;"}
@@ -0,0 +1,31 @@
1
+ import { useCallback as y, useEffect as d } from "react";
2
+ function p({
3
+ containerRef: E,
4
+ onDismiss: e,
5
+ enabled: t = !0,
6
+ useDocumentListener: u = !1,
7
+ preventDefault: c = !0,
8
+ stopPropagation: n = !0
9
+ }) {
10
+ const f = y((r) => {
11
+ !t || !e || r.key !== "Escape" || (c && r.preventDefault(), n && r.stopPropagation(), e());
12
+ }, [t, e, c, n]);
13
+ return d(() => {
14
+ if (!u || !t || !e) return;
15
+ const r = E?.current, a = (o) => {
16
+ o.key === "Escape" && (r && !r.contains(document.activeElement) || (c && o.preventDefault(), n && o.stopPropagation(), e()));
17
+ };
18
+ return document.addEventListener("keydown", a, {
19
+ capture: !0
20
+ }), () => document.removeEventListener("keydown", a, {
21
+ capture: !0
22
+ });
23
+ }, [u, t, e, E, c, n]), {
24
+ onKeyDown: u ? () => {
25
+ } : f
26
+ };
27
+ }
28
+ export {
29
+ p as useDismissOnEscape
30
+ };
31
+ //# sourceMappingURL=index215.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index215.js","sources":["../src/utils/a11y/useDismissOnEscape.ts"],"sourcesContent":["import { useCallback, useEffect } from 'react';\nimport type { RefObject } from 'react';\n\nexport interface UseDismissOnEscapeOptions<T extends HTMLElement = HTMLElement> {\n /**\n * Container element ref — used for focus-check in document-level mode,\n * and for the returned onKeyDown in React-event mode.\n */\n containerRef?: RefObject<T | null>;\n /**\n * Callback when Escape key is pressed.\n */\n onDismiss?: () => void;\n /**\n * Whether the Escape handler is active.\n * Default: true\n */\n enabled?: boolean;\n /**\n * Use a native document-level capture listener instead of React's event system.\n * Only use this when React events can't reach the container (e.g. portals outside\n * the container's DOM tree). Prefer the default (false) for layered dismiss support.\n * Default: false\n */\n useDocumentListener?: boolean;\n /**\n * Whether to call e.preventDefault() on Escape.\n * Default: true\n */\n preventDefault?: boolean;\n /**\n * Whether to call e.stopPropagation() on Escape.\n * In React-event mode this is the layered-dismiss mechanism — set false only if\n * you want the event to continue bubbling to a parent dismiss handler.\n * Default: true\n */\n stopPropagation?: boolean;\n}\n\nexport interface UseDismissOnEscapeReturn {\n /**\n * Spread on the container element. In document-listener mode this is a no-op object.\n */\n onKeyDown: (e: React.KeyboardEvent) => void;\n}\n\n/**\n * Hook to handle Escape key dismissal.\n *\n * Default mode: returns an onKeyDown handler for the container element.\n * Uses React's synthetic events so child stopPropagation() is respected,\n * enabling layered dismiss (e.g. dropdown closes before sidebar).\n *\n * Document-listener mode (useDocumentListener: true): registers a native\n * capture listener on document. Use only when focus may be in a portal\n * outside the container's DOM tree.\n */\nexport function useDismissOnEscape<T extends HTMLElement = HTMLElement>({\n containerRef,\n onDismiss,\n enabled = true,\n useDocumentListener = false,\n preventDefault = true,\n stopPropagation = true,\n}: UseDismissOnEscapeOptions<T>): UseDismissOnEscapeReturn {\n // React-event mode: return handler to spread on container\n const onKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n if (!enabled || !onDismiss || e.key !== 'Escape') return;\n preventDefault && e.preventDefault();\n stopPropagation && e.stopPropagation();\n onDismiss();\n },\n [enabled, onDismiss, preventDefault, stopPropagation]\n );\n\n // Document-listener mode: native capture handler\n useEffect(() => {\n if (!useDocumentListener || !enabled || !onDismiss) return;\n\n const container = containerRef?.current;\n\n const handleEscape = (e: KeyboardEvent) => {\n if (e.key !== 'Escape') return;\n // Only fire if focus is within the container (if provided)\n if (container && !container.contains(document.activeElement)) return;\n preventDefault && e.preventDefault();\n stopPropagation && e.stopPropagation();\n onDismiss();\n };\n\n document.addEventListener('keydown', handleEscape, { capture: true });\n return () => document.removeEventListener('keydown', handleEscape, { capture: true });\n }, [useDocumentListener, enabled, onDismiss, containerRef, preventDefault, stopPropagation]);\n\n return { onKeyDown: useDocumentListener ? (() => {}) : onKeyDown };\n}\n"],"names":["useCallback","useEffect","useDismissOnEscape","containerRef","onDismiss","enabled","useDocumentListener","preventDefault","stopPropagation","onKeyDown","e","key","container","current","handleEscape","contains","document","activeElement","addEventListener","capture","removeEventListener"],"mappings":"AAyDO,SAAA,eAAAA,GAAA,aAAAC,SAAA;AAAA,SAASC,EAAwD;AAAA,EACtEC,cAAAA;AAAAA,EACAC,WAAAA;AAAAA,EACAC,SAAAA,IAAU;AAAA,EACVC,qBAAAA,IAAsB;AAAA,EACtBC,gBAAAA,IAAiB;AAAA,EACjBC,iBAAAA,IAAkB;AACU,GAA6B;AAEzD,QAAMC,IAAYT,EAChB,CAACU,MAA2B;AAC1B,IAAI,CAACL,KAAW,CAACD,KAAaM,EAAEC,QAAQ,aACxCJ,KAAkBG,EAAEH,eAAAA,GACpBC,KAAmBE,EAAEF,gBAAAA,GACrBJ,EAAAA;AAAAA,EACF,GACA,CAACC,GAASD,GAAWG,GAAgBC,CAAe,CACtD;AAGAP,SAAAA,EAAU,MAAM;AACd,QAAI,CAACK,KAAuB,CAACD,KAAW,CAACD,EAAW;AAEpD,UAAMQ,IAAYT,GAAcU,SAE1BC,IAAeA,CAACJ,MAAqB;AACzC,MAAIA,EAAEC,QAAQ,aAEVC,KAAa,CAACA,EAAUG,SAASC,SAASC,aAAa,MAC3DV,KAAkBG,EAAEH,eAAAA,GACpBC,KAAmBE,EAAEF,gBAAAA,GACrBJ,EAAAA;AAAAA,IACF;AAEAY,oBAASE,iBAAiB,WAAWJ,GAAc;AAAA,MAAEK,SAAS;AAAA,IAAA,CAAM,GAC7D,MAAMH,SAASI,oBAAoB,WAAWN,GAAc;AAAA,MAAEK,SAAS;AAAA,IAAA,CAAM;AAAA,EACtF,GAAG,CAACb,GAAqBD,GAASD,GAAWD,GAAcI,GAAgBC,CAAe,CAAC,GAEpF;AAAA,IAAEC,WAAWH,IAAuB,MAAM;AAAA,IAAC,IAAKG;AAAAA,EAAAA;AACzD;"}
@@ -0,0 +1,75 @@
1
+ import { useRef as a, useLayoutEffect as m, useEffect as g } from "react";
2
+ import { getFirstFocusableElement as d, getLastFocusableElement as F } from "./index71.js";
3
+ import { consumeFocusAnchor as I, consumeLastInteractedElement as E } from "./index72.js";
4
+ const f = {
5
+ position: "absolute",
6
+ opacity: 0,
7
+ pointerEvents: "none",
8
+ width: 0,
9
+ height: 0
10
+ };
11
+ function T({
12
+ isOpen: o,
13
+ isModal: i,
14
+ containerRef: e,
15
+ returnFocusRef: l
16
+ }) {
17
+ const c = a(null), r = a(null), u = a(null);
18
+ return m(() => {
19
+ if (i || !o) return;
20
+ const t = l?.current ?? I() ?? E() ?? document.activeElement;
21
+ if (!(!t || t === document.body) && t.tagName !== "IFRAME")
22
+ return c.current = t, u.current && (u.current.tabIndex = 0), () => {
23
+ u.current && (u.current.tabIndex = -1);
24
+ };
25
+ }, [o, i]), g(() => {
26
+ if (i || !o || !c.current) return;
27
+ const t = requestAnimationFrame(() => {
28
+ (d({
29
+ container: e.current
30
+ }) ?? e.current)?.focus(), r.current && (r.current.tabIndex = 0);
31
+ });
32
+ return () => {
33
+ cancelAnimationFrame(t), r.current && (r.current.tabIndex = -1);
34
+ const s = c.current;
35
+ c.current = null, s?.isConnected && requestAnimationFrame(() => s.focus());
36
+ };
37
+ }, [o, i]), {
38
+ startSentinelProps: {
39
+ ref: r,
40
+ tabIndex: -1,
41
+ style: f,
42
+ "aria-hidden": !0,
43
+ "data-focus-sentinel": "start",
44
+ onFocus: (t) => {
45
+ if (e.current?.contains(t.relatedTarget) && t.relatedTarget !== e.current) {
46
+ const n = c.current;
47
+ n?.isConnected && n.focus();
48
+ } else
49
+ r.current && (r.current.tabIndex = -1), (d({
50
+ container: e.current
51
+ }) ?? e.current)?.focus();
52
+ }
53
+ },
54
+ endSentinelProps: {
55
+ ref: u,
56
+ tabIndex: -1,
57
+ style: f,
58
+ "aria-hidden": !0,
59
+ "data-focus-sentinel": "end",
60
+ onFocus: (t) => {
61
+ if (e.current?.contains(t.relatedTarget) && t.relatedTarget !== e.current) {
62
+ const n = c.current;
63
+ n?.isConnected && n.focus();
64
+ } else
65
+ (F({
66
+ container: e.current
67
+ }) ?? e.current)?.focus();
68
+ }
69
+ }
70
+ };
71
+ }
72
+ export {
73
+ T as useFocusSentinel
74
+ };
75
+ //# sourceMappingURL=index216.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index216.js","sources":["../src/utils/a11y/useFocusSentinel.ts"],"sourcesContent":["import { useRef, useEffect, useLayoutEffect } from 'react';\n\nimport { getFirstFocusableElement, getLastFocusableElement } from './focusableElements';\nimport { consumeLastInteractedElement, consumeFocusAnchor } from './useFocusTrap';\n\nconst SENTINEL_STYLE: React.CSSProperties = {\n position: 'absolute',\n opacity: 0,\n pointerEvents: 'none',\n width: 0,\n height: 0,\n};\n\nexport interface UseFocusSentinelOptions {\n /** Whether the panel is currently open. */\n isOpen: boolean | undefined;\n /**\n * When true the hook is a no-op — dialog mode (focus trap) handles focus management instead.\n */\n isModal: boolean;\n /** Ref to the panel container element. */\n containerRef: React.RefObject<HTMLElement | null>;\n /**\n * Explicit element to restore focus to on close.\n * Overrides the automatic trigger capture.\n */\n returnFocusRef?: React.RefObject<HTMLElement | null>;\n}\n\nexport interface SentinelProps {\n ref: React.RefObject<HTMLDivElement | null>;\n tabIndex: number;\n style: React.CSSProperties;\n 'aria-hidden': true;\n 'data-focus-sentinel': 'start' | 'end';\n onFocus: (e: React.FocusEvent) => void;\n}\n\nexport interface UseFocusSentinelReturn {\n /** Spread onto an invisible div placed before the panel content. */\n startSentinelProps: SentinelProps;\n /** Spread onto an invisible div placed after the panel content. */\n endSentinelProps: SentinelProps;\n}\n\n/**\n * Focus management for complementary (non-modal) side panels.\n *\n * Moves focus into the panel on open, restores it to the trigger on close,\n * and wraps Tab / Shift+Tab back to the trigger when focus reaches either end.\n *\n * Sentinel tabIndex values are mutated imperatively (no state) to avoid\n * re-renders. React does not touch a DOM attribute unless the JSX prop value\n * changes, so the initial tabIndex={-1} in the returned props is safe.\n */\nexport function useFocusSentinel({\n isOpen,\n isModal,\n containerRef,\n returnFocusRef,\n}: UseFocusSentinelOptions): UseFocusSentinelReturn {\n const triggerRef = useRef<HTMLElement | null>(null);\n const startSentinelRef = useRef<HTMLDivElement>(null);\n const endSentinelRef = useRef<HTMLDivElement>(null);\n\n // Capture trigger before React commits (document.activeElement is still the opener).\n // Body focus = page-load open → skip so sentinels stay inert.\n useLayoutEffect(() => {\n if (isModal || !isOpen) return;\n const trigger =\n returnFocusRef?.current ??\n consumeFocusAnchor() ??\n consumeLastInteractedElement() ??\n (document.activeElement as HTMLElement);\n if (!trigger || trigger === document.body) return;\n // iframes manage their own internal focus. The parent doc only sees the\n // <iframe> element. Calling .focus() on any parent-doc element while the\n // user is inside an iframe forcibly blurs the iframe content (kills caret\n // on textareas, cancels native <select> dropdowns). Skip capture so the\n // auto-focus on open and focus-restore on close don't run.\n if (trigger.tagName === 'IFRAME') return;\n triggerRef.current = trigger;\n if (endSentinelRef.current) endSentinelRef.current.tabIndex = 0;\n return () => {\n if (endSentinelRef.current) endSentinelRef.current.tabIndex = -1;\n };\n }, [isOpen, isModal]);\n\n // Move focus into panel on open; restore to trigger on close.\n useEffect(() => {\n if (isModal || !isOpen || !triggerRef.current) return;\n\n const rafId = requestAnimationFrame(() => {\n const first = getFirstFocusableElement({ container: containerRef.current });\n (first ?? containerRef.current)?.focus();\n // Activate start sentinel so Shift+Tab from first content returns to trigger.\n if (startSentinelRef.current) startSentinelRef.current.tabIndex = 0;\n });\n\n return () => {\n cancelAnimationFrame(rafId);\n if (startSentinelRef.current) startSentinelRef.current.tabIndex = -1;\n const trigger = triggerRef.current;\n triggerRef.current = null;\n if (trigger?.isConnected) {\n requestAnimationFrame(() => trigger.focus());\n }\n };\n }, [isOpen, isModal]);\n\n const handleStartFocus = (e: React.FocusEvent) => {\n const fromInside =\n containerRef.current?.contains(e.relatedTarget as Node) &&\n e.relatedTarget !== containerRef.current;\n if (fromInside) {\n // Shift+Tab from first content → restore trigger\n const trigger = triggerRef.current;\n if (trigger?.isConnected) trigger.focus();\n } else {\n // Natural Tab entry from outside → forward to first content,\n // deactivate so next Shift+Tab exits naturally.\n if (startSentinelRef.current) startSentinelRef.current.tabIndex = -1;\n const first = getFirstFocusableElement({ container: containerRef.current });\n (first ?? containerRef.current)?.focus();\n }\n };\n\n const handleEndFocus = (e: React.FocusEvent) => {\n const fromInside =\n containerRef.current?.contains(e.relatedTarget as Node) &&\n e.relatedTarget !== containerRef.current;\n if (fromInside) {\n // Tab from last content → restore trigger\n const trigger = triggerRef.current;\n if (trigger?.isConnected) trigger.focus();\n } else {\n // Shift+Tab entry from outside → back to last content\n const last = getLastFocusableElement({ container: containerRef.current });\n (last ?? containerRef.current)?.focus();\n }\n };\n\n return {\n startSentinelProps: {\n ref: startSentinelRef,\n tabIndex: -1,\n style: SENTINEL_STYLE,\n 'aria-hidden': true as const,\n 'data-focus-sentinel': 'start' as const,\n onFocus: handleStartFocus,\n },\n endSentinelProps: {\n ref: endSentinelRef,\n tabIndex: -1,\n style: SENTINEL_STYLE,\n 'aria-hidden': true as const,\n 'data-focus-sentinel': 'end' as const,\n onFocus: handleEndFocus,\n },\n };\n}\n"],"names":["useRef","useLayoutEffect","useEffect","getFirstFocusableElement","getLastFocusableElement","consumeFocusAnchor","consumeLastInteractedElement","SENTINEL_STYLE","position","opacity","pointerEvents","width","height","useFocusSentinel","isOpen","isModal","containerRef","returnFocusRef","triggerRef","startSentinelRef","endSentinelRef","trigger","current","document","activeElement","body","tagName","tabIndex","rafId","requestAnimationFrame","container","focus","cancelAnimationFrame","isConnected","startSentinelProps","ref","style","onFocus","handleStartFocus","e","contains","relatedTarget","endSentinelProps","handleEndFocus"],"mappings":"AAKA,SAAA,UAAAA,GAAA,mBAAAC,GAAA,aAAAC,SAAA;AAAA,SAAA,4BAAAC,GAAA,2BAAAC,SAAA;AAAA,SAAA,sBAAAC,GAAA,gCAAAC,SAAA;AAAA,MAAMC,IAAsC;AAAA,EAC1CC,UAAU;AAAA,EACVC,SAAS;AAAA,EACTC,eAAe;AAAA,EACfC,OAAO;AAAA,EACPC,QAAQ;AACV;AA4CO,SAASC,EAAiB;AAAA,EAC/BC,QAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,gBAAAA;AACuB,GAA2B;AAClD,QAAMC,IAAalB,EAA2B,IAAI,GAC5CmB,IAAmBnB,EAAuB,IAAI,GAC9CoB,IAAiBpB,EAAuB,IAAI;AAIlDC,SAAAA,EAAgB,MAAM;AACpB,QAAIc,KAAW,CAACD,EAAQ;AACxB,UAAMO,IACJJ,GAAgBK,WAChBjB,OACAC,EAAAA,KACCiB,SAASC;AACZ,QAAI,GAACH,KAAWA,MAAYE,SAASE,SAMjCJ,EAAQK,YAAY;AACxBR,aAAAA,EAAWI,UAAUD,GACjBD,EAAeE,YAASF,EAAeE,QAAQK,WAAW,IACvD,MAAM;AACX,QAAIP,EAAeE,YAASF,EAAeE,QAAQK,WAAW;AAAA,MAChE;AAAA,EACF,GAAG,CAACb,GAAQC,CAAO,CAAC,GAGpBb,EAAU,MAAM;AACd,QAAIa,KAAW,CAACD,KAAU,CAACI,EAAWI,QAAS;AAE/C,UAAMM,IAAQC,sBAAsB,MAAM;AAExC,OADc1B,EAAyB;AAAA,QAAE2B,WAAWd,EAAaM;AAAAA,MAAAA,CAAS,KAChEN,EAAaM,UAAUS,MAAAA,GAE7BZ,EAAiBG,YAASH,EAAiBG,QAAQK,WAAW;AAAA,IACpE,CAAC;AAED,WAAO,MAAM;AACXK,2BAAqBJ,CAAK,GACtBT,EAAiBG,YAASH,EAAiBG,QAAQK,WAAW;AAClE,YAAMN,IAAUH,EAAWI;AAC3BJ,MAAAA,EAAWI,UAAU,MACjBD,GAASY,eACXJ,sBAAsB,MAAMR,EAAQU,OAAO;AAAA,IAE/C;AAAA,EACF,GAAG,CAACjB,GAAQC,CAAO,CAAC,GAkCb;AAAA,IACLmB,oBAAoB;AAAA,MAClBC,KAAKhB;AAAAA,MACLQ,UAAU;AAAA,MACVS,OAAO7B;AAAAA,MACP,eAAe;AAAA,MACf,uBAAuB;AAAA,MACvB8B,SAvCqBC,CAACC,MAAwB;AAIhD,YAFEvB,EAAaM,SAASkB,SAASD,EAAEE,aAAqB,KACtDF,EAAEE,kBAAkBzB,EAAaM,SACnB;AAEd,gBAAMD,IAAUH,EAAWI;AAC3B,UAAID,GAASY,eAAaZ,EAAQU,MAAAA;AAAAA,QACpC;AAGE,UAAIZ,EAAiBG,YAASH,EAAiBG,QAAQK,WAAW,MACpDxB,EAAyB;AAAA,YAAE2B,WAAWd,EAAaM;AAAAA,UAAAA,CAAS,KAChEN,EAAaM,UAAUS,MAAAA;AAAAA,MAErC;AAAA,IAwBaO;AAAAA,IAEXI,kBAAkB;AAAA,MAChBP,KAAKf;AAAAA,MACLO,UAAU;AAAA,MACVS,OAAO7B;AAAAA,MACP,eAAe;AAAA,MACf,uBAAuB;AAAA,MACvB8B,SA9BmBM,CAACJ,MAAwB;AAI9C,YAFEvB,EAAaM,SAASkB,SAASD,EAAEE,aAAqB,KACtDF,EAAEE,kBAAkBzB,EAAaM,SACnB;AAEd,gBAAMD,IAAUH,EAAWI;AAC3B,UAAID,GAASY,eAAaZ,EAAQU,MAAAA;AAAAA,QACpC;AAGE,WADa3B,EAAwB;AAAA,YAAE0B,WAAWd,EAAaM;AAAAA,UAAAA,CAAS,KAC/DN,EAAaM,UAAUS,MAAAA;AAAAA,MAEpC;AAAA,IAiBaY;AAAAA,EACX;AAEJ;"}
package/dist/index22.js CHANGED
@@ -1,26 +1,69 @@
1
- import e from "react";
2
- import { Badge as c } from "./index8.js";
3
- const m = (t) => {
4
- const {
5
- label: a,
6
- color: l,
7
- onClick: r = () => {
8
- },
9
- tag: o
10
- } = t;
11
- return /* @__PURE__ */ e.createElement("div", {
12
- className: "se-design-color-coded-label flex items-center gap-2",
13
- onClick: r
14
- }, l && /* @__PURE__ */ e.createElement("span", {
15
- className: "w-[15px] h-[15px] rounded-[3px] inline-block",
16
- style: {
17
- backgroundColor: l
1
+ import t, { useRef as i, useEffect as L } from "react";
2
+ import { TableContentLoader as O } from "./index27.js";
3
+ import { announce as b } from "./index75.js";
4
+ function f() {
5
+ return f = Object.assign ? Object.assign.bind() : function(r) {
6
+ for (var l = 1; l < arguments.length; l++) {
7
+ var e = arguments[l];
8
+ for (var a in e) ({}).hasOwnProperty.call(e, a) && (r[a] = e[a]);
18
9
  }
19
- }), /* @__PURE__ */ e.createElement("div", null, a), o && /* @__PURE__ */ e.createElement(c, {
20
- label: o
21
- }));
10
+ return r;
11
+ }, f.apply(null, arguments);
12
+ }
13
+ const _ = ({
14
+ className: r = "",
15
+ automationId: l = "",
16
+ loading: e,
17
+ headerColSpan: a = [],
18
+ headerData: c,
19
+ tableData: o,
20
+ renderTableContentLoader: R,
21
+ getTableHeaders: m,
22
+ getTableBody: p,
23
+ getTableFooter: v,
24
+ onSortUiUpdate: d,
25
+ onRowClick: h,
26
+ tableId: E,
27
+ ariaDescribedBy: x,
28
+ ariaLabel: w,
29
+ loadingAnnouncement: s,
30
+ loadedAnnouncement: n,
31
+ ...y
32
+ }) => {
33
+ const g = i(null), u = i(!1);
34
+ return L(() => {
35
+ e !== u.current && (u.current = e, e && s ? b(s) : !e && n && b(n));
36
+ }, [e, s, n]), /* @__PURE__ */ t.createElement("div", f({
37
+ className: "se-design-table-layout-wrapper flex flex-col flex-1 min-h-0" + (r.length > 0 ? ` ${r}` : "") + (e ? " table-data-loading" : "")
38
+ }, y), /* @__PURE__ */ t.createElement("div", {
39
+ className: "se-design-table-scroll-area flex-1 min-h-0 overflow-y-auto"
40
+ }, /* @__PURE__ */ t.createElement("table", {
41
+ className: "se-design-table w-full bg-[var(--color-white)] border-collapse table-fixed",
42
+ ref: g,
43
+ "data-automation-id": l,
44
+ id: E,
45
+ "aria-describedby": x,
46
+ "aria-label": w
47
+ }, /* @__PURE__ */ t.createElement("thead", null, /* @__PURE__ */ t.createElement("tr", null, m({
48
+ headerData: c,
49
+ sortData: {},
50
+ onSortUiUpdate: d,
51
+ loading: e
52
+ }))), /* @__PURE__ */ t.createElement("tbody", null, e ? /* @__PURE__ */ t.createElement(O, {
53
+ noOfColumns: c?.length,
54
+ colSpan: a
55
+ }) : p({
56
+ tableData: o,
57
+ onRowClick: h,
58
+ loading: e
59
+ })))), /* @__PURE__ */ t.createElement("div", {
60
+ className: "se-design-table-footer w-full bg-[var(--color-white)] flex-shrink-0"
61
+ }, v({
62
+ tableData: o,
63
+ loading: e
64
+ })));
22
65
  };
23
66
  export {
24
- m as ColorCodedLabel
67
+ _ as TableLayout
25
68
  };
26
69
  //# sourceMappingURL=index22.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index22.js","sources":["../src/components/ColorCodedLabel/index.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport { Badge } from 'src/components/Badge';\n\nexport type ColorCodedLabelProps = {\n label: string;\n tag?: string;\n color?: string;\n onClick?: () => void;\n};\n\nexport const ColorCodedLabel: FC<ColorCodedLabelProps> = (props) => {\n const { label, color, onClick = () => {}, tag } = props;\n return (\n <div\n className=\"se-design-color-coded-label flex items-center gap-2\"\n onClick={onClick}\n >\n {color && <span className=\"w-[15px] h-[15px] rounded-[3px] inline-block\" style={{ backgroundColor: color }}></span>}\n <div>{label}</div>\n {tag && <Badge label={tag} />}\n </div>\n );\n};\n"],"names":["React__default","Badge","ColorCodedLabel","props","label","color","onClick","tag","React","createElement","className","style","backgroundColor"],"mappings":"AAUO,OAAAA,OAAA;AAAA,SAAA,SAAAC,SAAA;AAAA,MAAMC,IAA6CC,CAAUA,MAAA;AAC5D,QAAA;AAAA,IAAEC,OAAAA;AAAAA,IAAOC,OAAAA;AAAAA,IAAOC,SAAAA,IAAUA,MAAM;AAAA,IAAC;AAAA,IAAGC,KAAAA;AAAAA,EAAQJ,IAAAA;AAEhDK,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IACEC,WAAU;AAAA,IACVJ,SAAAA;AAAAA,EAECD,GAAAA,KAASI,gBAAAA,EAAAA,cAAA,QAAA;AAAA,IAAMC,WAAU;AAAA,IAA+CC,OAAO;AAAA,MAAEC,iBAAiBP;AAAAA,IAAM;AAAA,EAAS,CAAA,GAClHG,gBAAAA,EAAAC,cAAML,OAAAA,MAAAA,CAAW,GAChBG,KAAOE,gBAAAA,EAAAA,cAACR,GAAK;AAAA,IAACG,OAAOG;AAAAA,EAAM,CAAA,CACzB;AAET;"}
1
+ {"version":3,"file":"index22.js","sources":["../src/components/TableLayout/index.tsx"],"sourcesContent":["import React, { FC, ReactNode, useEffect, useRef } from 'react';\nimport { TableContentLoader } from 'components/TableContentLoader';\nimport { announce } from 'src/utils/a11y/liveAnnouncer/LiveAnnouncer';\n\nexport interface TableLayoutProps {\n className?: string;\n automationId?: string;\n loading: boolean;\n headerData: any[];\n tableData: any[];\n headerColSpan?: number[];\n renderTableContentLoader?: (noOfColumns: number) => ReactNode;\n getTableHeaders: (props: { headerData: any[]; sortData: any; onSortUiUpdate: any; loading: boolean }) => ReactNode;\n getTableBody: (props: { tableData: any[]; onRowClick: any; loading: boolean }) => ReactNode;\n getTableFooter: (props: { tableData: any[]; loading: boolean }) => ReactNode;\n onSortUiUpdate: (newSortData: any) => void;\n onRowClick: (rowData: any) => void;\n tableId: string;\n /**\n * ID of element that describes the table (e.g., sort instructions for screen readers)\n */\n ariaDescribedBy?: string;\n /**\n * Accessible name for the table element\n */\n ariaLabel?: string;\n /**\n * Announced to screen readers when loading begins.\n * Pass a translated string from the consumer (e.g. \"Loading documents\").\n */\n loadingAnnouncement?: string;\n /**\n * Announced to screen readers when loading completes.\n * Pass a translated string from the consumer (e.g. \"Documents loaded\").\n */\n loadedAnnouncement?: string;\n}\n\nexport const TableLayout: FC<TableLayoutProps> = ({\n className = '',\n automationId = '',\n loading,\n headerColSpan = [],\n headerData,\n tableData,\n renderTableContentLoader,\n getTableHeaders,\n getTableBody,\n getTableFooter,\n onSortUiUpdate,\n onRowClick,\n tableId,\n ariaDescribedBy,\n ariaLabel,\n loadingAnnouncement,\n loadedAnnouncement,\n ...props\n}) => {\n const tableRef = useRef<HTMLTableElement>(null);\n const prevLoadingRef = useRef(false);\n\n useEffect(() => {\n if (loading === prevLoadingRef.current) return;\n prevLoadingRef.current = loading;\n if (loading && loadingAnnouncement) {\n announce(loadingAnnouncement);\n } else if (!loading && loadedAnnouncement) {\n announce(loadedAnnouncement);\n }\n }, [loading, loadingAnnouncement, loadedAnnouncement]);\n\n return (\n <div className={'se-design-table-layout-wrapper flex flex-col flex-1 min-h-0' + (className.length > 0 ? ` ${className}` : '') + (loading? ' table-data-loading' : '')} {...props}>\n <div className=\"se-design-table-scroll-area flex-1 min-h-0 overflow-y-auto\">\n <table\n className={'se-design-table w-full bg-[var(--color-white)] border-collapse table-fixed'}\n ref={tableRef}\n data-automation-id={automationId}\n id={tableId}\n aria-describedby={ariaDescribedBy}\n aria-label={ariaLabel}\n >\n <thead>\n <tr>{getTableHeaders({ headerData, sortData: {}, onSortUiUpdate, loading })}</tr>\n </thead>\n <tbody>\n {loading ? (\n <TableContentLoader noOfColumns={headerData?.length} colSpan={headerColSpan} />\n ) : (\n getTableBody({ tableData, onRowClick, loading })\n )}\n </tbody>\n </table>\n </div>\n <div className=\"se-design-table-footer w-full bg-[var(--color-white)] flex-shrink-0\">\n {getTableFooter({ tableData, loading })}\n </div>\n </div>\n );\n};\n"],"names":["TableLayout","className","automationId","loading","headerColSpan","headerData","tableData","renderTableContentLoader","getTableHeaders","getTableBody","getTableFooter","onSortUiUpdate","onRowClick","tableId","ariaDescribedBy","ariaLabel","loadingAnnouncement","loadedAnnouncement","props","tableRef","useRef","prevLoadingRef","useEffect","current","announce","React","createElement","_extends","length","ref","id","sortData","TableContentLoader","noOfColumns","colSpan"],"mappings":";;;;;;;;;;;;AAsCO,MAAMA,IAAoCA,CAAC;AAAA,EAChDC,WAAAA,IAAY;AAAA,EACZC,cAAAA,IAAe;AAAA,EACfC,SAAAA;AAAAA,EACAC,eAAAA,IAAgB,CAAA;AAAA,EAChBC,YAAAA;AAAAA,EACAC,WAAAA;AAAAA,EACAC,0BAAAA;AAAAA,EACAC,iBAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,gBAAAA;AAAAA,EACAC,gBAAAA;AAAAA,EACAC,YAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,iBAAAA;AAAAA,EACAC,WAAAA;AAAAA,EACAC,qBAAAA;AAAAA,EACAC,oBAAAA;AAAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAMC,IAAWC,EAAyB,IAAI,GACxCC,IAAiBD,EAAO,EAAK;AAEnCE,SAAAA,EAAU,MAAM;AACd,IAAInB,MAAYkB,EAAeE,YAC/BF,EAAeE,UAAUpB,GACrBA,KAAWa,IACbQ,EAASR,CAAmB,IACnB,CAACb,KAAWc,KACrBO,EAASP,CAAkB;AAAA,EAE/B,GAAG,CAACd,GAASa,GAAqBC,CAAkB,CAAC,GAGnDQ,gBAAAA,EAAAC,cAAA,OAAAC,EAAA;AAAA,IAAK1B,WAAW,iEAAiEA,EAAU2B,SAAS,IAAI,IAAI3B,CAAS,KAAK,OAAOE,IAAS,wBAAwB;AAAA,EAAA,GAASe,CAAK,GAC9KO,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKzB,WAAU;AAAA,EAAA,GACbwB,gBAAAA,EAAAC,cAAA,SAAA;AAAA,IACEzB,WAAW;AAAA,IACX4B,KAAKV;AAAAA,IACL,sBAAoBjB;AAAAA,IACpB4B,IAAIjB;AAAAA,IACJ,oBAAkBC;AAAAA,IAClB,cAAYC;AAAAA,EAAAA,qBAEZW,cAAA,SAAA,MACED,gBAAAA,EAAAC,cAAA,MAAA,MAAKlB,EAAgB;AAAA,IAAEH,YAAAA;AAAAA,IAAY0B,UAAU,CAAA;AAAA,IAAIpB,gBAAAA;AAAAA,IAAgBR,SAAAA;AAAAA,EAAAA,CAAS,CAAM,CAC3E,GACPsB,gBAAAA,EAAAC,cAAA,SAAA,MACGvB,IACCsB,gBAAAA,EAAAC,cAACM,GAAkB;AAAA,IAACC,aAAa5B,GAAYuB;AAAAA,IAAQM,SAAS9B;AAAAA,EAAAA,CAAgB,IAE9EK,EAAa;AAAA,IAAEH,WAAAA;AAAAA,IAAWM,YAAAA;AAAAA,IAAYT,SAAAA;AAAAA,EAAAA,CAAS,CAE5C,CACF,CACJ,GACLsB,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKzB,WAAU;AAAA,EAAA,GACZS,EAAe;AAAA,IAAEJ,WAAAA;AAAAA,IAAWH,SAAAA;AAAAA,EAAAA,CAAS,CACnC,CACF;AAET;"}
@@ -0,0 +1,15 @@
1
+ function n(o, u) {
2
+ let e;
3
+ const t = (...c) => {
4
+ e && clearTimeout(e), e = setTimeout(() => {
5
+ o(...c);
6
+ }, u);
7
+ };
8
+ return t.cancel = () => {
9
+ e && clearTimeout(e), e = null;
10
+ }, t;
11
+ }
12
+ export {
13
+ n as debounce
14
+ };
15
+ //# sourceMappingURL=index224.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index224.js","sources":["../src/utils/debounce.ts"],"sourcesContent":["export function debounce<T extends (...args: any[]) => void>(func: T, wait: number) {\n let timeout: ReturnType<typeof setTimeout> | null;\n const debounced = (...args: Parameters<T>) => {\n if (timeout) clearTimeout(timeout);\n timeout = setTimeout(() => {\n func(...args);\n }, wait);\n };\n debounced.cancel = () => {\n if (timeout) clearTimeout(timeout);\n timeout = null;\n };\n return debounced as T & { cancel: () => void };\n }"],"names":["debounce","func","wait","timeout","debounced","args","setTimeout","cancel"],"mappings":"AAAO,SAASA,EAA6CC,GAASC,GAAc;AAChF,MAAIC;AACJ,QAAMC,IAAYA,IAAIC,MAAwB;AAC5C,IAAIF,kBAAsBA,CAAO,GACjCA,IAAUG,WAAW,MAAM;AACzBL,MAAAA,EAAK,GAAGI,CAAI;AAAA,IACd,GAAGH,CAAI;AAAA,EACT;AACAE,SAAAA,EAAUG,SAAS,MAAM;AACvB,IAAIJ,kBAAsBA,CAAO,GACjCA,IAAU;AAAA,EACZ,GACOC;AACT;"}