@heymantle/litho 0.0.14 → 0.0.16

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 (381) hide show
  1. package/AI_COMPONENTS_GUIDE.md +28 -15
  2. package/AI_INTEGRATION_GUIDE.md +3 -3
  3. package/AI_PATTERNS_GUIDE.md +59 -25
  4. package/COMPONENT_QUICK_REFERENCE.md +3 -3
  5. package/README.md +52 -0
  6. package/dist/cjs/components/ActionList.js +33 -25
  7. package/dist/cjs/components/AnnouncementBar.js +115 -18
  8. package/dist/cjs/components/AnnouncementCard.js +269 -0
  9. package/dist/cjs/components/AppProvider.js +15 -2
  10. package/dist/cjs/components/Autocomplete.js +58 -36
  11. package/dist/cjs/components/Badge.js +28 -14
  12. package/dist/cjs/components/Banner.js +37 -27
  13. package/dist/cjs/components/Box.js +50 -38
  14. package/dist/cjs/components/Button.js +338 -109
  15. package/dist/cjs/components/ButtonGroup.js +27 -14
  16. package/dist/cjs/components/Card.js +311 -143
  17. package/dist/cjs/components/Checkbox.js +55 -47
  18. package/dist/cjs/components/CheckboxCard.js +222 -0
  19. package/dist/cjs/components/CheckboxCardGroup.js +384 -0
  20. package/dist/cjs/components/ChoiceList.js +21 -11
  21. package/dist/cjs/components/Code.js +22 -8
  22. package/dist/cjs/components/Collapsible.js +24 -11
  23. package/dist/cjs/components/ColorField.js +163 -38
  24. package/dist/cjs/components/ContextualSaveBar.js +13 -6
  25. package/dist/cjs/components/DatePicker.js +48 -37
  26. package/dist/cjs/components/Disclosure.js +57 -13
  27. package/dist/cjs/components/Divider.js +82 -18
  28. package/dist/cjs/components/DropZone.js +194 -68
  29. package/dist/cjs/components/EmptyState.js +18 -6
  30. package/dist/cjs/components/Filters.js +84 -36
  31. package/dist/cjs/components/FooterHelp.js +14 -4
  32. package/dist/cjs/components/Form.js +13 -2
  33. package/dist/cjs/components/Frame.js +57 -22
  34. package/dist/cjs/components/FrameSaveBar.js +37 -6
  35. package/dist/cjs/components/Grid.js +31 -15
  36. package/dist/cjs/components/HorizontalStack.js +38 -25
  37. package/dist/cjs/components/Icon.js +683 -61
  38. package/dist/cjs/components/Image.js +35 -22
  39. package/dist/cjs/components/InlineError.js +19 -10
  40. package/dist/cjs/components/Label.js +21 -12
  41. package/dist/cjs/components/Layout.js +37 -26
  42. package/dist/cjs/components/LayoutSection.js +84 -22
  43. package/dist/cjs/components/Link.js +35 -22
  44. package/dist/cjs/components/List.js +28 -12
  45. package/dist/cjs/components/Listbox.js +53 -31
  46. package/dist/cjs/components/Loading.js +14 -2
  47. package/dist/cjs/components/Modal.js +32 -39
  48. package/dist/cjs/components/Navigation.js +107 -36
  49. package/dist/cjs/components/Page.js +44 -31
  50. package/dist/cjs/components/Pagination.js +20 -5
  51. package/dist/cjs/components/Pane.js +67 -4
  52. package/dist/cjs/components/Popover.js +63 -30
  53. package/dist/cjs/components/PopoverManager.js +14 -1
  54. package/dist/cjs/components/ProgressBar.js +28 -15
  55. package/dist/cjs/components/RadioButton.js +32 -24
  56. package/dist/cjs/components/RadioButtonCard.js +92 -67
  57. package/dist/cjs/components/RadioButtonCardGroup.js +379 -0
  58. package/dist/cjs/components/RangeSlider.js +34 -26
  59. package/dist/cjs/components/ResourceList.js +28 -14
  60. package/dist/cjs/components/Select.js +38 -26
  61. package/dist/cjs/components/SkeletonText.js +33 -18
  62. package/dist/cjs/components/Spinner.js +24 -12
  63. package/dist/cjs/components/Stack.js +131 -71
  64. package/dist/cjs/components/TabNavigation.js +27 -1
  65. package/dist/cjs/components/Table.js +85 -29
  66. package/dist/cjs/components/Tabs.js +84 -24
  67. package/dist/cjs/components/Tag.js +37 -16
  68. package/dist/cjs/components/Text.js +32 -18
  69. package/dist/cjs/components/TextField.js +119 -69
  70. package/dist/cjs/components/Thumbnail.js +25 -11
  71. package/dist/cjs/components/TimePicker.js +22 -1
  72. package/dist/cjs/components/Tip.js +140 -25
  73. package/dist/cjs/components/ToastNotification.js +107 -34
  74. package/dist/cjs/components/ToastProvider.js +13 -3
  75. package/dist/cjs/components/Tooltip.js +50 -41
  76. package/dist/cjs/components/TopBar.js +83 -9
  77. package/dist/cjs/components/VerticalStack.js +31 -16
  78. package/dist/cjs/index.js +24 -0
  79. package/dist/cjs/playwright.config.js +114 -0
  80. package/dist/cjs/stories/Autocomplete.stories.js +10 -10
  81. package/dist/cjs/stories/Checkbox.stories.js +6 -8
  82. package/dist/cjs/stories/CheckboxCardGroup.stories.js +459 -0
  83. package/dist/cjs/stories/Collapsible.stories.js +11 -11
  84. package/dist/cjs/stories/ColorField.stories.js +2 -3
  85. package/dist/cjs/stories/ComplexExamples.stories.js +48 -77
  86. package/dist/cjs/stories/ContextualSaveBar.stories.js +1 -1
  87. package/dist/cjs/stories/Divider.stories.js +15 -16
  88. package/dist/cjs/stories/DropZone.stories.js +3 -3
  89. package/dist/cjs/stories/FooterHelp.stories.js +3 -4
  90. package/dist/cjs/stories/Form.stories.js +2 -4
  91. package/dist/cjs/stories/Grid.stories.js +24 -33
  92. package/dist/cjs/stories/Icon.stories.js +22 -23
  93. package/dist/cjs/stories/Image.stories.js +12 -15
  94. package/dist/cjs/stories/InlineError.stories.js +0 -1
  95. package/dist/cjs/stories/Layout.stories.js +96 -2
  96. package/dist/cjs/stories/LayoutSection.stories.js +13 -18
  97. package/dist/cjs/stories/List.stories.js +24 -28
  98. package/dist/cjs/stories/Listbox.stories.js +2 -2
  99. package/dist/cjs/stories/Loading.stories.js +21 -25
  100. package/dist/cjs/stories/Modal.stories.js +0 -1
  101. package/dist/cjs/stories/Pagination.stories.js +4 -4
  102. package/dist/cjs/stories/Pane.stories.js +10 -18
  103. package/dist/cjs/stories/Popover.stories.js +7 -7
  104. package/dist/cjs/stories/PopoverManager.stories.js +9 -9
  105. package/dist/cjs/stories/ProgressBar.stories.js +8 -8
  106. package/dist/cjs/stories/RadioButton.stories.js +2 -2
  107. package/dist/cjs/stories/RadioButtonCard.stories.js +2 -2
  108. package/dist/cjs/stories/RadioButtonCardGroup.stories.js +502 -0
  109. package/dist/cjs/stories/RangeSlider.stories.js +1 -3
  110. package/dist/cjs/stories/ResourceList.stories.js +13 -13
  111. package/dist/cjs/stories/Spinner.stories.js +9 -9
  112. package/dist/cjs/stories/Stack.stories.js +233 -51
  113. package/dist/cjs/stories/Tabs.stories.js +2 -2
  114. package/dist/cjs/stories/Tag.stories.js +1 -1
  115. package/dist/cjs/stories/Thumbnail.stories.js +17 -18
  116. package/dist/cjs/stories/TimePicker.stories.js +0 -5
  117. package/dist/cjs/stories/Tip.stories.js +1 -1
  118. package/dist/cjs/styles/Table.js +2 -7
  119. package/dist/cjs/tests/visual/stories.spec.js +637 -0
  120. package/dist/cjs/utilities/dates.js +7 -7
  121. package/dist/esm/components/ActionList.js +33 -25
  122. package/dist/esm/components/AnnouncementBar.js +115 -18
  123. package/dist/esm/components/AnnouncementCard.js +254 -0
  124. package/dist/esm/components/AppProvider.js +15 -2
  125. package/dist/esm/components/Autocomplete.js +58 -36
  126. package/dist/esm/components/Badge.js +28 -14
  127. package/dist/esm/components/Banner.js +37 -27
  128. package/dist/esm/components/Box.js +50 -38
  129. package/dist/esm/components/Button.js +338 -109
  130. package/dist/esm/components/ButtonGroup.js +27 -14
  131. package/dist/esm/components/Card.js +300 -140
  132. package/dist/esm/components/Checkbox.js +55 -47
  133. package/dist/esm/components/CheckboxCard.js +207 -0
  134. package/dist/esm/components/CheckboxCardGroup.js +370 -0
  135. package/dist/esm/components/ChoiceList.js +21 -11
  136. package/dist/esm/components/Code.js +22 -8
  137. package/dist/esm/components/Collapsible.js +24 -11
  138. package/dist/esm/components/ColorField.js +165 -40
  139. package/dist/esm/components/ContextualSaveBar.js +13 -6
  140. package/dist/esm/components/DatePicker.js +48 -37
  141. package/dist/esm/components/Disclosure.js +50 -6
  142. package/dist/esm/components/Divider.js +78 -20
  143. package/dist/esm/components/DropZone.js +194 -68
  144. package/dist/esm/components/EmptyState.js +18 -6
  145. package/dist/esm/components/Filters.js +84 -36
  146. package/dist/esm/components/FooterHelp.js +14 -4
  147. package/dist/esm/components/Form.js +13 -2
  148. package/dist/esm/components/Frame.js +57 -22
  149. package/dist/esm/components/FrameSaveBar.js +37 -6
  150. package/dist/esm/components/Grid.js +31 -15
  151. package/dist/esm/components/HorizontalStack.js +38 -25
  152. package/dist/esm/components/Icon.js +681 -62
  153. package/dist/esm/components/Image.js +35 -22
  154. package/dist/esm/components/InlineError.js +19 -10
  155. package/dist/esm/components/Label.js +21 -12
  156. package/dist/esm/components/Layout.js +62 -27
  157. package/dist/esm/components/LayoutSection.js +84 -22
  158. package/dist/esm/components/Link.js +35 -22
  159. package/dist/esm/components/List.js +28 -12
  160. package/dist/esm/components/Listbox.js +53 -31
  161. package/dist/esm/components/Loading.js +14 -2
  162. package/dist/esm/components/Modal.js +79 -40
  163. package/dist/esm/components/Navigation.js +107 -36
  164. package/dist/esm/components/Page.js +44 -31
  165. package/dist/esm/components/Pagination.js +20 -5
  166. package/dist/esm/components/Pane.js +67 -4
  167. package/dist/esm/components/Popover.js +63 -30
  168. package/dist/esm/components/PopoverManager.js +14 -1
  169. package/dist/esm/components/ProgressBar.js +28 -15
  170. package/dist/esm/components/RadioButton.js +32 -24
  171. package/dist/esm/components/RadioButtonCard.js +92 -67
  172. package/dist/esm/components/RadioButtonCardGroup.js +364 -0
  173. package/dist/esm/components/RangeSlider.js +34 -26
  174. package/dist/esm/components/ResourceList.js +28 -14
  175. package/dist/esm/components/Select.js +38 -26
  176. package/dist/esm/components/SkeletonText.js +33 -18
  177. package/dist/esm/components/Spinner.js +24 -12
  178. package/dist/esm/components/Stack.js +131 -71
  179. package/dist/esm/components/TabNavigation.js +27 -1
  180. package/dist/esm/components/Table.js +85 -29
  181. package/dist/esm/components/Tabs.js +84 -24
  182. package/dist/esm/components/Tag.js +37 -16
  183. package/dist/esm/components/Text.js +32 -18
  184. package/dist/esm/components/TextField.js +119 -69
  185. package/dist/esm/components/Thumbnail.js +25 -11
  186. package/dist/esm/components/TimePicker.js +22 -1
  187. package/dist/esm/components/Tip.js +140 -25
  188. package/dist/esm/components/ToastNotification.js +107 -34
  189. package/dist/esm/components/ToastProvider.js +13 -3
  190. package/dist/esm/components/Tooltip.js +50 -41
  191. package/dist/esm/components/TopBar.js +83 -9
  192. package/dist/esm/components/VerticalStack.js +31 -16
  193. package/dist/esm/index.js +6 -0
  194. package/dist/esm/playwright.config.js +104 -0
  195. package/dist/esm/stories/Autocomplete.stories.js +10 -10
  196. package/dist/esm/stories/Checkbox.stories.js +6 -8
  197. package/dist/esm/stories/CheckboxCardGroup.stories.js +421 -0
  198. package/dist/esm/stories/Collapsible.stories.js +11 -11
  199. package/dist/esm/stories/ColorField.stories.js +2 -3
  200. package/dist/esm/stories/ComplexExamples.stories.js +48 -77
  201. package/dist/esm/stories/ContextualSaveBar.stories.js +1 -1
  202. package/dist/esm/stories/Divider.stories.js +15 -16
  203. package/dist/esm/stories/DropZone.stories.js +3 -3
  204. package/dist/esm/stories/FooterHelp.stories.js +3 -4
  205. package/dist/esm/stories/Form.stories.js +2 -4
  206. package/dist/esm/stories/Grid.stories.js +24 -33
  207. package/dist/esm/stories/Icon.stories.js +22 -23
  208. package/dist/esm/stories/Image.stories.js +12 -15
  209. package/dist/esm/stories/InlineError.stories.js +0 -1
  210. package/dist/esm/stories/Layout.stories.js +93 -2
  211. package/dist/esm/stories/LayoutSection.stories.js +13 -18
  212. package/dist/esm/stories/List.stories.js +24 -28
  213. package/dist/esm/stories/Listbox.stories.js +2 -2
  214. package/dist/esm/stories/Loading.stories.js +21 -25
  215. package/dist/esm/stories/Modal.stories.js +0 -1
  216. package/dist/esm/stories/Pagination.stories.js +4 -4
  217. package/dist/esm/stories/Pane.stories.js +10 -18
  218. package/dist/esm/stories/Popover.stories.js +7 -7
  219. package/dist/esm/stories/PopoverManager.stories.js +9 -9
  220. package/dist/esm/stories/ProgressBar.stories.js +8 -8
  221. package/dist/esm/stories/RadioButton.stories.js +2 -2
  222. package/dist/esm/stories/RadioButtonCard.stories.js +2 -2
  223. package/dist/esm/stories/RadioButtonCardGroup.stories.js +461 -0
  224. package/dist/esm/stories/RangeSlider.stories.js +1 -3
  225. package/dist/esm/stories/ResourceList.stories.js +13 -13
  226. package/dist/esm/stories/Spinner.stories.js +9 -9
  227. package/dist/esm/stories/Stack.stories.js +224 -51
  228. package/dist/esm/stories/Tabs.stories.js +2 -2
  229. package/dist/esm/stories/Tag.stories.js +1 -1
  230. package/dist/esm/stories/Thumbnail.stories.js +17 -18
  231. package/dist/esm/stories/TimePicker.stories.js +0 -5
  232. package/dist/esm/stories/Tip.stories.js +1 -1
  233. package/dist/esm/styles/Table.js +2 -7
  234. package/dist/esm/tests/visual/stories.spec.js +633 -0
  235. package/dist/esm/utilities/dates.js +7 -7
  236. package/dist/types/components/ActionList.d.ts +1 -31
  237. package/dist/types/components/ActionList.d.ts.map +1 -1
  238. package/dist/types/components/AnnouncementBar.d.ts +1 -19
  239. package/dist/types/components/AnnouncementBar.d.ts.map +1 -1
  240. package/dist/types/components/AnnouncementCard.d.ts +3 -0
  241. package/dist/types/components/AnnouncementCard.d.ts.map +1 -0
  242. package/dist/types/components/AppProvider.d.ts +14 -1
  243. package/dist/types/components/AppProvider.d.ts.map +1 -1
  244. package/dist/types/components/Autocomplete.d.ts +1 -71
  245. package/dist/types/components/Autocomplete.d.ts.map +1 -1
  246. package/dist/types/components/Badge.d.ts +1 -19
  247. package/dist/types/components/Badge.d.ts.map +1 -1
  248. package/dist/types/components/Banner.d.ts +1 -37
  249. package/dist/types/components/Banner.d.ts.map +1 -1
  250. package/dist/types/components/Box.d.ts +1 -68
  251. package/dist/types/components/Box.d.ts.map +1 -1
  252. package/dist/types/components/Button.d.ts +1 -131
  253. package/dist/types/components/Button.d.ts.map +1 -1
  254. package/dist/types/components/ButtonGroup.d.ts +1 -22
  255. package/dist/types/components/ButtonGroup.d.ts.map +1 -1
  256. package/dist/types/components/Card.d.ts +54 -59
  257. package/dist/types/components/Card.d.ts.map +1 -1
  258. package/dist/types/components/Checkbox.d.ts +1 -63
  259. package/dist/types/components/Checkbox.d.ts.map +1 -1
  260. package/dist/types/components/CheckboxCard.d.ts +3 -0
  261. package/dist/types/components/CheckboxCard.d.ts.map +1 -0
  262. package/dist/types/components/CheckboxCardGroup.d.ts +3 -0
  263. package/dist/types/components/CheckboxCardGroup.d.ts.map +1 -0
  264. package/dist/types/components/ChoiceList.d.ts +1 -42
  265. package/dist/types/components/ChoiceList.d.ts.map +1 -1
  266. package/dist/types/components/Code.d.ts +1 -26
  267. package/dist/types/components/Code.d.ts.map +1 -1
  268. package/dist/types/components/Collapsible.d.ts +1 -15
  269. package/dist/types/components/Collapsible.d.ts.map +1 -1
  270. package/dist/types/components/ColorField.d.ts +13 -34
  271. package/dist/types/components/ColorField.d.ts.map +1 -1
  272. package/dist/types/components/ContextualSaveBar.d.ts +13 -6
  273. package/dist/types/components/ContextualSaveBar.d.ts.map +1 -1
  274. package/dist/types/components/DatePicker.d.ts +1 -64
  275. package/dist/types/components/DatePicker.d.ts.map +1 -1
  276. package/dist/types/components/Disclosure.d.ts +1 -25
  277. package/dist/types/components/Disclosure.d.ts.map +1 -1
  278. package/dist/types/components/Divider.d.ts +1 -19
  279. package/dist/types/components/Divider.d.ts.map +1 -1
  280. package/dist/types/components/DropZone.d.ts +3 -62
  281. package/dist/types/components/DropZone.d.ts.map +1 -1
  282. package/dist/types/components/EmptyState.d.ts +1 -50
  283. package/dist/types/components/EmptyState.d.ts.map +1 -1
  284. package/dist/types/components/Filters.d.ts +13 -68
  285. package/dist/types/components/Filters.d.ts.map +1 -1
  286. package/dist/types/components/FooterHelp.d.ts +14 -4
  287. package/dist/types/components/FooterHelp.d.ts.map +1 -1
  288. package/dist/types/components/Form.d.ts +13 -2
  289. package/dist/types/components/Form.d.ts.map +1 -1
  290. package/dist/types/components/Frame.d.ts +15 -36
  291. package/dist/types/components/Frame.d.ts.map +1 -1
  292. package/dist/types/components/FrameSaveBar.d.ts +3 -6
  293. package/dist/types/components/FrameSaveBar.d.ts.map +1 -1
  294. package/dist/types/components/Grid.d.ts +5 -21
  295. package/dist/types/components/Grid.d.ts.map +1 -1
  296. package/dist/types/components/HorizontalStack.d.ts +1 -34
  297. package/dist/types/components/HorizontalStack.d.ts.map +1 -1
  298. package/dist/types/components/Icon.d.ts +1 -41
  299. package/dist/types/components/Icon.d.ts.map +1 -1
  300. package/dist/types/components/Image.d.ts +1 -43
  301. package/dist/types/components/Image.d.ts.map +1 -1
  302. package/dist/types/components/InlineError.d.ts +1 -20
  303. package/dist/types/components/InlineError.d.ts.map +1 -1
  304. package/dist/types/components/Label.d.ts +1 -26
  305. package/dist/types/components/Label.d.ts.map +1 -1
  306. package/dist/types/components/Layout.d.ts +24 -15
  307. package/dist/types/components/Layout.d.ts.map +1 -1
  308. package/dist/types/components/LayoutSection.d.ts +1 -19
  309. package/dist/types/components/LayoutSection.d.ts.map +1 -1
  310. package/dist/types/components/Link.d.ts +1 -37
  311. package/dist/types/components/Link.d.ts.map +1 -1
  312. package/dist/types/components/List.d.ts +5 -17
  313. package/dist/types/components/List.d.ts.map +1 -1
  314. package/dist/types/components/Listbox.d.ts +1 -32
  315. package/dist/types/components/Listbox.d.ts.map +1 -1
  316. package/dist/types/components/Loading.d.ts +14 -2
  317. package/dist/types/components/Loading.d.ts.map +1 -1
  318. package/dist/types/components/Modal.d.ts +26 -35
  319. package/dist/types/components/Modal.d.ts.map +1 -1
  320. package/dist/types/components/Navigation.d.ts +1 -25
  321. package/dist/types/components/Navigation.d.ts.map +1 -1
  322. package/dist/types/components/Page.d.ts +1 -57
  323. package/dist/types/components/Page.d.ts.map +1 -1
  324. package/dist/types/components/Pagination.d.ts +13 -3
  325. package/dist/types/components/Pagination.d.ts.map +1 -1
  326. package/dist/types/components/Pane.d.ts +55 -3
  327. package/dist/types/components/Pane.d.ts.map +1 -1
  328. package/dist/types/components/Popover.d.ts +5 -35
  329. package/dist/types/components/Popover.d.ts.map +1 -1
  330. package/dist/types/components/PopoverManager.d.ts.map +1 -1
  331. package/dist/types/components/ProgressBar.d.ts +1 -22
  332. package/dist/types/components/ProgressBar.d.ts.map +1 -1
  333. package/dist/types/components/RadioButton.d.ts +1 -37
  334. package/dist/types/components/RadioButton.d.ts.map +1 -1
  335. package/dist/types/components/RadioButtonCard.d.ts +1 -39
  336. package/dist/types/components/RadioButtonCard.d.ts.map +1 -1
  337. package/dist/types/components/RadioButtonCardGroup.d.ts +3 -0
  338. package/dist/types/components/RadioButtonCardGroup.d.ts.map +1 -0
  339. package/dist/types/components/RangeSlider.d.ts +1 -42
  340. package/dist/types/components/RangeSlider.d.ts.map +1 -1
  341. package/dist/types/components/ResourceList.d.ts +5 -30
  342. package/dist/types/components/ResourceList.d.ts.map +1 -1
  343. package/dist/types/components/Select.d.ts +1 -46
  344. package/dist/types/components/Select.d.ts.map +1 -1
  345. package/dist/types/components/SkeletonText.d.ts +1 -26
  346. package/dist/types/components/SkeletonText.d.ts.map +1 -1
  347. package/dist/types/components/Spinner.d.ts +1 -16
  348. package/dist/types/components/Spinner.d.ts.map +1 -1
  349. package/dist/types/components/Stack.d.ts +1 -47
  350. package/dist/types/components/Stack.d.ts.map +1 -1
  351. package/dist/types/components/TabNavigation.d.ts.map +1 -1
  352. package/dist/types/components/Table.d.ts +13 -58
  353. package/dist/types/components/Table.d.ts.map +1 -1
  354. package/dist/types/components/Tabs.d.ts +40 -34
  355. package/dist/types/components/Tabs.d.ts.map +1 -1
  356. package/dist/types/components/Tag.d.ts +1 -24
  357. package/dist/types/components/Tag.d.ts.map +1 -1
  358. package/dist/types/components/Text.d.ts +1 -30
  359. package/dist/types/components/Text.d.ts.map +1 -1
  360. package/dist/types/components/TextField.d.ts +1 -109
  361. package/dist/types/components/TextField.d.ts.map +1 -1
  362. package/dist/types/components/Thumbnail.d.ts +1 -16
  363. package/dist/types/components/Thumbnail.d.ts.map +1 -1
  364. package/dist/types/components/TimePicker.d.ts +28 -1
  365. package/dist/types/components/TimePicker.d.ts.map +1 -1
  366. package/dist/types/components/Tip.d.ts +1 -21
  367. package/dist/types/components/Tip.d.ts.map +1 -1
  368. package/dist/types/components/ToastNotification.d.ts +1 -34
  369. package/dist/types/components/ToastNotification.d.ts.map +1 -1
  370. package/dist/types/components/ToastProvider.d.ts +13 -3
  371. package/dist/types/components/ToastProvider.d.ts.map +1 -1
  372. package/dist/types/components/Tooltip.d.ts +1 -54
  373. package/dist/types/components/Tooltip.d.ts.map +1 -1
  374. package/dist/types/components/TopBar.d.ts +1 -19
  375. package/dist/types/components/TopBar.d.ts.map +1 -1
  376. package/dist/types/components/VerticalStack.d.ts +1 -25
  377. package/dist/types/components/VerticalStack.d.ts.map +1 -1
  378. package/dist/types/index.d.ts +6 -0
  379. package/dist/types/styles/Table.d.ts.map +1 -1
  380. package/index.css +76 -14
  381. package/package.json +15 -5
