se-design 1.0.75 → 1.0.76-dev2

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 (484) hide show
  1. package/dist/assets/style.css +1 -1
  2. package/dist/components/AccessibleDiv/index.d.ts +24 -0
  3. package/dist/components/Checkbox/index.d.ts +12 -0
  4. package/dist/components/CustomAccordion/index.d.ts +1 -0
  5. package/dist/components/CustomModal/index.d.ts +15 -12
  6. package/dist/components/DatePicker/useDatePickerA11y.d.ts +50 -0
  7. package/dist/components/Dropdown/index.d.ts +15 -0
  8. package/dist/components/DropdownWithInputTags/index.d.ts +1 -0
  9. package/dist/components/Icon/index.d.ts +8 -2
  10. package/dist/components/InputWithIcon/index.d.ts +9 -1
  11. package/dist/components/LabelChip/index.d.ts +1 -0
  12. package/dist/components/Modal/index.d.ts +1 -0
  13. package/dist/components/PhoneInput/index.d.ts +13 -5
  14. package/dist/components/Popover/index.d.ts +2 -0
  15. package/dist/components/SidebarOverlay/index.d.ts +8 -0
  16. package/dist/components/index.d.ts +1 -0
  17. package/dist/index.js +144 -133
  18. package/dist/index.js.map +1 -1
  19. package/dist/index10.js +23 -59
  20. package/dist/index10.js.map +1 -1
  21. package/dist/index100.js +1 -1
  22. package/dist/index100.js.map +1 -1
  23. package/dist/index101.js +1 -1
  24. package/dist/index101.js.map +1 -1
  25. package/dist/index102.js +2 -2
  26. package/dist/index102.js.map +1 -1
  27. package/dist/index103.js +2 -2
  28. package/dist/index103.js.map +1 -1
  29. package/dist/index104.js +1 -1
  30. package/dist/index104.js.map +1 -1
  31. package/dist/index105.js +1 -1
  32. package/dist/index105.js.map +1 -1
  33. package/dist/index106.js +1 -1
  34. package/dist/index106.js.map +1 -1
  35. package/dist/index107.js +2 -2
  36. package/dist/index107.js.map +1 -1
  37. package/dist/index108.js +2 -2
  38. package/dist/index108.js.map +1 -1
  39. package/dist/index109.js +2 -2
  40. package/dist/index109.js.map +1 -1
  41. package/dist/index11.js +70 -63
  42. package/dist/index11.js.map +1 -1
  43. package/dist/index110.js +2 -2
  44. package/dist/index110.js.map +1 -1
  45. package/dist/index111.js +1 -1
  46. package/dist/index111.js.map +1 -1
  47. package/dist/index112.js +1 -1
  48. package/dist/index112.js.map +1 -1
  49. package/dist/index113.js +2 -2
  50. package/dist/index113.js.map +1 -1
  51. package/dist/index114.js +2 -2
  52. package/dist/index114.js.map +1 -1
  53. package/dist/index115.js +1 -1
  54. package/dist/index115.js.map +1 -1
  55. package/dist/index116.js +1 -1
  56. package/dist/index116.js.map +1 -1
  57. package/dist/index117.js +1 -1
  58. package/dist/index117.js.map +1 -1
  59. package/dist/index118.js +2 -2
  60. package/dist/index118.js.map +1 -1
  61. package/dist/index119.js +1 -1
  62. package/dist/index119.js.map +1 -1
  63. package/dist/index12.js +68 -33
  64. package/dist/index12.js.map +1 -1
  65. package/dist/index120.js +2 -2
  66. package/dist/index120.js.map +1 -1
  67. package/dist/index121.js +2 -2
  68. package/dist/index121.js.map +1 -1
  69. package/dist/index122.js +2 -2
  70. package/dist/index122.js.map +1 -1
  71. package/dist/index123.js +2 -2
  72. package/dist/index123.js.map +1 -1
  73. package/dist/index124.js +2 -2
  74. package/dist/index124.js.map +1 -1
  75. package/dist/index125.js +2 -2
  76. package/dist/index125.js.map +1 -1
  77. package/dist/index126.js +1 -1
  78. package/dist/index126.js.map +1 -1
  79. package/dist/index127.js +1 -1
  80. package/dist/index127.js.map +1 -1
  81. package/dist/index128.js +1 -1
  82. package/dist/index128.js.map +1 -1
  83. package/dist/index129.js +1 -1
  84. package/dist/index129.js.map +1 -1
  85. package/dist/index13.js +48 -14
  86. package/dist/index13.js.map +1 -1
  87. package/dist/index130.js +2 -2
  88. package/dist/index130.js.map +1 -1
  89. package/dist/index131.js +2 -2
  90. package/dist/index131.js.map +1 -1
  91. package/dist/index132.js +1 -1
  92. package/dist/index132.js.map +1 -1
  93. package/dist/index133.js +1 -1
  94. package/dist/index133.js.map +1 -1
  95. package/dist/index134.js +2 -2
  96. package/dist/index134.js.map +1 -1
  97. package/dist/index135.js +1 -1
  98. package/dist/index135.js.map +1 -1
  99. package/dist/index136.js +1 -1
  100. package/dist/index136.js.map +1 -1
  101. package/dist/index137.js +1 -1
  102. package/dist/index137.js.map +1 -1
  103. package/dist/index138.js +1 -1
  104. package/dist/index138.js.map +1 -1
  105. package/dist/index139.js +1 -1
  106. package/dist/index139.js.map +1 -1
  107. package/dist/index14.js +15 -9
  108. package/dist/index14.js.map +1 -1
  109. package/dist/index140.js +1 -1
  110. package/dist/index140.js.map +1 -1
  111. package/dist/index141.js +2 -2
  112. package/dist/index141.js.map +1 -1
  113. package/dist/index142.js +1 -1
  114. package/dist/index142.js.map +1 -1
  115. package/dist/index143.js +2 -2
  116. package/dist/index143.js.map +1 -1
  117. package/dist/index144.js +2 -2
  118. package/dist/index144.js.map +1 -1
  119. package/dist/index145.js +1 -1
  120. package/dist/index145.js.map +1 -1
  121. package/dist/index146.js +2 -2
  122. package/dist/index146.js.map +1 -1
  123. package/dist/index147.js +2 -2
  124. package/dist/index147.js.map +1 -1
  125. package/dist/index148.js +1 -1
  126. package/dist/index148.js.map +1 -1
  127. package/dist/index149.js +1 -1
  128. package/dist/index149.js.map +1 -1
  129. package/dist/index15.js +10 -218
  130. package/dist/index15.js.map +1 -1
  131. package/dist/index150.js +2 -2
  132. package/dist/index150.js.map +1 -1
  133. package/dist/index151.js +2 -2
  134. package/dist/index151.js.map +1 -1
  135. package/dist/index152.js +1 -1
  136. package/dist/index152.js.map +1 -1
  137. package/dist/index153.js +2 -2
  138. package/dist/index153.js.map +1 -1
  139. package/dist/index154.js +2 -2
  140. package/dist/index154.js.map +1 -1
  141. package/dist/index155.js +1 -1
  142. package/dist/index155.js.map +1 -1
  143. package/dist/index156.js +1 -1
  144. package/dist/index156.js.map +1 -1
  145. package/dist/index157.js +1 -1
  146. package/dist/index157.js.map +1 -1
  147. package/dist/index158.js +1 -1
  148. package/dist/index158.js.map +1 -1
  149. package/dist/index159.js +1 -1
  150. package/dist/index159.js.map +1 -1
  151. package/dist/index16.js +220 -60
  152. package/dist/index16.js.map +1 -1
  153. package/dist/index160.js +1 -1
  154. package/dist/index160.js.map +1 -1
  155. package/dist/index161.js +1 -1
  156. package/dist/index161.js.map +1 -1
  157. package/dist/index162.js +1 -1
  158. package/dist/index162.js.map +1 -1
  159. package/dist/index163.js +1 -1
  160. package/dist/index163.js.map +1 -1
  161. package/dist/index164.js +1 -1
  162. package/dist/index164.js.map +1 -1
  163. package/dist/index165.js +1 -1
  164. package/dist/index165.js.map +1 -1
  165. package/dist/index166.js +1 -1
  166. package/dist/index166.js.map +1 -1
  167. package/dist/index167.js +1 -1
  168. package/dist/index167.js.map +1 -1
  169. package/dist/index168.js +1 -1
  170. package/dist/index168.js.map +1 -1
  171. package/dist/index169.js +1 -1
  172. package/dist/index169.js.map +1 -1
  173. package/dist/index17.js +60 -99
  174. package/dist/index17.js.map +1 -1
  175. package/dist/index170.js +1 -1
  176. package/dist/index170.js.map +1 -1
  177. package/dist/index171.js +1 -1
  178. package/dist/index171.js.map +1 -1
  179. package/dist/index172.js +1 -1
  180. package/dist/index172.js.map +1 -1
  181. package/dist/index173.js +2 -2
  182. package/dist/index173.js.map +1 -1
  183. package/dist/index174.js +1 -1
  184. package/dist/index174.js.map +1 -1
  185. package/dist/index175.js +1 -1
  186. package/dist/index175.js.map +1 -1
  187. package/dist/index176.js +1 -1
  188. package/dist/index176.js.map +1 -1
  189. package/dist/index177.js +2 -2
  190. package/dist/index177.js.map +1 -1
  191. package/dist/index178.js +1 -1
  192. package/dist/index178.js.map +1 -1
  193. package/dist/index179.js +1 -1
  194. package/dist/index179.js.map +1 -1
  195. package/dist/index18.js +95 -282
  196. package/dist/index18.js.map +1 -1
  197. package/dist/index180.js +2 -2
  198. package/dist/index180.js.map +1 -1
  199. package/dist/index181.js +1 -1
  200. package/dist/index181.js.map +1 -1
  201. package/dist/index182.js +1 -1
  202. package/dist/index182.js.map +1 -1
  203. package/dist/index183.js +1 -1
  204. package/dist/index183.js.map +1 -1
  205. package/dist/index184.js +2 -2
  206. package/dist/index184.js.map +1 -1
  207. package/dist/index185.js +1 -1
  208. package/dist/index185.js.map +1 -1
  209. package/dist/index186.js +1 -1
  210. package/dist/index186.js.map +1 -1
  211. package/dist/index187.js +2 -2
  212. package/dist/index187.js.map +1 -1
  213. package/dist/index188.js +1 -1
  214. package/dist/index188.js.map +1 -1
  215. package/dist/index189.js +2 -2
  216. package/dist/index189.js.map +1 -1
  217. package/dist/index19.js +323 -16
  218. package/dist/index19.js.map +1 -1
  219. package/dist/index190.js +2 -149
  220. package/dist/index190.js.map +1 -1
  221. package/dist/index191.js +2 -9
  222. package/dist/index191.js.map +1 -1
  223. package/dist/index192.js +2 -6
  224. package/dist/index192.js.map +1 -1
  225. package/dist/index193.js +2 -5
  226. package/dist/index193.js.map +1 -1
  227. package/dist/index194.js +2 -40
  228. package/dist/index194.js.map +1 -1
  229. package/dist/index195.js +2 -59
  230. package/dist/index195.js.map +1 -1
  231. package/dist/index196.js +2 -23
  232. package/dist/index196.js.map +1 -1
  233. package/dist/index197.js +152 -0
  234. package/dist/index197.js.map +1 -0
  235. package/dist/index198.js +12 -0
  236. package/dist/index198.js.map +1 -0
  237. package/dist/index199.js +5 -23
  238. package/dist/index199.js.map +1 -1
  239. package/dist/index20.js +15 -31
  240. package/dist/index20.js.map +1 -1
  241. package/dist/index200.js +8 -0
  242. package/dist/index200.js.map +1 -0
  243. package/dist/index201.js +36 -80
  244. package/dist/index201.js.map +1 -1
  245. package/dist/index206.js +26 -0
  246. package/dist/index206.js.map +1 -0
  247. package/dist/index207.js +71 -0
  248. package/dist/index207.js.map +1 -0
  249. package/dist/index21.js +33 -61
  250. package/dist/index21.js.map +1 -1
  251. package/dist/{index210.js → index215.js} +1 -1
  252. package/dist/{index210.js.map → index215.js.map} +1 -1
  253. package/dist/index22.js +57 -76
  254. package/dist/index22.js.map +1 -1
  255. package/dist/{index218.js → index223.js} +1 -1
  256. package/dist/{index218.js.map → index223.js.map} +1 -1
  257. package/dist/{index221.js → index226.js} +2 -2
  258. package/dist/{index221.js.map → index226.js.map} +1 -1
  259. package/dist/index23.js +83 -21
  260. package/dist/index23.js.map +1 -1
  261. package/dist/index235.js +171 -8
  262. package/dist/index235.js.map +1 -1
  263. package/dist/index236.js +3 -9
  264. package/dist/index236.js.map +1 -1
  265. package/dist/index238.js +18 -169
  266. package/dist/index238.js.map +1 -1
  267. package/dist/index239.js +10 -11
  268. package/dist/index239.js.map +1 -1
  269. package/dist/index24.js +20 -222
  270. package/dist/index24.js.map +1 -1
  271. package/dist/index240.js +8 -4
  272. package/dist/index240.js.map +1 -1
  273. package/dist/index241.js +4 -5
  274. package/dist/index241.js.map +1 -1
  275. package/dist/index242.js +168 -36
  276. package/dist/index242.js.map +1 -1
  277. package/dist/index243.js +11 -2
  278. package/dist/index243.js.map +1 -1
  279. package/dist/index244.js +5 -7
  280. package/dist/index244.js.map +1 -1
  281. package/dist/index245.js +5 -326
  282. package/dist/index245.js.map +1 -1
  283. package/dist/index246.js +36 -48
  284. package/dist/index246.js.map +1 -1
  285. package/dist/index247.js +2 -2
  286. package/dist/index248.js +7 -75
  287. package/dist/index248.js.map +1 -1
  288. package/dist/index249.js +308 -74
  289. package/dist/index249.js.map +1 -1
  290. package/dist/index25.js +299 -43
  291. package/dist/index25.js.map +1 -1
  292. package/dist/index250.js +45 -47
  293. package/dist/index250.js.map +1 -1
  294. package/dist/index251.js +2 -8
  295. package/dist/index251.js.map +1 -1
  296. package/dist/index252.js +75 -4
  297. package/dist/index252.js.map +1 -1
  298. package/dist/index253.js +89 -48
  299. package/dist/index253.js.map +1 -1
  300. package/dist/index254.js +52 -2
  301. package/dist/index254.js.map +1 -1
  302. package/dist/index255.js +8 -2
  303. package/dist/index255.js.map +1 -1
  304. package/dist/index256.js +8 -0
  305. package/dist/index256.js.map +1 -0
  306. package/dist/index257.js +55 -0
  307. package/dist/index257.js.map +1 -0
  308. package/dist/index258.js +5 -0
  309. package/dist/index258.js.map +1 -0
  310. package/dist/index259.js +5 -0
  311. package/dist/index259.js.map +1 -0
  312. package/dist/index26.js +48 -23
  313. package/dist/index26.js.map +1 -1
  314. package/dist/index27.js +21 -81
  315. package/dist/index27.js.map +1 -1
  316. package/dist/index28.js +101 -138
  317. package/dist/index28.js.map +1 -1
  318. package/dist/index29.js +139 -128
  319. package/dist/index29.js.map +1 -1
  320. package/dist/index3.js +57 -98
  321. package/dist/index3.js.map +1 -1
  322. package/dist/index30.js +133 -69
  323. package/dist/index30.js.map +1 -1
  324. package/dist/index31.js +67 -96
  325. package/dist/index31.js.map +1 -1
  326. package/dist/index32.js +96 -71
  327. package/dist/index32.js.map +1 -1
  328. package/dist/index33.js +70 -38
  329. package/dist/index33.js.map +1 -1
  330. package/dist/index34.js +40 -71
  331. package/dist/index34.js.map +1 -1
  332. package/dist/index35.js +67 -82
  333. package/dist/index35.js.map +1 -1
  334. package/dist/index36.js +99 -54
  335. package/dist/index36.js.map +1 -1
  336. package/dist/index37.js +53 -280
  337. package/dist/index37.js.map +1 -1
  338. package/dist/index38.js +283 -70
  339. package/dist/index38.js.map +1 -1
  340. package/dist/index39.js +69 -80
  341. package/dist/index39.js.map +1 -1
  342. package/dist/index4.js +102 -42
  343. package/dist/index4.js.map +1 -1
  344. package/dist/index40.js +82 -32
  345. package/dist/index40.js.map +1 -1
  346. package/dist/index41.js +26 -44
  347. package/dist/index41.js.map +1 -1
  348. package/dist/index42.js +45 -67
  349. package/dist/index42.js.map +1 -1
  350. package/dist/index43.js +65 -49
  351. package/dist/index43.js.map +1 -1
  352. package/dist/index44.js +53 -139
  353. package/dist/index44.js.map +1 -1
  354. package/dist/index45.js +132 -179
  355. package/dist/index45.js.map +1 -1
  356. package/dist/index46.js +194 -35
  357. package/dist/index46.js.map +1 -1
  358. package/dist/index47.js +34 -29
  359. package/dist/index47.js.map +1 -1
  360. package/dist/index48.js +31 -145
  361. package/dist/index48.js.map +1 -1
  362. package/dist/index49.js +131 -70
  363. package/dist/index49.js.map +1 -1
  364. package/dist/index5.js +40 -315
  365. package/dist/index5.js.map +1 -1
  366. package/dist/index50.js +80 -371
  367. package/dist/index50.js.map +1 -1
  368. package/dist/index51.js +451 -91
  369. package/dist/index51.js.map +1 -1
  370. package/dist/index52.js +98 -38
  371. package/dist/index52.js.map +1 -1
  372. package/dist/index53.js +35 -35
  373. package/dist/index53.js.map +1 -1
  374. package/dist/index54.js +35 -90
  375. package/dist/index54.js.map +1 -1
  376. package/dist/index55.js +89 -159
  377. package/dist/index55.js.map +1 -1
  378. package/dist/index56.js +157 -143
  379. package/dist/index56.js.map +1 -1
  380. package/dist/index57.js +149 -33
  381. package/dist/index57.js.map +1 -1
  382. package/dist/index58.js +33 -86
  383. package/dist/index58.js.map +1 -1
  384. package/dist/index59.js +80 -113
  385. package/dist/index59.js.map +1 -1
  386. package/dist/index6.js +323 -43
  387. package/dist/index6.js.map +1 -1
  388. package/dist/index60.js +114 -62
  389. package/dist/index60.js.map +1 -1
  390. package/dist/index61.js +62 -147
  391. package/dist/index61.js.map +1 -1
  392. package/dist/index62.js +146 -312
  393. package/dist/index62.js.map +1 -1
  394. package/dist/index63.js +317 -44
  395. package/dist/index63.js.map +1 -1
  396. package/dist/index64.js +44 -143
  397. package/dist/index64.js.map +1 -1
  398. package/dist/index65.js +145 -12
  399. package/dist/index65.js.map +1 -1
  400. package/dist/index66.js +10 -44
  401. package/dist/index66.js.map +1 -1
  402. package/dist/index67.js +42 -15
  403. package/dist/index67.js.map +1 -1
  404. package/dist/index68.js +76 -48
  405. package/dist/index68.js.map +1 -1
  406. package/dist/index69.js +18 -58
  407. package/dist/index69.js.map +1 -1
  408. package/dist/index7.js +44 -51
  409. package/dist/index7.js.map +1 -1
  410. package/dist/index70.js +66 -5
  411. package/dist/index70.js.map +1 -1
  412. package/dist/index71.js +25 -7
  413. package/dist/index71.js.map +1 -1
  414. package/dist/index72.js +105 -0
  415. package/dist/index72.js.map +1 -0
  416. package/dist/index73.js +62 -2
  417. package/dist/index73.js.map +1 -1
  418. package/dist/index74.js +21 -2
  419. package/dist/index74.js.map +1 -1
  420. package/dist/index75.js +5 -2
  421. package/dist/index75.js.map +1 -1
  422. package/dist/index76.js +54 -2
  423. package/dist/index76.js.map +1 -1
  424. package/dist/index77.js +24 -2
  425. package/dist/index77.js.map +1 -1
  426. package/dist/index78.js +9 -2
  427. package/dist/index78.js.map +1 -1
  428. package/dist/index8.js +48 -85
  429. package/dist/index8.js.map +1 -1
  430. package/dist/index80.js +2 -2
  431. package/dist/index80.js.map +1 -1
  432. package/dist/index81.js +2 -2
  433. package/dist/index81.js.map +1 -1
  434. package/dist/index82.js +1 -1
  435. package/dist/index82.js.map +1 -1
  436. package/dist/index83.js +2 -2
  437. package/dist/index83.js.map +1 -1
  438. package/dist/index84.js +1 -1
  439. package/dist/index84.js.map +1 -1
  440. package/dist/index85.js +1 -1
  441. package/dist/index85.js.map +1 -1
  442. package/dist/index86.js +1 -1
  443. package/dist/index86.js.map +1 -1
  444. package/dist/index87.js +1 -1
  445. package/dist/index87.js.map +1 -1
  446. package/dist/index88.js +1 -1
  447. package/dist/index88.js.map +1 -1
  448. package/dist/index89.js +1 -1
  449. package/dist/index89.js.map +1 -1
  450. package/dist/index9.js +91 -27
  451. package/dist/index9.js.map +1 -1
  452. package/dist/index90.js +1 -1
  453. package/dist/index90.js.map +1 -1
  454. package/dist/index91.js +1 -1
  455. package/dist/index91.js.map +1 -1
  456. package/dist/index92.js +1 -1
  457. package/dist/index92.js.map +1 -1
  458. package/dist/index93.js +1 -1
  459. package/dist/index93.js.map +1 -1
  460. package/dist/index94.js +1 -1
  461. package/dist/index94.js.map +1 -1
  462. package/dist/index95.js +1 -1
  463. package/dist/index95.js.map +1 -1
  464. package/dist/index96.js +1 -1
  465. package/dist/index96.js.map +1 -1
  466. package/dist/index97.js +1 -1
  467. package/dist/index97.js.map +1 -1
  468. package/dist/index98.js +1 -1
  469. package/dist/index98.js.map +1 -1
  470. package/dist/index99.js +1 -1
  471. package/dist/index99.js.map +1 -1
  472. package/package.json +1 -1
  473. package/dist/index230.js +0 -7
  474. package/dist/index230.js.map +0 -1
  475. package/dist/index232.js +0 -25
  476. package/dist/index232.js.map +0 -1
  477. package/dist/index233.js +0 -57
  478. package/dist/index233.js.map +0 -1
  479. package/dist/index234.js +0 -22
  480. package/dist/index234.js.map +0 -1
  481. package/dist/index237.js +0 -8
  482. package/dist/index237.js.map +0 -1
  483. package/dist/index79.js +0 -5
  484. package/dist/index79.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index5.js","sources":["../src/components/Icon/index.tsx"],"sourcesContent":["// TODO: `applyAttributesToElement` recursion drops `size` for nested elements (pre-existing).\nimport React, { FC } from 'react';\nimport { ReactSVG } from 'react-svg';\nimport { getA11yNameAttributes, useAccessiblePress } from '../../utils/a11y';\n\n// Dynamically import icons using Vite's asset handling\nconst ICON_MAP: Record<string, string> = (import.meta as any).glob('/src/assets/icons/*.svg', {\n eager: true,\n query: '?url',\n import: 'default'\n});\n\nexport type RotationTypes = '0' | '45' | '90' | '135' | '180' | '225' | '270' | '315';\n\nexport type IconProps = {\n name: string;\n className?: string;\n onClick?: (e?: React.MouseEvent<HTMLElement>) => void;\n /**\n * Accessible name when Icon is interactive (onClick is provided).\n * If omitted, we fall back to `name` and warn in development.\n */\n ariaLabel?: string;\n /**\n * ID(s) of visible element(s) that label this Icon when interactive.\n * Preferred over ariaLabel when a visible label exists (keeps SR and visual text in sync).\n */\n ariaLabelledBy?: string;\n /**\n * ID(s) of element(s) that describe this Icon when interactive (additional context).\n */\n ariaDescribedBy?: string;\n /**\n * Toggle state when Icon is used as a button (e.g., show/hide sidebar).\n * Only applies when `onClick` is provided (interactive icon).\n */\n ariaPressed?: boolean;\n /**\n * Expansion state when Icon controls a collapsible region/panel.\n * Only applies when `onClick` is provided (interactive icon).\n */\n ariaExpanded?: boolean;\n /**\n * ID of the element controlled by this Icon (for aria-controls).\n * Only applies when `onClick` is provided (interactive icon).\n */\n ariaControls?: string;\n fill?: string;\n stroke?: string;\n rotation?: RotationTypes;\n size?: number;\n shouldStopPropagation?: boolean;\n automationId?: string;\n /**\n * Disables the icon interaction while keeping it visible to AT with aria-disabled=\"true\".\n * Only applies when `onClick` is provided (interactive icon).\n */\n disabled?: boolean;\n};\n\nconst applyAttributesToElement = (element: Element, fill?: string, stroke?: string, size?: number) => {\n // Only modify existing attributes\n if (fill && element.hasAttribute('fill')) {\n const currentFill = element.getAttribute('fill');\n // Only update if the current fill is not \"none\"\n if (currentFill !== 'none') {\n element.setAttribute('fill', fill);\n }\n }\n\n if (stroke && element.hasAttribute('stroke')) {\n element.setAttribute('stroke', stroke);\n }\n\n if (size && element.hasAttribute('width')) {\n element.setAttribute('width', size.toString());\n }\n\n if (size && element.hasAttribute('height')) {\n element.setAttribute('height', size.toString());\n }\n\n // Recursively apply to all child elements\n Array.from(element.children).forEach((child) => {\n applyAttributesToElement(child, fill, stroke);\n });\n};\n\nexport const Icon: FC<IconProps> = (props) => {\n const {\n name = '',\n className = '',\n onClick,\n ariaLabel,\n ariaLabelledBy,\n ariaDescribedBy,\n ariaPressed,\n ariaExpanded,\n ariaControls,\n fill,\n stroke,\n rotation = '0',\n size,\n shouldStopPropagation = false,\n disabled = false\n } = props;\n const iconRotationClasses = {\n '0': 'rotate-0',\n '45': 'rotate-45',\n '90': 'rotate-90',\n '135': 'rotate-[135deg]',\n '180': 'rotate-180',\n '225': 'rotate-[225deg]',\n '270': '-rotate-90',\n '315': '-rotate-45'\n };\n const src = ICON_MAP[`/src/assets/icons/${name}.svg`];\n\n if (!src) {\n console.error(`Icon \"${name}\" not found in ICON_MAP.`);\n return null;\n }\n\n const isInteractive = typeof onClick === 'function';\n const computedAriaLabel = ariaLabel || name;\n\n if (isInteractive && !ariaLabel && (import.meta as { env?: { DEV?: boolean } }).env?.DEV) {\n // eslint-disable-next-line no-console\n console.warn(\n `[se-design/Icon] Missing ariaLabel for clickable icon \"${name}\". ` +\n `Falling back to aria-label=\"${computedAriaLabel}\".`\n );\n }\n\n const { pressProps, role, tabIndex, isDisabled } = useAccessiblePress({\n isNative: false,\n onClick: isInteractive ? (e: React.MouseEvent<HTMLElement>) => onClick?.(e) : undefined,\n disabled: isInteractive ? disabled : false,\n stopPropagation: shouldStopPropagation\n });\n\n // Compute accessible name/description props with correct precedence (aligns with Button/Link).\n const accessibleNameProps = getA11yNameAttributes({\n ariaLabel: computedAriaLabel,\n ariaLabelledBy,\n ariaDescribedBy\n });\n\n const interactiveProps = isInteractive\n ? {\n ...pressProps,\n role,\n tabIndex,\n ...accessibleNameProps,\n 'aria-pressed': ariaPressed,\n 'aria-expanded': ariaExpanded,\n 'aria-controls': ariaControls || undefined\n }\n : undefined;\n\n return (\n <div\n className={`se-design-svg-wrapper transition-transform duration-250 ease-linear rounded-[3px] ${\n isInteractive ? `${isDisabled ? 'opacity-50 cursor-default' : 'cursor-pointer focus-outline'}` : ''\n } ${className} ${iconRotationClasses[rotation]}`}\n aria-hidden={!isInteractive ? 'true' : undefined}\n {...interactiveProps}\n data-automation-id={props?.automationId}\n >\n <ReactSVG\n src={src}\n wrapper=\"span\"\n beforeInjection={(svg) => {\n svg.setAttribute('aria-hidden', 'true');\n svg.setAttribute('role', 'none');\n applyAttributesToElement(svg, fill, stroke, size);\n }}\n />\n </div>\n );\n};\n"],"names":["ICON_MAP","import","applyAttributesToElement","element","fill","stroke","size","hasAttribute","getAttribute","setAttribute","toString","Array","from","children","forEach","child","Icon","props","name","className","onClick","ariaLabel","ariaLabelledBy","ariaDescribedBy","ariaPressed","ariaExpanded","ariaControls","rotation","shouldStopPropagation","disabled","iconRotationClasses","src","error","isInteractive","computedAriaLabel","pressProps","role","tabIndex","isDisabled","useAccessiblePress","isNative","e","undefined","stopPropagation","accessibleNameProps","getA11yNameAttributes","interactiveProps","React","createElement","_extends","automationId","ReactSVG","wrapper","beforeInjection","svg"],"mappings":"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"}
