se-design 1.0.98 → 1.1.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 (396) hide show
  1. package/dist/assets/icons/document-commenting.svg +3 -0
  2. package/dist/assets/icons/reminder-clock.svg +6 -0
  3. package/dist/assets/style.css +1 -1
  4. package/dist/components/BottomSheet/index.d.ts +1 -0
  5. package/dist/index100.js +2 -2
  6. package/dist/index100.js.map +1 -1
  7. package/dist/index101.js +1 -1
  8. package/dist/index101.js.map +1 -1
  9. package/dist/index102.js +1 -1
  10. package/dist/index102.js.map +1 -1
  11. package/dist/index103.js +1 -1
  12. package/dist/index103.js.map +1 -1
  13. package/dist/index104.js +1 -1
  14. package/dist/index104.js.map +1 -1
  15. package/dist/index105.js +1 -1
  16. package/dist/index105.js.map +1 -1
  17. package/dist/index106.js +1 -1
  18. package/dist/index106.js.map +1 -1
  19. package/dist/index107.js +1 -1
  20. package/dist/index107.js.map +1 -1
  21. package/dist/index108.js +1 -1
  22. package/dist/index108.js.map +1 -1
  23. package/dist/index109.js +1 -1
  24. package/dist/index109.js.map +1 -1
  25. package/dist/index110.js +1 -1
  26. package/dist/index110.js.map +1 -1
  27. package/dist/index111.js +1 -1
  28. package/dist/index111.js.map +1 -1
  29. package/dist/index112.js +1 -1
  30. package/dist/index112.js.map +1 -1
  31. package/dist/index113.js +1 -1
  32. package/dist/index113.js.map +1 -1
  33. package/dist/index114.js +1 -1
  34. package/dist/index114.js.map +1 -1
  35. package/dist/index115.js +1 -1
  36. package/dist/index115.js.map +1 -1
  37. package/dist/index116.js +1 -1
  38. package/dist/index116.js.map +1 -1
  39. package/dist/index117.js +1 -1
  40. package/dist/index117.js.map +1 -1
  41. package/dist/index118.js +1 -1
  42. package/dist/index118.js.map +1 -1
  43. package/dist/index119.js +1 -1
  44. package/dist/index119.js.map +1 -1
  45. package/dist/index12.js +2 -2
  46. package/dist/index120.js +2 -2
  47. package/dist/index120.js.map +1 -1
  48. package/dist/index121.js +2 -2
  49. package/dist/index121.js.map +1 -1
  50. package/dist/index122.js +1 -1
  51. package/dist/index122.js.map +1 -1
  52. package/dist/index123.js +1 -1
  53. package/dist/index123.js.map +1 -1
  54. package/dist/index124.js +1 -1
  55. package/dist/index124.js.map +1 -1
  56. package/dist/index125.js +2 -2
  57. package/dist/index125.js.map +1 -1
  58. package/dist/index126.js +2 -2
  59. package/dist/index126.js.map +1 -1
  60. package/dist/index127.js +1 -1
  61. package/dist/index127.js.map +1 -1
  62. package/dist/index128.js +2 -2
  63. package/dist/index128.js.map +1 -1
  64. package/dist/index129.js +2 -2
  65. package/dist/index129.js.map +1 -1
  66. package/dist/index13.js +2 -2
  67. package/dist/index130.js +1 -1
  68. package/dist/index130.js.map +1 -1
  69. package/dist/index131.js +1 -1
  70. package/dist/index131.js.map +1 -1
  71. package/dist/index132.js +1 -1
  72. package/dist/index132.js.map +1 -1
  73. package/dist/index133.js +2 -2
  74. package/dist/index133.js.map +1 -1
  75. package/dist/index134.js +2 -2
  76. package/dist/index134.js.map +1 -1
  77. package/dist/index135.js +2 -2
  78. package/dist/index135.js.map +1 -1
  79. package/dist/index136.js +2 -2
  80. package/dist/index136.js.map +1 -1
  81. package/dist/index137.js +1 -1
  82. package/dist/index137.js.map +1 -1
  83. package/dist/index138.js +1 -1
  84. package/dist/index138.js.map +1 -1
  85. package/dist/index139.js +2 -2
  86. package/dist/index139.js.map +1 -1
  87. package/dist/index140.js +1 -1
  88. package/dist/index140.js.map +1 -1
  89. package/dist/index141.js +2 -2
  90. package/dist/index141.js.map +1 -1
  91. package/dist/index142.js +2 -2
  92. package/dist/index142.js.map +1 -1
  93. package/dist/index143.js +2 -2
  94. package/dist/index143.js.map +1 -1
  95. package/dist/index144.js +2 -2
  96. package/dist/index144.js.map +1 -1
  97. package/dist/index145.js +2 -2
  98. package/dist/index145.js.map +1 -1
  99. package/dist/index146.js +2 -2
  100. package/dist/index146.js.map +1 -1
  101. package/dist/index147.js +1 -1
  102. package/dist/index147.js.map +1 -1
  103. package/dist/index148.js +1 -1
  104. package/dist/index148.js.map +1 -1
  105. package/dist/index149.js +1 -1
  106. package/dist/index149.js.map +1 -1
  107. package/dist/index150.js +1 -1
  108. package/dist/index150.js.map +1 -1
  109. package/dist/index151.js +2 -2
  110. package/dist/index151.js.map +1 -1
  111. package/dist/index152.js +2 -2
  112. package/dist/index152.js.map +1 -1
  113. package/dist/index153.js +1 -1
  114. package/dist/index153.js.map +1 -1
  115. package/dist/index154.js +1 -1
  116. package/dist/index154.js.map +1 -1
  117. package/dist/index155.js +1 -1
  118. package/dist/index155.js.map +1 -1
  119. package/dist/index156.js +2 -2
  120. package/dist/index156.js.map +1 -1
  121. package/dist/index157.js +1 -1
  122. package/dist/index157.js.map +1 -1
  123. package/dist/index158.js +1 -1
  124. package/dist/index158.js.map +1 -1
  125. package/dist/index159.js +1 -1
  126. package/dist/index159.js.map +1 -1
  127. package/dist/index16.js +1 -1
  128. package/dist/index160.js +1 -1
  129. package/dist/index160.js.map +1 -1
  130. package/dist/index161.js +1 -1
  131. package/dist/index161.js.map +1 -1
  132. package/dist/index162.js +1 -1
  133. package/dist/index162.js.map +1 -1
  134. package/dist/index163.js +2 -2
  135. package/dist/index163.js.map +1 -1
  136. package/dist/index164.js +1 -1
  137. package/dist/index164.js.map +1 -1
  138. package/dist/index165.js +1 -1
  139. package/dist/index165.js.map +1 -1
  140. package/dist/index166.js +1 -1
  141. package/dist/index166.js.map +1 -1
  142. package/dist/index167.js +2 -2
  143. package/dist/index167.js.map +1 -1
  144. package/dist/index168.js +2 -2
  145. package/dist/index168.js.map +1 -1
  146. package/dist/index169.js +1 -1
  147. package/dist/index169.js.map +1 -1
  148. package/dist/index170.js +2 -2
  149. package/dist/index170.js.map +1 -1
  150. package/dist/index171.js +2 -2
  151. package/dist/index171.js.map +1 -1
  152. package/dist/index172.js +1 -1
  153. package/dist/index172.js.map +1 -1
  154. package/dist/index173.js +1 -1
  155. package/dist/index173.js.map +1 -1
  156. package/dist/index174.js +2 -2
  157. package/dist/index174.js.map +1 -1
  158. package/dist/index175.js +2 -2
  159. package/dist/index175.js.map +1 -1
  160. package/dist/index176.js +1 -1
  161. package/dist/index176.js.map +1 -1
  162. package/dist/index177.js +2 -2
  163. package/dist/index177.js.map +1 -1
  164. package/dist/index178.js +2 -2
  165. package/dist/index178.js.map +1 -1
  166. package/dist/index179.js +1 -1
  167. package/dist/index179.js.map +1 -1
  168. package/dist/index180.js +1 -1
  169. package/dist/index180.js.map +1 -1
  170. package/dist/index181.js +2 -2
  171. package/dist/index181.js.map +1 -1
  172. package/dist/index182.js +1 -1
  173. package/dist/index182.js.map +1 -1
  174. package/dist/index183.js +1 -1
  175. package/dist/index183.js.map +1 -1
  176. package/dist/index184.js +1 -1
  177. package/dist/index184.js.map +1 -1
  178. package/dist/index185.js +1 -1
  179. package/dist/index185.js.map +1 -1
  180. package/dist/index186.js +1 -1
  181. package/dist/index186.js.map +1 -1
  182. package/dist/index187.js +2 -2
  183. package/dist/index187.js.map +1 -1
  184. package/dist/index188.js +1 -1
  185. package/dist/index188.js.map +1 -1
  186. package/dist/index189.js +1 -1
  187. package/dist/index189.js.map +1 -1
  188. package/dist/index19.js +1 -1
  189. package/dist/index190.js +1 -1
  190. package/dist/index190.js.map +1 -1
  191. package/dist/index191.js +1 -1
  192. package/dist/index191.js.map +1 -1
  193. package/dist/index192.js +1 -1
  194. package/dist/index192.js.map +1 -1
  195. package/dist/index193.js +1 -1
  196. package/dist/index193.js.map +1 -1
  197. package/dist/index194.js +1 -1
  198. package/dist/index194.js.map +1 -1
  199. package/dist/index195.js +1 -1
  200. package/dist/index195.js.map +1 -1
  201. package/dist/index196.js +1 -1
  202. package/dist/index196.js.map +1 -1
  203. package/dist/index197.js +1 -1
  204. package/dist/index197.js.map +1 -1
  205. package/dist/index198.js +1 -1
  206. package/dist/index198.js.map +1 -1
  207. package/dist/index199.js +1 -1
  208. package/dist/index199.js.map +1 -1
  209. package/dist/index200.js +1 -1
  210. package/dist/index200.js.map +1 -1
  211. package/dist/index201.js +1 -1
  212. package/dist/index201.js.map +1 -1
  213. package/dist/index202.js +2 -2
  214. package/dist/index202.js.map +1 -1
  215. package/dist/index203.js +1 -1
  216. package/dist/index203.js.map +1 -1
  217. package/dist/index204.js +1 -1
  218. package/dist/index204.js.map +1 -1
  219. package/dist/index205.js +1 -1
  220. package/dist/index205.js.map +1 -1
  221. package/dist/index206.js +2 -2
  222. package/dist/index206.js.map +1 -1
  223. package/dist/index207.js +1 -1
  224. package/dist/index207.js.map +1 -1
  225. package/dist/index208.js +2 -2
  226. package/dist/index208.js.map +1 -1
  227. package/dist/index209.js +1 -1
  228. package/dist/index209.js.map +1 -1
  229. package/dist/index210.js +1 -1
  230. package/dist/index210.js.map +1 -1
  231. package/dist/index211.js +2 -2
  232. package/dist/index211.js.map +1 -1
  233. package/dist/index212.js +2 -2
  234. package/dist/index212.js.map +1 -1
  235. package/dist/index213.js +1 -1
  236. package/dist/index213.js.map +1 -1
  237. package/dist/index214.js +1 -1
  238. package/dist/index214.js.map +1 -1
  239. package/dist/index215.js +1 -1
  240. package/dist/index215.js.map +1 -1
  241. package/dist/index216.js +1 -1
  242. package/dist/index216.js.map +1 -1
  243. package/dist/index217.js +2 -2
  244. package/dist/index217.js.map +1 -1
  245. package/dist/index218.js +1 -1
  246. package/dist/index218.js.map +1 -1
  247. package/dist/index219.js +1 -1
  248. package/dist/index219.js.map +1 -1
  249. package/dist/index220.js +2 -2
  250. package/dist/index220.js.map +1 -1
  251. package/dist/index221.js +1 -1
  252. package/dist/index221.js.map +1 -1
  253. package/dist/index222.js +2 -2
  254. package/dist/index222.js.map +1 -1
  255. package/dist/index223.js +2 -2
  256. package/dist/index223.js.map +1 -1
  257. package/dist/index224.js +2 -2
  258. package/dist/index224.js.map +1 -1
  259. package/dist/index225.js +149 -2
  260. package/dist/index225.js.map +1 -1
  261. package/dist/index226.js +9 -2
  262. package/dist/index226.js.map +1 -1
  263. package/dist/index227.js +6 -2
  264. package/dist/index227.js.map +1 -1
  265. package/dist/index228.js +43 -2
  266. package/dist/index228.js.map +1 -1
  267. package/dist/index229.js +21 -2
  268. package/dist/index229.js.map +1 -1
  269. package/dist/index236.js +31 -0
  270. package/dist/index236.js.map +1 -0
  271. package/dist/index237.js +75 -0
  272. package/dist/index237.js.map +1 -0
  273. package/dist/index24.js +1 -1
  274. package/dist/{index88.js → index244.js} +1 -1
  275. package/dist/index244.js.map +1 -0
  276. package/dist/{index245.js → index246.js} +1 -1
  277. package/dist/{index245.js.map → index246.js.map} +1 -1
  278. package/dist/{index254.js → index255.js} +1 -1
  279. package/dist/{index254.js.map → index255.js.map} +1 -1
  280. package/dist/{index257.js → index258.js} +1 -1
  281. package/dist/{index257.js.map → index258.js.map} +1 -1
  282. package/dist/index26.js +1 -1
  283. package/dist/index267.js +169 -3
  284. package/dist/index267.js.map +1 -1
  285. package/dist/index268.js +7 -0
  286. package/dist/index268.js.map +1 -0
  287. package/dist/index270.js +18 -9
  288. package/dist/index270.js.map +1 -1
  289. package/dist/index271.js +9 -4
  290. package/dist/index271.js.map +1 -1
  291. package/dist/index272.js +10 -170
  292. package/dist/index272.js.map +1 -1
  293. package/dist/index273.js +5 -11
  294. package/dist/index273.js.map +1 -1
  295. package/dist/index274.js +170 -6
  296. package/dist/index274.js.map +1 -1
  297. package/dist/index275.js +11 -6
  298. package/dist/index275.js.map +1 -1
  299. package/dist/index276.js +5 -37
  300. package/dist/index276.js.map +1 -1
  301. package/dist/index277.js +6 -2
  302. package/dist/index277.js.map +1 -1
  303. package/dist/index278.js +37 -7
  304. package/dist/index278.js.map +1 -1
  305. package/dist/index279.js +2 -327
  306. package/dist/index279.js.map +1 -1
  307. package/dist/index280.js +7 -49
  308. package/dist/index280.js.map +1 -1
  309. package/dist/index281.js +327 -2
  310. package/dist/index281.js.map +1 -1
  311. package/dist/index282.js +45 -71
  312. package/dist/index282.js.map +1 -1
  313. package/dist/index283.js +2 -93
  314. package/dist/index283.js.map +1 -1
  315. package/dist/index284.js +72 -48
  316. package/dist/index284.js.map +1 -1
  317. package/dist/index285.js +92 -7
  318. package/dist/index285.js.map +1 -1
  319. package/dist/index286.js +51 -4
  320. package/dist/index286.js.map +1 -1
  321. package/dist/index287.js +7 -51
  322. package/dist/index287.js.map +1 -1
  323. package/dist/index288.js +5 -2
  324. package/dist/index288.js.map +1 -1
  325. package/dist/index289.js +52 -2
  326. package/dist/index289.js.map +1 -1
  327. package/dist/index29.js +2 -2
  328. package/dist/index290.js +5 -0
  329. package/dist/index290.js.map +1 -0
  330. package/dist/index291.js +5 -0
  331. package/dist/index291.js.map +1 -0
  332. package/dist/index30.js +1 -1
  333. package/dist/index31.js +1 -1
  334. package/dist/index33.js +10 -11
  335. package/dist/index34.js +1 -1
  336. package/dist/index36.js +1 -1
  337. package/dist/index37.js +25 -25
  338. package/dist/index37.js.map +1 -1
  339. package/dist/index38.js +1 -1
  340. package/dist/index39.js +1 -1
  341. package/dist/index40.js +2 -2
  342. package/dist/index41.js +1 -1
  343. package/dist/index43.js +2 -3
  344. package/dist/index44.js +9 -10
  345. package/dist/index45.js +2 -3
  346. package/dist/index47.js +1 -1
  347. package/dist/index52.js +2 -2
  348. package/dist/index55.js +1 -1
  349. package/dist/index57.js +1 -1
  350. package/dist/index58.js +1 -1
  351. package/dist/index59.js +1 -1
  352. package/dist/index6.js +251 -247
  353. package/dist/index6.js.map +1 -1
  354. package/dist/index61.js +16 -17
  355. package/dist/index63.js +1 -1
  356. package/dist/index65.js +49 -43
  357. package/dist/index65.js.map +1 -1
  358. package/dist/index67.js +1 -1
  359. package/dist/index69.js +1 -1
  360. package/dist/index7.js +8 -9
  361. package/dist/index71.js +2 -3
  362. package/dist/index85.js +1 -1
  363. package/dist/index87.js +1 -1
  364. package/dist/index89.js +2 -28
  365. package/dist/index89.js.map +1 -1
  366. package/dist/index9.js +1 -1
  367. package/dist/index90.js +2 -19
  368. package/dist/index90.js.map +1 -1
  369. package/dist/index91.js +2 -9
  370. package/dist/index91.js.map +1 -1
  371. package/dist/index92.js +2 -43
  372. package/dist/index92.js.map +1 -1
  373. package/dist/index93.js +2 -6
  374. package/dist/index93.js.map +1 -1
  375. package/dist/index94.js +2 -72
  376. package/dist/index94.js.map +1 -1
  377. package/dist/index95.js +2 -21
  378. package/dist/index95.js.map +1 -1
  379. package/dist/index96.js +5 -0
  380. package/dist/index96.js.map +1 -0
  381. package/dist/index97.js +2 -2
  382. package/dist/index97.js.map +1 -1
  383. package/dist/index98.js +2 -2
  384. package/dist/index98.js.map +1 -1
  385. package/dist/index99.js +1 -1
  386. package/dist/index99.js.map +1 -1
  387. package/package.json +1 -1
  388. package/dist/index230.js +0 -5
  389. package/dist/index230.js.map +0 -1
  390. package/dist/index231.js +0 -152
  391. package/dist/index231.js.map +0 -1
  392. package/dist/index266.js +0 -173
  393. package/dist/index266.js.map +0 -1
  394. package/dist/index269.js +0 -13
  395. package/dist/index269.js.map +0 -1
  396. package/dist/index88.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index6.js","sources":["../src/components/Icon/index.tsx"],"sourcesContent":["// TODO: `applyAttributesToElement` recursion drops `size` for nested elements (pre-existing).\nimport React 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 id?: 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 * Native HTML title attribute — renders as a browser tooltip on hover.\n * For mouse users only; does not replace ariaLabel for screen readers.\n */\n htmlTitle?: string;\n /**\n * Override tab order. Pass tabIndex={0} to make a non-interactive or disabled icon\n * focusable (e.g. for tooltip access). Overrides the hook's default when provided.\n */\n tabIndex?: number;\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 = React.forwardRef<HTMLDivElement, IconProps>((props, ref) => {\n const {\n name = '',\n id,\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 htmlTitle\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 hasTabIndex = props.tabIndex !== undefined;\n const { pressProps, role, tabIndex: hookTabIndex, isDisabled } = useAccessiblePress({\n isNative: false,\n onClick: isInteractive ? (e: React.MouseEvent<HTMLElement>) => onClick?.(e) : undefined,\n disabled: isInteractive ? disabled : false,\n tabIndex: props.tabIndex ?? 0,\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 finalTabIndex = hasTabIndex ? props.tabIndex : hookTabIndex;\n const interactiveProps = isInteractive\n ? {\n ...pressProps,\n role,\n tabIndex: finalTabIndex,\n ...accessibleNameProps,\n 'aria-pressed': ariaPressed,\n 'aria-expanded': ariaExpanded,\n 'aria-controls': ariaControls || undefined\n }\n : undefined;\n\n return (\n <div\n ref={ref}\n id={id}\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 && !hasTabIndex ? 'true' : undefined}\n title={htmlTitle}\n {...interactiveProps}\n {...(!isInteractive && hasTabIndex && { tabIndex: props.tabIndex, ...accessibleNameProps })}\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\nIcon.displayName = 'Icon';\n"],"names":["ICON_MAP","import","applyAttributesToElement","element","fill","stroke","size","hasAttribute","getAttribute","setAttribute","toString","Array","from","children","forEach","child","Icon","React","forwardRef","props","ref","name","id","className","onClick","ariaLabel","ariaLabelledBy","ariaDescribedBy","ariaPressed","ariaExpanded","ariaControls","rotation","shouldStopPropagation","disabled","htmlTitle","iconRotationClasses","src","console","error","isInteractive","computedAriaLabel","hasTabIndex","tabIndex","undefined","pressProps","role","hookTabIndex","isDisabled","useAccessiblePress","isNative","e","stopPropagation","accessibleNameProps","getA11yNameAttributes","finalTabIndex","interactiveProps","createElement","_extends","title","automationId","ReactSVG","wrapper","beforeInjection","svg","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAMA,KAAoCC,uBAAAA,OAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,mCAAAA;AAAAA,EAAAA,mCAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,4BAAAA;AAAAA,EAAAA,mCAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,yCAAAA;AAAAA,EAAAA,2CAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,sCAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,iDAAAA;AAAAA,EAAAA,gDAAAA;AAAAA,EAAAA,2CAAAA;AAAAA,EAAAA,wCAAAA;AAAAA,EAAAA,uCAAAA;AAAAA,EAAAA,6CAAAA;AAAAA,EAAAA,8CAAAA;AAAAA,EAAAA,6CAAAA;AAAAA,EAAAA,wCAAAA;AAAAA,EAAAA,uCAAAA;AAAAA,EAAAA,wCAAAA;AAAAA,EAAAA,mCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,wCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,6BAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,mCAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,2CAAAA;AAAAA,EAAAA,uCAAAA;AAAAA,EAAAA,sCAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,6CAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,uCAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,sCAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,sCAAAA;AAAAA,EAAAA,mCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,uCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,sCAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,mCAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,wCAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,yCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,yCAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,sCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,yCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,4CAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,mCAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,sCAAAA;AAAAA,EAAAA,sCAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,sCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,0CAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,0CAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,yCAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,6BAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,mCAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,uCAAAA;AAAAA,EAAAA,6BAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,8BAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,oCAAAA;AAAAA,EAAAA,gCAAAA;AAAAA,EAAAA,uCAAAA;AAAAA,EAAAA,+BAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,wCAAAA;AAAAA,EAAAA,qCAAAA;AAAAA,EAAAA,2CAAAA;AAAAA,EAAAA,iCAAAA;AAAAA,EAAAA,kCAAAA;AAAAA,CAAAA,GAiEpCC,IAA2BA,CAACC,GAAkBC,GAAeC,GAAiBC,MAAkB;AAEpG,EAAIF,KAAQD,EAAQI,aAAa,MAAM,KACjBJ,EAAQK,aAAa,MAAM,MAE3B,UAClBL,EAAQM,aAAa,QAAQL,CAAI,GAIjCC,KAAUF,EAAQI,aAAa,QAAQ,KACzCJ,EAAQM,aAAa,UAAUJ,CAAM,GAGnCC,KAAQH,EAAQI,aAAa,OAAO,KACtCJ,EAAQM,aAAa,SAASH,EAAKI,SAAAA,CAAU,GAG3CJ,KAAQH,EAAQI,aAAa,QAAQ,KACvCJ,EAAQM,aAAa,UAAUH,EAAKI,SAAAA,CAAU,GAIhDC,MAAMC,KAAKT,EAAQU,QAAQ,EAAEC,QAASC,CAAAA,MAAU;AAC9Cb,IAAAA,EAAyBa,GAAOX,GAAMC,CAAM;AAAA,EAC9C,CAAC;AACH,GAEaW,KAAOC,gBAAAA,EAAMC,WAAsC,CAACC,GAAOC,MAAQ;AAC9E,QAAM;AAAA,IACJC,MAAAA,IAAO;AAAA,IACPC,IAAAA;AAAAA,IACAC,WAAAA,IAAY;AAAA,IACZC,SAAAA;AAAAA,IACAC,WAAAA;AAAAA,IACAC,gBAAAA;AAAAA,IACAC,iBAAAA;AAAAA,IACAC,aAAAA;AAAAA,IACAC,cAAAA;AAAAA,IACAC,cAAAA;AAAAA,IACA1B,MAAAA;AAAAA,IACAC,QAAAA;AAAAA,IACA0B,UAAAA,IAAW;AAAA,IACXzB,MAAAA;AAAAA,IACA0B,uBAAAA,IAAwB;AAAA,IACxBC,UAAAA,IAAW;AAAA,IACXC,WAAAA;AAAAA,EAAAA,IACEf,GACEgB,IAAsB;AAAA,IAC1B,GAAK;AAAA,IACL,IAAM;AAAA,IACN,IAAM;AAAA,IACN,KAAO;AAAA,IACP,KAAO;AAAA,IACP,KAAO;AAAA,IACP,KAAO;AAAA,IACP,KAAO;AAAA,EAAA,GAEHC,IAAMpC,GAAS,qBAAqBqB,CAAI,MAAM;AAEpD,MAAI,CAACe;AACHC,mBAAQC,MAAM,SAASjB,CAAI,0BAA0B,GAC9C;AAGT,QAAMkB,IAAgB,OAAOf,KAAY,YACnCgB,IAAoBf,KAAaJ,GAUjCoB,IAActB,EAAMuB,aAAaC,QACjC;AAAA,IAAEC,YAAAA;AAAAA,IAAYC,MAAAA;AAAAA,IAAMH,UAAUI;AAAAA,IAAcC,YAAAA;AAAAA,EAAAA,IAAeC,GAAmB;AAAA,IAClFC,UAAU;AAAA,IACVzB,SAASe,IAAgB,CAACW,MAAqC1B,IAAU0B,CAAC,IAAIP;AAAAA,IAC9EV,UAAUM,IAAgBN,IAAW;AAAA,IACrCS,UAAUvB,EAAMuB,YAAY;AAAA,IAC5BS,iBAAiBnB;AAAAA,EAAAA,CAClB,GAGKoB,IAAsBC,GAAsB;AAAA,IAChD5B,WAAWe;AAAAA,IACXd,gBAAAA;AAAAA,IACAC,iBAAAA;AAAAA,EAAAA,CACD,GAEK2B,IAAgBb,IAActB,EAAMuB,WAAWI,GAC/CS,IAAmBhB,IACrB;AAAA,IACE,GAAGK;AAAAA,IACHC,MAAAA;AAAAA,IACAH,UAAUY;AAAAA,IACV,GAAGF;AAAAA,IACH,gBAAgBxB;AAAAA,IAChB,iBAAiBC;AAAAA,IACjB,iBAAiBC,KAAgBa;AAAAA,EAAAA,IAEnCA;AAEJ,SACE1B,gBAAAA,EAAAuC,cAAA,OAAAC,EAAA;AAAA,IACErC,KAAAA;AAAAA,IACAE,IAAAA;AAAAA,IACAC,WAAW,qFACTgB,IAAgB,GAAGQ,IAAa,8BAA8B,8BAA8B,KAAK,EAAE,IACjGxB,CAAS,IAAIY,EAAoBJ,CAAQ,CAAC;AAAA,IAC9C,eAAa,CAACQ,KAAiB,CAACE,IAAc,SAASE;AAAAA,IACvDe,OAAOxB;AAAAA,EAAAA,GACHqB,GACC,CAAChB,KAAiBE,KAAe;AAAA,IAAEC,UAAUvB,EAAMuB;AAAAA,IAAU,GAAGU;AAAAA,EAAAA,GAAqB;AAAA,IAC1F,sBAAoBjC,GAAOwC;AAAAA,EAAAA,CAAa,GAExC1C,gBAAAA,EAAAuC,cAACI,IAAQ;AAAA,IACPxB,KAAAA;AAAAA,IACAyB,SAAQ;AAAA,IACRC,iBAAkBC,CAAAA,MAAQ;AACxBA,MAAAA,EAAItD,aAAa,eAAe,MAAM,GACtCsD,EAAItD,aAAa,QAAQ,MAAM,GAC/BP,EAAyB6D,GAAK3D,GAAMC,GAAQC,CAAI;AAAA,IAClD;AAAA,EAAA,CACD,CACE;AAET,CAAC;AAEDU,GAAKgD,cAAc;"}
