@webiny/admin-ui 0.0.0-unstable.7be00a75a9 → 0.0.0-unstable.7c2def32a7

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 (595) hide show
  1. package/Accordion/Accordion.d.ts +7 -6
  2. package/Accordion/Accordion.stories.d.ts +1 -1
  3. package/Accordion/Accordion.stories.js.map +1 -1
  4. package/Accordion/components/AccordionContent.js +4 -1
  5. package/Accordion/components/AccordionContent.js.map +1 -1
  6. package/Accordion/components/AccordionItem.d.ts +8 -6
  7. package/Accordion/components/AccordionItem.js.map +1 -1
  8. package/Accordion/components/AccordionItemAction.d.ts +7 -6
  9. package/Accordion/components/AccordionItemDragHandle.d.ts +2 -1
  10. package/Accordion/components/AccordionItemDragHandle.js +2 -1
  11. package/Accordion/components/AccordionItemDragHandle.js.map +1 -1
  12. package/Accordion/components/AccordionItemIcon.d.ts +7 -6
  13. package/Accordion/components/AccordionItemSeparator.d.ts +7 -6
  14. package/Accordion/components/AccordionTrigger.js +4 -2
  15. package/Accordion/components/AccordionTrigger.js.map +1 -1
  16. package/Alert/Alert.d.ts +21 -19
  17. package/Alert/Alert.stories.d.ts +1 -1
  18. package/Alert/Alert.stories.js.map +1 -1
  19. package/AutoComplete/AutoComplete.d.ts +7 -6
  20. package/AutoComplete/AutoComplete.stories.d.ts +1 -1
  21. package/AutoComplete/AutoComplete.stories.js.map +1 -1
  22. package/AutoComplete/primitives/AutoCompletePrimitive.d.ts +13 -6
  23. package/AutoComplete/primitives/AutoCompletePrimitive.js +1 -0
  24. package/AutoComplete/primitives/AutoCompletePrimitive.js.map +1 -1
  25. package/AutoComplete/primitives/AutoCompletePrimitive.stories.d.ts +1 -1
  26. package/AutoComplete/primitives/AutoCompletePrimitive.stories.js.map +1 -1
  27. package/Avatar/Avatar.d.ts +9 -8
  28. package/Avatar/Avatar.stories.d.ts +1 -1
  29. package/Avatar/Avatar.stories.js.map +1 -1
  30. package/Avatar/components/AvatarFallback.d.ts +7 -6
  31. package/Avatar/components/AvatarImage.d.ts +7 -6
  32. package/BetaBadge/BetaBadge.d.ts +6 -0
  33. package/BetaBadge/BetaBadge.js +7 -0
  34. package/BetaBadge/BetaBadge.js.map +1 -0
  35. package/Breadcrumbs/Breadcrumbs.d.ts +54 -0
  36. package/Breadcrumbs/Breadcrumbs.js +66 -0
  37. package/Breadcrumbs/Breadcrumbs.js.map +1 -0
  38. package/Breadcrumbs/Breadcrumbs.stories.d.ts +9 -0
  39. package/Breadcrumbs/Breadcrumbs.stories.js +71 -0
  40. package/Breadcrumbs/Breadcrumbs.stories.js.map +1 -0
  41. package/Breadcrumbs/index.d.ts +1 -0
  42. package/Breadcrumbs/index.js +1 -0
  43. package/Button/Button.d.ts +10 -9
  44. package/Button/Button.js +7 -0
  45. package/Button/Button.js.map +1 -1
  46. package/Button/Button.mdx +13 -0
  47. package/Button/Button.stories.d.ts +2 -1
  48. package/Button/Button.stories.js +9 -2
  49. package/Button/Button.stories.js.map +1 -1
  50. package/Button/CopyButton.d.ts +7 -6
  51. package/Button/IconButton.d.ts +10 -9
  52. package/Button/IconButton.stories.d.ts +1 -1
  53. package/Button/IconButton.stories.js.map +1 -1
  54. package/Calendar/Calendar.d.ts +7 -6
  55. package/Calendar/calendarClassNames.js +1 -1
  56. package/Calendar/calendarClassNames.js.map +1 -1
  57. package/Card/Card.d.ts +8 -22
  58. package/Card/Card.stories.d.ts +1 -1
  59. package/Card/Card.stories.js.map +1 -1
  60. package/Card/components/CancelAction.d.ts +8 -6
  61. package/Card/components/CardContent.d.ts +6 -6
  62. package/Card/components/CardTitle.d.ts +2 -2
  63. package/Card/components/ConfirmAction.d.ts +8 -6
  64. package/Card/components/Icon.d.ts +7 -6
  65. package/Checkbox/Checkbox.d.ts +7 -6
  66. package/Checkbox/Checkbox.stories.d.ts +1 -1
  67. package/Checkbox/Checkbox.stories.js.map +1 -1
  68. package/Checkbox/primitives/CheckboxPrimitive.d.ts +17 -12
  69. package/Checkbox/primitives/CheckboxPrimitive.stories.d.ts +1 -1
  70. package/Checkbox/primitives/CheckboxPrimitive.stories.js.map +1 -1
  71. package/CheckboxGroup/CheckboxGroup.d.ts +7 -6
  72. package/CheckboxGroup/CheckboxGroup.stories.d.ts +1 -1
  73. package/CheckboxGroup/CheckboxGroup.stories.js.map +1 -1
  74. package/CheckboxGroup/primitives/CheckboxGroupPrimitive.d.ts +20 -12
  75. package/CheckboxGroup/primitives/CheckboxGroupPrimitive.stories.d.ts +1 -1
  76. package/CheckboxGroup/primitives/CheckboxGroupPrimitive.stories.js.map +1 -1
  77. package/CodeEditor/CodeEditor.d.ts +7 -6
  78. package/CodeEditor/CodeEditor.stories.d.ts +1 -1
  79. package/CodeEditor/CodeEditor.stories.js.map +1 -1
  80. package/CodeEditor/CodeEditorPrimitive.d.ts +7 -6
  81. package/CodeEditor/CodeEditorPrimitive.js +3 -1
  82. package/CodeEditor/CodeEditorPrimitive.js.map +1 -1
  83. package/CodeEditor/CodeEditorPrimitive.stories.d.ts +1 -1
  84. package/CodeEditor/CodeEditorPrimitive.stories.js.map +1 -1
  85. package/ColorPicker/ColorPicker.d.ts +7 -6
  86. package/ColorPicker/ColorPicker.stories.d.ts +1 -1
  87. package/ColorPicker/ColorPicker.stories.js.map +1 -1
  88. package/ColorPicker/primitives/ColorPickerPrimitive.d.ts +7 -6
  89. package/ColorPicker/primitives/ColorPickerPrimitive.stories.d.ts +1 -1
  90. package/ColorPicker/primitives/ColorPickerPrimitive.stories.js.map +1 -1
  91. package/Command/Command.d.ts +10 -8
  92. package/Command/components/List.d.ts +1 -1
  93. package/Command/components/List.js +9 -5
  94. package/Command/components/List.js.map +1 -1
  95. package/DataList/DataListModal.d.ts +6 -3
  96. package/DataTable/DataTable.d.ts +23 -12
  97. package/DataTable/DataTable.js +18 -7
  98. package/DataTable/DataTable.js.map +1 -1
  99. package/DataTable/DataTable.stories.d.ts +1 -1
  100. package/DataTable/DataTable.stories.js.map +1 -1
  101. package/DataTable/components/ColumnsVisibility.d.ts +5 -4
  102. package/DataTable/components/ColumnsVisibility.js +7 -3
  103. package/DataTable/components/ColumnsVisibility.js.map +1 -1
  104. package/DatePicker/DatePicker.d.ts +11 -7
  105. package/DatePicker/DatePicker.js +10 -2
  106. package/DatePicker/DatePicker.js.map +1 -1
  107. package/DatePicker/DatePicker.stories.d.ts +11 -1
  108. package/DatePicker/DatePicker.stories.js +44 -1
  109. package/DatePicker/DatePicker.stories.js.map +1 -1
  110. package/DatePicker/primitives/BirthdayPicker.d.ts +13 -0
  111. package/DatePicker/primitives/BirthdayPicker.js +355 -0
  112. package/DatePicker/primitives/BirthdayPicker.js.map +1 -0
  113. package/DatePicker/primitives/BirthdayPickerCell.d.ts +14 -0
  114. package/DatePicker/primitives/BirthdayPickerCell.js +19 -0
  115. package/DatePicker/primitives/BirthdayPickerCell.js.map +1 -0
  116. package/DatePicker/primitives/BirthdayPickerSegments.d.ts +9 -0
  117. package/DatePicker/primitives/BirthdayPickerSegments.js +43 -0
  118. package/DatePicker/primitives/BirthdayPickerSegments.js.map +1 -0
  119. package/DatePicker/primitives/DateOnlyPicker.js +2 -2
  120. package/DatePicker/primitives/DateOnlyPicker.js.map +1 -1
  121. package/DatePicker/primitives/DatePickerPrimitive.d.ts +7 -6
  122. package/DatePicker/primitives/DatePickerPrimitive.js +3 -0
  123. package/DatePicker/primitives/DatePickerPrimitive.js.map +1 -1
  124. package/DatePicker/primitives/DateRangePicker.js +3 -3
  125. package/DatePicker/primitives/DateRangePicker.js.map +1 -1
  126. package/DatePicker/primitives/DateTimePicker.d.ts +1 -1
  127. package/DatePicker/primitives/DateTimePicker.js +26 -18
  128. package/DatePicker/primitives/DateTimePicker.js.map +1 -1
  129. package/DatePicker/primitives/MultipleDatesPicker.js +3 -3
  130. package/DatePicker/primitives/MultipleDatesPicker.js.map +1 -1
  131. package/DatePicker/primitives/components/DatePickerTrigger.js +2 -2
  132. package/DatePicker/primitives/components/DatePickerTrigger.js.map +1 -1
  133. package/DatePicker/utils/birthdayHelpers.d.ts +77 -0
  134. package/DatePicker/utils/birthdayHelpers.js +145 -0
  135. package/DatePicker/utils/birthdayHelpers.js.map +1 -0
  136. package/DatePicker/utils/birthdayHelpers.test.d.ts +1 -0
  137. package/DatePicker/utils/birthdayHelpers.test.js +394 -0
  138. package/DatePicker/utils/birthdayHelpers.test.js.map +1 -0
  139. package/DatePicker/utils/dateHelpers.d.ts +6 -1
  140. package/DatePicker/utils/dateHelpers.js +13 -5
  141. package/DatePicker/utils/dateHelpers.js.map +1 -1
  142. package/DatePicker/utils/dateHelpers.test.d.ts +1 -0
  143. package/DatePicker/utils/dateHelpers.test.js +32 -0
  144. package/DatePicker/utils/dateHelpers.test.js.map +1 -0
  145. package/DatePicker/utils/index.d.ts +1 -0
  146. package/DatePicker/utils/index.js +1 -0
  147. package/DatePicker/utils/timezoneHelpers.d.ts +3 -0
  148. package/DatePicker/utils/timezoneHelpers.js +32 -0
  149. package/DatePicker/utils/timezoneHelpers.js.map +1 -0
  150. package/DatePicker/utils/types.d.ts +15 -2
  151. package/Dialog/Dialog.d.ts +8 -22
  152. package/Dialog/Dialog.stories.d.ts +1 -1
  153. package/Dialog/Dialog.stories.js.map +1 -1
  154. package/Dialog/components/CancelAction.d.ts +8 -6
  155. package/Dialog/components/ConfirmAction.d.ts +8 -6
  156. package/Dialog/components/DialogContent.d.ts +1 -1
  157. package/Dialog/components/DialogFooter.d.ts +1 -1
  158. package/Dialog/components/DialogTitle.d.ts +1 -1
  159. package/Dialog/components/Icon.d.ts +7 -6
  160. package/DragCursor/DragCursor.d.ts +7 -0
  161. package/DragCursor/DragCursor.js +21 -0
  162. package/DragCursor/DragCursor.js.map +1 -0
  163. package/DragCursor/DragCursor.stories.d.ts +10 -0
  164. package/DragCursor/DragCursor.stories.js +97 -0
  165. package/DragCursor/DragCursor.stories.js.map +1 -0
  166. package/DragCursor/index.d.ts +1 -0
  167. package/DragCursor/index.js +1 -0
  168. package/Drawer/Drawer.d.ts +18 -28
  169. package/Drawer/Drawer.js +2 -1
  170. package/Drawer/Drawer.js.map +1 -1
  171. package/Drawer/Drawer.stories.d.ts +2 -1
  172. package/Drawer/Drawer.stories.js +21 -2
  173. package/Drawer/Drawer.stories.js.map +1 -1
  174. package/Drawer/components/CancelButton.d.ts +8 -6
  175. package/Drawer/components/ConfirmButton.d.ts +8 -6
  176. package/Drawer/components/DrawerContent.d.ts +1 -1
  177. package/Drawer/components/DrawerHeader.d.ts +2 -2
  178. package/Drawer/components/DrawerHeader.js +11 -8
  179. package/Drawer/components/DrawerHeader.js.map +1 -1
  180. package/Drawer/components/Icon.d.ts +7 -6
  181. package/Drawer/components/Icon.js +3 -4
  182. package/Drawer/components/Icon.js.map +1 -1
  183. package/DropdownMenu/DropdownMenu.stories.d.ts +1 -1
  184. package/DropdownMenu/DropdownMenu.stories.js.map +1 -1
  185. package/DropdownMenu/components/DropdownMenuItem.d.ts +8 -2
  186. package/DropdownMenu/components/DropdownMenuItem.js +11 -3
  187. package/DropdownMenu/components/DropdownMenuItem.js.map +1 -1
  188. package/DropdownMenu/components/DropdownMenuLink.d.ts +9 -8
  189. package/DropdownMenu/components/DropdownMenuSeparator.d.ts +7 -6
  190. package/EditableTitle/EditableTitle.d.ts +67 -0
  191. package/EditableTitle/EditableTitle.js +73 -0
  192. package/EditableTitle/EditableTitle.js.map +1 -0
  193. package/EditableTitle/index.d.ts +1 -0
  194. package/EditableTitle/index.js +1 -0
  195. package/EmptyState/EmptyState.d.ts +43 -0
  196. package/EmptyState/EmptyState.js +93 -0
  197. package/EmptyState/EmptyState.js.map +1 -0
  198. package/EmptyState/EmptyState.stories.d.ts +13 -0
  199. package/EmptyState/EmptyState.stories.js +136 -0
  200. package/EmptyState/EmptyState.stories.js.map +1 -0
  201. package/EmptyState/illustrations/ContentIllustration.d.ts +2 -0
  202. package/EmptyState/illustrations/ContentIllustration.js +100 -0
  203. package/EmptyState/illustrations/ContentIllustration.js.map +1 -0
  204. package/EmptyState/illustrations/LayoutIllustration.d.ts +2 -0
  205. package/EmptyState/illustrations/LayoutIllustration.js +93 -0
  206. package/EmptyState/illustrations/LayoutIllustration.js.map +1 -0
  207. package/EmptyState/illustrations/ListingIllustration.d.ts +2 -0
  208. package/EmptyState/illustrations/ListingIllustration.js +92 -0
  209. package/EmptyState/illustrations/ListingIllustration.js.map +1 -0
  210. package/EmptyState/illustrations/SelectIllustration.d.ts +2 -0
  211. package/EmptyState/illustrations/SelectIllustration.js +100 -0
  212. package/EmptyState/illustrations/SelectIllustration.js.map +1 -0
  213. package/EmptyState/illustrations/TableIllustration.d.ts +2 -0
  214. package/EmptyState/illustrations/TableIllustration.js +233 -0
  215. package/EmptyState/illustrations/TableIllustration.js.map +1 -0
  216. package/EmptyState/illustrations/UploadIllustration.d.ts +2 -0
  217. package/EmptyState/illustrations/UploadIllustration.js +77 -0
  218. package/EmptyState/illustrations/UploadIllustration.js.map +1 -0
  219. package/EmptyState/illustrations/index.d.ts +6 -0
  220. package/EmptyState/illustrations/index.js +6 -0
  221. package/EmptyState/index.d.ts +1 -0
  222. package/EmptyState/index.js +1 -0
  223. package/FilePicker/FilePicker.d.ts +19 -18
  224. package/FilePicker/FilePicker.stories.d.ts +7 -1
  225. package/FilePicker/FilePicker.stories.js +24 -1
  226. package/FilePicker/FilePicker.stories.js.map +1 -1
  227. package/FilePicker/primitives/FilePickerPrimitive.d.ts +20 -19
  228. package/FilePicker/primitives/FilePickerPrimitive.stories.d.ts +1 -1
  229. package/FilePicker/primitives/FilePickerPrimitive.stories.js.map +1 -1
  230. package/FilePicker/primitives/components/Trigger.d.ts +1 -1
  231. package/FilePicker/primitives/components/previews/ImagePreview/ImagePreview.d.ts +19 -7
  232. package/FilePicker/primitives/components/previews/ImagePreview/ImagePreview.js +15 -6
  233. package/FilePicker/primitives/components/previews/ImagePreview/ImagePreview.js.map +1 -1
  234. package/FilePicker/primitives/components/previews/ItemActions.js +1 -1
  235. package/FilePicker/primitives/components/previews/ItemActions.js.map +1 -1
  236. package/FilePicker/primitives/components/previews/ItemDescription.js +1 -1
  237. package/FilePicker/primitives/components/previews/ItemDescription.js.map +1 -1
  238. package/FilePicker/primitives/components/previews/RichItemPreview/FileType.d.ts +5 -0
  239. package/FilePicker/primitives/components/previews/RichItemPreview/FileType.js +45 -0
  240. package/FilePicker/primitives/components/previews/RichItemPreview/FileType.js.map +1 -0
  241. package/FilePicker/primitives/components/previews/RichItemPreview/Placeholder.d.ts +5 -0
  242. package/FilePicker/primitives/components/previews/RichItemPreview/Placeholder.js +14 -0
  243. package/FilePicker/primitives/components/previews/RichItemPreview/Placeholder.js.map +1 -0
  244. package/FilePicker/primitives/components/previews/RichItemPreview/RichItemPreview.d.ts +12 -6
  245. package/FilePicker/primitives/components/previews/RichItemPreview/RichItemPreview.js +54 -12
  246. package/FilePicker/primitives/components/previews/RichItemPreview/RichItemPreview.js.map +1 -1
  247. package/FilePicker/primitives/components/previews/RichItemPreview/RichItemThumbnail.d.ts +11 -1
  248. package/FilePicker/primitives/components/previews/RichItemPreview/RichItemThumbnail.js +8 -61
  249. package/FilePicker/primitives/components/previews/RichItemPreview/RichItemThumbnail.js.map +1 -1
  250. package/FilePicker/primitives/components/previews/RichItemPreview/Thumbnail.d.ts +11 -0
  251. package/FilePicker/primitives/components/previews/RichItemPreview/Thumbnail.js +24 -0
  252. package/FilePicker/primitives/components/previews/RichItemPreview/Thumbnail.js.map +1 -0
  253. package/FilePicker/primitives/components/previews/RichItemPreview/ThumbnailActions.d.ts +10 -0
  254. package/FilePicker/primitives/components/previews/RichItemPreview/ThumbnailActions.js +46 -0
  255. package/FilePicker/primitives/components/previews/RichItemPreview/ThumbnailActions.js.map +1 -0
  256. package/FilePicker/primitives/components/previews/TextOnlyPreview/TextOnlyPreview.d.ts +7 -6
  257. package/FilePicker/primitives/components/previews/TruncatedFileName.d.ts +7 -0
  258. package/FilePicker/primitives/components/previews/TruncatedFileName.js +20 -0
  259. package/FilePicker/primitives/components/previews/TruncatedFileName.js.map +1 -0
  260. package/FilePicker/primitives/components/previews/fileName.d.ts +4 -0
  261. package/FilePicker/primitives/components/previews/fileName.js +26 -0
  262. package/FilePicker/primitives/components/previews/fileName.js.map +1 -0
  263. package/FilePicker/primitives/components/previews/index.d.ts +1 -0
  264. package/FilePicker/primitives/components/previews/index.js +1 -0
  265. package/FilePicker/primitives/components/previews/variants.d.ts +1 -1
  266. package/FillViewport/FillViewport.d.ts +63 -0
  267. package/FillViewport/FillViewport.js +67 -0
  268. package/FillViewport/FillViewport.js.map +1 -0
  269. package/FillViewport/index.d.ts +1 -0
  270. package/FillViewport/index.js +1 -0
  271. package/FormComponent/Description.d.ts +7 -6
  272. package/FormComponent/ErrorMessage.d.ts +7 -6
  273. package/FormComponent/Label.d.ts +7 -6
  274. package/FormComponent/Note.d.ts +7 -6
  275. package/Grid/Grid.d.ts +25 -23
  276. package/Grid/Grid.js.map +1 -1
  277. package/Grid/Grid.stories.d.ts +1 -1
  278. package/Grid/Grid.stories.js.map +1 -1
  279. package/HeaderBar/HeaderBar.d.ts +7 -6
  280. package/HeaderBar/HeaderBar.stories.d.ts +1 -1
  281. package/HeaderBar/HeaderBar.stories.js.map +1 -1
  282. package/Heading/Heading.d.ts +8 -7
  283. package/Heading/Heading.stories.d.ts +1 -1
  284. package/Heading/Heading.stories.js.map +1 -1
  285. package/Icon/Icon.d.ts +9 -8
  286. package/Icon/Icon.stories.d.ts +1 -1
  287. package/Icon/Icon.stories.js.map +1 -1
  288. package/IconPicker/IconPicker.d.ts +7 -6
  289. package/IconPicker/IconPicker.stories.d.ts +1 -1
  290. package/IconPicker/IconPicker.stories.js.map +1 -1
  291. package/IconPicker/primitives/IconPickerPrimitive.d.ts +1 -1
  292. package/IconPicker/primitives/IconPickerPrimitive.js +1 -2
  293. package/IconPicker/primitives/IconPickerPrimitive.js.map +1 -1
  294. package/IconPicker/primitives/IconPickerPrimitive.stories.d.ts +1 -1
  295. package/IconPicker/primitives/IconPickerPrimitive.stories.js.map +1 -1
  296. package/IconPicker/primitives/components/IconPickerTrigger.d.ts +1 -1
  297. package/ImageEditor/AspectRatioPreview.d.ts +16 -0
  298. package/ImageEditor/AspectRatioPreview.js +26 -0
  299. package/ImageEditor/AspectRatioPreview.js.map +1 -0
  300. package/ImageEditor/CropHotspotEditor.d.ts +22 -0
  301. package/ImageEditor/CropHotspotEditor.js +402 -0
  302. package/ImageEditor/CropHotspotEditor.js.map +1 -0
  303. package/ImageEditor/ImageEditor.d.ts +18 -0
  304. package/ImageEditor/ImageEditor.js +151 -0
  305. package/ImageEditor/ImageEditor.js.map +1 -0
  306. package/ImageEditor/ImageEditor.stories.d.ts +6 -0
  307. package/ImageEditor/ImageEditor.stories.js +42 -0
  308. package/ImageEditor/ImageEditor.stories.js.map +1 -0
  309. package/ImageEditor/MetaFields.d.ts +12 -0
  310. package/ImageEditor/MetaFields.js +20 -0
  311. package/ImageEditor/MetaFields.js.map +1 -0
  312. package/ImageEditor/SectionLabel.d.ts +8 -0
  313. package/ImageEditor/SectionLabel.js +7 -0
  314. package/ImageEditor/SectionLabel.js.map +1 -0
  315. package/ImageEditor/geometry.d.ts +46 -0
  316. package/ImageEditor/geometry.js +126 -0
  317. package/ImageEditor/geometry.js.map +1 -0
  318. package/ImageEditor/index.d.ts +3 -0
  319. package/ImageEditor/index.js +3 -0
  320. package/ImageEditor/types.d.ts +52 -0
  321. package/ImageEditor/types.js +35 -0
  322. package/ImageEditor/types.js.map +1 -0
  323. package/Input/Input.d.ts +7 -6
  324. package/Input/Input.stories.d.ts +1 -1
  325. package/Input/Input.stories.js.map +1 -1
  326. package/Input/InputPrimitive.d.ts +9 -8
  327. package/Input/InputPrimitive.stories.d.ts +1 -1
  328. package/Input/InputPrimitive.stories.js.map +1 -1
  329. package/Label/Label.d.ts +8 -7
  330. package/Label/Label.stories.d.ts +1 -1
  331. package/Label/Label.stories.js.map +1 -1
  332. package/Label/components/LabelValue.d.ts +1 -1
  333. package/Link/Link.d.ts +3 -3
  334. package/Link/Link.js +1 -1
  335. package/Link/Link.js.map +1 -1
  336. package/Link/Link.stories.d.ts +1 -1
  337. package/Link/Link.stories.js.map +1 -1
  338. package/List/List.d.ts +8 -7
  339. package/List/List.stories.d.ts +1 -1
  340. package/List/List.stories.js.map +1 -1
  341. package/List/components/ListItem.d.ts +7 -6
  342. package/List/components/ListItemAction.d.ts +7 -6
  343. package/List/components/ListItemHandle.d.ts +7 -6
  344. package/List/components/ListItemIcon.d.ts +7 -6
  345. package/List/components/ListItemSeparator.d.ts +7 -6
  346. package/Loader/Loader.d.ts +9 -8
  347. package/Loader/Loader.stories.d.ts +1 -1
  348. package/Loader/Loader.stories.js.map +1 -1
  349. package/Loader/OverlayLoader.d.ts +7 -6
  350. package/Loader/OverlayLoader.stories.d.ts +1 -1
  351. package/Loader/OverlayLoader.stories.js.map +1 -1
  352. package/Markdown/Markdown.d.ts +47 -0
  353. package/Markdown/Markdown.js +17 -0
  354. package/Markdown/Markdown.js.map +1 -0
  355. package/Markdown/index.d.ts +1 -0
  356. package/Markdown/index.js +1 -0
  357. package/MultiAutoComplete/MultiAutoComplete.d.ts +7 -6
  358. package/MultiAutoComplete/MultiAutoComplete.stories.d.ts +1 -1
  359. package/MultiAutoComplete/MultiAutoComplete.stories.js.map +1 -1
  360. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.d.ts +13 -6
  361. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.js +1 -0
  362. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.js.map +1 -1
  363. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.stories.d.ts +1 -1
  364. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.stories.js.map +1 -1
  365. package/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenterWithFreeInput.d.ts +3 -3
  366. package/MultiAutoComplete/primitives/useMultiAutoComplete.d.ts +3 -3
  367. package/MultiFilePicker/MultiFilePicker.d.ts +19 -18
  368. package/MultiFilePicker/MultiFilePicker.stories.d.ts +1 -1
  369. package/MultiFilePicker/MultiFilePicker.stories.js.map +1 -1
  370. package/MultiFilePicker/primitives/MultiFilePickerPrimitive.d.ts +19 -18
  371. package/MultiFilePicker/primitives/MultiFilePickerPrimitive.stories.d.ts +1 -1
  372. package/MultiFilePicker/primitives/MultiFilePickerPrimitive.stories.js.map +1 -1
  373. package/MultiSelect/MultiSelect.d.ts +7 -6
  374. package/MultiSelect/MultiSelect.stories.d.ts +1 -1
  375. package/MultiSelect/MultiSelect.stories.js.map +1 -1
  376. package/MultiSelect/primitives/MultiSelectPrimitive.d.ts +10 -6
  377. package/MultiSelect/primitives/MultiSelectPrimitive.js +12 -5
  378. package/MultiSelect/primitives/MultiSelectPrimitive.js.map +1 -1
  379. package/Popover/Popover.d.ts +7 -6
  380. package/Popover/Popover.stories.d.ts +8 -1
  381. package/Popover/Popover.stories.js +24 -1
  382. package/Popover/Popover.stories.js.map +1 -1
  383. package/Popover/primitives/PopoverPrimitive.d.ts +7 -7
  384. package/Popover/primitives/components/PopoverContent.js +6 -1
  385. package/Popover/primitives/components/PopoverContent.js.map +1 -1
  386. package/ProgressBar/ProgressBar.d.ts +7 -6
  387. package/ProgressBar/ProgressBar.stories.d.ts +1 -1
  388. package/ProgressBar/ProgressBar.stories.js.map +1 -1
  389. package/RadioGroup/RadioGroup.d.ts +7 -6
  390. package/RadioGroup/RadioGroup.stories.d.ts +1 -1
  391. package/RadioGroup/RadioGroup.stories.js.map +1 -1
  392. package/RadioGroup/primitives/Radio.d.ts +7 -6
  393. package/RadioGroup/primitives/RadioGroupPrimitive.d.ts +5 -1
  394. package/RadioGroup/primitives/RadioGroupPrimitive.stories.d.ts +1 -1
  395. package/RadioGroup/primitives/RadioGroupPrimitive.stories.js.map +1 -1
  396. package/RangeSlider/RangeSlider.d.ts +7 -6
  397. package/RangeSlider/RangeSlider.stories.d.ts +1 -1
  398. package/RangeSlider/RangeSlider.stories.js.map +1 -1
  399. package/RangeSlider/primitives/RangeSliderPrimitive.stories.d.ts +1 -1
  400. package/RangeSlider/primitives/RangeSliderPrimitive.stories.js.map +1 -1
  401. package/ScrollArea/ScrollArea.d.ts +16 -2
  402. package/ScrollArea/ScrollArea.js +25 -11
  403. package/ScrollArea/ScrollArea.js.map +1 -1
  404. package/ScrollArea/ScrollArea.stories.d.ts +1 -1
  405. package/ScrollArea/ScrollArea.stories.js.map +1 -1
  406. package/SegmentedControl/SegmentedControl.d.ts +11 -6
  407. package/SegmentedControl/SegmentedControl.js +6 -2
  408. package/SegmentedControl/SegmentedControl.js.map +1 -1
  409. package/SegmentedControl/SegmentedControl.stories.d.ts +5 -1
  410. package/SegmentedControl/SegmentedControl.stories.js +100 -2
  411. package/SegmentedControl/SegmentedControl.stories.js.map +1 -1
  412. package/SegmentedControl/SegmentedControlTab.d.ts +10 -0
  413. package/SegmentedControl/SegmentedControlTab.js +21 -0
  414. package/SegmentedControl/SegmentedControlTab.js.map +1 -0
  415. package/SegmentedControl/SegmentedControlTabs.d.ts +14 -0
  416. package/SegmentedControl/SegmentedControlTabs.js +71 -0
  417. package/SegmentedControl/SegmentedControlTabs.js.map +1 -0
  418. package/SegmentedControl/SegmentedControlTabsContext.d.ts +19 -0
  419. package/SegmentedControl/SegmentedControlTabsContext.js +11 -0
  420. package/SegmentedControl/SegmentedControlTabsContext.js.map +1 -0
  421. package/SegmentedControl/index.d.ts +2 -0
  422. package/SegmentedControl/index.js +2 -0
  423. package/SegmentedControl/primitives/SegmentedControlPrimitive.d.ts +6 -2
  424. package/SegmentedControl/primitives/SegmentedControlPrimitive.js +4 -3
  425. package/SegmentedControl/primitives/SegmentedControlPrimitive.js.map +1 -1
  426. package/SegmentedControl/primitives/SegmentedControlPrimitive.stories.d.ts +2 -1
  427. package/SegmentedControl/primitives/SegmentedControlPrimitive.stories.js +8 -1
  428. package/SegmentedControl/primitives/SegmentedControlPrimitive.stories.js.map +1 -1
  429. package/Select/Select.d.ts +7 -6
  430. package/Select/Select.stories.d.ts +1 -1
  431. package/Select/Select.stories.js.map +1 -1
  432. package/Select/primitives/SelectPrimitive.stories.d.ts +1 -1
  433. package/Select/primitives/SelectPrimitive.stories.js.map +1 -1
  434. package/Select/primitives/components/SelectContent.js +4 -6
  435. package/Select/primitives/components/SelectContent.js.map +1 -1
  436. package/Select/primitives/components/SelectTrigger.d.ts +2 -2
  437. package/Separator/Separator.d.ts +9 -8
  438. package/Separator/Separator.stories.d.ts +1 -1
  439. package/Separator/Separator.stories.js.map +1 -1
  440. package/Sidebar/Sidebar.d.ts +9 -6
  441. package/Sidebar/Sidebar.stories.d.ts +1 -1
  442. package/Sidebar/Sidebar.stories.js.map +1 -1
  443. package/Sidebar/components/SidebarContent.js +1 -1
  444. package/Sidebar/components/SidebarContent.js.map +1 -1
  445. package/Sidebar/components/SidebarIcon.d.ts +7 -6
  446. package/Sidebar/components/SidebarProvider.d.ts +4 -4
  447. package/Sidebar/components/SidebarRoot.js +1 -1
  448. package/Sidebar/components/SidebarRoot.js.map +1 -1
  449. package/Sidebar/components/items/SidebarMenuGroup.d.ts +9 -8
  450. package/Sidebar/components/items/SidebarMenuItem.d.ts +13 -9
  451. package/Sidebar/components/items/SidebarMenuItem.js +3 -1
  452. package/Sidebar/components/items/SidebarMenuItem.js.map +1 -1
  453. package/Sidebar/components/items/SidebarMenuItemBadge.d.ts +6 -0
  454. package/Sidebar/components/items/SidebarMenuItemBadge.js +7 -0
  455. package/Sidebar/components/items/SidebarMenuItemBadge.js.map +1 -0
  456. package/Sidebar/components/items/SidebarMenuItemIcon.d.ts +7 -6
  457. package/Sidebar/components/items/SidebarMenuLink.d.ts +12 -9
  458. package/Sidebar/components/items/SidebarMenuLink.js +3 -1
  459. package/Sidebar/components/items/SidebarMenuLink.js.map +1 -1
  460. package/Sidebar/components/items/SidebarMenuProvider.d.ts +4 -4
  461. package/Sidebar/components/items/SidebarMenuRootButton.d.ts +1 -1
  462. package/Sidebar/components/items/SidebarMenuRootButton.js +8 -3
  463. package/Sidebar/components/items/SidebarMenuRootButton.js.map +1 -1
  464. package/Sidebar/components/items/SidebarMenuRootItem.d.ts +9 -7
  465. package/Sidebar/components/items/SidebarMenuSubButton.d.ts +1 -1
  466. package/Sidebar/components/items/SidebarMenuSubButton.js +14 -6
  467. package/Sidebar/components/items/SidebarMenuSubButton.js.map +1 -1
  468. package/Sidebar/components/items/SidebarMenuSubItem.js +3 -3
  469. package/Sidebar/components/items/SidebarMenuSubItem.js.map +1 -1
  470. package/Sidebar/components/items/SidebarMenuSubItemIndentation.js +2 -1
  471. package/Sidebar/components/items/SidebarMenuSubItemIndentation.js.map +1 -1
  472. package/Skeleton/Skeleton.d.ts +9 -7
  473. package/Skeleton/Skeleton.js +10 -4
  474. package/Skeleton/Skeleton.js.map +1 -1
  475. package/Skeleton/Skeleton.stories.d.ts +3 -1
  476. package/Skeleton/Skeleton.stories.js +28 -2
  477. package/Skeleton/Skeleton.stories.js.map +1 -1
  478. package/Slider/Slider.d.ts +7 -6
  479. package/Slider/Slider.stories.d.ts +1 -1
  480. package/Slider/Slider.stories.js.map +1 -1
  481. package/Slider/primitives/SliderPrimitive.stories.d.ts +1 -1
  482. package/Slider/primitives/SliderPrimitive.stories.js.map +1 -1
  483. package/SteppedProgress/SteppedProgress.d.ts +7 -6
  484. package/SteppedProgress/SteppedProgress.stories.d.ts +1 -1
  485. package/SteppedProgress/SteppedProgress.stories.js.map +1 -1
  486. package/SteppedProgress/SteppedProgressItem.d.ts +7 -6
  487. package/Switch/Switch.d.ts +10 -9
  488. package/Switch/Switch.js +21 -7
  489. package/Switch/Switch.js.map +1 -1
  490. package/Switch/Switch.stories.d.ts +1 -1
  491. package/Switch/Switch.stories.js.map +1 -1
  492. package/Switch/domains/SwitchItemDto.d.ts +1 -1
  493. package/Switch/primitives/SwitchPrimitive.d.ts +10 -6
  494. package/Switch/primitives/SwitchPrimitive.js +4 -3
  495. package/Switch/primitives/SwitchPrimitive.js.map +1 -1
  496. package/Switch/primitives/SwitchPrimitive.stories.d.ts +1 -1
  497. package/Switch/primitives/SwitchPrimitive.stories.js.map +1 -1
  498. package/Table/Table.d.ts +12 -10
  499. package/Table/components/Direction.d.ts +1 -1
  500. package/Tabs/Tabs.d.ts +14 -7
  501. package/Tabs/Tabs.js +32 -11
  502. package/Tabs/Tabs.js.map +1 -1
  503. package/Tabs/Tabs.mdx +27 -0
  504. package/Tabs/Tabs.stories.d.ts +2 -1
  505. package/Tabs/Tabs.stories.js +19 -1
  506. package/Tabs/Tabs.stories.js.map +1 -1
  507. package/Tabs/components/Content.d.ts +1 -1
  508. package/Tabs/components/List.d.ts +2 -2
  509. package/Tabs/components/Tab.d.ts +7 -6
  510. package/Tabs/components/Trigger.d.ts +3 -2
  511. package/Tabs/components/Trigger.js +8 -3
  512. package/Tabs/components/Trigger.js.map +1 -1
  513. package/Tag/Tag.d.ts +8 -7
  514. package/Tag/Tag.stories.d.ts +1 -1
  515. package/Tag/Tag.stories.js.map +1 -1
  516. package/Tags/Tags.d.ts +7 -6
  517. package/Tags/Tags.stories.d.ts +1 -1
  518. package/Tags/Tags.stories.js.map +1 -1
  519. package/Tags/primitives/TagsPrimitive.d.ts +7 -6
  520. package/Tags/primitives/TagsPrimitive.stories.d.ts +1 -1
  521. package/Tags/primitives/TagsPrimitive.stories.js.map +1 -1
  522. package/Text/Text.d.ts +8 -7
  523. package/Text/Text.stories.d.ts +1 -1
  524. package/Text/Text.stories.js.map +1 -1
  525. package/Textarea/Textarea.d.ts +7 -6
  526. package/Textarea/Textarea.stories.d.ts +1 -1
  527. package/Textarea/Textarea.stories.js.map +1 -1
  528. package/Textarea/TextareaPrimitive.d.ts +9 -8
  529. package/Textarea/TextareaPrimitive.stories.d.ts +1 -1
  530. package/Textarea/TextareaPrimitive.stories.js.map +1 -1
  531. package/TimeAgo/TimeAgo.stories.d.ts +1 -1
  532. package/TimeAgo/TimeAgo.stories.js.map +1 -1
  533. package/TimeAgo/getElapsedSeconds.js +3 -3
  534. package/TimeAgo/getElapsedSeconds.js.map +1 -1
  535. package/Toast/Toast.d.ts +7 -6
  536. package/Toast/components/ToastActions.d.ts +7 -6
  537. package/Toast/components/ToastDescription.d.ts +7 -6
  538. package/Toast/components/ToastTitle.d.ts +7 -6
  539. package/Toast/useToast.stories.d.ts +1 -1
  540. package/Toast/useToast.stories.js.map +1 -1
  541. package/Toggle/Toggle.d.ts +7 -6
  542. package/Toggle/Toggle.stories.d.ts +1 -1
  543. package/Toggle/Toggle.stories.js.map +1 -1
  544. package/Toggle/primitives/TogglePrimitive.d.ts +13 -9
  545. package/Toggle/primitives/TogglePrimitive.stories.d.ts +1 -1
  546. package/Toggle/primitives/TogglePrimitive.stories.js.map +1 -1
  547. package/ToggleGroup/ToggleGroup.d.ts +7 -6
  548. package/ToggleGroup/ToggleGroup.stories.d.ts +1 -1
  549. package/ToggleGroup/ToggleGroup.stories.js.map +1 -1
  550. package/ToggleGroup/domains/ToggleGroupItem.d.ts +3 -0
  551. package/ToggleGroup/domains/ToggleGroupItem.js +6 -1
  552. package/ToggleGroup/domains/ToggleGroupItem.js.map +1 -1
  553. package/ToggleGroup/domains/ToggleGroupItemFormatted.d.ts +1 -0
  554. package/ToggleGroup/domains/ToggleGroupItemFormatter.js +2 -1
  555. package/ToggleGroup/domains/ToggleGroupItemFormatter.js.map +1 -1
  556. package/ToggleGroup/domains/ToggleGroupItemParams.d.ts +1 -0
  557. package/ToggleGroup/primitives/ToggleGroupPrimitive.d.ts +13 -9
  558. package/ToggleGroup/primitives/ToggleGroupPrimitive.js +12 -3
  559. package/ToggleGroup/primitives/ToggleGroupPrimitive.js.map +1 -1
  560. package/ToggleGroup/primitives/ToggleGroupPrimitive.stories.d.ts +1 -1
  561. package/ToggleGroup/primitives/ToggleGroupPrimitive.stories.js.map +1 -1
  562. package/Tooltip/Tooltip.d.ts +7 -6
  563. package/Tooltip/Tooltip.stories.d.ts +1 -1
  564. package/Tooltip/Tooltip.stories.js.map +1 -1
  565. package/Tree/Tree.d.ts +7 -6
  566. package/Tree/Tree.stories.d.ts +1 -1
  567. package/Tree/Tree.stories.js.map +1 -1
  568. package/Tree/components/Item.d.ts +7 -6
  569. package/Tree/components/ItemCollapseTrigger.d.ts +7 -6
  570. package/Tree/components/ItemContent.d.ts +8 -6
  571. package/Tree/components/ItemDragHandle.d.ts +7 -6
  572. package/Tree/components/ItemIcon.d.ts +7 -6
  573. package/Tree/components/ItemPlaceholder.d.ts +7 -6
  574. package/Tree/components/ItemSubIndentation.d.ts +7 -6
  575. package/Tree/useTree.js +6 -2
  576. package/Tree/useTree.js.map +1 -1
  577. package/Widget/Widget.d.ts +8 -22
  578. package/Widget/Widget.stories.d.ts +1 -1
  579. package/Widget/Widget.stories.js.map +1 -1
  580. package/Widget/components/Icon.d.ts +7 -6
  581. package/Widget/components/WidgetAction.d.ts +8 -6
  582. package/Widget/components/WidgetContent.d.ts +5 -5
  583. package/exports/admin/ui.d.ts +3 -0
  584. package/exports/admin/ui.js +3 -0
  585. package/hooks/index.d.ts +1 -0
  586. package/hooks/index.js +1 -0
  587. package/hooks/useEscapeScrollLock.d.ts +13 -0
  588. package/hooks/useEscapeScrollLock.js +21 -0
  589. package/hooks/useEscapeScrollLock.js.map +1 -0
  590. package/index.d.ts +8 -0
  591. package/index.js +8 -0
  592. package/package.json +33 -35
  593. package/theme.css +52 -0
  594. package/utils.js +53 -34
  595. package/utils.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar/Avatar.stories.js","sources":["../../src/Avatar/Avatar.stories.tsx"],"sourcesContent":["import * as React from \"react\";\nimport type { Meta, StoryObj } from \"@storybook/react-webpack5\";\nimport { ReactComponent as StormIcon } from \"@webiny/icons/storm.svg\";\nimport { Avatar } from \"./Avatar.js\";\n\nconst meta: Meta<typeof Avatar> = {\n title: \"Components/Avatar\",\n component: Avatar,\n argTypes: {\n size: {\n control: \"select\",\n options: [\"sm\", \"md\", \"lg\", \"xl\"],\n defaultValue: \"md\"\n },\n variant: {\n control: \"select\",\n options: [\"strong\", \"subtle\", \"light\", \"quiet\", \"outlined\"],\n defaultValue: \"strong\"\n }\n }\n};\n\nexport default meta;\n\ntype Story = StoryObj<typeof Avatar>;\n\nexport const Default: Story = {\n args: {\n image: <Avatar.Image src=\"https://i.pravatar.cc/300\" alt=\"@webiny\" />,\n fallback: <Avatar.Fallback delayMs={0}>W</Avatar.Fallback>\n }\n};\n\nexport const SizeSm: Story = {\n name: \"Small\",\n args: {\n ...Default.args,\n size: \"sm\"\n }\n};\nexport const SizeMd: Story = {\n name: \"Medium\",\n args: {\n ...Default.args,\n size: \"md\"\n }\n};\n\nexport const SizeLg: Story = {\n name: \"Large\",\n args: {\n ...Default.args,\n size: \"lg\"\n }\n};\n\nexport const SizeXl: Story = {\n name: \"Extra Large\",\n args: {\n ...Default.args,\n size: \"xl\"\n }\n};\n\nexport const Text: Story = {\n name: \"Fallback Text\",\n args: {\n fallback: <Avatar.Fallback>SH</Avatar.Fallback>\n }\n};\nexport const Icon: Story = {\n name: \"Icon\",\n args: {\n fallback: (\n <Avatar.Fallback>\n <StormIcon />\n </Avatar.Fallback>\n )\n }\n};\n\nexport const Documentation: Story = {\n render: args => {\n return (\n <Avatar\n {...args}\n image={args.image || <Avatar.Image src=\"https://i.pravatar.cc/300\" alt=\"@webiny\" />}\n fallback={args.fallback || <Avatar.Fallback delayMs={0}>W</Avatar.Fallback>}\n />\n );\n },\n args: {\n size: \"md\",\n variant: \"strong\",\n image: undefined,\n fallback: undefined,\n className: \"commas, separated, class, name\"\n },\n argTypes: {\n size: {\n description: \"Controls the size of the avatar\",\n control: \"select\",\n options: [\"sm\", \"md\", \"lg\", \"xl\"],\n defaultValue: \"md\"\n },\n variant: {\n description: \"Controls the visual style of the avatar\",\n control: \"select\",\n options: [\"strong\", \"subtle\", \"light\", \"quiet\", \"outlined\"],\n defaultValue: \"strong\"\n },\n image: {\n description:\n \"The image element to display. Please refer to the example code for details on usage.\"\n },\n fallback: {\n description:\n \"The fallback element to display when the image fails to load. Please refer to the example code for details on usage.\"\n },\n className: {\n description:\n \"Additional CSS class names. You can pass multiple class names, separated by commas.\",\n placeholder: \"Enter class names, separated by commas.\",\n control: \"text\"\n }\n }\n};\n"],"names":["meta","Avatar","Default","SizeSm","SizeMd","SizeLg","SizeXl","Text","Icon","StormIcon","Documentation","args","undefined"],"mappings":";;;AAKA,MAAMA,OAA4B;IAC9B,OAAO;IACP,WAAWC;IACX,UAAU;QACN,MAAM;YACF,SAAS;YACT,SAAS;gBAAC;gBAAM;gBAAM;gBAAM;aAAK;YACjC,cAAc;QAClB;QACA,SAAS;YACL,SAAS;YACT,SAAS;gBAAC;gBAAU;gBAAU;gBAAS;gBAAS;aAAW;YAC3D,cAAc;QAClB;IACJ;AACJ;AAEA,uBAAeD;AAIR,MAAME,UAAiB;IAC1B,MAAM;QACF,OAAO,WAAP,GAAO,sCAACD,OAAO,KAAK;YAAC,KAAI;YAA4B,KAAI;;QACzD,UAAU,WAAV,GAAU,sCAACA,OAAO,QAAQ;YAAC,SAAS;WAAG;IAC3C;AACJ;AAEO,MAAME,SAAgB;IACzB,MAAM;IACN,MAAM;QACF,GAAGD,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AACO,MAAME,SAAgB;IACzB,MAAM;IACN,MAAM;QACF,GAAGF,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMG,SAAgB;IACzB,MAAM;IACN,MAAM;QACF,GAAGH,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMI,SAAgB;IACzB,MAAM;IACN,MAAM;QACF,GAAGJ,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMK,OAAc;IACvB,MAAM;IACN,MAAM;QACF,UAAU,WAAV,GAAU,sCAACN,OAAO,QAAQ,QAAC;IAC/B;AACJ;AACO,MAAMO,OAAc;IACvB,MAAM;IACN,MAAM;QACF,UAAU,WAAV,GACI,sCAACP,OAAO,QAAQ,sBACZ,sCAACQ,gBAASA;IAGtB;AACJ;AAEO,MAAMC,gBAAuB;IAChC,QAAQC,CAAAA,OACG,WAAP,GACI,sCAACV,QAAMA;YACF,GAAGU,IAAI;YACR,OAAOA,KAAK,KAAK,IAAI,WAAJ,GAAI,sCAACV,OAAO,KAAK;gBAAC,KAAI;gBAA4B,KAAI;;YACvE,UAAUU,KAAK,QAAQ,IAAI,WAAJ,GAAI,sCAACV,OAAO,QAAQ;gBAAC,SAAS;eAAG;;IAIpE,MAAM;QACF,MAAM;QACN,SAAS;QACT,OAAOW;QACP,UAAUA;QACV,WAAW;IACf;IACA,UAAU;QACN,MAAM;YACF,aAAa;YACb,SAAS;YACT,SAAS;gBAAC;gBAAM;gBAAM;gBAAM;aAAK;YACjC,cAAc;QAClB;QACA,SAAS;YACL,aAAa;YACb,SAAS;YACT,SAAS;gBAAC;gBAAU;gBAAU;gBAAS;gBAAS;aAAW;YAC3D,cAAc;QAClB;QACA,OAAO;YACH,aACI;QACR;QACA,UAAU;YACN,aACI;QACR;QACA,WAAW;YACP,aACI;YACJ,aAAa;YACb,SAAS;QACb;IACJ;AACJ"}
