@wallarm-org/design-system 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (207) hide show
  1. package/dist/components/Alert/AlertClose.js +19 -21
  2. package/dist/components/Drawer/DrawerClose.js +0 -3
  3. package/dist/components/Drawer/DrawerResizeHandle.js +3 -1
  4. package/dist/components/DropdownMenu/DropdownMenu.d.ts +9 -2
  5. package/dist/components/DropdownMenu/DropdownMenu.js +37 -3
  6. package/dist/components/DropdownMenu/DropdownMenuContent.d.ts +5 -5
  7. package/dist/components/DropdownMenu/DropdownMenuContent.js +24 -21
  8. package/dist/components/DropdownMenu/DropdownMenuContext.d.ts +6 -0
  9. package/dist/components/DropdownMenu/DropdownMenuContext.js +4 -0
  10. package/dist/components/DropdownMenu/DropdownMenuContextTrigger.d.ts +10 -0
  11. package/dist/components/DropdownMenu/DropdownMenuContextTrigger.js +8 -0
  12. package/dist/components/DropdownMenu/DropdownMenuGroup.d.ts +5 -2
  13. package/dist/components/DropdownMenu/DropdownMenuGroup.js +8 -3
  14. package/dist/components/DropdownMenu/DropdownMenuItem.d.ts +5 -7
  15. package/dist/components/DropdownMenu/DropdownMenuItem.js +9 -2
  16. package/dist/components/DropdownMenu/DropdownMenuLabel.d.ts +2 -4
  17. package/dist/components/DropdownMenu/DropdownMenuLabel.js +1 -2
  18. package/dist/components/DropdownMenu/DropdownMenuSeparator.d.ts +3 -4
  19. package/dist/components/DropdownMenu/DropdownMenuSeparator.js +3 -3
  20. package/dist/components/DropdownMenu/DropdownMenuTrigger.d.ts +9 -2
  21. package/dist/components/DropdownMenu/DropdownMenuTrigger.js +4 -3
  22. package/dist/components/DropdownMenu/DropdownMenuTriggerItem.d.ts +10 -0
  23. package/dist/components/DropdownMenu/{DropdownMenuSubTrigger.js → DropdownMenuTriggerItem.js} +4 -5
  24. package/dist/components/DropdownMenu/classes.js +4 -4
  25. package/dist/components/DropdownMenu/index.d.ts +6 -4
  26. package/dist/components/DropdownMenu/index.js +7 -5
  27. package/dist/components/Field/FieldLabel.d.ts +3 -3
  28. package/dist/components/Field/FieldLabel.js +3 -10
  29. package/dist/components/OverflowTooltip/OverflowTooltip.d.ts +3 -1
  30. package/dist/components/OverflowTooltip/OverflowTooltip.js +6 -7
  31. package/dist/components/OverflowTooltip/OverflowTooltipContent.d.ts +1 -3
  32. package/dist/components/OverflowTooltip/OverflowTooltipContent.js +1 -2
  33. package/dist/components/ScrollArea/ScrollArea.d.ts +1 -2
  34. package/dist/components/ScrollArea/ScrollArea.js +5 -3
  35. package/dist/components/ScrollArea/ScrollAreaScrollbar.js +1 -1
  36. package/dist/components/ScrollArea/ScrollAreaViewport.js +2 -1
  37. package/dist/components/Separator/Separator.d.ts +4 -3
  38. package/dist/components/Separator/Separator.js +4 -4
  39. package/dist/components/Skeleton/Skeleton.d.ts +14 -0
  40. package/dist/components/Skeleton/Skeleton.js +42 -0
  41. package/dist/components/Skeleton/index.d.ts +1 -0
  42. package/dist/components/Skeleton/index.js +2 -0
  43. package/dist/components/Switch/Switch.d.ts +1 -1
  44. package/dist/components/Switch/Switch.js +2 -2
  45. package/dist/components/Switch/SwitchLabel.d.ts +1 -1
  46. package/dist/components/Switch/SwitchLabel.js +2 -2
  47. package/dist/components/Table/Table.d.ts +5 -0
  48. package/dist/components/Table/Table.js +22 -0
  49. package/dist/components/Table/TableActionBar/TableActionBar.d.ts +5 -0
  50. package/dist/components/Table/TableActionBar/TableActionBar.js +30 -0
  51. package/dist/components/Table/TableActionBar/TableActionBarAnchor.d.ts +6 -0
  52. package/dist/components/Table/TableActionBar/TableActionBarAnchor.js +23 -0
  53. package/dist/components/Table/TableActionBar/TableActionBarProvider.d.ts +6 -0
  54. package/dist/components/Table/TableActionBar/TableActionBarProvider.js +27 -0
  55. package/dist/components/Table/TableActionBar/TableActionBarSelection.d.ts +2 -0
  56. package/dist/components/Table/TableActionBar/TableActionBarSelection.js +54 -0
  57. package/dist/components/Table/TableActionBar/index.d.ts +3 -0
  58. package/dist/components/Table/TableActionBar/index.js +4 -0
  59. package/dist/components/Table/TableBody.d.ts +2 -0
  60. package/dist/components/Table/TableBody.js +23 -0
  61. package/dist/components/Table/TableBodyCell.d.ts +12 -0
  62. package/dist/components/Table/TableBodyCell.js +32 -0
  63. package/dist/components/Table/TableBodyVirtualized.d.ts +2 -0
  64. package/dist/components/Table/TableBodyVirtualized.js +60 -0
  65. package/dist/components/Table/TableColGroup.d.ts +16 -0
  66. package/dist/components/Table/TableColGroup.js +33 -0
  67. package/dist/components/Table/TableContext/TableContext.d.ts +2 -0
  68. package/dist/components/Table/TableContext/TableContext.js +3 -0
  69. package/dist/components/Table/TableContext/TableProvider.d.ts +2 -0
  70. package/dist/components/Table/TableContext/TableProvider.js +264 -0
  71. package/dist/components/Table/TableContext/index.d.ts +4 -0
  72. package/dist/components/Table/TableContext/index.js +4 -0
  73. package/dist/components/Table/TableContext/types.d.ts +30 -0
  74. package/dist/components/Table/TableContext/types.js +0 -0
  75. package/dist/components/Table/TableContext/useTableContext.d.ts +2 -0
  76. package/dist/components/Table/TableContext/useTableContext.js +8 -0
  77. package/dist/components/Table/TableEmptyState.d.ts +6 -0
  78. package/dist/components/Table/TableEmptyState.js +15 -0
  79. package/dist/components/Table/TableExpandedRow.d.ts +9 -0
  80. package/dist/components/Table/TableExpandedRow.js +28 -0
  81. package/dist/components/Table/TableHead.d.ts +2 -0
  82. package/dist/components/Table/TableHead.js +17 -0
  83. package/dist/components/Table/TableHeadCell.d.ts +9 -0
  84. package/dist/components/Table/TableHeadCell.js +90 -0
  85. package/dist/components/Table/TableHeadCellMenu.d.ts +9 -0
  86. package/dist/components/Table/TableHeadCellMenu.js +174 -0
  87. package/dist/components/Table/TableInner.d.ts +10 -0
  88. package/dist/components/Table/TableInner.js +91 -0
  89. package/dist/components/Table/TableLoadingState.d.ts +2 -0
  90. package/dist/components/Table/TableLoadingState.js +31 -0
  91. package/dist/components/Table/TableResizeHandler.d.ts +9 -0
  92. package/dist/components/Table/TableResizeHandler.js +13 -0
  93. package/dist/components/Table/TableRow.d.ts +12 -0
  94. package/dist/components/Table/TableRow.js +73 -0
  95. package/dist/components/Table/TableScrollHandler.d.ts +7 -0
  96. package/dist/components/Table/TableScrollHandler.js +80 -0
  97. package/dist/components/Table/TableSettingsMenu/TableSettingsMenu.d.ts +2 -0
  98. package/dist/components/Table/TableSettingsMenu/TableSettingsMenu.js +163 -0
  99. package/dist/components/Table/TableSettingsMenu/TableSettingsMenuItem.d.ts +7 -0
  100. package/dist/components/Table/TableSettingsMenu/TableSettingsMenuItem.js +54 -0
  101. package/dist/components/Table/TableSettingsMenu/index.d.ts +1 -0
  102. package/dist/components/Table/TableSettingsMenu/index.js +2 -0
  103. package/dist/components/Table/TableSortHandler.d.ts +9 -0
  104. package/dist/components/Table/TableSortHandler.js +53 -0
  105. package/dist/components/Table/classes.d.ts +16 -0
  106. package/dist/components/Table/classes.js +69 -0
  107. package/dist/components/Table/hooks/index.d.ts +2 -0
  108. package/dist/components/Table/hooks/index.js +3 -0
  109. package/dist/components/Table/hooks/useHorizontalScrollState.d.ts +9 -0
  110. package/dist/components/Table/hooks/useHorizontalScrollState.js +38 -0
  111. package/dist/components/Table/hooks/useTableState.d.ts +1 -0
  112. package/dist/components/Table/hooks/useTableState.js +23 -0
  113. package/dist/components/Table/index.d.ts +7 -0
  114. package/dist/components/Table/index.js +6 -0
  115. package/dist/components/Table/lib/constants.d.ts +10 -0
  116. package/dist/components/Table/lib/constants.js +47 -0
  117. package/dist/components/Table/lib/createExpandColumn.d.ts +6 -0
  118. package/dist/components/Table/lib/createExpandColumn.js +45 -0
  119. package/dist/components/Table/lib/createSelectionColumn.d.ts +7 -0
  120. package/dist/components/Table/lib/createSelectionColumn.js +70 -0
  121. package/dist/components/Table/lib/createTableColumnHelper.d.ts +6 -0
  122. package/dist/components/Table/lib/createTableColumnHelper.js +13 -0
  123. package/dist/components/Table/lib/getDndStyles.d.ts +10 -0
  124. package/dist/components/Table/lib/getDndStyles.js +8 -0
  125. package/dist/components/Table/lib/getPinningStyles.d.ts +6 -0
  126. package/dist/components/Table/lib/getPinningStyles.js +10 -0
  127. package/dist/components/Table/lib/index.d.ts +8 -0
  128. package/dist/components/Table/lib/index.js +9 -0
  129. package/dist/components/Table/lib/isLastPinnedLeft.d.ts +9 -0
  130. package/dist/components/Table/lib/isLastPinnedLeft.js +6 -0
  131. package/dist/components/Table/lib/useColumnDnd.d.ts +14 -0
  132. package/dist/components/Table/lib/useColumnDnd.js +27 -0
  133. package/dist/components/Table/mocks.d.ts +47 -0
  134. package/dist/components/Table/mocks.js +860 -0
  135. package/dist/components/Table/primitives/TBody.d.ts +1 -0
  136. package/dist/components/Table/primitives/TBody.js +10 -0
  137. package/dist/components/Table/primitives/THead.d.ts +1 -0
  138. package/dist/components/Table/primitives/THead.js +10 -0
  139. package/dist/components/Table/primitives/Td.d.ts +7 -0
  140. package/dist/components/Table/primitives/Td.js +18 -0
  141. package/dist/components/Table/primitives/Th.d.ts +7 -0
  142. package/dist/components/Table/primitives/Th.js +18 -0
  143. package/dist/components/Table/primitives/Tr.d.ts +1 -0
  144. package/dist/components/Table/primitives/Tr.js +11 -0
  145. package/dist/components/Table/primitives/index.d.ts +5 -0
  146. package/dist/components/Table/primitives/index.js +6 -0
  147. package/dist/components/Table/types.d.ts +129 -0
  148. package/dist/components/Table/types.js +0 -0
  149. package/dist/components/Text/Text.d.ts +1 -1
  150. package/dist/components/Text/Text.js +1 -0
  151. package/dist/components/Tooltip/Tooltip.d.ts +16 -2
  152. package/dist/components/Tooltip/Tooltip.figma.js +7 -10
  153. package/dist/components/Tooltip/Tooltip.js +29 -5
  154. package/dist/components/Tooltip/TooltipContent.d.ts +3 -3
  155. package/dist/components/Tooltip/TooltipContent.js +13 -12
  156. package/dist/components/Tooltip/TooltipTrigger.d.ts +7 -2
  157. package/dist/components/Tooltip/TooltipTrigger.js +3 -4
  158. package/dist/components/Tooltip/index.d.ts +1 -2
  159. package/dist/components/Tooltip/index.js +1 -2
  160. package/dist/hooks/index.d.ts +1 -0
  161. package/dist/hooks/index.js +2 -1
  162. package/dist/hooks/useIsKeyPressed.d.ts +1 -0
  163. package/dist/hooks/useIsKeyPressed.js +22 -0
  164. package/dist/icons/Bug.d.ts +3 -0
  165. package/dist/icons/Bug.js +98 -0
  166. package/dist/icons/EllipsisVertical.d.ts +3 -0
  167. package/dist/icons/EllipsisVertical.js +28 -0
  168. package/dist/icons/Eye.d.ts +3 -0
  169. package/dist/icons/Eye.js +28 -0
  170. package/dist/icons/EyeOff.d.ts +3 -0
  171. package/dist/icons/EyeOff.js +42 -0
  172. package/dist/icons/GripVertical.d.ts +3 -0
  173. package/dist/icons/GripVertical.js +51 -0
  174. package/dist/icons/MoveDown.d.ts +3 -0
  175. package/dist/icons/MoveDown.js +26 -0
  176. package/dist/icons/MoveUp.d.ts +3 -0
  177. package/dist/icons/MoveUp.js +26 -0
  178. package/dist/icons/MoveVertical.d.ts +3 -0
  179. package/dist/icons/MoveVertical.js +34 -0
  180. package/dist/icons/Pin.d.ts +3 -0
  181. package/dist/icons/Pin.js +26 -0
  182. package/dist/icons/PinOff.d.ts +3 -0
  183. package/dist/icons/PinOff.js +42 -0
  184. package/dist/icons/Settings.d.ts +3 -0
  185. package/dist/icons/Settings.js +26 -0
  186. package/dist/icons/Settings2.d.ts +3 -0
  187. package/dist/icons/Settings2.js +46 -0
  188. package/dist/icons/index.d.ts +12 -0
  189. package/dist/icons/index.js +13 -1
  190. package/dist/index.d.ts +3 -2
  191. package/dist/index.js +4 -3
  192. package/dist/metadata/components.json +852 -236
  193. package/dist/theme/semantic.css +2 -0
  194. package/package.json +6 -5
  195. package/dist/components/DropdownMenu/DropdownMenuPortal.d.ts +0 -3
  196. package/dist/components/DropdownMenu/DropdownMenuPortal.js +0 -7
  197. package/dist/components/DropdownMenu/DropdownMenuSub.d.ts +0 -3
  198. package/dist/components/DropdownMenu/DropdownMenuSub.js +0 -7
  199. package/dist/components/DropdownMenu/DropdownMenuSubContent.d.ts +0 -7
  200. package/dist/components/DropdownMenu/DropdownMenuSubContent.js +0 -14
  201. package/dist/components/DropdownMenu/DropdownMenuSubTrigger.d.ts +0 -12
  202. package/dist/components/Label/Label.d.ts +0 -6
  203. package/dist/components/Label/Label.js +0 -10
  204. package/dist/components/Label/index.d.ts +0 -1
  205. package/dist/components/Label/index.js +0 -2
  206. package/dist/components/Tooltip/TooltipProvider.d.ts +0 -3
  207. package/dist/components/Tooltip/TooltipProvider.js +0 -7
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "0.3.0",
3
- "generatedAt": "2026-02-24T11:16:35.052Z",
2
+ "version": "0.3.1",
3
+ "generatedAt": "2026-02-24T11:55:50.290Z",
4
4
  "components": [
5
5
  {
6
6
  "name": "Alert",
@@ -3398,7 +3398,7 @@
3398
3398
  },
3399
3399
  {
3400
3400
  "name": "WithTruncation",
3401
- "code": "args => {\n const [showAll, setShowAll] = useState(false);\n\n return (\n <div className='flex items-center justify-center w-full p-8 min-h-[400px]'>\n <TooltipProvider>\n <Breadcrumbs {...args}>\n <BreadcrumbsItem href='#home'>Home</BreadcrumbsItem>\n <BreadcrumbsItem href='#level1'>Level 1</BreadcrumbsItem>\n {!showAll ? (\n <Tooltip>\n <TooltipTrigger asChild>\n <BreadcrumbsEllipsis onClick={() => setShowAll(true)} />\n </TooltipTrigger>\n <TooltipContent>WIP</TooltipContent>\n </Tooltip>\n ) : (\n [\n <BreadcrumbsItem key='level2' href='#level2'>\n Level 2\n </BreadcrumbsItem>,\n <BreadcrumbsItem key='level3' href='#level3'>\n Level 3\n </BreadcrumbsItem>,\n ]\n )}\n <BreadcrumbsItem href='#penultimate'>Penultimate</BreadcrumbsItem>\n <BreadcrumbsItem href='#current'>Current Page</BreadcrumbsItem>\n </Breadcrumbs>\n </TooltipProvider>\n </div>\n );\n}"
3401
+ "code": "args => {\n const [showAll, setShowAll] = useState(false);\n\n return (\n <div className='flex items-center justify-center w-full p-8 min-h-[400px]'>\n <Breadcrumbs {...args}>\n <BreadcrumbsItem href='#home'>Home</BreadcrumbsItem>\n <BreadcrumbsItem href='#level1'>Level 1</BreadcrumbsItem>\n {!showAll ? (\n <Tooltip>\n <TooltipTrigger asChild>\n <BreadcrumbsEllipsis onClick={() => setShowAll(true)} />\n </TooltipTrigger>\n <TooltipContent>WIP</TooltipContent>\n </Tooltip>\n ) : (\n [\n <BreadcrumbsItem key='level2' href='#level2'>\n Level 2\n </BreadcrumbsItem>,\n <BreadcrumbsItem key='level3' href='#level3'>\n Level 3\n </BreadcrumbsItem>,\n ]\n )}\n <BreadcrumbsItem href='#penultimate'>Penultimate</BreadcrumbsItem>\n <BreadcrumbsItem href='#current'>Current Page</BreadcrumbsItem>\n </Breadcrumbs>\n </div>\n );\n}"
3402
3402
  },
3403
3403
  {
3404
3404
  "name": "LongBreadcrumbs",
@@ -9014,19 +9014,23 @@
9014
9014
  "examples": [
9015
9015
  {
9016
9016
  "name": "Basic",
9017
- "code": "() => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant='outline' color='neutral'>\n Open\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align='start'>\n <DropdownMenuLabel>My Account</DropdownMenuLabel>\n <DropdownMenuGroup>\n <DropdownMenuItem>\n Profile\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>P</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuItem>\n Billing\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>B</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuItem>\n Settings\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>S</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuItem>\n Keyboard shortcuts super\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>K</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuGroup>\n <DropdownMenuItem>Team</DropdownMenuItem>\n <DropdownMenuSub>\n <DropdownMenuSubTrigger>Invite users</DropdownMenuSubTrigger>\n <DropdownMenuPortal>\n <DropdownMenuSubContent>\n <DropdownMenuItem>Email</DropdownMenuItem>\n <DropdownMenuItem>Message</DropdownMenuItem>\n <DropdownMenuSeparator />\n <DropdownMenuItem>More...</DropdownMenuItem>\n </DropdownMenuSubContent>\n </DropdownMenuPortal>\n </DropdownMenuSub>\n <DropdownMenuItem>\n New Team\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>T</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuItem>GitHub</DropdownMenuItem>\n <DropdownMenuItem>Support</DropdownMenuItem>\n <DropdownMenuItem disabled>API</DropdownMenuItem>\n <DropdownMenuSeparator />\n <DropdownMenuItem variant='destructive'>\n Log out\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>Q</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n)"
9017
+ "code": "() => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant='outline' color='neutral'>\n Open\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent>\n <DropdownMenuLabel>My Account</DropdownMenuLabel>\n <DropdownMenuGroup>\n <DropdownMenuItem>\n Profile\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>P</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuItem>\n Billing\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>B</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuItem>\n Settings\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>S</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuItem>\n Keyboard shortcuts super\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>K</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuGroup>\n <DropdownMenuItem>Team</DropdownMenuItem>\n <DropdownMenu>\n <DropdownMenuTriggerItem>Invite users</DropdownMenuTriggerItem>\n <DropdownMenuContent>\n <DropdownMenuItem>Email</DropdownMenuItem>\n <DropdownMenuItem>Message</DropdownMenuItem>\n <DropdownMenuSeparator />\n <DropdownMenuItem>More...</DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n <DropdownMenuItem>\n New Team\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>T</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuItem>GitHub</DropdownMenuItem>\n <DropdownMenuItem>Support</DropdownMenuItem>\n <DropdownMenuItem disabled>API</DropdownMenuItem>\n <DropdownMenuSeparator />\n <DropdownMenuItem variant='destructive'>\n Log out\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>Q</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n)"
9018
+ },
9019
+ {
9020
+ "name": "Context",
9021
+ "code": "() => (\n <DropdownMenu>\n <DropdownMenuContextTrigger asChild>\n <div className='flex items-center justify-center w-300 h-192 border border-border-primary border-dashed rounded-8'>\n Right click here\n </div>\n </DropdownMenuContextTrigger>\n <DropdownMenuContent>\n <DropdownMenuLabel>My Account</DropdownMenuLabel>\n <DropdownMenuGroup>\n <DropdownMenuItem>\n Profile\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>P</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuItem>\n Billing\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>B</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuItem>\n Settings\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>S</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuItem>\n Keyboard shortcuts super\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>K</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuGroup>\n <DropdownMenuItem>Team</DropdownMenuItem>\n <DropdownMenu>\n <DropdownMenuTriggerItem>Invite users</DropdownMenuTriggerItem>\n <DropdownMenuContent>\n <DropdownMenuItem>Email</DropdownMenuItem>\n <DropdownMenuItem>Message</DropdownMenuItem>\n <DropdownMenuSeparator />\n <DropdownMenuItem>More...</DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n <DropdownMenuItem>\n New Team\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>T</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuItem>GitHub</DropdownMenuItem>\n <DropdownMenuItem>Support</DropdownMenuItem>\n <DropdownMenuItem disabled>API</DropdownMenuItem>\n <DropdownMenuSeparator />\n <DropdownMenuItem variant='destructive'>\n Log out\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>Q</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n)"
9018
9022
  },
9019
9023
  {
9020
9024
  "name": "WithDescriptions",
9021
- "code": "() => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant='outline' color='neutral'>\n <Plus />\n Add Widget\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align='start'>\n <DropdownMenuItem>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Bar-volume chart</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Canvas</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Attacks heat-map</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>Q</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuSeparator />\n\n <DropdownMenuItem variant='brand'>\n <CirclePlus />\n <DropdownMenuItemText>Request custom widget</DropdownMenuItemText>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n)"
9025
+ "code": "() => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant='outline' color='neutral'>\n <Plus />\n Add Widget\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent>\n <DropdownMenuItem>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Bar-volume chart</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Canvas</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Attacks heat-map</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>Q</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuSeparator />\n\n <DropdownMenuItem variant='brand'>\n <CirclePlus />\n <DropdownMenuItemText>Request custom widget</DropdownMenuItemText>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n)"
9022
9026
  },
9023
9027
  {
9024
9028
  "name": "WithIcons",
9025
- "code": "() => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant='outline' color='neutral'>\n <Plus />\n Add Widget\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align='start'>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <LayoutTemplate />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Bar-volume chart</DropdownMenuItemText>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <Maximize />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Canvas</DropdownMenuItemText>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <Earth />\n </DropdownMenuItemIcon>\n <DropdownMenuItemText>Attacks heat-map</DropdownMenuItemText>\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>Q</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuSeparator />\n\n <DropdownMenuItem variant='brand'>\n <CirclePlus />\n <DropdownMenuItemText>Request custom widget</DropdownMenuItemText>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n)"
9029
+ "code": "() => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant='outline' color='neutral'>\n <Plus />\n Add Widget\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <LayoutTemplate />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Bar-volume chart</DropdownMenuItemText>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <Maximize />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Canvas</DropdownMenuItemText>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <Earth />\n </DropdownMenuItemIcon>\n <DropdownMenuItemText>Attacks heat-map</DropdownMenuItemText>\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>Q</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuSeparator />\n\n <DropdownMenuItem variant='brand'>\n <CirclePlus />\n <DropdownMenuItemText>Request custom widget</DropdownMenuItemText>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n)"
9026
9030
  },
9027
9031
  {
9028
9032
  "name": "WithDescriptionAndIcons",
9029
- "code": "() => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant='outline' color='neutral'>\n <Plus />\n Add Widget\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align='start'>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <LayoutTemplate />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Bar-volume chart</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <Maximize />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Canvas</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <Earth />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Attacks heat-map</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>Q</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuSeparator />\n\n <DropdownMenuItem variant='brand'>\n <CirclePlus />\n <DropdownMenuItemText>Request custom widget</DropdownMenuItemText>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n)"
9033
+ "code": "() => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant='outline' color='neutral'>\n <Plus />\n Add Widget\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <LayoutTemplate />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Bar-volume chart</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <Maximize />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Canvas</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n <DropdownMenuItem>\n <DropdownMenuItemIcon>\n <Earth />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Attacks heat-map</DropdownMenuItemText>\n <DropdownMenuItemDescription>Description</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n <DropdownMenuShortcut>\n <KbdGroup>\n <Kbd>⌘</Kbd>\n <Kbd>Q</Kbd>\n </KbdGroup>\n </DropdownMenuShortcut>\n </DropdownMenuItem>\n <DropdownMenuSeparator />\n\n <DropdownMenuItem variant='brand'>\n <CirclePlus />\n <DropdownMenuItemText>Request custom widget</DropdownMenuItemText>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n)"
9030
9034
  }
9031
9035
  ]
9032
9036
  },
@@ -10240,14 +10244,6 @@
10240
10244
  }