1
+ {"version":3,"file":"index5.js","sources":["../src/components/FilePicker/index.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport { Button } from '../Button';\n\nexport interface FilePickerProps {\n /**\n * Callback function when files are selected\n */\n onFileSelect: (files: FileList) => void;\n /**\n * Accepted file types (e.g., \".pdf,.doc,.docx\")\n */\n accept?: string;\n /**\n * Allow multiple file selection\n */\n multiple?: boolean;\n /**\n * Label for the button\n */\n buttonLabel: string;\n /**\n * Type of the button\n */\n buttonType?: 'primary' | 'secondary' | 'ghost' | 'link';\n /**\n * Size of the button\n */\n buttonSize?: 'sm' | 'md' | 'lg';\n /**\n * Disabled state\n */\n disabled?: boolean;\n /**\n * Custom class name\n */\n className?: string;\n /**\n * Custom trigger element (button, menu item, icon, etc.)\n * If provided, buttonLabel, buttonType, and buttonSize will be ignored\n */\n triggerElement?: React.ReactNode;\n /**\n * Automation ID for testing\n */\n automationId?: string;\n}\n\nexport const FilePicker: React.FC<FilePickerProps> = ({\n onFileSelect,\n accept,\n multiple = false,\n buttonLabel,\n buttonType = 'primary',\n buttonSize = 'md',\n disabled = false,\n className = '',\n triggerElement,\n automationId = '',\n}) => {\n const fileInputRef = useRef<HTMLInputElement>(null);\n\n const handleButtonClick = () => {\n fileInputRef.current?.click();\n };\n\n const handleFileChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const files = event.target.files;\n if (files) {\n onFileSelect(files);\n // Reset the input value to allow selecting the same file again\n event.target.value = '';\n }\n };\n\n return (\n <div className={className}>\n <input\n type=\"file\"\n ref={fileInputRef}\n onChange={handleFileChange}\n accept={accept}\n multiple={multiple}\n style={{ display: 'none' }}\n />\n {triggerElement ? (\n <div onClick={disabled ? undefined : handleButtonClick}>\n {triggerElement}\n </div>\n ) : (\n <Button\n type={buttonType}\n size={buttonSize}\n label={buttonLabel}\n onClick={handleButtonClick}\n disabled={disabled}\n data-automation-id={automationId}\n />\n )}\n </div>\n );\n}; "],"names":["FilePicker","onFileSelect","accept","multiple","buttonLabel","buttonType","buttonSize","disabled","className","triggerElement","automationId","fileInputRef","useRef","handleButtonClick","current","click","handleFileChange","event","files","target","value","React","createElement","type","ref","onChange","style","display","onClick","undefined","Button","size","label"],"mappings":";;AA+CO,MAAMA,IAAwCA,CAAC;AAAA,EACpDC,cAAAA;AAAAA,EACAC,QAAAA;AAAAA,EACAC,UAAAA,IAAW;AAAA,EACXC,aAAAA;AAAAA,EACAC,YAAAA,IAAa;AAAA,EACbC,YAAAA,IAAa;AAAA,EACbC,UAAAA,IAAW;AAAA,EACXC,WAAAA,IAAY;AAAA,EACZC,gBAAAA;AAAAA,EACAC,cAAAA,IAAe;AACjB,MAAM;AACJ,QAAMC,IAAeC,EAAyB,IAAI,GAE5CC,IAAoBA,MAAM;AAC9BF,IAAAA,EAAaG,SAASC,MAAAA;AAAAA,EACxB,GAEMC,IAAmBA,CAACC,MAA+C;AACvE,UAAMC,IAAQD,EAAME,OAAOD;AAC3B,IAAIA,MACFjB,EAAaiB,CAAK,GAElBD,EAAME,OAAOC,QAAQ;AAAA,EAEzB;AAEA,SACEC,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKd,WAAAA;AAAAA,EAAAA,GACHa,gBAAAA,EAAAC,cAAA,SAAA;AAAA,IACEC,MAAK;AAAA,IACLC,KAAKb;AAAAA,IACLc,UAAUT;AAAAA,IACVd,QAAAA;AAAAA,IACAC,UAAAA;AAAAA,IACAuB,OAAO;AAAA,MAAEC,SAAS;AAAA,IAAA;AAAA,EAAO,CAC1B,GACAlB,IACCY,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKM,SAASrB,IAAWsB,SAAYhB;AAAAA,EAAAA,GAClCJ,CACE,IAELY,gBAAAA,EAAAC,cAACQ,GAAM;AAAA,IACLP,MAAMlB;AAAAA,IACN0B,MAAMzB;AAAAA,IACN0B,OAAO5B;AAAAA,IACPwB,SAASf;AAAAA,IACTN,UAAAA;AAAAA,IACA,sBAAoBG;AAAAA,EAAAA,CACrB,CAEA;AAET;"}
package/dist/index50.js CHANGED
@@ -1,380 +1,89 @@
1
- import o, { useState as E } from "react";
2
- import { Button as S } from "./index3.js";
3
- import { Icon as T } from "./index5.js";
4
- import { Dropdown as Q } from "./index24.js";
1
+ import t from "react";
2
+ import { Icon as u } from "./index6.js";
3
+ import { Popover as v } from "./index19.js";
4
+ import { MenuList as E } from "./index18.js";
5
5
  /* empty css */