1
+ {"version":3,"file":"index6.js","sources":["../src/components/Icon/index.tsx"],"sourcesContent":["// TODO: `applyAttributesToElement` recursion drops `size` for nested elements (pre-existing).\nimport React 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 id?: 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 * Native HTML title attribute — renders as a browser tooltip on hover.\n * For mouse users only; does not replace ariaLabel for screen readers.\n */\n htmlTitle?: string;\n /**\n * Override tab order. Pass tabIndex={0} to make a non-interactive or disabled icon\n * focusable (e.g. for tooltip access). Overrides the hook's default when provided.\n */\n tabIndex?: number;\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 = React.forwardRef<HTMLDivElement, IconProps>((props, ref) => {\n const {\n name = '',\n id,\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 htmlTitle\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 hasTabIndex = props.tabIndex !== undefined;\n const { pressProps, role, tabIndex: hookTabIndex, isDisabled } = useAccessiblePress({\n isNative: false,\n onClick: isInteractive ? (e: React.MouseEvent<HTMLElement>) => onClick?.(e) : undefined,\n disabled: isInteractive ? disabled : false,\n tabIndex: props.tabIndex ?? 0,\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 finalTabIndex = hasTabIndex ? props.tabIndex : hookTabIndex;\n const interactiveProps = isInteractive\n ? {\n ...pressProps,\n role,\n tabIndex: finalTabIndex,\n ...accessibleNameProps,\n 'aria-pressed': ariaPressed,\n 'aria-expanded': ariaExpanded,\n 'aria-controls': ariaControls || undefined\n }\n : undefined;\n\n return (\n <div\n ref={ref}\n id={id}\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 && !hasTabIndex ? 'true' : undefined}\n title={htmlTitle}\n {...interactiveProps}\n {...(!isInteractive && hasTabIndex && { tabIndex: props.tabIndex, ...accessibleNameProps })}\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\nIcon.displayName = 'Icon';\n"],"names":["ICON_MAP","import","applyAttributesToElement","element","fill","stroke","size","hasAttribute","getAttribute","setAttribute","toString","Array","from","children","forEach","child","Icon","React","forwardRef","props","ref","name","id","className","onClick","ariaLabel","ariaLabelledBy","ariaDescribedBy","ariaPressed","ariaExpanded","ariaControls","rotation","shouldStopPropagation","disabled","htmlTitle","iconRotationClasses","src","console","error","isInteractive","computedAriaLabel","hasTabIndex","tabIndex","undefined","pressProps","role","hookTabIndex","isDisabled","useAccessiblePress","isNative","e","stopPropagation","accessibleNameProps","getA11yNameAttributes","finalTabIndex","interactiveProps","createElement","_extends","title","automationId","ReactSVG","wrapper","beforeInjection","svg","displayName"],"mappings":"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"}
package/dist/index61.js CHANGED
@@ -1,4 +1,4 @@
1
- import t from "react";
1
+ import a from "react";
2
2
  /* empty css */
