@heymantle/litho 0.0.3 → 0.0.4

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 (353) hide show
  1. package/dist/cjs/components/ActionList.js +50 -16
  2. package/dist/cjs/components/AnnouncementBar.js +10 -3
  3. package/dist/cjs/components/AppProvider.js +10 -1
  4. package/dist/cjs/components/Autocomplete.js +33 -11
  5. package/dist/cjs/components/Badge.js +2 -1
  6. package/dist/cjs/components/Banner.js +35 -31
  7. package/dist/cjs/components/Box.js +5 -3
  8. package/dist/cjs/components/Button.js +34 -12
  9. package/dist/cjs/components/Card.js +5 -45
  10. package/dist/cjs/components/Checkbox.js +16 -6
  11. package/dist/cjs/components/ChoiceList.js +7 -4
  12. package/dist/cjs/components/ColorField.js +8 -3
  13. package/dist/cjs/components/DatePicker.js +13 -8
  14. package/dist/cjs/components/DropZone.js +33 -18
  15. package/dist/cjs/components/EmptyState.js +15 -7
  16. package/dist/cjs/components/Filters.js +32 -20
  17. package/dist/cjs/components/FooterHelp.js +7 -2
  18. package/dist/cjs/components/Form.js +18 -3
  19. package/dist/cjs/components/Frame.js +40 -15
  20. package/dist/cjs/components/FrameSaveBar.js +21 -12
  21. package/dist/cjs/components/Layout.js +3 -3
  22. package/dist/cjs/components/LayoutSection.js +2 -2
  23. package/dist/cjs/components/Link.js +6 -2
  24. package/dist/cjs/components/List.js +1 -0
  25. package/dist/cjs/components/Listbox.js +9 -4
  26. package/dist/cjs/components/Modal.js +26 -17
  27. package/dist/cjs/components/Navigation.js +30 -20
  28. package/dist/cjs/components/Page.js +8 -3
  29. package/dist/cjs/components/Pagination.js +11 -4
  30. package/dist/cjs/components/Pane.js +118 -35
  31. package/dist/cjs/components/Popover.js +59 -6
  32. package/dist/cjs/components/RangeSlider.js +11 -4
  33. package/dist/cjs/components/ResourceList.js +9 -3
  34. package/dist/cjs/components/Select.js +2 -0
  35. package/dist/cjs/components/Table.js +32 -19
  36. package/dist/cjs/components/Text.js +8 -5
  37. package/dist/cjs/components/TextField.js +23 -13
  38. package/dist/cjs/components/Thumbnail.js +7 -2
  39. package/dist/cjs/components/TimePicker.js +7 -2
  40. package/dist/cjs/components/Tip.js +10 -4
  41. package/dist/cjs/components/Tooltip.js +16 -8
  42. package/dist/cjs/components/TopBar.js +17 -9
  43. package/dist/cjs/dev/verify-publish.js +37 -4
  44. package/dist/cjs/postcss.config.js +21 -0
  45. package/dist/cjs/stories/ActionList.stories.js +365 -0
  46. package/dist/cjs/stories/AnnouncementBar.stories.js +244 -0
  47. package/dist/cjs/stories/Autocomplete.stories.js +871 -0
  48. package/dist/cjs/stories/Badge.stories.js +183 -0
  49. package/dist/cjs/stories/Banner.stories.js +201 -0
  50. package/dist/cjs/stories/Box.stories.js +599 -0
  51. package/dist/cjs/stories/Button.stories.js +325 -0
  52. package/dist/cjs/stories/ButtonGroup.stories.js +404 -0
  53. package/dist/cjs/stories/Card.stories.js +278 -0
  54. package/dist/cjs/stories/Checkbox.stories.js +266 -0
  55. package/dist/cjs/stories/ChoiceList.stories.js +884 -0
  56. package/dist/cjs/stories/Collapsible.stories.js +905 -0
  57. package/dist/cjs/stories/ColorField.stories.js +883 -0
  58. package/dist/cjs/stories/ContextualSaveBar.stories.js +970 -0
  59. package/dist/cjs/stories/DatePicker.stories.js +584 -0
  60. package/dist/cjs/stories/Divider.stories.js +759 -0
  61. package/dist/cjs/stories/DropZone.stories.js +1205 -0
  62. package/dist/cjs/stories/EmptyState.stories.js +296 -0
  63. package/dist/cjs/stories/Filters.stories.js +1353 -0
  64. package/dist/cjs/stories/FooterHelp.stories.js +869 -0
  65. package/dist/cjs/stories/Form.stories.js +940 -0
  66. package/dist/cjs/stories/Grid.stories.js +1199 -0
  67. package/dist/cjs/stories/HorizontalStack.stories.js +1064 -0
  68. package/dist/cjs/stories/Icon.stories.js +596 -0
  69. package/dist/cjs/stories/Image.stories.js +883 -0
  70. package/dist/cjs/stories/InlineError.stories.js +710 -0
  71. package/dist/cjs/stories/Label.stories.js +665 -0
  72. package/dist/cjs/stories/Layout.stories.js +685 -0
  73. package/dist/cjs/stories/LayoutSection.stories.js +1267 -0
  74. package/dist/cjs/stories/Link.stories.js +423 -0
  75. package/dist/cjs/stories/List.stories.js +1031 -0
  76. package/dist/cjs/stories/Listbox.stories.js +820 -0
  77. package/dist/cjs/stories/Loading.stories.js +900 -0
  78. package/dist/cjs/stories/Modal.stories.js +363 -0
  79. package/dist/cjs/stories/Navigation.stories.js +605 -0
  80. package/dist/cjs/stories/Page.stories.js +318 -0
  81. package/dist/cjs/stories/Pagination.stories.js +438 -0
  82. package/dist/cjs/stories/Pane.stories.js +1535 -0
  83. package/dist/cjs/stories/Popover.stories.js +637 -0
  84. package/dist/cjs/stories/PopoverManager.stories.js +1225 -0
  85. package/dist/cjs/stories/ProgressBar.stories.js +506 -0
  86. package/dist/cjs/stories/RadioButton.stories.js +642 -0
  87. package/dist/cjs/stories/RadioButtonCard.stories.js +816 -0
  88. package/dist/cjs/stories/RangeSlider.stories.js +892 -0
  89. package/dist/cjs/stories/ResourceList.stories.js +1067 -0
  90. package/dist/cjs/stories/Select.stories.js +413 -0
  91. package/dist/cjs/stories/SkeletonText.stories.js +776 -0
  92. package/dist/cjs/stories/Spinner.stories.js +396 -0
  93. package/dist/cjs/stories/Table.stories.js +628 -0
  94. package/dist/cjs/stories/Tabs.stories.js +723 -0
  95. package/dist/cjs/stories/Tag.stories.js +620 -0
  96. package/dist/cjs/stories/Text.stories.js +262 -0
  97. package/dist/cjs/stories/TextField.stories.js +377 -0
  98. package/dist/cjs/stories/Thumbnail.stories.js +859 -0
  99. package/dist/cjs/stories/TimePicker.stories.js +966 -0
  100. package/dist/cjs/stories/Tip.stories.js +753 -0
  101. package/dist/cjs/stories/Tooltip.stories.js +357 -0
  102. package/dist/cjs/stories/TopBar.stories.js +155 -0
  103. package/dist/cjs/stories/VerticalStack.stories.js +1287 -0
  104. package/dist/cjs/tailwind.config.js +17 -0
  105. package/dist/cjs/utilities/transformers.js +66 -0
  106. package/dist/cjs/vite.config.js +35 -0
  107. package/dist/esm/components/ActionList.js +41 -12
  108. package/dist/esm/components/AnnouncementBar.js +3 -1
  109. package/dist/esm/components/AppProvider.js +10 -1
  110. package/dist/esm/components/Autocomplete.js +21 -4
  111. package/dist/esm/components/Badge.js +2 -2
  112. package/dist/esm/components/Banner.js +20 -21
  113. package/dist/esm/components/Box.js +5 -4
  114. package/dist/esm/components/Button.js +24 -7
  115. package/dist/esm/components/Card.js +5 -4
  116. package/dist/esm/components/Checkbox.js +6 -1
  117. package/dist/esm/components/ChoiceList.js +7 -4
  118. package/dist/esm/components/ColorField.js +1 -1
  119. package/dist/esm/components/DatePicker.js +6 -1
  120. package/dist/esm/components/DropZone.js +14 -4
  121. package/dist/esm/components/EmptyState.js +4 -1
  122. package/dist/esm/components/Filters.js +10 -3
  123. package/dist/esm/components/FooterHelp.js +1 -1
  124. package/dist/esm/components/Form.js +18 -3
  125. package/dist/esm/components/Frame.js +18 -6
  126. package/dist/esm/components/FrameSaveBar.js +10 -6
  127. package/dist/esm/components/InlineError.js +1 -1
  128. package/dist/esm/components/Layout.js +4 -4
  129. package/dist/esm/components/LayoutSection.js +2 -2
  130. package/dist/esm/components/Link.js +6 -2
  131. package/dist/esm/components/List.js +1 -0
  132. package/dist/esm/components/Listbox.js +4 -4
  133. package/dist/esm/components/Modal.js +8 -4
  134. package/dist/esm/components/Navigation.js +16 -11
  135. package/dist/esm/components/Page.js +9 -4
  136. package/dist/esm/components/Pagination.js +3 -1
  137. package/dist/esm/components/Pane.js +114 -36
  138. package/dist/esm/components/Popover.js +18 -6
  139. package/dist/esm/components/RangeSlider.js +3 -1
  140. package/dist/esm/components/ResourceList.js +2 -1
  141. package/dist/esm/components/Select.js +2 -0
  142. package/dist/esm/components/Table.js +16 -3
  143. package/dist/esm/components/Text.js +8 -6
  144. package/dist/esm/components/TextField.js +6 -1
  145. package/dist/esm/components/Thumbnail.js +1 -1
  146. package/dist/esm/components/TimePicker.js +1 -1
  147. package/dist/esm/components/Tip.js +3 -2
  148. package/dist/esm/components/Tooltip.js +4 -1
  149. package/dist/esm/components/TopBar.js +7 -4
  150. package/dist/esm/dev/verify-publish.js +37 -4
  151. package/dist/esm/postcss.config.js +6 -0
  152. package/dist/esm/stories/ActionList.stories.js +327 -0
  153. package/dist/esm/stories/AnnouncementBar.stories.js +212 -0
  154. package/dist/esm/stories/Autocomplete.stories.js +833 -0
  155. package/dist/esm/stories/Badge.stories.js +138 -0
  156. package/dist/esm/stories/Banner.stories.js +159 -0
  157. package/dist/esm/stories/Box.stories.js +558 -0
  158. package/dist/esm/stories/Button.stories.js +277 -0
  159. package/dist/esm/stories/ButtonGroup.stories.js +357 -0
  160. package/dist/esm/stories/Card.stories.js +240 -0
  161. package/dist/esm/stories/Checkbox.stories.js +219 -0
  162. package/dist/esm/stories/ChoiceList.stories.js +834 -0
  163. package/dist/esm/stories/Collapsible.stories.js +867 -0
  164. package/dist/esm/stories/ColorField.stories.js +842 -0
  165. package/dist/esm/stories/ContextualSaveBar.stories.js +938 -0
  166. package/dist/esm/stories/DatePicker.stories.js +537 -0
  167. package/dist/esm/stories/Divider.stories.js +715 -0
  168. package/dist/esm/stories/DropZone.stories.js +1161 -0
  169. package/dist/esm/stories/EmptyState.stories.js +246 -0
  170. package/dist/esm/stories/Filters.stories.js +1315 -0
  171. package/dist/esm/stories/FooterHelp.stories.js +813 -0
  172. package/dist/esm/stories/Form.stories.js +905 -0
  173. package/dist/esm/stories/Grid.stories.js +1152 -0
  174. package/dist/esm/stories/HorizontalStack.stories.js +1011 -0
  175. package/dist/esm/stories/Icon.stories.js +555 -0
  176. package/dist/esm/stories/Image.stories.js +836 -0
  177. package/dist/esm/stories/InlineError.stories.js +666 -0
  178. package/dist/esm/stories/Label.stories.js +612 -0
  179. package/dist/esm/stories/Layout.stories.js +647 -0
  180. package/dist/esm/stories/LayoutSection.stories.js +1226 -0
  181. package/dist/esm/stories/Link.stories.js +379 -0
  182. package/dist/esm/stories/List.stories.js +975 -0
  183. package/dist/esm/stories/Listbox.stories.js +776 -0
  184. package/dist/esm/stories/Loading.stories.js +850 -0
  185. package/dist/esm/stories/Modal.stories.js +322 -0
  186. package/dist/esm/stories/Navigation.stories.js +567 -0
  187. package/dist/esm/stories/Page.stories.js +276 -0
  188. package/dist/esm/stories/Pagination.stories.js +394 -0
  189. package/dist/esm/stories/Pane.stories.js +1497 -0
  190. package/dist/esm/stories/Popover.stories.js +605 -0
  191. package/dist/esm/stories/PopoverManager.stories.js +1193 -0
  192. package/dist/esm/stories/ProgressBar.stories.js +465 -0
  193. package/dist/esm/stories/RadioButton.stories.js +598 -0
  194. package/dist/esm/stories/RadioButtonCard.stories.js +772 -0
  195. package/dist/esm/stories/RangeSlider.stories.js +845 -0
  196. package/dist/esm/stories/ResourceList.stories.js +1029 -0
  197. package/dist/esm/stories/Select.stories.js +363 -0
  198. package/dist/esm/stories/SkeletonText.stories.js +717 -0
  199. package/dist/esm/stories/Spinner.stories.js +355 -0
  200. package/dist/esm/stories/Table.stories.js +584 -0
  201. package/dist/esm/stories/Tabs.stories.js +685 -0
  202. package/dist/esm/stories/Tag.stories.js +573 -0
  203. package/dist/esm/stories/Text.stories.js +217 -0
  204. package/dist/esm/stories/TextField.stories.js +332 -0
  205. package/dist/esm/stories/Thumbnail.stories.js +806 -0
  206. package/dist/esm/stories/TimePicker.stories.js +910 -0
  207. package/dist/esm/stories/Tip.stories.js +706 -0
  208. package/dist/esm/stories/Tooltip.stories.js +313 -0
  209. package/dist/esm/stories/TopBar.stories.js +114 -0
  210. package/dist/esm/stories/VerticalStack.stories.js +1240 -0
  211. package/dist/esm/tailwind.config.js +7 -0
  212. package/dist/esm/utilities/transformers.js +47 -0
  213. package/dist/esm/vite.config.js +20 -0
  214. package/dist/types/components/ActionList.d.ts +122 -0
  215. package/dist/types/components/ActionList.d.ts.map +1 -0
  216. package/dist/types/components/AnnouncementBar.d.ts +21 -0
  217. package/dist/types/components/AnnouncementBar.d.ts.map +1 -0
  218. package/dist/types/components/AppProvider.d.ts +61 -0
  219. package/dist/types/components/AppProvider.d.ts.map +1 -0
  220. package/dist/types/components/Autocomplete.d.ts +130 -0
  221. package/dist/types/components/Autocomplete.d.ts.map +1 -0
  222. package/dist/types/components/Badge.d.ts +21 -0
  223. package/dist/types/components/Badge.d.ts.map +1 -0
  224. package/dist/types/components/Banner.d.ts +78 -0
  225. package/dist/types/components/Banner.d.ts.map +1 -0
  226. package/dist/types/components/Box.d.ts +70 -0
  227. package/dist/types/components/Box.d.ts.map +1 -0
  228. package/dist/types/components/Button.d.ts +123 -0
  229. package/dist/types/components/Button.d.ts.map +1 -0
  230. package/dist/types/components/ButtonGroup.d.ts +26 -0
  231. package/dist/types/components/ButtonGroup.d.ts.map +1 -0
  232. package/dist/types/components/Card.d.ts +139 -0
  233. package/dist/types/components/Card.d.ts.map +1 -0
  234. package/dist/types/components/Checkbox.d.ts +56 -0
  235. package/dist/types/components/Checkbox.d.ts.map +1 -0
  236. package/dist/types/components/ChoiceList.d.ts +69 -0
  237. package/dist/types/components/ChoiceList.d.ts.map +1 -0
  238. package/dist/types/components/Collapsible.d.ts +17 -0
  239. package/dist/types/components/Collapsible.d.ts.map +1 -0
  240. package/dist/types/components/ColorField.d.ts +36 -0
  241. package/dist/types/components/ColorField.d.ts.map +1 -0
  242. package/dist/types/components/ContextualSaveBar.d.ts +22 -0
  243. package/dist/types/components/ContextualSaveBar.d.ts.map +1 -0
  244. package/dist/types/components/DatePicker.d.ts +66 -0
  245. package/dist/types/components/DatePicker.d.ts.map +1 -0
  246. package/dist/types/components/Divider.d.ts +21 -0
  247. package/dist/types/components/Divider.d.ts.map +1 -0
  248. package/dist/types/components/DropZone.d.ts +108 -0
  249. package/dist/types/components/DropZone.d.ts.map +1 -0
  250. package/dist/types/components/EmptyState.d.ts +52 -0
  251. package/dist/types/components/EmptyState.d.ts.map +1 -0
  252. package/dist/types/components/Filters.d.ts +166 -0
  253. package/dist/types/components/Filters.d.ts.map +1 -0
  254. package/dist/types/components/FooterHelp.d.ts +21 -0
  255. package/dist/types/components/FooterHelp.d.ts.map +1 -0
  256. package/dist/types/components/Form.d.ts +39 -0
  257. package/dist/types/components/Form.d.ts.map +1 -0
  258. package/dist/types/components/Frame.d.ts +51 -0
  259. package/dist/types/components/Frame.d.ts.map +1 -0
  260. package/dist/types/components/FrameSaveBar.d.ts +8 -0
  261. package/dist/types/components/FrameSaveBar.d.ts.map +1 -0
  262. package/dist/types/components/Grid.d.ts +39 -0
  263. package/dist/types/components/Grid.d.ts.map +1 -0
  264. package/dist/types/components/HorizontalStack.d.ts +36 -0
  265. package/dist/types/components/HorizontalStack.d.ts.map +1 -0
  266. package/dist/types/components/Icon.d.ts +43 -0
  267. package/dist/types/components/Icon.d.ts.map +1 -0
  268. package/dist/types/components/Image.d.ts +45 -0
  269. package/dist/types/components/Image.d.ts.map +1 -0
  270. package/dist/types/components/InlineError.d.ts +22 -0
  271. package/dist/types/components/InlineError.d.ts.map +1 -0
  272. package/dist/types/components/Label.d.ts +28 -0
  273. package/dist/types/components/Label.d.ts.map +1 -0
  274. package/dist/types/components/Layout.d.ts +44 -0
  275. package/dist/types/components/Layout.d.ts.map +1 -0
  276. package/dist/types/components/LayoutSection.d.ts +24 -0
  277. package/dist/types/components/LayoutSection.d.ts.map +1 -0
  278. package/dist/types/components/Link.d.ts +38 -0
  279. package/dist/types/components/Link.d.ts.map +1 -0
  280. package/dist/types/components/List.d.ts +33 -0
  281. package/dist/types/components/List.d.ts.map +1 -0
  282. package/dist/types/components/Listbox.d.ts +34 -0
  283. package/dist/types/components/Listbox.d.ts.map +1 -0
  284. package/dist/types/components/Loading.d.ts +13 -0
  285. package/dist/types/components/Loading.d.ts.map +1 -0
  286. package/dist/types/components/Modal.d.ts +75 -0
  287. package/dist/types/components/Modal.d.ts.map +1 -0
  288. package/dist/types/components/Navigation.d.ts +105 -0
  289. package/dist/types/components/Navigation.d.ts.map +1 -0
  290. package/dist/types/components/Page.d.ts +59 -0
  291. package/dist/types/components/Page.d.ts.map +1 -0
  292. package/dist/types/components/Pagination.d.ts +39 -0
  293. package/dist/types/components/Pagination.d.ts.map +1 -0
  294. package/dist/types/components/Pane.d.ts +11 -0
  295. package/dist/types/components/Pane.d.ts.map +1 -0
  296. package/dist/types/components/Popover.d.ts +56 -0
  297. package/dist/types/components/Popover.d.ts.map +1 -0
  298. package/dist/types/components/PopoverManager.d.ts +3 -0
  299. package/dist/types/components/PopoverManager.d.ts.map +1 -0
  300. package/dist/types/components/ProgressBar.d.ts +24 -0
  301. package/dist/types/components/ProgressBar.d.ts.map +1 -0
  302. package/dist/types/components/RadioButton.d.ts +39 -0
  303. package/dist/types/components/RadioButton.d.ts.map +1 -0
  304. package/dist/types/components/RadioButtonCard.d.ts +41 -0
  305. package/dist/types/components/RadioButtonCard.d.ts.map +1 -0
  306. package/dist/types/components/RangeSlider.d.ts +44 -0
  307. package/dist/types/components/RangeSlider.d.ts.map +1 -0
  308. package/dist/types/components/ResourceList.d.ts +54 -0
  309. package/dist/types/components/ResourceList.d.ts.map +1 -0
  310. package/dist/types/components/Select.d.ts +48 -0
  311. package/dist/types/components/Select.d.ts.map +1 -0
  312. package/dist/types/components/SkeletonText.d.ts +28 -0
  313. package/dist/types/components/SkeletonText.d.ts.map +1 -0
  314. package/dist/types/components/Spinner.d.ts +18 -0
  315. package/dist/types/components/Spinner.d.ts.map +1 -0
  316. package/dist/types/components/Table.d.ts +197 -0
  317. package/dist/types/components/Table.d.ts.map +1 -0
  318. package/dist/types/components/Tabs.d.ts +41 -0
  319. package/dist/types/components/Tabs.d.ts.map +1 -0
  320. package/dist/types/components/Tag.d.ts +26 -0
  321. package/dist/types/components/Tag.d.ts.map +1 -0
  322. package/dist/types/components/Text.d.ts +32 -0
  323. package/dist/types/components/Text.d.ts.map +1 -0
  324. package/dist/types/components/TextField.d.ts +109 -0
  325. package/dist/types/components/TextField.d.ts.map +1 -0
  326. package/dist/types/components/Thumbnail.d.ts +18 -0
  327. package/dist/types/components/Thumbnail.d.ts.map +1 -0
  328. package/dist/types/components/TimePicker.d.ts +3 -0
  329. package/dist/types/components/TimePicker.d.ts.map +1 -0
  330. package/dist/types/components/Tip.d.ts +23 -0
  331. package/dist/types/components/Tip.d.ts.map +1 -0
  332. package/dist/types/components/Tooltip.d.ts +84 -0
  333. package/dist/types/components/Tooltip.d.ts.map +1 -0
  334. package/dist/types/components/TopBar.d.ts +43 -0
  335. package/dist/types/components/TopBar.d.ts.map +1 -0
  336. package/dist/types/components/VerticalStack.d.ts +27 -0
  337. package/dist/types/components/VerticalStack.d.ts.map +1 -0
  338. package/dist/types/index.d.ts +62 -0
  339. package/dist/types/index.d.ts.map +1 -0
  340. package/dist/types/styles/Table.d.ts +1570 -0
  341. package/dist/types/styles/Table.d.ts.map +1 -0
  342. package/dist/types/utilities/dates.d.ts +46 -0
  343. package/dist/types/utilities/dates.d.ts.map +1 -0
  344. package/dist/types/utilities/transformers.d.ts +4 -0
  345. package/dist/types/utilities/transformers.d.ts.map +1 -0
  346. package/dist/types/utilities/useIndexResourceState.d.ts +21 -0
  347. package/dist/types/utilities/useIndexResourceState.d.ts.map +1 -0
  348. package/dist/types/utilities/useMounted.d.ts +2 -0
  349. package/dist/types/utilities/useMounted.d.ts.map +1 -0
  350. package/dist/types/utilities/useTableScrollState.d.ts +29 -0
  351. package/dist/types/utilities/useTableScrollState.d.ts.map +1 -0
  352. package/index.css +6 -0
  353. package/package.json +37 -6
