@sanity/ui 4.0.0-static.3 → 4.0.0-static.31

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 (325) hide show
  1. package/dist/_chunks-es/{refractor.js → Refractor.js} +1 -1
  2. package/dist/_chunks-es/{refractor.js.map → Refractor.js.map} +1 -1
  3. package/dist/css/index.css +2 -1
  4. package/dist/css/index.css.map +1 -0
  5. package/dist/css/index.d.ts +51 -7
  6. package/dist/css/index.js +17979 -55
  7. package/dist/css/index.js.map +1 -1
  8. package/dist/index.d.ts +12 -17
  9. package/dist/index.js +596 -608
  10. package/dist/index.js.map +1 -1
  11. package/exports/css/index.css +1 -0
  12. package/package.json +36 -46
  13. package/src/core/Root.tsx +1 -1
  14. package/src/core/RootProvider.tsx +5 -5
  15. package/src/core/__workshop__/index.ts +1 -1
  16. package/src/core/components/autocomplete/{autocomplete.tsx → Autocomplete.tsx} +10 -10
  17. package/src/core/components/autocomplete/__workshop__/{custom.tsx → Custom.tsx} +14 -1
  18. package/src/core/components/autocomplete/__workshop__/{example.tsx → Example.tsx} +12 -1
  19. package/src/core/components/autocomplete/__workshop__/index.ts +6 -6
  20. package/src/core/components/autocomplete/types.ts +1 -1
  21. package/src/core/components/breadcrumbs/{breadcrumbs.tsx → Breadcrumbs.tsx} +6 -6
  22. package/src/core/components/breadcrumbs/__workshop__/index.ts +1 -1
  23. package/src/core/components/dialog/{dialog.tsx → Dialog.tsx} +4 -4
  24. package/src/core/components/dialog/{dialogCard.tsx → DialogCard.tsx} +5 -5
  25. package/src/core/components/dialog/{dialogProvider.tsx → DialogProvider.tsx} +1 -1
  26. package/src/core/components/dialog/__workshop__/{panes.tsx → Panes.tsx} +4 -0
  27. package/src/core/components/dialog/__workshop__/{position.tsx → Position.tsx} +9 -1
  28. package/src/core/components/dialog/__workshop__/{props.tsx → Props.tsx} +2 -0
  29. package/src/core/components/dialog/__workshop__/index.ts +10 -10
  30. package/src/core/components/dialog/useDialog.ts +3 -3
  31. package/src/core/components/hotkeys/{hotkeys.tsx → Hotkeys.tsx} +2 -2
  32. package/src/core/components/hotkeys/__workshop__/index.ts +1 -1
  33. package/src/core/components/menu/{menu.test.tsx → Menu.test.tsx} +1 -1
  34. package/src/core/components/menu/{menu.tsx → Menu.tsx} +4 -8
  35. package/src/core/components/menu/{menuButton.tsx → MenuButton.tsx} +14 -9
  36. package/src/core/components/menu/{menuContext.ts → MenuContext.ts} +1 -1
  37. package/src/core/components/menu/{menuGroup.tsx → MenuGroup.tsx} +14 -11
  38. package/src/core/components/menu/{menuItem.tsx → MenuItem.tsx} +7 -9
  39. package/src/core/components/menu/__workshop__/DataProps.tsx +27 -0
  40. package/src/core/components/menu/__workshop__/{menuButton.tsx → MenuButton.tsx} +6 -1
  41. package/src/core/components/menu/__workshop__/{tones.tsx → Tones.tsx} +7 -1
  42. package/src/core/components/menu/__workshop__/index.ts +22 -17
  43. package/src/core/components/menu/useMenu.ts +3 -3
  44. package/src/core/components/tab/{tab.tsx → Tab.tsx} +1 -1
  45. package/src/core/components/tab/{tabList.tsx → TabList.tsx} +2 -2
  46. package/src/core/components/tab/{tabPanel.tsx → TabPanel.tsx} +1 -1
  47. package/src/core/components/tab/__workshop__/index.ts +1 -1
  48. package/src/core/components/toast/{toast.test.tsx → Toast.test.tsx} +1 -1
  49. package/src/core/components/toast/{toast.tsx → Toast.tsx} +6 -6
  50. package/src/core/components/toast/{toastLayer.tsx → ToastLayer.tsx} +1 -1
  51. package/src/core/components/toast/{toastProvider.tsx → ToastProvider.tsx} +4 -4
  52. package/src/core/components/toast/__workshop__/{toast.tsx → Toast.tsx} +2 -0
  53. package/src/core/components/toast/__workshop__/index.ts +2 -2
  54. package/src/core/components/toast/useToast.ts +3 -3
  55. package/src/core/components/tree/{tree.tsx → Tree.tsx} +2 -2
  56. package/src/core/components/tree/{treeGroup.tsx → TreeGroup.tsx} +1 -1
  57. package/src/core/components/tree/{treeItem.tsx → TreeItem.tsx} +7 -7
  58. package/src/core/components/tree/__workshop__/index.ts +4 -4
  59. package/src/core/components/tree/useTree.ts +3 -3
  60. package/src/core/components/virtualList/{virtualList.tsx → VirtualList.tsx} +1 -1
  61. package/src/core/components/virtualList/__workshop__/index.ts +4 -4
  62. package/src/core/hooks/useMediaIndex/__workshop__/index.ts +1 -1
  63. package/src/core/index.ts +65 -62
  64. package/src/core/primitives/avatar/{avatar.tsx → Avatar.tsx} +4 -4
  65. package/src/core/primitives/avatar/{avatarCounter.tsx → AvatarCounter.tsx} +2 -2
  66. package/src/core/primitives/avatar/{avatarStack.tsx → AvatarStack.tsx} +3 -3
  67. package/src/core/primitives/avatar/__workshop__/{asButton.tsx → AsButton.tsx} +8 -1
  68. package/src/core/primitives/avatar/__workshop__/PropsStory.tsx +22 -0
  69. package/src/core/primitives/avatar/__workshop__/{stack.tsx → Stack.tsx} +5 -1
  70. package/src/core/primitives/avatar/__workshop__/index.ts +9 -4
  71. package/src/core/primitives/badge/{badge.test.tsx → Badge.test.tsx} +1 -1
  72. package/src/core/primitives/badge/{badge.tsx → Badge.tsx} +2 -2
  73. package/src/core/primitives/badge/__workshop__/{props.tsx → Props.tsx} +12 -1
  74. package/src/core/primitives/badge/__workshop__/index.ts +2 -2
  75. package/src/core/primitives/box/__workshop__/{props.tsx → Props.tsx} +6 -1
  76. package/src/core/primitives/box/__workshop__/index.ts +2 -2
  77. package/src/core/primitives/button/{button.test.tsx → Button.test.tsx} +1 -1
  78. package/src/core/primitives/button/{button.tsx → Button.tsx} +10 -10
  79. package/src/core/primitives/button/__workshop__/DataProps.tsx +22 -0
  80. package/src/core/primitives/button/__workshop__/{props.tsx → Props.tsx} +22 -0
  81. package/src/core/primitives/button/__workshop__/{stacked.tsx → Stacked.tsx} +16 -0
  82. package/src/core/primitives/button/__workshop__/index.ts +16 -11
  83. package/src/core/primitives/card/{card.tsx → Card.tsx} +10 -10
  84. package/src/core/primitives/card/{cardProvider.tsx → CardProvider.tsx} +1 -1
  85. package/src/core/primitives/card/__workshop__/DataProps.tsx +30 -0
  86. package/src/core/primitives/card/__workshop__/{props.tsx → Props.tsx} +10 -0
  87. package/src/core/primitives/card/__workshop__/{selected.tsx → Selected.tsx} +1 -1
  88. package/src/core/primitives/card/__workshop__/index.ts +10 -9
  89. package/src/core/primitives/card/useCard.ts +3 -3
  90. package/src/core/primitives/checkbox/__workshop__/index.ts +4 -4
  91. package/src/core/primitives/code/{code.tsx → Code.tsx} +26 -2
  92. package/src/core/primitives/code/__workshop__/{props.tsx → Props.tsx} +6 -1
  93. package/src/core/primitives/code/__workshop__/index.ts +2 -2
  94. package/src/core/primitives/container/{container.tsx → Container.tsx} +1 -1
  95. package/src/core/primitives/container/__workshop__/{example.tsx → Example.tsx} +6 -1
  96. package/src/core/primitives/container/__workshop__/index.ts +1 -1
  97. package/src/core/primitives/flex/{flex.tsx → Flex.tsx} +1 -1
  98. package/src/core/primitives/flex/__workshop__/{example.tsx → Example.tsx} +7 -1
  99. package/src/core/primitives/flex/__workshop__/index.ts +2 -2
  100. package/src/core/primitives/grid/{grid.tsx → Grid.tsx} +1 -1
  101. package/src/core/primitives/grid/__workshop__/index.ts +1 -1
  102. package/src/core/primitives/heading/{heading.tsx → Heading.tsx} +16 -0
  103. package/src/core/primitives/heading/__workshop__/{plain.tsx → Plain.tsx} +12 -1
  104. package/src/core/primitives/heading/__workshop__/index.ts +2 -2
  105. package/src/core/primitives/inline/{inline.tsx → Inline.tsx} +1 -1
  106. package/src/core/primitives/inline/__workshop__/{plain.tsx → Plain.tsx} +5 -1
  107. package/src/core/primitives/inline/__workshop__/index.ts +1 -1
  108. package/src/core/primitives/kbd/{kbd.tsx → Kbd.tsx} +2 -2
  109. package/src/core/primitives/kbd/__workshop__/index.ts +1 -1
  110. package/src/core/primitives/label/{label.tsx → Label.tsx} +16 -0
  111. package/src/core/primitives/label/__workshop__/{plain.tsx → Plain.tsx} +15 -1
  112. package/src/core/primitives/label/__workshop__/index.ts +2 -2
  113. package/src/core/primitives/layer/{layer.test.tsx → Layer.test.tsx} +1 -1
  114. package/src/core/primitives/layer/{layer.tsx → Layer.tsx} +3 -3
  115. package/src/core/primitives/layer/{layerCard.tsx → LayerCard.tsx} +2 -2
  116. package/src/core/primitives/layer/{layerProvider.tsx → LayerProvider.tsx} +3 -3
  117. package/src/core/primitives/layer/__workshop__/index.ts +3 -3
  118. package/src/core/primitives/layer/useLayer.ts +3 -3
  119. package/src/core/primitives/popover/{popover.tsx → Popover.tsx} +4 -5
  120. package/src/core/primitives/popover/{popoverLayer.tsx → PopoverLayer.tsx} +3 -3
  121. package/src/core/primitives/popover/__workshop__/AlignedStory.tsx +13 -1
  122. package/src/core/primitives/popover/__workshop__/MatchReferenceWidthStory.tsx +2 -0
  123. package/src/core/primitives/popover/__workshop__/PlainStory.tsx +8 -0
  124. package/src/core/primitives/popover/__workshop__/SidePanelStory.tsx +7 -1
  125. package/src/core/primitives/popover/__workshop__/TestStory.tsx +6 -0
  126. package/src/core/primitives/radio/{radio.tsx → Radio.tsx} +2 -2
  127. package/src/core/primitives/radio/__workshop__/index.ts +2 -2
  128. package/src/core/primitives/select/{select.tsx → Select.tsx} +7 -5
  129. package/src/core/primitives/select/__workshop__/{plain.tsx → Plain.tsx} +4 -0
  130. package/src/core/primitives/select/__workshop__/index.ts +2 -2
  131. package/src/core/primitives/selectable/{selectable.tsx → Selectable.tsx} +2 -2
  132. package/src/core/primitives/selectable/__workshop__/DataProps.tsx +27 -0
  133. package/src/core/primitives/selectable/__workshop__/index.ts +14 -0
  134. package/src/core/primitives/skeleton/{codeSkeleton.tsx → CodeSkeleton.tsx} +1 -1
  135. package/src/core/primitives/skeleton/{headingSkeleton.tsx → HeadingSkeleton.tsx} +1 -1
  136. package/src/core/primitives/skeleton/{labelSkeleton.tsx → LabelSkeleton.tsx} +1 -1
  137. package/src/core/primitives/skeleton/{textSkeleton.tsx → TextSkeleton.tsx} +1 -1
  138. package/src/core/primitives/skeleton/__workshop__/{delay.tsx → Delay.tsx} +9 -1
  139. package/src/core/primitives/skeleton/__workshop__/{skeleton.tsx → Skeleton.tsx} +9 -1
  140. package/src/core/primitives/skeleton/__workshop__/index.ts +2 -2
  141. package/src/core/primitives/spinner/{spinner.tsx → Spinner.tsx} +2 -2
  142. package/src/core/primitives/spinner/__workshop__/Props.tsx +6 -1
  143. package/src/core/primitives/stack/{stack.tsx → Stack.tsx} +1 -1
  144. package/src/core/primitives/stack/__workshop__/{plain.tsx → Plain.tsx} +4 -1
  145. package/src/core/primitives/stack/__workshop__/index.ts +1 -1
  146. package/src/core/primitives/switch/{switch.tsx → Switch.tsx} +2 -10
  147. package/src/core/primitives/switch/__workshop__/index.ts +2 -2
  148. package/src/core/primitives/text/{text.tsx → Text.tsx} +14 -0
  149. package/src/core/primitives/text/__workshop__/{colored.tsx → Colored.tsx} +8 -1
  150. package/src/core/primitives/text/__workshop__/{example.tsx → Example.tsx} +15 -1
  151. package/src/core/primitives/text/__workshop__/index.ts +3 -3
  152. package/src/core/primitives/textArea/{textArea.tsx → TextArea.tsx} +7 -1
  153. package/src/core/primitives/textArea/__workshop__/{plain.tsx → Plain.tsx} +8 -0
  154. package/src/core/primitives/textArea/__workshop__/index.ts +1 -1
  155. package/src/core/primitives/textInput/{textInput.tsx → TextInput.tsx} +22 -21
  156. package/src/core/primitives/textInput/__workshop__/{plain.tsx → Plain.tsx} +34 -4
  157. package/src/core/primitives/textInput/__workshop__/{typed.tsx → Typed.tsx} +7 -1
  158. package/src/core/primitives/textInput/__workshop__/index.ts +7 -7
  159. package/src/core/primitives/tooltip/{tooltip.test.tsx → Tooltip.test.tsx} +4 -4
  160. package/src/core/primitives/tooltip/{tooltip.tsx → Tooltip.tsx} +6 -5
  161. package/src/core/primitives/tooltip/{tooltipLayer.tsx → TooltipLayer.tsx} +2 -2
  162. package/src/core/primitives/tooltip/__workshop__/{customPortal.tsx → CustomPortal.tsx} +2 -0
  163. package/src/core/primitives/tooltip/__workshop__/{overflowingBoundary.tsx → OverflowingBoundary.tsx} +2 -0
  164. package/src/core/primitives/tooltip/__workshop__/{props.tsx → Props.tsx} +12 -0
  165. package/src/core/primitives/tooltip/__workshop__/{resizableBoundary.tsx → ResizableBoundary.tsx} +5 -0
  166. package/src/core/primitives/tooltip/__workshop__/index.ts +4 -4
  167. package/src/core/primitives/tooltip/tooltipDelayGroup/{tooltipDelayGroupProvider.tsx → TooltipDelayGroupProvider.tsx} +1 -1
  168. package/src/core/primitives/tooltip/tooltipDelayGroup/useTooltipDelayGroup.ts +3 -3
  169. package/src/core/types.ts +6 -5
  170. package/src/core/utils/{errorBoundary.tsx → ErrorBoundary.tsx} +1 -1
  171. package/src/core/utils/boundaryElement/{boundaryElement.test.tsx → BoundaryElement.test.tsx} +1 -1
  172. package/src/core/utils/boundaryElement/{boundaryElementProvider.tsx → BoundaryElementProvider.tsx} +1 -1
  173. package/src/core/utils/boundaryElement/__workshop__/index.ts +1 -1
  174. package/src/core/utils/boundaryElement/useBoundaryElement.ts +3 -3
  175. package/src/core/utils/elementQuery/__workshop__/index.ts +1 -1
  176. package/src/core/utils/portal/{portal.test.tsx → Portal.test.tsx} +1 -1
  177. package/src/core/utils/portal/{portal.tsx → Portal.tsx} +1 -1
  178. package/src/core/utils/portal/{portalProvider.tsx → PortalProvider.tsx} +3 -3
  179. package/src/core/utils/portal/__workshop__/index.ts +1 -1
  180. package/src/core/utils/portal/usePortal.ts +3 -3
  181. package/src/css/_responsiveStyle.css.ts +2 -2
  182. package/src/css/primitives/_input/_input.css.ts +8 -8
  183. package/src/css/primitives/_input/input.ts +2 -0
  184. package/src/css/primitives/_input/types.ts +2 -1
  185. package/src/css/primitives/avatar/avatar.css.ts +17 -5
  186. package/src/css/primitives/box/box.css.ts +19 -1
  187. package/src/css/primitives/button/button.css.ts +252 -183
  188. package/src/css/primitives/card/__workshop__/{color.tsx → Color.tsx} +9 -1
  189. package/src/css/primitives/card/__workshop__/index.ts +1 -1
  190. package/src/css/primitives/card/card.css.ts +133 -130
  191. package/src/css/primitives/checkbox/checkbox.css.ts +1 -0
  192. package/src/css/primitives/code/code.ts +4 -0
  193. package/src/css/primitives/code/types.ts +7 -1
  194. package/src/css/primitives/heading/heading.ts +4 -0
  195. package/src/css/primitives/heading/types.ts +7 -1
  196. package/src/css/primitives/label/label.ts +4 -0
  197. package/src/css/primitives/label/types.ts +7 -1
  198. package/src/css/primitives/radio/radio.css.ts +1 -1
  199. package/src/css/primitives/root/root.css.ts +1 -1
  200. package/src/css/primitives/select/select.css.ts +7 -1
  201. package/src/css/primitives/selectable/selectable.css.ts +79 -70
  202. package/src/css/primitives/switch/switch.css.ts +10 -1
  203. package/src/css/primitives/text/text.ts +2 -0
  204. package/src/css/primitives/text/types.ts +6 -1
  205. package/src/css/primitives/textInput/textInput.css.ts +15 -3
  206. package/src/css/props/width/types.ts +1 -1
  207. package/src/css/props/width/width.css.ts +5 -2
  208. package/src/css/theme/buildCSSTheme.ts +4 -0
  209. package/src/css/types.ts +4 -0
  210. package/src/css/vars.css.ts +4 -0
  211. package/dist/_chunks-cjs/refractor.cjs +0 -22
  212. package/dist/_chunks-cjs/refractor.cjs.map +0 -1
  213. package/dist/css/index.cjs +0 -966
  214. package/dist/css/index.cjs.map +0 -1
  215. package/dist/css/index.d.cts +0 -1370
  216. package/dist/index.cjs +0 -4515
  217. package/dist/index.cjs.map +0 -1
  218. package/dist/index.d.cts +0 -2521
  219. package/dist/theme.cjs +0 -870
  220. package/dist/theme.cjs.map +0 -1
  221. package/dist/theme.d.cts +0 -499
  222. package/src/core/primitives/popover/helpers.ts +0 -32
  223. package/src/core/primitives/tooltip/tooltipDelayGroup/index.ts +0 -4
  224. /package/src/core/__workshop__/{boundary.tsx → Boundary.tsx} +0 -0
  225. /package/src/core/components/autocomplete/{autocompleteOption.tsx → AutocompleteOption.tsx} +0 -0
  226. /package/src/core/components/autocomplete/__workshop__/{async.tsx → Async.tsx} +0 -0
  227. /package/src/core/components/autocomplete/__workshop__/{constrainedHeight.tsx → ConstrainedHeight.tsx} +0 -0
  228. /package/src/core/components/autocomplete/__workshop__/{focusAndBlur.tsx → FocusAndBlur.tsx} +0 -0
  229. /package/src/core/components/autocomplete/__workshop__/{fullscreen.tsx → Fullscreen.tsx} +0 -0
  230. /package/src/core/components/breadcrumbs/__workshop__/{example.tsx → Example.tsx} +0 -0
  231. /package/src/core/components/dialog/{dialogContext.ts → DialogContext.ts} +0 -0
  232. /package/src/core/components/dialog/__workshop__/{activate.tsx → Activate.tsx} +0 -0
  233. /package/src/core/components/dialog/__workshop__/{autoFocus.tsx → AutoFocus.tsx} +0 -0
  234. /package/src/core/components/dialog/__workshop__/{layering.tsx → Layering.tsx} +0 -0
  235. /package/src/core/components/dialog/__workshop__/{nested.tsx → Nested.tsx} +0 -0
  236. /package/src/core/components/dialog/__workshop__/{onScroll.tsx → OnScroll.tsx} +0 -0
  237. /package/src/core/components/dialog/__workshop__/{provider.tsx → Provider.tsx} +0 -0
  238. /package/src/core/components/dialog/__workshop__/{wrapped.tsx → Wrapped.tsx} +0 -0
  239. /package/src/core/components/hotkeys/__workshop__/{plain.tsx → Plain.tsx} +0 -0
  240. /package/src/core/components/menu/{menuDivider.tsx → MenuDivider.tsx} +0 -0
  241. /package/src/core/components/menu/__workshop__/{asComponent.tsx → AsComponent.tsx} +0 -0
  242. /package/src/core/components/menu/__workshop__/{avatarMenu.tsx → AvatarMenu.tsx} +0 -0
  243. /package/src/core/components/menu/__workshop__/{closableMenuButton.tsx → ClosableMenuButton.tsx} +0 -0
  244. /package/src/core/components/menu/__workshop__/{constrainedInBoundary.tsx → ConstrainedInBoundary.tsx} +0 -0
  245. /package/src/core/components/menu/__workshop__/{customMenuItem.tsx → CustomMenuItem.tsx} +0 -0
  246. /package/src/core/components/menu/__workshop__/{customSelectedState.tsx → CustomSelectedState.tsx} +0 -0
  247. /package/src/core/components/menu/__workshop__/{disableFocusOnClose.tsx → DisableFocusOnClose.tsx} +0 -0
  248. /package/src/core/components/menu/__workshop__/{groups.tsx → Groups.tsx} +0 -0
  249. /package/src/core/components/menu/__workshop__/{menuGroupRight.tsx → MenuGroupRight.tsx} +0 -0
  250. /package/src/core/components/menu/__workshop__/{nestedMenu.tsx → NestedMenu.tsx} +0 -0
  251. /package/src/core/components/menu/__workshop__/{onCloseMenuButton.tsx → OnCloseMenuButton.tsx} +0 -0
  252. /package/src/core/components/menu/__workshop__/{selectedItem.tsx → SelectedItem.tsx} +0 -0
  253. /package/src/core/components/menu/__workshop__/{shouldFocus.tsx → ShouldFocus.tsx} +0 -0
  254. /package/src/core/components/menu/__workshop__/{withoutArrow.tsx → WithoutArrow.tsx} +0 -0
  255. /package/src/core/components/tab/__workshop__/{example.tsx → Example.tsx} +0 -0
  256. /package/src/core/components/toast/{toastContext.ts → ToastContext.ts} +0 -0
  257. /package/src/core/components/toast/__workshop__/{hook.tsx → Hook.tsx} +0 -0
  258. /package/src/core/components/tree/{treeContext.ts → TreeContext.ts} +0 -0
  259. /package/src/core/components/tree/__workshop__/{basic.tsx → Basic.tsx} +0 -0
  260. /package/src/core/components/tree/__workshop__/{tabFromElement.tsx → TabFromElement.tsx} +0 -0
  261. /package/src/core/components/virtualList/__workshop__/{changingProps.tsx → ChangingProps.tsx} +0 -0
  262. /package/src/core/components/virtualList/__workshop__/{elementScroll.tsx → ElementScroll.tsx} +0 -0
  263. /package/src/core/components/virtualList/__workshop__/{infiniteList.tsx → InfiniteList.tsx} +0 -0
  264. /package/src/core/components/virtualList/__workshop__/{windowScrolll.tsx → WindowScrolll.tsx} +0 -0
  265. /package/src/core/hooks/useMediaIndex/__workshop__/{test.tsx → Test.tsx} +0 -0
  266. /package/src/core/primitives/arrow/{arrow.tsx → Arrow.tsx} +0 -0
  267. /package/src/core/primitives/avatar/__workshop__/{withinButton.tsx → WithinButton.tsx} +0 -0
  268. /package/src/core/primitives/avatar/__workshop__/{withinMenuItem.tsx → WithinMenuItem.tsx} +0 -0
  269. /package/src/core/primitives/badge/__workshop__/{tones.tsx → Tones.tsx} +0 -0
  270. /package/src/core/primitives/box/{box.tsx → Box.tsx} +0 -0
  271. /package/src/core/primitives/box/__workshop__/{responsive.tsx → Responsive.tsx} +0 -0
  272. /package/src/core/primitives/button/__workshop__/{custom.tsx → Custom.tsx} +0 -0
  273. /package/src/core/primitives/button/__workshop__/{customIcons.tsx → CustomIcons.tsx} +0 -0
  274. /package/src/core/primitives/button/__workshop__/{disabled.tsx → Disabled.tsx} +0 -0
  275. /package/src/core/primitives/button/__workshop__/{mixedChildren.tsx → MixedChildren.tsx} +0 -0
  276. /package/src/core/primitives/button/__workshop__/{sanityUploadButton.tsx → SanityUploadButton.tsx} +0 -0
  277. /package/src/core/primitives/button/__workshop__/{styled1.tsx → Styled1.tsx} +0 -0
  278. /package/src/core/primitives/button/__workshop__/{styled2.tsx → Styled2.tsx} +0 -0
  279. /package/src/core/primitives/button/__workshop__/{textOverflow.tsx → TextOverflow.tsx} +0 -0
  280. /package/src/core/primitives/button/__workshop__/{uploadButton.tsx → UploadButton.tsx} +0 -0
  281. /package/src/core/primitives/card/{cardContext.ts → CardContext.ts} +0 -0
  282. /package/src/core/primitives/card/__workshop__/{asButton.tsx → AsButton.tsx} +0 -0
  283. /package/src/core/primitives/card/__workshop__/{asComponent.tsx → AsComponent.tsx} +0 -0
  284. /package/src/core/primitives/card/__workshop__/{checkered.tsx → Checkered.tsx} +0 -0
  285. /package/src/core/primitives/card/__workshop__/{interactive.tsx → Interactive.tsx} +0 -0
  286. /package/src/core/primitives/card/__workshop__/{listNavigation.tsx → ListNavigation.tsx} +0 -0
  287. /package/src/core/primitives/card/__workshop__/{styled.tsx → Styled.tsx} +0 -0
  288. /package/src/core/primitives/card/__workshop__/{tones.tsx → Tones.tsx} +0 -0
  289. /package/src/core/primitives/checkbox/{checkbox.tsx → Checkbox.tsx} +0 -0
  290. /package/src/core/primitives/checkbox/__workshop__/{example.tsx → Example.tsx} +0 -0
  291. /package/src/core/primitives/checkbox/__workshop__/{props.tsx → Props.tsx} +0 -0
  292. /package/src/core/primitives/checkbox/__workshop__/{readOnly.tsx → ReadOnly.tsx} +0 -0
  293. /package/src/core/primitives/checkbox/__workshop__/{tones.tsx → Tones.tsx} +0 -0
  294. /package/src/core/primitives/code/{refractor.tsx → Refractor.tsx} +0 -0
  295. /package/src/core/primitives/code/__workshop__/{opticalAlignment.tsx → OpticalAlignment.tsx} +0 -0
  296. /package/src/core/primitives/flex/__workshop__/{gap.tsx → Gap.tsx} +0 -0
  297. /package/src/core/primitives/grid/__workshop__/{responsive.tsx → Responsive.tsx} +0 -0
  298. /package/src/core/primitives/heading/__workshop__/{opticalAlignment.tsx → OpticalAlignment.tsx} +0 -0
  299. /package/src/core/primitives/kbd/__workshop__/{plain.tsx → Plain.tsx} +0 -0
  300. /package/src/core/primitives/label/__workshop__/{opticalAlignment.tsx → OpticalAlignment.tsx} +0 -0
  301. /package/src/core/primitives/layer/{layerContext.ts → LayerContext.ts} +0 -0
  302. /package/src/core/primitives/layer/__workshop__/{multipleRoots.tsx → MultipleRoots.tsx} +0 -0
  303. /package/src/core/primitives/layer/__workshop__/{nested.tsx → Nested.tsx} +0 -0
  304. /package/src/core/primitives/layer/__workshop__/{responsiveZOffset.tsx → ResponsiveZOffset.tsx} +0 -0
  305. /package/src/core/primitives/radio/__workshop__/{example.tsx → Example.tsx} +0 -0
  306. /package/src/core/primitives/radio/__workshop__/{plain.tsx → Plain.tsx} +0 -0
  307. /package/src/core/primitives/select/__workshop__/{readOnly.tsx → ReadOnly.tsx} +0 -0
  308. /package/src/core/primitives/skeleton/{skeleton.tsx → Skeleton.tsx} +0 -0
  309. /package/src/core/primitives/spinner/{animatedSpinnerIcon.tsx → AnimatedSpinnerIcon.tsx} +0 -0
  310. /package/src/core/primitives/srOnly/{srOnly.tsx → SrOnly.tsx} +0 -0
  311. /package/src/core/primitives/switch/__workshop__/{example.tsx → Example.tsx} +0 -0
  312. /package/src/core/primitives/switch/__workshop__/{props.tsx → Props.tsx} +0 -0
  313. /package/src/core/primitives/text/__workshop__/{opticalAlignment.tsx → OpticalAlignment.tsx} +0 -0
  314. /package/src/core/primitives/textInput/__workshop__/{clearButton.tsx → ClearButton.tsx} +0 -0
  315. /package/src/core/primitives/textInput/__workshop__/{customValidity.tsx → CustomValidity.tsx} +0 -0
  316. /package/src/core/primitives/textInput/__workshop__/{readOnly.tsx → ReadOnly.tsx} +0 -0
  317. /package/src/core/primitives/textInput/__workshop__/{states.tsx → States.tsx} +0 -0
  318. /package/src/core/primitives/textInput/__workshop__/{tones.tsx → Tones.tsx} +0 -0
  319. /package/src/core/primitives/tooltip/tooltipDelayGroup/{tooltipDelayGroupContext.tsx → TooltipDelayGroupContext.tsx} +0 -0
  320. /package/src/core/utils/boundaryElement/{boundaryElementContext.ts → BoundaryElementContext.ts} +0 -0
  321. /package/src/core/utils/boundaryElement/__workshop__/{plain.tsx → Plain.tsx} +0 -0
  322. /package/src/core/utils/elementQuery/{elementQuery.tsx → ElementQuery.tsx} +0 -0
  323. /package/src/core/utils/elementQuery/__workshop__/{customMedia.tsx → CustomMedia.tsx} +0 -0
  324. /package/src/core/utils/portal/{portalContext.ts → PortalContext.ts} +0 -0
  325. /package/src/core/utils/portal/__workshop__/{named.tsx → Named.tsx} +0 -0