6
- const fe = ["S", "M", "T", "W", "T", "F", "S"], ve = ["Today", "Yesterday", "This Week", "Last Week", "This Month", "Last Month"], O = [{
7
- value: "january",
8
- label: "January"
9
- }, {
10
- value: "february",
11
- label: "February"
12
- }, {
13
- value: "march",
14
- label: "March"
15
- }, {
16
- value: "april",
17
- label: "April"
18
- }, {
19
- value: "may",
20
- label: "May"
21
- }, {
22
- value: "june",
23
- label: "June"
24
- }, {
25
- value: "july",
26
- label: "July"
27
- }, {
28
- value: "august",
29
- label: "August"
30
- }, {
31
- value: "september",
32
- label: "September"
33
- }, {
34
- value: "october",
35
- label: "October"
36
- }, {
37
- value: "november",
38
- label: "November"
39
- }, {
40
- value: "december",
41
- label: "December"
42
- }], Me = ({
43
- title: U = "Select modified date",
44
- // isOpen = true,
45
- showHeader: G = !0,
46
- initialStartDate: R,
47
- initialEndDate: L,
48
- onApply: x = () => {
49
- },
50
- onClose: N,
51
- shouldAllowFutureDateSelection: w = !1,
52
- maxDays: D,
53
- disablePastDates: $ = !1,
54
- singleDateSelection: W = !1,
55
- minYearOption: K,
56
- showQuickActions: P = !1,
57
- showSingleMonth: Y = !1,
58
- className: X = "",
59
- automationId: m = "datepicker",
60
- labels: j = {
61
- clear: "Clear",
62
- apply: "Apply"
63
- }
64
- }) => {
65
- const Z = () => {
66
- if (R && L)
67
- return {
68
- startDate: R,
69
- endDate: L
70
- };
71
- const t = /* @__PURE__ */ new Date();
72
- t.setHours(23, 59, 59, 999);
73
- const e = /* @__PURE__ */ new Date();
74
- return e.setHours(0, 0, 0, 0), {
75
- startDate: e,
76
- endDate: t
77
- };
78
- }, ee = () => {
79
- const t = /* @__PURE__ */ new Date(), e = /* @__PURE__ */ new Date();
80
- return t.setDate(1), e.setDate(1), Y || e.setMonth(e.getMonth() - 1), t.setHours(0, 0, 0, 0), e.setHours(0, 0, 0, 0), [e, t];
81
- }, [c, b] = E(Z), [A, be] = E(ee), [p, C] = E(() => A[0]), [F, B] = E(() => A[1]), te = (t, e) => new Date(t, e + 1, 0).getDate(), ae = (t, e) => new Date(t, e, 1).getDay(), ne = (t, e) => {
82
- const a = te(t, e), r = ae(t, e), d = [];
83
- for (let s = 0; s < r; s++)
84
- d.push(null);
85
- for (let s = 1; s <= a; s++) {
86
- const u = new Date(t, e, s);
87
- u.setHours(0, 0, 0, 0), d.push(u);
88
- }
89
- return d;
90
- }, h = (t, e) => t.getDate() === e.getDate() && t.getMonth() === e.getMonth() && t.getFullYear() === e.getFullYear(), re = (t) => {
91
- if (!c.startDate || !c.endDate) return !1;
92
- const e = new Date(t);
93
- e.setHours(12, 0, 0, 0);
94
- const a = new Date(c.startDate);
95
- a.setHours(0, 0, 0, 0);
96
- const r = new Date(c.endDate);
97
- return r.setHours(23, 59, 59, 999), e >= a && e <= r;
98
- }, oe = (t) => {
99
- const e = /* @__PURE__ */ new Date();
100
- return t.getDate() === e.getDate() && t.getMonth() === e.getMonth() && t.getFullYear() === e.getFullYear();
101
- }, z = (t) => {
102
- if (!t) return !0;
103
- const e = /* @__PURE__ */ new Date();
104
- e.setHours(0, 0, 0, 0);
105
- const a = new Date(t);
106
- if (a.setHours(0, 0, 0, 0), $ && a < e)
107
- return !0;
108
- if (D != null) {
109
- const r = new Date(e);
110
- return r.setDate(r.getDate() + D), r.setHours(0, 0, 0, 0), a > r;
111
- }
112
- return w ? !1 : a > e;
113
- }, se = (t) => {
114
- if (z(t)) return;
115
- const e = new Date(t);
116
- if (e.setHours(12, 0, 0, 0), W) {
117
- b({
118
- startDate: e,
119
- endDate: e
120
- }), x({
121
- startDate: e,
122
- endDate: e
123
- }), N?.();
124
- return;
125
- }
126
- if (!c.startDate || c.endDate)
127
- b({
128
- startDate: e,
129
- endDate: null
130
- });
131
- else {
132
- const a = new Date(c.startDate);
133
- a.setHours(12, 0, 0, 0);
134
- const r = e > a ? e : a, d = e > a ? a : e;
135
- b({
136
- startDate: d,
137
- endDate: r
138
- });
6
+ function c() {
7
+ return c = Object.assign ? Object.assign.bind() : function(a) {
8
+ for (var n = 1; n < arguments.length; n++) {
9
+ var i = arguments[n];
10
+ for (var o in i) ({}).hasOwnProperty.call(i, o) && (a[o] = i[o]);
139
11
  }
140
- }, I = (t, e) => {
141
- const a = new Date(t);
142
- return a.setMonth(a.getMonth() + (e ? 1 : -1)), a;
143
- }, _ = (t, e) => t.getTime() > e.getTime() ? [e, t] : [t, e], y = (t, e) => {
144
- if (Y) {
145
- C(t);
146
- return;
147
- }
148
- if (e) {
149
- const [a, r] = _(t, F);
150
- C(a), r !== F && B(r);
151
- } else {
152
- const [a, r] = _(p, t);
153
- a !== p && C(a), B(r);
154
- }
155
- }, le = (t) => c?.startDate ? h(t, c.startDate) : !1, ce = (t) => c?.endDate ? h(t, c?.endDate) : !1, ue = (t) => !c.startDate || !c.endDate ? !1 : h(c.startDate, c.endDate) && h(t, c.startDate), ie = (t, e) => {
156
- const a = K || t - 10;
157
- let r = w ? t + 10 : t;
158
- if (D) {
159
- const s = /* @__PURE__ */ new Date(), u = new Date(s);
160
- u.setDate(u.getDate() + D);
161
- const n = u.getFullYear();
162
- r = Math.min(r, n);
163
- }
164
- r = Math.max(r, e);
165
- const d = r - a + 1;
166
- return Array.from({
167
- length: d
168
- }, (s, u) => ({
169
- value: a + u,
170
- label: (a + u).toString()
171
- })).filter((s) => {
172
- if (s.value === e)
173
- return !0;
174
- if (!w && s.value > t)
175
- return !1;
176
- if (D) {
177
- const u = /* @__PURE__ */ new Date(), n = new Date(u);
178
- return n.setDate(n.getDate() + D), s.value <= n.getFullYear();
179
- }
180
- return !0;
181
- });
182
- }, De = () => {
183
- const t = /* @__PURE__ */ new Date(), e = /* @__PURE__ */ new Date();
184
- e.setHours(0, 0, 0, 0), t.setHours(23, 59, 59, 999), b({
185
- startDate: e,
186
- endDate: t
187
- });
188
- }, f = (t) => {
189
- const e = new Date(t);
190
- return e.setHours(0, 0, 0, 0), e;
191
- }, v = (t) => {
192
- const e = new Date(t);
193
- return e.setHours(23, 59, 59, 999), e;
194
- }, de = (t) => {
195
- const e = /* @__PURE__ */ new Date();
196
- let a = /* @__PURE__ */ new Date(), r = /* @__PURE__ */ new Date();
197
- switch (t) {
198
- case "Today":
199
- a = f(e), r = v(e);
200
- break;
201
- case "Yesterday":
202
- a = f(new Date(e.setDate(e.getDate() - 1))), r = v(new Date(e));
203
- break;
204
- case "This Week":
205
- const d = new Date(e.setDate(e.getDate() - e.getDay()));
206
- a = f(d), r = v(/* @__PURE__ */ new Date());
207
- break;
208
- case "Last Week":
209
- const s = new Date(e.setDate(e.getDate() - e.getDay() - 7)), u = new Date(e.setDate(s.getDate() + 6));
210
- a = f(s), r = v(u);
211
- break;
212
- case "This Month":
213
- a = f(new Date(e.getFullYear(), e.getMonth(), 1)), r = v(/* @__PURE__ */ new Date());
214
- break;
215
- case "Last Month":
216
- a = f(new Date(e.getFullYear(), e.getMonth() - 1, 1)), r = v(new Date(e.getFullYear(), e.getMonth(), 0));
217
- break;
218
- }
219
- b({
220
- startDate: a,
221
- endDate: r
222
- });
223
- }, ge = () => /* @__PURE__ */ o.createElement("div", {
224
- className: "w-[147px] p-4 border-r border-[var(--color-gray-200)]"
225
- }, /* @__PURE__ */ o.createElement("div", {
226
- className: "flex flex-col gap-3"
227
- }, ve.map((t) => /* @__PURE__ */ o.createElement(S, {
228
- key: t,
229
- label: t,
230
- type: "link",
231
- onClick: () => de(t)
232
- })))), me = () => {
233
- const {
234
- startDate: t = null,
235
- endDate: e = null
236
- } = c;
237
- if (t && e) {
238
- x({
239
- startDate: t,
240
- endDate: e
241
- });
242
- return;
243
- }
244
- if (t || e) {
245
- const a = t || e;
246
- x({
247
- startDate: a,
248
- endDate: a
249
- });
250
- }
251
- }, H = (t) => {
252
- const e = t.getFullYear(), a = t.getMonth(), r = ne(e, a), d = (/* @__PURE__ */ new Date()).getFullYear(), s = t.getTime() === p.getTime(), u = ie(d, e);
253
- return /* @__PURE__ */ o.createElement("div", {
254
- className: "se-design-calendar-container w-fit p-4"
255
- }, /* @__PURE__ */ o.createElement("div", {
256
- className: "flex justify-between items-center"
257
- }, /* @__PURE__ */ o.createElement(T, {
258
- name: "chevron",
259
- rotation: "90",
260
- size: 16,
261
- onClick: () => {
262
- const n = I(t, !1);
263
- if ($) {
264
- const l = /* @__PURE__ */ new Date();
265
- if (l.setHours(0, 0, 0, 0), n < l && n.getMonth() !== l.getMonth())
266
- return;
12
+ return a;
13
+ }, c.apply(null, arguments);
14
+ }
15
+ const s = {
16
+ container: "se-design-breadcrumbs flex items-center",
17
+ itemLabel: "se-design-breadcrumbs-item-label inline-flex items-center w-fit"
18
+ }, P = ({
19
+ crumbs: a,
20
+ onCrumbClick: n,
21
+ className: i = "",
22
+ ariaLabel: o = "Breadcrumb",
23
+ headingLevel: g = 1
24
+ }) => {
25
+ if (a?.length === 1) {
26
+ const e = `h${g}`;
27
+ return /* @__PURE__ */ t.createElement("div", {
28
+ className: `${s.container} ${i}`,
29
+ "data-automation-id": "breadcrumbs-container"
30
+ }, /* @__PURE__ */ t.createElement(e, {
31
+ className: `${s.itemLabel} single-crumb`
32
+ }, a[0].label));
33
+ }
34
+ const m = a?.length > 3, d = m ? a?.slice(-2) : a, b = m ? a?.slice(0, -2) : [], l = (e) => e === d?.length - 1, f = (e) => l(e) ? `${s.itemLabel} highlighted-crumb` : `${s.itemLabel} unhighlighted-crumb`;
35
+ return /* @__PURE__ */ t.createElement("nav", {
36
+ className: `${s.container} ${i}`,
37
+ "aria-label": o,
38
+ "data-automation-id": "breadcrumbs-container"
39
+ }, b?.length > 0 && /* @__PURE__ */ t.createElement(v, {
40
+ className: "se-design-overflow-breadcrumbs",
41
+ position: "bottom-left",
42
+ noBorder: !0,
43
+ ariaLabel: "Show more breadcrumbs",
44
+ renderPopoverSrcElement: ({
45
+ displayPopover: e
46
+ }) => /* @__PURE__ */ t.createElement("div", {
47
+ className: `overflow-breadcrumbs-src-element px-1.5 py-1.5 rounded-md hover:cursor-pointer ${e ? "bg-[var(--color-blue-200)]" : ""}`,
48
+ "data-automation-id": "breadcrumbs-kebab-menu"
49
+ }, /* @__PURE__ */ t.createElement(u, {
50
+ name: "kebab-menu"
51
+ })),
52
+ renderPopoverContents: ({
53
+ closePopoverCb: e
54
+ }) => /* @__PURE__ */ t.createElement(E, {
55
+ items: b.map((r) => ({
56
+ id: String(r?.id),
57
+ label: r?.label,
58
+ onClick: () => {
59
+ n?.(r), e();
267
60
  }
268
- y(n, s);
269
- },
270
- className: `datepicker-navigation-icon ${$ && t.getMonth() === (/* @__PURE__ */ new Date()).getMonth() && t.getFullYear() === (/* @__PURE__ */ new Date()).getFullYear() ? "disabled" : ""}`,
271
- automationId: `${m}-previous-month`
272
- }), /* @__PURE__ */ o.createElement("div", {
273
- className: "flex gap-2",
274
- onClick: (n) => n.stopPropagation()
275
- }, /* @__PURE__ */ o.createElement(Q, {
276
- type: "select",
277
- dropDownOptions: O,
278
- defaultSelectedValue: O[a],
279
- selectBy: "label",
280
- optionsUniqueBy: "value",
281
- displaySelected: !0,
282
- onOptionClick: (n) => {
283
- const l = new Date(t);
284
- l.setMonth(O.findIndex((i) => i.value === n.value)), y(l, s);
285
- },
286
- className: "w-[124px] dropdown-option-container"
287
- }), /* @__PURE__ */ o.createElement(Q, {
288
- type: "select",
289
- dropDownOptions: u,
290
- defaultSelectedValue: u.find((n) => n.value === e),
291
- selectBy: "label",
292
- optionsUniqueBy: "value",
293
- displaySelected: !0,
294
- onOptionClick: (n) => {
295
- const l = new Date(t);
296
- l.setFullYear(n.value), y(l, s);
297
- },
298
- className: "w-[104px] dropdown-option-container"
299
- })), /* @__PURE__ */ o.createElement(T, {
61
+ }))
62
+ })
63
+ }), /* @__PURE__ */ t.createElement("ol", {
64
+ className: "se-design-breadcrumbs-list inline-flex items-center"
65
+ }, d?.map((e, r) => {
66
+ const p = l(r) ? "span" : "a";
67
+ return /* @__PURE__ */ t.createElement("li", {
68
+ key: e?.id,
69
+ className: "se-design-breadcrumbs-item inline-flex items-center w-fit text-xl"
70
+ }, (r > 0 || m) && /* @__PURE__ */ t.createElement(u, {
300
71
  name: "chevron",
301
- rotation: "270",
302
- size: 16,
303
- className: `datepicker-navigation-icon ${!w && a === (/* @__PURE__ */ new Date()).getMonth() && e === (/* @__PURE__ */ new Date()).getFullYear() || D !== void 0 && (() => {
304
- const n = /* @__PURE__ */ new Date(), l = new Date(n);
305
- return l.setDate(l.getDate() + D), t.getMonth() === l.getMonth() && t.getFullYear() === l.getFullYear();
306
- })() ? "disabled" : ""}`,
307
- onClick: () => {
308
- const n = I(t, !0);
309
- if (D !== void 0) {
310
- const l = /* @__PURE__ */ new Date(), i = new Date(l);
311
- if (i.setDate(i.getDate() + D), n > i)
312
- return;
313
- }
314
- y(n, s);
315
- },
316
- automationId: `${m}-next-month`
317
- })), /* @__PURE__ */ o.createElement("div", {
318
- className: "grid grid-cols-7 gap-2 mt-3"
319
- }, fe.map((n, l) => /* @__PURE__ */ o.createElement("div", {
320
- key: `${n}-${l}`,
321
- className: "datepicker-weekdays"
322
- }, n)), r.map((n, l) => {
323
- const i = n && le(n), g = n && ce(n), k = n && ue(n), q = n && !i && !g && re(n), J = n && oe(n), M = z(n), V = n?.getDate();
324
- return /* @__PURE__ */ o.createElement("div", {
325
- key: `${n}-${l}`,
326
- onClick: () => !M && n && se(n),
327
- className: `
328
- relative h-10 w-10 flex items-center justify-center transition-colors rounded-md
329
- ${M ? "cursor-not-allowed text-[var(--color-gray-600)] hover:bg-transparent" : "cursor-pointer"}
330
- ${k ? "bg-[var(--color-blue-500)] text-[var(--color-white)] hover:bg-[var(--color-blue-600)]" : ""}
331
- ${!k && i ? "bg-[var(--color-blue-500)] text-[var(--color-white)] hover:bg-[var(--color-blue-600)]" : ""}
332
- ${!k && g ? "bg-[var(--color-blue-500)] text-[var(--color-white)] hover:bg-[var(--color-blue-600)]" : ""}
333
- ${!i && !g && q ? "bg-[var(--color-blue-100)] text-[var(--color-blue-600)] outline outline-1 outline-[var(--color-blue-500)]" : ""}
334
- ${!i && !g && !q && !M ? "hover:bg-[var(--color-blue-100)] hover:outline hover:outline-1 hover:outline-[var(--color-blue-500)]" : ""}
335
- ${J && !i && !g ? "text-[var(--color-blue-500)] bg-[var(--color-blue-100)] outline outline-1 outline-[var(--color-blue-500)]" : ""}
336
- ${!M && !i && !g && !J ? "text-[var(--color-blue-500)]" : ""}
337
- `,
338
- "data-automation-id": `${m}-date-${V}`
339
- }, n ? /* @__PURE__ */ o.createElement(o.Fragment, null, V, !k && (i || g) && /* @__PURE__ */ o.createElement("div", {
340
- className: `absolute top-0 bottom-0 ${i ? "right-[-8px]" : "left-[-8px]"} w-[8px]
341
- bg-[var(--color-blue-100)] -z-10`
342
- })) : "");
343
- })));
344
- };
345
- return /* @__PURE__ */ o.createElement("div", {
346
- className: `se-design-datepicker-container flex flex-col bg-[var(--color-white)] rounded-md shadow-md w-max ${X}`
347
- }, G && /* @__PURE__ */ o.createElement("div", {
348
- className: "se-design-datepicker-header flex justify-between items-center border-b border-[var(--color-gray-200)] p-4"
349
- }, /* @__PURE__ */ o.createElement("h2", {
350
- className: "datepicker-title"
351
- }, U), N && /* @__PURE__ */ o.createElement(T, {
352
- name: "close",
353
- size: 16,
354
- onClick: N,
355
- className: "cursor-pointer",
356
- automationId: `${m}-close`
357
- })), /* @__PURE__ */ o.createElement("div", {
358
- className: "se-design-datepicker-content flex"
359
- }, P && ge(), /* @__PURE__ */ o.createElement("div", {
360
- className: "flex"
361
- }, Y ? H(p) : /* @__PURE__ */ o.createElement(o.Fragment, null, H(p), /* @__PURE__ */ o.createElement("div", {
362
- className: "h-full w-[1px] border-r border-[var(--color-gray-200)]"
363
- }), H(F)))), !W && /* @__PURE__ */ o.createElement("div", {
364
- className: "se-design-datepicker-footer flex justify-end items-center gap-5 p-4 border-t border-[var(--color-gray-200)]"
365
- }, /* @__PURE__ */ o.createElement(S, {
366
- label: j?.clear || "Clear",
367
- type: "ghost",
368
- onClick: De,
369
- "data-automation-id": `${m}-clear-button`
370
- }), /* @__PURE__ */ o.createElement(S, {
371
- label: j?.apply || "Apply",
372
- type: "primary",
373
- onClick: me,
374
- "data-automation-id": `${m}-apply-button`
72
+ rotation: "270"
73
+ }), /* @__PURE__ */ t.createElement(p, c({}, l(r) ? {
74
+ "aria-current": "page"
75
+ } : {
76
+ href: e.href ?? "#",
77
+ onClick: (h) => {
78
+ e.href || h.preventDefault(), n?.(e);
79
+ }
80
+ }, {
81
+ className: `${f(r)}${l(r) ? "" : " cursor-pointer focus-outline"}`,
82
+ "data-automation-id": e?.automationId || `breadcrumbs-item-${r}`
83
+ }), e?.label));
375
84
  })));
376
85
  };
377
86
  export {
378
- Me as DatePicker
87
+ P as BreadCrumbs
379
88
  };
380
89
  //# sourceMappingURL=index50.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index50.js","sources":["../src/components/DatePicker/index.tsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport { Button } from '../Button';\nimport { Icon } from '../Icon';\nimport { Dropdown } from '../Dropdown';\n\nimport './style.scss';\n\nexport interface DateRange {\n startDate: Date | null;\n endDate: Date | null;\n}\n\nexport interface DatePickerProps {\n title?: string;\n isOpen?: boolean;\n initialStartDate?: Date;\n initialEndDate?: Date;\n onApply?: (dateRange: DateRange) => void;\n onClose?: () => void;\n shouldAllowFutureDateSelection?: boolean;\n maxDays?: number;\n disablePastDates?: boolean;\n singleDateSelection?: boolean;\n minYearOption?: number;\n showQuickActions?: boolean;\n className?: string;\n automationId?: string;\n showHeader?: boolean;\n showSingleMonth?: boolean;\n labels?: {\n title?: string;\n clear?: string;\n apply?: string;\n };\n}\n\nconst weekDays = ['S', 'M', 'T', 'W', 'T', 'F', 'S'];\nconst quickActions = ['Today', 'Yesterday', 'This Week', 'Last Week', 'This Month', 'Last Month'];\n\nconst months = [\n { value: 'january', label: 'January' },\n { value: 'february', label: 'February' },\n { value: 'march', label: 'March' },\n { value: 'april', label: 'April' },\n { value: 'may', label: 'May' },\n { value: 'june', label: 'June' },\n { value: 'july', label: 'July' },\n { value: 'august', label: 'August' },\n { value: 'september', label: 'September' },\n { value: 'october', label: 'October' },\n { value: 'november', label: 'November' },\n { value: 'december', label: 'December' }\n];\n\nexport const DatePicker: React.FC<DatePickerProps> = ({\n title = 'Select modified date',\n // isOpen = true,\n showHeader = true,\n initialStartDate,\n initialEndDate,\n onApply = () => {},\n onClose,\n shouldAllowFutureDateSelection = false,\n maxDays,\n disablePastDates = false,\n singleDateSelection = false,\n minYearOption,\n showQuickActions = false,\n showSingleMonth = false,\n className = '',\n automationId = 'datepicker',\n labels = {\n clear: 'Clear',\n apply: 'Apply'\n }\n}) => {\n const getDefaultDateRange = (): DateRange => {\n // If initial start and end dates are provided, use them\n if (initialStartDate && initialEndDate) {\n return {\n startDate: initialStartDate,\n endDate: initialEndDate\n };\n }\n\n // If no initial dates are provided, use today's date\n const endDate = new Date();\n endDate.setHours(23, 59, 59, 999); // End of today\n\n const startDate = new Date();\n startDate.setHours(0, 0, 0, 0); // Start of today\n\n return { startDate, endDate };\n };\n\n const getDefaultMonths = (): [Date, Date] => {\n const today = new Date();\n const lastMonth = new Date();\n\n // Set both to first day of their respective months\n today.setDate(1);\n lastMonth.setDate(1);\n\n if (!showSingleMonth) {\n lastMonth.setMonth(lastMonth.getMonth() - 1);\n }\n\n today.setHours(0, 0, 0, 0);\n lastMonth.setHours(0, 0, 0, 0);\n\n return [lastMonth, today];\n };\n\n const [selectedRange, setSelectedRange] = useState<DateRange>(getDefaultDateRange);\n const [defaultMonths, _] = useState(getDefaultMonths);\n const [leftMonth, setLeftMonth] = useState(() => defaultMonths[0]);\n const [rightMonth, setRightMonth] = useState(() => defaultMonths[1]);\n\n const getDaysInMonth = (year: number, month: number) => {\n return new Date(year, month + 1, 0).getDate();\n };\n\n const getFirstDayOfMonth = (year: number, month: number) => {\n return new Date(year, month, 1).getDay();\n };\n\n const generateCalendarDays = (year: number, month: number) => {\n const daysInMonth = getDaysInMonth(year, month);\n const firstDay = getFirstDayOfMonth(year, month);\n const days = [];\n\n // Add empty cells for days before the first day of the month\n for (let i = 0; i < firstDay; i++) {\n days.push(null);\n }\n\n // Add the days of the month\n for (let day = 1; day <= daysInMonth; day++) {\n const date = new Date(year, month, day);\n date.setHours(0, 0, 0, 0); // Normalize to start of day for consistent comparisons\n days.push(date);\n }\n\n return days;\n };\n\n const isSameDay = (date1: Date, date2: Date): boolean => {\n return (\n date1.getDate() === date2.getDate() &&\n date1.getMonth() === date2.getMonth() &&\n date1.getFullYear() === date2.getFullYear()\n );\n };\n\n const isDateInRange = (date: Date) => {\n if (!selectedRange.startDate || !selectedRange.endDate) return false;\n\n const compareDate = new Date(date);\n compareDate.setHours(12, 0, 0, 0); // Noon to avoid any timezone issues\n\n const startDate = new Date(selectedRange.startDate);\n startDate.setHours(0, 0, 0, 0);\n\n const endDate = new Date(selectedRange.endDate);\n endDate.setHours(23, 59, 59, 999);\n\n return compareDate >= startDate && compareDate <= endDate;\n };\n\n const isToday = (date: Date) => {\n const today = new Date();\n return (\n date.getDate() === today.getDate() &&\n date.getMonth() === today.getMonth() &&\n date.getFullYear() === today.getFullYear()\n );\n };\n\n const isDateDisabled = (date: Date | null) => {\n if (!date) return true;\n\n const today = new Date();\n today.setHours(0, 0, 0, 0);\n const dateToCheck = new Date(date);\n dateToCheck.setHours(0, 0, 0, 0);\n\n // If disablePastDates is true, disable dates before today\n if (disablePastDates && dateToCheck < today) {\n return true;\n }\n\n // If maxDays is specified, disable dates after maxDays from today\n if (maxDays !== undefined && maxDays !== null) {\n const maxDate = new Date(today);\n maxDate.setDate(maxDate.getDate() + maxDays);\n maxDate.setHours(0, 0, 0, 0); // Normalize to start of day\n // Disable all dates after maxDays (dates strictly after maxDate should be disabled)\n // Dates up to and including maxDate (today + maxDays) are allowed\n if (dateToCheck > maxDate) {\n return true;\n }\n // If maxDays is set, we're done checking - don't check shouldAllowFutureDateSelection\n return false;\n }\n\n // If shouldAllowFutureDateSelection is false and maxDays is not specified, disable dates after today\n if (!shouldAllowFutureDateSelection) {\n return dateToCheck > today;\n }\n\n return false;\n };\n\n const handleDateClick = (date: Date) => {\n if (isDateDisabled(date)) return;\n\n const clickedDate = new Date(date);\n clickedDate.setHours(12, 0, 0, 0); // Set to noon to avoid timezone issues\n\n // Single date selection mode - immediately apply on click\n if (singleDateSelection) {\n setSelectedRange({ startDate: clickedDate, endDate: clickedDate });\n onApply({ startDate: clickedDate, endDate: clickedDate });\n onClose?.();\n return;\n }\n\n // Range selection mode (original behavior)\n if (!selectedRange.startDate || selectedRange.endDate) {\n // No dates selected yet, or both dates are selected - start new selection\n setSelectedRange({ startDate: clickedDate, endDate: null });\n } else {\n // Only start date is selected, set end date\n const currentStart = new Date(selectedRange.startDate);\n currentStart.setHours(12, 0, 0, 0);\n\n const endDate = clickedDate > currentStart ? clickedDate : currentStart;\n const startDate = clickedDate > currentStart ? currentStart : clickedDate;\n\n setSelectedRange({ startDate, endDate });\n }\n };\n\n const handleMonthNavigation = (date: Date, increment: boolean) => {\n const newDate = new Date(date);\n newDate.setMonth(newDate.getMonth() + (increment ? 1 : -1));\n return newDate;\n };\n\n const ensureDateInCorrectOrder = (leftDate: Date, rightDate: Date): [Date, Date] => {\n if (leftDate.getTime() > rightDate.getTime()) {\n return [rightDate, leftDate];\n }\n return [leftDate, rightDate];\n };\n\n const handleMonthChange = (newDate: Date, isLeftCalendar: boolean) => {\n // For single month view, we only need to set the left month\n if (showSingleMonth) {\n setLeftMonth(newDate);\n return;\n }\n\n // For double month view, we need to ensure the dates are in the correct order\n if (isLeftCalendar) {\n const [newLeft, newRight] = ensureDateInCorrectOrder(newDate, rightMonth);\n setLeftMonth(newLeft);\n if (newRight !== rightMonth) {\n setRightMonth(newRight);\n }\n } else {\n const [newLeft, newRight] = ensureDateInCorrectOrder(leftMonth, newDate);\n if (newLeft !== leftMonth) {\n setLeftMonth(newLeft);\n }\n setRightMonth(newRight);\n }\n };\n\n const isStartDate = (date: Date): boolean => {\n if (!selectedRange?.startDate) return false;\n return isSameDay(date, selectedRange.startDate);\n };\n\n const isEndDate = (date: Date): boolean => {\n if (!selectedRange?.endDate) return false;\n return isSameDay(date, selectedRange?.endDate);\n };\n\n const isSameStartAndEndDate = (date: Date): boolean => {\n if (!selectedRange.startDate || !selectedRange.endDate) return false;\n return isSameDay(selectedRange.startDate, selectedRange.endDate) && isSameDay(date, selectedRange.startDate);\n };\n\n const getYearOptions = (currentYear: number, calendarYear: number) => {\n const startYear = minYearOption || currentYear - 10;\n let endYear = shouldAllowFutureDateSelection ? currentYear + 10 : currentYear;\n\n // If maxDays is specified, calculate the maximum year\n if (maxDays) {\n const today = new Date();\n const maxDate = new Date(today);\n maxDate.setDate(maxDate.getDate() + maxDays);\n const maxYear = maxDate.getFullYear();\n // Use the smaller of the two limits\n endYear = Math.min(endYear, maxYear);\n }\n\n endYear = Math.max(endYear, calendarYear);\n\n const yearCount = endYear - startYear + 1;\n\n return Array.from({ length: yearCount }, (_, i) => ({\n value: startYear + i,\n label: (startYear + i).toString()\n })).filter((year) => {\n if (year.value === calendarYear) {\n return true;\n }\n if (!shouldAllowFutureDateSelection && year.value > currentYear) {\n return false;\n }\n // If maxDays is specified, filter out years beyond maxDate\n if (maxDays) {\n const today = new Date();\n const maxDate = new Date(today);\n maxDate.setDate(maxDate.getDate() + maxDays);\n return year.value <= maxDate.getFullYear();\n }\n return true;\n });\n };\n\n const handleClear = () => {\n const today = new Date();\n const startDate = new Date();\n\n // Set start date to beginning of today\n startDate.setHours(0, 0, 0, 0);\n\n // Set end date to end of today\n today.setHours(23, 59, 59, 999);\n\n const defaultRange = { startDate, endDate: today };\n setSelectedRange(defaultRange);\n };\n\n const getStartOfDay = (date: Date) => {\n const newDate = new Date(date);\n newDate.setHours(0, 0, 0, 0);\n return newDate;\n };\n\n const getEndOfDay = (date: Date) => {\n const newDate = new Date(date);\n newDate.setHours(23, 59, 59, 999);\n return newDate;\n };\n\n const handleQuickAction = (action: string) => {\n const today = new Date();\n let startDate = new Date();\n let endDate = new Date();\n\n switch (action) {\n case 'Today':\n startDate = getStartOfDay(today);\n endDate = getEndOfDay(today);\n break;\n case 'Yesterday':\n startDate = getStartOfDay(new Date(today.setDate(today.getDate() - 1)));\n endDate = getEndOfDay(new Date(today));\n break;\n case 'This Week':\n const firstDayOfWeek = new Date(today.setDate(today.getDate() - today.getDay()));\n startDate = getStartOfDay(firstDayOfWeek);\n endDate = getEndOfDay(new Date());\n break;\n case 'Last Week':\n const lastWeekStart = new Date(today.setDate(today.getDate() - today.getDay() - 7));\n const lastWeekEnd = new Date(today.setDate(lastWeekStart.getDate() + 6));\n startDate = getStartOfDay(lastWeekStart);\n endDate = getEndOfDay(lastWeekEnd);\n break;\n case 'This Month':\n startDate = getStartOfDay(new Date(today.getFullYear(), today.getMonth(), 1));\n endDate = getEndOfDay(new Date());\n break;\n case 'Last Month':\n startDate = getStartOfDay(new Date(today.getFullYear(), today.getMonth() - 1, 1));\n endDate = getEndOfDay(new Date(today.getFullYear(), today.getMonth(), 0));\n break;\n }\n\n setSelectedRange({ startDate, endDate });\n };\n\n const renderQuickActions = () => {\n return (\n <div className=\"w-[147px] p-4 border-r border-[var(--color-gray-200)]\">\n <div className=\"flex flex-col gap-3\">\n {quickActions.map((action) => (\n <Button key={action} label={action} type=\"link\" onClick={() => handleQuickAction(action)} />\n ))}\n </div>\n </div>\n );\n };\n\n const handleApply = () => {\n const { startDate = null, endDate = null } = selectedRange;\n\n if (startDate && endDate) {\n onApply({ startDate, endDate });\n return;\n }\n\n if (startDate || endDate) {\n const selectedDate = startDate || endDate;\n onApply({ startDate: selectedDate, endDate: selectedDate });\n }\n };\n\n const renderCalendar = (date: Date) => {\n const year = date.getFullYear();\n const month = date.getMonth();\n const days = generateCalendarDays(year, month);\n const currentYear = new Date().getFullYear();\n const isLeftCalendar = date.getTime() === leftMonth.getTime();\n const yearOptions = getYearOptions(currentYear, year);\n\n return (\n <div className=\"se-design-calendar-container w-fit p-4\">\n <div className=\"flex justify-between items-center\">\n <Icon\n name=\"chevron\"\n rotation=\"90\"\n size={16}\n onClick={() => {\n const newDate = handleMonthNavigation(date, false);\n // Check if navigating back would go before today when disablePastDates is true\n if (disablePastDates) {\n const today = new Date();\n today.setHours(0, 0, 0, 0);\n if (newDate < today && newDate.getMonth() !== today.getMonth()) {\n return; // Don't navigate to past months\n }\n }\n handleMonthChange(newDate, isLeftCalendar);\n }}\n className={`datepicker-navigation-icon ${\n disablePastDates &&\n date.getMonth() === new Date().getMonth() &&\n date.getFullYear() === new Date().getFullYear()\n ? 'disabled'\n : ''\n }`}\n automationId={`${automationId}-previous-month`}\n />\n\n <div className=\"flex gap-2\" onClick={(e) => e.stopPropagation()}>\n <Dropdown\n type=\"select\"\n dropDownOptions={months}\n defaultSelectedValue={months[month]}\n selectBy=\"label\"\n optionsUniqueBy=\"value\"\n displaySelected={true}\n onOptionClick={(selectedOption) => {\n const newDate = new Date(date);\n newDate.setMonth(months.findIndex((m) => m.value === selectedOption.value));\n handleMonthChange(newDate, isLeftCalendar);\n }}\n className=\"w-[124px] dropdown-option-container\"\n />\n <Dropdown\n type=\"select\"\n dropDownOptions={yearOptions}\n defaultSelectedValue={yearOptions.find((y) => y.value === year)}\n selectBy=\"label\"\n optionsUniqueBy=\"value\"\n displaySelected={true}\n onOptionClick={(selectedOption) => {\n const newDate = new Date(date);\n newDate.setFullYear(selectedOption.value);\n handleMonthChange(newDate, isLeftCalendar);\n }}\n className=\"w-[104px] dropdown-option-container\"\n />\n </div>\n\n <Icon\n name=\"chevron\"\n rotation=\"270\"\n size={16}\n className={`datepicker-navigation-icon ${\n (!shouldAllowFutureDateSelection &&\n month === new Date().getMonth() &&\n year === new Date().getFullYear()) ||\n (maxDays !== undefined &&\n (() => {\n const today = new Date();\n const maxDate = new Date(today);\n maxDate.setDate(maxDate.getDate() + maxDays);\n return date.getMonth() === maxDate.getMonth() && date.getFullYear() === maxDate.getFullYear();\n })())\n ? 'disabled'\n : ''\n }`}\n onClick={() => {\n const newDate = handleMonthNavigation(date, true);\n // Check if the new date would exceed maxDays\n if (maxDays !== undefined) {\n const today = new Date();\n const maxDate = new Date(today);\n maxDate.setDate(maxDate.getDate() + maxDays);\n if (newDate > maxDate) {\n return;\n }\n }\n handleMonthChange(newDate, isLeftCalendar);\n }}\n automationId={`${automationId}-next-month`}\n />\n </div>\n <div className=\"grid grid-cols-7 gap-2 mt-3\">\n {weekDays.map((day, index) => (\n <div key={`${day}-${index}`} className=\"datepicker-weekdays\">\n {day}\n </div>\n ))}\n {days.map((date, index) => {\n const isStart = date && isStartDate(date);\n const isEnd = date && isEndDate(date);\n const isSameStartEnd = date && isSameStartAndEndDate(date);\n const inRange = date && !isStart && !isEnd && isDateInRange(date);\n const todayDate = date && isToday(date);\n const disabled = isDateDisabled(date);\n const dateValue = date?.getDate();\n\n return (\n <div\n key={`${date}-${index}`}\n onClick={() => !disabled && date && handleDateClick(date)}\n className={`\n relative h-10 w-10 flex items-center justify-center transition-colors rounded-md\n ${\n disabled ? 'cursor-not-allowed text-[var(--color-gray-600)] hover:bg-transparent' : 'cursor-pointer'\n }\n ${\n isSameStartEnd\n ? 'bg-[var(--color-blue-500)] text-[var(--color-white)] hover:bg-[var(--color-blue-600)]'\n : ''\n }\n ${\n !isSameStartEnd && isStart\n ? 'bg-[var(--color-blue-500)] text-[var(--color-white)] hover:bg-[var(--color-blue-600)]'\n : ''\n }\n ${\n !isSameStartEnd && isEnd\n ? 'bg-[var(--color-blue-500)] text-[var(--color-white)] hover:bg-[var(--color-blue-600)]'\n : ''\n }\n ${!isStart && !isEnd && inRange ? 'bg-[var(--color-blue-100)] text-[var(--color-blue-600)] outline outline-1 outline-[var(--color-blue-500)]' : ''}\n ${!isStart && !isEnd && !inRange && !disabled ? 'hover:bg-[var(--color-blue-100)] hover:outline hover:outline-1 hover:outline-[var(--color-blue-500)]' : ''}\n ${todayDate && !isStart && !isEnd ? 'text-[var(--color-blue-500)] bg-[var(--color-blue-100)] outline outline-1 outline-[var(--color-blue-500)]' : ''}\n ${!disabled && !isStart && !isEnd && !todayDate ? 'text-[var(--color-blue-500)]' : ''}\n `}\n data-automation-id={`${automationId}-date-${dateValue}`}\n >\n {date ? (\n <>\n {dateValue}\n {!isSameStartEnd && (isStart || isEnd) && (\n <div\n className={`absolute top-0 bottom-0 ${isStart ? 'right-[-8px]' : 'left-[-8px]'} w-[8px]\n bg-[var(--color-blue-100)] -z-10`}\n />\n )}\n </>\n ) : (\n ''\n )}\n </div>\n );\n })}\n </div>\n </div>\n );\n };\n\n return (\n <div\n className={`se-design-datepicker-container flex flex-col bg-[var(--color-white)] rounded-md shadow-md w-max ${className}`}\n >\n {showHeader && (\n <div className=\"se-design-datepicker-header flex justify-between items-center border-b border-[var(--color-gray-200)] p-4\">\n <h2 className=\"datepicker-title\">{title}</h2>\n {onClose && (\n <Icon\n name=\"close\"\n size={16}\n onClick={onClose}\n className=\"cursor-pointer\"\n automationId={`${automationId}-close`}\n />\n )}\n </div>\n )}\n <div className=\"se-design-datepicker-content flex\">\n {showQuickActions && renderQuickActions()}\n <div className=\"flex\">\n {showSingleMonth ? (\n renderCalendar(leftMonth)\n ) : (\n <>\n {renderCalendar(leftMonth)}\n <div className=\"h-full w-[1px] border-r border-[var(--color-gray-200)]\"></div>\n {renderCalendar(rightMonth)}\n </>\n )}\n </div>\n </div>\n {!singleDateSelection && (\n <div className=\"se-design-datepicker-footer flex justify-end items-center gap-5 p-4 border-t border-[var(--color-gray-200)]\">\n <Button\n label={labels?.clear || 'Clear'}\n type=\"ghost\"\n onClick={handleClear}\n data-automation-id={`${automationId}-clear-button`}\n />\n <Button\n label={labels?.apply || 'Apply'}\n type=\"primary\"\n onClick={handleApply}\n data-automation-id={`${automationId}-apply-button`}\n />\n </div>\n )}\n </div>\n );\n};\n"],"names":["React__default","useState","Button","Icon","Dropdown","weekDays","quickActions","months","value","label","DatePicker","title","showHeader","initialStartDate","initialEndDate","onApply","onClose","shouldAllowFutureDateSelection","maxDays","disablePastDates","singleDateSelection","minYearOption","showQuickActions","showSingleMonth","className","automationId","labels","clear","apply","getDefaultDateRange","startDate","endDate","Date","setHours","getDefaultMonths","today","lastMonth","setDate","setMonth","getMonth","selectedRange","setSelectedRange","defaultMonths","_","leftMonth","setLeftMonth","rightMonth","setRightMonth","getDaysInMonth","year","month","getDate","getFirstDayOfMonth","getDay","generateCalendarDays","daysInMonth","firstDay","days","i","push","day","date","isSameDay","date1","date2","getFullYear","isDateInRange","compareDate","isToday","isDateDisabled","dateToCheck","maxDate","handleDateClick","clickedDate","currentStart","handleMonthNavigation","increment","newDate","ensureDateInCorrectOrder","leftDate","rightDate","getTime","handleMonthChange","isLeftCalendar","newLeft","newRight","isStartDate","isEndDate","isSameStartAndEndDate","getYearOptions","currentYear","calendarYear","startYear","endYear","maxYear","Math","min","max","yearCount","Array","from","length","toString","filter","handleClear","getStartOfDay","getEndOfDay","handleQuickAction","action","firstDayOfWeek","lastWeekStart","lastWeekEnd","renderQuickActions","React","createElement","map","key","type","onClick","handleApply","selectedDate","renderCalendar","yearOptions","name","rotation","size","e","stopPropagation","dropDownOptions","defaultSelectedValue","selectBy","optionsUniqueBy","displaySelected","onOptionClick","selectedOption","findIndex","m","find","y","setFullYear","undefined","index","isStart","isEnd","isSameStartEnd","inRange","todayDate","disabled","dateValue","Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"index50.js","sources":["../src/components/BreadCrumbs/index.tsx"],"sourcesContent":["import React from 'react';\nimport { Icon } from '../Icon';\nimport { Popover } from '../Popover';\nimport { MenuList } from '../MenuList';\n\nimport './style.scss';\n\ninterface Crumb {\n id: string | number;\n label: string;\n href?: string;\n automationId?: string;\n}\n\nconst breadCrumbsClassNames = {\n container: 'se-design-breadcrumbs flex items-center',\n itemLabel: 'se-design-breadcrumbs-item-label inline-flex items-center w-fit',\n};\n\ninterface BreadCrumbsProps {\n crumbs: Crumb[];\n onCrumbClick?: (crumb: Crumb) => void;\n className?: any;\n /** Accessible name for the breadcrumb navigation landmark. Defaults to \"Breadcrumb\". */\n ariaLabel?: string;\n /** Heading level to use when only a single crumb is provided. Defaults to 1. */\n headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;\n}\n\nexport const BreadCrumbs: React.FC<BreadCrumbsProps> = ({ crumbs, onCrumbClick, className = '', ariaLabel = 'Breadcrumb', headingLevel = 1 }) => {\n const isSingleCrumb = crumbs?.length === 1;\n\n if (isSingleCrumb) {\n const HeadingTag = `h${headingLevel}` as React.ElementType;\n return (\n <div className={`${breadCrumbsClassNames.container} ${className}`} data-automation-id=\"breadcrumbs-container\">\n <HeadingTag className={`${breadCrumbsClassNames.itemLabel} single-crumb`}>\n {crumbs[0].label}\n </HeadingTag>\n </div>\n );\n }\n\n const shouldShowDropdown = crumbs?.length > 3;\n const visibleCrumbs = shouldShowDropdown ? crumbs?.slice(-2) : crumbs;\n const dropdownCrumbs = shouldShowDropdown ? crumbs?.slice(0, -2) : [];\n\n const isCurrentPage = (index: number) => index === visibleCrumbs?.length - 1;\n\n const getLabelClassNames = (index: number) => {\n if (isCurrentPage(index)) {\n return `${breadCrumbsClassNames.itemLabel} highlighted-crumb`;\n }\n return `${breadCrumbsClassNames.itemLabel} unhighlighted-crumb`;\n };\n\n return (\n <nav className={`${breadCrumbsClassNames.container} ${className}`} aria-label={ariaLabel} data-automation-id=\"breadcrumbs-container\">\n {dropdownCrumbs?.length > 0 && (\n <Popover\n className=\"se-design-overflow-breadcrumbs\"\n position=\"bottom-left\"\n noBorder\n ariaLabel=\"Show more breadcrumbs\"\n renderPopoverSrcElement={({ displayPopover }) => {\n return (\n <div\n className={`overflow-breadcrumbs-src-element px-1.5 py-1.5 rounded-md hover:cursor-pointer ${\n displayPopover ? 'bg-[var(--color-blue-200)]' : ''\n }`}\n data-automation-id=\"breadcrumbs-kebab-menu\"\n >\n <Icon name=\"kebab-menu\" />\n </div>\n );\n }}\n renderPopoverContents={({ closePopoverCb }) => (\n <MenuList\n items={dropdownCrumbs.map((crumb) => ({\n id: String(crumb?.id),\n label: crumb?.label,\n onClick: () => {\n onCrumbClick?.(crumb);\n closePopoverCb();\n }\n }))}\n />\n )}\n />\n )}\n <ol className=\"se-design-breadcrumbs-list inline-flex items-center\">\n {visibleCrumbs?.map((crumb, index) => {\n const Tag = isCurrentPage(index) ? 'span' : 'a';// current page should not be clickable\n return (\n <li key={crumb?.id} className=\"se-design-breadcrumbs-item inline-flex items-center w-fit text-xl\">\n {(index > 0 || shouldShowDropdown) && <Icon name=\"chevron\" rotation={'270'} />}\n <Tag\n {...(isCurrentPage(index)\n ? { 'aria-current': 'page' as const }\n : {\n href: crumb.href ?? '#',\n onClick: (e: React.MouseEvent<HTMLAnchorElement>) => {\n if (!crumb.href) e.preventDefault();\n onCrumbClick?.(crumb);\n }\n })}\n className={`${getLabelClassNames(index)}${!isCurrentPage(index) ? ' cursor-pointer focus-outline' : ''}`}\n data-automation-id={crumb?.automationId || `breadcrumbs-item-${index}`}\n >\n {crumb?.label}\n </Tag>\n </li>\n );\n })}\n </ol>\n </nav>\n );\n};\n"],"names":["breadCrumbsClassNames","container","itemLabel","BreadCrumbs","crumbs","onCrumbClick","className","ariaLabel","headingLevel","length","HeadingTag","React","createElement","label","shouldShowDropdown","visibleCrumbs","slice","dropdownCrumbs","isCurrentPage","index","getLabelClassNames","Popover","position","noBorder","renderPopoverSrcElement","displayPopover","Icon","name","renderPopoverContents","closePopoverCb","MenuList","items","map","crumb","id","String","onClick","Tag","key","rotation","_extends","href","e","preventDefault","automationId"],"mappings":"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"}