@@ -0,0 +1,633 @@
1
+ function _array_like_to_array(arr, len) {
2
+ if (len == null || len > arr.length) len = arr.length;
3
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
+ return arr2;
5
+ }
6
+ function _array_with_holes(arr) {
7
+ if (Array.isArray(arr)) return arr;
8
+ }
9
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
10
+ try {
11
+ var info = gen[key](arg);
12
+ var value = info.value;
13
+ } catch (error) {
14
+ reject(error);
15
+ return;
16
+ }
17
+ if (info.done) {
18
+ resolve(value);
19
+ } else {
20
+ Promise.resolve(value).then(_next, _throw);
21
+ }
22
+ }
23
+ function _async_to_generator(fn) {
24
+ return function() {
25
+ var self = this, args = arguments;
26
+ return new Promise(function(resolve, reject) {
27
+ var gen = fn.apply(self, args);
28
+ function _next(value) {
29
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
30
+ }
31
+ function _throw(err) {
32
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
33
+ }
34
+ _next(undefined);
35
+ });
36
+ };
37
+ }
38
+ function _iterable_to_array_limit(arr, i) {
39
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
40
+ if (_i == null) return;
41
+ var _arr = [];
42
+ var _n = true;
43
+ var _d = false;
44
+ var _s, _e;
45
+ try {
46
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
47
+ _arr.push(_s.value);
48
+ if (i && _arr.length === i) break;
49
+ }
50
+ } catch (err) {
51
+ _d = true;
52
+ _e = err;
53
+ } finally{
54
+ try {
55
+ if (!_n && _i["return"] != null) _i["return"]();
56
+ } finally{
57
+ if (_d) throw _e;
58
+ }
59
+ }
60
+ return _arr;
61
+ }
62
+ function _non_iterable_rest() {
63
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
64
+ }
65
+ function _object_destructuring_empty(o) {
66
+ if (o === null || o === void 0) throw new TypeError("Cannot destructure " + o);
67
+ return o;
68
+ }
69
+ function _sliced_to_array(arr, i) {
70
+ return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
71
+ }
72
+ function _unsupported_iterable_to_array(o, minLen) {
73
+ if (!o) return;
74
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
75
+ var n = Object.prototype.toString.call(o).slice(8, -1);
76
+ if (n === "Object" && o.constructor) n = o.constructor.name;
77
+ if (n === "Map" || n === "Set") return Array.from(n);
78
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
79
+ }
80
+ function _ts_generator(thisArg, body) {
81
+ var f, y, t, _ = {
82
+ label: 0,
83
+ sent: function() {
84
+ if (t[0] & 1) throw t[1];
85
+ return t[1];
86
+ },
87
+ trys: [],
88
+ ops: []
89
+ }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
90
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
91
+ return this;
92
+ }), g;
93
+ function verb(n) {
94
+ return function(v) {
95
+ return step([
96
+ n,
97
+ v
98
+ ]);
99
+ };
100
+ }
101
+ function step(op) {
102
+ if (f) throw new TypeError("Generator is already executing.");
103
+ while(g && (g = 0, op[0] && (_ = 0)), _)try {
104
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
105
+ if (y = 0, t) op = [
106
+ op[0] & 2,
107
+ t.value
108
+ ];
109
+ switch(op[0]){
110
+ case 0:
111
+ case 1:
112
+ t = op;
113
+ break;
114
+ case 4:
115
+ _.label++;
116
+ return {
117
+ value: op[1],
118
+ done: false
119
+ };
120
+ case 5:
121
+ _.label++;
122
+ y = op[1];
123
+ op = [
124
+ 0
125
+ ];
126
+ continue;
127
+ case 7:
128
+ op = _.ops.pop();
129
+ _.trys.pop();
130
+ continue;
131
+ default:
132
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
133
+ _ = 0;
134
+ continue;
135
+ }
136
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
137
+ _.label = op[1];
138
+ break;
139
+ }
140
+ if (op[0] === 6 && _.label < t[1]) {
141
+ _.label = t[1];
142
+ t = op;
143
+ break;
144
+ }
145
+ if (t && _.label < t[2]) {
146
+ _.label = t[2];
147
+ _.ops.push(op);
148
+ break;
149
+ }
150
+ if (t[2]) _.ops.pop();
151
+ _.trys.pop();
152
+ continue;
153
+ }
154
+ op = body.call(thisArg, _);
155
+ } catch (e) {
156
+ op = [
157
+ 6,
158
+ e
159
+ ];
160
+ y = 0;
161
+ } finally{
162
+ f = t = 0;
163
+ }
164
+ if (op[0] & 5) throw op[1];
165
+ return {
166
+ value: op[0] ? op[1] : void 0,
167
+ done: true
168
+ };
169
+ }
170
+ }
171
+ function _ts_values(o) {
172
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
173
+ if (m) return m.call(o);
174
+ if (o && typeof o.length === "number") return {
175
+ next: function() {
176
+ if (o && i >= o.length) o = void 0;
177
+ return {
178
+ value: o && o[i++],
179
+ done: !o
180
+ };
181
+ }
182
+ };
183
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
184
+ }
185
+ import { test, expect } from "@playwright/test";
186
+ import { existsSync } from "fs";
187
+ import { dirname, join } from "path";
188
+ import { fileURLToPath } from "url";
189
+ // ES module equivalent of __dirname
190
+ var __dirname = dirname(fileURLToPath(import.meta.url));
191
+ // Check if we should only update missing baselines
192
+ var UPDATE_MISSING_ONLY = process.env.UPDATE_MISSING_ONLY === 'true';
193
+ // Get the snapshots directory path
194
+ var SNAPSHOTS_DIR = join(__dirname, 'stories.spec.js-snapshots');
195
+ // Stories to skip (e.g., ones with heavy animations, interactive-only content, or external images)
196
+ var SKIP_STORIES = [
197
+ // Image stories use picsum.photos with random images - not deterministic
198
+ 'litho-image--default',
199
+ 'litho-image--rounded-prop',
200
+ 'litho-image--border-radius',
201
+ 'litho-image--responsive-image',
202
+ 'litho-image--with-load-callback',
203
+ 'litho-image--profile-cards',
204
+ 'litho-image--product-showcase',
205
+ 'litho-image--image-gallery',
206
+ 'litho-image--banner-images'
207
+ ];
208
+ // Get all stories from Storybook's index
209
+ function getStories(baseURL) {
210
+ return _async_to_generator(function() {
211
+ var response, data, stories, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _step_value, id, entry;
212
+ return _ts_generator(this, function(_state) {
213
+ switch(_state.label){
214
+ case 0:
215
+ return [
216
+ 4,
217
+ fetch("".concat(baseURL, "/index.json"))
218
+ ];
219
+ case 1:
220
+ response = _state.sent();
221
+ return [
222
+ 4,
223
+ response.json()
224
+ ];
225
+ case 2:
226
+ data = _state.sent();
227
+ stories = [];
228
+ _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
229
+ try {
230
+ for(_iterator = Object.entries(data.entries)[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
231
+ _step_value = _sliced_to_array(_step.value, 2), id = _step_value[0], entry = _step_value[1];
232
+ // Skip docs entries
233
+ if (entry.type === 'docs') continue;
234
+ // Skip stories in the skip list
235
+ if (SKIP_STORIES.includes(id)) continue;
236
+ stories.push({
237
+ id: id,
238
+ title: entry.title,
239
+ name: entry.name
240
+ });
241
+ }
242
+ } catch (err) {
243
+ _didIteratorError = true;
244
+ _iteratorError = err;
245
+ } finally{
246
+ try {
247
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
248
+ _iterator.return();
249
+ }
250
+ } finally{
251
+ if (_didIteratorError) {
252
+ throw _iteratorError;
253
+ }
254
+ }
255
+ }
256
+ return [
257
+ 2,
258
+ stories
259
+ ];
260
+ }
261
+ });
262
+ })();
263
+ }
264
+ // Check if baseline exists for a story
265
+ function baselineExists(storyId) {
266
+ var baselinePath = join(SNAPSHOTS_DIR, "".concat(storyId, ".png"));
267
+ return existsSync(baselinePath);
268
+ }
269
+ // Helper to screenshot a single story
270
+ function screenshotStory(page, storyId) {
271
+ return _async_to_generator(function() {
272
+ var storyURL, screenshotName;
273
+ return _ts_generator(this, function(_state) {
274
+ switch(_state.label){
275
+ case 0:
276
+ // Skip if baseline exists and we're only updating missing ones
277
+ if (UPDATE_MISSING_ONLY && baselineExists(storyId)) {
278
+ return [
279
+ 2,
280
+ {
281
+ skipped: true
282
+ }
283
+ ];
284
+ }
285
+ // Navigate to the story iframe URL
286
+ storyURL = "/iframe.html?id=".concat(storyId, "&viewMode=story");
287
+ return [
288
+ 4,
289
+ page.goto(storyURL)
290
+ ];
291
+ case 1:
292
+ _state.sent();
293
+ // Wait for the page to load (don't use networkidle - Storybook keeps connections open)
294
+ return [
295
+ 4,
296
+ page.waitForLoadState('load')
297
+ ];
298
+ case 2:
299
+ _state.sent();
300
+ // Wait for Storybook root element to be present
301
+ return [
302
+ 4,
303
+ page.waitForSelector('#storybook-root', {
304
+ state: 'attached'
305
+ })
306
+ ];
307
+ case 3:
308
+ _state.sent();
309
+ // Wait for fonts to load
310
+ return [
311
+ 4,
312
+ page.evaluate(function() {
313
+ return document.fonts.ready;
314
+ })
315
+ ];
316
+ case 4:
317
+ _state.sent();
318
+ // Wait for all images to load
319
+ return [
320
+ 4,
321
+ page.evaluate(function() {
322
+ var images = Array.from(document.images);
323
+ return Promise.all(images.map(function(img) {
324
+ if (img.complete) return Promise.resolve();
325
+ return new Promise(function(resolve) {
326
+ img.addEventListener('load', resolve);
327
+ img.addEventListener('error', resolve); // Don't fail on broken images
328
+ });
329
+ }));
330
+ })
331
+ ];
332
+ case 5:
333
+ _state.sent();
334
+ // Wait for document to have stable height (content fully rendered)
335
+ // This is critical for fullPage screenshots to capture the correct height
336
+ return [
337
+ 4,
338
+ page.waitForFunction(function() {
339
+ return new Promise(function(resolve) {
340
+ var lastHeight = document.body.scrollHeight;
341
+ var checks = 0;
342
+ var interval = setInterval(function() {
343
+ var currentHeight = document.body.scrollHeight;
344
+ if (currentHeight === lastHeight && currentHeight > 0) {
345
+ checks++;
346
+ if (checks >= 5) {
347
+ clearInterval(interval);
348
+ resolve(true);
349
+ }
350
+ } else {
351
+ lastHeight = currentHeight;
352
+ checks = 0;
353
+ }
354
+ }, 100);
355
+ // Timeout after 5 seconds
356
+ setTimeout(function() {
357
+ clearInterval(interval);
358
+ resolve(true);
359
+ }, 5000);
360
+ });
361
+ })
362
+ ];
363
+ case 6:
364
+ _state.sent();
365
+ // Additional wait for any lazy-loaded content
366
+ return [
367
+ 4,
368
+ page.waitForTimeout(500)
369
+ ];
370
+ case 7:
371
+ _state.sent();
372
+ // Disable animations and hide scrollbars for consistent screenshots
373
+ return [
374
+ 4,
375
+ page.addStyleTag({
376
+ content: "\n *, *::before, *::after {\n animation-duration: 0s !important;\n animation-delay: 0s !important;\n transition-duration: 0s !important;\n transition-delay: 0s !important;\n }\n /* Hide scrollbars to prevent width variations */\n html, body {\n scrollbar-width: none !important;\n -ms-overflow-style: none !important;\n }\n html::-webkit-scrollbar, body::-webkit-scrollbar {\n display: none !important;\n width: 0 !important;\n height: 0 !important;\n }\n "
377
+ })
378
+ ];
379
+ case 8:
380
+ _state.sent();
381
+ // Small wait for any re-renders after disabling animations
382
+ return [
383
+ 4,
384
+ page.waitForTimeout(100)
385
+ ];
386
+ case 9:
387
+ _state.sent();
388
+ // Take screenshot and compare
389
+ screenshotName = "".concat(storyId, ".png");
390
+ return [
391
+ 4,
392
+ expect(page).toHaveScreenshot(screenshotName, {
393
+ fullPage: true,
394
+ animations: 'disabled'
395
+ })
396
+ ];
397
+ case 10:
398
+ _state.sent();
399
+ return [
400
+ 2
401
+ ];
402
+ }
403
+ });
404
+ })();
405
+ }
406
+ // Fetch stories once before all tests
407
+ var storiesList = null;
408
+ test.beforeAll(function(param, testInfo) {
409
+ var ref = _object_destructuring_empty(param);
410
+ return _async_to_generator(function() {
411
+ var baseURL;
412
+ return _ts_generator(this, function(_state) {
413
+ switch(_state.label){
414
+ case 0:
415
+ baseURL = testInfo.project.use.baseURL || 'http://127.0.0.1:6006';
416
+ return [
417
+ 4,
418
+ getStories(baseURL)
419
+ ];
420
+ case 1:
421
+ storiesList = _state.sent();
422
+ return [
423
+ 2
424
+ ];
425
+ }
426
+ });
427
+ })();
428
+ });
429
+ test.describe('Visual Regression Tests', function() {
430
+ test('should have stories to test', function() {
431
+ return _async_to_generator(function() {
432
+ return _ts_generator(this, function(_state) {
433
+ // This test runs first to ensure stories are loaded
434
+ expect(storiesList).not.toBeNull();
435
+ expect(storiesList.length).toBeGreaterThan(0);
436
+ return [
437
+ 2
438
+ ];
439
+ });
440
+ })();
441
+ });
442
+ });
443
+ // Generate individual tests for each story
444
+ // Note: We use a wrapper test that iterates because Playwright needs
445
+ // static test definitions at collection time
446
+ test.describe('Component Screenshots', function() {
447
+ // Disable retries - we handle errors ourselves and continue through all stories
448
+ test.describe.configure({
449
+ retries: 0
450
+ });
451
+ test('capture all component stories', function(param, testInfo) {
452
+ var page = param.page;
453
+ return _async_to_generator(function() {
454
+ var baseURL, completed, skipped, failed, failures, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _loop, _iterator, _step, err, _iteratorNormalCompletion1, _didIteratorError1, _iteratorError1, _iterator1, _step1, f;
455
+ return _ts_generator(this, function(_state) {
456
+ switch(_state.label){
457
+ case 0:
458
+ // 20 minutes for all stories (500+ stories at ~2s each in CI)
459
+ test.setTimeout(1200000);
460
+ baseURL = testInfo.project.use.baseURL || 'http://127.0.0.1:6006';
461
+ if (!!storiesList) return [
462
+ 3,
463
+ 2
464
+ ];
465
+ return [
466
+ 4,
467
+ getStories(baseURL)
468
+ ];
469
+ case 1:
470
+ storiesList = _state.sent();
471
+ _state.label = 2;
472
+ case 2:
473
+ // Run each story, collecting failures to report at the end
474
+ completed = 0;
475
+ skipped = 0;
476
+ failed = 0;
477
+ failures = [];
478
+ _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
479
+ _state.label = 3;
480
+ case 3:
481
+ _state.trys.push([
482
+ 3,
483
+ 8,
484
+ 9,
485
+ 10
486
+ ]);
487
+ _loop = function() {
488
+ var story;
489
+ return _ts_generator(this, function(_state) {
490
+ switch(_state.label){
491
+ case 0:
492
+ story = _step.value;
493
+ return [
494
+ 4,
495
+ test.step("".concat(story.title, " - ").concat(story.name), function() {
496
+ return _async_to_generator(function() {
497
+ var result, error;
498
+ return _ts_generator(this, function(_state) {
499
+ switch(_state.label){
500
+ case 0:
501
+ _state.trys.push([
502
+ 0,
503
+ 2,
504
+ ,
505
+ 3
506
+ ]);
507
+ return [
508
+ 4,
509
+ screenshotStory(page, story.id)
510
+ ];
511
+ case 1:
512
+ result = _state.sent();
513
+ if (result === null || result === void 0 ? void 0 : result.skipped) {
514
+ skipped++;
515
+ console.log(" [".concat(completed + skipped + failed, "/").concat(storiesList.length, "] SKIPPED: ").concat(story.id));
516
+ } else {
517
+ completed++;
518
+ console.log(" [".concat(completed + skipped + failed, "/").concat(storiesList.length, "] ✓ ").concat(story.id));
519
+ }
520
+ return [
521
+ 3,
522
+ 3
523
+ ];
524
+ case 2:
525
+ error = _state.sent();
526
+ failed++;
527
+ failures.push({
528
+ story: story.id,
529
+ error: error.message
530
+ });
531
+ console.log(" [".concat(completed + skipped + failed, "/").concat(storiesList.length, "] ✗ ").concat(story.id, ": ").concat(error.message.split('\n')[0]));
532
+ return [
533
+ 3,
534
+ 3
535
+ ];
536
+ case 3:
537
+ return [
538
+ 2
539
+ ];
540
+ }
541
+ });
542
+ })();
543
+ })
544
+ ];
545
+ case 1:
546
+ _state.sent();
547
+ return [
548
+ 2
549
+ ];
550
+ }
551
+ });
552
+ };
553
+ _iterator = storiesList[Symbol.iterator]();
554
+ _state.label = 4;
555
+ case 4:
556
+ if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done)) return [
557
+ 3,
558
+ 7
559
+ ];
560
+ return [
561
+ 5,
562
+ _ts_values(_loop())
563
+ ];
564
+ case 5:
565
+ _state.sent();
566
+ _state.label = 6;
567
+ case 6:
568
+ _iteratorNormalCompletion = true;
569
+ return [
570
+ 3,
571
+ 4
572
+ ];
573
+ case 7:
574
+ return [
575
+ 3,
576
+ 10
577
+ ];
578
+ case 8:
579
+ err = _state.sent();
580
+ _didIteratorError = true;
581
+ _iteratorError = err;
582
+ return [
583
+ 3,
584
+ 10
585
+ ];
586
+ case 9:
587
+ try {
588
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
589
+ _iterator.return();
590
+ }
591
+ } finally{
592
+ if (_didIteratorError) {
593
+ throw _iteratorError;
594
+ }
595
+ }
596
+ return [
597
+ 7
598
+ ];
599
+ case 10:
600
+ console.log("\n========================================");
601
+ console.log("Completed: ".concat(completed, ", Skipped: ").concat(skipped, ", Failed: ").concat(failed, ", Total: ").concat(storiesList.length));
602
+ if (failures.length > 0) {
603
+ console.log("\nFailed stories:");
604
+ _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = undefined;
605
+ try {
606
+ for(_iterator1 = failures[Symbol.iterator](); !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true){
607
+ f = _step1.value;
608
+ console.log(" - ".concat(f.story));
609
+ }
610
+ } catch (err) {
611
+ _didIteratorError1 = true;
612
+ _iteratorError1 = err;
613
+ } finally{
614
+ try {
615
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
616
+ _iterator1.return();
617
+ }
618
+ } finally{
619
+ if (_didIteratorError1) {
620
+ throw _iteratorError1;
621
+ }
622
+ }
623
+ }
624
+ throw new Error("".concat(failures.length, " story screenshot(s) failed. See logs above for details."));
625
+ }
626
+ return [
627
+ 2
628
+ ];
629
+ }
630
+ });
631
+ })();
632
+ });
633
+ });
@@ -89,7 +89,7 @@ export var HOURLY_RANGE_PRESETS = [
89
89
  id: "last_30_minutes",
90
90
  label: "Last 30 minutes",
91
91
  value: {
92
- start: dayjs().startOf("minute").subtract(29, "minutes").toDate(),
92
+ start: dayjs().subtract(30, "minutes").startOf("minute").toDate(),
93
93
  end: dayjs().endOf("minute").toDate()
94
94
  }
95
95
  },