@@ -8,57 +8,62 @@ const scope: WorkshopScope = {
8
8
  {
9
9
  name: 'props',
10
10
  title: 'Props',
11
- component: lazy(() => import('./props')),
11
+ component: lazy(() => import('./Props')),
12
12
  },
13
13
  {
14
14
  name: 'styled-1',
15
15
  title: 'Styled #1',
16
- component: lazy(() => import('./styled1')),
16
+ component: lazy(() => import('./Styled1')),
17
17
  },
18
18
  {
19
19
  name: 'styled-2',
20
20
  title: 'Styled #2',
21
- component: lazy(() => import('./styled2')),
21
+ component: lazy(() => import('./Styled2')),
22
22
  },
23
23
  {
24
24
  name: 'stacked',
25
25
  title: 'Stacked',
26
- component: lazy(() => import('./stacked')),
26
+ component: lazy(() => import('./Stacked')),
27
27
  },
28
28
  {
29
29
  name: 'custom',
30
30
  title: 'Custom',
31
- component: lazy(() => import('./custom')),
31
+ component: lazy(() => import('./Custom')),
32
32
  },
33
33
  {
34
34
  name: 'mixed-children',
35
35
  title: 'Mixed children',
36
- component: lazy(() => import('./mixedChildren')),
36
+ component: lazy(() => import('./MixedChildren')),
37
37
  },
38
38
  {
39
39
  name: 'upload-button',
40
40
  title: 'Upload button',
41
- component: lazy(() => import('./uploadButton')),
41
+ component: lazy(() => import('./UploadButton')),
42
42
  },
43
43
  {
44
44
  name: 'sanity-upload-button-workaround',
45
45
  title: 'SanityUploadButtonWorkaroundStory',
46
- component: lazy(() => import('./sanityUploadButton')),
46
+ component: lazy(() => import('./SanityUploadButton')),
47
47
  },
48
48
  {
49
49
  name: 'custom-icons',
50
50
  title: 'Custom icons',
51
- component: lazy(() => import('./customIcons')),
51
+ component: lazy(() => import('./CustomIcons')),
52
52
  },
53
53
  {
54
54
  name: 'disabled',
55
55
  title: 'Disabled',
56
- component: lazy(() => import('./disabled')),
56
+ component: lazy(() => import('./Disabled')),
57
57
  },
58
58
  {
59
59
  name: 'text-overflow',
60
60
  title: 'Text overflow',
61
- component: lazy(() => import('./textOverflow')),
61
+ component: lazy(() => import('./TextOverflow')),
62
+ },
63
+ {
64
+ name: 'data-props',
65
+ title: 'Data props',
66
+ component: lazy(() => import('./DataProps')),
62
67
  },
63
68
  ],