10241
10245
  ]
10242
10246
  },
10243
- {
10244
- "name": "Label",
10245
- "importPath": "@wallarm-org/design-system/Label",
10246
- "props": [],
10247
- "variants": [],
10248
- "subComponents": [],
10249
- "examples": []
10250
- },
10251
10247
  {
10252
10248
  "name": "Link",
10253
10249
  "importPath": "@wallarm-org/design-system/Link",
@@ -11758,6 +11754,11 @@
11758
11754
  "type": "boolean | undefined",
11759
11755
  "required": false,
11760
11756
  "defaultValue": "false"
11757
+ },
11758
+ {
11759
+ "name": "positioning",
11760
+ "type": "PositioningOptions | undefined",
11761
+ "required": false
11761
11762
  }
11762
11763
  ],
11763
11764
  "variants": [],
@@ -11765,11 +11766,6 @@
11765
11766
  {
11766
11767
  "name": "OverflowTooltipContent",
11767
11768
  "props": [
11768
- {
11769
- "name": "side",
11770
- "type": "\"top\" | \"right\" | \"bottom\" | \"left\" | undefined",
11771
- "required": false
11772
- },
11773
11769
  {
11774
11770
  "name": "maxWidth",
11775
11771
  "type": "number | undefined",
@@ -11813,7 +11809,7 @@
11813
11809
  },
11814
11810
  {
11815
11811
  "name": "DifferentSides",
11816
- "code": "() => {\n const text = 'This is a text that will be truncated and show tooltips on different sides';\n\n return (\n <div className='font-sans flex flex-col gap-32 w-300 py-32'>\n <div>\n <p className='text-sm text-text-secondary mb-8'>Tooltip on top (default)</p>\n <OverflowTooltip>\n <OverflowTooltipTrigger>\n <div className='truncate'>{text}</div>\n </OverflowTooltipTrigger>\n <OverflowTooltipContent side='top'>{text}</OverflowTooltipContent>\n </OverflowTooltip>\n </div>\n\n <div>\n <p className='text-sm text-text-secondary mb-8'>Tooltip on bottom</p>\n <OverflowTooltip>\n <OverflowTooltipTrigger>\n <div className='truncate'>{text}</div>\n </OverflowTooltipTrigger>\n <OverflowTooltipContent side='bottom'>{text}</OverflowTooltipContent>\n </OverflowTooltip>\n </div>\n\n <div>\n <p className='text-sm text-text-secondary mb-8'>Tooltip on left</p>\n <OverflowTooltip>\n <OverflowTooltipTrigger>\n <div className='truncate'>{text}</div>\n </OverflowTooltipTrigger>\n <OverflowTooltipContent side='left'>{text}</OverflowTooltipContent>\n </OverflowTooltip>\n </div>\n\n <div>\n <p className='text-sm text-text-secondary mb-8'>Tooltip on right</p>\n <OverflowTooltip>\n <OverflowTooltipTrigger>\n <div className='truncate'>{text}</div>\n </OverflowTooltipTrigger>\n <OverflowTooltipContent side='right'>{text}</OverflowTooltipContent>\n </OverflowTooltip>\n </div>\n </div>\n );\n}"
11812
+ "code": "() => {\n const text = 'This is a text that will be truncated and show tooltips on different sides';\n\n return (\n <div className='font-sans flex flex-col gap-32 w-300 py-32'>\n <div>\n <p className='text-sm text-text-secondary mb-8'>Tooltip on top (default)</p>\n <OverflowTooltip positioning={{ placement: 'top' }}>\n <OverflowTooltipTrigger>\n <div className='truncate'>{text}</div>\n </OverflowTooltipTrigger>\n <OverflowTooltipContent>{text}</OverflowTooltipContent>\n </OverflowTooltip>\n </div>\n\n <div>\n <p className='text-sm text-text-secondary mb-8'>Tooltip on bottom</p>\n <OverflowTooltip positioning={{ placement: 'bottom' }}>\n <OverflowTooltipTrigger>\n <div className='truncate'>{text}</div>\n </OverflowTooltipTrigger>\n <OverflowTooltipContent>{text}</OverflowTooltipContent>\n </OverflowTooltip>\n </div>\n\n <div>\n <p className='text-sm text-text-secondary mb-8'>Tooltip on left</p>\n <OverflowTooltip positioning={{ placement: 'left' }}>\n <OverflowTooltipTrigger>\n <div className='truncate'>{text}</div>\n </OverflowTooltipTrigger>\n <OverflowTooltipContent>{text}</OverflowTooltipContent>\n </OverflowTooltip>\n </div>\n\n <div>\n <p className='text-sm text-text-secondary mb-8'>Tooltip on right</p>\n <OverflowTooltip positioning={{ placement: 'right' }}>\n <OverflowTooltipTrigger>\n <div className='truncate'>{text}</div>\n </OverflowTooltipTrigger>\n <OverflowTooltipContent>{text}</OverflowTooltipContent>\n </OverflowTooltip>\n </div>\n </div>\n );\n}"
11817
11813
  },
11818
11814
  {
11819
11815
  "name": "DynamicContent",
@@ -15189,25 +15185,18 @@
15189
15185
  "description": "@see {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/part}"
15190
15186
  },
15191
15187
  {
15192
- "name": "asChild",
15193
- "type": "boolean | undefined",
15188
+ "name": "orientation",
15189
+ "type": "{ horizontal: string; vertical: string; }",
15194
15190
  "required": false
15195
15191
  },
15196
15192
  {
15197
- "name": "orientation",
15198
- "type": "\"horizontal\" | \"vertical\" | undefined",
15199
- "required": false,
15200
- "description": "Either `vertical` or `horizontal`. Defaults to `horizontal`."
15193
+ "name": "spacing",
15194
+ "type": "complex",
15195
+ "required": false
15201
15196
  },
15202
15197
  {
15203
15198
  "name": "decorative",
15204
15199
  "type": "boolean | undefined",
15205
- "required": false,
15206
- "description": "Whether or not the component is purely decorative. When true, accessibility-related attributes\nare updated so that that the rendered element is removed from the accessibility tree."
15207
- },
15208
- {
15209
- "name": "spacing",
15210
- "type": "complex",
15211
15200
  "required": false
15212
15201
  },
15213
15202
  {
@@ -15651,29 +15640,22 @@
15651
15640
  "required": false,
15652
15641
  "description": "@see {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/part}"
15653
15642
  },
15654
- {
15655
- "name": "asChild",
15656
- "type": "boolean | undefined",
15657
- "required": false
15658
- },
15659
15643
  {
15660
15644
  "name": "orientation",
15661
- "type": "\"horizontal\" | \"vertical\" | undefined",
15645
+ "type": "{ horizontal: string; vertical: string; }",
15662
15646
  "required": false,
15663
- "description": "Either `vertical` or `horizontal`. Defaults to `horizontal`.",
15664
15647
  "defaultValue": "horizontal"
15665
15648
  },
15649
+ {
15650
+ "name": "spacing",
15651
+ "type": "complex",
15652
+ "required": false
15653
+ },
15666
15654
  {
15667
15655
  "name": "decorative",
15668
15656
  "type": "boolean | undefined",
15669
15657
  "required": false,
15670
- "description": "Whether or not the component is purely decorative. When true, accessibility-related attributes\nare updated so that that the rendered element is removed from the accessibility tree.",
15671
15658
  "defaultValue": "true"
15672
- },
15673
- {
15674
- "name": "spacing",
15675
- "type": "complex",
15676
- "required": false
15677
15659
  }
15678
15660
  ],
15679
15661
  "variants": [
@@ -15721,8 +15703,8 @@
15721
15703
  ]
15722
15704
  },