1
+ {"version":3,"file":"Avatar/Avatar.stories.js","sources":["../../src/Avatar/Avatar.stories.tsx"],"sourcesContent":["import * as React from \"react\";\nimport type { Meta, StoryObj } from \"@storybook/react\";\nimport { ReactComponent as StormIcon } from \"@webiny/icons/storm.svg\";\nimport { Avatar } from \"./Avatar.js\";\n\nconst meta: Meta<typeof Avatar> = {\n title: \"Components/Avatar\",\n component: Avatar,\n argTypes: {\n size: {\n control: \"select\",\n options: [\"sm\", \"md\", \"lg\", \"xl\"],\n defaultValue: \"md\"\n },\n variant: {\n control: \"select\",\n options: [\"strong\", \"subtle\", \"light\", \"quiet\", \"outlined\"],\n defaultValue: \"strong\"\n }\n }\n};\n\nexport default meta;\n\ntype Story = StoryObj<typeof Avatar>;\n\nexport const Default: Story = {\n args: {\n image: <Avatar.Image src=\"https://i.pravatar.cc/300\" alt=\"@webiny\" />,\n fallback: <Avatar.Fallback delayMs={0}>W</Avatar.Fallback>\n }\n};\n\nexport const SizeSm: Story = {\n name: \"Small\",\n args: {\n ...Default.args,\n size: \"sm\"\n }\n};\nexport const SizeMd: Story = {\n name: \"Medium\",\n args: {\n ...Default.args,\n size: \"md\"\n }\n};\n\nexport const SizeLg: Story = {\n name: \"Large\",\n args: {\n ...Default.args,\n size: \"lg\"\n }\n};\n\nexport const SizeXl: Story = {\n name: \"Extra Large\",\n args: {\n ...Default.args,\n size: \"xl\"\n }\n};\n\nexport const Text: Story = {\n name: \"Fallback Text\",\n args: {\n fallback: <Avatar.Fallback>SH</Avatar.Fallback>\n }\n};\nexport const Icon: Story = {\n name: \"Icon\",\n args: {\n fallback: (\n <Avatar.Fallback>\n <StormIcon />\n </Avatar.Fallback>\n )\n }\n};\n\nexport const Documentation: Story = {\n render: args => {\n return (\n <Avatar\n {...args}\n image={args.image || <Avatar.Image src=\"https://i.pravatar.cc/300\" alt=\"@webiny\" />}\n fallback={args.fallback || <Avatar.Fallback delayMs={0}>W</Avatar.Fallback>}\n />\n );\n },\n args: {\n size: \"md\",\n variant: \"strong\",\n image: undefined,\n fallback: undefined,\n className: \"commas, separated, class, name\"\n },\n argTypes: {\n size: {\n description: \"Controls the size of the avatar\",\n control: \"select\",\n options: [\"sm\", \"md\", \"lg\", \"xl\"],\n defaultValue: \"md\"\n },\n variant: {\n description: \"Controls the visual style of the avatar\",\n control: \"select\",\n options: [\"strong\", \"subtle\", \"light\", \"quiet\", \"outlined\"],\n defaultValue: \"strong\"\n },\n image: {\n description:\n \"The image element to display. Please refer to the example code for details on usage.\"\n },\n fallback: {\n description:\n \"The fallback element to display when the image fails to load. Please refer to the example code for details on usage.\"\n },\n className: {\n description:\n \"Additional CSS class names. You can pass multiple class names, separated by commas.\",\n placeholder: \"Enter class names, separated by commas.\",\n control: \"text\"\n }\n }\n};\n"],"names":["meta","Avatar","Default","SizeSm","SizeMd","SizeLg","SizeXl","Text","Icon","StormIcon","Documentation","args","undefined"],"mappings":";;;AAKA,MAAMA,OAA4B;IAC9B,OAAO;IACP,WAAWC;IACX,UAAU;QACN,MAAM;YACF,SAAS;YACT,SAAS;gBAAC;gBAAM;gBAAM;gBAAM;aAAK;YACjC,cAAc;QAClB;QACA,SAAS;YACL,SAAS;YACT,SAAS;gBAAC;gBAAU;gBAAU;gBAAS;gBAAS;aAAW;YAC3D,cAAc;QAClB;IACJ;AACJ;AAEA,uBAAeD;AAIR,MAAME,UAAiB;IAC1B,MAAM;QACF,OAAO,WAAP,GAAO,sCAACD,OAAO,KAAK;YAAC,KAAI;YAA4B,KAAI;;QACzD,UAAU,WAAV,GAAU,sCAACA,OAAO,QAAQ;YAAC,SAAS;WAAG;IAC3C;AACJ;AAEO,MAAME,SAAgB;IACzB,MAAM;IACN,MAAM;QACF,GAAGD,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AACO,MAAME,SAAgB;IACzB,MAAM;IACN,MAAM;QACF,GAAGF,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMG,SAAgB;IACzB,MAAM;IACN,MAAM;QACF,GAAGH,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMI,SAAgB;IACzB,MAAM;IACN,MAAM;QACF,GAAGJ,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMK,OAAc;IACvB,MAAM;IACN,MAAM;QACF,UAAU,WAAV,GAAU,sCAACN,OAAO,QAAQ,QAAC;IAC/B;AACJ;AACO,MAAMO,OAAc;IACvB,MAAM;IACN,MAAM;QACF,UAAU,WAAV,GACI,sCAACP,OAAO,QAAQ,sBACZ,sCAACQ,gBAASA;IAGtB;AACJ;AAEO,MAAMC,gBAAuB;IAChC,QAAQC,CAAAA,OACG,WAAP,GACI,sCAACV,QAAMA;YACF,GAAGU,IAAI;YACR,OAAOA,KAAK,KAAK,IAAI,WAAJ,GAAI,sCAACV,OAAO,KAAK;gBAAC,KAAI;gBAA4B,KAAI;;YACvE,UAAUU,KAAK,QAAQ,IAAI,WAAJ,GAAI,sCAACV,OAAO,QAAQ;gBAAC,SAAS;eAAG;;IAIpE,MAAM;QACF,MAAM;QACN,SAAS;QACT,OAAOW;QACP,UAAUA;QACV,WAAW;IACf;IACA,UAAU;QACN,MAAM;YACF,aAAa;YACb,SAAS;YACT,SAAS;gBAAC;gBAAM;gBAAM;gBAAM;aAAK;YACjC,cAAc;QAClB;QACA,SAAS;YACL,aAAa;YACb,SAAS;YACT,SAAS;gBAAC;gBAAU;gBAAU;gBAAS;gBAAS;aAAW;YAC3D,cAAc;QAClB;QACA,OAAO;YACH,aACI;QACR;QACA,UAAU;YACN,aACI;QACR;QACA,WAAW;YACP,aACI;YACJ,aAAa;YACb,SAAS;QACb;IACJ;AACJ"}
@@ -1,21 +1,22 @@
1
1
  import * as React from "react";