64
69
  }
@@ -1,10 +1,10 @@
1
1
  import {card, type CardStyleProps} from '@sanity/ui/css'
2
- import {useContext} from 'react'
2
+ import {use} from 'react'
3
3
 
4
4
  import type {Props} from '../../types'
5
- import {Box, type BoxElementType, type BoxOwnProps} from '../box/box'
6
- import {CardContext} from './cardContext'
7
- import {CardProvider} from './cardProvider'
5
+ import {Box, type BoxElementType, type BoxOwnProps} from '../box/Box'
6
+ import {CardContext} from './CardContext'
7
+ import {CardProvider} from './CardProvider'
8
8
 
9
9
  /** @public */
10
10
  export const DEFAULT_CARD_ELEMENT = 'div'
@@ -47,7 +47,6 @@ export function Card<E extends CardElementType = typeof DEFAULT_CARD_ELEMENT>(
47
47
  __unstable_focusRing: focusRing = false,
48
48
  as = DEFAULT_CARD_ELEMENT,
49
49
  className,
50
- disabled,
51
50
  pressed,
52
51
  radius = 0,
53
52
  scheme: schemeProp,
@@ -57,7 +56,7 @@ export function Card<E extends CardElementType = typeof DEFAULT_CARD_ELEMENT>(
57
56
  ...rest
58
57
  } = props as CardProps<typeof DEFAULT_CARD_ELEMENT>
59
58
 
60
- const parent = useContext(CardContext)
59
+ const parent = use(CardContext)
61
60
  const tone = toneProp === 'inherit' ? parent?.tone : toneProp
62
61
  const scheme = schemeProp === undefined ? parent?.scheme : schemeProp
63
62
 
@@ -72,10 +71,11 @@ export function Card<E extends CardElementType = typeof DEFAULT_CARD_ELEMENT>(
72
71
  tone,
73
72
  })}