@@ -123,7 +123,7 @@ export var RANGE_PRESETS = [
123
123
  id: "last_12_hours",
124
124
  label: "Last 12 hours",
125
125
  value: {
126
- start: dayjs().subtract(11, "hours").startOf("hour").toDate(),
126
+ start: dayjs().subtract(12, "hours").startOf("hour").toDate(),
127
127
  end: dayjs().endOf("hour").toDate()
128
128
  }
129
129
  },
@@ -132,7 +132,7 @@ export var RANGE_PRESETS = [
132
132
  hideCalendar: true,
133
133
  label: "Last 24 hours",
134
134
  value: {
135
- start: dayjs().subtract(23, "hours").startOf("hour").toDate(),
135
+ start: dayjs().subtract(24, "hours").startOf("hour").toDate(),
136
136
  end: dayjs().endOf("hour").toDate()
137
137
  }
138
138
  },
@@ -140,7 +140,7 @@ export var RANGE_PRESETS = [
140
140
  id: "last_7_days",
141
141
  label: "Last 7 days",
142
142
  value: {
143
- start: dayjs().subtract(6, "day").startOf("day").toDate(),
143
+ start: dayjs().subtract(7, "day").startOf("day").toDate(),
144
144
  end: dayjs().endOf("day").toDate()
145
145
  }
146
146
  },