15723
15705
  {
15724
- "name": "Stack",
15725
- "importPath": "@wallarm-org/design-system/Stack",
15706
+ "name": "Skeleton",
15707
+ "importPath": "@wallarm-org/design-system/Skeleton",
15726
15708
  "props": [
15727
15709
  {
15728
15710
  "name": "defaultChecked",
@@ -15781,7 +15763,7 @@
15781
15763
  },
15782
15764
  {
15783
15765
  "name": "enterKeyHint",
15784
- "type": "\"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"search\" | \"send\" | undefined",
15766
+ "type": "\"search\" | \"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"send\" | undefined",
15785
15767
  "required": false
15786
15768
  },
15787
15769
  {
@@ -15972,7 +15954,7 @@
15972
15954
  },
15973
15955
  {
15974
15956
  "name": "inputMode",
15975
- "type": "\"none\" | \"search\" | \"text\" | \"tel\" | \"url\" | \"email\" | \"numeric\" | \"decimal\" | undefined",
15957
+ "type": "\"search\" | \"text\" | \"none\" | \"tel\" | \"url\" | \"email\" | \"numeric\" | \"decimal\" | undefined",
15976
15958
  "required": false,
15977
15959
  "description": "Hints at the type of data that might be entered by the user while editing the element or its contents"
15978
15960
  },
@@ -15995,208 +15977,549 @@
15995
15977
  "description": "@see {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/part}"
15996
15978
  },
15997
15979
  {
15998
- "name": "direction",
15999
- "type": "{ row: string; column: string; 'row-reverse': string; 'column-reverse': string; }",
16000
- "required": false,
16001
- "defaultValue": "column"
16002
- },
16003
- {
16004
- "name": "align",
16005
- "type": "{ start: string; center: string; end: string; stretch: string; baseline: string; }",
15980
+ "name": "variant",
15981
+ "type": "{ text: string; circular: string; rect: string; rounded: string; }",
16006
15982
  "required": false,
16007
- "defaultValue": "stretch"
15983
+ "defaultValue": "rect"
16008
15984
  },
16009
15985
  {
16010
- "name": "justify",
16011
- "type": "{ start: string; center: string; end: string; between: string; around: string; evenly: string; }",
15986
+ "name": "asChild",
15987
+ "type": "{ true: string; false: string; }",
16012
15988
  "required": false,
16013
- "defaultValue": "start"
15989
+ "defaultValue": "false"
16014
15990
  },
16015
15991
  {
16016
- "name": "wrap",
16017
- "type": "{ wrap: string; nowrap: string; reverse: string; }",
15992
+ "name": "loading",
15993
+ "type": "boolean | undefined",
16018
15994
  "required": false,
16019
- "defaultValue": "nowrap"
16020
- },
15995
+ "defaultValue": "true"
15996
+ }
15997
+ ],
15998
+ "variants": [
16021
15999
  {
16022
- "name": "spacing",
16023
- "type": "complex",
16024
- "required": false,
16025
- "defaultValue": "4"
16000
+ "name": "variant",
16001
+ "options": [
16002
+ "text",
16003
+ "circular",
16004
+ "rect",
16005
+ "rounded"
16006
+ ],
16007
+ "defaultValue": "rect"
16026
16008
  },
16027
16009
  {
16028
16010
  "name": "asChild",
16029
- "type": "boolean | undefined",
16030
- "required": false,
16011
+ "options": [
16012
+ "true",
16013
+ "false"
16014
+ ],
16031
16015
  "defaultValue": "false"
16032
16016
  }
16033
16017
  ],