74
73
  data-checkered={checkered ? '' : undefined}
75
- data-disabled={disabled ? '' : undefined}
76
- data-focus-ring={focusRing ? '' : undefined}
77
- data-pressed={pressed ? '' : undefined}
78
- data-selected={selected ? '' : undefined}
74
+ // Extract the disabled prop without removing it from `...rest` so that the underlying <button> or <a> has `[disabled]` when needed
75
+ data-disabled={props.disabled ? '' : props['data-disabled']}
76
+ data-focus-ring={focusRing ? '' : props['data-focus-ring']}
77
+ data-pressed={pressed ? '' : props['data-pressed']}
78
+ data-selected={selected ? '' : props['data-selected']}
79
79
  radius={radius}
80
80
  style={style}
81
81
  />
@@ -1,7 +1,7 @@
1
1
  import type {CardTone, ColorScheme} from '@sanity/ui/theme'
2
2
  import {type ReactNode, useMemo} from 'react'
3
3
 
4
- import {CardContext} from './cardContext'
4
+ import {CardContext} from './CardContext'
5
5
  import type {_CardCompatProviderComponent} from './types'
6
6
 
7
7
  /** @public */
@@ -0,0 +1,30 @@
1
+ import {Card, Stack, Text} from '@sanity/ui'
2
+ import type {CardTone} from '@sanity/ui/theme'
3
+ import {useSelect} from '@sanity/ui-workshop'
4
+
5
+ import {WORKSHOP_CARD_TONE_OPTIONS} from '$workshop'
6
+
7
+ export default function DataPropsStory(): React.JSX.Element {
8
+ // @ts-expect-error - TODO: fix this
9
+ const tone = useSelect('Tone', WORKSHOP_CARD_TONE_OPTIONS, 'default') as CardTone | undefined
10
+
11
+ return (
12
+ <Stack gap={1} padding={4}>
13
+ <Card as="button" data-enabled="" padding={3} tone={tone}>
14
+ <Text>Card</Text>
15
+ </Card>
16
+ <Card as="button" data-hovered="" padding={3} tone={tone}>
17
+ <Text>Card</Text>
18
+ </Card>
19
+ <Card as="button" data-pressed="" padding={3} tone={tone}>
20
+ <Text>Card</Text>
21
+ </Card>
22
+ <Card as="button" data-selected="" padding={3} tone={tone}>
23
+ <Text>Card</Text>
24
+ </Card>
25
+ <Card as="button" data-disabled="" padding={3} tone={tone}>
26
+ <Text>Card</Text>
27
+ </Card>
28
+ </Stack>
29
+ )
30
+ }
@@ -10,30 +10,40 @@ import {
10
10
  } from '$workshop'