@@ -148,7 +148,7 @@ export var RANGE_PRESETS = [
148
148
  id: "last_14_days",
149
149
  label: "Last 14 days",
150
150
  value: {
151
- start: dayjs().subtract(13, "day").startOf("day").toDate(),
151
+ start: dayjs().subtract(14, "day").startOf("day").toDate(),
152
152
  end: dayjs().endOf("day").toDate()
153
153
  }
154
154
  },
@@ -156,7 +156,7 @@ export var RANGE_PRESETS = [
156
156
  id: "last_30_days",
157
157
  label: "Last 30 days",
158
158
  value: {
159
- start: dayjs().subtract(29, "day").startOf("day").toDate(),
159
+ start: dayjs().subtract(30, "day").startOf("day").toDate(),
160
160
  end: dayjs().endOf("day").toDate()
161
161
  }
162
162
  },
@@ -164,7 +164,7 @@ export var RANGE_PRESETS = [
164
164
  id: "last_90_days",
165
165
  label: "Last 90 days",
166
166
  value: {
167
- start: dayjs().subtract(89, "day").startOf("day").toDate(),
167
+ start: dayjs().subtract(90, "day").startOf("day").toDate(),
168
168
  end: dayjs().endOf("day").toDate()
169
169
  }
170
170
  },