@@ -0,0 +1,836 @@
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 _define_property(obj, key, value) {
10
+ if (key in obj) {
11
+ Object.defineProperty(obj, key, {
12
+ value: value,
13
+ enumerable: true,
14
+ configurable: true,
15
+ writable: true
16
+ });
17
+ } else {
18
+ obj[key] = value;
19
+ }
20
+ return obj;
21
+ }
22
+ function _iterable_to_array_limit(arr, i) {
23
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
24
+ if (_i == null) return;
25
+ var _arr = [];
26
+ var _n = true;
27
+ var _d = false;
28
+ var _s, _e;
29
+ try {
30
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
31
+ _arr.push(_s.value);
32
+ if (i && _arr.length === i) break;
33
+ }
34
+ } catch (err) {
35
+ _d = true;
36
+ _e = err;
37
+ } finally{
38
+ try {
39
+ if (!_n && _i["return"] != null) _i["return"]();
40
+ } finally{
41
+ if (_d) throw _e;
42
+ }
43
+ }
44
+ return _arr;
45
+ }
46
+ function _non_iterable_rest() {
47
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
48
+ }
49
+ function _object_spread(target) {
50
+ for(var i = 1; i < arguments.length; i++){
51
+ var source = arguments[i] != null ? arguments[i] : {};
52
+ var ownKeys = Object.keys(source);
53
+ if (typeof Object.getOwnPropertySymbols === "function") {
54
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
55
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
56
+ }));
57
+ }
58
+ ownKeys.forEach(function(key) {
59
+ _define_property(target, key, source[key]);
60
+ });
61
+ }
62
+ return target;
63
+ }
64
+ function ownKeys(object, enumerableOnly) {
65
+ var keys = Object.keys(object);
66
+ if (Object.getOwnPropertySymbols) {
67
+ var symbols = Object.getOwnPropertySymbols(object);
68
+ if (enumerableOnly) {
69
+ symbols = symbols.filter(function(sym) {
70
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
71
+ });
72
+ }
73
+ keys.push.apply(keys, symbols);
74
+ }
75
+ return keys;
76
+ }
77
+ function _object_spread_props(target, source) {
78
+ source = source != null ? source : {};
79
+ if (Object.getOwnPropertyDescriptors) {
80
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
81
+ } else {
82
+ ownKeys(Object(source)).forEach(function(key) {
83
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
84
+ });
85
+ }
86
+ return target;
87
+ }
88
+ function _sliced_to_array(arr, i) {
89
+ return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
90
+ }
91
+ function _unsupported_iterable_to_array(o, minLen) {
92
+ if (!o) return;
93
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
94
+ var n = Object.prototype.toString.call(o).slice(8, -1);
95
+ if (n === "Object" && o.constructor) n = o.constructor.name;
96
+ if (n === "Map" || n === "Set") return Array.from(n);
97
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
98
+ }
99
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
100
+ import { transformStorySource } from "../utilities/transformers.js";
101
+ import Image from "../components/Image.js";
102
+ import Text from "../components/Text.js";
103
+ import Card from "../components/Card.js";
104
+ import Button from "../components/Button.js";
105
+ import HorizontalStack from "../components/HorizontalStack.js";
106
+ import VerticalStack from "../components/VerticalStack.js";
107
+ import Box from "../components/Box.js";
108
+ import Grid from "../components/Grid.js";
109
+ import { useState } from "react";
110
+ export default {
111
+ title: 'Litho/Image',
112
+ component: Image,
113
+ parameters: {
114
+ layout: 'padded',
115
+ docs: {
116
+ description: {
117
+ component: "An Image component that renders images with optional styling and responsive support. Images can be configured with various border radius options and support responsive image sets."
118
+ },
119
+ source: {
120
+ transform: transformStorySource
121
+ }
122
+ }
123
+ },
124
+ args: {
125
+ source: 'https://picsum.photos/400/300?random=1',
126
+ alt: 'Sample image'
127
+ },
128
+ tags: [
129
+ 'autodocs'
130
+ ],
131
+ argTypes: {
132
+ source: {
133
+ control: 'text',
134
+ description: 'URL of the image to display'
135
+ },
136
+ alt: {
137
+ control: 'text',
138
+ description: 'Alternative text for the image'
139
+ },
140
+ sourceSet: {
141
+ control: 'object',
142
+ description: 'Array of responsive image sources'
143
+ },
144
+ rounded: {
145
+ control: 'boolean',
146
+ description: 'Whether to round the image'
147
+ },
148
+ borderRadius: {
149
+ control: 'select',
150
+ options: [
151
+ 'default',
152
+ 'none',
153
+ 'xs',
154
+ 'sm',
155
+ 'md',
156
+ 'lg',
157
+ 'full',
158
+ 'max'
159
+ ],
160
+ description: 'Border radius variant'
161
+ },
162
+ crossOrigin: {
163
+ control: 'select',
164
+ options: [
165
+ 'anonymous',
166
+ 'use-credentials'
167
+ ],
168
+ description: 'Cross-origin attribute'
169
+ },
170
+ onLoad: {
171
+ action: 'imageLoaded',
172
+ description: 'Callback when image loads'
173
+ }
174
+ }
175
+ };
176
+ export var Default = {
177
+ render: function(args) {
178
+ return /*#__PURE__*/ _jsx(Box, {
179
+ maxInlineSize: "400",
180
+ children: /*#__PURE__*/ _jsx(Image, _object_spread({}, args))
181
+ });
182
+ }
183
+ };
184
+ export var BorderRadius = {
185
+ render: function() {
186
+ return /*#__PURE__*/ _jsxs(Grid, {
187
+ columns: "auto-fit",
188
+ minItemWidth: "200px",
189
+ gap: "8",
190
+ children: [
191
+ /*#__PURE__*/ _jsxs(VerticalStack, {
192
+ gap: "2",
193
+ inlineAlign: "center",
194
+ children: [
195
+ /*#__PURE__*/ _jsx(Image, {
196
+ source: "https://picsum.photos/200/200?random=2",
197
+ alt: "Default radius",
198
+ borderRadius: "default",
199
+ style: {
200
+ width: '150px',
201
+ height: '150px',
202
+ objectFit: 'cover'
203
+ }
204
+ }),
205
+ /*#__PURE__*/ _jsx(Text, {
206
+ variant: "bodySm",
207
+ children: "Default"
208
+ })
209
+ ]
210
+ }),
211
+ /*#__PURE__*/ _jsxs(VerticalStack, {
212
+ gap: "2",
213
+ inlineAlign: "center",
214
+ children: [
215
+ /*#__PURE__*/ _jsx(Image, {
216
+ source: "https://picsum.photos/200/200?random=3",
217
+ alt: "No radius",
218
+ borderRadius: "none",
219
+ style: {
220
+ width: '150px',
221
+ height: '150px',
222
+ objectFit: 'cover'
223
+ }
224
+ }),
225
+ /*#__PURE__*/ _jsx(Text, {
226
+ variant: "bodySm",
227
+ children: "None"
228
+ })
229
+ ]
230
+ }),
231
+ /*#__PURE__*/ _jsxs(VerticalStack, {
232
+ gap: "2",
233
+ inlineAlign: "center",
234
+ children: [
235
+ /*#__PURE__*/ _jsx(Image, {
236
+ source: "https://picsum.photos/200/200?random=4",
237
+ alt: "Small radius",
238
+ borderRadius: "sm",
239
+ style: {
240
+ width: '150px',
241
+ height: '150px',
242
+ objectFit: 'cover'
243
+ }
244
+ }),
245
+ /*#__PURE__*/ _jsx(Text, {
246
+ variant: "bodySm",
247
+ children: "Small"
248
+ })
249
+ ]
250
+ }),
251
+ /*#__PURE__*/ _jsxs(VerticalStack, {
252
+ gap: "2",
253
+ inlineAlign: "center",
254
+ children: [
255
+ /*#__PURE__*/ _jsx(Image, {
256
+ source: "https://picsum.photos/200/200?random=5",
257
+ alt: "Medium radius",
258
+ borderRadius: "md",
259
+ style: {
260
+ width: '150px',
261
+ height: '150px',
262
+ objectFit: 'cover'
263
+ }
264
+ }),
265
+ /*#__PURE__*/ _jsx(Text, {
266
+ variant: "bodySm",
267
+ children: "Medium"
268
+ })
269
+ ]
270
+ }),
271
+ /*#__PURE__*/ _jsxs(VerticalStack, {
272
+ gap: "2",
273
+ inlineAlign: "center",
274
+ children: [
275
+ /*#__PURE__*/ _jsx(Image, {
276
+ source: "https://picsum.photos/200/200?random=6",
277
+ alt: "Large radius",
278
+ borderRadius: "lg",
279
+ style: {
280
+ width: '150px',
281
+ height: '150px',
282
+ objectFit: 'cover'
283
+ }
284
+ }),
285
+ /*#__PURE__*/ _jsx(Text, {
286
+ variant: "bodySm",
287
+ children: "Large"
288
+ })
289
+ ]
290
+ }),
291
+ /*#__PURE__*/ _jsxs(VerticalStack, {
292
+ gap: "2",
293
+ inlineAlign: "center",
294
+ children: [
295
+ /*#__PURE__*/ _jsx(Image, {
296
+ source: "https://picsum.photos/200/200?random=7",
297
+ alt: "Full radius",
298
+ borderRadius: "full",
299
+ style: {
300
+ width: '150px',
301
+ height: '150px',
302
+ objectFit: 'cover'
303
+ }
304
+ }),
305
+ /*#__PURE__*/ _jsx(Text, {
306
+ variant: "bodySm",
307
+ children: "Full (Circle)"
308
+ })
309
+ ]
310
+ })
311
+ ]
312
+ });
313
+ },
314
+ parameters: {
315
+ docs: {
316
+ description: {
317
+ story: 'Different border radius options for images.'
318
+ }
319
+ }
320
+ }
321
+ };
322
+ export var RoundedProp = {
323
+ render: function() {
324
+ return /*#__PURE__*/ _jsxs(HorizontalStack, {
325
+ gap: "4",
326
+ children: [
327
+ /*#__PURE__*/ _jsxs(VerticalStack, {
328
+ gap: "2",
329
+ inlineAlign: "center",
330
+ children: [
331
+ /*#__PURE__*/ _jsx(Image, {
332
+ source: "https://picsum.photos/200/200?random=8",
333
+ alt: "Not rounded",
334
+ style: {
335
+ width: '150px',
336
+ height: '150px',
337
+ objectFit: 'cover'
338
+ }
339
+ }),
340
+ /*#__PURE__*/ _jsx(Text, {
341
+ variant: "bodySm",
342
+ children: "Not Rounded"
343
+ })
344
+ ]
345
+ }),
346
+ /*#__PURE__*/ _jsxs(VerticalStack, {
347
+ gap: "2",
348
+ inlineAlign: "center",
349
+ children: [
350
+ /*#__PURE__*/ _jsx(Image, {
351
+ source: "https://picsum.photos/200/200?random=9",
352
+ alt: "Rounded",
353
+ rounded: true,
354
+ style: {
355
+ width: '150px',
356
+ height: '150px',
357
+ objectFit: 'cover'
358
+ }
359
+ }),
360
+ /*#__PURE__*/ _jsx(Text, {
361
+ variant: "bodySm",
362
+ children: "Rounded"
363
+ })
364
+ ]
365
+ })
366
+ ]
367
+ });
368
+ },
369
+ parameters: {
370
+ docs: {
371
+ description: {
372
+ story: 'Using the rounded prop for medium border radius.'
373
+ }
374
+ }
375
+ }
376
+ };
377
+ export var ResponsiveImage = {
378
+ args: {
379
+ sourceSet: [
380
+ {
381
+ source: 'https://picsum.photos/320/240?random=10',
382
+ descriptor: '320w'
383
+ },
384
+ {
385
+ source: 'https://picsum.photos/640/480?random=10',
386
+ descriptor: '640w'
387
+ },
388
+ {
389
+ source: 'https://picsum.photos/800/600?random=10',
390
+ descriptor: '800w'
391
+ }
392
+ ],
393
+ source: 'https://picsum.photos/400/300?random=10',
394
+ alt: 'Responsive image'
395
+ },
396
+ render: function(args) {
397
+ return /*#__PURE__*/ _jsxs(VerticalStack, {
398
+ gap: "2",
399
+ children: [
400
+ /*#__PURE__*/ _jsx(Image, _object_spread_props(_object_spread({}, args), {
401
+ style: {
402
+ width: '100%',
403
+ height: 'auto'
404
+ }
405
+ })),
406
+ /*#__PURE__*/ _jsx(Text, {
407
+ variant: "bodyMd",
408
+ color: "subdued",
409
+ children: "This image uses different sources based on screen size. Resize your browser to see the effect."
410
+ })
411
+ ]
412
+ });
413
+ },
414
+ parameters: {
415
+ docs: {
416
+ description: {
417
+ story: 'Responsive image with multiple source sizes.'
418
+ }
419
+ }
420
+ }
421
+ };
422
+ export var WithLoadCallback = {
423
+ render: function() {
424
+ var _useState = _sliced_to_array(useState('Loading...'), 2), loadStatus = _useState[0], setLoadStatus = _useState[1];
425
+ return /*#__PURE__*/ _jsxs(VerticalStack, {
426
+ gap: "4",
427
+ children: [
428
+ /*#__PURE__*/ _jsx(Image, {
429
+ source: "https://picsum.photos/400/300?random=11",
430
+ alt: "Image with load callback",
431
+ onLoad: function() {
432
+ return setLoadStatus('Image loaded successfully!');
433
+ },
434
+ style: {
435
+ width: '300px',
436
+ height: 'auto'
437
+ },
438
+ borderRadius: "md"
439
+ }),
440
+ /*#__PURE__*/ _jsxs(Text, {
441
+ variant: "bodyMd",
442
+ color: "subdued",
443
+ children: [
444
+ "Status: ",
445
+ loadStatus
446
+ ]
447
+ })
448
+ ]
449
+ });
450
+ },
451
+ parameters: {
452
+ docs: {
453
+ description: {
454
+ story: 'Image with onLoad callback to track loading status.'
455
+ }
456
+ }
457
+ }
458
+ };
459
+ export var ProductShowcase = {
460
+ render: function() {
461
+ var products = [
462
+ {
463
+ id: 1,
464
+ name: 'Wireless Headphones',
465
+ price: '$99.99',
466
+ image: 'https://picsum.photos/300/300?random=12'
467
+ },
468
+ {
469
+ id: 2,
470
+ name: 'Smart Watch',
471
+ price: '$199.99',
472
+ image: 'https://picsum.photos/300/300?random=13'
473
+ },
474
+ {
475
+ id: 3,
476
+ name: 'Laptop Stand',
477
+ price: '$49.99',
478
+ image: 'https://picsum.photos/300/300?random=14'
479
+ },
480
+ {
481
+ id: 4,
482
+ name: 'Desk Lamp',
483
+ price: '$79.99',
484
+ image: 'https://picsum.photos/300/300?random=15'
485
+ }
486
+ ];
487
+ return /*#__PURE__*/ _jsx(Card, {
488
+ title: "Product Showcase",
489
+ padded: true,
490
+ children: /*#__PURE__*/ _jsx(Grid, {
491
+ columns: "auto-fit",
492
+ minItemWidth: "250px",
493
+ gap: "6",
494
+ children: products.map(function(product) {
495
+ return /*#__PURE__*/ _jsxs(Box, {
496
+ padding: "0",
497
+ borderWidth: "1",
498
+ borderColor: "border",
499
+ borderRadius: "2",
500
+ style: {
501
+ overflow: 'hidden',
502
+ transition: 'transform 0.2s ease, box-shadow 0.2s ease',
503
+ cursor: 'pointer'
504
+ },
505
+ children: [
506
+ /*#__PURE__*/ _jsx(Image, {
507
+ source: product.image,
508
+ alt: product.name,
509
+ style: {
510
+ width: '100%',
511
+ height: '200px',
512
+ objectFit: 'cover'
513
+ }
514
+ }),
515
+ /*#__PURE__*/ _jsx(Box, {
516
+ padding: "4",
517
+ children: /*#__PURE__*/ _jsxs(VerticalStack, {
518
+ gap: "2",
519
+ children: [
520
+ /*#__PURE__*/ _jsx(Text, {
521
+ variant: "headingSm",
522
+ children: product.name
523
+ }),
524
+ /*#__PURE__*/ _jsx(Text, {
525
+ variant: "headingMd",
526
+ color: "interactive",
527
+ children: product.price
528
+ })
529
+ ]
530
+ })
531
+ })
532
+ ]
533
+ }, product.id);
534
+ })
535
+ })
536
+ });
537
+ },
538
+ parameters: {
539
+ docs: {
540
+ description: {
541
+ story: 'Product showcase using images in a grid layout.'
542
+ }
543
+ }
544
+ }
545
+ };
546
+ export var ProfileCards = {
547
+ render: function() {
548
+ var team = [
549
+ {
550
+ name: 'Sarah Johnson',
551
+ role: 'Product Designer',
552
+ image: 'https://picsum.photos/200/200?random=16'
553
+ },
554
+ {
555
+ name: 'Mike Chen',
556
+ role: 'Frontend Developer',
557
+ image: 'https://picsum.photos/200/200?random=17'
558
+ },
559
+ {
560
+ name: 'Emily Davis',
561
+ role: 'UX Researcher',
562
+ image: 'https://picsum.photos/200/200?random=18'
563
+ },
564
+ {
565
+ name: 'David Wilson',
566
+ role: 'Backend Developer',
567
+ image: 'https://picsum.photos/200/200?random=19'
568
+ }
569
+ ];
570
+ return /*#__PURE__*/ _jsx(Card, {
571
+ title: "Team Members",
572
+ padded: true,
573
+ children: /*#__PURE__*/ _jsx(Grid, {
574
+ columns: "auto-fit",
575
+ minItemWidth: "200px",
576
+ gap: "6",
577
+ children: team.map(function(member, index) {
578
+ return /*#__PURE__*/ _jsxs(VerticalStack, {
579
+ gap: "4",
580
+ inlineAlign: "center",
581
+ as: Box,
582
+ padding: "6",
583
+ borderWidth: "1",
584
+ borderColor: "border",
585
+ borderRadius: "3",
586
+ children: [
587
+ /*#__PURE__*/ _jsx(Image, {
588
+ source: member.image,
589
+ alt: member.name,
590
+ borderRadius: "full",
591
+ style: {
592
+ width: '80px',
593
+ height: '80px',
594
+ objectFit: 'cover'
595
+ }
596
+ }),
597
+ /*#__PURE__*/ _jsxs(VerticalStack, {
598
+ gap: "1",
599
+ inlineAlign: "center",
600
+ children: [
601
+ /*#__PURE__*/ _jsx(Text, {
602
+ variant: "headingSm",
603
+ children: member.name
604
+ }),
605
+ /*#__PURE__*/ _jsx(Text, {
606
+ color: "subdued",
607
+ variant: "bodyMd",
608
+ children: member.role
609
+ })
610
+ ]
611
+ })
612
+ ]
613
+ }, index);
614
+ })
615
+ })
616
+ });
617
+ },
618
+ parameters: {
619
+ docs: {
620
+ description: {
621
+ story: 'Team member profile cards with circular profile images.'
622
+ }
623
+ }
624
+ }
625
+ };
626
+ export var ImageGallery = {
627
+ render: function() {
628
+ var _useState = _sliced_to_array(useState(null), 2), selectedImage = _useState[0], setSelectedImage = _useState[1];
629
+ var images = [
630
+ 'https://picsum.photos/400/300?random=20',
631
+ 'https://picsum.photos/400/300?random=21',
632
+ 'https://picsum.photos/400/300?random=22',
633
+ 'https://picsum.photos/400/300?random=23',
634
+ 'https://picsum.photos/400/300?random=24',
635
+ 'https://picsum.photos/400/300?random=25',
636
+ 'https://picsum.photos/400/300?random=26',
637
+ 'https://picsum.photos/400/300?random=27'
638
+ ];
639
+ return /*#__PURE__*/ _jsx(Card, {
640
+ title: "Photo Gallery",
641
+ padded: true,
642
+ children: /*#__PURE__*/ _jsxs(VerticalStack, {
643
+ gap: "8",
644
+ children: [
645
+ selectedImage && /*#__PURE__*/ _jsxs(VerticalStack, {
646
+ gap: "4",
647
+ inlineAlign: "center",
648
+ as: Box,
649
+ padding: "8",
650
+ background: "surface-neutral-subdued",
651
+ borderRadius: "2",
652
+ children: [
653
+ /*#__PURE__*/ _jsx(Image, {
654
+ source: selectedImage,
655
+ alt: "Selected image",
656
+ borderRadius: "md",
657
+ style: {
658
+ maxWidth: '500px',
659
+ width: '100%',
660
+ height: 'auto'
661
+ }
662
+ }),
663
+ /*#__PURE__*/ _jsx(Button, {
664
+ onClick: function() {
665
+ return setSelectedImage(null);
666
+ },
667
+ children: "Close Preview"
668
+ })
669
+ ]
670
+ }),
671
+ /*#__PURE__*/ _jsx(Grid, {
672
+ columns: "auto-fit",
673
+ minItemWidth: "150px",
674
+ gap: "4",
675
+ children: images.map(function(src, index) {
676
+ return /*#__PURE__*/ _jsx(Box, {
677
+ style: {
678
+ cursor: 'pointer'
679
+ },
680
+ children: /*#__PURE__*/ _jsx(Image, {
681
+ source: src,
682
+ alt: "Gallery image ".concat(index + 1),
683
+ borderRadius: "sm",
684
+ style: {
685
+ width: '100%',
686
+ height: '120px',
687
+ objectFit: 'cover',
688
+ transition: 'transform 0.2s ease'
689
+ },
690
+ onClick: function() {
691
+ return setSelectedImage(src);
692
+ }
693
+ })
694
+ }, index);
695
+ })
696
+ })
697
+ ]
698
+ })
699
+ });
700
+ },
701
+ parameters: {
702
+ docs: {
703
+ description: {
704
+ story: 'Interactive photo gallery with image preview functionality.'
705
+ }
706
+ }
707
+ }
708
+ };
709
+ export var BannerImages = {
710
+ render: function() {
711
+ return /*#__PURE__*/ _jsxs(VerticalStack, {
712
+ gap: "8",
713
+ children: [
714
+ /*#__PURE__*/ _jsx(Card, {
715
+ title: "Hero Banner",
716
+ padded: true,
717
+ children: /*#__PURE__*/ _jsxs(Box, {
718
+ position: "relative",
719
+ children: [
720
+ /*#__PURE__*/ _jsx(Image, {
721
+ source: "https://picsum.photos/800/300?random=28",
722
+ alt: "Hero banner",
723
+ borderRadius: "lg",
724
+ style: {
725
+ width: '100%',
726
+ height: '250px',
727
+ objectFit: 'cover'
728
+ }
729
+ }),
730
+ /*#__PURE__*/ _jsx(Box, {
731
+ position: "absolute",
732
+ insetBlockStart: "50%",
733
+ insetInlineStart: "50%",
734
+ style: {
735
+ transform: 'translate(-50%, -50%)',
736
+ color: 'white',
737
+ textShadow: '2px 2px 4px rgba(0,0,0,0.7)'
738
+ },
739
+ children: /*#__PURE__*/ _jsxs(VerticalStack, {
740
+ gap: "2",
741
+ inlineAlign: "center",
742
+ children: [
743
+ /*#__PURE__*/ _jsx(Text, {
744
+ variant: "headingLg",
745
+ color: "text-inverse",
746
+ children: "Welcome to Our Platform"
747
+ }),
748
+ /*#__PURE__*/ _jsx(Text, {
749
+ color: "text-inverse",
750
+ children: "Discover amazing features and capabilities"
751
+ })
752
+ ]
753
+ })
754
+ })
755
+ ]
756
+ })
757
+ }),
758
+ /*#__PURE__*/ _jsx(Card, {
759
+ title: "Promotional Section",
760
+ padded: true,
761
+ children: /*#__PURE__*/ _jsxs(Grid, {
762
+ columns: 2,
763
+ gap: "8",
764
+ children: [
765
+ /*#__PURE__*/ _jsxs(Box, {
766
+ position: "relative",
767
+ children: [
768
+ /*#__PURE__*/ _jsx(Image, {
769
+ source: "https://picsum.photos/400/200?random=29",
770
+ alt: "Promo 1",
771
+ borderRadius: "md",
772
+ style: {
773
+ width: '100%',
774
+ height: '150px',
775
+ objectFit: 'cover'
776
+ }
777
+ }),
778
+ /*#__PURE__*/ _jsx(Box, {
779
+ position: "absolute",
780
+ insetBlockEnd: "4",
781
+ insetInlineStart: "4",
782
+ style: {
783
+ color: 'white',
784
+ textShadow: '1px 1px 2px rgba(0,0,0,0.7)'
785
+ },
786
+ children: /*#__PURE__*/ _jsx(Text, {
787
+ variant: "headingSm",
788
+ color: "text-inverse",
789
+ children: "Special Offer"
790
+ })
791
+ })
792
+ ]
793
+ }),
794
+ /*#__PURE__*/ _jsxs(Box, {
795
+ position: "relative",
796
+ children: [
797
+ /*#__PURE__*/ _jsx(Image, {
798
+ source: "https://picsum.photos/400/200?random=30",
799
+ alt: "Promo 2",
800
+ borderRadius: "md",
801
+ style: {
802
+ width: '100%',
803
+ height: '150px',
804
+ objectFit: 'cover'
805
+ }
806
+ }),
807
+ /*#__PURE__*/ _jsx(Box, {
808
+ position: "absolute",
809
+ insetBlockEnd: "4",
810
+ insetInlineStart: "4",
811
+ style: {
812
+ color: 'white',
813
+ textShadow: '1px 1px 2px rgba(0,0,0,0.7)'
814
+ },
815
+ children: /*#__PURE__*/ _jsx(Text, {
816
+ variant: "headingSm",
817
+ color: "text-inverse",
818
+ children: "New Features"
819
+ })
820
+ })
821
+ ]
822
+ })
823
+ ]
824
+ })
825
+ })
826
+ ]
827
+ });
828
+ },
829
+ parameters: {
830
+ docs: {
831
+ description: {
832
+ story: 'Banner and promotional images with overlay text.'
833
+ }
834
+ }
835
+ }
836
+ };