2
2
  import { Avatar as AvatarPrimitive } from "radix-ui";
3
3
  type AvatarFallbackProps = AvatarPrimitive.AvatarFallbackProps;
4
- declare const AvatarFallback: (({ className, ...props }: AvatarFallbackProps) => React.JSX.Element) & {
5
- original: ({ className, ...props }: AvatarFallbackProps) => React.JSX.Element;
4
+ declare const AvatarFallbackBase: ({ className, ...props }: AvatarFallbackProps) => React.JSX.Element;
5
+ declare const AvatarFallback: typeof AvatarFallbackBase & {
6
+ original: typeof AvatarFallbackBase;
6
7
  originalName: string;
7
8
  displayName: string;
8
9
  } & {
9
- original: (({ className, ...props }: AvatarFallbackProps) => React.JSX.Element) & {
10
- original: ({ className, ...props }: AvatarFallbackProps) => React.JSX.Element;
10
+ original: typeof AvatarFallbackBase & {
11
+ original: typeof AvatarFallbackBase;
11
12
  originalName: string;
12
13
  displayName: string;
13
14
  };
14
15
  originalName: string;
15
16
  displayName: string;
16
17
  } & {
17
- createDecorator: (decorator: import("@webiny/react-composition/types").ComponentDecorator<(({ className, ...props }: AvatarFallbackProps) => React.JSX.Element) & {
18
- original: ({ className, ...props }: AvatarFallbackProps) => React.JSX.Element;
18
+ createDecorator: (decorator: import("@webiny/react-composition/types").ComponentDecorator<typeof AvatarFallbackBase & {
19
+ original: typeof AvatarFallbackBase;
19
20
  originalName: string;
20
21
  displayName: string;
21
22
  }>) => (props: unknown) => React.JSX.Element;
@@ -1,21 +1,22 @@
1
1
  import * as React from "react";
2
2
  import { Avatar as AvatarPrimitive } from "radix-ui";
3
3
  type AvatarImageProps = AvatarPrimitive.AvatarImageProps;
4
- declare const AvatarImage: (({ className, ...props }: AvatarImageProps) => React.JSX.Element) & {
5
- original: ({ className, ...props }: AvatarImageProps) => React.JSX.Element;
4
+ declare const AvatarImageBase: ({ className, ...props }: AvatarImageProps) => React.JSX.Element;
5
+ declare const AvatarImage: typeof AvatarImageBase & {
6
+ original: typeof AvatarImageBase;
6
7
  originalName: string;
7
8
  displayName: string;
8
9
  } & {
9
- original: (({ className, ...props }: AvatarImageProps) => React.JSX.Element) & {
10
- original: ({ className, ...props }: AvatarImageProps) => React.JSX.Element;
10
+ original: typeof AvatarImageBase & {
11
+ original: typeof AvatarImageBase;
11
12
  originalName: string;
12
13
  displayName: string;
13
14
  };
14
15
  originalName: string;
15
16
  displayName: string;
16
17
  } & {
17
- createDecorator: (decorator: import("@webiny/react-composition/types").ComponentDecorator<(({ className, ...props }: AvatarImageProps) => React.JSX.Element) & {
18
- original: ({ className, ...props }: AvatarImageProps) => React.JSX.Element;
18
+ createDecorator: (decorator: import("@webiny/react-composition/types").ComponentDecorator<typeof AvatarImageBase & {
19
+ original: typeof AvatarImageBase;
19
20
  originalName: string;
20
21
  displayName: string;
21
22
  }>) => (props: unknown) => React.JSX.Element;
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ interface BetaBadgeProps {
3
+ text?: React.ReactNode;
4
+ }
5
+ declare const BetaBadge: ({ text }: BetaBadgeProps) => React.JSX.Element;
6
+ export { BetaBadge, type BetaBadgeProps };
@@ -0,0 +1,7 @@
1
+ import react from "react";
2
+ const BetaBadge = ({ text = "beta" })=>/*#__PURE__*/ react.createElement("span", {
3
+ className: "inline-flex items-center rounded-sm bg-primary/50 px-xs text-[10px] font-semibold text-neutral-light leading-none h-md shrink-0"
4
+ }, text);
5
+ export { BetaBadge };
6
+
7
+ //# sourceMappingURL=BetaBadge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BetaBadge/BetaBadge.js","sources":["../../src/BetaBadge/BetaBadge.tsx"],"sourcesContent":["import React from \"react\";\n\ninterface BetaBadgeProps {\n text?: React.ReactNode;\n}\n\nconst BetaBadge = ({ text = \"beta\" }: BetaBadgeProps) => {\n return (\n <span\n className={\n \"inline-flex items-center rounded-sm bg-primary/50 px-xs text-[10px] font-semibold text-neutral-light leading-none h-md shrink-0\"\n }\n >\n {text}\n </span>\n );\n};\n\nexport { BetaBadge, type BetaBadgeProps };\n"],"names":["BetaBadge","text"],"mappings":";AAMA,MAAMA,YAAY,CAAC,EAAEC,OAAO,MAAM,EAAkB,GACzC,WAAP,GACI,oBAAC;QACG,WACI;OAGHA"}
@@ -0,0 +1,54 @@
1
+ import React from "react";
2
+ export interface BreadcrumbsItem {
3
+ /**
4
+ * Text label of the breadcrumb. Omitted for the leading home item, which is icon-only.
5
+ */
6
+ label?: string;
7
+ /**
8
+ * Leading icon. Used by the home item; other items typically render text only. Sized and
9
+ * colored by the breadcrumb — pass the raw icon component (e.g. `<HomeIcon />`).
10
+ */
11
+ icon?: React.ReactNode;
12
+ /**
13
+ * Full, untruncated text used as the item's `title` (native tooltip). Defaults to `label`.
14
+ */
15
+ title?: string;
16
+ /**
17
+ * Navigates when the item is activated. Omitted (or on the current item) renders a
18
+ * non-interactive item.
19
+ */
20
+ onClick?: () => void;
21
+ /**
22
+ * Marks the current location — the last item in the trail. Rendered with stronger text
23
+ * and never interactive, per the design system's breadcrumb guidelines.
24
+ */
25
+ current?: boolean;
26
+ }
27
+ export interface BreadcrumbsProps extends React.HTMLAttributes<HTMLElement> {
28
+ items: BreadcrumbsItem[];
29
+ }
30
+ declare const BreadcrumbsBase: ({ items, className, ...props }: BreadcrumbsProps) => React.JSX.Element | null;
31
+ declare const Breadcrumbs: typeof BreadcrumbsBase & {
32
+ original: typeof BreadcrumbsBase;
33
+ originalName: string;
34
+ displayName: string;
35
+ } & {
36
+ original: typeof BreadcrumbsBase & {
37
+ original: typeof BreadcrumbsBase;
38
+ originalName: string;
39
+ displayName: string;
40
+ };
41
+ originalName: string;
42
+ displayName: string;
43
+ } & {
44
+ createDecorator: (decorator: import("@webiny/react-composition/types").ComponentDecorator<typeof BreadcrumbsBase & {
45
+ original: typeof BreadcrumbsBase;
46
+ originalName: string;
47
+ displayName: string;
48
+ }>) => (props: unknown) => React.JSX.Element;
49
+ };
50
+ /**
51
+ * Convenience factory for the leading, icon-only home entry.
52
+ */
53
+ export declare const createHomeBreadcrumbItem: (onClick?: () => void) => BreadcrumbsItem;
54
+ export { Breadcrumbs };
@@ -0,0 +1,66 @@
1
+ import react from "react";
2
+ import { ReactComponent } from "@webiny/icons/home.svg";
3
+ import { ReactComponent as keyboard_arrow_right_svg_ReactComponent } from "@webiny/icons/keyboard_arrow_right.svg";
4
+ import { cn, makeDecoratable } from "../utils.js";
5
+ const itemTextClassName = "block max-w-[150px] truncate text-sm tracking-normal whitespace-nowrap";
6
+ const glyphClassName = "size-md shrink-0 fill-current";
7
+ const renderGlyph = (icon)=>{
8
+ if (!/*#__PURE__*/ react.isValidElement(icon)) return icon;
9
+ const element = icon;
10
+ return /*#__PURE__*/ react.cloneElement(element, {
11
+ className: cn(glyphClassName, element.props.className)
12
+ });
13
+ };
14
+ const BreadcrumbItem = ({ item })=>{
15
+ const interactive = Boolean(item.onClick) && !item.current;
16
+ const title = item.title ?? item.label;
17
+ const content = /*#__PURE__*/ react.createElement("span", {
18
+ className: "flex items-center gap-xs"
19
+ }, item.icon ? renderGlyph(item.icon) : null, item.label ? /*#__PURE__*/ react.createElement("span", {
20
+ className: itemTextClassName
21
+ }, item.label) : null);
22
+ if (!interactive) return /*#__PURE__*/ react.createElement("span", {
23
+ "aria-current": item.current ? "page" : void 0,
24
+ title: title,
25
+ className: cn("flex items-center rounded-sm px-xs py-xxs", item.current ? "text-neutral-primary" : "text-neutral-muted")
26
+ }, content);
27
+ return /*#__PURE__*/ react.createElement("button", {
28
+ type: "button",
29
+ onClick: item.onClick,
30
+ title: title,
31
+ className: cn("flex items-center rounded-sm px-xs py-xxs", "cursor-pointer text-neutral-muted transition-colors", "hover:bg-neutral-dimmed hover:text-neutral-primary", "focus-visible:outline-none focus-visible:ring-md focus-visible:ring-primary-dimmed")
32
+ }, content);
33
+ };
34
+ const BreadcrumbSeparator = ()=>/*#__PURE__*/ react.createElement("span", {
35
+ "aria-hidden": "true",
36
+ className: "flex items-center text-neutral-muted"
37
+ }, /*#__PURE__*/ react.createElement(keyboard_arrow_right_svg_ReactComponent, {
38
+ className: glyphClassName
39
+ }));
40
+ const BreadcrumbsBase = ({ items, className, ...props })=>{
41
+ if (0 === items.length) return null;
42
+ return /*#__PURE__*/ react.createElement("nav", {
43
+ "aria-label": "Breadcrumb",
44
+ className: cn("flex items-center", className),
45
+ ...props
46
+ }, /*#__PURE__*/ react.createElement("ol", {
47
+ className: "flex items-center gap-none"
48
+ }, items.map((item, index)=>{
49
+ const key = `${item.label ?? "home"}-${index}`;
50
+ return /*#__PURE__*/ react.createElement("li", {
51
+ key: key,
52
+ className: "flex items-center"
53
+ }, index > 0 ? /*#__PURE__*/ react.createElement(BreadcrumbSeparator, null) : null, /*#__PURE__*/ react.createElement(BreadcrumbItem, {
54
+ item: item
55
+ }));
56
+ })));
57
+ };
58
+ const Breadcrumbs = makeDecoratable("Breadcrumbs", BreadcrumbsBase);
59
+ const createHomeBreadcrumbItem = (onClick)=>({
60
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
61
+ title: "Home",
62
+ onClick
63
+ });
64
+ export { Breadcrumbs, createHomeBreadcrumbItem };
65
+
66
+ //# sourceMappingURL=Breadcrumbs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Breadcrumbs/Breadcrumbs.js","sources":["../../src/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import React from \"react\";\nimport { ReactComponent as HomeIcon } from \"@webiny/icons/home.svg\";\nimport { ReactComponent as SeparatorIcon } from \"@webiny/icons/keyboard_arrow_right.svg\";\nimport { cn } from \"~/utils.js\";\nimport { makeDecoratable } from \"~/utils.js\";\n\nexport interface BreadcrumbsItem {\n /**\n * Text label of the breadcrumb. Omitted for the leading home item, which is icon-only.\n */\n label?: string;\n /**\n * Leading icon. Used by the home item; other items typically render text only. Sized and\n * colored by the breadcrumb — pass the raw icon component (e.g. `<HomeIcon />`).\n */\n icon?: React.ReactNode;\n /**\n * Full, untruncated text used as the item's `title` (native tooltip). Defaults to `label`.\n */\n title?: string;\n /**\n * Navigates when the item is activated. Omitted (or on the current item) renders a\n * non-interactive item.\n */\n onClick?: () => void;\n /**\n * Marks the current location — the last item in the trail. Rendered with stronger text\n * and never interactive, per the design system's breadcrumb guidelines.\n */\n current?: boolean;\n}\n\nexport interface BreadcrumbsProps extends React.HTMLAttributes<HTMLElement> {\n items: BreadcrumbsItem[];\n}\n\nconst itemTextClassName = \"block max-w-[150px] truncate text-sm tracking-normal whitespace-nowrap\";\n\n// The material glyphs default their `fill` to `currentColor`, so the surrounding text color\n// (muted / primary / hover) drives the icon color too.\nconst glyphClassName = \"size-md shrink-0 fill-current\";\n\nconst renderGlyph = (icon: React.ReactNode) => {\n if (!React.isValidElement(icon)) {\n return icon;\n }\n const element = icon as React.ReactElement<{ className?: string }>;\n return React.cloneElement(element, {\n className: cn(glyphClassName, element.props.className)\n });\n};\n\nconst BreadcrumbItem = ({ item }: { item: BreadcrumbsItem }) => {\n const interactive = Boolean(item.onClick) && !item.current;\n const title = item.title ?? item.label;\n\n const content = (\n <span className=\"flex items-center gap-xs\">\n {item.icon ? renderGlyph(item.icon) : null}\n {item.label ? <span className={itemTextClassName}>{item.label}</span> : null}\n </span>\n );\n\n // The current (active) item and any item without an action render as plain text.\n if (!interactive) {\n return (\n <span\n aria-current={item.current ? \"page\" : undefined}\n title={title}\n className={cn(\n \"flex items-center rounded-sm px-xs py-xxs\",\n item.current ? \"text-neutral-primary\" : \"text-neutral-muted\"\n )}\n >\n {content}\n </span>\n );\n }\n\n return (\n <button\n type=\"button\"\n onClick={item.onClick}\n title={title}\n className={cn(\n \"flex items-center rounded-sm px-xs py-xxs\",\n \"cursor-pointer text-neutral-muted transition-colors\",\n \"hover:bg-neutral-dimmed hover:text-neutral-primary\",\n \"focus-visible:outline-none focus-visible:ring-md focus-visible:ring-primary-dimmed\"\n )}\n >\n {content}\n </button>\n );\n};\n\nconst BreadcrumbSeparator = () => {\n return (\n <span aria-hidden=\"true\" className=\"flex items-center text-neutral-muted\">\n <SeparatorIcon className={glyphClassName} />\n </span>\n );\n};\n\nconst BreadcrumbsBase = ({ items, className, ...props }: BreadcrumbsProps) => {\n if (items.length === 0) {\n return null;\n }\n\n return (\n <nav aria-label=\"Breadcrumb\" className={cn(\"flex items-center\", className)} {...props}>\n <ol className=\"flex items-center gap-none\">\n {items.map((item, index) => {\n // A stable-enough key: labels are unique within a trail; index breaks ties.\n const key = `${item.label ?? \"home\"}-${index}`;\n return (\n <li key={key} className=\"flex items-center\">\n {index > 0 ? <BreadcrumbSeparator /> : null}\n <BreadcrumbItem item={item} />\n </li>\n );\n })}\n </ol>\n </nav>\n );\n};\n\nconst Breadcrumbs = makeDecoratable(\"Breadcrumbs\", BreadcrumbsBase);\n\n/**\n * Convenience factory for the leading, icon-only home entry.\n */\nexport const createHomeBreadcrumbItem = (onClick?: () => void): BreadcrumbsItem => ({\n icon: <HomeIcon />,\n title: \"Home\",\n onClick\n});\n\nexport { Breadcrumbs };\n"],"names":["itemTextClassName","glyphClassName","renderGlyph","icon","React","element","cn","BreadcrumbItem","item","interactive","Boolean","title","content","undefined","BreadcrumbSeparator","SeparatorIcon","BreadcrumbsBase","items","className","props","index","key","Breadcrumbs","makeDecoratable","createHomeBreadcrumbItem","onClick","HomeIcon"],"mappings":";;;;AAoCA,MAAMA,oBAAoB;AAI1B,MAAMC,iBAAiB;AAEvB,MAAMC,cAAc,CAACC;IACjB,IAAI,CAAC,WAAD,GAACC,MAAAA,cAAoB,CAACD,OACtB,OAAOA;IAEX,MAAME,UAAUF;IAChB,OAAO,WAAP,GAAOC,MAAAA,YAAkB,CAACC,SAAS;QAC/B,WAAWC,GAAGL,gBAAgBI,QAAQ,KAAK,CAAC,SAAS;IACzD;AACJ;AAEA,MAAME,iBAAiB,CAAC,EAAEC,IAAI,EAA6B;IACvD,MAAMC,cAAcC,QAAQF,KAAK,OAAO,KAAK,CAACA,KAAK,OAAO;IAC1D,MAAMG,QAAQH,KAAK,KAAK,IAAIA,KAAK,KAAK;IAEtC,MAAMI,UAAU,WAAVA,GACF,oBAAC;QAAK,WAAU;OACXJ,KAAK,IAAI,GAAGN,YAAYM,KAAK,IAAI,IAAI,MACrCA,KAAK,KAAK,GAAG,WAAH,GAAG,oBAAC;QAAK,WAAWR;OAAoBQ,KAAK,KAAK,IAAW;IAKhF,IAAI,CAACC,aACD,OAAO,WAAP,GACI,oBAAC;QACG,gBAAcD,KAAK,OAAO,GAAG,SAASK;QACtC,OAAOF;QACP,WAAWL,GACP,6CACAE,KAAK,OAAO,GAAG,yBAAyB;OAG3CI;IAKb,OAAO,WAAP,GACI,oBAAC;QACG,MAAK;QACL,SAASJ,KAAK,OAAO;QACrB,OAAOG;QACP,WAAWL,GACP,6CACA,uDACA,sDACA;OAGHM;AAGb;AAEA,MAAME,sBAAsB,IACjB,WAAP,GACI,oBAAC;QAAK,eAAY;QAAO,WAAU;qBAC/B,oBAACC,yCAAaA;QAAC,WAAWd;;AAKtC,MAAMe,kBAAkB,CAAC,EAAEC,KAAK,EAAEC,SAAS,EAAE,GAAGC,OAAyB;IACrE,IAAIF,AAAiB,MAAjBA,MAAM,MAAM,EACZ,OAAO;IAGX,OAAO,WAAP,GACI,oBAAC;QAAI,cAAW;QAAa,WAAWX,GAAG,qBAAqBY;QAAa,GAAGC,KAAK;qBACjF,oBAAC;QAAG,WAAU;OACTF,MAAM,GAAG,CAAC,CAACT,MAAMY;QAEd,MAAMC,MAAM,GAAGb,KAAK,KAAK,IAAI,OAAO,CAAC,EAAEY,OAAO;QAC9C,OAAO,WAAP,GACI,oBAAC;YAAG,KAAKC;YAAK,WAAU;WACnBD,QAAQ,IAAI,WAAJ,GAAI,oBAACN,qBAAmBA,QAAM,oBACvC,oBAACP,gBAAcA;YAAC,MAAMC;;IAGlC;AAIhB;AAEA,MAAMc,cAAcC,gBAAgB,eAAeP;AAK5C,MAAMQ,2BAA2B,CAACC,UAA2C;QAChF,MAAM,WAAN,GAAM,oBAACC,gBAAQA;QACf,OAAO;QACPD;IACJ"}
@@ -0,0 +1,9 @@
1
+ import type { Meta } from "@storybook/react";
2
+ import type { StoryObj } from "@storybook/react";
3
+ import { Breadcrumbs } from "./Breadcrumbs.js";
4
+ declare const meta: Meta<typeof Breadcrumbs>;
5
+ export default meta;
6
+ type Story = StoryObj<typeof Breadcrumbs>;
7
+ export declare const Default: Story;
8
+ export declare const DeepTrail: Story;
9
+ export declare const HomeOnly: Story;
@@ -0,0 +1,71 @@
1
+ import react from "react";
2
+ import { ReactComponent } from "@webiny/icons/home.svg";
3
+ import { Breadcrumbs } from "./Breadcrumbs.js";
4
+ const meta = {
5
+ title: "Components/Breadcrumbs",
6
+ component: Breadcrumbs,
7
+ decorators: [
8
+ (Story)=>/*#__PURE__*/ react.createElement("div", {
9
+ className: "w-[850px] rounded-sm bg-neutral-base px-md py-xs-plus"
10
+ }, /*#__PURE__*/ react.createElement(Story, null))
11
+ ]
12
+ };
13
+ const Breadcrumbs_stories = meta;
14
+ const noop = ()=>void 0;
15
+ const Default = {
16
+ args: {
17
+ items: [
18
+ {
19
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
20
+ title: "Home",
21
+ onClick: noop
22
+ },
23
+ {
24
+ label: "Page Builder",
25
+ onClick: noop
26
+ },
27
+ {
28
+ label: "Articles",
29
+ current: true
30
+ }
31
+ ]
32
+ }
33
+ };
34
+ const DeepTrail = {
35
+ args: {
36
+ items: [
37
+ {
38
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
39
+ title: "Home",
40
+ onClick: noop
41
+ },
42
+ {
43
+ label: "Headless CMS",
44
+ onClick: noop
45
+ },
46
+ {
47
+ label: "Articles",
48
+ onClick: noop
49
+ },
50
+ {
51
+ label: "The best article ever written about breadcrumbs",
52
+ current: true
53
+ }
54
+ ]
55
+ }
56
+ };
57
+ const HomeOnly = {
58
+ args: {
59
+ items: [
60
+ {
61
+ icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
62
+ title: "Home",
63
+ current: true
64
+ }
65
+ ]
66
+ }
67
+ };
68
+ export default Breadcrumbs_stories;
69
+ export { DeepTrail, Default, HomeOnly };
70
+
71
+ //# sourceMappingURL=Breadcrumbs.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Breadcrumbs/Breadcrumbs.stories.js","sources":["../../src/Breadcrumbs/Breadcrumbs.stories.tsx"],"sourcesContent":["import type { Meta } from \"@storybook/react\";\nimport type { StoryObj } from \"@storybook/react\";\nimport React from \"react\";\nimport { ReactComponent as HomeIcon } from \"@webiny/icons/home.svg\";\nimport { Breadcrumbs } from \"./Breadcrumbs.js\";\n\nconst meta: Meta<typeof Breadcrumbs> = {\n title: \"Components/Breadcrumbs\",\n component: Breadcrumbs,\n decorators: [\n Story => (\n <div className=\"w-[850px] rounded-sm bg-neutral-base px-md py-xs-plus\">\n <Story />\n </div>\n )\n ]\n};\n\nexport default meta;\n\ntype Story = StoryObj<typeof Breadcrumbs>;\n\nconst noop = () => undefined;\n\nexport const Default: Story = {\n args: {\n items: [\n { icon: <HomeIcon />, title: \"Home\", onClick: noop },\n { label: \"Page Builder\", onClick: noop },\n { label: \"Articles\", current: true }\n ]\n }\n};\n\nexport const DeepTrail: Story = {\n args: {\n items: [\n { icon: <HomeIcon />, title: \"Home\", onClick: noop },\n { label: \"Headless CMS\", onClick: noop },\n { label: \"Articles\", onClick: noop },\n { label: \"The best article ever written about breadcrumbs\", current: true }\n ]\n }\n};\n\nexport const HomeOnly: Story = {\n args: {\n items: [{ icon: <HomeIcon />, title: \"Home\", current: true }]\n }\n};\n"],"names":["meta","Breadcrumbs","Story","noop","undefined","Default","HomeIcon","DeepTrail","HomeOnly"],"mappings":";;;AAMA,MAAMA,OAAiC;IACnC,OAAO;IACP,WAAWC;IACX,YAAY;QACRC,CAAAA,QAAAA,WAAAA,GACI,oBAAC;gBAAI,WAAU;6BACX,oBAACA,OAAAA;KAGZ;AACL;AAEA,4BAAeF;AAIf,MAAMG,OAAO,IAAMC;AAEZ,MAAMC,UAAiB;IAC1B,MAAM;QACF,OAAO;YACH;gBAAE,MAAM,WAAN,GAAM,oBAACC,gBAAQA;gBAAK,OAAO;gBAAQ,SAASH;YAAK;YACnD;gBAAE,OAAO;gBAAgB,SAASA;YAAK;YACvC;gBAAE,OAAO;gBAAY,SAAS;YAAK;SACtC;IACL;AACJ;AAEO,MAAMI,YAAmB;IAC5B,MAAM;QACF,OAAO;YACH;gBAAE,MAAM,WAAN,GAAM,oBAACD,gBAAQA;gBAAK,OAAO;gBAAQ,SAASH;YAAK;YACnD;gBAAE,OAAO;gBAAgB,SAASA;YAAK;YACvC;gBAAE,OAAO;gBAAY,SAASA;YAAK;YACnC;gBAAE,OAAO;gBAAmD,SAAS;YAAK;SAC7E;IACL;AACJ;AAEO,MAAMK,WAAkB;IAC3B,MAAM;QACF,OAAO;YAAC;gBAAE,MAAM,WAAN,GAAM,oBAACF,gBAAQA;gBAAK,OAAO;gBAAQ,SAAS;YAAK;SAAE;IACjE;AACJ"}
@@ -0,0 +1 @@
1
+ export * from "./Breadcrumbs.js";
@@ -0,0 +1 @@
1
+ export * from "./Breadcrumbs.js";
@@ -1,9 +1,9 @@
1
1
  import React from "react";
2
2
  import { type VariantProps } from "../utils.js";
3
3
  declare const buttonVariants: (props?: ({
4
- variant?: "primary" | "secondary" | "tertiary" | "ghost" | "ghost-negative" | null | undefined;
5
- size?: "sm" | "md" | "lg" | "xl" | null | undefined;
6
- contentLayout?: "text" | "icon" | "text-icon-start" | "text-icon-end" | null | undefined;
4
+ variant?: "ghost" | "ghost-negative" | "link" | "primary" | "secondary" | "tertiary" | null | undefined;
5
+ size?: "lg" | "md" | "sm" | "xl" | null | undefined;
6
+ contentLayout?: "icon" | "text" | "text-icon-end" | "text-icon-start" | null | undefined;
7
7
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
8
8
  interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "children">, VariantProps<typeof buttonVariants> {
9
9
  text?: React.ReactNode;
@@ -13,21 +13,22 @@ interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>
13
13
  asChild?: boolean;
14
14
  containerClassName?: string;
15
15
  }
16
- declare const Button: (({ className, variant, size, asChild, text, children, icon, iconPosition, disabled, containerClassName, ...rest }: ButtonProps) => React.JSX.Element) & {
17
- original: ({ className, variant, size, asChild, text, children, icon, iconPosition, disabled, containerClassName, ...rest }: ButtonProps) => React.JSX.Element;
16
+ declare const ButtonBase: ({ className, variant, size, asChild, text, children, icon, iconPosition, disabled, containerClassName, ...rest }: ButtonProps) => React.JSX.Element;
17
+ declare const Button: typeof ButtonBase & {
18
+ original: typeof ButtonBase;
18
19
  originalName: string;
19
20
  displayName: string;
20
21
  } & {
21
- original: (({ className, variant, size, asChild, text, children, icon, iconPosition, disabled, containerClassName, ...rest }: ButtonProps) => React.JSX.Element) & {
22
- original: ({ className, variant, size, asChild, text, children, icon, iconPosition, disabled, containerClassName, ...rest }: ButtonProps) => React.JSX.Element;
22
+ original: typeof ButtonBase & {
23
+ original: typeof ButtonBase;
23
24
  originalName: string;
24
25
  displayName: string;
25
26
  };
26
27
  originalName: string;
27
28
  displayName: string;
28
29
  } & {
29
- createDecorator: (decorator: import("@webiny/react-composition/types").ComponentDecorator<(({ className, variant, size, asChild, text, children, icon, iconPosition, disabled, containerClassName, ...rest }: ButtonProps) => React.JSX.Element) & {
30
- original: ({ className, variant, size, asChild, text, children, icon, iconPosition, disabled, containerClassName, ...rest }: ButtonProps) => React.JSX.Element;
30
+ createDecorator: (decorator: import("@webiny/react-composition/types").ComponentDecorator<typeof ButtonBase & {
31
+ original: typeof ButtonBase;
31
32
  originalName: string;
32
33
  displayName: string;
33
34
  }>) => (props: unknown) => React.JSX.Element;
package/Button/Button.js CHANGED
@@ -48,6 +48,13 @@ const buttonVariants = cva([
48
48
  "active:bg-neutral-base/30",
49
49
  "aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-base/50",
50
50
  "focus-visible:border-neutral-base!"
51
+ ],
52
+ link: [
53
+ "bg-transparent text-accent-primary fill-accent-default",
54
+ "p-0! border-0! rounded-xs",
55
+ "hover:underline!",
56
+ "aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-strong",
57
+ "focus-visible:ring-lg focus-visible:ring-primary-dimmed"
51
58
  ]
52
59
  },
53
60
  size: {
@@ -1 +1 @@
1
- {"version":3,"file":"Button/Button.js","sources":["../../src/Button/Button.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { Slot } from \"radix-ui\";\nimport { cn, cva, type VariantProps, makeDecoratable } from \"~/utils.js\";\n\nconst buttonWrapperVariants = cva(\"inline-block\", {\n variants: {\n disabled: {\n true: \"cursor-not-allowed\"\n }\n }\n});\n\nconst buttonVariants = cva(\n [\n \"border-transparent rounded font-sans inline-flex items-center justify-center whitespace-nowrap ring-offset-background transition-colors no-underline! cursor-pointer\",\n \"aria-disabled:pointer-events-none\",\n \"focus-visible:outline-none focus-visible:border-accent-default\"\n ],\n {\n variants: {\n variant: {\n primary: [\n \"bg-primary text-neutral-light fill-neutral-base\",\n \"hover:bg-primary-strong\",\n \"active:bg-primary-xstrong\",\n \"aria-disabled:bg-primary-disabled\",\n \"focus-visible:ring-lg focus-visible:ring-primary-dimmed\"\n ],\n secondary: [\n \"bg-neutral-dimmed text-neutral-strong fill-neutral-xstrong\",\n \"hover:bg-neutral-muted\",\n \"active:bg-neutral-strong\",\n \"aria-disabled:bg-neutral-disabled aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-strong\",\n \"focus-visible:ring-lg focus-visible:ring-primary-dimmed\"\n ],\n tertiary: [\n \"bg-neutral-base text-neutral-strong border-neutral-muted fill-neutral-xstrong\",\n \"hover:bg-neutral-light\",\n \"active:bg-neutral-muted\",\n \"aria-disabled:bg-neutral-disabled aria-disabled:border-neutral-dimmed aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-strong\",\n \"focus-visible:ring-lg focus-visible:ring-primary-dimmed\"\n ],\n ghost: [\n \"bg-transparent text-neutral-strong fill-neutral-xstrong\",\n \"hover:bg-neutral-dimmed\",\n \"active:bg-neutral-muted\",\n \"aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-strong\"\n ],\n \"ghost-negative\": [\n \"bg-transparent text-neutral-light fill-neutral-base\",\n \"hover:bg-neutral-base/20\",\n \"active:bg-neutral-base/30\",\n \"aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-base/50\",\n \"focus-visible:border-neutral-base!\"\n ]\n },\n size: {\n sm: [\n \"text-sm border-sm rounded-sm [&>svg]:size-md\",\n \"py-[calc(var(--padding-xs)-(var(--border-width-sm)))] px-[calc(var(--padding-sm)-(var(--border-width-sm)))]\"\n ],\n md: [\n \"text-md border-sm rounded-md [&>svg]:size-md\",\n \"py-[calc(var(--padding-xs-plus)-(var(--border-width-sm)))] px-[calc(var(--padding-sm-extra)-(var(--border-width-sm)))]\"\n ],\n lg: [\n \"text-md border-sm rounded-md [&>svg]:size-md-plus\",\n \"py-[calc(var(--padding-sm-plus)-(var(--border-width-sm)))] px-[calc(var(--padding-md)-(var(--border-width-sm)))]\"\n ],\n xl: [\n \"text-lg font-semibold border-lg rounded-md [&>svg]:size-lg\",\n \"py-[calc(theme(padding.md-plus)-(var(--border-width-md)))] px-[calc(var(--padding-md)-(var(--border-width-md)))]\"\n ]\n },\n contentLayout: {\n text: \"\",\n icon: \"\",\n \"text-icon-start\": \"\",\n \"text-icon-end\": \"\"\n }\n },\n compoundVariants: [\n {\n size: \"xl\",\n variant: \"ghost\",\n className: \"focus-visible:border-md\"\n },\n {\n size: \"sm\",\n contentLayout: \"icon\",\n className: \"p-[calc(var(--padding-xs)-(var(--border-width-sm)))]\"\n },\n {\n size: \"sm\",\n contentLayout: \"text-icon-start\",\n className: \"pl-[calc(var(--padding-xs)-(var(--border-width-sm)))] [&>svg]:mr-xs\"\n },\n {\n size: \"sm\",\n contentLayout: \"text-icon-end\",\n className: \"pr-[calc(var(--padding-xs)-(var(--border-width-sm)))] [&>svg]:ml-xs\"\n },\n {\n size: \"md\",\n contentLayout: \"icon\",\n className: \"p-[calc(var(--padding-sm)-(var(--border-width-sm)))]\"\n },\n {\n size: \"md\",\n contentLayout: \"text-icon-start\",\n className:\n \"pl-[calc(var(--padding-xs-plus)-(var(--border-width-sm)))] [&>svg]:mr-xs\"\n },\n {\n size: \"md\",\n contentLayout: \"text-icon-end\",\n className:\n \"pr-[calc(var(--padding-xs-plus)-(var(--border-width-sm)))] [&>svg]:ml-xs\"\n },\n {\n size: \"lg\",\n contentLayout: \"icon\",\n className: \"p-[calc(var(--padding-sm-plus)-(var(--border-width-sm)))]\"\n },\n {\n size: \"lg\",\n contentLayout: \"text-icon-start\",\n className:\n \"pl-[calc(var(--padding-sm-extra)-(var(--border-width-sm)))] [&>svg]:mr-xs-plus\"\n },\n {\n size: \"lg\",\n contentLayout: \"text-icon-end\",\n className:\n \"pr-[calc(var(--padding-sm-extra)-(var(--border-width-sm)))] [&>svg]:ml-xs-plus\"\n },\n {\n size: \"xl\",\n contentLayout: \"icon\",\n className: \"p-[calc(var(--padding-md)-(var(--border-width-md)))]\"\n },\n {\n size: \"xl\",\n contentLayout: \"text-icon-start\",\n className:\n \"pl-[calc(var(--padding-sm-extra)-(var(--border-width-md)))] [&>svg]:mr-sm\"\n },\n {\n size: \"xl\",\n contentLayout: \"text-icon-end\",\n className:\n \"pr-[calc(var(--padding-sm-extra)-(var(--border-width-md)))] [&>svg]:ml-sm\"\n }\n ],\n defaultVariants: {\n variant: \"primary\",\n size: \"md\"\n }\n }\n);\n\ninterface ButtonProps\n extends\n Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, \"children\">,\n VariantProps<typeof buttonVariants> {\n text?: React.ReactNode;\n children?: React.ReactNode;\n\n icon?: React.ReactNode;\n\n iconPosition?: \"start\" | \"end\";\n\n asChild?: boolean;\n\n containerClassName?: string;\n}\n\ntype ContentLayout = \"text\" | \"icon\" | \"text-icon-start\" | \"text-icon-end\";\n\nconst ButtonBase = ({\n className,\n variant,\n size,\n asChild = false,\n text,\n children,\n icon,\n iconPosition = \"start\",\n disabled,\n containerClassName,\n ...rest\n}: ButtonProps) => {\n const Comp = asChild ? Slot.Root : \"button\";\n\n const contentLayout = useMemo<ContentLayout>(() => {\n if (!text && !children) {\n return \"icon\";\n }\n\n if (!icon) {\n return \"text\";\n }\n\n return `text-icon-${iconPosition}` as ContentLayout;\n }, [text, children, icon, iconPosition]);\n\n const cssClasses = cn(\n buttonVariants({\n variant,\n size,\n contentLayout\n }),\n className\n );\n\n return (\n <span className={cn(buttonWrapperVariants({ disabled }), containerClassName)}>\n <Comp className={cssClasses} disabled={disabled} aria-disabled={disabled} {...rest}>\n {iconPosition !== \"end\" && icon}\n <Slot.Slottable>{text || children || null}</Slot.Slottable>\n {iconPosition === \"end\" && icon}\n </Comp>\n </span>\n );\n};\n\nconst Button = makeDecoratable(\"Button\", ButtonBase);\n\nexport { Button, type ButtonProps, buttonVariants };\n"],"names":["buttonWrapperVariants","cva","buttonVariants","ButtonBase","className","variant","size","asChild","text","children","icon","iconPosition","disabled","containerClassName","rest","Comp","Slot","contentLayout","useMemo","cssClasses","cn","Button","makeDecoratable"],"mappings":";;;AAIA,MAAMA,wBAAwBC,IAAI,gBAAgB;IAC9C,UAAU;QACN,UAAU;YACN,MAAM;QACV;IACJ;AACJ;AAEA,MAAMC,iBAAiBD,IACnB;IACI;IACA;IACA;CACH,EACD;IACI,UAAU;QACN,SAAS;YACL,SAAS;gBACL;gBACA;gBACA;gBACA;gBACA;aACH;YACD,WAAW;gBACP;gBACA;gBACA;gBACA;gBACA;aACH;YACD,UAAU;gBACN;gBACA;gBACA;gBACA;gBACA;aACH;YACD,OAAO;gBACH;gBACA;gBACA;gBACA;aACH;YACD,kBAAkB;gBACd;gBACA;gBACA;gBACA;gBACA;aACH;QACL;QACA,MAAM;YACF,IAAI;gBACA;gBACA;aACH;YACD,IAAI;gBACA;gBACA;aACH;YACD,IAAI;gBACA;gBACA;aACH;YACD,IAAI;gBACA;gBACA;aACH;QACL;QACA,eAAe;YACX,MAAM;YACN,MAAM;YACN,mBAAmB;YACnB,iBAAiB;QACrB;IACJ;IACA,kBAAkB;QACd;YACI,MAAM;YACN,SAAS;YACT,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;KACH;IACD,iBAAiB;QACb,SAAS;QACT,MAAM;IACV;AACJ;AAqBJ,MAAME,aAAa,CAAC,EAChBC,SAAS,EACTC,OAAO,EACPC,IAAI,EACJC,UAAU,KAAK,EACfC,IAAI,EACJC,QAAQ,EACRC,IAAI,EACJC,eAAe,OAAO,EACtBC,QAAQ,EACRC,kBAAkB,EAClB,GAAGC,MACO;IACV,MAAMC,OAAOR,UAAUS,KAAK,IAAI,GAAG;IAEnC,MAAMC,gBAAgBC,QAAuB;QACzC,IAAI,CAACV,QAAQ,CAACC,UACV,OAAO;QAGX,IAAI,CAACC,MACD,OAAO;QAGX,OAAO,CAAC,UAAU,EAAEC,cAAc;IACtC,GAAG;QAACH;QAAMC;QAAUC;QAAMC;KAAa;IAEvC,MAAMQ,aAAaC,GACflB,eAAe;QACXG;QACAC;QACAW;IACJ,IACAb;IAGJ,OAAO,WAAP,GACI,oBAAC;QAAK,WAAWgB,GAAGpB,sBAAsB;YAAEY;QAAS,IAAIC;qBACrD,oBAACE,MAAAA;QAAK,WAAWI;QAAY,UAAUP;QAAU,iBAAeA;QAAW,GAAGE,IAAI;OAC7EH,AAAiB,UAAjBA,gBAA0BD,MAAAA,WAAAA,GAC3B,oBAACM,KAAK,SAAS,QAAER,QAAQC,YAAY,OACpCE,AAAiB,UAAjBA,gBAA0BD;AAI3C;AAEA,MAAMW,SAASC,gBAAgB,UAAUnB"}
1
+ {"version":3,"file":"Button/Button.js","sources":["../../src/Button/Button.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { Slot } from \"radix-ui\";\nimport { cn, cva, type VariantProps, makeDecoratable } from \"~/utils.js\";\n\nconst buttonWrapperVariants = cva(\"inline-block\", {\n variants: {\n disabled: {\n true: \"cursor-not-allowed\"\n }\n }\n});\n\nconst buttonVariants = cva(\n [\n \"border-transparent rounded font-sans inline-flex items-center justify-center whitespace-nowrap ring-offset-background transition-colors no-underline! cursor-pointer\",\n \"aria-disabled:pointer-events-none\",\n \"focus-visible:outline-none focus-visible:border-accent-default\"\n ],\n {\n variants: {\n variant: {\n primary: [\n \"bg-primary text-neutral-light fill-neutral-base\",\n \"hover:bg-primary-strong\",\n \"active:bg-primary-xstrong\",\n \"aria-disabled:bg-primary-disabled\",\n \"focus-visible:ring-lg focus-visible:ring-primary-dimmed\"\n ],\n secondary: [\n \"bg-neutral-dimmed text-neutral-strong fill-neutral-xstrong\",\n \"hover:bg-neutral-muted\",\n \"active:bg-neutral-strong\",\n \"aria-disabled:bg-neutral-disabled aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-strong\",\n \"focus-visible:ring-lg focus-visible:ring-primary-dimmed\"\n ],\n tertiary: [\n \"bg-neutral-base text-neutral-strong border-neutral-muted fill-neutral-xstrong\",\n \"hover:bg-neutral-light\",\n \"active:bg-neutral-muted\",\n \"aria-disabled:bg-neutral-disabled aria-disabled:border-neutral-dimmed aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-strong\",\n \"focus-visible:ring-lg focus-visible:ring-primary-dimmed\"\n ],\n ghost: [\n \"bg-transparent text-neutral-strong fill-neutral-xstrong\",\n \"hover:bg-neutral-dimmed\",\n \"active:bg-neutral-muted\",\n \"aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-strong\"\n ],\n \"ghost-negative\": [\n \"bg-transparent text-neutral-light fill-neutral-base\",\n \"hover:bg-neutral-base/20\",\n \"active:bg-neutral-base/30\",\n \"aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-base/50\",\n \"focus-visible:border-neutral-base!\"\n ],\n /*\n * An action that reads as a link, e.g. a secondary step in a dialog footer. Styled\n * like the base `a` rule in theme.css. The `!` overrides undo the padding, border\n * and underline rules that every other variant shares.\n */\n link: [\n \"bg-transparent text-accent-primary fill-accent-default\",\n \"p-0! border-0! rounded-xs\",\n \"hover:underline!\",\n \"aria-disabled:text-neutral-disabled aria-disabled:fill-neutral-strong\",\n \"focus-visible:ring-lg focus-visible:ring-primary-dimmed\"\n ]\n },\n size: {\n sm: [\n \"text-sm border-sm rounded-sm [&>svg]:size-md\",\n \"py-[calc(var(--padding-xs)-(var(--border-width-sm)))] px-[calc(var(--padding-sm)-(var(--border-width-sm)))]\"\n ],\n md: [\n \"text-md border-sm rounded-md [&>svg]:size-md\",\n \"py-[calc(var(--padding-xs-plus)-(var(--border-width-sm)))] px-[calc(var(--padding-sm-extra)-(var(--border-width-sm)))]\"\n ],\n lg: [\n \"text-md border-sm rounded-md [&>svg]:size-md-plus\",\n \"py-[calc(var(--padding-sm-plus)-(var(--border-width-sm)))] px-[calc(var(--padding-md)-(var(--border-width-sm)))]\"\n ],\n xl: [\n \"text-lg font-semibold border-lg rounded-md [&>svg]:size-lg\",\n \"py-[calc(theme(padding.md-plus)-(var(--border-width-md)))] px-[calc(var(--padding-md)-(var(--border-width-md)))]\"\n ]\n },\n contentLayout: {\n text: \"\",\n icon: \"\",\n \"text-icon-start\": \"\",\n \"text-icon-end\": \"\"\n }\n },\n compoundVariants: [\n {\n size: \"xl\",\n variant: \"ghost\",\n className: \"focus-visible:border-md\"\n },\n {\n size: \"sm\",\n contentLayout: \"icon\",\n className: \"p-[calc(var(--padding-xs)-(var(--border-width-sm)))]\"\n },\n {\n size: \"sm\",\n contentLayout: \"text-icon-start\",\n className: \"pl-[calc(var(--padding-xs)-(var(--border-width-sm)))] [&>svg]:mr-xs\"\n },\n {\n size: \"sm\",\n contentLayout: \"text-icon-end\",\n className: \"pr-[calc(var(--padding-xs)-(var(--border-width-sm)))] [&>svg]:ml-xs\"\n },\n {\n size: \"md\",\n contentLayout: \"icon\",\n className: \"p-[calc(var(--padding-sm)-(var(--border-width-sm)))]\"\n },\n {\n size: \"md\",\n contentLayout: \"text-icon-start\",\n className:\n \"pl-[calc(var(--padding-xs-plus)-(var(--border-width-sm)))] [&>svg]:mr-xs\"\n },\n {\n size: \"md\",\n contentLayout: \"text-icon-end\",\n className:\n \"pr-[calc(var(--padding-xs-plus)-(var(--border-width-sm)))] [&>svg]:ml-xs\"\n },\n {\n size: \"lg\",\n contentLayout: \"icon\",\n className: \"p-[calc(var(--padding-sm-plus)-(var(--border-width-sm)))]\"\n },\n {\n size: \"lg\",\n contentLayout: \"text-icon-start\",\n className:\n \"pl-[calc(var(--padding-sm-extra)-(var(--border-width-sm)))] [&>svg]:mr-xs-plus\"\n },\n {\n size: \"lg\",\n contentLayout: \"text-icon-end\",\n className:\n \"pr-[calc(var(--padding-sm-extra)-(var(--border-width-sm)))] [&>svg]:ml-xs-plus\"\n },\n {\n size: \"xl\",\n contentLayout: \"icon\",\n className: \"p-[calc(var(--padding-md)-(var(--border-width-md)))]\"\n },\n {\n size: \"xl\",\n contentLayout: \"text-icon-start\",\n className:\n \"pl-[calc(var(--padding-sm-extra)-(var(--border-width-md)))] [&>svg]:mr-sm\"\n },\n {\n size: \"xl\",\n contentLayout: \"text-icon-end\",\n className:\n \"pr-[calc(var(--padding-sm-extra)-(var(--border-width-md)))] [&>svg]:ml-sm\"\n }\n ],\n defaultVariants: {\n variant: \"primary\",\n size: \"md\"\n }\n }\n);\n\ninterface ButtonProps\n extends\n Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, \"children\">,\n VariantProps<typeof buttonVariants> {\n text?: React.ReactNode;\n children?: React.ReactNode;\n\n icon?: React.ReactNode;\n\n iconPosition?: \"start\" | \"end\";\n\n asChild?: boolean;\n\n containerClassName?: string;\n}\n\ntype ContentLayout = \"text\" | \"icon\" | \"text-icon-start\" | \"text-icon-end\";\n\nconst ButtonBase = ({\n className,\n variant,\n size,\n asChild = false,\n text,\n children,\n icon,\n iconPosition = \"start\",\n disabled,\n containerClassName,\n ...rest\n}: ButtonProps) => {\n const Comp = asChild ? Slot.Root : \"button\";\n\n const contentLayout = useMemo<ContentLayout>(() => {\n if (!text && !children) {\n return \"icon\";\n }\n\n if (!icon) {\n return \"text\";\n }\n\n return `text-icon-${iconPosition}` as ContentLayout;\n }, [text, children, icon, iconPosition]);\n\n const cssClasses = cn(\n buttonVariants({\n variant,\n size,\n contentLayout\n }),\n className\n );\n\n return (\n <span className={cn(buttonWrapperVariants({ disabled }), containerClassName)}>\n <Comp className={cssClasses} disabled={disabled} aria-disabled={disabled} {...rest}>\n {iconPosition !== \"end\" && icon}\n <Slot.Slottable>{text || children || null}</Slot.Slottable>\n {iconPosition === \"end\" && icon}\n </Comp>\n </span>\n );\n};\n\nconst Button = makeDecoratable(\"Button\", ButtonBase);\n\nexport { Button, type ButtonProps, buttonVariants };\n"],"names":["buttonWrapperVariants","cva","buttonVariants","ButtonBase","className","variant","size","asChild","text","children","icon","iconPosition","disabled","containerClassName","rest","Comp","Slot","contentLayout","useMemo","cssClasses","cn","Button","makeDecoratable"],"mappings":";;;AAIA,MAAMA,wBAAwBC,IAAI,gBAAgB;IAC9C,UAAU;QACN,UAAU;YACN,MAAM;QACV;IACJ;AACJ;AAEA,MAAMC,iBAAiBD,IACnB;IACI;IACA;IACA;CACH,EACD;IACI,UAAU;QACN,SAAS;YACL,SAAS;gBACL;gBACA;gBACA;gBACA;gBACA;aACH;YACD,WAAW;gBACP;gBACA;gBACA;gBACA;gBACA;aACH;YACD,UAAU;gBACN;gBACA;gBACA;gBACA;gBACA;aACH;YACD,OAAO;gBACH;gBACA;gBACA;gBACA;aACH;YACD,kBAAkB;gBACd;gBACA;gBACA;gBACA;gBACA;aACH;YAMD,MAAM;gBACF;gBACA;gBACA;gBACA;gBACA;aACH;QACL;QACA,MAAM;YACF,IAAI;gBACA;gBACA;aACH;YACD,IAAI;gBACA;gBACA;aACH;YACD,IAAI;gBACA;gBACA;aACH;YACD,IAAI;gBACA;gBACA;aACH;QACL;QACA,eAAe;YACX,MAAM;YACN,MAAM;YACN,mBAAmB;YACnB,iBAAiB;QACrB;IACJ;IACA,kBAAkB;QACd;YACI,MAAM;YACN,SAAS;YACT,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WAAW;QACf;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;QACA;YACI,MAAM;YACN,eAAe;YACf,WACI;QACR;KACH;IACD,iBAAiB;QACb,SAAS;QACT,MAAM;IACV;AACJ;AAqBJ,MAAME,aAAa,CAAC,EAChBC,SAAS,EACTC,OAAO,EACPC,IAAI,EACJC,UAAU,KAAK,EACfC,IAAI,EACJC,QAAQ,EACRC,IAAI,EACJC,eAAe,OAAO,EACtBC,QAAQ,EACRC,kBAAkB,EAClB,GAAGC,MACO;IACV,MAAMC,OAAOR,UAAUS,KAAK,IAAI,GAAG;IAEnC,MAAMC,gBAAgBC,QAAuB;QACzC,IAAI,CAACV,QAAQ,CAACC,UACV,OAAO;QAGX,IAAI,CAACC,MACD,OAAO;QAGX,OAAO,CAAC,UAAU,EAAEC,cAAc;IACtC,GAAG;QAACH;QAAMC;QAAUC;QAAMC;KAAa;IAEvC,MAAMQ,aAAaC,GACflB,eAAe;QACXG;QACAC;QACAW;IACJ,IACAb;IAGJ,OAAO,WAAP,GACI,oBAAC;QAAK,WAAWgB,GAAGpB,sBAAsB;YAAEY;QAAS,IAAIC;qBACrD,oBAACE,MAAAA;QAAK,WAAWI;QAAY,UAAUP;QAAU,iBAAeA;QAAW,GAAGE,IAAI;OAC7EH,AAAiB,UAAjBA,gBAA0BD,MAAAA,WAAAA,GAC3B,oBAACM,KAAK,SAAS,QAAER,QAAQC,YAAY,OACpCE,AAAiB,UAAjBA,gBAA0BD;AAI3C;AAEA,MAAMW,SAASC,gBAAgB,UAAUnB"}
package/Button/Button.mdx CHANGED
@@ -95,6 +95,19 @@ import { Button } from "@webiny/admin-ui";
95
95
  ` } }
96
96
  />
97
97
 
98
+ ### Link
99
+
100
+ For an action that should read as a link, without navigating anywhere. Use the `Link` component when it does navigate.
101
+
102
+ <Canvas of={ButtonStories.Link}
103
+ source={ { code:
104
+ `// Code for a Link button
105
+ \n import { Button } from '@webiny/admin-ui';
106
+ \n <Button variant="link" text={"Button"}></Button>
107
+
108
+ ` } }
109
+ />
110
+
98
111
  ### With Icon
99
112
 
100
113
  <Canvas of={ButtonStories.WithIcon} story={ {inline: false}}
@@ -1,4 +1,4 @@
1
- import type { Meta, StoryObj } from "@storybook/react-webpack5";
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
2
  import { Button } from "./Button.js";
3
3
  declare const meta: Meta<typeof Button>;
4
4
  export default meta;
@@ -8,6 +8,7 @@ export declare const Secondary: Story;
8
8
  export declare const Tertiary: Story;
9
9
  export declare const Ghost: Story;
10
10
  export declare const GhostNegative: Story;
11
+ export declare const Link: Story;
11
12
  export declare const Small: Story;
12
13
  export declare const Medium: Story;
13
14
  export declare const Large: Story;
@@ -13,7 +13,8 @@ const meta = {
13
13
  "secondary",
14
14
  "tertiary",
15
15
  "ghost",
16
- "ghost-negative"
16
+ "ghost-negative",
17
+ "link"
17
18
  ],
18
19
  defaultValue: "primary"
19
20
  },
@@ -93,6 +94,12 @@ const GhostNegative = {
93
94
  variant: "ghost-negative"
94
95
  }
95
96
  };
97
+ const Link = {
98
+ args: {
99
+ ...Primary.args,
100
+ variant: "link"
101
+ }
102
+ };
96
103
  const Small = {
97
104
  args: {
98
105
  ...Primary.args,
@@ -149,6 +156,6 @@ const Documentation = {
149
156
  }
150
157
  };
151
158
  export default Button_stories;
152
- export { Documentation, ExtraLarge, Ghost, GhostNegative, Large, Medium, Primary, Secondary, Small, Tertiary, WithAsChild, WithIcon, WithIconPositionEnd };
159
+ export { Documentation, ExtraLarge, Ghost, GhostNegative, Large, Link, Medium, Primary, Secondary, Small, Tertiary, WithAsChild, WithIcon, WithIconPositionEnd };
153
160
 
154
161
  //# sourceMappingURL=Button.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button/Button.stories.js","sources":["../../src/Button/Button.stories.tsx"],"sourcesContent":["import React from \"react\";\nimport type { Meta, StoryObj } from \"@storybook/react-webpack5\";\nimport { ReactComponent as PencilIcon } from \"@webiny/icons/edit.svg\";\nimport { Button } from \"./Button.js\";\n\n// More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export\nconst meta: Meta<typeof Button> = {\n title: \"Components/Button\",\n component: Button,\n argTypes: {\n variant: {\n description: \"Type\",\n control: \"select\",\n options: [\"primary\", \"secondary\", \"tertiary\", \"ghost\", \"ghost-negative\"],\n defaultValue: \"primary\"\n },\n size: {\n description: \"Size\",\n control: \"select\",\n options: [\"sm\", \"md\", \"lg\", \"xl\"],\n defaultValue: \"md\"\n },\n text: {\n description: \"Label\",\n control: \"text\",\n defaultValue: \"Button\"\n },\n disabled: {\n control: \"boolean\",\n defaultValue: false\n },\n icon: {\n description: \"Please refer to the 'With Icon' button example below for details.\"\n },\n iconPosition: {\n description: \"Please refer to the 'With Icon' button example below for details.\",\n control: \"select\",\n defaultValue: \"start\",\n options: [\"start\", \"end\"]\n },\n asChild: {\n description: \"Please refer to the 'As Child' button example below for details.\"\n },\n // Note: after upgrading to Storybook 8.X, use `fn`from `@storybook/test` to spy on the onClick argument.\n onClick: { action: \"onClick\" }\n }\n};\n\nexport default meta;\ntype Story = StoryObj<typeof Button>;\n\nexport const Primary: Story = {\n args: {\n variant: \"primary\",\n text: \"Button\"\n }\n};\n\nexport const Secondary: Story = {\n args: {\n ...Primary.args,\n variant: \"secondary\"\n }\n};\n\nexport const Tertiary: Story = {\n args: {\n ...Primary.args,\n variant: \"tertiary\"\n }\n};\n\nexport const Ghost: Story = {\n args: {\n ...Primary.args,\n variant: \"ghost\"\n }\n};\n\nexport const GhostNegative: Story = {\n decorators: [\n (Story: any) => (\n <div className=\"bg-[#25292e] p-[50px] rounded-[5px]\">\n <Story />\n </div>\n )\n ],\n args: {\n ...Primary.args,\n variant: \"ghost-negative\"\n }\n};\n\nexport const Small: Story = {\n args: {\n ...Primary.args,\n size: \"sm\"\n }\n};\n\nexport const Medium: Story = {\n args: {\n ...Primary.args,\n size: \"md\"\n }\n};\n\nexport const Large: Story = {\n args: {\n ...Primary.args,\n size: \"lg\"\n }\n};\n\nexport const ExtraLarge: Story = {\n args: {\n ...Primary.args,\n size: \"xl\"\n }\n};\n\nexport const WithIcon: Story = {\n args: {\n ...Primary.args,\n icon: <PencilIcon />\n }\n};\n\nexport const WithIconPositionEnd: Story = {\n args: {\n ...Primary.args,\n icon: <PencilIcon />,\n iconPosition: \"end\"\n }\n};\n\nexport const WithAsChild: Story = {\n args: {\n ...Primary.args,\n asChild: true,\n text: <span>Button</span>\n }\n};\n\n/* The Documentation story is created for the Docs page.\n * The description column for the `iconPosition` and `icon` props displays\n * an extra dash (-), and the formatting breaks unless defined in the story.\n * Hence, this Documentation story was created.\n */\n\nexport const Documentation: Story = {\n args: {\n variant: \"primary\",\n text: \"Button\",\n size: \"md\",\n disabled: false,\n icon: \"\",\n iconPosition: \"start\",\n asChild: false\n }\n};\n"],"names":["meta","Button","Primary","Secondary","Tertiary","Ghost","GhostNegative","Story","Small","Medium","Large","ExtraLarge","WithIcon","PencilIcon","WithIconPositionEnd","WithAsChild","Documentation"],"mappings":";;;AAMA,MAAMA,OAA4B;IAC9B,OAAO;IACP,WAAWC;IACX,UAAU;QACN,SAAS;YACL,aAAa;YACb,SAAS;YACT,SAAS;gBAAC;gBAAW;gBAAa;gBAAY;gBAAS;aAAiB;YACxE,cAAc;QAClB;QACA,MAAM;YACF,aAAa;YACb,SAAS;YACT,SAAS;gBAAC;gBAAM;gBAAM;gBAAM;aAAK;YACjC,cAAc;QAClB;QACA,MAAM;YACF,aAAa;YACb,SAAS;YACT,cAAc;QAClB;QACA,UAAU;YACN,SAAS;YACT,cAAc;QAClB;QACA,MAAM;YACF,aAAa;QACjB;QACA,cAAc;YACV,aAAa;YACb,SAAS;YACT,cAAc;YACd,SAAS;gBAAC;gBAAS;aAAM;QAC7B;QACA,SAAS;YACL,aAAa;QACjB;QAEA,SAAS;YAAE,QAAQ;QAAU;IACjC;AACJ;AAEA,uBAAeD;AAGR,MAAME,UAAiB;IAC1B,MAAM;QACF,SAAS;QACT,MAAM;IACV;AACJ;AAEO,MAAMC,YAAmB;IAC5B,MAAM;QACF,GAAGD,QAAQ,IAAI;QACf,SAAS;IACb;AACJ;AAEO,MAAME,WAAkB;IAC3B,MAAM;QACF,GAAGF,QAAQ,IAAI;QACf,SAAS;IACb;AACJ;AAEO,MAAMG,QAAe;IACxB,MAAM;QACF,GAAGH,QAAQ,IAAI;QACf,SAAS;IACb;AACJ;AAEO,MAAMI,gBAAuB;IAChC,YAAY;QACR,CAACC,QAAAA,WAAAA,GACG,oBAAC;gBAAI,WAAU;6BACX,oBAACA,OAAAA;KAGZ;IACD,MAAM;QACF,GAAGL,QAAQ,IAAI;QACf,SAAS;IACb;AACJ;AAEO,MAAMM,QAAe;IACxB,MAAM;QACF,GAAGN,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMO,SAAgB;IACzB,MAAM;QACF,GAAGP,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMQ,QAAe;IACxB,MAAM;QACF,GAAGR,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMS,aAAoB;IAC7B,MAAM;QACF,GAAGT,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMU,WAAkB;IAC3B,MAAM;QACF,GAAGV,QAAQ,IAAI;QACf,MAAM,WAAN,GAAM,oBAACW,gBAAUA;IACrB;AACJ;AAEO,MAAMC,sBAA6B;IACtC,MAAM;QACF,GAAGZ,QAAQ,IAAI;QACf,MAAM,WAAN,GAAM,oBAACW,gBAAUA;QACjB,cAAc;IAClB;AACJ;AAEO,MAAME,cAAqB;IAC9B,MAAM;QACF,GAAGb,QAAQ,IAAI;QACf,SAAS;QACT,MAAM,WAAN,GAAM,oBAAC,cAAK;IAChB;AACJ;AAQO,MAAMc,gBAAuB;IAChC,MAAM;QACF,SAAS;QACT,MAAM;QACN,MAAM;QACN,UAAU;QACV,MAAM;QACN,cAAc;QACd,SAAS;IACb;AACJ"}
1
+ {"version":3,"file":"Button/Button.stories.js","sources":["../../src/Button/Button.stories.tsx"],"sourcesContent":["import React from \"react\";\nimport type { Meta, StoryObj } from \"@storybook/react\";\nimport { ReactComponent as PencilIcon } from \"@webiny/icons/edit.svg\";\nimport { Button } from \"./Button.js\";\n\n// More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export\nconst meta: Meta<typeof Button> = {\n title: \"Components/Button\",\n component: Button,\n argTypes: {\n variant: {\n description: \"Type\",\n control: \"select\",\n options: [\"primary\", \"secondary\", \"tertiary\", \"ghost\", \"ghost-negative\", \"link\"],\n defaultValue: \"primary\"\n },\n size: {\n description: \"Size\",\n control: \"select\",\n options: [\"sm\", \"md\", \"lg\", \"xl\"],\n defaultValue: \"md\"\n },\n text: {\n description: \"Label\",\n control: \"text\",\n defaultValue: \"Button\"\n },\n disabled: {\n control: \"boolean\",\n defaultValue: false\n },\n icon: {\n description: \"Please refer to the 'With Icon' button example below for details.\"\n },\n iconPosition: {\n description: \"Please refer to the 'With Icon' button example below for details.\",\n control: \"select\",\n defaultValue: \"start\",\n options: [\"start\", \"end\"]\n },\n asChild: {\n description: \"Please refer to the 'As Child' button example below for details.\"\n },\n // Note: after upgrading to Storybook 8.X, use `fn`from `@storybook/test` to spy on the onClick argument.\n onClick: { action: \"onClick\" }\n }\n};\n\nexport default meta;\ntype Story = StoryObj<typeof Button>;\n\nexport const Primary: Story = {\n args: {\n variant: \"primary\",\n text: \"Button\"\n }\n};\n\nexport const Secondary: Story = {\n args: {\n ...Primary.args,\n variant: \"secondary\"\n }\n};\n\nexport const Tertiary: Story = {\n args: {\n ...Primary.args,\n variant: \"tertiary\"\n }\n};\n\nexport const Ghost: Story = {\n args: {\n ...Primary.args,\n variant: \"ghost\"\n }\n};\n\nexport const GhostNegative: Story = {\n decorators: [\n (Story: any) => (\n <div className=\"bg-[#25292e] p-[50px] rounded-[5px]\">\n <Story />\n </div>\n )\n ],\n args: {\n ...Primary.args,\n variant: \"ghost-negative\"\n }\n};\n\nexport const Link: Story = {\n args: {\n ...Primary.args,\n variant: \"link\"\n }\n};\n\nexport const Small: Story = {\n args: {\n ...Primary.args,\n size: \"sm\"\n }\n};\n\nexport const Medium: Story = {\n args: {\n ...Primary.args,\n size: \"md\"\n }\n};\n\nexport const Large: Story = {\n args: {\n ...Primary.args,\n size: \"lg\"\n }\n};\n\nexport const ExtraLarge: Story = {\n args: {\n ...Primary.args,\n size: \"xl\"\n }\n};\n\nexport const WithIcon: Story = {\n args: {\n ...Primary.args,\n icon: <PencilIcon />\n }\n};\n\nexport const WithIconPositionEnd: Story = {\n args: {\n ...Primary.args,\n icon: <PencilIcon />,\n iconPosition: \"end\"\n }\n};\n\nexport const WithAsChild: Story = {\n args: {\n ...Primary.args,\n asChild: true,\n text: <span>Button</span>\n }\n};\n\n/* The Documentation story is created for the Docs page.\n * The description column for the `iconPosition` and `icon` props displays\n * an extra dash (-), and the formatting breaks unless defined in the story.\n * Hence, this Documentation story was created.\n */\n\nexport const Documentation: Story = {\n args: {\n variant: \"primary\",\n text: \"Button\",\n size: \"md\",\n disabled: false,\n icon: \"\",\n iconPosition: \"start\",\n asChild: false\n }\n};\n"],"names":["meta","Button","Primary","Secondary","Tertiary","Ghost","GhostNegative","Story","Link","Small","Medium","Large","ExtraLarge","WithIcon","PencilIcon","WithIconPositionEnd","WithAsChild","Documentation"],"mappings":";;;AAMA,MAAMA,OAA4B;IAC9B,OAAO;IACP,WAAWC;IACX,UAAU;QACN,SAAS;YACL,aAAa;YACb,SAAS;YACT,SAAS;gBAAC;gBAAW;gBAAa;gBAAY;gBAAS;gBAAkB;aAAO;YAChF,cAAc;QAClB;QACA,MAAM;YACF,aAAa;YACb,SAAS;YACT,SAAS;gBAAC;gBAAM;gBAAM;gBAAM;aAAK;YACjC,cAAc;QAClB;QACA,MAAM;YACF,aAAa;YACb,SAAS;YACT,cAAc;QAClB;QACA,UAAU;YACN,SAAS;YACT,cAAc;QAClB;QACA,MAAM;YACF,aAAa;QACjB;QACA,cAAc;YACV,aAAa;YACb,SAAS;YACT,cAAc;YACd,SAAS;gBAAC;gBAAS;aAAM;QAC7B;QACA,SAAS;YACL,aAAa;QACjB;QAEA,SAAS;YAAE,QAAQ;QAAU;IACjC;AACJ;AAEA,uBAAeD;AAGR,MAAME,UAAiB;IAC1B,MAAM;QACF,SAAS;QACT,MAAM;IACV;AACJ;AAEO,MAAMC,YAAmB;IAC5B,MAAM;QACF,GAAGD,QAAQ,IAAI;QACf,SAAS;IACb;AACJ;AAEO,MAAME,WAAkB;IAC3B,MAAM;QACF,GAAGF,QAAQ,IAAI;QACf,SAAS;IACb;AACJ;AAEO,MAAMG,QAAe;IACxB,MAAM;QACF,GAAGH,QAAQ,IAAI;QACf,SAAS;IACb;AACJ;AAEO,MAAMI,gBAAuB;IAChC,YAAY;QACR,CAACC,QAAAA,WAAAA,GACG,oBAAC;gBAAI,WAAU;6BACX,oBAACA,OAAAA;KAGZ;IACD,MAAM;QACF,GAAGL,QAAQ,IAAI;QACf,SAAS;IACb;AACJ;AAEO,MAAMM,OAAc;IACvB,MAAM;QACF,GAAGN,QAAQ,IAAI;QACf,SAAS;IACb;AACJ;AAEO,MAAMO,QAAe;IACxB,MAAM;QACF,GAAGP,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMQ,SAAgB;IACzB,MAAM;QACF,GAAGR,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMS,QAAe;IACxB,MAAM;QACF,GAAGT,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMU,aAAoB;IAC7B,MAAM;QACF,GAAGV,QAAQ,IAAI;QACf,MAAM;IACV;AACJ;AAEO,MAAMW,WAAkB;IAC3B,MAAM;QACF,GAAGX,QAAQ,IAAI;QACf,MAAM,WAAN,GAAM,oBAACY,gBAAUA;IACrB;AACJ;AAEO,MAAMC,sBAA6B;IACtC,MAAM;QACF,GAAGb,QAAQ,IAAI;QACf,MAAM,WAAN,GAAM,oBAACY,gBAAUA;QACjB,cAAc;IAClB;AACJ;AAEO,MAAME,cAAqB;IAC9B,MAAM;QACF,GAAGd,QAAQ,IAAI;QACf,SAAS;QACT,MAAM,WAAN,GAAM,oBAAC,cAAK;IAChB;AACJ;AAQO,MAAMe,gBAAuB;IAChC,MAAM;QACF,SAAS;QACT,MAAM;QACN,MAAM;QACN,UAAU;QACV,MAAM;QACN,cAAc;QACd,SAAS;IACb;AACJ"}
@@ -10,21 +10,22 @@ interface CopyButtonProps extends ButtonProps {
10
10
  */
11
11
  onCopy?: () => void;
12
12
  }
13
- declare const CopyButton: ((props: CopyButtonProps) => React.JSX.Element) & {
14
- original: (props: CopyButtonProps) => React.JSX.Element;
13
+ declare const CopyButtonBase: (props: CopyButtonProps) => React.JSX.Element;
14
+ declare const CopyButton: typeof CopyButtonBase & {
15
+ original: typeof CopyButtonBase;
15
16
  originalName: string;
16
17
  displayName: string;
17
18
  } & {
18
- original: ((props: CopyButtonProps) => React.JSX.Element) & {
19
- original: (props: CopyButtonProps) => React.JSX.Element;
19
+ original: typeof CopyButtonBase & {
20
+ original: typeof CopyButtonBase;
20
21
  originalName: string;
21
22
  displayName: string;
22
23
  };
23
24
  originalName: string;
24
25
  displayName: string;
25
26
  } & {
26
- createDecorator: (decorator: import("@webiny/react-composition/types.js").ComponentDecorator<((props: CopyButtonProps) => React.JSX.Element) & {
27
- original: (props: CopyButtonProps) => React.JSX.Element;
27
+ createDecorator: (decorator: import("@webiny/react-composition/types.js").ComponentDecorator<typeof CopyButtonBase & {
28
+ original: typeof CopyButtonBase;
28
29
  originalName: string;
29
30
  displayName: string;
30
31
  }>) => (props: unknown) => React.JSX.Element;