3
3
  const n = ({
4
4
  element: e,
@@ -15,12 +15,12 @@ const n = ({
15
15
  "--shimmer-base-color": s,
16
16
  "--shimmer-highlight-color": m
17
17
  }, r = `se-design-shimmer-element se-design-shimmer-${e.type}`;
18
- return /* @__PURE__ */ t.createElement("div", {
18
+ return /* @__PURE__ */ a.createElement("div", {
19
19
  className: r,
20
20
  style: i
21
- }, e.children && e.children.map((a, p) => /* @__PURE__ */ t.createElement(n, {
21
+ }, e.children && e.children.map((t, p) => /* @__PURE__ */ a.createElement(n, {
22
22
  key: p,
23
- element: a,
23
+ element: t,
24
24
  animationDuration: d,
25
25
  baseColor: s,
26
26
  highlightColor: m
@@ -40,48 +40,48 @@ const n = ({
40
40
  alignItems: e.alignItems,
41
41
  flex: e.flex
42
42
  };
43
- return /* @__PURE__ */ t.createElement("div", {
43
+ return /* @__PURE__ */ a.createElement("div", {
44
44
  className: `se-design-shimmer-container ${e.className || ""}`,
45
45
  style: i
46
- }, e.children.map((r, a) => r.type === "container" ? /* @__PURE__ */ t.createElement(y, {
47
- key: a,
46
+ }, e.children.map((r, t) => r.type === "container" ? /* @__PURE__ */ a.createElement(y, {
47
+ key: t,
48
48
  container: r,
49
49
  animationDuration: d,
50
50
  baseColor: s,
51
51
  highlightColor: m
52
- }) : /* @__PURE__ */ t.createElement(n, {
53
- key: a,
52
+ }) : /* @__PURE__ */ a.createElement(n, {
53
+ key: t,
54
54
  element: r,
55
55
  animationDuration: d,
56
56
  baseColor: s,
57
57
  highlightColor: m
58
58
  })));
59
- }, l = ({
59
+ }, g = ({
60
60
  structure: e,
61
61
  className: d = "",
62
62
  animationDuration: s = 3,
63
63
  baseColor: m = "var(--color-gray-700)",
64
64
  highlightColor: i = "var(--color-gray-600)",
65
65
  width: r,
66
- height: a
66
+ height: t
67
67
  }) => {
68
68
  const p = {
69
69
  width: r ? typeof r == "number" ? `${r}px` : r : "100%",
70
- height: a ? typeof a == "number" ? `${a}px` : a : "auto",
70
+ height: t ? typeof t == "number" ? `${t}px` : t : "auto",
71
71
  "--shimmer-duration": `${s}s`,
72
72
  "--shimmer-base-color": m,
73
73
  "--shimmer-highlight-color": i
74
74
  };
75
- return /* @__PURE__ */ t.createElement("div", {
75
+ return /* @__PURE__ */ a.createElement("div", {
76
76
  className: `se-design-shimmer-loader ${d}`,
77
77
  style: p
78
- }, e.map((c, o) => c.type === "container" ? /* @__PURE__ */ t.createElement(y, {
78
+ }, e.map((c, o) => c.type === "container" ? /* @__PURE__ */ a.createElement(y, {
79
79
  key: o,
80
80
  container: c,
81
81
  animationDuration: s,
82
82
  baseColor: m,
83
83
  highlightColor: i
84
- }) : /* @__PURE__ */ t.createElement(n, {
84
+ }) : /* @__PURE__ */ a.createElement(n, {
85
85
  key: o,
86
86
  element: c,
87
87
  animationDuration: s,
@@ -90,7 +90,6 @@ const n = ({
90
90
  })));
91
91
  };
92
92
  export {
93
- l as ShimmerLoader,
94
- l as default
93
+ g as ShimmerLoader
95
94
  };
96
95
  //# sourceMappingURL=index61.js.map
package/dist/index63.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import p, { useState as A, useRef as O, useEffect as j } from "react";
2
- import { useStableId as W } from "./index93.js";
2
+ import { useStableId as W } from "./index227.js";
3
3
  /* empty css */
4
4
  const M = ({
5
5
  length: n = 6,
package/dist/index65.js CHANGED
@@ -1,89 +1,95 @@
1
- import e, { useRef as S, useState as f } from "react";
2
- import { CustomModal as T } from "./index13.js";
3
- import { Icon as v } from "./index6.js";
1
+ import e, { useRef as T, useState as g } from "react";
2
+ import { CustomModal as C } from "./index13.js";
3
+ import { Icon as E } from "./index6.js";
4
4
  /* empty css */
5
- const C = ({
6
- children: c = null,
5
+ const M = ({
6
+ children: l = null,
7
7
  title: n = "",
8
8
  onClose: s = () => {
9
9
  },
10
- showCloseIcon: l = !1,
10
+ showCloseIcon: m = !1,
11
11
  showBackButton: a = !1,
12
- onBack: m = () => {
12
+ onBack: i = () => {
13
13
  },
14
- className: i = "",
14
+ className: u = "",
15
15
  automationId: r = "",
16
- minHeight: u = "auto"
16
+ minHeight: d = "auto",
17
+ maxHeight: c = ""
17
18
  }) => {
18
- const t = S(null), [g, p] = f(0), [E, h] = f(0), [b, Y] = f(!1), k = (o) => {
19
- p(o.touches[0].clientY), h(o.touches[0].clientY), Y(!0);
20
- }, N = (o) => {
21
- if (!b) return;
22
- const d = o.touches[0].clientY, x = d - g;
23
- x > 0 && (h(d), t.current && (t.current.style.transform = `translateY(${x}px)`));
24
- }, y = () => {
25
- if (!b) return;
26
- E - g > 60 ? s() : t.current && (t.current.style.transform = "translateY(0)"), Y(!1), p(0), h(0);
19
+ const t = T(null), [p, b] = g(0), [k, h] = g(0), [Y, x] = g(!1), N = (o) => {
20
+ b(o.touches[0].clientY), h(o.touches[0].clientY), x(!0);
21
+ }, y = (o) => {
22
+ if (!Y) return;
23
+ const f = o.touches[0].clientY, v = f - p;
24
+ v > 0 && (h(f), t.current && (t.current.style.transform = `translateY(${v}px)`));
25
+ }, S = () => {
26
+ if (!Y) return;
27
+ k - p > 60 ? s() : t.current && (t.current.style.transform = "translateY(0)"), x(!1), b(0), h(0);
27
28
  };
28
29
  return /* @__PURE__ */ e.createElement("div", {
29
30
  ref: t,
30
- className: `se-design-bottom-sheet relative h-max max-h-[98vh] rounded-t-2xl flex flex-col pt-5 ${i}`,
31
+ className: `se-design-bottom-sheet relative h-max max-h-[98vh] rounded-t-2xl flex flex-col pt-5 ${u}`,
31
32
  onClick: (o) => o.stopPropagation(),
32
- onTouchStart: k,
33
- onTouchMove: N,
34
- onTouchEnd: y,
33
+ onTouchStart: N,
34
+ onTouchMove: y,
35
+ onTouchEnd: S,
35
36
  "data-automation-id": r,
36
37
  style: {
37
- minHeight: u
38
+ minHeight: d,
39
+ ...c ? {
40
+ maxHeight: c
41
+ } : {}
38
42
  }
39
43
  }, (n || a) && /* @__PURE__ */ e.createElement("div", {
40
44
  className: "se-design-bottom-sheet-header flex items-center justify-left gap-3 mr-6 px-4"
41
- }, a && /* @__PURE__ */ e.createElement(v, {
45
+ }, a && /* @__PURE__ */ e.createElement(E, {
42
46
  name: "back",
43
47
  stroke: "var(--color-gray-700)",
44
- onClick: m,
48
+ onClick: i,
45
49
  className: "se-design-bottom-sheet-back-icon cursor-pointer",
46
50
  automationId: `${r}-back-icon`
47
51
  }), n && /* @__PURE__ */ e.createElement("div", {
48
52
  className: "se-design-bottom-sheet-title text-lg font-semibold"
49
- }, n)), l && /* @__PURE__ */ e.createElement(v, {
53
+ }, n)), m && /* @__PURE__ */ e.createElement(E, {
50
54
  name: "close",
51
55
  onClick: s,
52
56
  className: "se-design-bottom-sheet-close-icon absolute top-6 right-4 cursor-pointer z-10",
53
57
  automationId: `${r}-close-icon`
54
58
  }), /* @__PURE__ */ e.createElement("div", {
55
59
  className: "se-design-bottom-sheet-content px-4 pb-5 flex-1 min-h-0 overflow-y-auto"
56
- }, c));
57
- }, I = ({
58
- isOpen: c = !1,
60
+ }, l));
61
+ }, _ = ({
62
+ isOpen: l = !1,
59
63
  title: n = "",
60
64
  onClose: s = () => {
61
65
  },
62
- children: l = null,
66
+ children: m = null,
63
67
  showCloseIcon: a = !0,
64
- showBackButton: m = !1,
65
- onBack: i = () => {
68
+ showBackButton: i = !1,
69
+ onBack: u = () => {
66
70
  },
67
71
  className: r = "",
68
- automationId: u = "bottomsheet",
69
- minHeight: t = ""
70
- }) => /* @__PURE__ */ e.createElement(T, {
71
- isOpen: c,
72
+ automationId: d = "bottomsheet",
73
+ minHeight: c = "",
74
+ maxHeight: t = ""
75
+ }) => /* @__PURE__ */ e.createElement(C, {
76
+ isOpen: l,
72
77
  onClose: s,
73
78
  onModalClick: s,
74
79
  className: "custom-bottom-sheet",
75
- renderModalContent: () => /* @__PURE__ */ e.createElement(C, {
80
+ renderModalContent: () => /* @__PURE__ */ e.createElement(M, {
76
81
  title: n,
77
82
  onClose: s,
78
83
  showCloseIcon: a,
79
- showBackButton: m,
80
- onBack: i,
84
+ showBackButton: i,
85
+ onBack: u,
81
86
  className: r,
82
- automationId: u,
83
- minHeight: t
84
- }, l)
87
+ automationId: d,
88
+ minHeight: c,
89
+ maxHeight: t
90
+ }, m)
85
91
  });
86
92
  export {
87
- I as BottomSheet
93
+ _ as BottomSheet
88
94
  };
89
95
  //# sourceMappingURL=index65.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index65.js","sources":["../src/components/BottomSheet/index.tsx"],"sourcesContent":["import React, { FC, useState, useRef } from 'react';\nimport { CustomModal } from '../CustomModal';\nimport { Icon } from '../Icon';\n\nimport './style.scss';\n\nexport interface BottomSheetProps {\n isOpen: boolean;\n title?: string;\n onClose: () => void;\n showCloseIcon?: boolean;\n showBackButton?: boolean;\n onBack?: () => void;\n children: React.ReactNode;\n className?: string;\n automationId?: string;\n minHeight?: string;\n}\n\ninterface BottomSheetContentProps {\n title?: string;\n onClose: () => void;\n showCloseIcon?: boolean;\n showBackButton?: boolean;\n onBack?: () => void;\n children: React.ReactNode;\n className?: string;\n automationId?: string;\n minHeight?: string;\n}\n\nconst BottomSheetContent: FC<BottomSheetContentProps> = ({\n children = null,\n title = '',\n onClose = () => {},\n showCloseIcon = false,\n showBackButton = false,\n onBack = () => {},\n className = '',\n automationId = '',\n minHeight = 'auto'\n}) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const [startY, setStartY] = useState<number>(0);\n const [currentY, setCurrentY] = useState<number>(0);\n const [isDragging, setIsDragging] = useState<boolean>(false);\n\n const handleTouchStart = (e: React.TouchEvent) => {\n setStartY(e.touches[0].clientY);\n setCurrentY(e.touches[0].clientY);\n setIsDragging(true);\n };\n\n const handleTouchMove = (e: React.TouchEvent) => {\n if (!isDragging) return;\n\n const touchY = e.touches[0].clientY;\n const deltaY = touchY - startY;\n\n // Only allow dragging down\n if (deltaY > 0) {\n setCurrentY(touchY);\n if (contentRef.current) {\n contentRef.current.style.transform = `translateY(${deltaY}px)`;\n }\n }\n };\n\n const handleTouchEnd = () => {\n if (!isDragging) return;\n\n const deltaY = currentY - startY;\n const threshold = 60; // pixels to swipe down to trigger close\n\n if (deltaY > threshold) {\n // Trigger close\n onClose();\n } else {\n // Reset position\n if (contentRef.current) {\n contentRef.current.style.transform = 'translateY(0)';\n }\n }\n\n setIsDragging(false);\n setStartY(0);\n setCurrentY(0);\n };\n\n return (\n <div\n ref={contentRef}\n className={`se-design-bottom-sheet relative h-max max-h-[98vh] rounded-t-2xl flex flex-col pt-5 ${className}`}\n onClick={(e) => e.stopPropagation()}\n onTouchStart={handleTouchStart}\n onTouchMove={handleTouchMove}\n onTouchEnd={handleTouchEnd}\n data-automation-id={automationId}\n style={{ minHeight }}\n >\n {(title || showBackButton) && (\n <div className=\"se-design-bottom-sheet-header flex items-center justify-left gap-3 mr-6 px-4\">\n {showBackButton && (\n <Icon\n name=\"back\"\n stroke=\"var(--color-gray-700)\"\n onClick={onBack}\n className=\"se-design-bottom-sheet-back-icon cursor-pointer\"\n automationId={`${automationId}-back-icon`}\n />\n )}\n {title && <div className=\"se-design-bottom-sheet-title text-lg font-semibold\">{title}</div>}\n </div>\n )}\n {showCloseIcon && (\n <Icon\n name=\"close\"\n onClick={onClose}\n className=\"se-design-bottom-sheet-close-icon absolute top-6 right-4 cursor-pointer z-10\"\n automationId={`${automationId}-close-icon`}\n />\n )}\n <div className=\"se-design-bottom-sheet-content px-4 pb-5 flex-1 min-h-0 overflow-y-auto\">{children}</div>\n </div>\n );\n};\n\nexport const BottomSheet: FC<BottomSheetProps> = ({\n isOpen = false,\n title = '',\n onClose = () => {},\n children = null,\n showCloseIcon = true,\n showBackButton = false,\n onBack = () => {},\n className = '',\n automationId = 'bottomsheet',\n minHeight = ''\n}) => {\n return (\n <CustomModal\n isOpen={isOpen}\n onClose={onClose}\n onModalClick={onClose}\n className=\"custom-bottom-sheet\"\n renderModalContent={() => (\n <BottomSheetContent\n title={title}\n onClose={onClose}\n showCloseIcon={showCloseIcon}\n showBackButton={showBackButton}\n onBack={onBack}\n className={className}\n automationId={automationId}\n minHeight={minHeight}\n >\n {children}\n </BottomSheetContent>\n )}\n />\n );\n};\n"],"names":["BottomSheetContent","children","title","onClose","showCloseIcon","showBackButton","onBack","className","automationId","minHeight","contentRef","useRef","startY","setStartY","useState","currentY","setCurrentY","isDragging","setIsDragging","handleTouchStart","e","touches","clientY","handleTouchMove","touchY","deltaY","current","style","transform","handleTouchEnd","React","createElement","ref","onClick","stopPropagation","onTouchStart","onTouchMove","onTouchEnd","Icon","name","stroke","BottomSheet","isOpen","CustomModal","onModalClick","renderModalContent"],"mappings":"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"}
1
+ {"version":3,"file":"index65.js","sources":["../src/components/BottomSheet/index.tsx"],"sourcesContent":["import React, { FC, useState, useRef } from 'react';\nimport { CustomModal } from '../CustomModal';\nimport { Icon } from '../Icon';\n\nimport './style.scss';\n\nexport interface BottomSheetProps {\n isOpen: boolean;\n title?: string;\n onClose: () => void;\n showCloseIcon?: boolean;\n showBackButton?: boolean;\n onBack?: () => void;\n children: React.ReactNode;\n className?: string;\n automationId?: string;\n minHeight?: string;\n maxHeight?: string;\n}\n\ninterface BottomSheetContentProps {\n title?: string;\n onClose: () => void;\n showCloseIcon?: boolean;\n showBackButton?: boolean;\n onBack?: () => void;\n children: React.ReactNode;\n className?: string;\n automationId?: string;\n minHeight?: string;\n maxHeight?: string;\n}\n\nconst BottomSheetContent: FC<BottomSheetContentProps> = ({\n children = null,\n title = '',\n onClose = () => {},\n showCloseIcon = false,\n showBackButton = false,\n onBack = () => {},\n className = '',\n automationId = '',\n minHeight = 'auto',\n maxHeight = ''\n}) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const [startY, setStartY] = useState<number>(0);\n const [currentY, setCurrentY] = useState<number>(0);\n const [isDragging, setIsDragging] = useState<boolean>(false);\n\n const handleTouchStart = (e: React.TouchEvent) => {\n setStartY(e.touches[0].clientY);\n setCurrentY(e.touches[0].clientY);\n setIsDragging(true);\n };\n\n const handleTouchMove = (e: React.TouchEvent) => {\n if (!isDragging) return;\n\n const touchY = e.touches[0].clientY;\n const deltaY = touchY - startY;\n\n // Only allow dragging down\n if (deltaY > 0) {\n setCurrentY(touchY);\n if (contentRef.current) {\n contentRef.current.style.transform = `translateY(${deltaY}px)`;\n }\n }\n };\n\n const handleTouchEnd = () => {\n if (!isDragging) return;\n\n const deltaY = currentY - startY;\n const threshold = 60; // pixels to swipe down to trigger close\n\n if (deltaY > threshold) {\n // Trigger close\n onClose();\n } else {\n // Reset position\n if (contentRef.current) {\n contentRef.current.style.transform = 'translateY(0)';\n }\n }\n\n setIsDragging(false);\n setStartY(0);\n setCurrentY(0);\n };\n\n return (\n <div\n ref={contentRef}\n className={`se-design-bottom-sheet relative h-max max-h-[98vh] rounded-t-2xl flex flex-col pt-5 ${className}`}\n onClick={(e) => e.stopPropagation()}\n onTouchStart={handleTouchStart}\n onTouchMove={handleTouchMove}\n onTouchEnd={handleTouchEnd}\n data-automation-id={automationId}\n style={{ minHeight, ...(maxHeight ? { maxHeight } : {}) }}\n >\n {(title || showBackButton) && (\n <div className=\"se-design-bottom-sheet-header flex items-center justify-left gap-3 mr-6 px-4\">\n {showBackButton && (\n <Icon\n name=\"back\"\n stroke=\"var(--color-gray-700)\"\n onClick={onBack}\n className=\"se-design-bottom-sheet-back-icon cursor-pointer\"\n automationId={`${automationId}-back-icon`}\n />\n )}\n {title && <div className=\"se-design-bottom-sheet-title text-lg font-semibold\">{title}</div>}\n </div>\n )}\n {showCloseIcon && (\n <Icon\n name=\"close\"\n onClick={onClose}\n className=\"se-design-bottom-sheet-close-icon absolute top-6 right-4 cursor-pointer z-10\"\n automationId={`${automationId}-close-icon`}\n />\n )}\n <div className=\"se-design-bottom-sheet-content px-4 pb-5 flex-1 min-h-0 overflow-y-auto\">{children}</div>\n </div>\n );\n};\n\nexport const BottomSheet: FC<BottomSheetProps> = ({\n isOpen = false,\n title = '',\n onClose = () => {},\n children = null,\n showCloseIcon = true,\n showBackButton = false,\n onBack = () => {},\n className = '',\n automationId = 'bottomsheet',\n minHeight = '',\n maxHeight = ''\n}) => {\n return (\n <CustomModal\n isOpen={isOpen}\n onClose={onClose}\n onModalClick={onClose}\n className=\"custom-bottom-sheet\"\n renderModalContent={() => (\n <BottomSheetContent\n title={title}\n onClose={onClose}\n showCloseIcon={showCloseIcon}\n showBackButton={showBackButton}\n onBack={onBack}\n className={className}\n automationId={automationId}\n minHeight={minHeight}\n maxHeight={maxHeight}\n >\n {children}\n </BottomSheetContent>\n )}\n />\n );\n};\n"],"names":["BottomSheetContent","children","title","onClose","showCloseIcon","showBackButton","onBack","className","automationId","minHeight","maxHeight","contentRef","useRef","startY","setStartY","useState","currentY","setCurrentY","isDragging","setIsDragging","handleTouchStart","e","touches","clientY","handleTouchMove","touchY","deltaY","current","style","transform","handleTouchEnd","React","createElement","ref","onClick","stopPropagation","onTouchStart","onTouchMove","onTouchEnd","Icon","name","stroke","BottomSheet","isOpen","CustomModal","onModalClick","renderModalContent"],"mappings":"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"}
package/dist/index67.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import n, { useState as u, useCallback as y, useEffect as P } from "react";
2
2
  import { Popover as I } from "./index19.js";
3
- import { useStableId as k } from "./index93.js";
3
+ import { useStableId as k } from "./index227.js";
4
4
  /* empty css */
5
5
  function p() {
6
6
  return p = Object.assign ? Object.assign.bind() : function(r) {
package/dist/index69.js CHANGED
@@ -2,7 +2,7 @@ import F, { useState as ot, useRef as X, useEffect as $ } from "react";
2
2
  import { createPortal as nt } from "react-dom";
3
3
  import { Icon as it } from "./index6.js";
4
4
  import { Button as rt } from "./index4.js";
5
- import { debounce as lt } from "./index245.js";
5
+ import { debounce as lt } from "./index246.js";
6
6
  const q = 500, S = 50, U = 150, st = {
7
7
  "top-left": {
8
8
  rotate: "315",
package/dist/index7.js CHANGED
@@ -1,11 +1,11 @@
1
- import s, { useState as h, useCallback as i } from "react";
1
+ import c, { useState as h, useCallback as i } from "react";
2
2
  import "./index78.js";
3
- import { isElementVisible as p } from "./index91.js";
3
+ import { isElementVisible as p } from "./index226.js";
4
4
  const x = ({
5
5
  skipLinks: n,
6
- className: c = ""
6
+ className: r = ""
7
7
  }) => {
8
- const [r, u] = h(n), l = i(() => {
8
+ const [s, u] = h(n), l = i(() => {
9
9
  const t = n.filter((e) => {
10
10
  const o = document.getElementById(e.id);
11
11
  return p(o);
@@ -30,10 +30,10 @@ const x = ({
30
30
  });
31
31
  }
32
32
  }, []);
33
- return n.length === 0 ? null : /* @__PURE__ */ s.createElement("div", {
34
- className: `se-design-skip-links-bar relative w-full h-0 overflow-hidden p-0 flex items-center justify-center bg-[var(--color-blue-50)] transition-[height] duration-300 ease-out focus-within:h-auto focus-within:py-1 focus-within:px-2 ${c}`,
33
+ return n.length === 0 ? null : /* @__PURE__ */ c.createElement("div", {
34
+ className: `se-design-skip-links-bar relative w-full h-0 overflow-hidden p-0 flex items-center justify-center bg-[var(--color-blue-50)] transition-[height] duration-300 ease-out focus-within:h-auto focus-within:py-1 focus-within:px-2 ${r}`,
35
35
  onFocus: a
36
- }, r.map((t) => /* @__PURE__ */ s.createElement("a", {
36
+ }, s.map((t) => /* @__PURE__ */ c.createElement("a", {
37
37
  key: t.id,
38
38
  href: `#${t.id}`,
39
39
  className: "absolute -left-[9999px] [clip:rect(0,0,0,0)] no-underline text-[var(--color-blue-500)] text-md py-1 px-2.5 rounded capitalize focus:static focus:left-auto focus:[clip:auto] focus:outline-none focus-visible:!outline-none hover:text-[var(--color-blue-600)] hover:bg-[var(--color-blue-200)]",
@@ -43,7 +43,6 @@ const x = ({
43
43
  }, t.label)));
44
44
  };
45
45
  export {
46
- x as SkipLinksBar,
47
- x as default
46
+ x as SkipLinksBar
48
47
  };
49
48
  //# sourceMappingURL=index7.js.map
package/dist/index71.js CHANGED
@@ -4,7 +4,7 @@ import { Badge as j } from "./index10.js";
4
4
  import { Icon as q } from "./index6.js";
5
5
  import { Link as N } from "./index70.js";
6
6
  import { CustomModal as G } from "./index13.js";
7
- import { useStableId as J } from "./index93.js";
7
+ import { useStableId as J } from "./index227.js";
8
8
  /* empty css */
9
9
  const K = {
10
10
  lg: {
@@ -142,7 +142,6 @@ const K = {
142
142
  }));
143
143
  };
144
144
  export {
145
- ea as Paywall,
146
- ea as default
145
+ ea as Paywall
147
146
  };
148
147
  //# sourceMappingURL=index71.js.map
package/dist/index85.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { useState as m, useEffect as E, useCallback as w } from "react";
2
- import { useScrollActiveIntoView as I } from "./index90.js";
2
+ import { useScrollActiveIntoView as I } from "./index270.js";
3
3
  function A({
4
4
  items: u,
5
5
  isOpen: t,
package/dist/index87.js CHANGED
@@ -1,4 +1,4 @@
1
- import { mergeIds as i } from "./index88.js";
1
+ import { mergeIds as i } from "./index244.js";
2
2
  function n({
3
3
  ariaLabel: t,
4
4
  ariaLabelledBy: o,
package/dist/index89.js CHANGED
@@ -1,31 +1,5 @@
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
- }
1
+ const L = "data:image/svg+xml,%3csvg%20width='32'%20height='32'%20viewBox='0%200%2032%2032'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20width='32'%20height='32'%20rx='16'%20fill='white'/%3e%3cpath%20d='M11.0179%2013.3597L12.27%2010.855L13.5222%2013.3597C13.9204%2014.1563%2014.5662%2014.8021%2015.3627%2015.2004L17.8682%2016.4531L15.3627%2017.7059C14.5662%2018.1041%2013.9204%2018.75%2013.5222%2019.5465L12.27%2022.0513L11.0179%2019.5465C10.6197%2018.75%209.97387%2018.1041%209.17738%2017.7059L6.67188%2016.4531L9.17738%2015.2004C9.97387%2014.8021%2010.6197%2014.1563%2011.0179%2013.3597Z'%20fill='%23415575'/%3e%3cpath%20d='M19.0159%207.18859L19.4685%206.2832L19.9211%207.18859C20.3193%207.98511%2020.9651%208.63098%2021.7616%209.02923L22.6674%209.48215L21.7616%209.93506C20.9651%2010.3333%2020.3193%2010.9792%2019.9211%2011.7757L19.4685%2012.6811L19.0159%2011.7757C18.6177%2010.9792%2017.9719%2010.3333%2017.1754%209.93506L16.2695%209.48215L17.1754%209.02923C17.9719%208.63098%2018.6177%207.98511%2019.0159%207.18859Z'%20fill='%23415575'/%3e%3cpath%20d='M19.0159%2021.3561L19.4685%2020.4507L19.9211%2021.3561C20.3193%2022.1526%2020.9651%2022.7985%2021.7616%2023.1967L22.6674%2023.6496L21.7616%2024.1025C20.9651%2024.5008%2020.3193%2025.1467%2019.9211%2025.9432L19.4685%2026.8486L19.0159%2025.9432C18.6177%2025.1467%2017.9719%2024.5008%2017.1754%2024.1025L16.2695%2023.6496L17.1754%2023.1967C17.9719%2022.7985%2018.6177%2022.1526%2019.0159%2021.3561Z'%20fill='%23415575'/%3e%3c/svg%3e";
28
2
  export {
29
- p as useDismissOnEscape
3
+ L as default
30
4
  };
31
5
  //# sourceMappingURL=index89.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index89.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;"}
1
+ {"version":3,"file":"index89.js","sources":["../src/assets/icons/ai-off.svg?url"],"sourcesContent":["export default \"data:image/svg+xml,%3csvg%20width='32'%20height='32'%20viewBox='0%200%2032%2032'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20width='32'%20height='32'%20rx='16'%20fill='white'/%3e%3cpath%20d='M11.0179%2013.3597L12.27%2010.855L13.5222%2013.3597C13.9204%2014.1563%2014.5662%2014.8021%2015.3627%2015.2004L17.8682%2016.4531L15.3627%2017.7059C14.5662%2018.1041%2013.9204%2018.75%2013.5222%2019.5465L12.27%2022.0513L11.0179%2019.5465C10.6197%2018.75%209.97387%2018.1041%209.17738%2017.7059L6.67188%2016.4531L9.17738%2015.2004C9.97387%2014.8021%2010.6197%2014.1563%2011.0179%2013.3597Z'%20fill='%23415575'/%3e%3cpath%20d='M19.0159%207.18859L19.4685%206.2832L19.9211%207.18859C20.3193%207.98511%2020.9651%208.63098%2021.7616%209.02923L22.6674%209.48215L21.7616%209.93506C20.9651%2010.3333%2020.3193%2010.9792%2019.9211%2011.7757L19.4685%2012.6811L19.0159%2011.7757C18.6177%2010.9792%2017.9719%2010.3333%2017.1754%209.93506L16.2695%209.48215L17.1754%209.02923C17.9719%208.63098%2018.6177%207.98511%2019.0159%207.18859Z'%20fill='%23415575'/%3e%3cpath%20d='M19.0159%2021.3561L19.4685%2020.4507L19.9211%2021.3561C20.3193%2022.1526%2020.9651%2022.7985%2021.7616%2023.1967L22.6674%2023.6496L21.7616%2024.1025C20.9651%2024.5008%2020.3193%2025.1467%2019.9211%2025.9432L19.4685%2026.8486L19.0159%2025.9432C18.6177%2025.1467%2017.9719%2024.5008%2017.1754%2024.1025L16.2695%2023.6496L17.1754%2023.1967C17.9719%2022.7985%2018.6177%2022.1526%2019.0159%2021.3561Z'%20fill='%23415575'/%3e%3c/svg%3e\""],"names":["__vite_glob_0_0"],"mappings":"AAAA,MAAAA,IAAe;"}
package/dist/index9.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import o from "react";
2
- import { useStableId as A } from "./index93.js";
2
+ import { useStableId as A } from "./index227.js";
3
3
  import { getA11yNameAttributes as O } from "./index87.js";
4
4
  import { useAccessiblePress as C } from "./index73.js";
5
5
  import "./index78.js";
package/dist/index90.js CHANGED
@@ -1,22 +1,5 @@
1
- import { useEffect as s } from "react";
2
- const u = {
3
- block: "nearest"
4
- };
5
- function m({
6
- containerRef: t,
7
- activeIndex: o,
8
- itemSelector: r = '[role="option"]',
9
- enabled: c = !0,
10
- scrollOptions: e = u
11
- }) {
12
- s(() => {
13
- if (!c || o < 0 || !t?.current)
14
- return;
15
- const n = t.current.querySelectorAll(r)[o];
16
- n && n.scrollIntoView(e);
17
- }, [o, t, r, c, e]);
18
- }
1
+ const C = "data:image/svg+xml,%3csvg%20width='67'%20height='67'%20viewBox='0%200%2067%2067'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M19.166%204.53418C25.8215%201.28372%2033.4025%200.455651%2040.6025%202.19336C45.6308%203.40697%2050.254%205.81881%2054.0977%209.18262L56.2627%2011.0771V5.22852C56.2628%204.50782%2056.8467%203.92384%2057.5674%203.92383C58.288%203.92383%2058.872%204.50784%2058.8721%205.22852V14.8369C58.872%2015.5575%2058.288%2016.1416%2057.5674%2016.1416H47.874C47.1533%2016.1416%2046.5684%2015.5576%2046.5684%2014.8369C46.5684%2014.1161%2047.1533%2013.5322%2047.874%2013.5322H55.0752L52.4951%2011.249C48.9439%208.10762%2044.6571%205.85686%2039.9902%204.73047C33.3806%203.13527%2026.4212%203.89496%2020.3115%206.87891C14.2018%209.86288%209.32423%2014.8845%206.51855%2021.0781C3.71296%2027.2719%203.15512%2034.2508%204.94141%2040.8115C5.1304%2041.5068%204.72038%2042.2236%204.02539%2042.4131C3.32995%2042.6024%202.6123%2042.1923%202.42285%2041.4971C0.47701%2034.3503%201.08442%2026.748%204.14062%2020.001C7.19678%2013.2541%2012.5107%207.78477%2019.166%204.53418Z'%20stroke='black'%20stroke-width='2.61'/%3e%3cpath%20d='M62.2422%2023.8568C62.9375%2023.6675%2063.6544%2024.0777%2063.8438%2024.7728C65.7896%2031.9196%2065.1823%2039.522%2062.126%2046.2689C59.0697%2053.0158%2053.756%2058.4853%2047.1006%2061.7357C40.445%2064.9863%2032.8642%2065.8144%2025.6641%2064.0765C20.6357%2062.8629%2016.0126%2060.4512%2012.1689%2057.0873L10.0049%2055.1927V60.892C10.0048%2061.6124%209.42064%2062.1965%208.7002%2062.1967C7.97953%2062.1967%207.39465%2061.6126%207.39453%2060.892V51.433C7.39459%2050.7123%207.97949%2050.1283%208.7002%2050.1283H18.2441C18.9647%2050.1284%2019.5488%2050.7124%2019.5488%2051.433C19.5488%2052.1537%2018.9648%2052.7376%2018.2441%2052.7377H11.1914L13.7715%2055.0209C17.3228%2058.1623%2021.6095%2060.413%2026.2764%2061.5394C32.886%2063.1347%2039.8453%2062.3748%2045.9551%2059.391C52.0648%2056.407%2056.9434%2051.3855%2059.749%2045.1918C62.5546%2038.998%2063.1125%2032.0191%2061.3262%2025.4584C61.1488%2024.8064%2061.4978%2024.1351%2062.1152%2023.8978L62.2422%2023.8568Z'%20stroke='black'%20stroke-width='2.61'/%3e%3cpath%20d='M32.5%2020.4045C32.6936%2019.8812%2033.4332%2019.881%2033.627%2020.4045C35.7001%2026.0073%2040.1179%2030.425%2045.7207%2032.4983C46.2441%2032.6919%2046.2441%2033.4316%2045.7207%2033.6252C40.1179%2035.6985%2035.7001%2040.1162%2033.627%2045.719C33.4332%2046.2424%2032.6937%2046.2424%2032.5%2045.719C30.4267%2040.1162%2026.0091%2035.6985%2020.4062%2033.6252C19.8829%2033.4316%2019.8829%2032.6919%2020.4062%2032.4983C26.0091%2030.425%2030.4267%2026.0073%2032.5%2020.4045Z'%20stroke='black'%20stroke-width='3.48'/%3e%3c/svg%3e";
19
2
  export {
20
- m as useScrollActiveIntoView
3
+ C as default
21
4
  };
22
5
  //# sourceMappingURL=index90.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index90.js","sources":["../src/utils/a11y/useScrollActiveIntoView.ts"],"sourcesContent":["import { useEffect } from 'react';\nimport type { RefObject } from 'react';\n\nconst DEFAULT_SCROLL_OPTIONS: ScrollIntoViewOptions = { block: 'nearest' };\n\nexport interface UseScrollActiveIntoViewOptions {\n /**\n * Ref to the container element\n */\n containerRef?: RefObject<HTMLElement | null>;\n \n /**\n * Index of the currently active/highlighted item (-1 if none)\n */\n activeIndex: number;\n \n /**\n * CSS selector for item elements\n * Default: '[role=\"option\"]'\n */\n itemSelector?: string;\n \n /**\n * Whether scrolling is enabled\n * Default: true\n */\n enabled?: boolean;\n \n /**\n * ScrollIntoView options\n * Default: { block: 'nearest' }\n */\n scrollOptions?: ScrollIntoViewOptions;\n}\n\n/**\n * Hook to automatically scroll the active item into view.\n * \n * Useful for aria-activedescendant patterns where DOM focus stays\n * on the container (e.g., input field) but we need to visually show\n * which descendant option is logically active.\n * \n * Common use cases:\n * - Combobox dropdown options\n * - Menu items with virtual focus\n * - Grid cells with keyboard navigation\n * - Tree view items\n * - Listbox options\n * \n * @example\n * ```tsx\n * const [highlightedIndex, setHighlightedIndex] = useState(-1);\n * const listboxRef = useRef<HTMLDivElement>(null);\n * \n * useScrollActiveIntoView({\n * containerRef: listboxRef,\n * activeIndex: highlightedIndex,\n * itemSelector: '[role=\"option\"]'\n * });\n * \n * // Now when highlightedIndex changes, the item scrolls into view\n * ```\n * \n * @example Custom scroll behavior\n * ```tsx\n * useScrollActiveIntoView({\n * containerRef: menuRef,\n * activeIndex: activeMenuIndex,\n * itemSelector: '[role=\"menuitem\"]',\n * scrollOptions: { block: 'center', behavior: 'smooth' }\n * });\n * ```\n */\nexport function useScrollActiveIntoView({\n containerRef,\n activeIndex,\n itemSelector = '[role=\"option\"]',\n enabled = true,\n scrollOptions = DEFAULT_SCROLL_OPTIONS\n}: UseScrollActiveIntoViewOptions): void {\n useEffect(() => {\n // Early returns for disabled states\n if (!enabled || activeIndex < 0 || !containerRef?.current) {\n return;\n }\n \n const container = containerRef.current;\n const items = container.querySelectorAll(itemSelector);\n const activeItem = items[activeIndex] as HTMLElement;\n \n if (activeItem) {\n activeItem.scrollIntoView(scrollOptions);\n }\n }, [activeIndex, containerRef, itemSelector, enabled, scrollOptions]);\n}\n"],"names":["useEffect","DEFAULT_SCROLL_OPTIONS","block","useScrollActiveIntoView","containerRef","activeIndex","itemSelector","enabled","scrollOptions","current","activeItem","querySelectorAll","scrollIntoView"],"mappings":"AAGA,SAAA,aAAAA,SAAA;AAAA,MAAMC,IAAgD;AAAA,EAAEC,OAAO;AAAU;AAsElE,SAASC,EAAwB;AAAA,EACtCC,cAAAA;AAAAA,EACAC,aAAAA;AAAAA,EACAC,cAAAA,IAAe;AAAA,EACfC,SAAAA,IAAU;AAAA,EACVC,eAAAA,IAAgBP;AACc,GAAS;AACvCD,EAAAA,EAAU,MAAM;AAEd,QAAI,CAACO,KAAWF,IAAc,KAAK,CAACD,GAAcK;AAChD;AAKF,UAAMC,IAFYN,EAAaK,QACPE,iBAAiBL,CAAY,EAC5BD,CAAW;AAEpC,IAAIK,KACFA,EAAWE,eAAeJ,CAAa;AAAA,EAE3C,GAAG,CAACH,GAAaD,GAAcE,GAAcC,GAASC,CAAa,CAAC;AACtE;"}
1
+ {"version":3,"file":"index90.js","sources":["../src/assets/icons/ai-re-run.svg?url"],"sourcesContent":["export default \"data:image/svg+xml,%3csvg%20width='67'%20height='67'%20viewBox='0%200%2067%2067'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M19.166%204.53418C25.8215%201.28372%2033.4025%200.455651%2040.6025%202.19336C45.6308%203.40697%2050.254%205.81881%2054.0977%209.18262L56.2627%2011.0771V5.22852C56.2628%204.50782%2056.8467%203.92384%2057.5674%203.92383C58.288%203.92383%2058.872%204.50784%2058.8721%205.22852V14.8369C58.872%2015.5575%2058.288%2016.1416%2057.5674%2016.1416H47.874C47.1533%2016.1416%2046.5684%2015.5576%2046.5684%2014.8369C46.5684%2014.1161%2047.1533%2013.5322%2047.874%2013.5322H55.0752L52.4951%2011.249C48.9439%208.10762%2044.6571%205.85686%2039.9902%204.73047C33.3806%203.13527%2026.4212%203.89496%2020.3115%206.87891C14.2018%209.86288%209.32423%2014.8845%206.51855%2021.0781C3.71296%2027.2719%203.15512%2034.2508%204.94141%2040.8115C5.1304%2041.5068%204.72038%2042.2236%204.02539%2042.4131C3.32995%2042.6024%202.6123%2042.1923%202.42285%2041.4971C0.47701%2034.3503%201.08442%2026.748%204.14062%2020.001C7.19678%2013.2541%2012.5107%207.78477%2019.166%204.53418Z'%20stroke='black'%20stroke-width='2.61'/%3e%3cpath%20d='M62.2422%2023.8568C62.9375%2023.6675%2063.6544%2024.0777%2063.8438%2024.7728C65.7896%2031.9196%2065.1823%2039.522%2062.126%2046.2689C59.0697%2053.0158%2053.756%2058.4853%2047.1006%2061.7357C40.445%2064.9863%2032.8642%2065.8144%2025.6641%2064.0765C20.6357%2062.8629%2016.0126%2060.4512%2012.1689%2057.0873L10.0049%2055.1927V60.892C10.0048%2061.6124%209.42064%2062.1965%208.7002%2062.1967C7.97953%2062.1967%207.39465%2061.6126%207.39453%2060.892V51.433C7.39459%2050.7123%207.97949%2050.1283%208.7002%2050.1283H18.2441C18.9647%2050.1284%2019.5488%2050.7124%2019.5488%2051.433C19.5488%2052.1537%2018.9648%2052.7376%2018.2441%2052.7377H11.1914L13.7715%2055.0209C17.3228%2058.1623%2021.6095%2060.413%2026.2764%2061.5394C32.886%2063.1347%2039.8453%2062.3748%2045.9551%2059.391C52.0648%2056.407%2056.9434%2051.3855%2059.749%2045.1918C62.5546%2038.998%2063.1125%2032.0191%2061.3262%2025.4584C61.1488%2024.8064%2061.4978%2024.1351%2062.1152%2023.8978L62.2422%2023.8568Z'%20stroke='black'%20stroke-width='2.61'/%3e%3cpath%20d='M32.5%2020.4045C32.6936%2019.8812%2033.4332%2019.881%2033.627%2020.4045C35.7001%2026.0073%2040.1179%2030.425%2045.7207%2032.4983C46.2441%2032.6919%2046.2441%2033.4316%2045.7207%2033.6252C40.1179%2035.6985%2035.7001%2040.1162%2033.627%2045.719C33.4332%2046.2424%2032.6937%2046.2424%2032.5%2045.719C30.4267%2040.1162%2026.0091%2035.6985%2020.4062%2033.6252C19.8829%2033.4316%2019.8829%2032.6919%2020.4062%2032.4983C26.0091%2030.425%2030.4267%2026.0073%2032.5%2020.4045Z'%20stroke='black'%20stroke-width='3.48'/%3e%3c/svg%3e\""],"names":["__vite_glob_0_1"],"mappings":"AAAA,MAAAA,IAAe;"}
package/dist/index91.js CHANGED
@@ -1,12 +1,5 @@
1
- function n(i) {
2
- if (!i) return !1;
3
- const t = window.getComputedStyle(i);
4
- if (t.display === "none" || t.visibility === "hidden")
5
- return !1;
6
- const e = i.getBoundingClientRect();
7
- return e.width > 0 && e.height > 0;
8
- }
1
+ const e = "data:image/svg+xml,%3csvg%20width='21'%20height='20'%20viewBox='0%200%2021%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20opacity='0.8'%3e%3cg%20clip-path='url(%23clip0_11623_94780)'%3e%3cpath%20d='M8.93929%2014.7575C12.1504%2014.7575%2014.7536%2012.1543%2014.7536%208.94319C14.7536%205.73205%2012.1504%203.12891%208.93929%203.12891C5.72814%203.12891%203.125%205.73205%203.125%208.94319C3.125%2012.1543%205.72814%2014.7575%208.93929%2014.7575Z'%20stroke='%23D8E8F6'%20stroke-width='1.2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M16.8642%2016.872L13.0469%2013.0547'%20stroke='%23D8E8F6'%20stroke-width='1.2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M12.4688%201.47559C13.0214%202.58108%2013.918%203.47752%2015.0234%204.03027L15.9619%204.5L15.0234%204.96973C13.918%205.52248%2013.0214%206.41892%2012.4688%207.52441L12%208.46191L11.5313%207.52441C10.9786%206.41892%2010.082%205.52248%208.97656%204.96973L8.03711%204.5L8.97656%204.03027C10.082%203.47752%2010.9786%202.58108%2011.5313%201.47559L12%200.538086L12.4688%201.47559Z'%20fill='white'%20stroke='%233E8BD1'%20stroke-width='1.375'/%3e%3c/g%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_11623_94780'%3e%3crect%20width='16'%20height='18'%20fill='white'%20transform='translate(2)'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e";
9
2
  export {
10
- n as isElementVisible
3
+ e as default
11
4
  };
12
5
  //# sourceMappingURL=index91.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index91.js","sources":["../src/utils/a11y/elementVisibility.ts"],"sourcesContent":["/**\n * Checks if an element is visible in the DOM.\n * \n * An element is considered visible if:\n * - It exists in the DOM\n * - It's not hidden via CSS (display: none, visibility: hidden)\n * - It has actual dimensions (width > 0 and height > 0)\n * \n * @param element - The element to check, or null\n * @returns true if the element is visible, false otherwise\n * \n * @example\n * const element = document.getElementById('my-element');\n * if (isElementVisible(element)) {\n * // Element is visible\n * }\n */\nexport function isElementVisible(element: HTMLElement | null): boolean {\n if (!element) return false;\n\n // Check computed style for display/visibility\n const style = window.getComputedStyle(element);\n if (style.display === 'none' || style.visibility === 'hidden') {\n return false;\n }\n\n // Check if element has dimensions\n const rect = element.getBoundingClientRect();\n return rect.width > 0 && rect.height > 0;\n}\n"],"names":["isElementVisible","element","style","window","getComputedStyle","display","visibility","rect","getBoundingClientRect","width","height"],"mappings":"AAiBO,SAASA,EAAiBC,GAAsC;AACrE,MAAI,CAACA,EAAS,QAAO;AAGrB,QAAMC,IAAQC,OAAOC,iBAAiBH,CAAO;AAC7C,MAAIC,EAAMG,YAAY,UAAUH,EAAMI,eAAe;AACnD,WAAO;AAIT,QAAMC,IAAON,EAAQO,sBAAAA;AACrB,SAAOD,EAAKE,QAAQ,KAAKF,EAAKG,SAAS;AACzC;"}
1
+ {"version":3,"file":"index91.js","sources":["../src/assets/icons/ai-search.svg?url"],"sourcesContent":["export default \"data:image/svg+xml,%3csvg%20width='21'%20height='20'%20viewBox='0%200%2021%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20opacity='0.8'%3e%3cg%20clip-path='url(%23clip0_11623_94780)'%3e%3cpath%20d='M8.93929%2014.7575C12.1504%2014.7575%2014.7536%2012.1543%2014.7536%208.94319C14.7536%205.73205%2012.1504%203.12891%208.93929%203.12891C5.72814%203.12891%203.125%205.73205%203.125%208.94319C3.125%2012.1543%205.72814%2014.7575%208.93929%2014.7575Z'%20stroke='%23D8E8F6'%20stroke-width='1.2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M16.8642%2016.872L13.0469%2013.0547'%20stroke='%23D8E8F6'%20stroke-width='1.2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M12.4688%201.47559C13.0214%202.58108%2013.918%203.47752%2015.0234%204.03027L15.9619%204.5L15.0234%204.96973C13.918%205.52248%2013.0214%206.41892%2012.4688%207.52441L12%208.46191L11.5313%207.52441C10.9786%206.41892%2010.082%205.52248%208.97656%204.96973L8.03711%204.5L8.97656%204.03027C10.082%203.47752%2010.9786%202.58108%2011.5313%201.47559L12%200.538086L12.4688%201.47559Z'%20fill='white'%20stroke='%233E8BD1'%20stroke-width='1.375'/%3e%3c/g%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_11623_94780'%3e%3crect%20width='16'%20height='18'%20fill='white'%20transform='translate(2)'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e\""],"names":["__vite_glob_0_2"],"mappings":"AAAA,MAAAA,IAAe;"}