11
11
 
12
12
  export default function PropsStory(): React.JSX.Element {
13
+ // @ts-expect-error - TODO: fix this
13
14
  const as = useSelect('As', WORKSHOP_CARD_AS_OPTIONS, 'div')
14
15
  const border = useBoolean('Border', false)
15
16
  const checkered = useBoolean('Checkered', false)
16
17
  const muted = useBoolean('Muted', false)
18
+ // @ts-expect-error - TODO: fix this
17
19
  const padding = useSelect('Padding', WORKSHOP_SPACE_OPTIONS, 3)
18
20
  const pressed = useBoolean('Pressed', false)
21
+ // @ts-expect-error - TODO: fix this
19
22
  const radius = useSelect('Radius', WORKSHOP_RADIUS_OPTIONS, 0)
20
23
  const selected = useBoolean('Selected', false)
24
+ // @ts-expect-error - TODO: fix this
21
25
  const shadow = useSelect('Shadow', WORKSHOP_SHADOW_OPTIONS, 0)
26
+ // @ts-expect-error - TODO: fix this
22
27
  const tone = useSelect('Tone', WORKSHOP_CARD_TONE_OPTIONS, 'default')
23
28
 
24
29
  return (
25
30
  <Flex align="center" height="fill" justify="center" padding={4} sizing="border">
26
31
  <Card
27
32
  __unstable_checkered={checkered}
33
+ // @ts-expect-error - TODO: fix this
28
34
  as={as}
29
35
  border={border}
30
36
  muted={muted}
31
37
  onClick={useAction('onClick')}
38
+ // @ts-expect-error - TODO: fix this
32
39
  padding={padding}
33
40
  pressed={pressed}
41
+ // @ts-expect-error - TODO: fix this
34
42
  radius={radius}
35
43
  selected={selected}
44
+ // @ts-expect-error - TODO: fix this
36
45
  shadow={shadow}
46
+ // @ts-expect-error - TODO: fix this
37
47
  tone={tone}
38
48
  >
39
49
  <Stack gap={3}>
@@ -38,7 +38,7 @@ export default function SelectedStory(): React.JSX.Element {
38
38
  )
39
39
  }
40
40
 
41
- function Preview({selected}: {selected: boolean}) {
41
+ function Preview({selected}: {selected: boolean | undefined}) {
42
42
  return (
43
43
  <Flex>
44
44
  <Box flex={1}>
@@ -5,15 +5,16 @@ const scope: WorkshopScope = {
5
5
  name: 'primitives/card',
6
6
  title: 'Card',
7
7
  stories: [
8
- {name: 'props', title: 'Props', component: lazy(() => import('./props'))},
9
- {name: 'styled', title: 'Styled', component: lazy(() => import('./styled'))},
10
- {name: 'interactive', title: 'Interactive', component: lazy(() => import('./interactive'))},
11
- {name: 'tones', title: 'Tones', component: lazy(() => import('./tones'))},
12
- {name: 'as-button', title: 'As button', component: lazy(() => import('./asButton'))},
13
- {name: 'list-nav', title: 'List navigation', component: lazy(() => import('./listNavigation'))},
14
- {name: 'checkered', title: 'Checkered', component: lazy(() => import('./checkered'))},
15
- {name: 'as-component', title: 'As component', component: lazy(() => import('./asComponent'))},
16
- {name: 'selected', title: 'Selected', component: lazy(() => import('./selected'))},
8
+ {name: 'props', title: 'Props', component: lazy(() => import('./Props'))},
9
+ {name: 'styled', title: 'Styled', component: lazy(() => import('./Styled'))},
10
+ {name: 'interactive', title: 'Interactive', component: lazy(() => import('./Interactive'))},
11
+ {name: 'tones', title: 'Tones', component: lazy(() => import('./Tones'))},
12
+ {name: 'as-button', title: 'As button', component: lazy(() => import('./AsButton'))},
13
+ {name: 'list-nav', title: 'List navigation', component: lazy(() => import('./ListNavigation'))},
14
+ {name: 'checkered', title: 'Checkered', component: lazy(() => import('./Checkered'))},
15
+ {name: 'as-component', title: 'As component', component: lazy(() => import('./AsComponent'))},
16
+ {name: 'selected', title: 'Selected', component: lazy(() => import('./Selected'))},
17
+ {name: 'data-props', title: 'Data props', component: lazy(() => import('./DataProps'))},
17
18
  ],
18
19
  }
19
20
 
@@ -1,11 +1,11 @@
1
- import {useContext} from 'react'
1
+ import {use} from 'react'
2
2
 
3
- import {CardContext} from './cardContext'
3
+ import {CardContext} from './CardContext'
4
4
  import type {CardContextValue} from './types'
5
5
 
6
6
  /** @public */
7
7
  export function useCard(): CardContextValue {
8
- const card = useContext(CardContext)
8
+ const card = use(CardContext)
9
9
 
10
10
  if (!card) {
11
11
  throw new Error('useCard(): missing context value')
@@ -5,10 +5,10 @@ const scope: WorkshopScope = {
5
5
  name: 'primitives/checkbox',
6
6
  title: 'Checkbox',
7
7
  stories: [
8
- {name: 'props', title: 'Props', component: lazy(() => import('./props'))},
9
- {name: 'example', title: 'Example', component: lazy(() => import('./example'))},
10
- {name: 'read-only', title: 'Read-only', component: lazy(() => import('./readOnly'))},
11
- {name: 'multiple-tones', title: 'Multiple tones', component: lazy(() => import('./tones'))},
8
+ {name: 'props', title: 'Props', component: lazy(() => import('./Props'))},
9
+ {name: 'example', title: 'Example', component: lazy(() => import('./Example'))},
10
+ {name: 'read-only', title: 'Read-only', component: lazy(() => import('./ReadOnly'))},
11
+ {name: 'multiple-tones', title: 'Multiple tones', component: lazy(() => import('./Tones'))},
12
12
  ],
13
13
  }
14
14
 
@@ -4,7 +4,7 @@ import {lazy, Suspense} from 'react'
4
4
 
5
5
  import type {ComponentType, Props} from '../../types'
6
6
 
7
- const LazyRefractor = lazy(() => import('./refractor'))
7
+ const LazyRefractor = lazy(() => import('./Refractor'))
8
8
 
9
9
  /** @public */
10
10
  export const DEFAULT_CODE_ELEMENT = 'pre'
@@ -31,6 +31,14 @@ export function Code<E extends CodeElementType = typeof DEFAULT_CODE_ELEMENT>(
31
31
  children,
32
32
  className,
33
33
  language: languageProp,
34
+ margin,
35
+ marginX,
36
+ marginY,
37
+ marginTop,
38
+ marginRight,
39
+ marginBottom,
40
+ marginLeft,
41
+ maxWidth,
34
42
  size = 2,
35
43
  weight = 'regular',
36
44
  ...rest
@@ -39,7 +47,23 @@ export function Code<E extends CodeElementType = typeof DEFAULT_CODE_ELEMENT>(
39
47
  const language = typeof languageProp === 'string' ? languageProp : undefined
40
48
 
41
49
  return (
42
- <Element data-ui="Code" {...rest} className={code({className, size, weight})}>
50
+ <Element
51
+ data-ui="Code"
52
+ {...rest}
53
+ className={code({
54
+ className,
55
+ margin,
56
+ marginX,
57
+ marginY,
58
+ marginTop,
59
+ marginRight,
60
+ marginBottom,
61
+ marginLeft,
62
+ maxWidth,
63
+ size,
64
+ weight,
65
+ })}
66
+ >
43
67
  <Suspense fallback={<code>{children}</code>}>
44
68
  <LazyRefractor language={language} value={children} />
45
69
  </Suspense>
@@ -6,11 +6,16 @@ import {WORKSHOP_CODE_LANGUAGE_OPTIONS, WORKSHOP_TEXT_FONT_SIZE_OPTIONS} from '$
6
6
  export default function PropsStory(): React.JSX.Element {
7
7
  const code = useText('Code', `console.log('Hello, world')`)
8
8
  const language = useSelect('Language', WORKSHOP_CODE_LANGUAGE_OPTIONS, 'typescript')
9
+ // @ts-expect-error - TODO: fix this
9
10
  const size = useSelect('Size', WORKSHOP_TEXT_FONT_SIZE_OPTIONS, 1)
10
11
 
11
12
  return (
12
13
  <Box padding={[4, 5, 6]}>
13
- <Code language={language} size={size}>
14
+ <Code
15
+ language={language}
16
+ // @ts-expect-error - TODO: fix this
17
+ size={size}
18
+ >
14
19
  {code}
15
20
  </Code>
16
21
  </Box>
@@ -8,12 +8,12 @@ const scope: WorkshopScope = {
8
8
  {
9
9
  name: 'props',
10
10
  title: 'Props',
11
- component: lazy(() => import('./props')),
11
+ component: lazy(() => import('./Props')),
12
12
  },
13
13
  {
14
14
  name: 'optical-alignment',
15
15
  title: 'Optical alignment',
16
- component: lazy(() => import('./opticalAlignment')),
16
+ component: lazy(() => import('./OpticalAlignment')),
17
17
  },
18
18
  ],
19
19
  }
@@ -1,7 +1,7 @@
1
1
  import {container, type ContainerStyleProps} from '@sanity/ui/css'
2
2
 
3
3
  import type {Props} from '../../types'
4
- import {Box, type BoxElementType, type BoxOwnProps} from '../box/box'
4
+ import {Box, type BoxElementType, type BoxOwnProps} from '../box/Box'
5
5
 
6
6
  /** @public */
7
7
  export const DEFAULT_CONTAINER_ELEMENT = 'div'
@@ -4,11 +4,16 @@ import {useAction, useSelect} from '@sanity/ui-workshop'
4
4
  import {WORKSHOP_CONTAINER_WIDTH_OPTIONS} from '$workshop'
5
5
 
6
6
  export default function PlainStory(): React.JSX.Element {
7
+ // @ts-expect-error - TODO: fix this
7
8
  const width = useSelect('Width', WORKSHOP_CONTAINER_WIDTH_OPTIONS, 0)
8
9
 
9
10
  return (
10
11
  <Flex align="center" height="fill" justify="center" padding={[4, 5, 6]} sizing="border">
11
- <Container onClick={useAction('onClick')} width={width}>
12
+ <Container
13
+ onClick={useAction('onClick')}
14
+ // @ts-expect-error - TODO: fix this
15
+ width={width}
16
+ >
12
17
  <Card padding={4} shadow={1}>
13
18
  <Text size={1}>
14
19
  Container with <code>max-width={width}</code>
@@ -4,7 +4,7 @@ import {lazy} from 'react'
4
4
  const scope: WorkshopScope = {
5
5
  name: 'primitives/container',
6
6
  title: 'Container',
7
- stories: [{name: 'plain', title: 'Plain', component: lazy(() => import('./example'))}],
7
+ stories: [{name: 'plain', title: 'Plain', component: lazy(() => import('./Example'))}],
8
8
  }
9
9
 
10
10
  export default scope
@@ -7,7 +7,7 @@ import type {
7
7
  } from '@sanity/ui/css'
8
8
 
9
9
  import type {Props} from '../../types'
10
- import {Box, type BoxElementType, type BoxOwnProps} from '../box/box'
10
+ import {Box, type BoxElementType, type BoxOwnProps} from '../box/Box'
11
11
 
12
12
  /** @public */
13
13
  export const DEFAULT_FLEX_ELEMENT = 'div'
@@ -14,10 +14,16 @@ const DebugCard = styled(Card)`
14
14
  `
15
15
 
16
16
  export default function ExampleStory(): React.JSX.Element {
17
+ // @ts-expect-error - TODO: fix this
17
18
  const direction = useSelect('Direction', WORKSHOP_FLEX_DIRECTION_OPTIONS, 'row')
18
19
 
19
20
  return (
20
- <Flex direction={direction} height="fill" style={{width: '100%'}}>
21
+ <Flex
22
+ // @ts-expect-error - TODO: fix this
23
+ direction={direction}
24
+ height="fill"
25
+ style={{width: '100%'}}
26
+ >
21
27
  <DebugCard flex={1}>
22
28
  <Code size={1}>1</Code>
23
29
  </DebugCard>
@@ -5,8 +5,8 @@ const scope: WorkshopScope = {
5
5
  name: 'primitives/flex',
6
6
  title: 'Flex',
7
7
  stories: [
8
- {name: 'plain', title: 'Plain', component: lazy(() => import('./example'))},
9
- {name: 'gap', title: 'Gap', component: lazy(() => import('./gap'))},
8
+ {name: 'plain', title: 'Plain', component: lazy(() => import('./Example'))},
9
+ {name: 'gap', title: 'Gap', component: lazy(() => import('./Gap'))},
10
10
  ],
11
11
  }
12
12
 
@@ -1,5 +1,5 @@
1
1
  import type {Props} from '../../types'
2
- import {Box, type BoxElementType, type BoxOwnProps} from '../box/box'
2
+ import {Box, type BoxElementType, type BoxOwnProps} from '../box/Box'
3
3
 
4
4
  /** @public */
5
5
  export const DEFAULT_GRID_ELEMENT = 'div'
@@ -5,7 +5,7 @@ const scope: WorkshopScope = {
5
5
  name: 'primitives/grid',
6
6
  title: 'Grid',
7
7
  stories: [
8
- {name: 'responsive', title: 'Responsive', component: lazy(() => import('./responsive'))},
8
+ {name: 'responsive', title: 'Responsive', component: lazy(() => import('./Responsive'))},
9
9
  ],
10
10
  }
11
11
 
@@ -46,6 +46,14 @@ export function Heading<E extends HeadingElementType = typeof DEFAULT_HEADING_EL
46
46
  children,
47
47
  className,
48
48
  flex,
49
+ margin,
50
+ marginX,
51
+ marginY,
52
+ marginTop,
53
+ marginRight,
54
+ marginBottom,
55
+ marginLeft,
56
+ maxWidth,
49
57
  muted = false,
50
58
  size = 2,
51
59
  textOverflow: textOverflowProp,
@@ -61,6 +69,14 @@ export function Heading<E extends HeadingElementType = typeof DEFAULT_HEADING_EL
61
69
  className,
62
70
  align,
63
71
  flex,
72
+ margin,
73
+ marginX,
74
+ marginY,
75
+ marginTop,
76
+ marginRight,
77
+ marginBottom,
78
+ marginLeft,
79
+ maxWidth,
64
80
  muted,
65
81
  size,
66
82
  weight,
@@ -9,19 +9,30 @@ import {
9
9
 
10
10
  export default function PlainStory(): React.JSX.Element {
11
11
  const muted = useBoolean('Muted', false)
12
+ // @ts-expect-error - TODO: fix this
12
13
  const size = useSelect('Size', WORKSHOP_HEADING_FONT_SIZE_OPTIONS, 2)
13
14
  const textChild = useText('Text', 'Hello, world')
14
15
  const textOverflow = useSelect(
15
16
  'Text overflow',
17
+ // @ts-expect-error - TODO: fix this
16
18
  WORKSHOP_TEXT_OVERFLOW_OPTIONS,
17
19
  undefined,
18
20
  'Props',
19
21
  )
22
+ // @ts-expect-error - TODO: fix this
20
23
  const weight = useSelect('Weight', WORKSHOP_FONT_WEIGHT_OPTIONS)
21
24
 
22
25
  return (
23
26
  <Flex align="center" height="fill" justify="center" padding={[4, 5, 6]} sizing="border">
24
- <Heading muted={muted} size={size} textOverflow={textOverflow} weight={weight}>
27
+ <Heading
28
+ muted={muted}
29
+ // @ts-expect-error - TODO: fix this
30
+ size={size}
31
+ // @ts-expect-error - TODO: fix this
32
+ textOverflow={textOverflow}
33
+ // @ts-expect-error - TODO: fix this
34
+ weight={weight}
35
+ >
25
36
  {textChild}
26
37
  </Heading>
27
38
  </Flex>
@@ -8,12 +8,12 @@ const scope: WorkshopScope = {
8
8
  {
9
9
  name: 'plain',
10
10
  title: 'Plain',
11
- component: lazy(() => import('./plain')),
11
+ component: lazy(() => import('./Plain')),
12
12
  },
13
13
  {
14
14
  name: 'optical-alignment',
15
15
  title: 'Optical alignment',
16
- component: lazy(() => import('./opticalAlignment')),
16
+ component: lazy(() => import('./OpticalAlignment')),
17
17
  },
18
18
  ],
19
19
  }
@@ -1,5 +1,5 @@
1
1
  import type {Props} from '../../types'
2
- import {Box, type BoxElementType, type BoxOwnProps} from '../box/box'
2
+ import {Box, type BoxElementType, type BoxOwnProps} from '../box/Box'
3
3
 
4
4
  /** @public */
5
5
  export const DEFAULT_INLINE_ELEMENT = 'div'
@@ -6,7 +6,11 @@ import {WORKSHOP_SPACE_OPTIONS} from '$workshop'
6
6
  export default function PlainStory(): React.JSX.Element {
7
7
  return (
8
8
  <Flex align="center" height="fill" justify="center" padding={[4, 5, 6]} sizing="border">
9
- <Inline gap={useSelect('Gap', WORKSHOP_SPACE_OPTIONS, 0)} onClick={useAction('onClick')}>
9
+ <Inline
10
+ // @ts-expect-error - TODO: fix this
11
+ gap={useSelect('Gap', WORKSHOP_SPACE_OPTIONS, 0)}
12
+ onClick={useAction('onClick')}
13
+ >
10
14
  <Card padding={1} shadow={1}>
11
15
  <Text size={1}>Inline item</Text>
12
16
  </Card>
@@ -4,7 +4,7 @@ import {lazy} from 'react'
4
4
  const scope: WorkshopScope = {
5
5
  name: 'primitives/inline',
6
6
  title: 'Inline',
7
- stories: [{name: 'plain', title: 'Plain', component: lazy(() => import('./plain'))}],
7
+ stories: [{name: 'plain', title: 'Plain', component: lazy(() => import('./Plain'))}],
8
8
  }
9
9
 
10
10
  export default scope
@@ -2,8 +2,8 @@ import {kbd, type RadiusStyleProps, type ResponsiveProp} from '@sanity/ui/css'
2
2
  import type {FontTextSize} from '@sanity/ui/theme'
3
3
 
4
4
  import type {ComponentType, Props} from '../../types'
5
- import {Box, type BoxElementType, type BoxOwnProps} from '../box/box'
6
- import {Text} from '../text/text'
5
+ import {Box, type BoxElementType, type BoxOwnProps} from '../box/Box'
6
+ import {Text} from '../text/Text'
7
7
 
8
8
  /** @public */
9
9
  export const DEFAULT_KBD_ELEMENT = 'kbd'
@@ -4,7 +4,7 @@ import {lazy} from 'react'
4
4
  const scope: WorkshopScope = {
5
5
  name: 'primitives/kbd',
6
6
  title: 'KBD',
7
- stories: [{name: 'plain', title: 'Plain', component: lazy(() => import('./plain'))}],
7
+ stories: [{name: 'plain', title: 'Plain', component: lazy(() => import('./Plain'))}],
8
8
  }
9
9
 
10
10
  export default scope
@@ -44,6 +44,14 @@ export function Label<E extends LabelElementType = typeof DEFAULT_LABEL_ELEMENT>
44
44
  as: Element = DEFAULT_LABEL_ELEMENT,
45
45
  children,
46
46
  className,
47
+ margin,
48
+ marginX,
49
+ marginY,
50
+ marginTop,
51
+ marginRight,
52
+ marginBottom,
53
+ marginLeft,
54
+ maxWidth,
47
55
  muted = false,
48
56
  size = 1,
49
57
  textOverflow: textOverflowProp,
@@ -58,6 +66,14 @@ export function Label<E extends LabelElementType = typeof DEFAULT_LABEL_ELEMENT>
58
66
  className={label({
59
67
  className,
60
68
  align,
69
+ margin,
70
+ marginX,
71
+ marginY,
72
+ marginTop,
73
+ marginRight,
74
+ marginBottom,
75
+ marginLeft,
76
+ maxWidth,
61
77
  muted,
62
78
  size,
63
79
  weight,