@commercetools/nimbus-mcp 0.1.0 → 2.10.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 (450) hide show
  1. package/README.md +63 -14
  2. package/data/docs/route-manifest.json +10913 -0
  3. package/data/docs/routes/components-accessibility-visually-hidden.json +388 -0
  4. package/data/docs/routes/components-accessibility.json +34 -0
  5. package/data/docs/routes/components-buttons-button.json +715 -0
  6. package/data/docs/routes/components-buttons-icon-button.json +852 -0
  7. package/data/docs/routes/components-buttons-icon-toggle-button.json +594 -0
  8. package/data/docs/routes/components-buttons-split-button.json +670 -0
  9. package/data/docs/routes/components-buttons-toggle-button-group.json +722 -0
  10. package/data/docs/routes/components-buttons-toggle-button.json +689 -0
  11. package/data/docs/routes/components-buttons.json +36 -0
  12. package/data/docs/routes/components-data-display-badge.json +555 -0
  13. package/data/docs/routes/components-data-display-card.json +338 -0
  14. package/data/docs/routes/components-data-display-data-table.json +855 -0
  15. package/data/docs/routes/components-data-display-draggable-list.json +596 -0
  16. package/data/docs/routes/components-data-display-table.json +472 -0
  17. package/data/docs/routes/components-data-display-tag-group.json +535 -0
  18. package/data/docs/routes/components-data-display.json +34 -0
  19. package/data/docs/routes/components-feedback-alert.json +696 -0
  20. package/data/docs/routes/components-feedback-dialog.json +682 -0
  21. package/data/docs/routes/components-feedback-drawer.json +600 -0
  22. package/data/docs/routes/components-feedback-loading-spinner.json +415 -0
  23. package/data/docs/routes/components-feedback-progress-bar.json +661 -0
  24. package/data/docs/routes/components-feedback-toast.json +1040 -0
  25. package/data/docs/routes/components-feedback-tooltip.json +510 -0
  26. package/data/docs/routes/components-feedback.json +34 -0
  27. package/data/docs/routes/components-forms-field-errors.json +557 -0
  28. package/data/docs/routes/components-forms-form-field.json +848 -0
  29. package/data/docs/routes/components-forms-group.json +427 -0
  30. package/data/docs/routes/components-forms-localized-field.json +770 -0
  31. package/data/docs/routes/components-forms.json +37 -0
  32. package/data/docs/routes/components-inputs-calendar.json +611 -0
  33. package/data/docs/routes/components-inputs-checkbox.json +774 -0
  34. package/data/docs/routes/components-inputs-combo-box.json +761 -0
  35. package/data/docs/routes/components-inputs-date-input.json +628 -0
  36. package/data/docs/routes/components-inputs-date-picker.json +709 -0
  37. package/data/docs/routes/components-inputs-date-range-picker.json +599 -0
  38. package/data/docs/routes/components-inputs-money-input.json +721 -0
  39. package/data/docs/routes/components-inputs-multiline-text-input.json +611 -0
  40. package/data/docs/routes/components-inputs-number-input.json +647 -0
  41. package/data/docs/routes/components-inputs-password-input.json +576 -0
  42. package/data/docs/routes/components-inputs-radio-input.json +583 -0
  43. package/data/docs/routes/components-inputs-range-calendar.json +607 -0
  44. package/data/docs/routes/components-inputs-rich-text-input.json +599 -0
  45. package/data/docs/routes/components-inputs-scoped-search-input.json +570 -0
  46. package/data/docs/routes/components-inputs-search-input.json +588 -0
  47. package/data/docs/routes/components-inputs-select-input.json +960 -0
  48. package/data/docs/routes/components-inputs-switch.json +720 -0
  49. package/data/docs/routes/components-inputs-text-input.json +566 -0
  50. package/data/docs/routes/components-inputs-time-input.json +775 -0
  51. package/data/docs/routes/components-inputs.json +34 -0
  52. package/data/docs/routes/components-layout-box.json +501 -0
  53. package/data/docs/routes/components-layout-defaultpage.json +748 -0
  54. package/data/docs/routes/components-layout-flex.json +587 -0
  55. package/data/docs/routes/components-layout-grid.json +393 -0
  56. package/data/docs/routes/components-layout-modalpage.json +716 -0
  57. package/data/docs/routes/components-layout-pagecontent.json +673 -0
  58. package/data/docs/routes/components-layout-separator.json +461 -0
  59. package/data/docs/routes/components-layout-simple-grid.json +519 -0
  60. package/data/docs/routes/components-layout-spacer.json +573 -0
  61. package/data/docs/routes/components-layout-stack.json +481 -0
  62. package/data/docs/routes/components-layout.json +34 -0
  63. package/data/docs/routes/components-media-avatar.json +427 -0
  64. package/data/docs/routes/components-media-icon.json +663 -0
  65. package/data/docs/routes/components-media-image.json +511 -0
  66. package/data/docs/routes/components-media-inline-svg.json +586 -0
  67. package/data/docs/routes/components-media.json +34 -0
  68. package/data/docs/routes/components-navigation-accordion.json +643 -0
  69. package/data/docs/routes/components-navigation-collapsible-motion.json +628 -0
  70. package/data/docs/routes/components-navigation-link.json +554 -0
  71. package/data/docs/routes/components-navigation-menu.json +546 -0
  72. package/data/docs/routes/components-navigation-pagination.json +502 -0
  73. package/data/docs/routes/components-navigation-steps.json +629 -0
  74. package/data/docs/routes/components-navigation-tabnav.json +546 -0
  75. package/data/docs/routes/components-navigation-tabs.json +635 -0
  76. package/data/docs/routes/components-navigation-toolbar.json +549 -0
  77. package/data/docs/routes/components-navigation.json +34 -0
  78. package/data/docs/routes/components-typography-code.json +39 -0
  79. package/data/docs/routes/components-typography-heading.json +402 -0
  80. package/data/docs/routes/components-typography-kbd.json +399 -0
  81. package/data/docs/routes/components-typography-list.json +593 -0
  82. package/data/docs/routes/components-typography-text.json +444 -0
  83. package/data/docs/routes/components-typography.json +34 -0
  84. package/data/docs/routes/components-utilities-nimbus-i18n-provider.json +295 -0
  85. package/data/docs/routes/components-utilities-nimbus-provider.json +663 -0
  86. package/data/docs/routes/components-utilities.json +34 -0
  87. package/data/docs/routes/components.json +33 -0
  88. package/data/docs/routes/home-contribute-adrs-adr0001-consumer-component-apis.json +314 -0
  89. package/data/docs/routes/home-contribute-adrs-adr0002-compound-component-extraction.json +160 -0
  90. package/data/docs/routes/home-contribute-adrs-adr0003-component-lifecycle-states.json +460 -0
  91. package/data/docs/routes/home-contribute-adrs.json +205 -0
  92. package/data/docs/routes/home-contribute-development-setup.json +213 -0
  93. package/data/docs/routes/home-contribute-stats.json +36 -0
  94. package/data/docs/routes/home-contribute.json +36 -0
  95. package/data/docs/routes/home-design-tokens-aspect-ratios.json +36 -0
  96. package/data/docs/routes/home-design-tokens-borders.json +35 -0
  97. package/data/docs/routes/home-design-tokens-colors.json +157 -0
  98. package/data/docs/routes/home-design-tokens-other-animations.json +119 -0
  99. package/data/docs/routes/home-design-tokens-other-blurs.json +36 -0
  100. package/data/docs/routes/home-design-tokens-other-breakpoints.json +61 -0
  101. package/data/docs/routes/home-design-tokens-other-cursors.json +36 -0
  102. package/data/docs/routes/home-design-tokens-other-z-indices.json +39 -0
  103. package/data/docs/routes/home-design-tokens-other.json +35 -0
  104. package/data/docs/routes/home-design-tokens-radii.json +59 -0
  105. package/data/docs/routes/home-design-tokens-shadows.json +57 -0
  106. package/data/docs/routes/home-design-tokens-sizes.json +137 -0
  107. package/data/docs/routes/home-design-tokens-spacing.json +36 -0
  108. package/data/docs/routes/home-design-tokens-typography.json +184 -0
  109. package/data/docs/routes/home-design-tokens.json +34 -0
  110. package/data/docs/routes/home-getting-started-core-concepts.json +301 -0
  111. package/data/docs/routes/home-getting-started-installation.json +621 -0
  112. package/data/docs/routes/home-getting-started-mcp-server-overview.json +139 -0
  113. package/data/docs/routes/home-getting-started-mcp-server-setup.json +316 -0
  114. package/data/docs/routes/home-getting-started-release-process.json +294 -0
  115. package/data/docs/routes/home-getting-started-testing-setup.json +296 -0
  116. package/data/docs/routes/home-playground-markdown.json +638 -0
  117. package/data/docs/routes/home-playground-toc.json +169 -0
  118. package/data/docs/routes/home-playground.json +34 -0
  119. package/data/docs/routes/home-style-props-background.json +236 -0
  120. package/data/docs/routes/home-style-props-border.json +310 -0
  121. package/data/docs/routes/home-style-props-display.json +120 -0
  122. package/data/docs/routes/home-style-props-effects.json +116 -0
  123. package/data/docs/routes/home-style-props-filters.json +396 -0
  124. package/data/docs/routes/home-style-props-flex-and-grid.json +496 -0
  125. package/data/docs/routes/home-style-props-interactivity.json +356 -0
  126. package/data/docs/routes/home-style-props-layout.json +422 -0
  127. package/data/docs/routes/home-style-props-list.json +116 -0
  128. package/data/docs/routes/home-style-props-sizing.json +244 -0
  129. package/data/docs/routes/home-style-props-spacing.json +228 -0
  130. package/data/docs/routes/home-style-props-svg.json +96 -0
  131. package/data/docs/routes/home-style-props-tables.json +116 -0
  132. package/data/docs/routes/home-style-props-transforms.json +216 -0
  133. package/data/docs/routes/home-style-props-transitions.json +216 -0
  134. package/data/docs/routes/home-style-props-typography.json +536 -0
  135. package/data/docs/routes/home-style-props.json +33 -0
  136. package/data/docs/routes/home.json +32 -0
  137. package/data/docs/routes/hooks-usecopytoclipboard.json +76 -0
  138. package/data/docs/routes/hooks-usehotkeys.json +117 -0
  139. package/data/docs/routes/hooks.json +33 -0
  140. package/data/docs/routes/icons.json +32 -0
  141. package/data/docs/routes/patterns-fields-date-range-picker-field.json +393 -0
  142. package/data/docs/routes/patterns-fields-money-input-field.json +415 -0
  143. package/data/docs/routes/patterns-fields-multiline-text-input-field.json +404 -0
  144. package/data/docs/routes/patterns-fields-number-input-field.json +470 -0
  145. package/data/docs/routes/patterns-fields-password-input-field.json +319 -0
  146. package/data/docs/routes/patterns-fields-search-input-field.json +382 -0
  147. package/data/docs/routes/patterns-fields-text-input-field.json +404 -0
  148. package/data/docs/routes/patterns-fields.json +78 -0
  149. package/data/docs/routes/patterns.json +34 -0
  150. package/data/docs/search-index.json +1 -0
  151. package/data/docs/types/Accordion.json +12 -0
  152. package/data/docs/types/AccordionContent.json +286 -0
  153. package/data/docs/types/AccordionHeader.json +891 -0
  154. package/data/docs/types/AccordionHeaderRightContent.json +27 -0
  155. package/data/docs/types/AccordionItem.json +242 -0
  156. package/data/docs/types/AccordionRoot.json +162 -0
  157. package/data/docs/types/Alert.json +12 -0
  158. package/data/docs/types/AlertActions.json +11 -0
  159. package/data/docs/types/AlertDescription.json +118 -0
  160. package/data/docs/types/AlertDismissButton.json +937 -0
  161. package/data/docs/types/AlertRoot.json +42 -0
  162. package/data/docs/types/AlertTitle.json +118 -0
  163. package/data/docs/types/Avatar.json +125 -0
  164. package/data/docs/types/Badge.json +64 -0
  165. package/data/docs/types/Body.json +67 -0
  166. package/data/docs/types/Box.json +85 -0
  167. package/data/docs/types/Button.json +1015 -0
  168. package/data/docs/types/Calendar.json +565 -0
  169. package/data/docs/types/Caption.json +67 -0
  170. package/data/docs/types/Card.json +12 -0
  171. package/data/docs/types/CardContent.json +27 -0
  172. package/data/docs/types/CardHeader.json +27 -0
  173. package/data/docs/types/CardRoot.json +106 -0
  174. package/data/docs/types/Cell.json +227 -0
  175. package/data/docs/types/Checkbox.json +897 -0
  176. package/data/docs/types/Code.json +112 -0
  177. package/data/docs/types/CollapsibleMotionContent.json +35 -0
  178. package/data/docs/types/CollapsibleMotionRoot.json +99 -0
  179. package/data/docs/types/CollapsibleMotionTrigger.json +71 -0
  180. package/data/docs/types/Column.json +101 -0
  181. package/data/docs/types/ColumnGroup.json +101 -0
  182. package/data/docs/types/ColumnHeader.json +193 -0
  183. package/data/docs/types/ComboBoxListBox.json +751 -0
  184. package/data/docs/types/ComboBoxOption.json +672 -0
  185. package/data/docs/types/ComboBoxPopover.json +786 -0
  186. package/data/docs/types/ComboBoxRoot.json +747 -0
  187. package/data/docs/types/ComboBoxSection.json +277 -0
  188. package/data/docs/types/ComboBoxTrigger.json +70 -0
  189. package/data/docs/types/Content.json +33 -0
  190. package/data/docs/types/DataTable.json +596 -0
  191. package/data/docs/types/DataTableBody.json +223 -0
  192. package/data/docs/types/DataTableFooter.json +27 -0
  193. package/data/docs/types/DataTableHeader.json +269 -0
  194. package/data/docs/types/DataTableManager.json +11 -0
  195. package/data/docs/types/DataTableRoot.json +590 -0
  196. package/data/docs/types/DataTableTable.json +271 -0
  197. package/data/docs/types/DateInput.json +792 -0
  198. package/data/docs/types/DatePicker.json +700 -0
  199. package/data/docs/types/DateRangePicker.json +936 -0
  200. package/data/docs/types/DateRangePickerField.json +1047 -0
  201. package/data/docs/types/DefaultPage.json +12 -0
  202. package/data/docs/types/DefaultPageActions.json +27 -0
  203. package/data/docs/types/DefaultPageBackLink.json +213 -0
  204. package/data/docs/types/DefaultPageContent.json +27 -0
  205. package/data/docs/types/DefaultPageFooter.json +27 -0
  206. package/data/docs/types/DefaultPageHeader.json +27 -0
  207. package/data/docs/types/DefaultPageRoot.json +106 -0
  208. package/data/docs/types/DefaultPageSubtitle.json +27 -0
  209. package/data/docs/types/DefaultPageTabNav.json +28 -0
  210. package/data/docs/types/DefaultPageTitle.json +27 -0
  211. package/data/docs/types/DialogBody.json +27 -0
  212. package/data/docs/types/DialogCloseTrigger.json +939 -0
  213. package/data/docs/types/DialogContent.json +27 -0
  214. package/data/docs/types/DialogFooter.json +27 -0
  215. package/data/docs/types/DialogHeader.json +27 -0
  216. package/data/docs/types/DialogRoot.json +138 -0
  217. package/data/docs/types/DialogTitle.json +27 -0
  218. package/data/docs/types/DialogTrigger.json +80 -0
  219. package/data/docs/types/DraggableList.json +12 -0
  220. package/data/docs/types/DraggableListField.json +894 -0
  221. package/data/docs/types/DraggableListItem.json +574 -0
  222. package/data/docs/types/DraggableListRoot.json +745 -0
  223. package/data/docs/types/Drawer.json +12 -0
  224. package/data/docs/types/DrawerBody.json +27 -0
  225. package/data/docs/types/DrawerCloseTrigger.json +939 -0
  226. package/data/docs/types/DrawerContent.json +27 -0
  227. package/data/docs/types/DrawerFooter.json +27 -0
  228. package/data/docs/types/DrawerHeader.json +27 -0
  229. package/data/docs/types/DrawerRoot.json +142 -0
  230. package/data/docs/types/DrawerTitle.json +27 -0
  231. package/data/docs/types/DrawerTrigger.json +80 -0
  232. package/data/docs/types/FieldErrors.getBuiltInMessage.json +11 -0
  233. package/data/docs/types/FieldErrors.getCustomMessage.json +9 -0
  234. package/data/docs/types/FieldErrors.json +109 -0
  235. package/data/docs/types/Flex.json +238 -0
  236. package/data/docs/types/Footer.json +67 -0
  237. package/data/docs/types/FormFieldDescription.json +11 -0
  238. package/data/docs/types/FormFieldError.json +11 -0
  239. package/data/docs/types/FormFieldInfoBox.json +27 -0
  240. package/data/docs/types/FormFieldInput.json +11 -0
  241. package/data/docs/types/FormFieldLabel.json +11 -0
  242. package/data/docs/types/FormFieldRoot.json +148 -0
  243. package/data/docs/types/Grid.json +253 -0
  244. package/data/docs/types/GridProps.json +11 -0
  245. package/data/docs/types/Group.json +143 -0
  246. package/data/docs/types/Header.json +67 -0
  247. package/data/docs/types/Heading.json +109 -0
  248. package/data/docs/types/Icon.json +112 -0
  249. package/data/docs/types/IconButton.json +1019 -0
  250. package/data/docs/types/IconToggleButton.json +787 -0
  251. package/data/docs/types/Image.json +373 -0
  252. package/data/docs/types/Indicator.json +67 -0
  253. package/data/docs/types/InlineSvg.json +98 -0
  254. package/data/docs/types/Item.json +67 -0
  255. package/data/docs/types/Kbd.json +118 -0
  256. package/data/docs/types/Link.json +380 -0
  257. package/data/docs/types/List.json +12 -0
  258. package/data/docs/types/ListIndicator.json +70 -0
  259. package/data/docs/types/ListItem.json +70 -0
  260. package/data/docs/types/ListRoot.json +124 -0
  261. package/data/docs/types/LoadingSpinner.json +87 -0
  262. package/data/docs/types/LocalizedField.json +460 -0
  263. package/data/docs/types/LocalizedStringFormatter.json +9 -0
  264. package/data/docs/types/MakeElementFocusable.json +196 -0
  265. package/data/docs/types/MenuContent.json +111 -0
  266. package/data/docs/types/MenuItem.json +671 -0
  267. package/data/docs/types/MenuRoot.json +670 -0
  268. package/data/docs/types/MenuSection.json +364 -0
  269. package/data/docs/types/MenuSubmenu.json +111 -0
  270. package/data/docs/types/MenuSubmenuTrigger.json +67 -0
  271. package/data/docs/types/MenuTrigger.json +906 -0
  272. package/data/docs/types/ModalPage.json +12 -0
  273. package/data/docs/types/ModalPageActions.json +27 -0
  274. package/data/docs/types/ModalPageContent.json +27 -0
  275. package/data/docs/types/ModalPageFooter.json +27 -0
  276. package/data/docs/types/ModalPageHeader.json +27 -0
  277. package/data/docs/types/ModalPageRoot.json +87 -0
  278. package/data/docs/types/ModalPageSubtitle.json +27 -0
  279. package/data/docs/types/ModalPageTabNav.json +28 -0
  280. package/data/docs/types/ModalPageTitle.json +27 -0
  281. package/data/docs/types/ModalPageTopBar.json +57 -0
  282. package/data/docs/types/MoneyInput.isEmpty.json +40 -0
  283. package/data/docs/types/MoneyInput.json +282 -0
  284. package/data/docs/types/MoneyInputField.json +379 -0
  285. package/data/docs/types/MoneyInputFieldProps.json +9 -0
  286. package/data/docs/types/MultilineTextInput.json +1194 -0
  287. package/data/docs/types/MultilineTextInputField.json +1269 -0
  288. package/data/docs/types/MultilineTextInputFieldProps.json +9 -0
  289. package/data/docs/types/NimbusI18nProvider.json +42 -0
  290. package/data/docs/types/NimbusI18nProviderProps.json +9 -0
  291. package/data/docs/types/NimbusProvider.json +270 -0
  292. package/data/docs/types/NumberInput.json +952 -0
  293. package/data/docs/types/NumberInputField.json +1004 -0
  294. package/data/docs/types/NumberInputFieldProps.json +9 -0
  295. package/data/docs/types/PageContent.json +11 -0
  296. package/data/docs/types/PageContentColumn.json +99 -0
  297. package/data/docs/types/PageContentRoot.json +114 -0
  298. package/data/docs/types/Pagination.json +159 -0
  299. package/data/docs/types/PasswordInput.json +1120 -0
  300. package/data/docs/types/PasswordInputField.json +1216 -0
  301. package/data/docs/types/PasswordInputFieldProps.json +9 -0
  302. package/data/docs/types/ProgressBar.json +280 -0
  303. package/data/docs/types/RadioInputOption.json +550 -0
  304. package/data/docs/types/RadioInputRoot.json +514 -0
  305. package/data/docs/types/RangeCalendar.json +618 -0
  306. package/data/docs/types/RichTextInput.json +134 -0
  307. package/data/docs/types/Root.json +122 -0
  308. package/data/docs/types/Row.json +67 -0
  309. package/data/docs/types/ScopedSearchInput.isEmpty.json +40 -0
  310. package/data/docs/types/ScopedSearchInput.json +253 -0
  311. package/data/docs/types/ScrollArea.json +82 -0
  312. package/data/docs/types/SearchInput.json +1165 -0
  313. package/data/docs/types/SearchInputField.json +1240 -0
  314. package/data/docs/types/Select.json +12 -0
  315. package/data/docs/types/SelectOption.json +572 -0
  316. package/data/docs/types/SelectOptionGroup.json +215 -0
  317. package/data/docs/types/SelectOptions.json +693 -0
  318. package/data/docs/types/SelectRoot.json +926 -0
  319. package/data/docs/types/Separator.json +65 -0
  320. package/data/docs/types/SimpleGrid.json +291 -0
  321. package/data/docs/types/Spacer.json +27 -0
  322. package/data/docs/types/SpacerProps.json +9 -0
  323. package/data/docs/types/SplitButton.json +203 -0
  324. package/data/docs/types/Stack.json +144 -0
  325. package/data/docs/types/Steps.json +12 -0
  326. package/data/docs/types/StepsChangeDetails.json +9 -0
  327. package/data/docs/types/StepsCompletedContent.json +28 -0
  328. package/data/docs/types/StepsCompletedContentProps.json +9 -0
  329. package/data/docs/types/StepsContent.json +43 -0
  330. package/data/docs/types/StepsContentProps.json +9 -0
  331. package/data/docs/types/StepsDescription.json +28 -0
  332. package/data/docs/types/StepsDescriptionProps.json +9 -0
  333. package/data/docs/types/StepsIndicator.json +28 -0
  334. package/data/docs/types/StepsIndicatorProps.json +9 -0
  335. package/data/docs/types/StepsItem.json +43 -0
  336. package/data/docs/types/StepsItemProps.json +9 -0
  337. package/data/docs/types/StepsList.json +28 -0
  338. package/data/docs/types/StepsListProps.json +9 -0
  339. package/data/docs/types/StepsNextTrigger.json +62 -0
  340. package/data/docs/types/StepsNextTriggerProps.json +9 -0
  341. package/data/docs/types/StepsNumber.json +28 -0
  342. package/data/docs/types/StepsNumberProps.json +9 -0
  343. package/data/docs/types/StepsPrevTrigger.json +62 -0
  344. package/data/docs/types/StepsPrevTriggerProps.json +9 -0
  345. package/data/docs/types/StepsRoot.json +183 -0
  346. package/data/docs/types/StepsRootProps.json +11 -0
  347. package/data/docs/types/StepsSeparator.json +28 -0
  348. package/data/docs/types/StepsSeparatorProps.json +9 -0
  349. package/data/docs/types/StepsStatus.json +57 -0
  350. package/data/docs/types/StepsStatusProps.json +9 -0
  351. package/data/docs/types/StepsTitle.json +28 -0
  352. package/data/docs/types/StepsTitleProps.json +9 -0
  353. package/data/docs/types/StepsTrigger.json +47 -0
  354. package/data/docs/types/StepsTriggerProps.json +9 -0
  355. package/data/docs/types/Switch.json +371 -0
  356. package/data/docs/types/TabListProps.json +9 -0
  357. package/data/docs/types/TabNav.json +12 -0
  358. package/data/docs/types/TabNavItem.json +300 -0
  359. package/data/docs/types/TabNavItemProps.json +9 -0
  360. package/data/docs/types/TabNavProps.json +9 -0
  361. package/data/docs/types/TabNavRoot.json +80 -0
  362. package/data/docs/types/TabPanelProps.json +9 -0
  363. package/data/docs/types/TabPanelsProps.json +9 -0
  364. package/data/docs/types/TabProps.json +9 -0
  365. package/data/docs/types/Table.json +9 -0
  366. package/data/docs/types/TableBody.json +67 -0
  367. package/data/docs/types/TableBodyProps.json +9 -0
  368. package/data/docs/types/TableCaption.json +67 -0
  369. package/data/docs/types/TableCaptionProps.json +9 -0
  370. package/data/docs/types/TableCell.json +227 -0
  371. package/data/docs/types/TableCellProps.json +9 -0
  372. package/data/docs/types/TableColumn.json +101 -0
  373. package/data/docs/types/TableColumnGroup.json +101 -0
  374. package/data/docs/types/TableColumnGroupProps.json +9 -0
  375. package/data/docs/types/TableColumnHeader.json +193 -0
  376. package/data/docs/types/TableColumnHeaderProps.json +9 -0
  377. package/data/docs/types/TableColumnProps.json +9 -0
  378. package/data/docs/types/TableFooter.json +67 -0
  379. package/data/docs/types/TableFooterProps.json +9 -0
  380. package/data/docs/types/TableHeader.json +67 -0
  381. package/data/docs/types/TableHeaderProps.json +9 -0
  382. package/data/docs/types/TableRoot.json +365 -0
  383. package/data/docs/types/TableRootProps.json +12 -0
  384. package/data/docs/types/TableRow.json +67 -0
  385. package/data/docs/types/TableRowProps.json +9 -0
  386. package/data/docs/types/TableScrollArea.json +82 -0
  387. package/data/docs/types/TableScrollAreaProps.json +9 -0
  388. package/data/docs/types/Tabs.json +12 -0
  389. package/data/docs/types/TabsList.json +110 -0
  390. package/data/docs/types/TabsPanel.json +112 -0
  391. package/data/docs/types/TabsPanels.json +108 -0
  392. package/data/docs/types/TabsRoot.json +211 -0
  393. package/data/docs/types/TabsTab.json +174 -0
  394. package/data/docs/types/TagGroup.json +12 -0
  395. package/data/docs/types/TagGroupRoot.json +306 -0
  396. package/data/docs/types/TagGroupTag.json +595 -0
  397. package/data/docs/types/TagGroupTagList.json +166 -0
  398. package/data/docs/types/Text.json +119 -0
  399. package/data/docs/types/TextInput.json +1156 -0
  400. package/data/docs/types/TextInputField.json +1263 -0
  401. package/data/docs/types/TimeInput.json +752 -0
  402. package/data/docs/types/ToastAction.json +9 -0
  403. package/data/docs/types/ToastManagerApi.json +9 -0
  404. package/data/docs/types/ToastOptions.json +9 -0
  405. package/data/docs/types/ToastOutlet.json +12 -0
  406. package/data/docs/types/ToastPlacement.json +9 -0
  407. package/data/docs/types/ToastPromiseOptions.json +9 -0
  408. package/data/docs/types/ToastType.json +9 -0
  409. package/data/docs/types/ToastVariant.json +9 -0
  410. package/data/docs/types/ToggleButton.json +789 -0
  411. package/data/docs/types/ToggleButtonGroup.json +9 -0
  412. package/data/docs/types/ToggleButtonGroupButton.json +331 -0
  413. package/data/docs/types/ToggleButtonGroupRoot.json +269 -0
  414. package/data/docs/types/Toolbar.json +176 -0
  415. package/data/docs/types/Tooltip.json +12 -0
  416. package/data/docs/types/TooltipContent.json +372 -0
  417. package/data/docs/types/TooltipRoot.json +179 -0
  418. package/data/docs/types/Trigger.json +69 -0
  419. package/data/docs/types/VisuallyHidden.json +93 -0
  420. package/data/docs/types/__object.json +12 -0
  421. package/data/docs/types/filters.json +11 -0
  422. package/data/docs/types/manifest.json +278 -0
  423. package/data/docs/types/toast.json +234 -0
  424. package/data/docs/types/useColorMode.json +13 -0
  425. package/data/docs/types/useColorModeValue.json +13 -0
  426. package/data/docs/types/useColorScheme.json +12 -0
  427. package/data/docs/types/useLocalizedStringFormatter.json +14 -0
  428. package/data/icons.json +21940 -0
  429. package/data/tokens.json +40061 -0
  430. package/dist/index.js +2516 -17
  431. package/package.json +25 -6
  432. package/dist/data-loader.d.ts +0 -102
  433. package/dist/data-loader.js +0 -104
  434. package/dist/index.d.ts +0 -13
  435. package/dist/server.d.ts +0 -9
  436. package/dist/server.js +0 -22
  437. package/dist/server.spec.d.ts +0 -1
  438. package/dist/server.spec.js +0 -69
  439. package/dist/tools/list-components.d.ts +0 -9
  440. package/dist/tools/list-components.js +0 -42
  441. package/dist/types.d.ts +0 -28
  442. package/dist/types.js +0 -4
  443. package/src/data-loader.ts +0 -226
  444. package/src/index.ts +0 -29
  445. package/src/server.spec.ts +0 -86
  446. package/src/server.ts +0 -28
  447. package/src/tools/list-components.ts +0 -49
  448. package/src/types.ts +0 -31
  449. package/tsconfig.json +0 -14
  450. package/vitest.config.ts +0 -9