16034
- "variants": [
16018
+ "subComponents": [],
16019
+ "examples": [
16035
16020
  {
16036
- "name": "direction",
16037
- "options": [
16038
- "row",
16039
- "column",
16040
- "row-reverse",
16041
- "column-reverse"
16042
- ]
16021
+ "name": "Basic",
16022
+ "code": "args => <Skeleton {...args} className='h-40 w-256' />"
16043
16023
  },
16044
16024
  {
16045
- "name": "align",
16046
- "options": [
16047
- "start",
16048
- "center",
16049
- "end",
16050
- "stretch",
16051
- "baseline"
16052
- ]
16025
+ "name": "Variants",
16026
+ "code": "() => (\n <VStack className='gap-16 w-320'>\n <VStack className='gap-4'>\n <span className='text-sm text-text-secondary'>text</span>\n <Skeleton variant='text' />\n </VStack>\n\n <VStack className='gap-4'>\n <span className='text-sm text-text-secondary'>rect (default)</span>\n <Skeleton variant='rect' className='h-40 w-256' />\n </VStack>\n\n <VStack className='gap-4'>\n <span className='text-sm text-text-secondary'>rounded</span>\n <Skeleton variant='rounded' className='h-40 w-256' />\n </VStack>\n\n <VStack className='gap-4'>\n <span className='text-sm text-text-secondary'>circular</span>\n <Skeleton variant='circular' className='h-48 w-48' />\n </VStack>\n </VStack>\n)"
16053
16027
  },
16054
16028
  {
16055
- "name": "justify",
16056
- "options": [
16057
- "start",
16058
- "center",
16059
- "end",
16060
- "between",
16061
- "around",
16062
- "evenly"
16063
- ]
16029
+ "name": "WithAsChild",
16030
+ "code": "() => (\n <VStack className='gap-16'>\n <VStack className='gap-4'>\n <span className='text-sm text-text-secondary'>loading=true, asChild</span>\n <HStack className='gap-8'>\n <Skeleton asChild loading>\n <Badge>Select</Badge>\n </Skeleton>\n <Skeleton asChild loading>\n <Button>Submit</Button>\n </Skeleton>\n </HStack>\n </VStack>\n\n <VStack className='gap-4'>\n <span className='text-sm text-text-secondary'>loading=false (children rendered)</span>\n <HStack className='gap-8'>\n <Skeleton asChild loading={false}>\n <Badge>Select</Badge>\n </Skeleton>\n <Skeleton asChild loading={false}>\n <Button>Submit</Button>\n </Skeleton>\n </HStack>\n </VStack>\n </VStack>\n)"
16064
16031
  },
16065
16032
  {
16066
- "name": "wrap",
16067
- "options": [
16068
- "wrap",
16069
- "nowrap",
16070
- "reverse"
16071
- ]
16033
+ "name": "LoadingToggle",
16034
+ "code": "({ loading = true }) => (\n <HStack className='gap-16'>\n <Skeleton loading={loading} className='h-48 w-48' variant='circular' />\n <VStack className='gap-8'>\n <Skeleton loading={loading} variant='text' className='w-200' />\n <Skeleton loading={loading} variant='text' className='w-128' />\n </VStack>\n </HStack>\n)"
16072
16035
  },
16073
16036
  {
16074
- "name": "spacing",
16075
- "options": [
16076
- "0",
16077
- "1",
16078
- "2",
16079
- "4",
16080
- "6",
16081
- "8",
16082
- "12",
16083
- "16",
16084
- "20",
16085
- "24",
16086
- "28",
16087
- "32",
16088
- "36",
16089
- "40",
16090
- "44",
16091
- "48",
16092
- "56",
16093
- "64",
16094
- "80",
16095
- "96",
16096
- "112",
16097
- "128",
16098
- "144"
16099
- ]
16037
+ "name": "ShapeVariety",
16038
+ "code": "() => (\n <VStack className='gap-16'>\n <HStack className='gap-16 items-center'>\n <Skeleton variant='circular' className='h-48 w-48' />\n <VStack className='gap-8 flex-1'>\n <Skeleton variant='text' className='w-200' />\n <Skeleton variant='text' className='w-128' />\n </VStack>\n </HStack>\n\n <HStack className='gap-16 items-center'>\n <Skeleton variant='circular' className='h-36 w-36' />\n <VStack className='gap-8 flex-1'>\n <Skeleton variant='text' className='w-160' />\n <Skeleton variant='text' className='w-96' />\n </VStack>\n </HStack>\n </VStack>\n)"
16039
+ },
16040
+ {
16041
+ "name": "CardExample",
16042
+ "code": "() => (\n <VStack className='gap-12 w-320'>\n <Skeleton variant='rounded' className='h-160 w-full' />\n <Skeleton variant='text' className='w-200' />\n <Skeleton variant='text' />\n <Skeleton variant='text' className='w-240' />\n <HStack className='gap-8'>\n <Skeleton variant='rounded' className='h-36 w-100' />\n <Skeleton variant='circular' className='h-36 w-36' />\n </HStack>\n </VStack>\n)"
16100
16043
  }
16101
- ],
16102
- "subComponents": [
16044
+ ]
16045
+ },
16046
+ {
16047
+ "name": "Stack",
16048
+ "importPath": "@wallarm-org/design-system/Stack",
16049
+ "props": [
16103
16050
  {
16104
- "name": "HStack",
16105
- "props": [
16106
- {
16107
- "name": "defaultChecked",
16108
- "type": "boolean | undefined",
16109
- "required": false
16110
- },
16111
- {
16112
- "name": "defaultValue",
16113
- "type": "string | number | readonly string[] | undefined",
16114
- "required": false
16115
- },
16116
- {
16117
- "name": "suppressContentEditableWarning",
16118
- "type": "boolean | undefined",
16119
- "required": false
16120
- },
16121
- {
16122
- "name": "suppressHydrationWarning",
16123
- "type": "boolean | undefined",
16124
- "required": false
16125
- },
16126
- {
16127
- "name": "accessKey",
16128
- "type": "string | undefined",
16129
- "required": false
16130
- },
16131
- {
16132
- "name": "autoCapitalize",
16133
- "type": "\"off\" | \"none\" | \"on\" | \"sentences\" | \"words\" | \"characters\" | (string & {}) | undefined",
16134
- "required": false
16135
- },
16136
- {
16137
- "name": "autoFocus",
16138
- "type": "boolean | undefined",
16139
- "required": false
16140
- },
16141
- {
16142
- "name": "contentEditable",
16143
- "type": "Booleanish | \"inherit\" | \"plaintext-only\" | undefined",
16144
- "required": false
16145
- },
16146
- {
16147
- "name": "contextMenu",
16148
- "type": "string | undefined",
16149
- "required": false
16150
- },
16151
- {
16152
- "name": "dir",
16153
- "type": "string | undefined",
16154
- "required": false
16155
- },
16156
- {
16157
- "name": "draggable",
16158
- "type": "Booleanish | undefined",
16159
- "required": false
16160
- },
16161
- {
16162
- "name": "enterKeyHint",
16163
- "type": "\"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"search\" | \"send\" | undefined",
16164
- "required": false
16165
- },
16166
- {
16167
- "name": "hidden",
16168
- "type": "boolean | undefined",
16169
- "required": false
16170
- },
16171
- {
16172
- "name": "id",
16173
- "type": "string | undefined",
16174
- "required": false
16175
- },
16176
- {
16177
- "name": "lang",
16178
- "type": "string | undefined",
16179
- "required": false
16180
- },
16181
- {
16182
- "name": "nonce",
16183
- "type": "string | undefined",
16184
- "required": false
16185
- },
16186
- {
16187
- "name": "slot",
16188
- "type": "string | undefined",
16189
- "required": false
16190
- },
16191
- {
16192
- "name": "spellCheck",
16193
- "type": "Booleanish | undefined",
16194
- "required": false
16195
- },
16196
- {
16197
- "name": "tabIndex",
16198
- "type": "number | undefined",
16199
- "required": false
16051
+ "name": "defaultChecked",
16052
+ "type": "boolean | undefined",
16053
+ "required": false
16054
+ },
16055
+ {
16056
+ "name": "defaultValue",
16057
+ "type": "string | number | readonly string[] | undefined",
16058
+ "required": false
16059
+ },
16060
+ {
16061
+ "name": "suppressContentEditableWarning",
16062
+ "type": "boolean | undefined",
16063
+ "required": false
16064
+ },
16065
+ {
16066
+ "name": "suppressHydrationWarning",
16067
+ "type": "boolean | undefined",
16068
+ "required": false
16069
+ },
16070
+ {
16071
+ "name": "accessKey",
16072
+ "type": "string | undefined",
16073
+ "required": false
16074
+ },
16075
+ {
16076
+ "name": "autoCapitalize",
16077
+ "type": "\"off\" | \"none\" | \"on\" | \"sentences\" | \"words\" | \"characters\" | (string & {}) | undefined",
16078
+ "required": false
16079
+ },
16080
+ {
16081
+ "name": "autoFocus",
16082
+ "type": "boolean | undefined",
16083
+ "required": false
16084
+ },
16085
+ {
16086
+ "name": "contentEditable",
16087
+ "type": "Booleanish | \"inherit\" | \"plaintext-only\" | undefined",
16088
+ "required": false
16089
+ },
16090
+ {
16091
+ "name": "contextMenu",
16092
+ "type": "string | undefined",
16093
+ "required": false
16094
+ },
16095
+ {
16096
+ "name": "dir",
16097
+ "type": "string | undefined",
16098
+ "required": false
16099
+ },
16100
+ {
16101
+ "name": "draggable",
16102
+ "type": "Booleanish | undefined",
16103
+ "required": false
16104
+ },
16105
+ {
16106
+ "name": "enterKeyHint",
16107
+ "type": "\"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"search\" | \"send\" | undefined",
16108
+ "required": false
16109
+ },
16110
+ {
16111
+ "name": "hidden",
16112
+ "type": "boolean | undefined",
16113
+ "required": false
16114
+ },
16115
+ {
16116
+ "name": "id",
16117
+ "type": "string | undefined",
16118
+ "required": false
16119
+ },
16120
+ {
16121
+ "name": "lang",
16122
+ "type": "string | undefined",
16123
+ "required": false
16124
+ },
16125
+ {
16126
+ "name": "nonce",
16127
+ "type": "string | undefined",
16128
+ "required": false
16129
+ },
16130
+ {
16131
+ "name": "slot",
16132
+ "type": "string | undefined",
16133
+ "required": false
16134
+ },
16135
+ {
16136
+ "name": "spellCheck",
16137
+ "type": "Booleanish | undefined",
16138
+ "required": false
16139
+ },
16140
+ {
16141
+ "name": "tabIndex",
16142
+ "type": "number | undefined",
16143
+ "required": false
16144
+ },
16145
+ {
16146
+ "name": "title",
16147
+ "type": "string | undefined",
16148
+ "required": false
16149
+ },
16150
+ {
16151
+ "name": "translate",
16152
+ "type": "\"yes\" | \"no\" | undefined",
16153
+ "required": false
16154
+ },
16155
+ {
16156
+ "name": "radioGroup",
16157
+ "type": "string | undefined",
16158
+ "required": false
16159
+ },
16160
+ {
16161
+ "name": "role",
16162
+ "type": "AriaRole | undefined",
16163
+ "required": false
16164
+ },
16165
+ {
16166
+ "name": "about",
16167
+ "type": "string | undefined",
16168
+ "required": false
16169
+ },
16170
+ {
16171
+ "name": "content",
16172
+ "type": "string | undefined",
16173
+ "required": false
16174
+ },
16175
+ {
16176
+ "name": "datatype",
16177
+ "type": "string | undefined",
16178
+ "required": false
16179
+ },
16180
+ {
16181
+ "name": "inlist",
16182
+ "type": "any",
16183
+ "required": false
16184
+ },
16185
+ {
16186
+ "name": "prefix",
16187
+ "type": "string | undefined",
16188
+ "required": false
16189
+ },
16190
+ {
16191
+ "name": "property",
16192
+ "type": "string | undefined",
16193
+ "required": false
16194
+ },
16195
+ {
16196
+ "name": "rel",
16197
+ "type": "string | undefined",
16198
+ "required": false
16199
+ },
16200
+ {
16201
+ "name": "resource",
16202
+ "type": "string | undefined",
16203
+ "required": false
16204
+ },
16205
+ {
16206
+ "name": "rev",
16207
+ "type": "string | undefined",
16208
+ "required": false
16209
+ },
16210
+ {
16211
+ "name": "typeof",
16212
+ "type": "string | undefined",
16213
+ "required": false
16214
+ },
16215
+ {
16216
+ "name": "vocab",
16217
+ "type": "string | undefined",
16218
+ "required": false
16219
+ },
16220
+ {
16221
+ "name": "autoCorrect",
16222
+ "type": "string | undefined",
16223
+ "required": false
16224
+ },
16225
+ {
16226
+ "name": "autoSave",
16227
+ "type": "string | undefined",
16228
+ "required": false
16229
+ },
16230
+ {
16231
+ "name": "color",
16232
+ "type": "string | undefined",
16233
+ "required": false
16234
+ },
16235
+ {
16236
+ "name": "itemProp",
16237
+ "type": "string | undefined",
16238
+ "required": false
16239
+ },
16240
+ {
16241
+ "name": "itemScope",
16242
+ "type": "boolean | undefined",
16243
+ "required": false
16244
+ },
16245
+ {
16246
+ "name": "itemType",
16247
+ "type": "string | undefined",
16248
+ "required": false
16249
+ },
16250
+ {
16251
+ "name": "itemID",
16252
+ "type": "string | undefined",
16253
+ "required": false
16254
+ },
16255
+ {
16256
+ "name": "itemRef",
16257
+ "type": "string | undefined",
16258
+ "required": false
16259
+ },
16260
+ {
16261
+ "name": "results",
16262
+ "type": "number | undefined",
16263
+ "required": false
16264
+ },
16265
+ {
16266
+ "name": "security",
16267
+ "type": "string | undefined",
16268
+ "required": false
16269
+ },
16270
+ {
16271
+ "name": "unselectable",
16272
+ "type": "\"off\" | \"on\" | undefined",
16273
+ "required": false
16274
+ },
16275
+ {
16276
+ "name": "popover",
16277
+ "type": "\"\" | \"auto\" | \"manual\" | \"hint\" | undefined",
16278
+ "required": false
16279
+ },
16280
+ {
16281
+ "name": "popoverTargetAction",
16282
+ "type": "\"toggle\" | \"show\" | \"hide\" | undefined",
16283
+ "required": false
16284
+ },
16285
+ {
16286
+ "name": "popoverTarget",
16287
+ "type": "string | undefined",
16288
+ "required": false
16289
+ },
16290
+ {
16291
+ "name": "inert",
16292
+ "type": "boolean | undefined",
16293
+ "required": false,
16294
+ "description": "@see https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/inert"
16295
+ },
16296
+ {
16297
+ "name": "inputMode",
16298
+ "type": "\"none\" | \"search\" | \"text\" | \"tel\" | \"url\" | \"email\" | \"numeric\" | \"decimal\" | undefined",
16299
+ "required": false,
16300
+ "description": "Hints at the type of data that might be entered by the user while editing the element or its contents"
16301
+ },
16302
+ {
16303
+ "name": "is",
16304
+ "type": "string | undefined",
16305
+ "required": false,
16306
+ "description": "Specify that a standard HTML element should behave like a defined custom built-in element"
16307
+ },
16308
+ {
16309
+ "name": "exportparts",
16310
+ "type": "string | undefined",
16311
+ "required": false,
16312
+ "description": "@see {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/exportparts}"
16313
+ },
16314
+ {
16315
+ "name": "part",
16316
+ "type": "string | undefined",
16317
+ "required": false,
16318
+ "description": "@see {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/part}"
16319
+ },
16320
+ {
16321
+ "name": "direction",
16322
+ "type": "{ row: string; column: string; 'row-reverse': string; 'column-reverse': string; }",
16323
+ "required": false,
16324
+ "defaultValue": "column"
16325
+ },
16326
+ {
16327
+ "name": "align",
16328
+ "type": "{ start: string; center: string; end: string; stretch: string; baseline: string; }",
16329
+ "required": false,
16330
+ "defaultValue": "stretch"
16331
+ },
16332
+ {
16333
+ "name": "justify",
16334
+ "type": "{ start: string; center: string; end: string; between: string; around: string; evenly: string; }",
16335
+ "required": false,
16336
+ "defaultValue": "start"
16337
+ },
16338
+ {
16339
+ "name": "wrap",
16340
+ "type": "{ wrap: string; nowrap: string; reverse: string; }",
16341
+ "required": false,
16342
+ "defaultValue": "nowrap"
16343
+ },
16344
+ {
16345
+ "name": "spacing",
16346
+ "type": "complex",
16347
+ "required": false,
16348
+ "defaultValue": "4"
16349
+ },
16350
+ {
16351
+ "name": "asChild",
16352
+ "type": "boolean | undefined",
16353
+ "required": false,
16354
+ "defaultValue": "false"
16355
+ }
16356
+ ],
16357
+ "variants": [
16358
+ {
16359
+ "name": "direction",
16360
+ "options": [
16361
+ "row",
16362
+ "column",
16363
+ "row-reverse",
16364
+ "column-reverse"
16365
+ ]
16366
+ },
16367
+ {
16368
+ "name": "align",
16369
+ "options": [
16370
+ "start",
16371
+ "center",
16372
+ "end",
16373
+ "stretch",
16374
+ "baseline"
16375
+ ]
16376
+ },
16377
+ {
16378
+ "name": "justify",
16379
+ "options": [
16380
+ "start",
16381
+ "center",
16382
+ "end",
16383
+ "between",
16384
+ "around",
16385
+ "evenly"
16386
+ ]
16387
+ },
16388
+ {
16389
+ "name": "wrap",
16390
+ "options": [
16391
+ "wrap",
16392
+ "nowrap",
16393
+ "reverse"
16394
+ ]
16395
+ },
16396
+ {
16397
+ "name": "spacing",
16398
+ "options": [
16399
+ "0",
16400
+ "1",
16401
+ "2",
16402
+ "4",
16403
+ "6",
16404
+ "8",
16405
+ "12",
16406
+ "16",
16407
+ "20",
16408
+ "24",
16409
+ "28",
16410
+ "32",
16411
+ "36",
16412
+ "40",
16413
+ "44",
16414
+ "48",
16415
+ "56",
16416
+ "64",
16417
+ "80",
16418
+ "96",
16419
+ "112",
16420
+ "128",
16421
+ "144"
16422
+ ]
16423
+ }
16424
+ ],
16425
+ "subComponents": [
16426
+ {
16427
+ "name": "HStack",
16428
+ "props": [
16429
+ {
16430
+ "name": "defaultChecked",
16431
+ "type": "boolean | undefined",
16432
+ "required": false
16433
+ },
16434
+ {
16435
+ "name": "defaultValue",
16436
+ "type": "string | number | readonly string[] | undefined",
16437
+ "required": false
16438
+ },
16439
+ {
16440
+ "name": "suppressContentEditableWarning",
16441
+ "type": "boolean | undefined",
16442
+ "required": false
16443
+ },
16444
+ {
16445
+ "name": "suppressHydrationWarning",
16446
+ "type": "boolean | undefined",
16447
+ "required": false
16448
+ },
16449
+ {
16450
+ "name": "accessKey",
16451
+ "type": "string | undefined",
16452
+ "required": false
16453
+ },
16454
+ {
16455
+ "name": "autoCapitalize",
16456
+ "type": "\"off\" | \"none\" | \"on\" | \"sentences\" | \"words\" | \"characters\" | (string & {}) | undefined",
16457
+ "required": false
16458
+ },
16459
+ {
16460
+ "name": "autoFocus",
16461
+ "type": "boolean | undefined",
16462
+ "required": false
16463
+ },
16464
+ {
16465
+ "name": "contentEditable",
16466
+ "type": "Booleanish | \"inherit\" | \"plaintext-only\" | undefined",
16467
+ "required": false
16468
+ },
16469
+ {
16470
+ "name": "contextMenu",
16471
+ "type": "string | undefined",
16472
+ "required": false
16473
+ },
16474
+ {
16475
+ "name": "dir",
16476
+ "type": "string | undefined",
16477
+ "required": false
16478
+ },
16479
+ {
16480
+ "name": "draggable",
16481
+ "type": "Booleanish | undefined",
16482
+ "required": false
16483
+ },
16484
+ {
16485
+ "name": "enterKeyHint",
16486
+ "type": "\"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"search\" | \"send\" | undefined",
16487
+ "required": false
16488
+ },
16489
+ {
16490
+ "name": "hidden",
16491
+ "type": "boolean | undefined",
16492
+ "required": false
16493
+ },
16494
+ {
16495
+ "name": "id",
16496
+ "type": "string | undefined",
16497
+ "required": false
16498
+ },
16499
+ {
16500
+ "name": "lang",
16501
+ "type": "string | undefined",
16502
+ "required": false
16503
+ },
16504
+ {
16505
+ "name": "nonce",
16506
+ "type": "string | undefined",
16507
+ "required": false
16508
+ },
16509
+ {
16510
+ "name": "slot",
16511
+ "type": "string | undefined",
16512
+ "required": false
16513
+ },
16514
+ {
16515
+ "name": "spellCheck",
16516
+ "type": "Booleanish | undefined",
16517
+ "required": false
16518
+ },
16519
+ {
16520
+ "name": "tabIndex",
16521
+ "type": "number | undefined",
16522
+ "required": false
16200
16523
  },
16201
16524
  {
16202
16525
  "name": "title",
@@ -16737,12 +17060,6 @@
16737
17060
  "required": false,
16738
17061
  "defaultValue": "false"
16739
17062
  },
16740
- {
16741
- "name": "label",
16742
- "type": "string | undefined",
16743
- "required": false,
16744
- "description": "Specifies the localized strings that identifies the accessibility elements and their states"
16745
- },
16746
17063
  {
16747
17064
  "name": "form",
16748
17065
  "type": "string | undefined",
@@ -17023,6 +17340,12 @@
17023
17340
  "required": false,
17024
17341
  "description": "@see {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/part}"
17025
17342
  },
17343
+ {
17344
+ "name": "label",
17345
+ "type": "string | undefined",
17346
+ "required": false,
17347
+ "description": "Specifies the localized strings that identifies the accessibility elements and their states"
17348
+ },
17026
17349
  {
17027
17350
  "name": "ids",
17028
17351
  "type": "Partial<{ root: string; hiddenInput: string; control: string; label: string; thumb: string; }> | undefined",
@@ -17664,6 +17987,239 @@
17664
17987
  }
17665
17988
  ]
17666
17989
  },
17990
+ {
17991
+ "name": "Table",
17992
+ "importPath": "@wallarm-org/design-system/Table",
17993
+ "props": [
17994
+ {
17995
+ "name": "data",
17996
+ "type": "T[]",
17997
+ "required": true,
17998
+ "description": "Data array for rows"
17999
+ },
18000
+ {
18001
+ "name": "columns",
18002
+ "type": "TableColumnDef<T>[]",
18003
+ "required": true,
18004
+ "description": "Column definitions"
18005
+ },
18006
+ {
18007
+ "name": "isLoading",
18008
+ "type": "boolean | undefined",
18009
+ "required": false,
18010
+ "description": "Show skeleton rows",
18011
+ "defaultValue": "false"
18012
+ },
18013
+ {
18014
+ "name": "getRowId",
18015
+ "type": "((row: T, index: number) => string) | undefined",
18016
+ "required": false,
18017
+ "description": "Row id accessor for stable row identity"
18018
+ },
18019
+ {
18020
+ "name": "sorting",
18021
+ "type": "TableSortingState | undefined",
18022
+ "required": false
18023
+ },
18024
+ {
18025
+ "name": "rowSelection",
18026
+ "type": "TableRowSelectionState | undefined",
18027
+ "required": false
18028
+ },
18029
+ {
18030
+ "name": "columnSizing",
18031
+ "type": "TableColumnSizingState | undefined",
18032
+ "required": false
18033
+ },
18034
+ {
18035
+ "name": "columnPinning",
18036
+ "type": "TableColumnPinningState | undefined",
18037
+ "required": false
18038
+ },
18039
+ {
18040
+ "name": "columnOrder",
18041
+ "type": "string[] | undefined",
18042
+ "required": false
18043
+ },
18044
+ {
18045
+ "name": "grouping",
18046
+ "type": "TableGroupingState | undefined",
18047
+ "required": false
18048
+ },
18049
+ {
18050
+ "name": "renderGroupRow",
18051
+ "type": "((row: TableRow<T>) => ReactNode) | undefined",
18052
+ "required": false
18053
+ },
18054
+ {
18055
+ "name": "getSubRows",
18056
+ "type": "((row: T) => T[] | undefined) | undefined",
18057
+ "required": false,
18058
+ "description": "Sub-row accessor for hierarchical/tree data (used with renderGroupRow)"
18059
+ },
18060
+ {
18061
+ "name": "expanded",
18062
+ "type": "TableExpandedState | undefined",
18063
+ "required": false
18064
+ },
18065
+ {
18066
+ "name": "renderExpandedRow",
18067
+ "type": "((row: TableRow<T>) => ReactNode) | undefined",
18068
+ "required": false
18069
+ },
18070
+ {
18071
+ "name": "columnVisibility",
18072
+ "type": "TableVisibilityState | undefined",
18073
+ "required": false
18074
+ },
18075
+ {
18076
+ "name": "defaultColumnVisibility",
18077
+ "type": "TableVisibilityState | undefined",
18078
+ "required": false
18079
+ },
18080
+ {
18081
+ "name": "defaultColumnOrder",
18082
+ "type": "string[] | undefined",
18083
+ "required": false
18084
+ },
18085
+ {
18086
+ "name": "virtualized",
18087
+ "type": "boolean | undefined",
18088
+ "required": false
18089
+ },
18090
+ {
18091
+ "name": "estimateRowHeight",
18092
+ "type": "((index: number) => number) | undefined",
18093
+ "required": false
18094
+ },
18095
+ {
18096
+ "name": "overscan",
18097
+ "type": "number | undefined",
18098
+ "required": false
18099
+ }
18100
+ ],
18101
+ "variants": [
18102
+ {
18103
+ "name": "interactive",
18104
+ "options": [
18105
+ "true",
18106
+ "false"
18107
+ ],
18108
+ "defaultValue": "false"
18109
+ },
18110
+ {
18111
+ "name": "sorted",
18112
+ "options": [
18113
+ "true",
18114
+ "false"
18115
+ ],
18116
+ "defaultValue": "false"
18117
+ },
18118
+ {
18119
+ "name": "pinned",
18120
+ "options": [
18121
+ "true",
18122
+ "false"
18123
+ ],
18124
+ "defaultValue": "false"
18125
+ },
18126
+ {
18127
+ "name": "lastPinnedLeft",
18128
+ "options": [
18129
+ "true",
18130
+ "false"
18131
+ ],
18132
+ "defaultValue": "false"
18133
+ },
18134
+ {
18135
+ "name": "draggable",
18136
+ "options": [
18137
+ "true",
18138
+ "false"
18139
+ ],
18140
+ "defaultValue": "false"
18141
+ },
18142
+ {
18143
+ "name": "expanded",
18144
+ "options": [
18145
+ "true",
18146
+ "false"
18147
+ ],
18148
+ "defaultValue": "false"
18149
+ },
18150
+ {
18151
+ "name": "virtualized",
18152
+ "options": [
18153
+ "true",
18154
+ "false"
18155
+ ],
18156
+ "defaultValue": "false"
18157
+ }
18158
+ ],
18159
+ "subComponents": [],
18160
+ "examples": [
18161
+ {
18162
+ "name": "Basic",
18163
+ "code": "() => {\n const [sorting, setSorting] = useState<TableSortingState>([{ id: 'firstDetected', desc: true }]);\n\n return (\n <Table\n data={securityEvents}\n columns={securityColumns}\n getRowId={row => row.id}\n sorting={sorting}\n onSortingChange={setSorting}\n />\n );\n}"
18164
+ },
18165
+ {
18166
+ "name": "Sorting",
18167
+ "code": "() => {\n const [sorting, setSorting] = useState<TableSortingState>([]);\n\n return (\n <Table\n data={securityEvents}\n columns={securityColumns}\n getRowId={row => row.id}\n sorting={sorting}\n onSortingChange={setSorting}\n />\n );\n}"
18168
+ },
18169
+ {
18170
+ "name": "LoadingState",
18171
+ "code": "() => (\n <Table data={[]} columns={securityColumns} isLoading />\n)"
18172
+ },
18173
+ {
18174
+ "name": "EmptyState",
18175
+ "code": "() => (\n <Table data={[]} columns={securityColumns} getRowId={row => row.id}>\n <TableEmptyState>\n <VStack align='center' justify='center' spacing={8}>\n <Text size='sm' weight='medium' color='primary'>\n No results found\n </Text>\n <Text size='sm' color='secondary'>\n Try to apply different filter or reset it.\n </Text>\n </VStack>\n </TableEmptyState>\n </Table>\n)"
18176
+ },
18177
+ {
18178
+ "name": "ColumnResizing",
18179
+ "code": "() => {\n const [columnSizing, setColumnSizing] = useState<TableColumnSizingState>({});\n\n return (\n <Table\n data={securityEvents}\n columns={securityColumns}\n getRowId={row => row.id}\n columnSizing={columnSizing}\n onColumnSizingChange={setColumnSizing}\n />\n );\n}"
18180
+ },
18181
+ {
18182
+ "name": "ColumnPinning",
18183
+ "code": "() => {\n const [columnPinning, setColumnPinning] = useState<TableColumnPinningState>({\n left: ['objectName'],\n });\n\n return (\n <div className='max-w-800'>\n <Table\n data={securityEvents}\n columns={securityColumns}\n getRowId={row => row.id}\n columnPinning={columnPinning}\n onColumnPinningChange={setColumnPinning}\n />\n </div>\n );\n}"
18184
+ },
18185
+ {
18186
+ "name": "ColumnDragAndDrop",
18187
+ "code": "() => {\n const [columnOrder, setColumnOrder] = useState<string[]>([]);\n\n return (\n <Table\n data={securityEvents}\n columns={securityColumns}\n getRowId={row => row.id}\n columnOrder={columnOrder}\n onColumnOrderChange={setColumnOrder}\n />\n );\n}"
18188
+ },
18189
+ {
18190
+ "name": "ColumnHeaderMenu",
18191
+ "code": "() => {\n const [sorting, setSorting] = useState<TableSortingState>([]);\n const [columnVisibility, setColumnVisibility] = useState<TableVisibilityState>({});\n const [columnPinning, setColumnPinning] = useState<TableColumnPinningState>({});\n const [columnOrder, setColumnOrder] = useState<string[]>([]);\n\n return (\n <Table\n data={securityEvents}\n columns={securityColumns}\n getRowId={row => row.id}\n sorting={sorting}\n onSortingChange={setSorting}\n columnVisibility={columnVisibility}\n onColumnVisibilityChange={setColumnVisibility}\n columnPinning={columnPinning}\n onColumnPinningChange={setColumnPinning}\n columnOrder={columnOrder}\n onColumnOrderChange={setColumnOrder}\n />\n );\n}"
18192
+ },
18193
+ {
18194
+ "name": "RowSelection",
18195
+ "code": "() => {\n const [rowSelection, setRowSelection] = useState<TableRowSelectionState>({});\n\n return (\n <Table\n data={securityEvents}\n columns={securityColumns}\n getRowId={row => row.id}\n rowSelection={rowSelection}\n onRowSelectionChange={setRowSelection}\n >\n <TableActionBar>\n <Button variant='ghost' color='neutral-alt' onClick={() => alert('Copy clicked')}>\n <Copy /> Duplicate\n </Button>\n <Button color='brand' onClick={() => alert('Delete clicked')}>\n <Trash2 /> Delete\n </Button>\n </TableActionBar>\n </Table>\n );\n}"
18196
+ },
18197
+ {
18198
+ "name": "RowGrouping",
18199
+ "code": "() => {\n const [expanded, setExpanded] = useState<TableExpandedState>({ 'group-cto': true });\n const [sorting, setSorting] = useState<TableSortingState>([{ id: 'lastEdited', desc: true }]);\n const [rowSelection, setRowSelection] = useState<TableRowSelectionState>({});\n\n return (\n <Table<SecurityHeaderEntry>\n data={groupedHeaderData}\n columns={headerColumns}\n getRowId={row => row.id}\n getSubRows={row => row.children}\n expanded={expanded}\n onExpandedChange={setExpanded}\n sorting={sorting}\n onSortingChange={setSorting}\n rowSelection={rowSelection}\n onRowSelectionChange={setRowSelection}\n />\n );\n}"
18200
+ },
18201
+ {
18202
+ "name": "RowExpanding",
18203
+ "code": "() => {\n const [expanded, setExpanded] = useState<TableExpandedState>({});\n\n return (\n <Table\n data={securityEvents}\n columns={securityColumns}\n getRowId={row => row.id}\n expanded={expanded}\n onExpandedChange={setExpanded}\n renderExpandedRow={row => (\n <div className='p-16 bg-states-primary-default-alt rounded-8'>\n <Text size='sm' weight='medium'>\n Event Details\n </Text>\n <div className='grid grid-cols-3 gap-8 mt-8'>\n <VStack spacing={2}>\n <Text size='xs' color='secondary'>\n Source IP\n </Text>\n <Text size='sm'>{row.original.sourceIp}</Text>\n </VStack>\n <VStack spacing={2}>\n <Text size='xs' color='secondary'>\n Provider\n </Text>\n <Text size='sm'>{row.original.sourceProvider}</Text>\n </VStack>\n <VStack spacing={2}>\n <Text size='xs' color='secondary'>\n Endpoint\n </Text>\n <HStack spacing={4}>\n <Badge\n color={METHOD_COLORS[row.original.endpointMethod] ?? 'slate'}\n type='secondary'\n size='medium'\n textVariant='code'\n >\n {row.original.endpointMethod}\n </Badge>\n <Text size='sm'>{row.original.endpointPath}</Text>\n </HStack>\n </VStack>\n </div>\n </div>\n )}\n />\n );\n}"
18204
+ },
18205
+ {
18206
+ "name": "ContextMenu",
18207
+ "code": "() => {\n const contextMenuColumns: TableColumnDef<(typeof securityEvents)[number]>[] = [\n securityColumnHelper.accessor('objectName', {\n header: 'Object name',\n cell: ({ getValue }) => (\n <DropdownMenu>\n <DropdownMenuContextTrigger>\n <Text size='sm'>{getValue()}</Text>\n </DropdownMenuContextTrigger>\n <DropdownMenuContent>\n <DropdownMenuItem onSelect={() => alert('Copy')}>\n <DropdownMenuItemIcon>\n <Copy />\n </DropdownMenuItemIcon>\n <DropdownMenuItemText>Copy value</DropdownMenuItemText>\n </DropdownMenuItem>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuItem onSelect={() => alert('Show Only')}>\n <DropdownMenuItemIcon>\n <Filter />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Show only</DropdownMenuItemText>\n <DropdownMenuItemDescription>Filter to matching rows</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n\n <DropdownMenuItem onSelect={() => alert('Exclude')}>\n <DropdownMenuItemIcon>\n <FilterX />\n </DropdownMenuItemIcon>\n <DropdownMenuItemContent>\n <DropdownMenuItemText>Exclude</DropdownMenuItemText>\n <DropdownMenuItemDescription>Filter out matching rows</DropdownMenuItemDescription>\n </DropdownMenuItemContent>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n ),\n }),\n securityColumnHelper.accessor('parameter', {\n header: 'Parameters',\n cell: ({ getValue }) => (\n <DropdownMenu>\n <DropdownMenuContextTrigger>\n <InlineCodeSnippet code={getValue()} size='sm' copyable={false} />\n </DropdownMenuContextTrigger>\n <DropdownMenuContent>\n <DropdownMenuItem onSelect={() => alert('Execute')}>\n <DropdownMenuItemIcon>\n <Copy />\n </DropdownMenuItemIcon>\n <DropdownMenuItemText>Execute</DropdownMenuItemText>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n ),\n }),\n securityColumnHelper.accessor('status', {\n header: 'Status',\n cell: ({ getValue }) => {\n const status = getValue();\n return (\n <Badge\n variant='dotted'\n color={status === 'Blocked' ? 'red' : 'yellow'}\n type='secondary'\n size='medium'\n >\n {status}\n </Badge>\n );\n },\n }),\n securityColumnHelper.accessor('cweId', {\n header: 'Security info',\n cell: ({ getValue }) => (\n <Badge color='rose' type='secondary' size='medium' textVariant='code'>\n {getValue()}\n </Badge>\n ),\n }),\n ];\n\n return <Table data={securityEvents} columns={contextMenuColumns} getRowId={row => row.id} />;\n}"
18208
+ },
18209
+ {
18210
+ "name": "SettingsMenu",
18211
+ "code": "() => {\n const [columnVisibility, setColumnVisibility] = useState<TableVisibilityState>({});\n const [columnOrder, setColumnOrder] = useState<string[]>([]);\n\n return (\n <Table\n data={securityEvents}\n columns={securityColumns}\n getRowId={row => row.id}\n columnVisibility={columnVisibility}\n onColumnVisibilityChange={setColumnVisibility}\n columnOrder={columnOrder}\n onColumnOrderChange={setColumnOrder}\n defaultColumnVisibility={{}}\n defaultColumnOrder={securityColumnIds}\n />\n );\n}"
18212
+ },
18213
+ {
18214
+ "name": "Virtualization",
18215
+ "code": "() => {\n const largeData = useMemo(() => createLargeSecurityEvents(1000), []);\n\n return (\n <div className='h-500'>\n <Table data={largeData} columns={securityColumns} getRowId={row => row.id} virtualized />\n </div>\n );\n}"
18216
+ },
18217
+ {
18218
+ "name": "FullFeatured",
18219
+ "code": "() => {\n const data = useMemo(() => createLargeGroupedData(12, 50), []);\n\n const [sorting, setSorting] = useState<TableSortingState>([{ id: 'lastEdited', desc: true }]);\n const [rowSelection, setRowSelection] = useState<TableRowSelectionState>({});\n const [columnSizing, setColumnSizing] = useState<TableColumnSizingState>({});\n const [columnPinning, setColumnPinning] = useState<TableColumnPinningState>({\n left: ['objectName'],\n });\n const [columnOrder, setColumnOrder] = useState<string[]>([]);\n const [columnVisibility, setColumnVisibility] = useState<TableVisibilityState>({});\n const [expanded, setExpanded] = useState<TableExpandedState>({\n 'group-0': true,\n 'group-1': true,\n });\n\n return (\n <div className='h-500'>\n <Table<SecurityHeaderEntry>\n data={data}\n columns={fullFeaturedColumns}\n getRowId={row => row.id}\n getSubRows={row => row.children}\n // Grouping\n expanded={expanded}\n onExpandedChange={setExpanded}\n // Sorting\n sorting={sorting}\n onSortingChange={setSorting}\n // Row selection\n rowSelection={rowSelection}\n onRowSelectionChange={setRowSelection}\n // Column resizing\n columnSizing={columnSizing}\n onColumnSizingChange={setColumnSizing}\n // Column pinning\n columnPinning={columnPinning}\n onColumnPinningChange={setColumnPinning}\n // Column DnD ordering\n columnOrder={columnOrder}\n onColumnOrderChange={setColumnOrder}\n // Column visibility + settings\n columnVisibility={columnVisibility}\n onColumnVisibilityChange={setColumnVisibility}\n defaultColumnVisibility={{}}\n defaultColumnOrder={headerColumnIds}\n // Virtual scrolling\n virtualized\n >\n <TableActionBar>\n <Button variant='ghost' color='neutral-alt' onClick={() => alert('Copy clicked')}>\n <Copy /> Duplicate\n </Button>\n <Button color='brand' onClick={() => alert('Delete clicked')}>\n <Trash2 /> Delete\n </Button>\n </TableActionBar>\n </Table>\n </div>\n );\n}"
18220
+ }
18221
+ ]
18222
+ },
17667
18223
  {
17668
18224
  "name": "Tabs",
17669
18225
  "importPath": "@wallarm-org/design-system/Tabs",
@@ -18331,7 +18887,7 @@
18331
18887
  },
18332
18888
  {
18333
18889
  "name": "color",
18334
- "type": "{ primary: string; 'primary-alt': string; secondary: string; 'secondary-alt': string; danger: string; inherit: string; }",
18890
+ "type": "{ primary: string; 'primary-alt': string; secondary: string; 'secondary-alt': string; 'tertiary-alt': string; danger: string; inherit: string; }",
18335
18891
  "required": false,
18336
18892
  "defaultValue": "inherit"
18337
18893
  },
@@ -18403,6 +18959,7 @@
18403
18959
  "primary-alt",
18404
18960
  "secondary",
18405
18961
  "secondary-alt",
18962
+ "tertiary-alt",
18406
18963
  "danger",
18407
18964
  "inherit"
18408
18965
  ]
@@ -18445,7 +19002,7 @@
18445
19002
  },
18446
19003
  {
18447
19004
  "name": "Colors",
18448
- "code": "({ ...args }) => (\n <VStack align='start'>\n <Text {...args} color='primary'>\n Primary color text\n </Text>\n <Text {...args} color='primary-alt'>\n Primary alt color text\n </Text>\n <Text {...args} color='secondary'>\n Secondary color text\n </Text>\n <Text {...args} color='secondary-alt'>\n Secondary alt color text\n </Text>\n </VStack>\n)"
19005
+ "code": "({ ...args }) => (\n <VStack align='start'>\n <Text {...args} color='primary'>\n Primary color text\n </Text>\n <Text {...args} color='primary-alt'>\n Primary alt color text\n </Text>\n <Text {...args} color='secondary'>\n Secondary color text\n </Text>\n <Text {...args} color='secondary-alt'>\n Secondary alt color text\n </Text>\n <Text {...args} color='tertiary-alt'>\n Tertiary alt color text\n </Text>\n </VStack>\n)"
18449
19006
  },
18450
19007
  {
18451
19008
  "name": "AsChild",
@@ -19332,7 +19889,58 @@
19332
19889
  {
19333
19890
  "name": "Tooltip",
19334
19891
  "importPath": "@wallarm-org/design-system/Tooltip",
19335
- "props": [],
19892
+ "props": [
19893
+ {
19894
+ "name": "open",
19895
+ "type": "boolean | undefined",
19896
+ "required": false
19897
+ },
19898
+ {
19899
+ "name": "defaultOpen",
19900
+ "type": "boolean | undefined",
19901
+ "required": false
19902
+ },
19903
+ {
19904
+ "name": "openDelay",
19905
+ "type": "number | undefined",
19906
+ "required": false
19907
+ },
19908
+ {
19909
+ "name": "closeDelay",
19910
+ "type": "number | undefined",
19911
+ "required": false
19912
+ },
19913
+ {
19914
+ "name": "closeOnPointerDown",
19915
+ "type": "boolean | undefined",
19916
+ "required": false
19917
+ },
19918
+ {
19919
+ "name": "closeOnEscape",
19920
+ "type": "boolean | undefined",
19921
+ "required": false
19922
+ },
19923
+ {
19924
+ "name": "closeOnScroll",
19925
+ "type": "boolean | undefined",
19926
+ "required": false
19927
+ },
19928
+ {
19929
+ "name": "interactive",
19930
+ "type": "boolean | undefined",
19931
+ "required": false
19932
+ },
19933
+ {
19934
+ "name": "disabled",
19935
+ "type": "boolean | undefined",
19936
+ "required": false
19937
+ },
19938
+ {
19939
+ "name": "positioning",
19940
+ "type": "PositioningOptions | undefined",
19941
+ "required": false
19942
+ }
19943
+ ],
19336
19944
  "variants": [],
19337
19945
  "subComponents": [],
19338
19946
  "examples": [
@@ -21442,6 +22050,10 @@
21442
22050
  "name": "--color-component-code-snippet-bg",
21443
22051
  "value": "--alpha(var(--color-slate-500) / 6%)"
21444
22052
  },
22053
+ {
22054
+ "name": "--color-component-toast-bg",
22055
+ "value": "var(--color-slate-800)"
22056
+ },
21445
22057
  {
21446
22058
  "name": "--color-syntax-no-syntax",
21447
22059
  "value": "var(--color-slate-900)"
@@ -22064,6 +22676,10 @@
22064
22676
  "name": "--color-component-logo-wordmark-alt",
22065
22677
  "value": "var(--color-black)"
22066
22678
  },
22679
+ {
22680
+ "name": "--color-component-toast-bg",
22681
+ "value": "var(--color-slate-200)"
22682
+ },
22067
22683
  {
22068
22684
  "name": "--color-badge-on-solid",
22069
22685
  "value": "--alpha(var(--color-black) / 95%)"