@shipfox/react-ui 0.14.0 → 0.16.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 (562) hide show
  1. package/dist/components/avatar/avatar.js +1 -1
  2. package/dist/components/button-group/button-group.d.ts +17 -0
  3. package/dist/components/button-group/button-group.js +74 -0
  4. package/dist/components/button-group/button-group.stories.js +644 -0
  5. package/dist/components/button-group/index.d.ts +2 -0
  6. package/dist/components/button-group/index.js +3 -0
  7. package/dist/components/code-block/code-block-footer.js +4 -2
  8. package/dist/components/command/command.d.ts +28 -0
  9. package/dist/components/command/command.js +190 -0
  10. package/dist/components/command/command.stories.js +228 -0
  11. package/dist/components/command/index.d.ts +2 -0
  12. package/dist/components/command/index.js +3 -0
  13. package/dist/components/dashboard/components/animated-logo.d.ts +4 -0
  14. package/dist/components/dashboard/components/animated-logo.js +23 -0
  15. package/dist/components/dashboard/components/charts/bar-chart.d.ts +39 -0
  16. package/dist/components/dashboard/components/charts/bar-chart.js +104 -0
  17. package/dist/components/dashboard/components/charts/chart-tooltip.d.ts +14 -0
  18. package/dist/components/dashboard/components/charts/chart-tooltip.js +45 -0
  19. package/dist/components/dashboard/components/charts/colors.d.ts +11 -0
  20. package/dist/components/dashboard/components/charts/colors.js +17 -0
  21. package/dist/components/dashboard/components/charts/index.d.ts +5 -0
  22. package/dist/components/dashboard/components/charts/index.js +6 -0
  23. package/dist/components/dashboard/components/charts/line-chart.d.ts +37 -0
  24. package/dist/components/dashboard/components/charts/line-chart.js +128 -0
  25. package/dist/components/dashboard/components/complete-setup-button.d.ts +4 -0
  26. package/dist/components/dashboard/components/complete-setup-button.js +28 -0
  27. package/dist/components/dashboard/components/dashboard-alert.d.ts +8 -0
  28. package/dist/components/dashboard/components/dashboard-alert.js +24 -0
  29. package/dist/components/dashboard/components/kpi-card.d.ts +15 -0
  30. package/dist/components/dashboard/components/kpi-card.js +77 -0
  31. package/dist/components/dashboard/components/mobile-menu.d.ts +2 -0
  32. package/dist/components/dashboard/components/mobile-menu.js +65 -0
  33. package/dist/components/dashboard/components/mobile-sidebar.d.ts +19 -0
  34. package/dist/components/dashboard/components/mobile-sidebar.js +50 -0
  35. package/dist/components/dashboard/components/organization-selector.d.ts +25 -0
  36. package/dist/components/dashboard/components/organization-selector.js +115 -0
  37. package/dist/components/dashboard/components/sidebar.d.ts +24 -0
  38. package/dist/components/dashboard/components/sidebar.js +218 -0
  39. package/dist/components/dashboard/components/top-menu.d.ts +5 -0
  40. package/dist/components/dashboard/components/top-menu.js +31 -0
  41. package/dist/components/dashboard/components/topbar-button.d.ts +7 -0
  42. package/dist/components/dashboard/components/topbar-button.js +18 -0
  43. package/dist/components/dashboard/components/topbar.d.ts +4 -0
  44. package/dist/components/dashboard/components/topbar.js +62 -0
  45. package/dist/components/dashboard/components/user-profile.d.ts +2 -0
  46. package/dist/components/dashboard/components/user-profile.js +146 -0
  47. package/dist/components/dashboard/context/dashboard-context.d.ts +70 -0
  48. package/dist/components/dashboard/context/dashboard-context.js +175 -0
  49. package/dist/components/dashboard/context/index.d.ts +8 -0
  50. package/dist/components/dashboard/context/index.js +6 -0
  51. package/dist/components/dashboard/context/types.d.ts +50 -0
  52. package/dist/components/dashboard/context/types.js +7 -0
  53. package/dist/components/dashboard/context/utils.d.ts +28 -0
  54. package/dist/components/dashboard/context/utils.js +53 -0
  55. package/dist/components/dashboard/dashboard.d.ts +28 -0
  56. package/dist/components/dashboard/dashboard.js +110 -0
  57. package/dist/components/dashboard/dashboard.stories.js +23 -0
  58. package/dist/components/dashboard/filters/expression-filter-bar.d.ts +42 -0
  59. package/dist/components/dashboard/filters/expression-filter-bar.js +80 -0
  60. package/dist/components/dashboard/filters/index.d.ts +6 -0
  61. package/dist/components/dashboard/filters/index.js +5 -0
  62. package/dist/components/dashboard/index.d.ts +26 -0
  63. package/dist/components/dashboard/index.js +24 -0
  64. package/dist/components/dashboard/pages/analytics-page.d.ts +20 -0
  65. package/dist/components/dashboard/pages/analytics-page.js +258 -0
  66. package/dist/components/dashboard/pages/index.d.ts +6 -0
  67. package/dist/components/dashboard/pages/index.js +6 -0
  68. package/dist/components/dashboard/pages/jobs-page.d.ts +20 -0
  69. package/dist/components/dashboard/pages/jobs-page.js +56 -0
  70. package/dist/components/dashboard/table/index.d.ts +6 -0
  71. package/dist/components/dashboard/table/index.js +5 -0
  72. package/dist/components/dashboard/table/table-wrapper.d.ts +104 -0
  73. package/dist/components/dashboard/table/table-wrapper.js +93 -0
  74. package/dist/components/dashboard/toolbar/filter-button.d.ts +12 -0
  75. package/dist/components/dashboard/toolbar/filter-button.js +124 -0
  76. package/dist/components/dashboard/toolbar/index.d.ts +13 -0
  77. package/dist/components/dashboard/toolbar/index.js +10 -0
  78. package/dist/components/dashboard/toolbar/page-toolbar.d.ts +75 -0
  79. package/dist/components/dashboard/toolbar/page-toolbar.js +208 -0
  80. package/dist/components/dashboard/toolbar/toolbar-actions.d.ts +52 -0
  81. package/dist/components/dashboard/toolbar/toolbar-actions.js +51 -0
  82. package/dist/components/dashboard/toolbar/toolbar-search.d.ts +21 -0
  83. package/dist/components/dashboard/toolbar/toolbar-search.js +123 -0
  84. package/dist/components/dashboard/toolbar/view-dropdown.d.ts +11 -0
  85. package/dist/components/dashboard/toolbar/view-dropdown.js +113 -0
  86. package/dist/components/form/form.stories.js +6 -1
  87. package/dist/components/index.d.ts +8 -0
  88. package/dist/components/index.js +8 -0
  89. package/dist/components/kbd/index.d.ts +2 -0
  90. package/dist/components/kbd/index.js +3 -0
  91. package/dist/components/kbd/kbd.d.ts +7 -0
  92. package/dist/components/kbd/kbd.js +18 -0
  93. package/dist/components/kbd/kbd.stories.js +119 -0
  94. package/dist/components/modal/modal.js +3 -3
  95. package/dist/components/search/index.d.ts +7 -0
  96. package/dist/components/search/index.js +8 -0
  97. package/dist/components/search/search-context.d.ts +11 -0
  98. package/dist/components/search/search-context.js +56 -0
  99. package/dist/components/search/search-inline.d.ts +9 -0
  100. package/dist/components/search/search-inline.js +85 -0
  101. package/dist/components/search/search-modal.d.ts +25 -0
  102. package/dist/components/search/search-modal.js +168 -0
  103. package/dist/components/search/search-trigger.d.ts +9 -0
  104. package/dist/components/search/search-trigger.js +37 -0
  105. package/dist/components/search/search-variants.d.ts +14 -0
  106. package/dist/components/search/search-variants.js +90 -0
  107. package/dist/components/search/search.d.ts +11 -0
  108. package/dist/components/search/search.js +35 -0
  109. package/dist/components/search/search.stories.js +630 -0
  110. package/dist/components/select/index.d.ts +2 -0
  111. package/dist/components/select/index.js +3 -0
  112. package/dist/components/select/select.d.ts +27 -0
  113. package/dist/components/select/select.js +154 -0
  114. package/dist/components/select/select.stories.js +393 -0
  115. package/dist/components/sheet/index.d.ts +2 -0
  116. package/dist/components/sheet/index.js +3 -0
  117. package/dist/components/sheet/sheet.d.ts +33 -0
  118. package/dist/components/sheet/sheet.js +163 -0
  119. package/dist/components/sheet/sheet.stories.js +368 -0
  120. package/dist/components/skeleton/index.d.ts +2 -0
  121. package/dist/components/skeleton/index.js +3 -0
  122. package/dist/components/skeleton/skeleton.d.ts +5 -0
  123. package/dist/components/skeleton/skeleton.js +11 -0
  124. package/dist/components/skeleton/skeleton.stories.js +345 -0
  125. package/dist/components/table/data-table.d.ts +83 -0
  126. package/dist/components/table/data-table.js +164 -0
  127. package/dist/components/table/index.d.ts +6 -0
  128. package/dist/components/table/index.js +6 -0
  129. package/dist/components/table/table-column-header.d.ts +79 -0
  130. package/dist/components/table/table-column-header.js +99 -0
  131. package/dist/components/table/table-pagination.d.ts +53 -0
  132. package/dist/components/table/table-pagination.js +139 -0
  133. package/dist/components/table/table.d.ts +11 -0
  134. package/dist/components/table/table.js +64 -0
  135. package/dist/components/table/table.stories.columns.d.ts +24 -0
  136. package/dist/components/table/table.stories.columns.js +310 -0
  137. package/dist/components/table/table.stories.components.d.ts +14 -0
  138. package/dist/components/table/table.stories.components.js +107 -0
  139. package/dist/components/table/table.stories.data.d.ts +54 -0
  140. package/dist/components/table/table.stories.data.js +122 -0
  141. package/dist/components/table/table.stories.js +302 -0
  142. package/dist/styles.css +1 -1
  143. package/package.json +14 -5
  144. package/.storybook/main.ts +0 -35
  145. package/.storybook/preview.tsx +0 -59
  146. package/.storybook/vitest.setup.ts +0 -4
  147. package/.turbo/turbo-build.log +0 -19
  148. package/.turbo/turbo-check.log +0 -6
  149. package/.turbo/turbo-type.log +0 -5
  150. package/CHANGELOG.md +0 -104
  151. package/argos.config.ts +0 -33
  152. package/dist/build-css-entry.js.map +0 -1
  153. package/dist/colors.stories.conts.d.ts.map +0 -1
  154. package/dist/colors.stories.conts.js.map +0 -1
  155. package/dist/colors.stories.js.map +0 -1
  156. package/dist/components/alert/alert.d.ts.map +0 -1
  157. package/dist/components/alert/alert.js.map +0 -1
  158. package/dist/components/alert/alert.stories.js.map +0 -1
  159. package/dist/components/alert/index.d.ts.map +0 -1
  160. package/dist/components/alert/index.js.map +0 -1
  161. package/dist/components/avatar/avatar-group.d.ts.map +0 -1
  162. package/dist/components/avatar/avatar-group.js.map +0 -1
  163. package/dist/components/avatar/avatar.d.ts.map +0 -1
  164. package/dist/components/avatar/avatar.js.map +0 -1
  165. package/dist/components/avatar/avatar.stories.js.map +0 -1
  166. package/dist/components/avatar/index.d.ts.map +0 -1
  167. package/dist/components/avatar/index.js.map +0 -1
  168. package/dist/components/badge/badge.d.ts.map +0 -1
  169. package/dist/components/badge/badge.js.map +0 -1
  170. package/dist/components/badge/badge.stories.js.map +0 -1
  171. package/dist/components/badge/icon-badge.d.ts.map +0 -1
  172. package/dist/components/badge/icon-badge.js.map +0 -1
  173. package/dist/components/badge/index.d.ts.map +0 -1
  174. package/dist/components/badge/index.js.map +0 -1
  175. package/dist/components/badge/status-badge.d.ts.map +0 -1
  176. package/dist/components/badge/status-badge.js.map +0 -1
  177. package/dist/components/badge/user-badge.d.ts.map +0 -1
  178. package/dist/components/badge/user-badge.js.map +0 -1
  179. package/dist/components/button/button-link.d.ts.map +0 -1
  180. package/dist/components/button/button-link.js.map +0 -1
  181. package/dist/components/button/button-link.stories.js.map +0 -1
  182. package/dist/components/button/button.d.ts.map +0 -1
  183. package/dist/components/button/button.js.map +0 -1
  184. package/dist/components/button/button.stories.js.map +0 -1
  185. package/dist/components/button/icon-button.d.ts.map +0 -1
  186. package/dist/components/button/icon-button.js.map +0 -1
  187. package/dist/components/button/icon-button.stories.js.map +0 -1
  188. package/dist/components/button/index.d.ts.map +0 -1
  189. package/dist/components/button/index.js.map +0 -1
  190. package/dist/components/calendar/calendar.d.ts.map +0 -1
  191. package/dist/components/calendar/calendar.js.map +0 -1
  192. package/dist/components/calendar/index.d.ts.map +0 -1
  193. package/dist/components/calendar/index.js.map +0 -1
  194. package/dist/components/checkbox/checkbox-label.d.ts.map +0 -1
  195. package/dist/components/checkbox/checkbox-label.js.map +0 -1
  196. package/dist/components/checkbox/checkbox-links.d.ts.map +0 -1
  197. package/dist/components/checkbox/checkbox-links.js.map +0 -1
  198. package/dist/components/checkbox/checkbox.d.ts.map +0 -1
  199. package/dist/components/checkbox/checkbox.js.map +0 -1
  200. package/dist/components/checkbox/checkbox.stories.js.map +0 -1
  201. package/dist/components/checkbox/index.d.ts.map +0 -1
  202. package/dist/components/checkbox/index.js.map +0 -1
  203. package/dist/components/code-block/code-block-footer.d.ts.map +0 -1
  204. package/dist/components/code-block/code-block-footer.js.map +0 -1
  205. package/dist/components/code-block/code-block.d.ts.map +0 -1
  206. package/dist/components/code-block/code-block.js.map +0 -1
  207. package/dist/components/code-block/code-block.stories.js.map +0 -1
  208. package/dist/components/code-block/code-content.d.ts.map +0 -1
  209. package/dist/components/code-block/code-content.js.map +0 -1
  210. package/dist/components/code-block/code-copy-button.d.ts.map +0 -1
  211. package/dist/components/code-block/code-copy-button.js.map +0 -1
  212. package/dist/components/code-block/code-tabs.d.ts.map +0 -1
  213. package/dist/components/code-block/code-tabs.js.map +0 -1
  214. package/dist/components/code-block/index.d.ts.map +0 -1
  215. package/dist/components/code-block/index.js.map +0 -1
  216. package/dist/components/confetti/confetti.d.ts.map +0 -1
  217. package/dist/components/confetti/confetti.js.map +0 -1
  218. package/dist/components/confetti/confetti.stories.js.map +0 -1
  219. package/dist/components/confetti/index.d.ts.map +0 -1
  220. package/dist/components/confetti/index.js.map +0 -1
  221. package/dist/components/date-picker/date-picker.d.ts.map +0 -1
  222. package/dist/components/date-picker/date-picker.js.map +0 -1
  223. package/dist/components/date-picker/date-picker.stories.js.map +0 -1
  224. package/dist/components/date-picker/index.d.ts.map +0 -1
  225. package/dist/components/date-picker/index.js.map +0 -1
  226. package/dist/components/date-time-range-picker/date-time-range-picker.d.ts.map +0 -1
  227. package/dist/components/date-time-range-picker/date-time-range-picker.js.map +0 -1
  228. package/dist/components/date-time-range-picker/index.d.ts.map +0 -1
  229. package/dist/components/date-time-range-picker/index.js.map +0 -1
  230. package/dist/components/dot-grid/dot-grid.d.ts.map +0 -1
  231. package/dist/components/dot-grid/dot-grid.js.map +0 -1
  232. package/dist/components/dot-grid/index.d.ts.map +0 -1
  233. package/dist/components/dot-grid/index.js.map +0 -1
  234. package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +0 -1
  235. package/dist/components/dropdown-menu/dropdown-menu.js.map +0 -1
  236. package/dist/components/dropdown-menu/dropdown-menu.stories.js.map +0 -1
  237. package/dist/components/dropdown-menu/index.d.ts.map +0 -1
  238. package/dist/components/dropdown-menu/index.js.map +0 -1
  239. package/dist/components/dynamic-item/dynamic-item.d.ts.map +0 -1
  240. package/dist/components/dynamic-item/dynamic-item.js.map +0 -1
  241. package/dist/components/dynamic-item/dynamic-item.stories.js.map +0 -1
  242. package/dist/components/dynamic-item/index.d.ts.map +0 -1
  243. package/dist/components/dynamic-item/index.js.map +0 -1
  244. package/dist/components/form/form.d.ts.map +0 -1
  245. package/dist/components/form/form.js.map +0 -1
  246. package/dist/components/form/form.stories.js.map +0 -1
  247. package/dist/components/form/index.d.ts.map +0 -1
  248. package/dist/components/form/index.js.map +0 -1
  249. package/dist/components/icon/custom/badge.d.ts.map +0 -1
  250. package/dist/components/icon/custom/badge.js.map +0 -1
  251. package/dist/components/icon/custom/check-circle-solid.d.ts.map +0 -1
  252. package/dist/components/icon/custom/check-circle-solid.js.map +0 -1
  253. package/dist/components/icon/custom/circle-dotted-line.d.ts.map +0 -1
  254. package/dist/components/icon/custom/circle-dotted-line.js.map +0 -1
  255. package/dist/components/icon/custom/component-fill.d.ts.map +0 -1
  256. package/dist/components/icon/custom/component-fill.js.map +0 -1
  257. package/dist/components/icon/custom/component-line.d.ts.map +0 -1
  258. package/dist/components/icon/custom/component-line.js.map +0 -1
  259. package/dist/components/icon/custom/ellipse-mini-solid.d.ts.map +0 -1
  260. package/dist/components/icon/custom/ellipse-mini-solid.js.map +0 -1
  261. package/dist/components/icon/custom/index.d.ts.map +0 -1
  262. package/dist/components/icon/custom/index.js.map +0 -1
  263. package/dist/components/icon/custom/info-tooltip-fill.d.ts.map +0 -1
  264. package/dist/components/icon/custom/info-tooltip-fill.js.map +0 -1
  265. package/dist/components/icon/custom/resize.d.ts.map +0 -1
  266. package/dist/components/icon/custom/resize.js.map +0 -1
  267. package/dist/components/icon/custom/shipfox-logo.d.ts.map +0 -1
  268. package/dist/components/icon/custom/shipfox-logo.js.map +0 -1
  269. package/dist/components/icon/custom/slack-logo.d.ts.map +0 -1
  270. package/dist/components/icon/custom/slack-logo.js.map +0 -1
  271. package/dist/components/icon/custom/spinner.d.ts.map +0 -1
  272. package/dist/components/icon/custom/spinner.js.map +0 -1
  273. package/dist/components/icon/custom/stripe-logo.d.ts.map +0 -1
  274. package/dist/components/icon/custom/stripe-logo.js.map +0 -1
  275. package/dist/components/icon/custom/thunder.d.ts.map +0 -1
  276. package/dist/components/icon/custom/thunder.js.map +0 -1
  277. package/dist/components/icon/custom/x-circle-solid.d.ts.map +0 -1
  278. package/dist/components/icon/custom/x-circle-solid.js.map +0 -1
  279. package/dist/components/icon/icon.d.ts.map +0 -1
  280. package/dist/components/icon/icon.js.map +0 -1
  281. package/dist/components/icon/icon.stories.js.map +0 -1
  282. package/dist/components/icon/index.d.ts.map +0 -1
  283. package/dist/components/icon/index.js.map +0 -1
  284. package/dist/components/icon/remixicon-registry.d.ts.map +0 -1
  285. package/dist/components/icon/remixicon-registry.js.map +0 -1
  286. package/dist/components/index.d.ts.map +0 -1
  287. package/dist/components/index.js.map +0 -1
  288. package/dist/components/inline-tips/index.d.ts.map +0 -1
  289. package/dist/components/inline-tips/index.js.map +0 -1
  290. package/dist/components/inline-tips/inline-tips.d.ts.map +0 -1
  291. package/dist/components/inline-tips/inline-tips.js.map +0 -1
  292. package/dist/components/inline-tips/inline-tips.stories.js.map +0 -1
  293. package/dist/components/input/index.d.ts.map +0 -1
  294. package/dist/components/input/index.js.map +0 -1
  295. package/dist/components/input/input.d.ts.map +0 -1
  296. package/dist/components/input/input.js.map +0 -1
  297. package/dist/components/input/input.stories.js.map +0 -1
  298. package/dist/components/item/index.d.ts.map +0 -1
  299. package/dist/components/item/index.js.map +0 -1
  300. package/dist/components/item/item.d.ts.map +0 -1
  301. package/dist/components/item/item.js.map +0 -1
  302. package/dist/components/item/item.stories.js.map +0 -1
  303. package/dist/components/label/index.d.ts.map +0 -1
  304. package/dist/components/label/index.js.map +0 -1
  305. package/dist/components/label/label.d.ts.map +0 -1
  306. package/dist/components/label/label.js.map +0 -1
  307. package/dist/components/label/label.stories.js.map +0 -1
  308. package/dist/components/modal/index.d.ts.map +0 -1
  309. package/dist/components/modal/index.js.map +0 -1
  310. package/dist/components/modal/modal.d.ts.map +0 -1
  311. package/dist/components/modal/modal.js.map +0 -1
  312. package/dist/components/modal/modal.stories.js.map +0 -1
  313. package/dist/components/moving-border/index.d.ts.map +0 -1
  314. package/dist/components/moving-border/index.js.map +0 -1
  315. package/dist/components/moving-border/moving-border.d.ts.map +0 -1
  316. package/dist/components/moving-border/moving-border.js.map +0 -1
  317. package/dist/components/popover/index.d.ts.map +0 -1
  318. package/dist/components/popover/index.js.map +0 -1
  319. package/dist/components/popover/popover.d.ts.map +0 -1
  320. package/dist/components/popover/popover.js.map +0 -1
  321. package/dist/components/shiny-text/index.d.ts.map +0 -1
  322. package/dist/components/shiny-text/index.js.map +0 -1
  323. package/dist/components/shiny-text/shiny-text.d.ts.map +0 -1
  324. package/dist/components/shiny-text/shiny-text.js.map +0 -1
  325. package/dist/components/tabs/index.d.ts.map +0 -1
  326. package/dist/components/tabs/index.js.map +0 -1
  327. package/dist/components/tabs/tabs.d.ts.map +0 -1
  328. package/dist/components/tabs/tabs.js.map +0 -1
  329. package/dist/components/tabs/tabs.stories.js.map +0 -1
  330. package/dist/components/textarea/index.d.ts.map +0 -1
  331. package/dist/components/textarea/index.js.map +0 -1
  332. package/dist/components/textarea/textarea.d.ts.map +0 -1
  333. package/dist/components/textarea/textarea.js.map +0 -1
  334. package/dist/components/textarea/textarea.stories.js.map +0 -1
  335. package/dist/components/theme/index.d.ts.map +0 -1
  336. package/dist/components/theme/index.js.map +0 -1
  337. package/dist/components/theme/theme-provider.d.ts.map +0 -1
  338. package/dist/components/theme/theme-provider.js.map +0 -1
  339. package/dist/components/toast/index.d.ts.map +0 -1
  340. package/dist/components/toast/index.js.map +0 -1
  341. package/dist/components/toast/toast-custom.d.ts.map +0 -1
  342. package/dist/components/toast/toast-custom.js.map +0 -1
  343. package/dist/components/toast/toast.d.ts.map +0 -1
  344. package/dist/components/toast/toast.js.map +0 -1
  345. package/dist/components/toast/toast.stories.js.map +0 -1
  346. package/dist/components/tooltip/index.d.ts.map +0 -1
  347. package/dist/components/tooltip/index.js.map +0 -1
  348. package/dist/components/tooltip/tooltip.d.ts.map +0 -1
  349. package/dist/components/tooltip/tooltip.js.map +0 -1
  350. package/dist/components/tooltip/tooltip.stories.js.map +0 -1
  351. package/dist/components/typography/code.d.ts.map +0 -1
  352. package/dist/components/typography/code.js.map +0 -1
  353. package/dist/components/typography/code.stories.js.map +0 -1
  354. package/dist/components/typography/header.d.ts.map +0 -1
  355. package/dist/components/typography/header.js.map +0 -1
  356. package/dist/components/typography/header.stories.js.map +0 -1
  357. package/dist/components/typography/index.d.ts.map +0 -1
  358. package/dist/components/typography/index.js.map +0 -1
  359. package/dist/components/typography/text.d.ts.map +0 -1
  360. package/dist/components/typography/text.js.map +0 -1
  361. package/dist/components/typography/text.stories.js.map +0 -1
  362. package/dist/hooks/index.d.ts.map +0 -1
  363. package/dist/hooks/index.js.map +0 -1
  364. package/dist/hooks/useCopy.d.ts.map +0 -1
  365. package/dist/hooks/useCopy.js.map +0 -1
  366. package/dist/hooks/useCopyToClipboard.d.ts.map +0 -1
  367. package/dist/hooks/useCopyToClipboard.js.map +0 -1
  368. package/dist/hooks/useMediaQuery.d.ts.map +0 -1
  369. package/dist/hooks/useMediaQuery.js.map +0 -1
  370. package/dist/hooks/useResolvedTheme.d.ts.map +0 -1
  371. package/dist/hooks/useResolvedTheme.js.map +0 -1
  372. package/dist/hooks/useShikiHighlight.d.ts.map +0 -1
  373. package/dist/hooks/useShikiHighlight.js.map +0 -1
  374. package/dist/hooks/useShikiStyleInjection.d.ts.map +0 -1
  375. package/dist/hooks/useShikiStyleInjection.js.map +0 -1
  376. package/dist/hooks/useTheme.d.ts.map +0 -1
  377. package/dist/hooks/useTheme.js.map +0 -1
  378. package/dist/index.d.ts.map +0 -1
  379. package/dist/index.js.map +0 -1
  380. package/dist/onboarding/sign-in.stories.js.map +0 -1
  381. package/dist/state/theme.d.ts.map +0 -1
  382. package/dist/state/theme.js.map +0 -1
  383. package/dist/utils/avatar.d.ts.map +0 -1
  384. package/dist/utils/avatar.js.map +0 -1
  385. package/dist/utils/clipboard.d.ts.map +0 -1
  386. package/dist/utils/clipboard.js.map +0 -1
  387. package/dist/utils/cn.d.ts.map +0 -1
  388. package/dist/utils/cn.js.map +0 -1
  389. package/dist/utils/date.d.ts.map +0 -1
  390. package/dist/utils/date.js.map +0 -1
  391. package/dist/utils/debounce.d.ts.map +0 -1
  392. package/dist/utils/debounce.js.map +0 -1
  393. package/dist/utils/format/chart.d.ts.map +0 -1
  394. package/dist/utils/format/chart.js.map +0 -1
  395. package/dist/utils/format/date.d.ts.map +0 -1
  396. package/dist/utils/format/date.js.map +0 -1
  397. package/dist/utils/format/duration.d.ts.map +0 -1
  398. package/dist/utils/format/duration.js.map +0 -1
  399. package/dist/utils/format/index.d.ts.map +0 -1
  400. package/dist/utils/format/index.js.map +0 -1
  401. package/dist/utils/format/number.d.ts.map +0 -1
  402. package/dist/utils/format/number.js.map +0 -1
  403. package/dist/utils/index.d.ts.map +0 -1
  404. package/dist/utils/index.js.map +0 -1
  405. package/index.css +0 -970
  406. package/src/assets/illustration-1.svg +0 -92
  407. package/src/assets/illustration-2.svg +0 -14
  408. package/src/assets/illustration-gradient.svg +0 -7049
  409. package/src/build-css-entry.ts +0 -3
  410. package/src/colors.stories.conts.ts +0 -164
  411. package/src/colors.stories.tsx +0 -66
  412. package/src/components/alert/alert.stories.tsx +0 -178
  413. package/src/components/alert/alert.tsx +0 -291
  414. package/src/components/alert/index.ts +0 -1
  415. package/src/components/avatar/avatar-group.tsx +0 -186
  416. package/src/components/avatar/avatar.stories.tsx +0 -179
  417. package/src/components/avatar/avatar.tsx +0 -219
  418. package/src/components/avatar/index.ts +0 -2
  419. package/src/components/badge/badge.stories.tsx +0 -468
  420. package/src/components/badge/badge.tsx +0 -147
  421. package/src/components/badge/icon-badge.tsx +0 -43
  422. package/src/components/badge/index.ts +0 -4
  423. package/src/components/badge/status-badge.tsx +0 -43
  424. package/src/components/badge/user-badge.tsx +0 -34
  425. package/src/components/button/button-link.stories.tsx +0 -86
  426. package/src/components/button/button-link.tsx +0 -76
  427. package/src/components/button/button.stories.tsx +0 -138
  428. package/src/components/button/button.tsx +0 -91
  429. package/src/components/button/icon-button.stories.tsx +0 -228
  430. package/src/components/button/icon-button.tsx +0 -95
  431. package/src/components/button/index.ts +0 -3
  432. package/src/components/calendar/calendar.tsx +0 -90
  433. package/src/components/calendar/index.ts +0 -1
  434. package/src/components/checkbox/checkbox-label.tsx +0 -125
  435. package/src/components/checkbox/checkbox-links.tsx +0 -92
  436. package/src/components/checkbox/checkbox.stories.tsx +0 -391
  437. package/src/components/checkbox/checkbox.tsx +0 -71
  438. package/src/components/checkbox/index.ts +0 -3
  439. package/src/components/code-block/code-block-footer.tsx +0 -190
  440. package/src/components/code-block/code-block.stories.tsx +0 -323
  441. package/src/components/code-block/code-block.tsx +0 -283
  442. package/src/components/code-block/code-content.tsx +0 -63
  443. package/src/components/code-block/code-copy-button.tsx +0 -73
  444. package/src/components/code-block/code-tabs.tsx +0 -170
  445. package/src/components/code-block/index.ts +0 -3
  446. package/src/components/confetti/confetti.stories.tsx +0 -38
  447. package/src/components/confetti/confetti.tsx +0 -140
  448. package/src/components/confetti/index.ts +0 -1
  449. package/src/components/date-picker/date-picker.stories.tsx +0 -230
  450. package/src/components/date-picker/date-picker.tsx +0 -179
  451. package/src/components/date-picker/index.ts +0 -1
  452. package/src/components/date-time-range-picker/date-time-range-picker.tsx +0 -211
  453. package/src/components/date-time-range-picker/index.ts +0 -1
  454. package/src/components/dot-grid/dot-grid.tsx +0 -325
  455. package/src/components/dot-grid/index.ts +0 -1
  456. package/src/components/dropdown-menu/dropdown-menu.stories.tsx +0 -384
  457. package/src/components/dropdown-menu/dropdown-menu.tsx +0 -416
  458. package/src/components/dropdown-menu/index.ts +0 -1
  459. package/src/components/dynamic-item/dynamic-item.stories.tsx +0 -266
  460. package/src/components/dynamic-item/dynamic-item.tsx +0 -74
  461. package/src/components/dynamic-item/index.ts +0 -1
  462. package/src/components/form/form.stories.tsx +0 -500
  463. package/src/components/form/form.tsx +0 -154
  464. package/src/components/form/index.ts +0 -1
  465. package/src/components/icon/custom/badge.tsx +0 -17
  466. package/src/components/icon/custom/check-circle-solid.tsx +0 -24
  467. package/src/components/icon/custom/circle-dotted-line.tsx +0 -17
  468. package/src/components/icon/custom/component-fill.tsx +0 -17
  469. package/src/components/icon/custom/component-line.tsx +0 -17
  470. package/src/components/icon/custom/ellipse-mini-solid.tsx +0 -17
  471. package/src/components/icon/custom/index.ts +0 -14
  472. package/src/components/icon/custom/info-tooltip-fill.tsx +0 -21
  473. package/src/components/icon/custom/resize.tsx +0 -17
  474. package/src/components/icon/custom/shipfox-logo.tsx +0 -20
  475. package/src/components/icon/custom/slack-logo.tsx +0 -35
  476. package/src/components/icon/custom/spinner.tsx +0 -144
  477. package/src/components/icon/custom/stripe-logo.tsx +0 -27
  478. package/src/components/icon/custom/thunder.tsx +0 -17
  479. package/src/components/icon/custom/x-circle-solid.tsx +0 -24
  480. package/src/components/icon/icon.stories.tsx +0 -31
  481. package/src/components/icon/icon.tsx +0 -90
  482. package/src/components/icon/index.ts +0 -1
  483. package/src/components/icon/remixicon-registry.ts +0 -24
  484. package/src/components/index.ts +0 -29
  485. package/src/components/inline-tips/index.ts +0 -1
  486. package/src/components/inline-tips/inline-tips.stories.tsx +0 -131
  487. package/src/components/inline-tips/inline-tips.tsx +0 -132
  488. package/src/components/input/index.ts +0 -1
  489. package/src/components/input/input.stories.tsx +0 -138
  490. package/src/components/input/input.tsx +0 -43
  491. package/src/components/item/index.ts +0 -1
  492. package/src/components/item/item.stories.tsx +0 -159
  493. package/src/components/item/item.tsx +0 -182
  494. package/src/components/label/index.ts +0 -1
  495. package/src/components/label/label.stories.tsx +0 -67
  496. package/src/components/label/label.tsx +0 -15
  497. package/src/components/modal/index.ts +0 -1
  498. package/src/components/modal/modal.stories.tsx +0 -448
  499. package/src/components/modal/modal.tsx +0 -311
  500. package/src/components/moving-border/index.ts +0 -1
  501. package/src/components/moving-border/moving-border.tsx +0 -67
  502. package/src/components/popover/index.ts +0 -1
  503. package/src/components/popover/popover.tsx +0 -60
  504. package/src/components/renovate.json +0 -23
  505. package/src/components/shiny-text/index.ts +0 -1
  506. package/src/components/shiny-text/shiny-text.tsx +0 -21
  507. package/src/components/tabs/index.ts +0 -1
  508. package/src/components/tabs/tabs.stories.tsx +0 -100
  509. package/src/components/tabs/tabs.tsx +0 -380
  510. package/src/components/textarea/index.ts +0 -1
  511. package/src/components/textarea/textarea.stories.tsx +0 -196
  512. package/src/components/textarea/textarea.tsx +0 -42
  513. package/src/components/theme/index.ts +0 -1
  514. package/src/components/theme/theme-provider.tsx +0 -50
  515. package/src/components/toast/index.ts +0 -2
  516. package/src/components/toast/toast-custom.tsx +0 -154
  517. package/src/components/toast/toast.stories.tsx +0 -369
  518. package/src/components/toast/toast.tsx +0 -41
  519. package/src/components/tooltip/index.ts +0 -1
  520. package/src/components/tooltip/tooltip.stories.tsx +0 -284
  521. package/src/components/tooltip/tooltip.tsx +0 -121
  522. package/src/components/typography/code.stories.tsx +0 -36
  523. package/src/components/typography/code.tsx +0 -38
  524. package/src/components/typography/header.stories.tsx +0 -27
  525. package/src/components/typography/header.tsx +0 -41
  526. package/src/components/typography/index.ts +0 -3
  527. package/src/components/typography/text.stories.tsx +0 -67
  528. package/src/components/typography/text.tsx +0 -50
  529. package/src/hooks/index.ts +0 -6
  530. package/src/hooks/useCopy.ts +0 -0
  531. package/src/hooks/useCopyToClipboard.ts +0 -20
  532. package/src/hooks/useMediaQuery.ts +0 -87
  533. package/src/hooks/useResolvedTheme.ts +0 -34
  534. package/src/hooks/useShikiHighlight.ts +0 -140
  535. package/src/hooks/useShikiStyleInjection.ts +0 -34
  536. package/src/hooks/useTheme.ts +0 -10
  537. package/src/index.ts +0 -4
  538. package/src/onboarding/sign-in.stories.tsx +0 -85
  539. package/src/state/theme.ts +0 -15
  540. package/src/utils/avatar.ts +0 -27
  541. package/src/utils/clipboard.ts +0 -4
  542. package/src/utils/cn.ts +0 -6
  543. package/src/utils/date.test.ts +0 -119
  544. package/src/utils/date.ts +0 -99
  545. package/src/utils/debounce.ts +0 -15
  546. package/src/utils/format/chart.ts +0 -16
  547. package/src/utils/format/date.test.ts +0 -65
  548. package/src/utils/format/date.ts +0 -75
  549. package/src/utils/format/duration.test.ts +0 -58
  550. package/src/utils/format/duration.ts +0 -82
  551. package/src/utils/format/index.ts +0 -4
  552. package/src/utils/format/number.test.ts +0 -38
  553. package/src/utils/format/number.ts +0 -33
  554. package/src/utils/index.ts +0 -6
  555. package/test/global.ts +0 -3
  556. package/test/setup.ts +0 -9
  557. package/tsconfig.build.json +0 -19
  558. package/tsconfig.json +0 -11
  559. package/tsconfig.test.json +0 -12
  560. package/vercel.json +0 -8
  561. package/vite.css.config.ts +0 -30
  562. package/vitest.config.ts +0 -44
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/textarea/textarea.tsx"],"sourcesContent":["import {cva, type VariantProps} from 'class-variance-authority';\nimport type {ComponentProps} from 'react';\nimport {cn} from 'utils/cn';\n\nexport const textareaVariants = cva('', {\n variants: {\n variant: {\n base: 'bg-background-field-base',\n component: 'bg-background-field-component',\n },\n size: {\n base: 'py-6',\n small: 'py-4',\n },\n },\n defaultVariants: {\n variant: 'base',\n size: 'base',\n },\n});\n\ntype TextareaProps = Omit<ComponentProps<'textarea'>, 'size'> &\n VariantProps<typeof textareaVariants>;\n\nexport function Textarea({className, variant, size, ...props}: TextareaProps) {\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(\n 'textarea-resize-custom placeholder:text-foreground-neutral-muted w-full min-w-0 rounded-6 px-8 pr-24 text-sm leading-20 text-foreground-neutral-base shadow-button-neutral transition-[color,box-shadow] outline-none',\n 'hover:bg-background-field-hover',\n 'selection:bg-background-accent-neutral-soft selection:text-foreground-neutral-on-inverted',\n 'disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-background-neutral-disabled disabled:shadow-none disabled:text-foreground-neutral-disabled',\n 'focus-visible:shadow-border-interactive-with-active',\n 'aria-invalid:shadow-border-error',\n textareaVariants({variant, size}),\n className,\n )}\n {...props}\n />\n );\n}\n"],"names":["cva","cn","textareaVariants","variants","variant","base","component","size","small","defaultVariants","Textarea","className","props","textarea","data-slot"],"mappings":";AAAA,SAAQA,GAAG,QAA0B,2BAA2B;AAEhE,SAAQC,EAAE,QAAO,WAAW;AAE5B,OAAO,MAAMC,mBAAmBF,IAAI,IAAI;IACtCG,UAAU;QACRC,SAAS;YACPC,MAAM;YACNC,WAAW;QACb;QACAC,MAAM;YACJF,MAAM;YACNG,OAAO;QACT;IACF;IACAC,iBAAiB;QACfL,SAAS;QACTG,MAAM;IACR;AACF,GAAG;AAKH,OAAO,SAASG,SAAS,EAACC,SAAS,EAAEP,OAAO,EAAEG,IAAI,EAAE,GAAGK,OAAqB;IAC1E,qBACE,KAACC;QACCC,aAAU;QACVH,WAAWV,GACT,yNACA,mCACA,6FACA,mKACA,uDACA,oCACAC,iBAAiB;YAACE;YAASG;QAAI,IAC/BI;QAED,GAAGC,KAAK;;AAGf"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/textarea/textarea.stories.tsx"],"sourcesContent":["import {argosScreenshot} from '@argos-ci/storybook/vitest';\nimport type {Meta, StoryObj} from '@storybook/react';\nimport {Code, Header} from 'components/typography';\nimport {Textarea} from './textarea';\n\nconst meta = {\n title: 'Components/Textarea',\n component: Textarea,\n tags: ['autodocs'],\n argTypes: {\n placeholder: {control: 'text'},\n disabled: {control: 'boolean'},\n 'aria-invalid': {control: 'boolean'},\n rows: {control: 'number'},\n cols: {control: 'number'},\n },\n args: {\n placeholder: 'Type something…',\n disabled: false,\n 'aria-invalid': false,\n rows: 4,\n },\n} satisfies Meta<typeof Textarea>;\n\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nexport const Default: Story = {\n play: async (ctx) => {\n await new Promise((resolve) => setTimeout(resolve, 100));\n await argosScreenshot(ctx, 'Textarea Default');\n },\n};\n\nconst variants = ['base', 'component'] as const;\nconst sizes = ['base', 'small'] as const;\n\nexport const States: Story = {\n render: (args) => (\n <div className=\"flex flex-col gap-32\">\n {variants.map((variant) =>\n sizes.map((size) => (\n <div key={variant + size} className=\"flex flex-col gap-16\">\n <Header variant=\"h3\">\n {variant} {size}\n </Header>\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Default\n </Code>\n\n <Textarea {...args} variant={variant} size={size} />\n </div>\n\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Hover\n </Code>\n\n <Textarea {...args} className=\"hover\" variant={variant} size={size} />\n </div>\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Active\n </Code>\n\n <Textarea\n {...args}\n className=\"active\"\n defaultValue=\"The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.\"\n variant={variant}\n size={size}\n />\n </div>\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Focus\n </Code>\n\n <Textarea {...args} className=\"focus\" variant={variant} size={size} />\n </div>\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Disabled\n </Code>\n\n <Textarea {...args} disabled variant={variant} size={size} />\n </div>\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Invalid\n </Code>\n\n <Textarea {...args} aria-invalid variant={variant} size={size} />\n </div>\n </div>\n )),\n )}\n </div>\n ),\n};\n\nStates.parameters = {\n pseudo: {\n hover: '.hover',\n active: '.active',\n focusVisible: '.focus',\n },\n};\n\nexport const Sizes: Story = {\n render: (args) => (\n <div className=\"flex flex-col gap-32\">\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Rows: 2\n </Code>\n <Textarea {...args} rows={2} />\n </div>\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Rows: 4 (default)\n </Code>\n <Textarea {...args} rows={4} />\n </div>\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Rows: 6\n </Code>\n <Textarea {...args} rows={6} />\n </div>\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Rows: 10\n </Code>\n <Textarea {...args} rows={10} />\n </div>\n </div>\n ),\n};\n\nexport const DesignMock: Story = {\n render: () => {\n const variants = [\n {key: 'base', label: 'Primary'},\n {key: 'component', label: 'Secondary'},\n ] as const;\n const states = [\n {name: 'Default', props: {}},\n {name: 'Hover', props: {className: 'hover'}},\n {name: 'Focus', props: {className: 'focus'}},\n {name: 'Filled', props: {defaultValue: 'Placeholder'}},\n {name: 'Filled Hover', props: {defaultValue: 'Placeholder', className: 'hover'}},\n {name: 'Disabled', props: {disabled: true}},\n {name: 'Error', props: {'aria-invalid': true}},\n ] as const;\n\n return (\n <div className=\"flex flex-col gap-32 pb-64 pt-32 px-32\">\n <Header variant=\"h3\" className=\"text-foreground-neutral-subtle\">\n TEXT AREA\n </Header>\n <div className=\"flex flex-row gap-32\">\n {variants.map((variant) => (\n <div key={variant.key} className=\"flex flex-col gap-32\">\n {states.map((state) => (\n <div key={state.name} className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Size=Base (32), State={state.name}, Color={variant.label}\n </Code>\n <div className=\"w-280\">\n <Textarea\n placeholder=\"Placeholder\"\n variant={variant.key}\n size=\"base\"\n rows={2}\n {...state.props}\n />\n </div>\n </div>\n ))}\n </div>\n ))}\n </div>\n </div>\n );\n },\n};\n\nDesignMock.parameters = {\n pseudo: {\n hover: '.hover',\n focusVisible: '.focus',\n },\n};\n"],"names":["argosScreenshot","Code","Header","Textarea","meta","title","component","tags","argTypes","placeholder","control","disabled","rows","cols","args","Default","play","ctx","Promise","resolve","setTimeout","variants","sizes","States","render","div","className","map","variant","size","defaultValue","aria-invalid","parameters","pseudo","hover","active","focusVisible","Sizes","DesignMock","key","label","states","name","props","state"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/theme/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/theme/index.ts"],"sourcesContent":["export * from './theme-provider';\n"],"names":[],"mappings":"AAAA,cAAc,mBAAmB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme-provider.d.ts","sourceRoot":"","sources":["../../../src/components/theme/theme-provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,SAAS,EAAsB,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAC,KAAK,KAAK,EAAuB,MAAM,aAAa,CAAC;AAE7D,KAAK,kBAAkB,GAAG;IACxB,QAAQ,EAAE,SAAS,CAAC;IACpB,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,YAAuB,EACvB,UAA4B,EAC5B,GAAG,KAAK,EACT,EAAE,kBAAkB,2CAmCpB"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/theme/theme-provider.tsx"],"sourcesContent":["import {type ReactNode, useEffect, useState} from 'react';\nimport {type Theme, ThemeProviderContext} from 'state/theme';\n\ntype ThemeProviderProps = {\n children: ReactNode;\n defaultTheme?: Theme;\n storageKey?: string;\n};\n\nexport function ThemeProvider({\n children,\n defaultTheme = 'system',\n storageKey = 'shipfox-theme',\n ...props\n}: ThemeProviderProps) {\n const [theme, setTheme] = useState<Theme>(\n () => (localStorage.getItem(storageKey) as Theme) || defaultTheme,\n );\n\n useEffect(() => {\n const root = window.document.documentElement;\n\n root.classList.remove('light', 'dark');\n\n if (theme === 'system') {\n const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light';\n\n root.classList.add(systemTheme);\n return;\n }\n\n root.classList.add(theme);\n }, [theme]);\n\n const value = {\n theme,\n setTheme: (theme: Theme) => {\n localStorage.setItem(storageKey, theme);\n setTheme(theme);\n },\n };\n\n return (\n <ThemeProviderContext.Provider {...props} value={value}>\n {children}\n </ThemeProviderContext.Provider>\n );\n}\n"],"names":["useEffect","useState","ThemeProviderContext","ThemeProvider","children","defaultTheme","storageKey","props","theme","setTheme","localStorage","getItem","root","window","document","documentElement","classList","remove","systemTheme","matchMedia","matches","add","value","setItem","Provider"],"mappings":";AAAA,SAAwBA,SAAS,EAAEC,QAAQ,QAAO,QAAQ;AAC1D,SAAoBC,oBAAoB,QAAO,cAAc;AAQ7D,OAAO,SAASC,cAAc,EAC5BC,QAAQ,EACRC,eAAe,QAAQ,EACvBC,aAAa,eAAe,EAC5B,GAAGC,OACgB;IACnB,MAAM,CAACC,OAAOC,SAAS,GAAGR,SACxB,IAAM,AAACS,aAAaC,OAAO,CAACL,eAAyBD;IAGvDL,UAAU;QACR,MAAMY,OAAOC,OAAOC,QAAQ,CAACC,eAAe;QAE5CH,KAAKI,SAAS,CAACC,MAAM,CAAC,SAAS;QAE/B,IAAIT,UAAU,UAAU;YACtB,MAAMU,cAAcL,OAAOM,UAAU,CAAC,gCAAgCC,OAAO,GACzE,SACA;YAEJR,KAAKI,SAAS,CAACK,GAAG,CAACH;YACnB;QACF;QAEAN,KAAKI,SAAS,CAACK,GAAG,CAACb;IACrB,GAAG;QAACA;KAAM;IAEV,MAAMc,QAAQ;QACZd;QACAC,UAAU,CAACD;YACTE,aAAaa,OAAO,CAACjB,YAAYE;YACjCC,SAASD;QACX;IACF;IAEA,qBACE,KAACN,qBAAqBsB,QAAQ;QAAE,GAAGjB,KAAK;QAAEe,OAAOA;kBAC9ClB;;AAGP"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/toast/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/toast/index.ts"],"sourcesContent":["export * from './toast';\nexport * from './toast-custom';\n"],"names":[],"mappings":"AAAA,cAAc,UAAU;AACxB,cAAc,iBAAiB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"toast-custom.d.ts","sourceRoot":"","sources":["../../../src/components/toast/toast-custom.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAM,KAAK,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAKhE,QAAA,MAAM,mBAAmB;;8EAavB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,mBAAmB,CAAC,GAAG;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAiBF,wBAAgB,WAAW,CAAC,EAC1B,OAAmB,EACnB,KAAK,EACL,WAAW,EACX,OAAO,EACP,OAAO,EACP,OAAO,EACP,SAAS,GACV,EAAE,gBAAgB,2CAgGlB"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/toast/toast-custom.tsx"],"sourcesContent":["import {cva, type VariantProps} from 'class-variance-authority';\nimport {Icon} from 'components/icon/icon';\nimport type {ReactNode} from 'react';\nimport {cn} from 'utils/cn';\n\nconst toastCustomVariants = cva('group relative flex items-start gap-8', {\n variants: {\n variant: {\n default: 'text-tag-neutral-icon',\n info: 'text-tag-neutral-icon',\n success: 'text-tag-success-icon',\n warning: 'text-tag-warning-icon',\n error: 'text-tag-error-icon',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n});\n\nexport type ToastAction = {\n label: string;\n onClick: () => void;\n};\n\nexport type ToastCustomProps = VariantProps<typeof toastCustomVariants> & {\n title?: string;\n description?: string;\n content?: string;\n actions?: ToastAction[];\n onClose?: () => void;\n className?: string;\n};\n\nfunction getDefaultIcon(variant: ToastCustomProps['variant'] = 'default'): ReactNode {\n switch (variant) {\n case 'info':\n return <Icon name=\"info\" size={20} />;\n case 'success':\n return <Icon name=\"checkCircleSolid\" size={20} />;\n case 'warning':\n return <Icon name=\"info\" size={20} />;\n case 'error':\n return <Icon name=\"xCircleSolid\" size={20} />;\n default:\n return <Icon name=\"info\" size={20} />;\n }\n}\n\nexport function ToastCustom({\n variant = 'default',\n title,\n description,\n content,\n actions,\n onClose,\n className,\n}: ToastCustomProps) {\n const hasTitle = Boolean(title);\n const hasDescription = Boolean(description);\n const hasContent = Boolean(content);\n const hasActions = Boolean(actions && actions.length > 0);\n const isSimple = hasContent && !hasTitle && !hasDescription;\n\n return (\n <div data-slot=\"toast-custom\" className={cn(toastCustomVariants({variant}), className)}>\n <div className=\"w-20 h-20 rounded-full flex items-start justify-center shrink-0 pt-1\">\n {getDefaultIcon(variant)}\n </div>\n\n <div className=\"flex-1 min-w-0\">\n {hasTitle && (\n <div\n data-slot=\"toast-custom-title\"\n className=\"font-medium text-sm leading-20 text-foreground-neutral-base mb-4\"\n >\n {title}\n </div>\n )}\n {hasDescription && (\n <div\n data-slot=\"toast-custom-description\"\n className=\"text-xs leading-20 text-foreground-neutral-muted mb-8\"\n >\n {description}\n </div>\n )}\n {isSimple ? (\n <div className=\"flex items-center justify-between gap-16 min-w-400 mr-30\">\n <div\n data-slot=\"toast-custom-content\"\n className=\"text-sm leading-20 text-foreground-neutral-base\"\n >\n {content}\n </div>\n {hasActions && (\n <div data-slot=\"toast-custom-actions\" className=\"flex items-center gap-16\">\n {actions?.map((action) => (\n <button\n key={action.label}\n data-slot=\"toast-custom-action\"\n type=\"button\"\n onClick={action.onClick}\n className=\"bg-transparent border-none p-0 cursor-pointer text-xs font-medium leading-20 text-foreground-neutral-base hover:text-foreground-neutral-subtle transition-colors duration-150 outline-none focus-visible:ring-2 focus-visible:ring-background-accent-blue-base focus-visible:ring-offset-2\"\n >\n {action.label}\n </button>\n ))}\n </div>\n )}\n </div>\n ) : (\n <>\n {hasContent && !hasTitle && (\n <div\n data-slot=\"toast-custom-content\"\n className=\"text-sm leading-20 text-foreground-neutral-base mb-8\"\n >\n {content}\n </div>\n )}\n {hasActions && (\n <div data-slot=\"toast-custom-actions\" className=\"flex items-center gap-16 mt-8\">\n {actions?.map((action) => (\n <button\n key={action.label}\n data-slot=\"toast-custom-action\"\n type=\"button\"\n onClick={action.onClick}\n className=\"bg-transparent border-none p-0 cursor-pointer text-xs font-medium leading-20 text-foreground-neutral-base hover:text-foreground-neutral-subtle transition-colors duration-150 outline-none focus-visible:ring-2 focus-visible:ring-background-accent-blue-base focus-visible:ring-offset-2\"\n >\n {action.label}\n </button>\n ))}\n </div>\n )}\n </>\n )}\n </div>\n\n {onClose && (\n <button\n data-slot=\"toast-custom-close\"\n type=\"button\"\n onClick={onClose}\n className=\"absolute cursor-pointer -top-2 -right-2 rounded-4 p-4 bg-transparent border-none text-foreground-neutral-muted hover:text-foreground-neutral-base hover:bg-background-components-hover transition-colors duration-150 outline-none focus-visible:ring-2 focus-visible:ring-background-accent-blue-base focus-visible:ring-offset-2 shrink-0\"\n aria-label=\"Close\"\n >\n <Icon name=\"close\" className=\"w-16 h-16\" />\n </button>\n )}\n </div>\n );\n}\n"],"names":["cva","Icon","cn","toastCustomVariants","variants","variant","default","info","success","warning","error","defaultVariants","getDefaultIcon","name","size","ToastCustom","title","description","content","actions","onClose","className","hasTitle","Boolean","hasDescription","hasContent","hasActions","length","isSimple","div","data-slot","map","action","button","type","onClick","label","aria-label"],"mappings":";AAAA,SAAQA,GAAG,QAA0B,2BAA2B;AAChE,SAAQC,IAAI,QAAO,uBAAuB;AAE1C,SAAQC,EAAE,QAAO,WAAW;AAE5B,MAAMC,sBAAsBH,IAAI,yCAAyC;IACvEI,UAAU;QACRC,SAAS;YACPC,SAAS;YACTC,MAAM;YACNC,SAAS;YACTC,SAAS;YACTC,OAAO;QACT;IACF;IACAC,iBAAiB;QACfN,SAAS;IACX;AACF;AAgBA,SAASO,eAAeP,UAAuC,SAAS;IACtE,OAAQA;QACN,KAAK;YACH,qBAAO,KAACJ;gBAAKY,MAAK;gBAAOC,MAAM;;QACjC,KAAK;YACH,qBAAO,KAACb;gBAAKY,MAAK;gBAAmBC,MAAM;;QAC7C,KAAK;YACH,qBAAO,KAACb;gBAAKY,MAAK;gBAAOC,MAAM;;QACjC,KAAK;YACH,qBAAO,KAACb;gBAAKY,MAAK;gBAAeC,MAAM;;QACzC;YACE,qBAAO,KAACb;gBAAKY,MAAK;gBAAOC,MAAM;;IACnC;AACF;AAEA,OAAO,SAASC,YAAY,EAC1BV,UAAU,SAAS,EACnBW,KAAK,EACLC,WAAW,EACXC,OAAO,EACPC,OAAO,EACPC,OAAO,EACPC,SAAS,EACQ;IACjB,MAAMC,WAAWC,QAAQP;IACzB,MAAMQ,iBAAiBD,QAAQN;IAC/B,MAAMQ,aAAaF,QAAQL;IAC3B,MAAMQ,aAAaH,QAAQJ,WAAWA,QAAQQ,MAAM,GAAG;IACvD,MAAMC,WAAWH,cAAc,CAACH,YAAY,CAACE;IAE7C,qBACE,MAACK;QAAIC,aAAU;QAAeT,WAAWnB,GAAGC,oBAAoB;YAACE;QAAO,IAAIgB;;0BAC1E,KAACQ;gBAAIR,WAAU;0BACZT,eAAeP;;0BAGlB,MAACwB;gBAAIR,WAAU;;oBACZC,0BACC,KAACO;wBACCC,aAAU;wBACVT,WAAU;kCAETL;;oBAGJQ,gCACC,KAACK;wBACCC,aAAU;wBACVT,WAAU;kCAETJ;;oBAGJW,yBACC,MAACC;wBAAIR,WAAU;;0CACb,KAACQ;gCACCC,aAAU;gCACVT,WAAU;0CAETH;;4BAEFQ,4BACC,KAACG;gCAAIC,aAAU;gCAAuBT,WAAU;0CAC7CF,SAASY,IAAI,CAACC,uBACb,KAACC;wCAECH,aAAU;wCACVI,MAAK;wCACLC,SAASH,OAAOG,OAAO;wCACvBd,WAAU;kDAETW,OAAOI,KAAK;uCANRJ,OAAOI,KAAK;;;uCAa3B;;4BACGX,cAAc,CAACH,0BACd,KAACO;gCACCC,aAAU;gCACVT,WAAU;0CAETH;;4BAGJQ,4BACC,KAACG;gCAAIC,aAAU;gCAAuBT,WAAU;0CAC7CF,SAASY,IAAI,CAACC,uBACb,KAACC;wCAECH,aAAU;wCACVI,MAAK;wCACLC,SAASH,OAAOG,OAAO;wCACvBd,WAAU;kDAETW,OAAOI,KAAK;uCANRJ,OAAOI,KAAK;;;;;;YAe9BhB,yBACC,KAACa;gBACCH,aAAU;gBACVI,MAAK;gBACLC,SAASf;gBACTC,WAAU;gBACVgB,cAAW;0BAEX,cAAA,KAACpC;oBAAKY,MAAK;oBAAQQ,WAAU;;;;;AAKvC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../src/components/toast/toast.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,YAAY,IAAI,kBAAkB,EACvC,KAAK,IAAI,WAAW,EACrB,MAAM,QAAQ,CAAC;AAEhB,KAAK,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;AAEtD,iBAAS,OAAO,CAAC,EAAC,GAAG,KAAK,EAAC,EAAE,YAAY,2CA4BxC;AAED,OAAO,EAAC,OAAO,EAAE,WAAW,IAAI,KAAK,EAAE,KAAK,YAAY,EAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/toast/toast.tsx"],"sourcesContent":["import {useTheme} from 'hooks/useTheme';\nimport {AlertTriangle, CheckCircle2, Info, Loader2, XCircle} from 'lucide-react';\nimport {\n Toaster as SonnerToaster,\n type ToasterProps as SonnerToasterProps,\n toast as sonnerToast,\n} from 'sonner';\n\ntype ToasterProps = Omit<SonnerToasterProps, 'theme'>;\n\nfunction Toaster({...props}: ToasterProps) {\n const {theme} = useTheme();\n\n return (\n <SonnerToaster\n theme={theme as SonnerToasterProps['theme']}\n className=\"toaster group\"\n toastOptions={{\n classNames: {\n toast:\n 'group toast group-[.toaster]:bg-background-components-base group-[.toaster]:text-foreground-neutral-base group-[.toaster]:border group-[.toaster]:border-border-neutral-base group-[.toaster]:shadow-tooltip rounded-8 p-8',\n description: 'group-[.toast]:text-foreground-neutral-muted text-xs leading-20 mt-4',\n actionButton:\n 'group-[.toast]:bg-background-button-neutral-default group-[.toast]:text-foreground-neutral-base group-[.toast]:hover:bg-background-button-neutral-hover rounded-6 px-8 py-4 text-xs font-medium',\n cancelButton:\n 'group-[.toast]:bg-background-button-transparent-default group-[.toast]:text-foreground-neutral-base group-[.toast]:hover:bg-background-button-transparent-hover rounded-6 px-8 py-4 text-xs font-medium',\n },\n }}\n icons={{\n success: <CheckCircle2 className=\"size-20 text-tag-success-icon\" />,\n info: <Info className=\"size-20 text-tag-blue-icon\" />,\n warning: <AlertTriangle className=\"size-20 text-tag-warning-icon\" />,\n error: <XCircle className=\"size-20 text-tag-error-icon\" />,\n loading: <Loader2 className=\"size-20 text-tag-neutral-icon animate-spin\" />,\n }}\n {...props}\n />\n );\n}\n\nexport {Toaster, sonnerToast as toast, type ToasterProps};\n"],"names":["useTheme","AlertTriangle","CheckCircle2","Info","Loader2","XCircle","Toaster","SonnerToaster","toast","sonnerToast","props","theme","className","toastOptions","classNames","description","actionButton","cancelButton","icons","success","info","warning","error","loading"],"mappings":";AAAA,SAAQA,QAAQ,QAAO,iBAAiB;AACxC,SAAQC,aAAa,EAAEC,YAAY,EAAEC,IAAI,EAAEC,OAAO,EAAEC,OAAO,QAAO,eAAe;AACjF,SACEC,WAAWC,aAAa,EAExBC,SAASC,WAAW,QACf,SAAS;AAIhB,SAASH,QAAQ,EAAC,GAAGI,OAAoB;IACvC,MAAM,EAACC,KAAK,EAAC,GAAGX;IAEhB,qBACE,KAACO;QACCI,OAAOA;QACPC,WAAU;QACVC,cAAc;YACZC,YAAY;gBACVN,OACE;gBACFO,aAAa;gBACbC,cACE;gBACFC,cACE;YACJ;QACF;QACAC,OAAO;YACLC,uBAAS,KAACjB;gBAAaU,WAAU;;YACjCQ,oBAAM,KAACjB;gBAAKS,WAAU;;YACtBS,uBAAS,KAACpB;gBAAcW,WAAU;;YAClCU,qBAAO,KAACjB;gBAAQO,WAAU;;YAC1BW,uBAAS,KAACnB;gBAAQQ,WAAU;;QAC9B;QACC,GAAGF,KAAK;;AAGf;AAEA,SAAQJ,OAAO,EAAEG,eAAeD,KAAK,GAAqB"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/toast/toast.stories.tsx"],"sourcesContent":["import type {Meta, StoryObj} from '@storybook/react';\nimport {Button} from 'components/button/button';\nimport {Code} from 'components/typography';\nimport {Toaster, toast} from './toast';\nimport {ToastCustom} from './toast-custom';\n\nconst meta = {\n title: 'Components/Toast',\n component: Toaster,\n tags: ['autodocs'],\n parameters: {\n layout: 'centered',\n },\n decorators: [\n (Story) => (\n <>\n <Story />\n <div className=\"flex flex-wrap justify-center items-center gap-32\">\n {/* Regular Toasts */}\n <div className=\"flex flex-col gap-8\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle text-center\">\n REGULAR TOASTS\n </Code>\n <Button\n onClick={() => {\n toast('Event has been created');\n }}\n >\n Default Toast\n </Button>\n <Button\n onClick={() => {\n toast.success('Success! Your changes have been saved.');\n }}\n >\n Success Toast\n </Button>\n <Button\n onClick={() => {\n toast.error('Error! Something went wrong.');\n }}\n >\n Error Toast\n </Button>\n <Button\n onClick={() => {\n toast.warning('Warning! Please review your input.');\n }}\n >\n Warning Toast\n </Button>\n <Button\n onClick={() => {\n toast.info('Info: This is an informational message.');\n }}\n >\n Info Toast\n </Button>\n <Button\n onClick={() => {\n toast('Event has been created', {\n description: 'Sunday, December 03, 2023 at 9:00 AM',\n });\n }}\n >\n Toast with Description\n </Button>\n <Button\n onClick={() => {\n toast('Event has been created', {\n description: 'Sunday, December 03, 2023 at 9:00 AM',\n action: {\n label: 'Undo',\n onClick: () => {\n toast('Undo clicked');\n },\n },\n });\n }}\n >\n Toast with Action\n </Button>\n <Button\n onClick={() => {\n const promise = new Promise((resolve) => {\n setTimeout(() => {\n resolve({name: 'Sonner'});\n }, 2000);\n });\n\n toast.promise(promise, {\n loading: 'Loading...',\n success: (data) => {\n return `${(data as {name: string}).name} toast has been added`;\n },\n error: 'Error',\n });\n }}\n >\n Promise Toast\n </Button>\n </div>\n {/* Custom Toasts */}\n <div className=\"flex flex-col gap-8 text-center\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n CUSTOM TOASTS\n </Code>\n <Button\n onClick={() => {\n toast.custom(\n (t) => (\n <ToastCustom\n variant=\"success\"\n title=\"Insert your alert title here\"\n description=\"Insert the alert description here. It would look better as two lines of text.\"\n actions={[\n {\n label: 'Upgrade',\n onClick: () => {\n toast('Upgrade clicked');\n toast.dismiss(t);\n },\n },\n {\n label: 'Learn more',\n onClick: () => {\n toast('Learn more clicked');\n toast.dismiss(t);\n },\n },\n ]}\n onClose={() => toast.dismiss(t)}\n />\n ),\n {\n duration: Infinity,\n },\n );\n }}\n >\n Custom Toast (Success - Full)\n </Button>\n <Button\n onClick={() => {\n toast.custom(\n (t) => (\n <ToastCustom\n variant=\"info\"\n title=\"Insert your alert title here\"\n description=\"Insert the alert description here. It would look better as two lines of text.\"\n actions={[\n {\n label: 'Upgrade',\n onClick: () => {\n toast('Upgrade clicked');\n toast.dismiss(t);\n },\n },\n {\n label: 'Learn more',\n onClick: () => {\n toast('Learn more clicked');\n toast.dismiss(t);\n },\n },\n ]}\n onClose={() => toast.dismiss(t)}\n />\n ),\n {\n duration: Infinity,\n },\n );\n }}\n >\n Custom Toast (Info - Full)\n </Button>\n <Button\n onClick={() => {\n toast.custom(\n (t) => (\n <ToastCustom\n variant=\"warning\"\n title=\"Insert your alert title here\"\n description=\"Insert the alert description here. It would look better as two lines of text.\"\n actions={[\n {\n label: 'Upgrade',\n onClick: () => {\n toast('Upgrade clicked');\n toast.dismiss(t);\n },\n },\n {\n label: 'Learn more',\n onClick: () => {\n toast('Learn more clicked');\n toast.dismiss(t);\n },\n },\n ]}\n onClose={() => toast.dismiss(t)}\n />\n ),\n {\n duration: Infinity,\n },\n );\n }}\n >\n Custom Toast (Warning - Full)\n </Button>\n <Button\n onClick={() => {\n toast.custom(\n (t) => (\n <ToastCustom\n variant=\"error\"\n title=\"Insert your alert title here\"\n description=\"Insert the alert description here. It would look better as two lines of text.\"\n actions={[\n {\n label: 'Upgrade',\n onClick: () => {\n toast('Upgrade clicked');\n toast.dismiss(t);\n },\n },\n {\n label: 'Learn more',\n onClick: () => {\n toast('Learn more clicked');\n toast.dismiss(t);\n },\n },\n ]}\n onClose={() => toast.dismiss(t)}\n />\n ),\n {\n duration: Infinity,\n },\n );\n }}\n >\n Custom Toast (Error - Full)\n </Button>\n <Button\n onClick={() => {\n toast.custom(\n (t) => (\n <ToastCustom\n variant=\"success\"\n content=\"Insert your alert content here\"\n actions={[\n {\n label: 'Learn more',\n onClick: () => {\n toast('Learn more clicked');\n toast.dismiss(t);\n },\n },\n ]}\n onClose={() => toast.dismiss(t)}\n />\n ),\n {\n duration: Infinity,\n },\n );\n }}\n >\n Custom Toast (Success - Simple)\n </Button>\n <Button\n onClick={() => {\n toast.custom(\n (t) => (\n <ToastCustom\n variant=\"info\"\n content=\"Insert your alert content here\"\n actions={[\n {\n label: 'Learn more',\n onClick: () => {\n toast('Learn more clicked');\n toast.dismiss(t);\n },\n },\n ]}\n onClose={() => toast.dismiss(t)}\n />\n ),\n {\n duration: Infinity,\n },\n );\n }}\n >\n Custom Toast (Info - Simple)\n </Button>\n <Button\n onClick={() => {\n toast.custom(\n (t) => (\n <ToastCustom\n variant=\"warning\"\n content=\"Insert your alert content here\"\n actions={[\n {\n label: 'Learn more',\n onClick: () => {\n toast('Learn more clicked');\n toast.dismiss(t);\n },\n },\n ]}\n onClose={() => toast.dismiss(t)}\n />\n ),\n {\n duration: Infinity,\n },\n );\n }}\n >\n Custom Toast (Warning - Simple)\n </Button>\n <Button\n onClick={() => {\n toast.custom(\n (t) => (\n <ToastCustom\n variant=\"error\"\n content=\"Insert your alert content here\"\n actions={[\n {\n label: 'Learn more',\n onClick: () => {\n toast('Learn more clicked');\n toast.dismiss(t);\n },\n },\n ]}\n onClose={() => toast.dismiss(t)}\n />\n ),\n {\n duration: Infinity,\n },\n );\n }}\n >\n Custom Toast (Error - Simple)\n </Button>\n </div>\n </div>\n </>\n ),\n ],\n} satisfies Meta<typeof Toaster>;\n\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nexport const Default: Story = {\n render: () => <Toaster position=\"top-center\" />,\n};\n"],"names":["Button","Code","Toaster","toast","ToastCustom","meta","title","component","tags","parameters","layout","decorators","Story","div","className","variant","onClick","success","error","warning","info","description","action","label","promise","Promise","resolve","setTimeout","name","loading","data","custom","t","actions","dismiss","onClose","duration","Infinity","content","Default","render","position"],"mappings":";AACA,SAAQA,MAAM,QAAO,2BAA2B;AAChD,SAAQC,IAAI,QAAO,wBAAwB;AAC3C,SAAQC,OAAO,EAAEC,KAAK,QAAO,UAAU;AACvC,SAAQC,WAAW,QAAO,iBAAiB;AAE3C,MAAMC,OAAO;IACXC,OAAO;IACPC,WAAWL;IACXM,MAAM;QAAC;KAAW;IAClBC,YAAY;QACVC,QAAQ;IACV;IACAC,YAAY;QACV,CAACC,sBACC;;kCACE,KAACA;kCACD,MAACC;wBAAIC,WAAU;;0CAEb,MAACD;gCAAIC,WAAU;;kDACb,KAACb;wCAAKc,SAAQ;wCAAQD,WAAU;kDAA6C;;kDAG7E,KAACd;wCACCgB,SAAS;4CACPb,MAAM;wCACR;kDACD;;kDAGD,KAACH;wCACCgB,SAAS;4CACPb,MAAMc,OAAO,CAAC;wCAChB;kDACD;;kDAGD,KAACjB;wCACCgB,SAAS;4CACPb,MAAMe,KAAK,CAAC;wCACd;kDACD;;kDAGD,KAAClB;wCACCgB,SAAS;4CACPb,MAAMgB,OAAO,CAAC;wCAChB;kDACD;;kDAGD,KAACnB;wCACCgB,SAAS;4CACPb,MAAMiB,IAAI,CAAC;wCACb;kDACD;;kDAGD,KAACpB;wCACCgB,SAAS;4CACPb,MAAM,0BAA0B;gDAC9BkB,aAAa;4CACf;wCACF;kDACD;;kDAGD,KAACrB;wCACCgB,SAAS;4CACPb,MAAM,0BAA0B;gDAC9BkB,aAAa;gDACbC,QAAQ;oDACNC,OAAO;oDACPP,SAAS;wDACPb,MAAM;oDACR;gDACF;4CACF;wCACF;kDACD;;kDAGD,KAACH;wCACCgB,SAAS;4CACP,MAAMQ,UAAU,IAAIC,QAAQ,CAACC;gDAC3BC,WAAW;oDACTD,QAAQ;wDAACE,MAAM;oDAAQ;gDACzB,GAAG;4CACL;4CAEAzB,MAAMqB,OAAO,CAACA,SAAS;gDACrBK,SAAS;gDACTZ,SAAS,CAACa;oDACR,OAAO,GAAG,AAACA,KAAwBF,IAAI,CAAC,qBAAqB,CAAC;gDAChE;gDACAV,OAAO;4CACT;wCACF;kDACD;;;;0CAKH,MAACL;gCAAIC,WAAU;;kDACb,KAACb;wCAAKc,SAAQ;wCAAQD,WAAU;kDAAiC;;kDAGjE,KAACd;wCACCgB,SAAS;4CACPb,MAAM4B,MAAM,CACV,CAACC,kBACC,KAAC5B;oDACCW,SAAQ;oDACRT,OAAM;oDACNe,aAAY;oDACZY,SAAS;wDACP;4DACEV,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;wDACA;4DACET,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;qDACD;oDACDG,SAAS,IAAMhC,MAAM+B,OAAO,CAACF;oDAGjC;gDACEI,UAAUC;4CACZ;wCAEJ;kDACD;;kDAGD,KAACrC;wCACCgB,SAAS;4CACPb,MAAM4B,MAAM,CACV,CAACC,kBACC,KAAC5B;oDACCW,SAAQ;oDACRT,OAAM;oDACNe,aAAY;oDACZY,SAAS;wDACP;4DACEV,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;wDACA;4DACET,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;qDACD;oDACDG,SAAS,IAAMhC,MAAM+B,OAAO,CAACF;oDAGjC;gDACEI,UAAUC;4CACZ;wCAEJ;kDACD;;kDAGD,KAACrC;wCACCgB,SAAS;4CACPb,MAAM4B,MAAM,CACV,CAACC,kBACC,KAAC5B;oDACCW,SAAQ;oDACRT,OAAM;oDACNe,aAAY;oDACZY,SAAS;wDACP;4DACEV,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;wDACA;4DACET,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;qDACD;oDACDG,SAAS,IAAMhC,MAAM+B,OAAO,CAACF;oDAGjC;gDACEI,UAAUC;4CACZ;wCAEJ;kDACD;;kDAGD,KAACrC;wCACCgB,SAAS;4CACPb,MAAM4B,MAAM,CACV,CAACC,kBACC,KAAC5B;oDACCW,SAAQ;oDACRT,OAAM;oDACNe,aAAY;oDACZY,SAAS;wDACP;4DACEV,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;wDACA;4DACET,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;qDACD;oDACDG,SAAS,IAAMhC,MAAM+B,OAAO,CAACF;oDAGjC;gDACEI,UAAUC;4CACZ;wCAEJ;kDACD;;kDAGD,KAACrC;wCACCgB,SAAS;4CACPb,MAAM4B,MAAM,CACV,CAACC,kBACC,KAAC5B;oDACCW,SAAQ;oDACRuB,SAAQ;oDACRL,SAAS;wDACP;4DACEV,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;qDACD;oDACDG,SAAS,IAAMhC,MAAM+B,OAAO,CAACF;oDAGjC;gDACEI,UAAUC;4CACZ;wCAEJ;kDACD;;kDAGD,KAACrC;wCACCgB,SAAS;4CACPb,MAAM4B,MAAM,CACV,CAACC,kBACC,KAAC5B;oDACCW,SAAQ;oDACRuB,SAAQ;oDACRL,SAAS;wDACP;4DACEV,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;qDACD;oDACDG,SAAS,IAAMhC,MAAM+B,OAAO,CAACF;oDAGjC;gDACEI,UAAUC;4CACZ;wCAEJ;kDACD;;kDAGD,KAACrC;wCACCgB,SAAS;4CACPb,MAAM4B,MAAM,CACV,CAACC,kBACC,KAAC5B;oDACCW,SAAQ;oDACRuB,SAAQ;oDACRL,SAAS;wDACP;4DACEV,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;qDACD;oDACDG,SAAS,IAAMhC,MAAM+B,OAAO,CAACF;oDAGjC;gDACEI,UAAUC;4CACZ;wCAEJ;kDACD;;kDAGD,KAACrC;wCACCgB,SAAS;4CACPb,MAAM4B,MAAM,CACV,CAACC,kBACC,KAAC5B;oDACCW,SAAQ;oDACRuB,SAAQ;oDACRL,SAAS;wDACP;4DACEV,OAAO;4DACPP,SAAS;gEACPb,MAAM;gEACNA,MAAM+B,OAAO,CAACF;4DAChB;wDACF;qDACD;oDACDG,SAAS,IAAMhC,MAAM+B,OAAO,CAACF;oDAGjC;gDACEI,UAAUC;4CACZ;wCAEJ;kDACD;;;;;;;;KAOV;AACH;AAEA,eAAehC,KAAK;AAIpB,OAAO,MAAMkC,UAAiB;IAC5BC,QAAQ,kBAAM,KAACtC;YAAQuC,UAAS;;AAClC,EAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/tooltip/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/tooltip/index.ts"],"sourcesContent":["export * from './tooltip';\n"],"names":[],"mappings":"AAAA,cAAc,YAAY"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAM,KAAK,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAS,KAAK,UAAU,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,OAAO,CAAC;AAG1C,QAAA,MAAM,sBAAsB;;;8EAoB3B,CAAC;AAEF,iBAAS,eAAe,CAAC,EACvB,aAAiB,EACjB,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,2CAQlD;AAED,iBAAS,OAAO,CAAC,EAAC,GAAG,KAAK,EAAC,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAMxE;AAED,iBAAS,cAAc,CAAC,EAAC,GAAG,KAAK,EAAC,EAAE,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,2CAElF;AAED,QAAA,MAAM,iBAAiB,EAAE,UAIxB,CAAC;AAEF,KAAK,mBAAmB,GAAG,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,GACxE,YAAY,CAAC,OAAO,sBAAsB,CAAC,GAAG;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,CAAC;AAEJ,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,UAAc,EACd,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,QAAe,EACf,UAA8B,EAC9B,GAAG,KAAK,EACT,EAAE,mBAAmB,2CAoCrB;AAED,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,iBAAiB,GAClB,CAAC;AACF,YAAY,EAAC,mBAAmB,EAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/tooltip/tooltip.tsx"],"sourcesContent":["import * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport {cva, type VariantProps} from 'class-variance-authority';\nimport {motion, type Transition} from 'framer-motion';\nimport type {ComponentProps} from 'react';\nimport {cn} from 'utils/cn';\n\nconst tooltipContentVariants = cva(\n 'rounded-8 px-8 py-4 text-xs font-medium leading-20 z-50 w-fit text-balance shadow-tooltip',\n {\n variants: {\n variant: {\n default: 'bg-background-components-base text-foreground-neutral-base',\n inverted: 'bg-background-button-inverted-default text-foreground-contrast-primary',\n muted: 'bg-background-neutral-subtle text-foreground-neutral-muted',\n },\n size: {\n sm: 'px-6 py-2 text-xs',\n md: 'px-8 py-4 text-xs',\n lg: 'px-10 py-6 text-sm',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'md',\n },\n },\n);\n\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: ComponentProps<typeof TooltipPrimitive.Provider>) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n );\n}\n\nfunction Tooltip({...props}: ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\nfunction TooltipTrigger({...props}: ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\nconst defaultTransition: Transition = {\n type: 'spring',\n stiffness: 300,\n damping: 17,\n};\n\ntype TooltipContentProps = ComponentProps<typeof TooltipPrimitive.Content> &\n VariantProps<typeof tooltipContentVariants> & {\n animated?: boolean;\n transition?: Transition;\n };\n\nfunction TooltipContent({\n className,\n sideOffset = 8,\n children,\n variant,\n size,\n animated = true,\n transition = defaultTransition,\n ...props\n}: TooltipContentProps) {\n if (animated) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n asChild\n {...props}\n >\n <motion.div\n className={cn(tooltipContentVariants({variant, size, className}))}\n initial={{opacity: 0, scale: 0.95}}\n animate={{opacity: 1, scale: 1}}\n exit={{opacity: 0, scale: 0.95}}\n transition={transition}\n >\n {children}\n </motion.div>\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n }\n\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(tooltipContentVariants({variant, size, className}))}\n {...props}\n >\n {children}\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport {\n Tooltip,\n TooltipTrigger,\n TooltipContent,\n TooltipProvider,\n tooltipContentVariants,\n defaultTransition,\n};\nexport type {TooltipContentProps};\n"],"names":["TooltipPrimitive","cva","motion","cn","tooltipContentVariants","variants","variant","default","inverted","muted","size","sm","md","lg","defaultVariants","TooltipProvider","delayDuration","props","Provider","data-slot","Tooltip","Root","TooltipTrigger","Trigger","defaultTransition","type","stiffness","damping","TooltipContent","className","sideOffset","children","animated","transition","Portal","Content","asChild","div","initial","opacity","scale","animate","exit"],"mappings":";AAAA,YAAYA,sBAAsB,0BAA0B;AAC5D,SAAQC,GAAG,QAA0B,2BAA2B;AAChE,SAAQC,MAAM,QAAwB,gBAAgB;AAEtD,SAAQC,EAAE,QAAO,WAAW;AAE5B,MAAMC,yBAAyBH,IAC7B,6FACA;IACEI,UAAU;QACRC,SAAS;YACPC,SAAS;YACTC,UAAU;YACVC,OAAO;QACT;QACAC,MAAM;YACJC,IAAI;YACJC,IAAI;YACJC,IAAI;QACN;IACF;IACAC,iBAAiB;QACfR,SAAS;QACTI,MAAM;IACR;AACF;AAGF,SAASK,gBAAgB,EACvBC,gBAAgB,CAAC,EACjB,GAAGC,OAC8C;IACjD,qBACE,KAACjB,iBAAiBkB,QAAQ;QACxBC,aAAU;QACVH,eAAeA;QACd,GAAGC,KAAK;;AAGf;AAEA,SAASG,QAAQ,EAAC,GAAGH,OAAoD;IACvE,qBACE,KAACF;kBACC,cAAA,KAACf,iBAAiBqB,IAAI;YAACF,aAAU;YAAW,GAAGF,KAAK;;;AAG1D;AAEA,SAASK,eAAe,EAAC,GAAGL,OAAuD;IACjF,qBAAO,KAACjB,iBAAiBuB,OAAO;QAACJ,aAAU;QAAmB,GAAGF,KAAK;;AACxE;AAEA,MAAMO,oBAAgC;IACpCC,MAAM;IACNC,WAAW;IACXC,SAAS;AACX;AAQA,SAASC,eAAe,EACtBC,SAAS,EACTC,aAAa,CAAC,EACdC,QAAQ,EACRzB,OAAO,EACPI,IAAI,EACJsB,WAAW,IAAI,EACfC,aAAaT,iBAAiB,EAC9B,GAAGP,OACiB;IACpB,IAAIe,UAAU;QACZ,qBACE,KAAChC,iBAAiBkC,MAAM;sBACtB,cAAA,KAAClC,iBAAiBmC,OAAO;gBACvBhB,aAAU;gBACVW,YAAYA;gBACZM,OAAO;gBACN,GAAGnB,KAAK;0BAET,cAAA,KAACf,OAAOmC,GAAG;oBACTR,WAAW1B,GAAGC,uBAAuB;wBAACE;wBAASI;wBAAMmB;oBAAS;oBAC9DS,SAAS;wBAACC,SAAS;wBAAGC,OAAO;oBAAI;oBACjCC,SAAS;wBAACF,SAAS;wBAAGC,OAAO;oBAAC;oBAC9BE,MAAM;wBAACH,SAAS;wBAAGC,OAAO;oBAAI;oBAC9BP,YAAYA;8BAEXF;;;;IAKX;IAEA,qBACE,KAAC/B,iBAAiBkC,MAAM;kBACtB,cAAA,KAAClC,iBAAiBmC,OAAO;YACvBhB,aAAU;YACVW,YAAYA;YACZD,WAAW1B,GAAGC,uBAAuB;gBAACE;gBAASI;gBAAMmB;YAAS;YAC7D,GAAGZ,KAAK;sBAERc;;;AAIT;AAEA,SACEX,OAAO,EACPE,cAAc,EACdM,cAAc,EACdb,eAAe,EACfX,sBAAsB,EACtBoB,iBAAiB,GACjB"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/tooltip/tooltip.stories.tsx"],"sourcesContent":["import type {Meta, StoryObj} from '@storybook/react';\nimport {Code} from 'components/typography';\nimport {Button} from '../button';\nimport {Tooltip, TooltipContent, type TooltipContentProps, TooltipTrigger} from './tooltip';\n\ntype TooltipStoryArgs = {\n defaultOpen?: boolean;\n delayDuration?: number;\n variant?: TooltipContentProps['variant'];\n size?: TooltipContentProps['size'];\n side?: TooltipContentProps['side'];\n align?: TooltipContentProps['align'];\n sideOffset?: TooltipContentProps['sideOffset'];\n animated?: TooltipContentProps['animated'];\n};\n\nconst meta = {\n title: 'Components/Tooltip',\n component: Tooltip,\n tags: ['autodocs'],\n argTypes: {\n defaultOpen: {control: 'boolean'},\n delayDuration: {control: 'number'},\n variant: {\n control: 'select',\n options: ['default', 'inverted', 'muted'],\n },\n size: {\n control: 'select',\n options: ['sm', 'md', 'lg'],\n },\n side: {\n control: 'select',\n options: ['top', 'bottom', 'left', 'right'],\n },\n align: {\n control: 'select',\n options: ['start', 'center', 'end'],\n },\n sideOffset: {control: 'number'},\n animated: {control: 'boolean'},\n },\n args: {\n defaultOpen: false,\n delayDuration: 0,\n variant: 'default',\n size: 'md',\n side: 'top',\n align: 'center',\n sideOffset: 8,\n animated: true,\n },\n} satisfies Meta<TooltipStoryArgs>;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nexport const Default: Story = {\n args: {\n defaultOpen: false,\n },\n\n render: (args: TooltipStoryArgs) => {\n const {defaultOpen, delayDuration, variant, size, side, align, sideOffset, animated} = args;\n return (\n <div className=\"flex items-center justify-center p-64\">\n <Tooltip defaultOpen={defaultOpen} delayDuration={delayDuration}>\n <TooltipTrigger asChild>\n <Button>Hover me</Button>\n </TooltipTrigger>\n <TooltipContent\n variant={variant}\n size={size}\n side={side}\n align={align}\n sideOffset={sideOffset}\n animated={animated}\n >\n Tooltip Text\n </TooltipContent>\n </Tooltip>\n </div>\n );\n },\n};\n\nexport const Types: Story = {\n render: () => (\n <div className=\"flex flex-col gap-64 p-64\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n TYPES\n </Code>\n <div className=\"flex flex-col gap-32\">\n {/* Text Type */}\n <div className=\"flex flex-col gap-16\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Type=Text\n </Code>\n <div className=\"flex gap-16\">\n <Tooltip>\n <TooltipTrigger asChild>\n <Button variant=\"primary\">Tooltip Text</Button>\n </TooltipTrigger>\n <TooltipContent variant=\"inverted\">Tooltip Text</TooltipContent>\n </Tooltip>\n <Tooltip>\n <TooltipTrigger asChild>\n <Button variant=\"secondary\">Tooltip Text</Button>\n </TooltipTrigger>\n <TooltipContent>Tooltip Text</TooltipContent>\n </Tooltip>\n </div>\n </div>\n\n {/* Shortcut Type */}\n <div className=\"flex flex-col gap-16\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Type=Shortcut\n </Code>\n <div className=\"flex gap-16\">\n <Tooltip>\n <TooltipTrigger asChild>\n <Button variant=\"primary\">Tooltip Text</Button>\n </TooltipTrigger>\n <TooltipContent variant=\"inverted\">\n <div className=\"flex items-center gap-6\">\n <span>Tooltip Text</span>\n <div className=\"flex items-center gap-4\">\n <kbd className=\"flex h-16 w-16 items-center justify-center rounded-4 border border-border-neutral-base bg-background-field-base text-sm text-foreground-neutral-subtle\">\n ⌘\n </kbd>\n <kbd className=\"flex h-16 w-16 items-center justify-center rounded-4 border border-border-neutral-base bg-background-field-base text-sm text-foreground-neutral-subtle\">\n /\n </kbd>\n </div>\n </div>\n </TooltipContent>\n </Tooltip>\n <Tooltip>\n <TooltipTrigger asChild>\n <Button variant=\"secondary\">Tooltip Text</Button>\n </TooltipTrigger>\n <TooltipContent>\n <div className=\"flex items-center gap-6\">\n <span>Tooltip Text</span>\n <div className=\"flex items-center gap-4\">\n <kbd className=\"flex h-16 w-16 items-center justify-center rounded-4 border border-border-neutral-base bg-background-field-base text-xs text-foreground-neutral-subtle\">\n ⌘\n </kbd>\n <kbd className=\"flex h-16 w-16 items-center justify-center rounded-4 border border-border-neutral-base bg-background-field-base text-xs text-foreground-neutral-subtle\">\n /\n </kbd>\n </div>\n </div>\n </TooltipContent>\n </Tooltip>\n </div>\n </div>\n\n {/* Graph Type */}\n <div className=\"flex flex-col gap-16\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Type=Graph\n </Code>\n <div className=\"flex gap-16\">\n <Tooltip>\n <TooltipTrigger asChild>\n <Button variant=\"primary\">Hover for graph data</Button>\n </TooltipTrigger>\n <TooltipContent variant=\"inverted\" className=\"w-160\">\n <div className=\"flex flex-col gap-4\">\n <div className=\"text-xs text-foreground-neutral-subtle\">Jul 22, 2025</div>\n <div className=\"flex flex-col gap-4\">\n <div className=\"flex items-center justify-between gap-12\">\n <div className=\"flex flex-1 items-center gap-4\">\n <div className=\"size-6 rounded-full bg-purple-500\" />\n <span className=\"text-xs\">Data A</span>\n </div>\n <span className=\"text-xs\">$6.14</span>\n </div>\n <div className=\"flex items-center justify-between gap-12\">\n <div className=\"flex flex-1 items-center gap-4\">\n <div className=\"size-6 rounded-full bg-green-500\" />\n <span className=\"text-xs\">Data B</span>\n </div>\n <span className=\"text-xs\">$4.37</span>\n </div>\n <div className=\"flex items-center justify-between gap-12\">\n <div className=\"flex flex-1 items-center gap-4\">\n <div className=\"size-6 rounded-full bg-orange-500\" />\n <span className=\"text-xs\">Data C</span>\n </div>\n <span className=\"text-xs\">$12.88</span>\n </div>\n <div className=\"flex items-center justify-between gap-12\">\n <div className=\"flex flex-1 items-center gap-4\">\n <div className=\"size-6 rounded-full bg-blue-500\" />\n <span className=\"text-xs\">Data D</span>\n </div>\n <span className=\"text-xs\">$2.91</span>\n </div>\n </div>\n </div>\n </TooltipContent>\n </Tooltip>\n <Tooltip>\n <TooltipTrigger asChild>\n <Button variant=\"secondary\">Hover for graph data</Button>\n </TooltipTrigger>\n <TooltipContent className=\"w-160\">\n <div className=\"flex flex-col gap-4\">\n <div className=\"text-xs text-foreground-neutral-subtle\">Jul 22, 2025</div>\n <div className=\"flex flex-col gap-4\">\n <div className=\"flex items-center justify-between gap-12\">\n <div className=\"flex flex-1 items-center gap-4\">\n <div className=\"size-6 rounded-full bg-purple-500\" />\n <span className=\"text-xs\">Data A</span>\n </div>\n <span className=\"text-xs\">$6.14</span>\n </div>\n <div className=\"flex items-center justify-between gap-12\">\n <div className=\"flex flex-1 items-center gap-4\">\n <div className=\"size-6 rounded-full bg-green-500\" />\n <span className=\"text-xs\">Data B</span>\n </div>\n <span className=\"text-xs\">$4.37</span>\n </div>\n <div className=\"flex items-center justify-between gap-12\">\n <div className=\"flex flex-1 items-center gap-4\">\n <div className=\"size-6 rounded-full bg-orange-500\" />\n <span className=\"text-xs\">Data C</span>\n </div>\n <span className=\"text-xs\">$12.88</span>\n </div>\n <div className=\"flex items-center justify-between gap-12\">\n <div className=\"flex flex-1 items-center gap-4\">\n <div className=\"size-6 rounded-full bg-blue-500\" />\n <span className=\"text-xs\">Data D</span>\n </div>\n <span className=\"text-xs\">$2.91</span>\n </div>\n </div>\n </div>\n </TooltipContent>\n </Tooltip>\n </div>\n </div>\n\n {/* Breadcrumbs Type */}\n <div className=\"flex flex-col gap-16\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n Type=Breadcrumbs\n </Code>\n <div className=\"flex gap-16\">\n <Tooltip>\n <TooltipTrigger asChild>\n <Button variant=\"primary\">Breadcrumb</Button>\n </TooltipTrigger>\n <TooltipContent variant=\"inverted\">\n <div className=\"flex items-center gap-6\">\n <span>Breadcrumb</span>\n <span className=\"text-foreground-neutral-muted\">/</span>\n <span>Breadcrumb</span>\n </div>\n </TooltipContent>\n </Tooltip>\n <Tooltip>\n <TooltipTrigger asChild>\n <Button variant=\"secondary\">Breadcrumb</Button>\n </TooltipTrigger>\n <TooltipContent>\n <div className=\"flex items-center gap-6\">\n <span>Breadcrumb</span>\n <span className=\"text-foreground-neutral-muted\">/</span>\n <span>Breadcrumb</span>\n </div>\n </TooltipContent>\n </Tooltip>\n </div>\n </div>\n </div>\n </div>\n ),\n};\n"],"names":["Code","Button","Tooltip","TooltipContent","TooltipTrigger","meta","title","component","tags","argTypes","defaultOpen","control","delayDuration","variant","options","size","side","align","sideOffset","animated","args","Default","render","div","className","asChild","Types","span","kbd"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../../src/components/typography/code.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAM,KAAK,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAC,WAAW,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAG1E,eAAO,MAAM,YAAY;;8EAUvB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC,GAC7E,YAAY,CAAC,OAAO,YAAY,CAAC,GAAG;IAClC,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEJ,wBAAgB,IAAI,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,KAAK,EAAC,EAAE,SAAS,2CAejF"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/typography/code.tsx"],"sourcesContent":["import {cva, type VariantProps} from 'class-variance-authority';\nimport type {ElementType, HTMLAttributes, PropsWithChildren} from 'react';\nimport {cn} from 'utils';\n\nexport const codeVariants = cva('', {\n variants: {\n variant: {\n label: 'text-xs',\n paragraph: 'text-sm',\n },\n },\n defaultVariants: {\n variant: 'paragraph',\n },\n});\n\nexport type CodeProps = PropsWithChildren<HTMLAttributes<HTMLParagraphElement>> &\n VariantProps<typeof codeVariants> & {\n as?: ElementType;\n bold?: boolean;\n };\n\nexport function Code({children, className, variant, as, bold, ...props}: CodeProps) {\n const Component = as ?? 'p';\n return (\n <Component\n className={cn(\n codeVariants({variant}),\n 'leading-20 font-code',\n {'font-bold': bold},\n className,\n )}\n {...props}\n >\n {children}\n </Component>\n );\n}\n"],"names":["cva","cn","codeVariants","variants","variant","label","paragraph","defaultVariants","Code","children","className","as","bold","props","Component"],"mappings":";AAAA,SAAQA,GAAG,QAA0B,2BAA2B;AAEhE,SAAQC,EAAE,QAAO,QAAQ;AAEzB,OAAO,MAAMC,eAAeF,IAAI,IAAI;IAClCG,UAAU;QACRC,SAAS;YACPC,OAAO;YACPC,WAAW;QACb;IACF;IACAC,iBAAiB;QACfH,SAAS;IACX;AACF,GAAG;AAQH,OAAO,SAASI,KAAK,EAACC,QAAQ,EAAEC,SAAS,EAAEN,OAAO,EAAEO,EAAE,EAAEC,IAAI,EAAE,GAAGC,OAAiB;IAChF,MAAMC,YAAYH,MAAM;IACxB,qBACE,KAACG;QACCJ,WAAWT,GACTC,aAAa;YAACE;QAAO,IACrB,wBACA;YAAC,aAAaQ;QAAI,GAClBF;QAED,GAAGG,KAAK;kBAERJ;;AAGP"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/typography/code.stories.tsx"],"sourcesContent":["import type {Meta, StoryObj} from '@storybook/react';\nimport {Code} from './code';\n\nconst meta: Meta = {\n title: 'Typography/Code',\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst variants = ['label', 'paragraph'] as const;\n\nexport const Default: Story = {\n render: () => (\n <div className=\"flex flex-col gap-16\">\n {variants.map((variant) => (\n <div key={variant} className=\"grid grid-cols-2 gap-8\">\n <div className=\"flex flex-col gap-4\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n {variant}\n </Code>\n <Code variant={variant}>The quick brown fox jumps over the lazy dog</Code>\n </div>\n <div className=\"flex flex-col gap-4\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n {variant} - Bold\n </Code>\n <Code variant={variant} bold>\n The quick brown fox jumps over the lazy dog\n </Code>\n </div>\n </div>\n ))}\n </div>\n ),\n};\n"],"names":["Code","meta","title","variants","Default","render","div","className","map","variant","bold"],"mappings":";AACA,SAAQA,IAAI,QAAO,SAAS;AAE5B,MAAMC,OAAa;IACjBC,OAAO;AACT;AACA,eAAeD,KAAK;AAIpB,MAAME,WAAW;IAAC;IAAS;CAAY;AAEvC,OAAO,MAAMC,UAAiB;IAC5BC,QAAQ,kBACN,KAACC;YAAIC,WAAU;sBACZJ,SAASK,GAAG,CAAC,CAACC,wBACb,MAACH;oBAAkBC,WAAU;;sCAC3B,MAACD;4BAAIC,WAAU;;8CACb,KAACP;oCAAKS,SAAQ;oCAAQF,WAAU;8CAC7BE;;8CAEH,KAACT;oCAAKS,SAASA;8CAAS;;;;sCAE1B,MAACH;4BAAIC,WAAU;;8CACb,MAACP;oCAAKS,SAAQ;oCAAQF,WAAU;;wCAC7BE;wCAAQ;;;8CAEX,KAACT;oCAAKS,SAASA;oCAASC,IAAI;8CAAC;;;;;mBAXvBD;;AAmBlB,EAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/components/typography/header.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAM,KAAK,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAC,WAAW,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAG1E,eAAO,MAAM,cAAc;;8EAYzB,CAAC;AASH,MAAM,MAAM,WAAW,GAAG,iBAAiB,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC,GAC/E,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,EAAE,CAAC,EAAE,WAAW,CAAC;CAClB,CAAC;AAEJ,wBAAgB,MAAM,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,KAAK,EAAC,EAAE,WAAW,2CAU/E"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/typography/header.tsx"],"sourcesContent":["import {cva, type VariantProps} from 'class-variance-authority';\nimport type {ElementType, HTMLAttributes, PropsWithChildren} from 'react';\nimport {cn} from 'utils';\n\nexport const headerVariants = cva('', {\n variants: {\n variant: {\n h1: 'text-3xl',\n h2: 'text-xl',\n h3: 'text-lg',\n h4: 'text-md',\n },\n },\n defaultVariants: {\n variant: 'h1',\n },\n});\n\nconst components = {\n h1: 'h1',\n h2: 'h2',\n h3: 'h3',\n h4: 'h4',\n} as const;\n\nexport type HeaderProps = PropsWithChildren<HTMLAttributes<HTMLParagraphElement>> &\n VariantProps<typeof headerVariants> & {\n as?: ElementType;\n };\n\nexport function Header({children, className, variant, as, ...props}: HeaderProps) {\n const Component = as ?? (variant ? components[variant] : 'h1');\n return (\n <Component\n className={cn(headerVariants({variant}), 'font-display font-medium', className)}\n {...props}\n >\n {children}\n </Component>\n );\n}\n"],"names":["cva","cn","headerVariants","variants","variant","h1","h2","h3","h4","defaultVariants","components","Header","children","className","as","props","Component"],"mappings":";AAAA,SAAQA,GAAG,QAA0B,2BAA2B;AAEhE,SAAQC,EAAE,QAAO,QAAQ;AAEzB,OAAO,MAAMC,iBAAiBF,IAAI,IAAI;IACpCG,UAAU;QACRC,SAAS;YACPC,IAAI;YACJC,IAAI;YACJC,IAAI;YACJC,IAAI;QACN;IACF;IACAC,iBAAiB;QACfL,SAAS;IACX;AACF,GAAG;AAEH,MAAMM,aAAa;IACjBL,IAAI;IACJC,IAAI;IACJC,IAAI;IACJC,IAAI;AACN;AAOA,OAAO,SAASG,OAAO,EAACC,QAAQ,EAAEC,SAAS,EAAET,OAAO,EAAEU,EAAE,EAAE,GAAGC,OAAmB;IAC9E,MAAMC,YAAYF,MAAOV,CAAAA,UAAUM,UAAU,CAACN,QAAQ,GAAG,IAAG;IAC5D,qBACE,KAACY;QACCH,WAAWZ,GAAGC,eAAe;YAACE;QAAO,IAAI,4BAA4BS;QACpE,GAAGE,KAAK;kBAERH;;AAGP"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/typography/header.stories.tsx"],"sourcesContent":["import type {Meta, StoryObj} from '@storybook/react';\nimport {Code} from './code';\nimport {Header} from './header';\n\nconst meta: Meta = {\n title: 'Typography/Header',\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst variants = ['h1', 'h2', 'h3', 'h4'] as const;\n\nexport const Default: Story = {\n render: () => (\n <div className=\"flex flex-col gap-16\">\n {variants.map((variant) => (\n <div key={variant} className=\"flex flex-col gap-4\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n {variant}\n </Code>\n <Header variant={variant}>The quick brown fox jumps over the lazy dog</Header>\n </div>\n ))}\n </div>\n ),\n};\n"],"names":["Code","Header","meta","title","variants","Default","render","div","className","map","variant"],"mappings":";AACA,SAAQA,IAAI,QAAO,SAAS;AAC5B,SAAQC,MAAM,QAAO,WAAW;AAEhC,MAAMC,OAAa;IACjBC,OAAO;AACT;AACA,eAAeD,KAAK;AAIpB,MAAME,WAAW;IAAC;IAAM;IAAM;IAAM;CAAK;AAEzC,OAAO,MAAMC,UAAiB;IAC5BC,QAAQ,kBACN,KAACC;YAAIC,WAAU;sBACZJ,SAASK,GAAG,CAAC,CAACC,wBACb,MAACH;oBAAkBC,WAAU;;sCAC3B,KAACR;4BAAKU,SAAQ;4BAAQF,WAAU;sCAC7BE;;sCAEH,KAACT;4BAAOS,SAASA;sCAAS;;;mBAJlBA;;AASlB,EAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/typography/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/typography/index.ts"],"sourcesContent":["export * from './code';\nexport * from './header';\nexport * from './text';\n"],"names":[],"mappings":"AAAA,cAAc,SAAS;AACvB,cAAc,WAAW;AACzB,cAAc,SAAS"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/components/typography/text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAM,KAAK,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAC,WAAW,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAG1E,eAAO,MAAM,YAAY;;8EAavB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC,GAC7E,YAAY,CAAC,OAAO,YAAY,CAAC,GAAG;IAClC,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEJ,wBAAgB,IAAI,CAAC,EACnB,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,EAAE,EACF,OAAc,EACd,IAAY,EACZ,GAAG,KAAK,EACT,EAAE,SAAS,2CAeX"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/typography/text.tsx"],"sourcesContent":["import {cva, type VariantProps} from 'class-variance-authority';\nimport type {ElementType, HTMLAttributes, PropsWithChildren} from 'react';\nimport {cn} from 'utils';\n\nexport const textVariants = cva('', {\n variants: {\n size: {\n xs: 'text-xs',\n sm: 'text-sm',\n md: 'text-md',\n lg: 'text-lg',\n xl: 'text-xl',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n});\n\nexport type TextProps = PropsWithChildren<HTMLAttributes<HTMLParagraphElement>> &\n VariantProps<typeof textVariants> & {\n as?: ElementType;\n compact?: boolean;\n bold?: boolean;\n };\n\nexport function Text({\n children,\n className,\n size,\n as,\n compact = true,\n bold = false,\n ...props\n}: TextProps) {\n const Component = as ?? 'p';\n return (\n <Component\n className={cn(\n textVariants({size}),\n 'font-display',\n {'leading-20': compact, 'font-medium': bold},\n className,\n )}\n {...props}\n >\n {children}\n </Component>\n );\n}\n"],"names":["cva","cn","textVariants","variants","size","xs","sm","md","lg","xl","defaultVariants","Text","children","className","as","compact","bold","props","Component"],"mappings":";AAAA,SAAQA,GAAG,QAA0B,2BAA2B;AAEhE,SAAQC,EAAE,QAAO,QAAQ;AAEzB,OAAO,MAAMC,eAAeF,IAAI,IAAI;IAClCG,UAAU;QACRC,MAAM;YACJC,IAAI;YACJC,IAAI;YACJC,IAAI;YACJC,IAAI;YACJC,IAAI;QACN;IACF;IACAC,iBAAiB;QACfN,MAAM;IACR;AACF,GAAG;AASH,OAAO,SAASO,KAAK,EACnBC,QAAQ,EACRC,SAAS,EACTT,IAAI,EACJU,EAAE,EACFC,UAAU,IAAI,EACdC,OAAO,KAAK,EACZ,GAAGC,OACO;IACV,MAAMC,YAAYJ,MAAM;IACxB,qBACE,KAACI;QACCL,WAAWZ,GACTC,aAAa;YAACE;QAAI,IAClB,gBACA;YAAC,cAAcW;YAAS,eAAeC;QAAI,GAC3CH;QAED,GAAGI,KAAK;kBAERL;;AAGP"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/typography/text.stories.tsx"],"sourcesContent":["import type {Meta, StoryObj} from '@storybook/react';\nimport {Code} from './code';\nimport {Text} from './text';\n\nconst meta: Meta = {\n title: 'Typography/Text',\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst sizes = ['xs', 'sm', 'md', 'lg', 'xl'] as const;\n\nexport const Default: Story = {\n render: () => (\n <div className=\"flex flex-col gap-16\">\n {sizes.map((size) => (\n <div key={size} className=\"grid grid-cols-2 gap-8\">\n <div className=\"flex flex-col gap-4\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n {size}\n </Code>\n <Text size={size}>The quick brown fox jumps over the lazy dog</Text>\n </div>\n <div className=\"flex flex-col gap-4\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n {size} - Bold\n </Code>\n <Text size={size} bold>\n The quick brown fox jumps over the lazy dog\n </Text>\n </div>\n </div>\n ))}\n </div>\n ),\n};\n\nconst textParagraph =\n 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.';\n\nexport const Paragraph: Story = {\n render: () => (\n <div className=\"flex flex-col gap-16\">\n {sizes.map((size) => (\n <div key={size} className=\"grid grid-cols-2 gap-8\">\n <div className=\"flex flex-col gap-4\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n {size} - Regular\n </Code>\n <Text size={size} compact={false}>\n {textParagraph}\n </Text>\n </div>\n <div className=\"flex flex-col gap-4\">\n <Code variant=\"label\" className=\"text-foreground-neutral-subtle\">\n {size} - Compact\n </Code>\n <Text size={size} compact={true}>\n {textParagraph}\n </Text>\n </div>\n </div>\n ))}\n </div>\n ),\n};\n"],"names":["Code","Text","meta","title","sizes","Default","render","div","className","map","size","variant","bold","textParagraph","Paragraph","compact"],"mappings":";AACA,SAAQA,IAAI,QAAO,SAAS;AAC5B,SAAQC,IAAI,QAAO,SAAS;AAE5B,MAAMC,OAAa;IACjBC,OAAO;AACT;AACA,eAAeD,KAAK;AAIpB,MAAME,QAAQ;IAAC;IAAM;IAAM;IAAM;IAAM;CAAK;AAE5C,OAAO,MAAMC,UAAiB;IAC5BC,QAAQ,kBACN,KAACC;YAAIC,WAAU;sBACZJ,MAAMK,GAAG,CAAC,CAACC,qBACV,MAACH;oBAAeC,WAAU;;sCACxB,MAACD;4BAAIC,WAAU;;8CACb,KAACR;oCAAKW,SAAQ;oCAAQH,WAAU;8CAC7BE;;8CAEH,KAACT;oCAAKS,MAAMA;8CAAM;;;;sCAEpB,MAACH;4BAAIC,WAAU;;8CACb,MAACR;oCAAKW,SAAQ;oCAAQH,WAAU;;wCAC7BE;wCAAK;;;8CAER,KAACT;oCAAKS,MAAMA;oCAAME,IAAI;8CAAC;;;;;mBAXjBF;;AAmBlB,EAAE;AAEF,MAAMG,gBACJ;AAEF,OAAO,MAAMC,YAAmB;IAC9BR,QAAQ,kBACN,KAACC;YAAIC,WAAU;sBACZJ,MAAMK,GAAG,CAAC,CAACC,qBACV,MAACH;oBAAeC,WAAU;;sCACxB,MAACD;4BAAIC,WAAU;;8CACb,MAACR;oCAAKW,SAAQ;oCAAQH,WAAU;;wCAC7BE;wCAAK;;;8CAER,KAACT;oCAAKS,MAAMA;oCAAMK,SAAS;8CACxBF;;;;sCAGL,MAACN;4BAAIC,WAAU;;8CACb,MAACR;oCAAKW,SAAQ;oCAAQH,WAAU;;wCAC7BE;wCAAK;;;8CAER,KAACT;oCAAKS,MAAMA;oCAAMK,SAAS;8CACxBF;;;;;mBAdGH;;AAqBlB,EAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/index.ts"],"sourcesContent":["export * from './useCopyToClipboard';\nexport * from './useMediaQuery';\nexport * from './useResolvedTheme';\nexport * from './useShikiHighlight';\nexport * from './useShikiStyleInjection';\nexport * from './useTheme';\n"],"names":[],"mappings":"AAAA,cAAc,uBAAuB;AACrC,cAAc,kBAAkB;AAChC,cAAc,qBAAqB;AACnC,cAAc,sBAAsB;AACpC,cAAc,2BAA2B;AACzC,cAAc,aAAa"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCopy.d.ts","sourceRoot":"","sources":["../../src/hooks/useCopy.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useCopy.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCopyToClipboard.d.ts","sourceRoot":"","sources":["../../src/hooks/useCopyToClipboard.ts"],"names":[],"mappings":"AAGA,UAAU,wBAAwB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC;AAED,wBAAgB,kBAAkB,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,EAAE,wBAAwB;;;EAW1E"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useCopyToClipboard.ts"],"sourcesContent":["import {useState} from 'react';\nimport {copyTextToClipboard} from 'utils';\n\ninterface UseCopyToClipboardParams {\n text: string;\n onCopy?: (text: string) => void;\n}\n\nexport function useCopyToClipboard({text, onCopy}: UseCopyToClipboardParams) {\n const [copied, setCopied] = useState(false);\n\n const copy = async () => {\n await copyTextToClipboard(text);\n\n if (onCopy) onCopy(text);\n setCopied(true);\n };\n\n return {copy, copied};\n}\n"],"names":["useState","copyTextToClipboard","useCopyToClipboard","text","onCopy","copied","setCopied","copy"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,QAAQ;AAC/B,SAAQC,mBAAmB,QAAO,QAAQ;AAO1C,OAAO,SAASC,mBAAmB,EAACC,IAAI,EAAEC,MAAM,EAA2B;IACzE,MAAM,CAACC,QAAQC,UAAU,GAAGN,SAAS;IAErC,MAAMO,OAAO;QACX,MAAMN,oBAAoBE;QAE1B,IAAIC,QAAQA,OAAOD;QACnBG,UAAU;IACZ;IAEA,OAAO;QAACC;QAAMF;IAAM;AACtB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useMediaQuery.d.ts","sourceRoot":"","sources":["../../src/hooks/useMediaQuery.ts"],"names":[],"mappings":"AAsEA,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAgBpD"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useMediaQuery.ts"],"sourcesContent":["import {useEffect, useState} from 'react';\n\nclass MediaQueryManager {\n private queries = new Map<string, MediaQueryList>();\n private listeners = new Map<string, Set<() => void>>();\n private changeHandlers = new Map<string, () => void>();\n\n getMatches(query: string): boolean {\n if (typeof window === 'undefined') return false;\n\n if (!this.queries.has(query)) {\n this.queries.set(query, window.matchMedia(query));\n this.listeners.set(query, new Set());\n }\n\n const mediaQuery = this.queries.get(query);\n return mediaQuery ? mediaQuery.matches : false;\n }\n\n subscribe(query: string, callback: () => void): () => void {\n if (typeof window === 'undefined') {\n return () => {\n // Cleanup function for SSR - no-op\n };\n }\n\n if (!this.queries.has(query)) {\n this.queries.set(query, window.matchMedia(query));\n this.listeners.set(query, new Set());\n }\n\n const mediaQuery = this.queries.get(query);\n const listeners = this.listeners.get(query);\n\n if (!mediaQuery || !listeners) {\n return () => {\n // Cleanup function - no-op if query wasn't found\n };\n }\n\n listeners.add(callback);\n\n if (listeners.size === 1) {\n const changeHandler = () => {\n for (const cb of listeners) {\n cb();\n }\n };\n this.changeHandlers.set(query, changeHandler);\n mediaQuery.addEventListener('change', changeHandler);\n }\n\n return () => {\n listeners.delete(callback);\n\n if (listeners.size === 0) {\n const changeHandler = this.changeHandlers.get(query);\n if (changeHandler) {\n mediaQuery.removeEventListener('change', changeHandler);\n this.changeHandlers.delete(query);\n }\n this.queries.delete(query);\n this.listeners.delete(query);\n }\n };\n }\n}\n\nconst mediaQueryManager = new MediaQueryManager();\n\nexport function useMediaQuery(query: string): boolean {\n const [matches, setMatches] = useState(() => mediaQueryManager.getMatches(query));\n\n useEffect(() => {\n const updateMatches = () => {\n setMatches(mediaQueryManager.getMatches(query));\n };\n\n const unsubscribe = mediaQueryManager.subscribe(query, updateMatches);\n\n updateMatches();\n\n return unsubscribe;\n }, [query]);\n\n return matches;\n}\n"],"names":["useEffect","useState","MediaQueryManager","getMatches","query","window","queries","has","set","matchMedia","listeners","Set","mediaQuery","get","matches","subscribe","callback","add","size","changeHandler","cb","changeHandlers","addEventListener","delete","removeEventListener","Map","mediaQueryManager","useMediaQuery","setMatches","updateMatches","unsubscribe"],"mappings":"AAAA,SAAQA,SAAS,EAAEC,QAAQ,QAAO,QAAQ;AAE1C,IAAA,AAAMC,oBAAN,MAAMA;IAKJC,WAAWC,KAAa,EAAW;QACjC,IAAI,OAAOC,WAAW,aAAa,OAAO;QAE1C,IAAI,CAAC,IAAI,CAACC,OAAO,CAACC,GAAG,CAACH,QAAQ;YAC5B,IAAI,CAACE,OAAO,CAACE,GAAG,CAACJ,OAAOC,OAAOI,UAAU,CAACL;YAC1C,IAAI,CAACM,SAAS,CAACF,GAAG,CAACJ,OAAO,IAAIO;QAChC;QAEA,MAAMC,aAAa,IAAI,CAACN,OAAO,CAACO,GAAG,CAACT;QACpC,OAAOQ,aAAaA,WAAWE,OAAO,GAAG;IAC3C;IAEAC,UAAUX,KAAa,EAAEY,QAAoB,EAAc;QACzD,IAAI,OAAOX,WAAW,aAAa;YACjC,OAAO;YACL,mCAAmC;YACrC;QACF;QAEA,IAAI,CAAC,IAAI,CAACC,OAAO,CAACC,GAAG,CAACH,QAAQ;YAC5B,IAAI,CAACE,OAAO,CAACE,GAAG,CAACJ,OAAOC,OAAOI,UAAU,CAACL;YAC1C,IAAI,CAACM,SAAS,CAACF,GAAG,CAACJ,OAAO,IAAIO;QAChC;QAEA,MAAMC,aAAa,IAAI,CAACN,OAAO,CAACO,GAAG,CAACT;QACpC,MAAMM,YAAY,IAAI,CAACA,SAAS,CAACG,GAAG,CAACT;QAErC,IAAI,CAACQ,cAAc,CAACF,WAAW;YAC7B,OAAO;YACL,iDAAiD;YACnD;QACF;QAEAA,UAAUO,GAAG,CAACD;QAEd,IAAIN,UAAUQ,IAAI,KAAK,GAAG;YACxB,MAAMC,gBAAgB;gBACpB,KAAK,MAAMC,MAAMV,UAAW;oBAC1BU;gBACF;YACF;YACA,IAAI,CAACC,cAAc,CAACb,GAAG,CAACJ,OAAOe;YAC/BP,WAAWU,gBAAgB,CAAC,UAAUH;QACxC;QAEA,OAAO;YACLT,UAAUa,MAAM,CAACP;YAEjB,IAAIN,UAAUQ,IAAI,KAAK,GAAG;gBACxB,MAAMC,gBAAgB,IAAI,CAACE,cAAc,CAACR,GAAG,CAACT;gBAC9C,IAAIe,eAAe;oBACjBP,WAAWY,mBAAmB,CAAC,UAAUL;oBACzC,IAAI,CAACE,cAAc,CAACE,MAAM,CAACnB;gBAC7B;gBACA,IAAI,CAACE,OAAO,CAACiB,MAAM,CAACnB;gBACpB,IAAI,CAACM,SAAS,CAACa,MAAM,CAACnB;YACxB;QACF;IACF;;aA9DQE,UAAU,IAAImB;aACdf,YAAY,IAAIe;aAChBJ,iBAAiB,IAAII;;AA6D/B;AAEA,MAAMC,oBAAoB,IAAIxB;AAE9B,OAAO,SAASyB,cAAcvB,KAAa;IACzC,MAAM,CAACU,SAASc,WAAW,GAAG3B,SAAS,IAAMyB,kBAAkBvB,UAAU,CAACC;IAE1EJ,UAAU;QACR,MAAM6B,gBAAgB;YACpBD,WAAWF,kBAAkBvB,UAAU,CAACC;QAC1C;QAEA,MAAM0B,cAAcJ,kBAAkBX,SAAS,CAACX,OAAOyB;QAEvDA;QAEA,OAAOC;IACT,GAAG;QAAC1B;KAAM;IAEV,OAAOU;AACT"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useResolvedTheme.d.ts","sourceRoot":"","sources":["../../src/hooks/useResolvedTheme.ts"],"names":[],"mappings":"AAGA,wBAAgB,gBAAgB,IAAI,OAAO,GAAG,MAAM,CA8BnD"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useResolvedTheme.ts"],"sourcesContent":["import {useSyncExternalStore} from 'react';\nimport {useTheme} from './useTheme';\n\nexport function useResolvedTheme(): 'light' | 'dark' {\n const {theme} = useTheme();\n\n const systemTheme = useSyncExternalStore<'light' | 'dark'>(\n (callback) => {\n if (typeof window === 'undefined' || theme !== 'system') {\n return () => {\n // No-op unsubscribe\n };\n }\n const mql = window.matchMedia('(prefers-color-scheme: dark)');\n mql.addEventListener('change', callback);\n return () => {\n mql.removeEventListener('change', callback);\n };\n },\n (): 'light' | 'dark' =>\n typeof window !== 'undefined' && theme === 'system'\n ? window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light'\n : 'light',\n (): 'light' | 'dark' => 'light', // Server snapshot\n );\n\n if (theme === 'system') {\n return systemTheme;\n }\n // TypeScript should narrow theme to 'light' | 'dark' here\n return theme as 'light' | 'dark';\n}\n"],"names":["useSyncExternalStore","useTheme","useResolvedTheme","theme","systemTheme","callback","window","mql","matchMedia","addEventListener","removeEventListener","matches"],"mappings":"AAAA,SAAQA,oBAAoB,QAAO,QAAQ;AAC3C,SAAQC,QAAQ,QAAO,aAAa;AAEpC,OAAO,SAASC;IACd,MAAM,EAACC,KAAK,EAAC,GAAGF;IAEhB,MAAMG,cAAcJ,qBAClB,CAACK;QACC,IAAI,OAAOC,WAAW,eAAeH,UAAU,UAAU;YACvD,OAAO;YACL,oBAAoB;YACtB;QACF;QACA,MAAMI,MAAMD,OAAOE,UAAU,CAAC;QAC9BD,IAAIE,gBAAgB,CAAC,UAAUJ;QAC/B,OAAO;YACLE,IAAIG,mBAAmB,CAAC,UAAUL;QACpC;IACF,GACA,IACE,OAAOC,WAAW,eAAeH,UAAU,WACvCG,OAAOE,UAAU,CAAC,gCAAgCG,OAAO,GACvD,SACA,UACF,SACN,IAAwB;IAG1B,IAAIR,UAAU,UAAU;QACtB,OAAOC;IACT;IACA,0DAA0D;IAC1D,OAAOD;AACT"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useShikiHighlight.d.ts","sourceRoot":"","sources":["../../src/hooks/useShikiHighlight.ts"],"names":[],"mappings":"AAEA,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB,aAAa,EAAE,OAAO,GAAG,MAAM,CAAC;IAChC,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,aAAa,EACb,kBAAkB,GACnB,EAAE,wBAAwB,GAAG;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC,CA6C1E;AAED,KAAK,gCAAgC,GAAG;IACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB,aAAa,EAAE,OAAO,GAAG,MAAM,CAAC;IAChC,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,EACxC,KAAK,EACL,IAAI,EACJ,MAAM,EACN,aAAa,EACb,kBAAkB,GACnB,EAAE,gCAAgC,GAAG;IACpC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,SAAS,EAAE,OAAO,CAAC;CACpB,CAsDA"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useShikiHighlight.ts"],"sourcesContent":["import {useEffect, useState} from 'react';\n\ntype ShikiThemes = {\n light: string;\n dark: string;\n};\n\ntype UseShikiHighlightOptions = {\n code: string;\n lang: string;\n themes: ShikiThemes;\n resolvedTheme: 'light' | 'dark';\n syntaxHighlighting: boolean;\n};\n\nexport function useShikiHighlight({\n code,\n lang,\n themes,\n resolvedTheme,\n syntaxHighlighting,\n}: UseShikiHighlightOptions): {highlightedCode: string; isLoading: boolean} {\n const [highlightedCode, setHighlightedCode] = useState<string>('');\n const [isLoading, setIsLoading] = useState(syntaxHighlighting);\n\n useEffect(() => {\n if (!syntaxHighlighting) {\n setIsLoading(false);\n return;\n }\n\n setIsLoading(true);\n let cancelled = false;\n\n const loadHighlightedCode = async () => {\n try {\n const {codeToHtml} = await import('shiki');\n\n const html = await codeToHtml(code, {\n lang,\n themes: {\n light: themes.light,\n dark: themes.dark,\n },\n defaultColor: resolvedTheme === 'dark' ? 'dark' : 'light',\n });\n\n if (!cancelled) {\n setHighlightedCode(html);\n setIsLoading(false);\n }\n } catch {\n if (!cancelled) {\n setIsLoading(false);\n }\n }\n };\n\n loadHighlightedCode();\n\n return () => {\n cancelled = true;\n };\n }, [code, lang, themes.light, themes.dark, resolvedTheme, syntaxHighlighting]);\n\n return {highlightedCode, isLoading};\n}\n\ntype UseShikiHighlightMultipleOptions = {\n codes: Record<string, string>;\n lang: string;\n themes: ShikiThemes;\n resolvedTheme: 'light' | 'dark';\n syntaxHighlighting: boolean;\n};\n\nexport function useShikiHighlightMultiple({\n codes,\n lang,\n themes,\n resolvedTheme,\n syntaxHighlighting,\n}: UseShikiHighlightMultipleOptions): {\n highlightedCodes: Record<string, string>;\n isLoading: boolean;\n} {\n const [highlightedCodes, setHighlightedCodes] = useState<Record<string, string>>({});\n const [isLoading, setIsLoading] = useState(syntaxHighlighting);\n\n useEffect(() => {\n if (!syntaxHighlighting) {\n setIsLoading(false);\n return;\n }\n\n setIsLoading(true);\n let cancelled = false;\n\n const loadHighlightedCode = async () => {\n try {\n const {codeToHtml} = await import('shiki');\n const newHighlightedCodes: Record<string, string> = {};\n\n for (const [command, val] of Object.entries(codes)) {\n if (cancelled) {\n return;\n }\n\n const highlighted = await codeToHtml(val, {\n lang,\n themes: {\n light: themes.light,\n dark: themes.dark,\n },\n defaultColor: resolvedTheme === 'dark' ? 'dark' : 'light',\n });\n\n newHighlightedCodes[command] = highlighted;\n }\n\n if (!cancelled) {\n setHighlightedCodes(newHighlightedCodes);\n setIsLoading(false);\n }\n } catch {\n if (!cancelled) {\n setIsLoading(false);\n }\n }\n };\n\n loadHighlightedCode();\n\n return () => {\n cancelled = true;\n };\n }, [resolvedTheme, lang, themes.light, themes.dark, codes, syntaxHighlighting]);\n\n return {highlightedCodes, isLoading};\n}\n"],"names":["useEffect","useState","useShikiHighlight","code","lang","themes","resolvedTheme","syntaxHighlighting","highlightedCode","setHighlightedCode","isLoading","setIsLoading","cancelled","loadHighlightedCode","codeToHtml","html","light","dark","defaultColor","useShikiHighlightMultiple","codes","highlightedCodes","setHighlightedCodes","newHighlightedCodes","command","val","Object","entries","highlighted"],"mappings":"AAAA,SAAQA,SAAS,EAAEC,QAAQ,QAAO,QAAQ;AAe1C,OAAO,SAASC,kBAAkB,EAChCC,IAAI,EACJC,IAAI,EACJC,MAAM,EACNC,aAAa,EACbC,kBAAkB,EACO;IACzB,MAAM,CAACC,iBAAiBC,mBAAmB,GAAGR,SAAiB;IAC/D,MAAM,CAACS,WAAWC,aAAa,GAAGV,SAASM;IAE3CP,UAAU;QACR,IAAI,CAACO,oBAAoB;YACvBI,aAAa;YACb;QACF;QAEAA,aAAa;QACb,IAAIC,YAAY;QAEhB,MAAMC,sBAAsB;YAC1B,IAAI;gBACF,MAAM,EAACC,UAAU,EAAC,GAAG,MAAM,MAAM,CAAC;gBAElC,MAAMC,OAAO,MAAMD,WAAWX,MAAM;oBAClCC;oBACAC,QAAQ;wBACNW,OAAOX,OAAOW,KAAK;wBACnBC,MAAMZ,OAAOY,IAAI;oBACnB;oBACAC,cAAcZ,kBAAkB,SAAS,SAAS;gBACpD;gBAEA,IAAI,CAACM,WAAW;oBACdH,mBAAmBM;oBACnBJ,aAAa;gBACf;YACF,EAAE,OAAM;gBACN,IAAI,CAACC,WAAW;oBACdD,aAAa;gBACf;YACF;QACF;QAEAE;QAEA,OAAO;YACLD,YAAY;QACd;IACF,GAAG;QAACT;QAAMC;QAAMC,OAAOW,KAAK;QAAEX,OAAOY,IAAI;QAAEX;QAAeC;KAAmB;IAE7E,OAAO;QAACC;QAAiBE;IAAS;AACpC;AAUA,OAAO,SAASS,0BAA0B,EACxCC,KAAK,EACLhB,IAAI,EACJC,MAAM,EACNC,aAAa,EACbC,kBAAkB,EACe;IAIjC,MAAM,CAACc,kBAAkBC,oBAAoB,GAAGrB,SAAiC,CAAC;IAClF,MAAM,CAACS,WAAWC,aAAa,GAAGV,SAASM;IAE3CP,UAAU;QACR,IAAI,CAACO,oBAAoB;YACvBI,aAAa;YACb;QACF;QAEAA,aAAa;QACb,IAAIC,YAAY;QAEhB,MAAMC,sBAAsB;YAC1B,IAAI;gBACF,MAAM,EAACC,UAAU,EAAC,GAAG,MAAM,MAAM,CAAC;gBAClC,MAAMS,sBAA8C,CAAC;gBAErD,KAAK,MAAM,CAACC,SAASC,IAAI,IAAIC,OAAOC,OAAO,CAACP,OAAQ;oBAClD,IAAIR,WAAW;wBACb;oBACF;oBAEA,MAAMgB,cAAc,MAAMd,WAAWW,KAAK;wBACxCrB;wBACAC,QAAQ;4BACNW,OAAOX,OAAOW,KAAK;4BACnBC,MAAMZ,OAAOY,IAAI;wBACnB;wBACAC,cAAcZ,kBAAkB,SAAS,SAAS;oBACpD;oBAEAiB,mBAAmB,CAACC,QAAQ,GAAGI;gBACjC;gBAEA,IAAI,CAAChB,WAAW;oBACdU,oBAAoBC;oBACpBZ,aAAa;gBACf;YACF,EAAE,OAAM;gBACN,IAAI,CAACC,WAAW;oBACdD,aAAa;gBACf;YACF;QACF;QAEAE;QAEA,OAAO;YACLD,YAAY;QACd;IACF,GAAG;QAACN;QAAeF;QAAMC,OAAOW,KAAK;QAAEX,OAAOY,IAAI;QAAEG;QAAOb;KAAmB;IAE9E,OAAO;QAACc;QAAkBX;IAAS;AACrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useShikiStyleInjection.d.ts","sourceRoot":"","sources":["../../src/hooks/useShikiStyleInjection.ts"],"names":[],"mappings":"AAEA,wBAAgB,sBAAsB,CAAC,kBAAkB,EAAE,OAAO,GAAG,IAAI,CA+BxE"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useShikiStyleInjection.ts"],"sourcesContent":["import {useEffect} from 'react';\n\nexport function useShikiStyleInjection(syntaxHighlighting: boolean): void {\n useEffect(() => {\n if (!syntaxHighlighting) {\n return;\n }\n\n const styleId = 'shiki-override-styles';\n if (document.getElementById(styleId)) {\n return;\n }\n\n const style = document.createElement('style');\n style.id = styleId;\n style.textContent = `\n .shiki-override pre,\n .shiki-override code,\n .shiki-override pre *,\n .shiki-override code * {\n background: transparent !important;\n font-family: \"Commit Mono\", monospace !important;\n }\n `;\n document.head.appendChild(style);\n\n return () => {\n const existingStyle = document.getElementById(styleId);\n if (existingStyle) {\n existingStyle.remove();\n }\n };\n }, [syntaxHighlighting]);\n}\n"],"names":["useEffect","useShikiStyleInjection","syntaxHighlighting","styleId","document","getElementById","style","createElement","id","textContent","head","appendChild","existingStyle","remove"],"mappings":"AAAA,SAAQA,SAAS,QAAO,QAAQ;AAEhC,OAAO,SAASC,uBAAuBC,kBAA2B;IAChEF,UAAU;QACR,IAAI,CAACE,oBAAoB;YACvB;QACF;QAEA,MAAMC,UAAU;QAChB,IAAIC,SAASC,cAAc,CAACF,UAAU;YACpC;QACF;QAEA,MAAMG,QAAQF,SAASG,aAAa,CAAC;QACrCD,MAAME,EAAE,GAAGL;QACXG,MAAMG,WAAW,GAAG,CAAC;;;;;;;;IAQrB,CAAC;QACDL,SAASM,IAAI,CAACC,WAAW,CAACL;QAE1B,OAAO;YACL,MAAMM,gBAAgBR,SAASC,cAAc,CAACF;YAC9C,IAAIS,eAAe;gBACjBA,cAAcC,MAAM;YACtB;QACF;IACF,GAAG;QAACX;KAAmB;AACzB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["../../src/hooks/useTheme.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,gDAMpB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useTheme.ts"],"sourcesContent":["import {useContext} from 'react';\nimport {ThemeProviderContext} from 'state/theme';\n\nexport const useTheme = () => {\n const context = useContext(ThemeProviderContext);\n\n if (context === undefined) throw new Error('useTheme must be used within a ThemeProvider');\n\n return context;\n};\n"],"names":["useContext","ThemeProviderContext","useTheme","context","undefined","Error"],"mappings":"AAAA,SAAQA,UAAU,QAAO,QAAQ;AACjC,SAAQC,oBAAoB,QAAO,cAAc;AAEjD,OAAO,MAAMC,WAAW;IACtB,MAAMC,UAAUH,WAAWC;IAE3B,IAAIE,YAAYC,WAAW,MAAM,IAAIC,MAAM;IAE3C,OAAOF;AACT,EAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export {ShipfoxLoader} from 'shipfox-loader-react';\nexport * from './components';\nexport * from './hooks';\nexport * from './utils';\n"],"names":["ShipfoxLoader"],"mappings":"AAAA,SAAQA,aAAa,QAAO,uBAAuB;AACnD,cAAc,eAAe;AAC7B,cAAc,UAAU;AACxB,cAAc,UAAU"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/onboarding/sign-in.stories.tsx"],"sourcesContent":["import {argosScreenshot} from '@argos-ci/storybook/vitest';\nimport type {Meta, StoryObj} from '@storybook/react';\nimport {Avatar} from 'components/avatar';\nimport {Button} from 'components/button';\nimport {DotGrid} from 'components/dot-grid';\nimport {Header, Text} from 'components/typography';\n\nconst meta = {\n title: 'Onboarding/Signin',\n parameters: {\n layout: 'fullscreen',\n },\n} satisfies Meta;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nexport const Default: Story = {\n play: async (ctx) => {\n await argosScreenshot(ctx, 'example-screenshot');\n },\n render: () => {\n return (\n <div className=\"flex min-h-screen items-center justify-center bg-background-subtle-base\">\n {/* Background illustration - simplified decorative element */}\n <div\n className=\"absolute w-[800px] max-w-[800px] h-[400px] top-0 left-1/2 -translate-x-1/2 translate-y-[-145px]\"\n style={{\n maskImage:\n 'radial-gradient(ellipse 100% 125% at 50% 0%, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 0.5) 60%, rgba(0, 0, 0, 0) 100%)',\n WebkitMaskImage:\n 'radial-gradient(ellipse 100% 125% at 50% 0%, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 0.5) 60%, rgba(0, 0, 0, 0) 100%)',\n }}\n >\n <DotGrid\n dotSize={2}\n gap={20}\n baseColor=\"#e63e00\"\n activeColor=\"#FF0076\"\n proximity={100}\n shockRadius={8}\n shockStrength={100}\n resistance={500}\n returnDuration={1.5}\n />\n </div>\n\n {/* Main content */}\n <div className=\"relative flex w-full max-w-[384px] flex-col items-center gap-32 px-24 pb-80 pt-24\">\n {/* Logo and title section */}\n <div className=\"flex flex-col items-center gap-16\">\n <Avatar content=\"logo\" size=\"xl\" radius=\"rounded\" logoName=\"shipfox\" />\n <div className=\"flex min-w-[128px] flex-col items-center gap-4 text-center\">\n <Header\n variant=\"h1\"\n className=\"text-[28px] font-medium leading-[44px] text-foreground-neutral-base\"\n >\n Connect to Shipfox\n </Header>\n <Text\n size=\"sm\"\n className=\"text-sm font-normal leading-[24px] text-foreground-neutral-subtle\"\n >\n Log in to access Shipfox.\n </Text>\n </div>\n </div>\n\n {/* Action buttons */}\n <div className=\"flex w-full flex-col gap-20\">\n <Button variant=\"primary\" size=\"md\" iconLeft=\"google\" className=\"w-full\">\n Continue with Google\n </Button>\n <Button variant=\"primary\" size=\"md\" iconLeft=\"microsoft\" className=\"w-full\">\n Continue with Microsoft\n </Button>\n <Button variant=\"transparent\" size=\"md\" className=\"w-full\">\n Connect with Enterprise SSO\n </Button>\n </div>\n </div>\n </div>\n );\n },\n};\n"],"names":["argosScreenshot","Avatar","Button","DotGrid","Header","Text","meta","title","parameters","layout","Default","play","ctx","render","div","className","style","maskImage","WebkitMaskImage","dotSize","gap","baseColor","activeColor","proximity","shockRadius","shockStrength","resistance","returnDuration","content","size","radius","logoName","variant","iconLeft"],"mappings":";AAAA,SAAQA,eAAe,QAAO,6BAA6B;AAE3D,SAAQC,MAAM,QAAO,oBAAoB;AACzC,SAAQC,MAAM,QAAO,oBAAoB;AACzC,SAAQC,OAAO,QAAO,sBAAsB;AAC5C,SAAQC,MAAM,EAAEC,IAAI,QAAO,wBAAwB;AAEnD,MAAMC,OAAO;IACXC,OAAO;IACPC,YAAY;QACVC,QAAQ;IACV;AACF;AAEA,eAAeH,KAAK;AAGpB,OAAO,MAAMI,UAAiB;IAC5BC,MAAM,OAAOC;QACX,MAAMZ,gBAAgBY,KAAK;IAC7B;IACAC,QAAQ;QACN,qBACE,MAACC;YAAIC,WAAU;;8BAEb,KAACD;oBACCC,WAAU;oBACVC,OAAO;wBACLC,WACE;wBACFC,iBACE;oBACJ;8BAEA,cAAA,KAACf;wBACCgB,SAAS;wBACTC,KAAK;wBACLC,WAAU;wBACVC,aAAY;wBACZC,WAAW;wBACXC,aAAa;wBACbC,eAAe;wBACfC,YAAY;wBACZC,gBAAgB;;;8BAKpB,MAACb;oBAAIC,WAAU;;sCAEb,MAACD;4BAAIC,WAAU;;8CACb,KAACd;oCAAO2B,SAAQ;oCAAOC,MAAK;oCAAKC,QAAO;oCAAUC,UAAS;;8CAC3D,MAACjB;oCAAIC,WAAU;;sDACb,KAACX;4CACC4B,SAAQ;4CACRjB,WAAU;sDACX;;sDAGD,KAACV;4CACCwB,MAAK;4CACLd,WAAU;sDACX;;;;;;sCAOL,MAACD;4BAAIC,WAAU;;8CACb,KAACb;oCAAO8B,SAAQ;oCAAUH,MAAK;oCAAKI,UAAS;oCAASlB,WAAU;8CAAS;;8CAGzE,KAACb;oCAAO8B,SAAQ;oCAAUH,MAAK;oCAAKI,UAAS;oCAAYlB,WAAU;8CAAS;;8CAG5E,KAACb;oCAAO8B,SAAQ;oCAAcH,MAAK;oCAAKd,WAAU;8CAAS;;;;;;;;IAOrE;AACF,EAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/state/theme.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEhD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAOF,eAAO,MAAM,oBAAoB,6CAAkD,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/state/theme.ts"],"sourcesContent":["import {createContext} from 'react';\n\nexport type Theme = 'dark' | 'light' | 'system';\n\nexport type ThemeProviderState = {\n theme: Theme;\n setTheme: (theme: Theme) => void;\n};\n\nconst initialState: ThemeProviderState = {\n theme: 'system',\n setTheme: () => null,\n};\n\nexport const ThemeProviderContext = createContext<ThemeProviderState>(initialState);\n"],"names":["createContext","initialState","theme","setTheme","ThemeProviderContext"],"mappings":"AAAA,SAAQA,aAAa,QAAO,QAAQ;AASpC,MAAMC,eAAmC;IACvCC,OAAO;IACPC,UAAU,IAAM;AAClB;AAEA,OAAO,MAAMC,uBAAuBJ,cAAkCC,cAAc"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"avatar.d.ts","sourceRoot":"","sources":["../../src/utils/avatar.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,sBAAsB,GAAI,OAAO,MAAM,KAAG,MAStD,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,OAAO,MAAM,KAAG,MAK1C,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/avatar.ts"],"sourcesContent":["const hashString = (str: string): number => {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n const char = str.charCodeAt(i);\n hash = (hash << 5) - hash + char;\n hash = hash & hash;\n }\n return Math.abs(hash);\n};\n\nexport const getPlaceholderImageUrl = (name?: string): string => {\n const backgroundColors = ['BFDFFF', 'BFEAFF', 'CFBFFF', 'FFBFC3', 'FFEABF', 'E3E6EA', 'EAEAEA'];\n\n const seed = name?.trim() || 'avatar';\n\n const colorIndex = hashString(seed) % backgroundColors.length;\n const backgroundColor = backgroundColors[colorIndex];\n\n return `https://api.dicebear.com/9.x/micah/svg?backgroundColor=${backgroundColor}&seed=${encodeURIComponent(seed)}`;\n};\n\nexport const getInitial = (name?: string): string => {\n if (name) {\n return name.trim()[0]?.toUpperCase() ?? 'L';\n }\n return 'L';\n};\n"],"names":["hashString","str","hash","i","length","char","charCodeAt","Math","abs","getPlaceholderImageUrl","name","backgroundColors","seed","trim","colorIndex","backgroundColor","encodeURIComponent","getInitial","toUpperCase"],"mappings":"AAAA,MAAMA,aAAa,CAACC;IAClB,IAAIC,OAAO;IACX,IAAK,IAAIC,IAAI,GAAGA,IAAIF,IAAIG,MAAM,EAAED,IAAK;QACnC,MAAME,OAAOJ,IAAIK,UAAU,CAACH;QAC5BD,OAAO,AAACA,CAAAA,QAAQ,CAAA,IAAKA,OAAOG;QAC5BH,OAAOA,OAAOA;IAChB;IACA,OAAOK,KAAKC,GAAG,CAACN;AAClB;AAEA,OAAO,MAAMO,yBAAyB,CAACC;IACrC,MAAMC,mBAAmB;QAAC;QAAU;QAAU;QAAU;QAAU;QAAU;QAAU;KAAS;IAE/F,MAAMC,OAAOF,MAAMG,UAAU;IAE7B,MAAMC,aAAad,WAAWY,QAAQD,iBAAiBP,MAAM;IAC7D,MAAMW,kBAAkBJ,gBAAgB,CAACG,WAAW;IAEpD,OAAO,CAAC,uDAAuD,EAAEC,gBAAgB,MAAM,EAAEC,mBAAmBJ,OAAO;AACrH,EAAE;AAEF,OAAO,MAAMK,aAAa,CAACP;IACzB,IAAIA,MAAM;QACR,OAAOA,KAAKG,IAAI,EAAE,CAAC,EAAE,EAAEK,iBAAiB;IAC1C;IACA,OAAO;AACT,EAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"clipboard.d.ts","sourceRoot":"","sources":["../../src/utils/clipboard.ts"],"names":[],"mappings":"AAAA,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,2BAGrD"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/clipboard.ts"],"sourcesContent":["export async function copyTextToClipboard(text: string) {\n if ('clipboard' in navigator) return await navigator.clipboard.writeText(text);\n return document.execCommand('copy', true, text);\n}\n"],"names":["copyTextToClipboard","text","navigator","clipboard","writeText","document","execCommand"],"mappings":"AAAA,OAAO,eAAeA,oBAAoBC,IAAY;IACpD,IAAI,eAAeC,WAAW,OAAO,MAAMA,UAAUC,SAAS,CAACC,SAAS,CAACH;IACzE,OAAOI,SAASC,WAAW,CAAC,QAAQ,MAAML;AAC5C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../../src/utils/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,UAAU,EAAO,MAAM,MAAM,CAAC;AAG3C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/cn.ts"],"sourcesContent":["import {type ClassValue, clsx} from 'clsx';\nimport {twMerge} from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"],"names":["clsx","twMerge","cn","inputs"],"mappings":"AAAA,SAAyBA,IAAI,QAAO,OAAO;AAC3C,SAAQC,OAAO,QAAO,iBAAiB;AAEvC,OAAO,SAASC,GAAG,GAAGC,MAAoB;IACxC,OAAOF,QAAQD,KAAKG;AACtB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../src/utils/date.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EAGb,KAAK,kBAAkB,EAIxB,MAAM,UAAU,CAAC;AAElB,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAEhD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAElD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAE9C;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAEhE;AAED,MAAM,WAAW,gCAAgC;IAC/C;;iDAE6C;IAC7C,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,gCAAgC,GACzC,kBAAkB,CAcpB;AAoBD,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAMnE;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAM5E;AAID,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAU9E"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/date.ts"],"sourcesContent":["import {\n type Duration,\n endOfDay,\n formatDuration,\n type NormalizedInterval,\n startOfDay,\n startOfMonth,\n sub,\n} from 'date-fns';\n\nexport function isStartOfDay(date: Date): boolean {\n return date.getTime() === startOfDay(date).getTime();\n}\n\nexport function isStartOfMonth(date: Date): boolean {\n return date.getTime() === startOfMonth(date).getTime();\n}\n\nexport function isEndOfDay(date: Date): boolean {\n return date.getTime() === endOfDay(date).getTime();\n}\n\nexport function humanizeDurationToNow(duration: Duration): string {\n return `Past ${formatDuration(duration)}`;\n}\n\nexport interface IntervalToNowFromDurationOptions {\n /** When set, if an interval is given in a precise unit, it will be rounded to full days\n * (ex: 1 day, will generate intervals from midnight (d-1) to midnight (d))\n * Does not apply to units lower than day */\n attemptRounding?: boolean;\n}\n\nexport function intervalToNowFromDuration(\n duration: Duration,\n options?: IntervalToNowFromDurationOptions,\n): NormalizedInterval {\n const now = new Date();\n const interval = {\n start: sub(now, duration),\n end: now,\n };\n if (!options?.attemptRounding) return interval;\n const units = Object.keys(duration);\n if (units.length !== 1) return interval;\n if (['hours', 'minutes', 'seconds'].includes(units[0])) return interval;\n return {\n start: startOfDay(interval.start),\n end: endOfDay(interval.end),\n };\n}\n\nconst DURATION_SHORTCUTS: Record<keyof Duration, string> = {\n years: 'y',\n months: 'mo',\n weeks: 'w',\n days: 'd',\n hours: 'h',\n minutes: 'm',\n seconds: 's',\n};\n\nconst DURATION_SHORTCUTS_REVERSED: Record<string, keyof Duration> = Object.fromEntries(\n Object.entries(DURATION_SHORTCUTS).map(([key, value]) => [value, key as keyof Duration]),\n);\n\nconst DURATION_SHORTCUT_REGEX = new RegExp(\n `^(\\\\d+)(${Object.keys(DURATION_SHORTCUTS_REVERSED).join('|')})$`,\n);\n\nexport function generateDurationShortcut(duration: Duration): string {\n const keys = Object.keys(duration) as (keyof Duration)[];\n if (keys.length !== 1) return '';\n const key = keys[0];\n const value = duration[key];\n return `${value}${DURATION_SHORTCUTS[key]}`;\n}\n\nexport function parseTextDurationShortcut(text: string): Duration | undefined {\n const match = text.match(DURATION_SHORTCUT_REGEX);\n if (!match) return;\n const [_, value, shortcut] = match;\n const unit = DURATION_SHORTCUTS_REVERSED[shortcut];\n return {[unit]: Number.parseInt(value, 10)};\n}\n\nconst dateSplitterRefex = /[-\\u2013]/;\n\nexport function parseTextInterval(text: string): NormalizedInterval | undefined {\n const durationShortcut = parseTextDurationShortcut(text);\n if (durationShortcut) return intervalToNowFromDuration(durationShortcut);\n const textDates = text.split(dateSplitterRefex).map((token) => token.trim());\n if (textDates.length !== 2) return;\n const start = new Date(textDates[0]);\n const end = new Date(textDates[1]);\n if (Number.isNaN(start.getTime())) return;\n if (Number.isNaN(end.getTime())) return;\n return {start, end};\n}\n"],"names":["endOfDay","formatDuration","startOfDay","startOfMonth","sub","isStartOfDay","date","getTime","isStartOfMonth","isEndOfDay","humanizeDurationToNow","duration","intervalToNowFromDuration","options","now","Date","interval","start","end","attemptRounding","units","Object","keys","length","includes","DURATION_SHORTCUTS","years","months","weeks","days","hours","minutes","seconds","DURATION_SHORTCUTS_REVERSED","fromEntries","entries","map","key","value","DURATION_SHORTCUT_REGEX","RegExp","join","generateDurationShortcut","parseTextDurationShortcut","text","match","_","shortcut","unit","Number","parseInt","dateSplitterRefex","parseTextInterval","durationShortcut","textDates","split","token","trim","isNaN"],"mappings":"AAAA,SAEEA,QAAQ,EACRC,cAAc,EAEdC,UAAU,EACVC,YAAY,EACZC,GAAG,QACE,WAAW;AAElB,OAAO,SAASC,aAAaC,IAAU;IACrC,OAAOA,KAAKC,OAAO,OAAOL,WAAWI,MAAMC,OAAO;AACpD;AAEA,OAAO,SAASC,eAAeF,IAAU;IACvC,OAAOA,KAAKC,OAAO,OAAOJ,aAAaG,MAAMC,OAAO;AACtD;AAEA,OAAO,SAASE,WAAWH,IAAU;IACnC,OAAOA,KAAKC,OAAO,OAAOP,SAASM,MAAMC,OAAO;AAClD;AAEA,OAAO,SAASG,sBAAsBC,QAAkB;IACtD,OAAO,CAAC,KAAK,EAAEV,eAAeU,WAAW;AAC3C;AASA,OAAO,SAASC,0BACdD,QAAkB,EAClBE,OAA0C;IAE1C,MAAMC,MAAM,IAAIC;IAChB,MAAMC,WAAW;QACfC,OAAOb,IAAIU,KAAKH;QAChBO,KAAKJ;IACP;IACA,IAAI,CAACD,SAASM,iBAAiB,OAAOH;IACtC,MAAMI,QAAQC,OAAOC,IAAI,CAACX;IAC1B,IAAIS,MAAMG,MAAM,KAAK,GAAG,OAAOP;IAC/B,IAAI;QAAC;QAAS;QAAW;KAAU,CAACQ,QAAQ,CAACJ,KAAK,CAAC,EAAE,GAAG,OAAOJ;IAC/D,OAAO;QACLC,OAAOf,WAAWc,SAASC,KAAK;QAChCC,KAAKlB,SAASgB,SAASE,GAAG;IAC5B;AACF;AAEA,MAAMO,qBAAqD;IACzDC,OAAO;IACPC,QAAQ;IACRC,OAAO;IACPC,MAAM;IACNC,OAAO;IACPC,SAAS;IACTC,SAAS;AACX;AAEA,MAAMC,8BAA8DZ,OAAOa,WAAW,CACpFb,OAAOc,OAAO,CAACV,oBAAoBW,GAAG,CAAC,CAAC,CAACC,KAAKC,MAAM,GAAK;QAACA;QAAOD;KAAsB;AAGzF,MAAME,0BAA0B,IAAIC,OAClC,CAAC,QAAQ,EAAEnB,OAAOC,IAAI,CAACW,6BAA6BQ,IAAI,CAAC,KAAK,EAAE,CAAC;AAGnE,OAAO,SAASC,yBAAyB/B,QAAkB;IACzD,MAAMW,OAAOD,OAAOC,IAAI,CAACX;IACzB,IAAIW,KAAKC,MAAM,KAAK,GAAG,OAAO;IAC9B,MAAMc,MAAMf,IAAI,CAAC,EAAE;IACnB,MAAMgB,QAAQ3B,QAAQ,CAAC0B,IAAI;IAC3B,OAAO,GAAGC,QAAQb,kBAAkB,CAACY,IAAI,EAAE;AAC7C;AAEA,OAAO,SAASM,0BAA0BC,IAAY;IACpD,MAAMC,QAAQD,KAAKC,KAAK,CAACN;IACzB,IAAI,CAACM,OAAO;IACZ,MAAM,CAACC,GAAGR,OAAOS,SAAS,GAAGF;IAC7B,MAAMG,OAAOf,2BAA2B,CAACc,SAAS;IAClD,OAAO;QAAC,CAACC,KAAK,EAAEC,OAAOC,QAAQ,CAACZ,OAAO;IAAG;AAC5C;AAEA,MAAMa,oBAAoB;AAE1B,OAAO,SAASC,kBAAkBR,IAAY;IAC5C,MAAMS,mBAAmBV,0BAA0BC;IACnD,IAAIS,kBAAkB,OAAOzC,0BAA0ByC;IACvD,MAAMC,YAAYV,KAAKW,KAAK,CAACJ,mBAAmBf,GAAG,CAAC,CAACoB,QAAUA,MAAMC,IAAI;IACzE,IAAIH,UAAU/B,MAAM,KAAK,GAAG;IAC5B,MAAMN,QAAQ,IAAIF,KAAKuC,SAAS,CAAC,EAAE;IACnC,MAAMpC,MAAM,IAAIH,KAAKuC,SAAS,CAAC,EAAE;IACjC,IAAIL,OAAOS,KAAK,CAACzC,MAAMV,OAAO,KAAK;IACnC,IAAI0C,OAAOS,KAAK,CAACxC,IAAIX,OAAO,KAAK;IACjC,OAAO;QAACU;QAAOC;IAAG;AACpB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../src/utils/debounce.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,EAC3D,EAAE,EAAE,CAAC,EACL,KAAK,EAAE,MAAM,GACZ,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAWlC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/debounce.ts"],"sourcesContent":["export function debounce<T extends (...args: never[]) => void>(\n fn: T,\n delay: number,\n): (...args: Parameters<T>) => void {\n let timeoutId: ReturnType<typeof setTimeout> | null = null;\n\n return (...args: Parameters<T>) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n fn(...args);\n }, delay);\n };\n}\n"],"names":["debounce","fn","delay","timeoutId","args","clearTimeout","setTimeout"],"mappings":"AAAA,OAAO,SAASA,SACdC,EAAK,EACLC,KAAa;IAEb,IAAIC,YAAkD;IAEtD,OAAO,CAAC,GAAGC;QACT,IAAID,WAAW;YACbE,aAAaF;QACf;QACAA,YAAYG,WAAW;YACrBL,MAAMG;QACR,GAAGF;IACL;AACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../../../src/utils/format/chart.ts"],"names":[],"mappings":"AAGA,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,UAK5C;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,UAKhD"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/format/chart.ts"],"sourcesContent":["import {formatDateTime, formatTimeSeriesTick} from './date';\nimport {formatNumber, formatNumberCompact} from './number';\n\nexport function formatAxisTick(value: unknown) {\n if (value instanceof Date) return formatTimeSeriesTick(value);\n if (typeof value !== 'number')\n throw new Error(`Expecting value to be a number, got ${typeof value}`);\n return formatNumberCompact(value);\n}\n\nexport function formatTooltipLabel(value: unknown) {\n if (value instanceof Date) return formatDateTime(value);\n if (typeof value !== 'number')\n throw new Error(`Expecting value to be a number, got ${typeof value}`);\n return formatNumber(value);\n}\n"],"names":["formatDateTime","formatTimeSeriesTick","formatNumber","formatNumberCompact","formatAxisTick","value","Date","Error","formatTooltipLabel"],"mappings":"AAAA,SAAQA,cAAc,EAAEC,oBAAoB,QAAO,SAAS;AAC5D,SAAQC,YAAY,EAAEC,mBAAmB,QAAO,WAAW;AAE3D,OAAO,SAASC,eAAeC,KAAc;IAC3C,IAAIA,iBAAiBC,MAAM,OAAOL,qBAAqBI;IACvD,IAAI,OAAOA,UAAU,UACnB,MAAM,IAAIE,MAAM,CAAC,oCAAoC,EAAE,OAAOF,OAAO;IACvE,OAAOF,oBAAoBE;AAC7B;AAEA,OAAO,SAASG,mBAAmBH,KAAc;IAC/C,IAAIA,iBAAiBC,MAAM,OAAON,eAAeK;IACjD,IAAI,OAAOA,UAAU,UACnB,MAAM,IAAIE,MAAM,CAAC,oCAAoC,EAAE,OAAOF,OAAO;IACvE,OAAOH,aAAaG;AACtB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../src/utils/format/date.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,kBAAkB,EAAC,MAAM,UAAU,CAAC;AAG1D,UAAU,qBAAsB,SAAQ,IAAI,CAAC,qBAAqB;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAyBD,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAGlF;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,CAAC,EAAE,qBAAqB,UAOhC;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,MAAM,CAUR;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,IAAI,EACV,EAAC,MAAM,EAAE,GAAG,OAAO,EAAC,GAAE,qBAA0B,GAC/C,MAAM,CASR"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/format/date.ts"],"sourcesContent":["import {getYear, type NormalizedInterval} from 'date-fns';\nimport {isEndOfDay, isStartOfDay} from 'utils/date';\n\ninterface DateTimeFormatOptions extends Intl.DateTimeFormatOptions {\n locale?: string;\n}\n\nconst defaultOptions: DateTimeFormatOptions = {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n hour: 'numeric',\n minute: '2-digit',\n};\n\nfunction getDateTimeFormatter({\n locale,\n ...options\n}: DateTimeFormatOptions = {}): Intl.DateTimeFormat {\n return new Intl.DateTimeFormat(locale, {\n ...defaultOptions,\n ...options,\n });\n}\n\nfunction areCurrentYear({start, end}: NormalizedInterval): boolean {\n const now = new Date();\n return getYear(end) === getYear(now) && getYear(start) === getYear(now);\n}\n\nexport function formatDateTime(date: Date, options?: DateTimeFormatOptions): string {\n const formatter = getDateTimeFormatter(options);\n return formatter.format(date);\n}\n\nexport function formatDateTimeRelativeToInterval(\n date: Date,\n interval: NormalizedInterval,\n options?: DateTimeFormatOptions,\n) {\n const formatter = getDateTimeFormatter({\n year: areCurrentYear(interval) ? undefined : defaultOptions.year,\n ...options,\n });\n return formatter.format(date);\n}\n\nexport function formatDateTimeRange(\n interval: NormalizedInterval,\n options?: DateTimeFormatOptions,\n): string {\n const {start, end} = interval;\n const areFullDays = isStartOfDay(start) && isEndOfDay(end);\n const formatter = getDateTimeFormatter({\n year: areCurrentYear(interval) ? undefined : defaultOptions.year,\n hour: areFullDays ? undefined : defaultOptions.hour,\n minute: areFullDays ? undefined : defaultOptions.minute,\n ...options,\n });\n return formatter.formatRange(start, end);\n}\n\nexport function formatTimeSeriesTick(\n date: Date,\n {locale, ...options}: DateTimeFormatOptions = {},\n): string {\n const tickOptions: DateTimeFormatOptions = isStartOfDay(date)\n ? {month: 'short', day: 'numeric'}\n : {hour: 'numeric', minute: '2-digit'};\n const formatter = new Intl.DateTimeFormat(locale, {\n ...tickOptions,\n ...options,\n });\n return formatter.format(date);\n}\n"],"names":["getYear","isEndOfDay","isStartOfDay","defaultOptions","year","month","day","hour","minute","getDateTimeFormatter","locale","options","Intl","DateTimeFormat","areCurrentYear","start","end","now","Date","formatDateTime","date","formatter","format","formatDateTimeRelativeToInterval","interval","undefined","formatDateTimeRange","areFullDays","formatRange","formatTimeSeriesTick","tickOptions"],"mappings":"AAAA,SAAQA,OAAO,QAAgC,WAAW;AAC1D,SAAQC,UAAU,EAAEC,YAAY,QAAO,aAAa;AAMpD,MAAMC,iBAAwC;IAC5CC,MAAM;IACNC,OAAO;IACPC,KAAK;IACLC,MAAM;IACNC,QAAQ;AACV;AAEA,SAASC,qBAAqB,EAC5BC,MAAM,EACN,GAAGC,SACmB,GAAG,CAAC,CAAC;IAC3B,OAAO,IAAIC,KAAKC,cAAc,CAACH,QAAQ;QACrC,GAAGP,cAAc;QACjB,GAAGQ,OAAO;IACZ;AACF;AAEA,SAASG,eAAe,EAACC,KAAK,EAAEC,GAAG,EAAqB;IACtD,MAAMC,MAAM,IAAIC;IAChB,OAAOlB,QAAQgB,SAAShB,QAAQiB,QAAQjB,QAAQe,WAAWf,QAAQiB;AACrE;AAEA,OAAO,SAASE,eAAeC,IAAU,EAAET,OAA+B;IACxE,MAAMU,YAAYZ,qBAAqBE;IACvC,OAAOU,UAAUC,MAAM,CAACF;AAC1B;AAEA,OAAO,SAASG,iCACdH,IAAU,EACVI,QAA4B,EAC5Bb,OAA+B;IAE/B,MAAMU,YAAYZ,qBAAqB;QACrCL,MAAMU,eAAeU,YAAYC,YAAYtB,eAAeC,IAAI;QAChE,GAAGO,OAAO;IACZ;IACA,OAAOU,UAAUC,MAAM,CAACF;AAC1B;AAEA,OAAO,SAASM,oBACdF,QAA4B,EAC5Bb,OAA+B;IAE/B,MAAM,EAACI,KAAK,EAAEC,GAAG,EAAC,GAAGQ;IACrB,MAAMG,cAAczB,aAAaa,UAAUd,WAAWe;IACtD,MAAMK,YAAYZ,qBAAqB;QACrCL,MAAMU,eAAeU,YAAYC,YAAYtB,eAAeC,IAAI;QAChEG,MAAMoB,cAAcF,YAAYtB,eAAeI,IAAI;QACnDC,QAAQmB,cAAcF,YAAYtB,eAAeK,MAAM;QACvD,GAAGG,OAAO;IACZ;IACA,OAAOU,UAAUO,WAAW,CAACb,OAAOC;AACtC;AAEA,OAAO,SAASa,qBACdT,IAAU,EACV,EAACV,MAAM,EAAE,GAAGC,SAA+B,GAAG,CAAC,CAAC;IAEhD,MAAMmB,cAAqC5B,aAAakB,QACpD;QAACf,OAAO;QAASC,KAAK;IAAS,IAC/B;QAACC,MAAM;QAAWC,QAAQ;IAAS;IACvC,MAAMa,YAAY,IAAIT,KAAKC,cAAc,CAACH,QAAQ;QAChD,GAAGoB,WAAW;QACd,GAAGnB,OAAO;IACZ;IACA,OAAOU,UAAUC,MAAM,CAACF;AAC1B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"duration.d.ts","sourceRoot":"","sources":["../../../src/utils/format/duration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,IAAI,YAAY,EAAC,MAAM,UAAU,CAAC;AAGvD,MAAM,WAAW,QAAS,SAAQ,YAAY;IAC5C,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/B;AA6DD,kEAAkE;AAClE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAYzD"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/format/duration.ts"],"sourcesContent":["import type {Duration as BaseDuration} from 'date-fns';\nimport {formatNumber} from './number';\n\nexport interface Duration extends BaseDuration {\n milliseconds?: number | bigint;\n microseconds?: number | bigint;\n nanoseconds?: number | bigint;\n}\n\ninterface Unit {\n key: keyof Duration;\n symbol: string;\n ns: number;\n}\n\nconst units: Unit[] = [\n {\n key: 'years',\n symbol: 'y',\n ns: 365 * 24 * 60 * 60 * 1000 * 1000 * 1000,\n },\n {\n key: 'months',\n symbol: 'mo',\n ns: 30 * 24 * 60 * 60 * 1000 * 1000 * 1000,\n },\n {\n key: 'weeks',\n symbol: 'w',\n ns: 7 * 24 * 60 * 60 * 1000 * 1000 * 1000,\n },\n {\n key: 'days',\n symbol: 'd',\n ns: 24 * 60 * 60 * 1000 * 1000 * 1000,\n },\n {\n key: 'hours',\n symbol: 'h',\n ns: 60 * 60 * 1000 * 1000 * 1000,\n },\n {\n key: 'minutes',\n symbol: 'min',\n ns: 60 * 1000 * 1000 * 1000,\n },\n {\n key: 'seconds',\n symbol: 's',\n ns: 1000 * 1000 * 1000,\n },\n {\n key: 'milliseconds',\n symbol: 'ms',\n ns: 1000 * 1000,\n },\n {\n key: 'microseconds',\n symbol: 'μs',\n ns: 1000,\n },\n {\n key: 'nanoseconds',\n symbol: 'ns',\n ns: 1,\n },\n];\n\n/** Format a duration in nanoseconds to a human readable string */\nexport function formatDuration(duration: Duration): string {\n const nanoseconds = Object.entries(duration).reduce((acc, [key, value]) => {\n const unit = units.find((u) => u.key === key);\n if (!unit) throw new Error(`Received unknown duration unit: ${key}`);\n return acc + Number(value) * unit.ns;\n }, 0);\n\n for (const unit of units) {\n const value = nanoseconds / unit.ns;\n if (value >= 1) return `${formatNumber(value, {maximumFractionDigits: 1})} ${unit.symbol}`;\n }\n return `${formatNumber(nanoseconds, {maximumFractionDigits: 1})} ns`;\n}\n"],"names":["formatNumber","units","key","symbol","ns","formatDuration","duration","nanoseconds","Object","entries","reduce","acc","value","unit","find","u","Error","Number","maximumFractionDigits"],"mappings":"AACA,SAAQA,YAAY,QAAO,WAAW;AActC,MAAMC,QAAgB;IACpB;QACEC,KAAK;QACLC,QAAQ;QACRC,IAAI,MAAM,KAAK,KAAK,KAAK,OAAO,OAAO;IACzC;IACA;QACEF,KAAK;QACLC,QAAQ;QACRC,IAAI,KAAK,KAAK,KAAK,KAAK,OAAO,OAAO;IACxC;IACA;QACEF,KAAK;QACLC,QAAQ;QACRC,IAAI,IAAI,KAAK,KAAK,KAAK,OAAO,OAAO;IACvC;IACA;QACEF,KAAK;QACLC,QAAQ;QACRC,IAAI,KAAK,KAAK,KAAK,OAAO,OAAO;IACnC;IACA;QACEF,KAAK;QACLC,QAAQ;QACRC,IAAI,KAAK,KAAK,OAAO,OAAO;IAC9B;IACA;QACEF,KAAK;QACLC,QAAQ;QACRC,IAAI,KAAK,OAAO,OAAO;IACzB;IACA;QACEF,KAAK;QACLC,QAAQ;QACRC,IAAI,OAAO,OAAO;IACpB;IACA;QACEF,KAAK;QACLC,QAAQ;QACRC,IAAI,OAAO;IACb;IACA;QACEF,KAAK;QACLC,QAAQ;QACRC,IAAI;IACN;IACA;QACEF,KAAK;QACLC,QAAQ;QACRC,IAAI;IACN;CACD;AAED,gEAAgE,GAChE,OAAO,SAASC,eAAeC,QAAkB;IAC/C,MAAMC,cAAcC,OAAOC,OAAO,CAACH,UAAUI,MAAM,CAAC,CAACC,KAAK,CAACT,KAAKU,MAAM;QACpE,MAAMC,OAAOZ,MAAMa,IAAI,CAAC,CAACC,IAAMA,EAAEb,GAAG,KAAKA;QACzC,IAAI,CAACW,MAAM,MAAM,IAAIG,MAAM,CAAC,gCAAgC,EAAEd,KAAK;QACnE,OAAOS,MAAMM,OAAOL,SAASC,KAAKT,EAAE;IACtC,GAAG;IAEH,KAAK,MAAMS,QAAQZ,MAAO;QACxB,MAAMW,QAAQL,cAAcM,KAAKT,EAAE;QACnC,IAAIQ,SAAS,GAAG,OAAO,GAAGZ,aAAaY,OAAO;YAACM,uBAAuB;QAAC,GAAG,CAAC,EAAEL,KAAKV,MAAM,EAAE;IAC5F;IACA,OAAO,GAAGH,aAAaO,aAAa;QAACW,uBAAuB;IAAC,GAAG,GAAG,CAAC;AACtE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/format/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/format/index.ts"],"sourcesContent":["export * from './chart';\nexport * from './date';\nexport * from './duration';\nexport * from './number';\n"],"names":[],"mappings":"AAAA,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,aAAa;AAC3B,cAAc,WAAW"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../../src/utils/format/number.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,mBAAmB;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,EAAC,MAAM,EAAE,GAAG,OAAO,EAAC,GAAE,mBAAwB,GAC7C,MAAM,CAGR;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,OAAO,GAAE,mBAAwB,GAChC,MAAM,CAOR;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,EAAC,MAAM,EAAE,GAAG,OAAO,EAAC,GAAE,mBAAwB,GAC7C,MAAM,CAKR"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/format/number.ts"],"sourcesContent":["export interface NumberFormatOptions extends Intl.NumberFormatOptions {\n locale?: string;\n}\n\nexport function formatNumber(\n value: number | bigint,\n {locale, ...options}: NumberFormatOptions = {},\n): string {\n const formatter = new Intl.NumberFormat(locale, options);\n return formatter.format(value);\n}\n\nexport function formatNumberCompact(\n value: number | bigint,\n options: NumberFormatOptions = {},\n): string {\n return formatNumber(value, {\n ...options,\n style: 'decimal',\n notation: 'compact',\n compactDisplay: 'short',\n });\n}\n\nexport function formatPercent(\n value: number,\n {locale, ...options}: NumberFormatOptions = {},\n): string {\n return formatNumber(value, {\n ...options,\n style: 'percent',\n });\n}\n"],"names":["formatNumber","value","locale","options","formatter","Intl","NumberFormat","format","formatNumberCompact","style","notation","compactDisplay","formatPercent"],"mappings":"AAIA,OAAO,SAASA,aACdC,KAAsB,EACtB,EAACC,MAAM,EAAE,GAAGC,SAA6B,GAAG,CAAC,CAAC;IAE9C,MAAMC,YAAY,IAAIC,KAAKC,YAAY,CAACJ,QAAQC;IAChD,OAAOC,UAAUG,MAAM,CAACN;AAC1B;AAEA,OAAO,SAASO,oBACdP,KAAsB,EACtBE,UAA+B,CAAC,CAAC;IAEjC,OAAOH,aAAaC,OAAO;QACzB,GAAGE,OAAO;QACVM,OAAO;QACPC,UAAU;QACVC,gBAAgB;IAClB;AACF;AAEA,OAAO,SAASC,cACdX,KAAa,EACb,EAACC,MAAM,EAAE,GAAGC,SAA6B,GAAG,CAAC,CAAC;IAE9C,OAAOH,aAAaC,OAAO;QACzB,GAAGE,OAAO;QACVM,OAAO;IACT;AACF"}