@@ -0,0 +1,573 @@
1
+ {
2
+ "meta": {
3
+ "id": "Components-Spacer",
4
+ "title": "Spacer",
5
+ "exportName": "Spacer",
6
+ "description": "A simple layout component that automatically fills available space in flex layouts using flexGrow 1.",
7
+ "lifecycleState": "Stable",
8
+ "order": 999,
9
+ "repoPath": "packages/nimbus/src/components/spacer/spacer.mdx",
10
+ "menu": [
11
+ "Components",
12
+ "Layout",
13
+ "Spacer"
14
+ ],
15
+ "route": "components/layout/spacer",
16
+ "tags": [
17
+ "component",
18
+ "layout",
19
+ "flex"
20
+ ],
21
+ "toc": [
22
+ {
23
+ "value": "Overview",
24
+ "href": "#overview",
25
+ "depth": 2,
26
+ "numbering": [
27
+ 1,
28
+ 1
29
+ ],
30
+ "parent": "root"
31
+ },
32
+ {
33
+ "value": "Key features",
34
+ "href": "#key-features",
35
+ "depth": 3,
36
+ "numbering": [
37
+ 1,
38
+ 1,
39
+ 1
40
+ ],
41
+ "parent": "root"
42
+ },
43
+ {
44
+ "value": "Variables",
45
+ "href": "#variables",
46
+ "depth": 2,
47
+ "numbering": [
48
+ 1,
49
+ 2
50
+ ],
51
+ "parent": "root"
52
+ },
53
+ {
54
+ "value": "Basic Usage",
55
+ "href": "#basic-usage",
56
+ "depth": 3,
57
+ "numbering": [
58
+ 1,
59
+ 2,
60
+ 1
61
+ ],
62
+ "parent": "root"
63
+ },
64
+ {
65
+ "value": "Navigation Layout",
66
+ "href": "#navigation-layout",
67
+ "depth": 3,
68
+ "numbering": [
69
+ 1,
70
+ 2,
71
+ 2
72
+ ],
73
+ "parent": "root"
74
+ },
75
+ {
76
+ "value": "Multiple Spacers",
77
+ "href": "#multiple-spacers",
78
+ "depth": 3,
79
+ "numbering": [
80
+ 1,
81
+ 2,
82
+ 3
83
+ ],
84
+ "parent": "root"
85
+ },
86
+ {
87
+ "value": "Vertical Layout",
88
+ "href": "#vertical-layout",
89
+ "depth": 3,
90
+ "numbering": [
91
+ 1,
92
+ 2,
93
+ 4
94
+ ],
95
+ "parent": "root"
96
+ },
97
+ {
98
+ "value": "With Custom Styling",
99
+ "href": "#with-custom-styling",
100
+ "depth": 3,
101
+ "numbering": [
102
+ 1,
103
+ 2,
104
+ 5
105
+ ],
106
+ "parent": "root"
107
+ }
108
+ ],
109
+ "layout": "app-frame",
110
+ "tabs": [
111
+ {
112
+ "key": "overview",
113
+ "title": "Overview",
114
+ "order": 0
115
+ },
116
+ {
117
+ "key": "guidelines",
118
+ "title": "Guidelines",
119
+ "order": 2
120
+ },
121
+ {
122
+ "key": "dev",
123
+ "title": "Implementation",
124
+ "order": 3
125
+ },
126
+ {
127
+ "key": "a11y",
128
+ "title": "Accessibility",
129
+ "order": 4
130
+ }
131
+ ]
132
+ },
133
+ "mdx": "\n## Overview\n\nSpacer is a utility component designed to create flexible spacing between\nelements in flex layouts. It automatically expands to fill any remaining space,\nmaking it perfect for creating navigation bars, toolbars, and other layouts\nwhere you need to push elements apart.\n\n### Key features\n\n- **Automatic Space Filling**: Uses `flexGrow: 1` to occupy all available space\n- **Works in Any Direction**: Supports both horizontal and vertical flex layouts\n- **Flexible Styling**: Can accept any Chakra UI Box props for custom styling\n- **Zero Configuration**: Works out of the box with no required props\n\n## Variables\n\nGet familiar with the features.\n\n### Basic Usage\n\nThe most common use case is pushing elements to opposite ends of a container.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"solid\">Left</Button>\n <Spacer />\n <Button variant=\"outline\">Right</Button>\n </Stack>\n)\n```\n\n### Navigation Layout\n\nCreate navigation-style layouts with multiple element groups.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"ghost\">Home</Button>\n <Button variant=\"ghost\">About</Button>\n <Button variant=\"ghost\">Services</Button>\n <Spacer />\n <Button variant=\"ghost\">Profile</Button>\n <Button variant=\"solid\">Sign In</Button>\n </Stack>\n)\n```\n\n### Multiple Spacers\n\nUse multiple spacers to distribute space evenly between elements.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"outline\">First</Button>\n <Spacer />\n <Button variant=\"outline\">Second</Button>\n <Spacer />\n <Button variant=\"outline\">Third</Button>\n </Stack>\n)\n```\n\n### Vertical Layout\n\nSpacer works in vertical layouts too.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"column\" height=\"400px\" width=\"200px\" borderWidth=\"1px\" borderRadius=\"200\">\n <Box padding=\"400\" backgroundColor=\"neutral.3\" borderRadius=\"200 200 0 0\">\n Header\n </Box>\n <Spacer />\n <Box padding=\"400\" backgroundColor=\"neutral.3\" borderRadius=\"0 0 200 200\">\n Footer\n </Box>\n </Stack>\n)\n```\n\n### With Custom Styling\n\nSpacer accepts all Chakra UI Box props for custom styling.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"solid\">Start</Button>\n <Spacer backgroundColor=\"primary.3\" borderRadius=\"200\" minHeight=\"40px\" />\n <Button variant=\"solid\">End</Button>\n </Stack>\n)\n```\n",
134
+ "views": {
135
+ "overview": {
136
+ "mdx": "\n## Overview\n\nSpacer is a utility component designed to create flexible spacing between\nelements in flex layouts. It automatically expands to fill any remaining space,\nmaking it perfect for creating navigation bars, toolbars, and other layouts\nwhere you need to push elements apart.\n\n### Key features\n\n- **Automatic Space Filling**: Uses `flexGrow: 1` to occupy all available space\n- **Works in Any Direction**: Supports both horizontal and vertical flex layouts\n- **Flexible Styling**: Can accept any Chakra UI Box props for custom styling\n- **Zero Configuration**: Works out of the box with no required props\n\n## Variables\n\nGet familiar with the features.\n\n### Basic Usage\n\nThe most common use case is pushing elements to opposite ends of a container.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"solid\">Left</Button>\n <Spacer />\n <Button variant=\"outline\">Right</Button>\n </Stack>\n)\n```\n\n### Navigation Layout\n\nCreate navigation-style layouts with multiple element groups.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"ghost\">Home</Button>\n <Button variant=\"ghost\">About</Button>\n <Button variant=\"ghost\">Services</Button>\n <Spacer />\n <Button variant=\"ghost\">Profile</Button>\n <Button variant=\"solid\">Sign In</Button>\n </Stack>\n)\n```\n\n### Multiple Spacers\n\nUse multiple spacers to distribute space evenly between elements.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"outline\">First</Button>\n <Spacer />\n <Button variant=\"outline\">Second</Button>\n <Spacer />\n <Button variant=\"outline\">Third</Button>\n </Stack>\n)\n```\n\n### Vertical Layout\n\nSpacer works in vertical layouts too.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"column\" height=\"400px\" width=\"200px\" borderWidth=\"1px\" borderRadius=\"200\">\n <Box padding=\"400\" backgroundColor=\"neutral.3\" borderRadius=\"200 200 0 0\">\n Header\n </Box>\n <Spacer />\n <Box padding=\"400\" backgroundColor=\"neutral.3\" borderRadius=\"0 0 200 200\">\n Footer\n </Box>\n </Stack>\n)\n```\n\n### With Custom Styling\n\nSpacer accepts all Chakra UI Box props for custom styling.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"solid\">Start</Button>\n <Spacer backgroundColor=\"primary.3\" borderRadius=\"200\" minHeight=\"40px\" />\n <Button variant=\"solid\">End</Button>\n </Stack>\n)\n```\n",
137
+ "toc": [
138
+ {
139
+ "value": "Overview",
140
+ "href": "#overview",
141
+ "depth": 2,
142
+ "numbering": [
143
+ 1,
144
+ 1
145
+ ],
146
+ "parent": "root"
147
+ },
148
+ {
149
+ "value": "Key features",
150
+ "href": "#key-features",
151
+ "depth": 3,
152
+ "numbering": [
153
+ 1,
154
+ 1,
155
+ 1
156
+ ],
157
+ "parent": "root"
158
+ },
159
+ {
160
+ "value": "Variables",
161
+ "href": "#variables",
162
+ "depth": 2,
163
+ "numbering": [
164
+ 1,
165
+ 2
166
+ ],
167
+ "parent": "root"
168
+ },
169
+ {
170
+ "value": "Basic Usage",
171
+ "href": "#basic-usage",
172
+ "depth": 3,
173
+ "numbering": [
174
+ 1,
175
+ 2,
176
+ 1
177
+ ],
178
+ "parent": "root"
179
+ },
180
+ {
181
+ "value": "Navigation Layout",
182
+ "href": "#navigation-layout",
183
+ "depth": 3,
184
+ "numbering": [
185
+ 1,
186
+ 2,
187
+ 2
188
+ ],
189
+ "parent": "root"
190
+ },
191
+ {
192
+ "value": "Multiple Spacers",
193
+ "href": "#multiple-spacers",
194
+ "depth": 3,
195
+ "numbering": [
196
+ 1,
197
+ 2,
198
+ 3
199
+ ],
200
+ "parent": "root"
201
+ },
202
+ {
203
+ "value": "Vertical Layout",
204
+ "href": "#vertical-layout",
205
+ "depth": 3,
206
+ "numbering": [
207
+ 1,
208
+ 2,
209
+ 4
210
+ ],
211
+ "parent": "root"
212
+ },
213
+ {
214
+ "value": "With Custom Styling",
215
+ "href": "#with-custom-styling",
216
+ "depth": 3,
217
+ "numbering": [
218
+ 1,
219
+ 2,
220
+ 5
221
+ ],
222
+ "parent": "root"
223
+ }
224
+ ]
225
+ },
226
+ "a11y": {
227
+ "mdx": "\n## Accessibility\n\nAccessibility ensures that digital content and functionality are usable by\neveryone, including people with disabilities, by addressing visual, auditory,\ncognitive, and physical limitations.\n\n```jsx live\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"solid\">Left</Button>\n <Spacer />\n <Button variant=\"outline\">Right</Button>\n </Stack>\n)\n```\n\n### Accessibility standards\n\n- **Semantic Structure**: Spacer should not affect document semantics or screen\n reader navigation\n- **Visual Only**: The spacing created by Spacer is purely visual and should not\n convey meaning\n- **Alternative Approaches**: If spacing conveys important information, consider\n using semantic HTML elements with appropriate ARIA attributes\n",
228
+ "toc": [
229
+ {
230
+ "value": "Accessibility",
231
+ "href": "#accessibility",
232
+ "depth": 2,
233
+ "numbering": [
234
+ 1,
235
+ 1
236
+ ],
237
+ "parent": "root"
238
+ },
239
+ {
240
+ "value": "Accessibility standards",
241
+ "href": "#accessibility-standards",
242
+ "depth": 3,
243
+ "numbering": [
244
+ 1,
245
+ 1,
246
+ 1
247
+ ],
248
+ "parent": "root"
249
+ }
250
+ ]
251
+ },
252
+ "dev": {
253
+ "mdx": "\n## Getting started\n\n### Import\n\n```tsx\nimport { Spacer, type SpacerProps } from '@commercetools/nimbus';\n```\n\n### Basic usage\n\nThe simplest implementation uses Spacer to push elements apart in a flex container:\n\n```jsx live-dev\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button>Left</Button>\n <Spacer />\n <Button>Right</Button>\n </Stack>\n)\n```\n\nThe Spacer component automatically fills available space using `flexGrow=\"1\"`, pushing elements to opposite ends of the container.\n\n## Usage examples\n\n### Horizontal spacing\n\nUse Spacer to separate elements horizontally in a row layout:\n\n```jsx live-dev\nconst App = () => (\n <Stack direction=\"column\" gap=\"400\">\n <Stack direction=\"row\" width=\"full\">\n <Text fontWeight=\"600\">Product Name</Text>\n <Spacer />\n <Text color=\"neutral.11\">$49.99</Text>\n </Stack>\n \n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"outline\" size=\"xs\">Cancel</Button>\n <Spacer />\n <Button variant=\"solid\" size=\"xs\">Save</Button>\n </Stack>\n </Stack>\n)\n```\n\n### Navigation layout\n\nCreate navigation bars with grouped elements:\n\n```jsx live-dev\nconst App = () => (\n <Stack \n direction=\"row\" \n width=\"full\" \n padding=\"300\" \n backgroundColor=\"neutral.2\" \n borderRadius=\"200\"\n >\n <Button variant=\"ghost\" size=\"xs\">Home</Button>\n <Button variant=\"ghost\" size=\"xs\">About</Button>\n <Button variant=\"ghost\" size=\"xs\">Services</Button>\n <Spacer />\n <Button variant=\"ghost\" size=\"xs\">Profile</Button>\n <Button variant=\"solid\" size=\"xs\">Sign In</Button>\n </Stack>\n)\n```\n\n### Multiple spacers\n\nUse multiple Spacer components to distribute space evenly:\n\n```jsx live-dev\nconst App = () => (\n <Stack direction=\"row\" width=\"full\">\n <Button variant=\"outline\">First</Button>\n <Spacer />\n <Button variant=\"outline\">Second</Button>\n <Spacer />\n <Button variant=\"outline\">Third</Button>\n </Stack>\n)\n```\n\nEach Spacer receives an equal share of available space, creating even distribution.\n\n### Vertical layout\n\nSpacer works in vertical layouts too:\n\n```jsx live-dev\nconst App = () => (\n <Stack direction=\"column\" height=\"6400\" width=\"4800\" borderWidth=\"25\" borderColor=\"neutral.6\" borderRadius=\"200\" padding=\"400\">\n <Stack direction=\"column\" gap=\"200\">\n <Text fontSize=\"lg\" fontWeight=\"600\">Card Title</Text>\n <Text fontSize=\"sm\" color=\"neutral.11\">\n This card demonstrates vertical spacing with a Spacer component.\n </Text>\n </Stack>\n \n <Spacer />\n \n <Stack direction=\"row\" gap=\"200\">\n <Button variant=\"outline\" size=\"xs\">Cancel</Button>\n <Button variant=\"solid\" size=\"xs\">Confirm</Button>\n </Stack>\n </Stack>\n)\n```\n\n### With custom styling\n\nAlthough typically invisible, Spacer accepts all Box props for custom styling:\n\n```jsx live-dev\nconst App = () => (\n <Stack direction=\"column\" gap=\"400\">\n <Stack direction=\"row\" width=\"full\">\n <Text fontWeight=\"600\">Default (invisible)</Text>\n <Spacer />\n <Text>Right side</Text>\n </Stack>\n \n <Stack direction=\"row\" width=\"full\">\n <Text fontWeight=\"600\">With background</Text>\n <Spacer backgroundColor=\"primary.3\" borderRadius=\"200\" />\n <Text>Right side</Text>\n </Stack>\n \n <Stack direction=\"row\" width=\"full\">\n <Text fontWeight=\"600\">With border</Text>\n <Spacer borderTop=\"50 dashed\" borderColor=\"neutral.6\" />\n <Text>Right side</Text>\n </Stack>\n </Stack>\n)\n```\n\n### Toolbar layout\n\nCreate toolbar or header layouts with grouped actions:\n\n```jsx live-dev\nconst App = () => (\n <Stack \n direction=\"row\" \n width=\"full\" \n padding=\"300\" \n backgroundColor=\"neutral.2\" \n borderRadius=\"200\"\n alignItems=\"center\"\n >\n <Text fontWeight=\"600\" fontSize=\"sm\">Document.pdf</Text>\n <Spacer />\n <Stack direction=\"row\" gap=\"200\">\n <Button variant=\"ghost\" size=\"xs\">\n <Icons.Download />\n </Button>\n <Button variant=\"ghost\" size=\"xs\">\n <Icons.Share />\n </Button>\n <Button variant=\"ghost\" size=\"xs\">\n <Icons.MoreVert />\n </Button>\n </Stack>\n </Stack>\n)\n```\n\n## Component requirements\n\n### Usage context\n\nThe Spacer component **must** be used within a flex container (such as Stack or Box with display=\"flex\"). It uses `flexGrow=\"1\"` to occupy available space, which only works in flex layouts.\n\n**Valid usage:**\n```tsx\n<Stack direction=\"row\">\n <Button>Left</Button>\n <Spacer />\n <Button>Right</Button>\n</Stack>\n```\n\n**Invalid usage (not in flex container):**\n```tsx\n<div>\n <Button>Left</Button>\n <Spacer /> {/* Won't work - parent is not a flex container */}\n <Button>Right</Button>\n</div>\n```\n\n## Accessibility\n\nThe Spacer component is a layout utility and has no accessibility requirements. It's purely visual and doesn't contain interactive content or convey information to users.\n\nIf your use case requires tracking and analytics for this component, it is good practice to add a **persistent**, **unique** id to the component:\n\n```tsx\nconst PERSISTENT_ID = \"navigation-spacer\";\n\nexport const Navigation = () => (\n <Stack direction=\"row\">\n <Button>Home</Button>\n <Spacer id={PERSISTENT_ID} />\n <Button>Profile</Button>\n </Stack>\n);\n```\n\n## API reference\n\n<PropsTable id=\"Spacer\" />\n\n## Common patterns\n\n### Navigation bar with logo\n\nCommon pattern for navigation bars with logo on left and actions on right:\n\n```jsx live-dev\nconst App = () => (\n <Stack \n direction=\"row\" \n width=\"full\" \n padding=\"400\" \n backgroundColor=\"neutral.2\" \n borderRadius=\"200\"\n alignItems=\"center\"\n >\n <Stack direction=\"row\" gap=\"200\" alignItems=\"center\">\n <Box \n width=\"512\" \n height=\"512\" \n backgroundColor=\"primary.9\" \n borderRadius=\"200\"\n />\n <Text fontWeight=\"600\">Brand</Text>\n </Stack>\n \n <Spacer />\n \n <Stack direction=\"row\" gap=\"300\">\n <Button variant=\"ghost\" size=\"xs\">Products</Button>\n <Button variant=\"ghost\" size=\"xs\">Pricing</Button>\n <Button variant=\"ghost\" size=\"xs\">About</Button>\n <Button variant=\"solid\" size=\"xs\">Sign Up</Button>\n </Stack>\n </Stack>\n)\n```\n\n### Card with footer actions\n\nPattern for cards with actions positioned at opposite ends:\n\n```jsx live-dev\nconst App = () => (\n <Card.Root width=\"6400\">\n <Card.Content>\n <Stack direction=\"column\" gap=\"300\">\n <Stack direction=\"column\" gap=\"200\">\n <Text fontSize=\"lg\" fontWeight=\"600\">Delete Item?</Text>\n <Text fontSize=\"sm\" color=\"neutral.11\">\n This action cannot be undone. The item will be permanently deleted.\n </Text>\n </Stack>\n \n <Stack direction=\"row\" gap=\"200\">\n <Button variant=\"outline\" size=\"xs\">Cancel</Button>\n <Spacer />\n <Button variant=\"solid\" size=\"xs\" colorPalette=\"critical\">\n Delete\n </Button>\n </Stack>\n </Stack>\n </Card.Content>\n </Card.Root>\n)\n```\n\n### List items with actions\n\nPattern for list items with metadata and actions separated:\n\n```jsx live-dev\nconst App = () => {\n const items = [\n { id: 1, name: 'Annual Report 2024.pdf', size: '2.4 MB', date: 'Dec 10' },\n { id: 2, name: 'Meeting Notes.docx', size: '156 KB', date: 'Dec 9' },\n { id: 3, name: 'Budget Planning.xlsx', size: '892 KB', date: 'Dec 8' },\n ];\n\n return (\n <Stack direction=\"column\" gap=\"200\">\n {items.map((item) => (\n <Stack \n key={item.id}\n direction=\"row\" \n padding=\"300\" \n backgroundColor=\"neutral.2\" \n borderRadius=\"200\"\n alignItems=\"center\"\n >\n <Stack direction=\"column\" gap=\"100\">\n <Text fontSize=\"sm\" fontWeight=\"600\">{item.name}</Text>\n <Text fontSize=\"xs\" color=\"neutral.11\">\n {item.size} · {item.date}\n </Text>\n </Stack>\n \n <Spacer />\n \n <Stack direction=\"row\" gap=\"100\">\n <Button variant=\"ghost\" size=\"2xs\">\n <Icons.Download />\n </Button>\n <Button variant=\"ghost\" size=\"2xs\">\n <Icons.MoreVert />\n </Button>\n </Stack>\n </Stack>\n ))}\n </Stack>\n );\n}\n```\n\n### Form footer actions\n\nPattern for form layouts with actions at opposite ends:\n\n```jsx live-dev\nconst App = () => (\n <Stack direction=\"column\" gap=\"400\" width=\"full\">\n <FormField.Root>\n <FormField.Label>Project Name</FormField.Label>\n <FormField.Input>\n <TextInput placeholder=\"Enter project name\" />\n </FormField.Input>\n </FormField.Root>\n \n <FormField.Root>\n <FormField.Label>Description</FormField.Label>\n <FormField.Input>\n <MultilineTextInput placeholder=\"Enter description\" rows={3} />\n </FormField.Input>\n </FormField.Root>\n \n <Stack direction=\"row\" gap=\"200\">\n <Button variant=\"outline\" size=\"xs\">Cancel</Button>\n <Spacer />\n <Button variant=\"outline\" size=\"xs\">Save as Draft</Button>\n <Button variant=\"solid\" size=\"xs\">Publish</Button>\n </Stack>\n </Stack>\n)\n```\n\n## Testing your implementation\n\nThese examples demonstrate how to test your implementation when using Spacer within your application. As the component's internal functionality is already tested by Nimbus, these patterns help you verify your integration and application-specific logic.\n\n### Basic Rendering Tests\n\nVerify the component renders and applies flexGrow\n\n```tsx\nimport { describe, it, expect } from \"vitest\";\nimport { render, screen } from \"@testing-library/react\";\nimport { Spacer, Stack, Button, NimbusProvider } from \"@commercetools/nimbus\";\n\ndescribe(\"Spacer - Basic rendering\", () => {\n it(\"renders spacer element\", () => {\n render(\n <NimbusProvider>\n <Stack direction=\"row\">\n <Button>Left</Button>\n <Spacer data-testid=\"spacer\" />\n <Button>Right</Button>\n </Stack>\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer).toBeInTheDocument();\n });\n\n it(\"applies flexGrow style\", () => {\n render(\n <NimbusProvider>\n <Spacer data-testid=\"spacer\" />\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer).toHaveStyle({ flexGrow: \"1\" });\n });\n\n it(\"renders as a div element\", () => {\n render(\n <NimbusProvider>\n <Spacer data-testid=\"spacer\" />\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer.tagName).toBe(\"DIV\");\n });\n});\n```\n\n### Layout Behavior Tests\n\nTest spacer behavior in flex layouts\n\n```tsx\nimport { describe, it, expect } from \"vitest\";\nimport { render, screen } from \"@testing-library/react\";\nimport { Spacer, Stack, Button, NimbusProvider } from \"@commercetools/nimbus\";\n\ndescribe(\"Spacer - Layout behavior\", () => {\n it(\"works in horizontal flex layout\", () => {\n render(\n <NimbusProvider>\n <Stack direction=\"row\" data-testid=\"container\">\n <Button>Left</Button>\n <Spacer data-testid=\"spacer\" />\n <Button>Right</Button>\n </Stack>\n </NimbusProvider>\n );\n\n const container = screen.getByTestId(\"container\");\n const spacer = screen.getByTestId(\"spacer\");\n\n expect(container).toBeInTheDocument();\n expect(spacer).toBeInTheDocument();\n expect(spacer).toHaveStyle({ flexGrow: \"1\" });\n });\n\n it(\"works in vertical flex layout\", () => {\n render(\n <NimbusProvider>\n <Stack direction=\"column\" data-testid=\"container\" height=\"400px\">\n <Button>Top</Button>\n <Spacer data-testid=\"spacer\" />\n <Button>Bottom</Button>\n </Stack>\n </NimbusProvider>\n );\n\n const container = screen.getByTestId(\"container\");\n const spacer = screen.getByTestId(\"spacer\");\n\n expect(container).toBeInTheDocument();\n expect(spacer).toBeInTheDocument();\n expect(spacer).toHaveStyle({ flexGrow: \"1\" });\n });\n\n it(\"supports multiple spacers in same container\", () => {\n render(\n <NimbusProvider>\n <Stack direction=\"row\">\n <Button>First</Button>\n <Spacer data-testid=\"spacer-1\" />\n <Button>Second</Button>\n <Spacer data-testid=\"spacer-2\" />\n <Button>Third</Button>\n </Stack>\n </NimbusProvider>\n );\n\n const spacer1 = screen.getByTestId(\"spacer-1\");\n const spacer2 = screen.getByTestId(\"spacer-2\");\n\n expect(spacer1).toBeInTheDocument();\n expect(spacer2).toBeInTheDocument();\n expect(spacer1).toHaveStyle({ flexGrow: \"1\" });\n expect(spacer2).toHaveStyle({ flexGrow: \"1\" });\n });\n});\n```\n\n### Custom Styling Tests\n\nTest that Spacer accepts Box props for styling\n\n```tsx\nimport { describe, it, expect } from \"vitest\";\nimport { render, screen } from \"@testing-library/react\";\nimport { Spacer, Stack, Button, NimbusProvider } from \"@commercetools/nimbus\";\n\ndescribe(\"Spacer - Custom styling\", () => {\n it(\"accepts backgroundColor prop\", () => {\n render(\n <NimbusProvider>\n <Spacer data-testid=\"spacer\" backgroundColor=\"primary.3\" />\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer).toBeInTheDocument();\n // Note: backgroundColor is applied via Chakra's system, actual color computation happens at runtime\n });\n\n it(\"accepts borderRadius prop\", () => {\n render(\n <NimbusProvider>\n <Spacer data-testid=\"spacer\" borderRadius=\"200\" />\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer).toBeInTheDocument();\n });\n\n it(\"accepts border props\", () => {\n render(\n <NimbusProvider>\n <Spacer\n data-testid=\"spacer\"\n borderTop=\"2px dashed\"\n borderColor=\"neutral.6\"\n />\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer).toBeInTheDocument();\n });\n\n it(\"accepts height prop for vertical spacing\", () => {\n render(\n <NimbusProvider>\n <Spacer data-testid=\"spacer\" height=\"50px\" />\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer).toHaveStyle({ height: \"50px\" });\n });\n});\n```\n\n### Props Forwarding Tests\n\nTest that standard HTML attributes are forwarded\n\n```tsx\nimport { describe, it, expect } from \"vitest\";\nimport { render, screen } from \"@testing-library/react\";\nimport { Spacer, Stack, Button, NimbusProvider } from \"@commercetools/nimbus\";\n\ndescribe(\"Spacer - Props forwarding\", () => {\n it(\"forwards data attributes\", () => {\n render(\n <NimbusProvider>\n <Spacer data-testid=\"spacer\" data-custom=\"custom-value\" />\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer).toHaveAttribute(\"data-custom\", \"custom-value\");\n });\n\n it(\"forwards className prop\", () => {\n render(\n <NimbusProvider>\n <Spacer data-testid=\"spacer\" className=\"custom-class\" />\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer).toHaveClass(\"custom-class\");\n });\n\n it(\"forwards id prop\", () => {\n render(\n <NimbusProvider>\n <Spacer id=\"custom-id\" />\n </NimbusProvider>\n );\n\n const spacer = document.getElementById(\"custom-id\");\n expect(spacer).toBeInTheDocument();\n });\n\n it(\"forwards aria attributes\", () => {\n render(\n <NimbusProvider>\n <Spacer data-testid=\"spacer\" aria-label=\"spacer element\" />\n </NimbusProvider>\n );\n\n const spacer = screen.getByTestId(\"spacer\");\n expect(spacer).toHaveAttribute(\"aria-label\", \"spacer element\");\n });\n});\n```\n\n### Ref Forwarding Tests\n\nTest that refs are properly forwarded\n\n```tsx\nimport { describe, it, expect } from \"vitest\";\nimport { render, screen } from \"@testing-library/react\";\nimport { Spacer, Stack, Button, NimbusProvider } from \"@commercetools/nimbus\";\n\ndescribe(\"Spacer - Ref forwarding\", () => {\n it(\"forwards ref to underlying element\", () => {\n const ref = { current: null as HTMLDivElement | null };\n\n render(\n <NimbusProvider>\n <Spacer ref={ref} />\n </NimbusProvider>\n );\n\n expect(ref.current).toBeInstanceOf(HTMLDivElement);\n });\n\n it(\"allows ref access to DOM methods\", () => {\n const ref = { current: null as HTMLDivElement | null };\n\n render(\n <NimbusProvider>\n <Spacer ref={ref} data-testid=\"spacer\" />\n </NimbusProvider>\n );\n\n expect(ref.current?.getAttribute(\"data-testid\")).toBe(\"spacer\");\n });\n});\n```\n\n\n## Resources\n\n- [Storybook](https://nimbus-storybook.vercel.app/?path=/docs/components-spacer--docs)\n- [Chakra UI Box](https://chakra-ui.com/docs/components/box)\n- [CSS Flexbox Guide](https://css-tricks.com/snippets/css/a-guide-to-flexbox/)\n- [Stack Component](/components/layout/stack)\n",
254
+ "toc": [
255
+ {
256
+ "value": "Getting started",
257
+ "href": "#getting-started",
258
+ "depth": 2,
259
+ "numbering": [
260
+ 1,
261
+ 1
262
+ ],
263
+ "parent": "root"
264
+ },
265
+ {
266
+ "value": "Import",
267
+ "href": "#import",
268
+ "depth": 3,
269
+ "numbering": [
270
+ 1,
271
+ 1,
272
+ 1
273
+ ],
274
+ "parent": "root"
275
+ },
276
+ {
277
+ "value": "Basic usage",
278
+ "href": "#basic-usage",
279
+ "depth": 3,
280
+ "numbering": [
281
+ 1,
282
+ 1,
283
+ 2
284
+ ],
285
+ "parent": "root"
286
+ },
287
+ {
288
+ "value": "Usage examples",
289
+ "href": "#usage-examples",
290
+ "depth": 2,
291
+ "numbering": [
292
+ 1,
293
+ 2
294
+ ],
295
+ "parent": "root"
296
+ },
297
+ {
298
+ "value": "Horizontal spacing",
299
+ "href": "#horizontal-spacing",
300
+ "depth": 3,
301
+ "numbering": [
302
+ 1,
303
+ 2,
304
+ 1
305
+ ],
306
+ "parent": "root"
307
+ },
308
+ {
309
+ "value": "Navigation layout",
310
+ "href": "#navigation-layout",
311
+ "depth": 3,
312
+ "numbering": [
313
+ 1,
314
+ 2,
315
+ 2
316
+ ],
317
+ "parent": "root"
318
+ },
319
+ {
320
+ "value": "Multiple spacers",
321
+ "href": "#multiple-spacers",
322
+ "depth": 3,
323
+ "numbering": [
324
+ 1,
325
+ 2,
326
+ 3
327
+ ],
328
+ "parent": "root"
329
+ },
330
+ {
331
+ "value": "Vertical layout",
332
+ "href": "#vertical-layout",
333
+ "depth": 3,
334
+ "numbering": [
335
+ 1,
336
+ 2,
337
+ 4
338
+ ],
339
+ "parent": "root"
340
+ },
341
+ {
342
+ "value": "With custom styling",
343
+ "href": "#with-custom-styling",
344
+ "depth": 3,
345
+ "numbering": [
346
+ 1,
347
+ 2,
348
+ 5
349
+ ],
350
+ "parent": "root"
351
+ },
352
+ {
353
+ "value": "Toolbar layout",
354
+ "href": "#toolbar-layout",
355
+ "depth": 3,
356
+ "numbering": [
357
+ 1,
358
+ 2,
359
+ 6
360
+ ],
361
+ "parent": "root"
362
+ },
363
+ {
364
+ "value": "Component requirements",
365
+ "href": "#component-requirements",
366
+ "depth": 2,
367
+ "numbering": [
368
+ 1,
369
+ 3
370
+ ],
371
+ "parent": "root"
372
+ },
373
+ {
374
+ "value": "Usage context",
375
+ "href": "#usage-context",
376
+ "depth": 3,
377
+ "numbering": [
378
+ 1,
379
+ 3,
380
+ 1
381
+ ],
382
+ "parent": "root"
383
+ },
384
+ {
385
+ "value": "Accessibility",
386
+ "href": "#accessibility",
387
+ "depth": 2,
388
+ "numbering": [
389
+ 1,
390
+ 4
391
+ ],
392
+ "parent": "root"
393
+ },
394
+ {
395
+ "value": "API reference",
396
+ "href": "#api-reference",
397
+ "depth": 2,
398
+ "numbering": [
399
+ 1,
400
+ 5
401
+ ],
402
+ "parent": "root"
403
+ },
404
+ {
405
+ "value": "Common patterns",
406
+ "href": "#common-patterns",
407
+ "depth": 2,
408
+ "numbering": [
409
+ 1,
410
+ 6
411
+ ],
412
+ "parent": "root"
413
+ },
414
+ {
415
+ "value": "Navigation bar with logo",
416
+ "href": "#navigation-bar-with-logo",
417
+ "depth": 3,
418
+ "numbering": [
419
+ 1,
420
+ 6,
421
+ 1
422
+ ],
423
+ "parent": "root"
424
+ },
425
+ {
426
+ "value": "Card with footer actions",
427
+ "href": "#card-with-footer-actions",
428
+ "depth": 3,
429
+ "numbering": [
430
+ 1,
431
+ 6,
432
+ 2
433
+ ],
434
+ "parent": "root"
435
+ },
436
+ {
437
+ "value": "List items with actions",
438
+ "href": "#list-items-with-actions",
439
+ "depth": 3,
440
+ "numbering": [
441
+ 1,
442
+ 6,
443
+ 3
444
+ ],
445
+ "parent": "root"
446
+ },
447
+ {
448
+ "value": "Form footer actions",
449
+ "href": "#form-footer-actions",
450
+ "depth": 3,
451
+ "numbering": [
452
+ 1,
453
+ 6,
454
+ 4
455
+ ],
456
+ "parent": "root"
457
+ },
458
+ {
459
+ "value": "Testing your implementation",
460
+ "href": "#testing-your-implementation",
461
+ "depth": 2,
462
+ "numbering": [
463
+ 1,
464
+ 7
465
+ ],
466
+ "parent": "root"
467
+ },
468
+ {
469
+ "value": "Basic Rendering Tests",
470
+ "href": "#basic-rendering-tests",
471
+ "depth": 3,
472
+ "numbering": [
473
+ 1,
474
+ 7,
475
+ 1
476
+ ],
477
+ "parent": "root"
478
+ },
479
+ {
480
+ "value": "Layout Behavior Tests",
481
+ "href": "#layout-behavior-tests",
482
+ "depth": 3,
483
+ "numbering": [
484
+ 1,
485
+ 7,
486
+ 2
487
+ ],
488
+ "parent": "root"
489
+ },
490
+ {
491
+ "value": "Custom Styling Tests",
492
+ "href": "#custom-styling-tests",
493
+ "depth": 3,
494
+ "numbering": [
495
+ 1,
496
+ 7,
497
+ 3
498
+ ],
499
+ "parent": "root"
500
+ },
501
+ {
502
+ "value": "Props Forwarding Tests",
503
+ "href": "#props-forwarding-tests",
504
+ "depth": 3,
505
+ "numbering": [
506
+ 1,
507
+ 7,
508
+ 4
509
+ ],
510
+ "parent": "root"
511
+ },
512
+ {
513
+ "value": "Ref Forwarding Tests",
514
+ "href": "#ref-forwarding-tests",
515
+ "depth": 3,
516
+ "numbering": [
517
+ 1,
518
+ 7,
519
+ 5
520
+ ],
521
+ "parent": "root"
522
+ },
523
+ {
524
+ "value": "Resources",
525
+ "href": "#resources",
526
+ "depth": 2,
527
+ "numbering": [
528
+ 1,
529
+ 8
530
+ ],
531
+ "parent": "root"
532
+ }
533
+ ]
534
+ },
535
+ "guidelines": {
536
+ "mdx": "\n## Guidelines\n\nUse this component strategically to create flexible layouts.\n\n### Best practices\n\n- **Use in Flex Containers**: Spacer only works within flex or grid layouts\n (Stack, HStack, VStack, etc.)\n- **Semantic HTML**: Spacer renders a `<div>` element, so use it appropriately\n in your document structure\n- **Multiple Spacers**: When using multiple spacers, they will divide the\n available space equally\n- **Custom Styling**: You can pass any Box props to customize appearance when\n needed\n\n### When to use\n\n> [!TIP]\\\n> When to use\n\n- **Navigation Bars**: Separate logo from menu items or push actions to the\n right\n- **Toolbars**: Group related tools with flexible spacing between groups\n- **Card Footers**: Push action buttons to opposite ends\n- **Forms**: Create space between form sections or buttons\n- **Headers**: Separate title from actions or utilities\n\n> [!CAUTION]\\\n> When not to use\n\n- **Fixed Spacing**: Use Stack's `gap` prop or Box's `margin` for consistent,\n fixed spacing\n- **Non-Flex Layouts**: Spacer requires a flex or grid parent to work\n- **Complex Grids**: Use CSS Grid for two-dimensional layouts instead\n- **Content Spacing**: Don't use for spacing within text content - use\n typography components\n",
537
+ "toc": [
538
+ {
539
+ "value": "Guidelines",
540
+ "href": "#guidelines",
541
+ "depth": 2,
542
+ "numbering": [
543
+ 1,
544
+ 1
545
+ ],
546
+ "parent": "root"
547
+ },
548
+ {
549
+ "value": "Best practices",
550
+ "href": "#best-practices",
551
+ "depth": 3,
552
+ "numbering": [
553
+ 1,
554
+ 1,
555
+ 1
556
+ ],
557
+ "parent": "root"
558
+ },
559
+ {
560
+ "value": "When to use",
561
+ "href": "#when-to-use",
562
+ "depth": 3,
563
+ "numbering": [
564
+ 1,
565
+ 1,
566
+ 2
567
+ ],
568
+ "parent": "root"
569
+ }
570
+ ]
571
+ }
572
+ }
573
+ }