@sanity/ui 4.0.0-beta.8 → 4.0.0-next.2

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 (381) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +21 -7
  3. package/dist/_chunks/getScopedTheme.cjs +4043 -0
  4. package/dist/_chunks/getScopedTheme.cjs.map +1 -0
  5. package/dist/_chunks/getScopedTheme.js +3803 -0
  6. package/dist/_chunks/getScopedTheme.js.map +1 -0
  7. package/dist/_chunks/refractor.cjs +18 -0
  8. package/dist/_chunks/refractor.cjs.map +1 -0
  9. package/dist/_chunks/refractor.js +20 -0
  10. package/dist/_chunks/refractor.js.map +1 -0
  11. package/dist/_chunks/rgba.d.cts +929 -0
  12. package/dist/_chunks/rgba.d.cts.map +1 -0
  13. package/dist/_chunks/rgba.d.ts +929 -0
  14. package/dist/_chunks/rgba.d.ts.map +1 -0
  15. package/dist/index.cjs +6243 -0
  16. package/dist/index.cjs.map +1 -0
  17. package/dist/index.d.cts +2332 -0
  18. package/dist/index.d.cts.map +1 -0
  19. package/dist/index.d.ts +1767 -1190
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +6134 -4725
  22. package/dist/index.js.map +1 -1
  23. package/dist/theme.cjs +54 -0
  24. package/dist/theme.cjs.map +1 -0
  25. package/dist/theme.d.cts +278 -0
  26. package/dist/theme.d.cts.map +1 -0
  27. package/dist/theme.d.ts +278 -0
  28. package/dist/theme.d.ts.map +1 -0
  29. package/dist/theme.js +53 -0
  30. package/dist/theme.js.map +1 -0
  31. package/package.json +55 -86
  32. package/dist/_chunks-es/Syntax.js +0 -23
  33. package/dist/_chunks-es/Syntax.js.map +0 -1
  34. package/dist/index.css +0 -1
  35. package/exports/index.css +0 -1
  36. package/exports/index.ts +0 -125
  37. package/src/components/autocomplete/Autocomplete.tsx +0 -665
  38. package/src/components/autocomplete/AutocompleteOption.tsx +0 -42
  39. package/src/components/autocomplete/__workshop__/Async.tsx +0 -162
  40. package/src/components/autocomplete/__workshop__/ConstrainedHeight.tsx +0 -121
  41. package/src/components/autocomplete/__workshop__/Custom.tsx +0 -91
  42. package/src/components/autocomplete/__workshop__/Example.tsx +0 -70
  43. package/src/components/autocomplete/__workshop__/FocusAndBlur.tsx +0 -39
  44. package/src/components/autocomplete/__workshop__/Fullscreen.tsx +0 -307
  45. package/src/components/autocomplete/__workshop__/index.ts +0 -41
  46. package/src/components/autocomplete/__workshop__/mock/apiStore.ts +0 -49
  47. package/src/components/autocomplete/__workshop__/mock/countries.ts +0 -245
  48. package/src/components/autocomplete/__workshop__/types.ts +0 -4
  49. package/src/components/autocomplete/autocompleteReducer.ts +0 -47
  50. package/src/components/autocomplete/constants.ts +0 -28
  51. package/src/components/autocomplete/types.ts +0 -103
  52. package/src/components/breadcrumbs/Breadcrumbs.tsx +0 -163
  53. package/src/components/breadcrumbs/__workshop__/Example.tsx +0 -48
  54. package/src/components/breadcrumbs/__workshop__/index.ts +0 -16
  55. package/src/components/dialog/Dialog.tsx +0 -230
  56. package/src/components/dialog/DialogCard.tsx +0 -233
  57. package/src/components/dialog/DialogContext.ts +0 -21
  58. package/src/components/dialog/DialogProvider.tsx +0 -34
  59. package/src/components/dialog/__workshop__/Activate.tsx +0 -141
  60. package/src/components/dialog/__workshop__/AutoFocus.tsx +0 -29
  61. package/src/components/dialog/__workshop__/Layering.tsx +0 -41
  62. package/src/components/dialog/__workshop__/Nested.tsx +0 -71
  63. package/src/components/dialog/__workshop__/OnScroll.tsx +0 -51
  64. package/src/components/dialog/__workshop__/Panes.tsx +0 -75
  65. package/src/components/dialog/__workshop__/Position.tsx +0 -30
  66. package/src/components/dialog/__workshop__/Props.tsx +0 -93
  67. package/src/components/dialog/__workshop__/Provider.tsx +0 -11
  68. package/src/components/dialog/__workshop__/Wrapped.tsx +0 -76
  69. package/src/components/dialog/__workshop__/index.ts +0 -21
  70. package/src/components/dialog/isTargetWithinScope.ts +0 -14
  71. package/src/components/dialog/types.ts +0 -2
  72. package/src/components/dialog/useDialog.ts +0 -11
  73. package/src/components/hotkeys/Hotkeys.tsx +0 -70
  74. package/src/components/hotkeys/__workshop__/Plain.tsx +0 -9
  75. package/src/components/hotkeys/__workshop__/index.ts +0 -16
  76. package/src/components/menu/Menu.test.tsx +0 -125
  77. package/src/components/menu/Menu.tsx +0 -174
  78. package/src/components/menu/MenuButton.tsx +0 -231
  79. package/src/components/menu/MenuContext.ts +0 -19
  80. package/src/components/menu/MenuDivider.tsx +0 -32
  81. package/src/components/menu/MenuGroup.tsx +0 -240
  82. package/src/components/menu/MenuItem.tsx +0 -153
  83. package/src/components/menu/__workshop__/AsComponent.tsx +0 -45
  84. package/src/components/menu/__workshop__/AvatarMenu.tsx +0 -36
  85. package/src/components/menu/__workshop__/ClosableMenuButton.tsx +0 -47
  86. package/src/components/menu/__workshop__/ConstrainedInBoundary.tsx +0 -133
  87. package/src/components/menu/__workshop__/CustomMenuItem.tsx +0 -47
  88. package/src/components/menu/__workshop__/CustomSelectedState.tsx +0 -35
  89. package/src/components/menu/__workshop__/DataProps.tsx +0 -27
  90. package/src/components/menu/__workshop__/DisableFocusOnClose.tsx +0 -40
  91. package/src/components/menu/__workshop__/Groups.tsx +0 -164
  92. package/src/components/menu/__workshop__/MenuButton.tsx +0 -79
  93. package/src/components/menu/__workshop__/MenuGroupRight.tsx +0 -73
  94. package/src/components/menu/__workshop__/NestedMenu.tsx +0 -22
  95. package/src/components/menu/__workshop__/OnCloseMenuButton.tsx +0 -50
  96. package/src/components/menu/__workshop__/SelectedItem.tsx +0 -69
  97. package/src/components/menu/__workshop__/ShouldFocus.tsx +0 -42
  98. package/src/components/menu/__workshop__/Tones.tsx +0 -19
  99. package/src/components/menu/__workshop__/index.ts +0 -91
  100. package/src/components/menu/helpers.ts +0 -82
  101. package/src/components/menu/useMenu.ts +0 -21
  102. package/src/components/menu/useMenuController.ts +0 -245
  103. package/src/components/tab/Tab.tsx +0 -135
  104. package/src/components/tab/TabList.tsx +0 -157
  105. package/src/components/tab/TabListContext.ts +0 -10
  106. package/src/components/tab/TabPanel.tsx +0 -94
  107. package/src/components/tab/__workshop__/Example.tsx +0 -135
  108. package/src/components/tab/__workshop__/index.ts +0 -16
  109. package/src/components/tab/types.ts +0 -11
  110. package/src/components/toast/Toast.test.tsx +0 -103
  111. package/src/components/toast/Toast.tsx +0 -191
  112. package/src/components/toast/ToastContext.ts +0 -7
  113. package/src/components/toast/ToastLayer.tsx +0 -54
  114. package/src/components/toast/ToastProvider.tsx +0 -127
  115. package/src/components/toast/__workshop__/Hook.tsx +0 -71
  116. package/src/components/toast/__workshop__/Toast.tsx +0 -26
  117. package/src/components/toast/__workshop__/index.ts +0 -21
  118. package/src/components/toast/toastState.ts +0 -6
  119. package/src/components/toast/types.ts +0 -24
  120. package/src/components/toast/useToast.ts +0 -23
  121. package/src/components/tree/Tree.tsx +0 -248
  122. package/src/components/tree/TreeContext.ts +0 -10
  123. package/src/components/tree/TreeGroup.tsx +0 -46
  124. package/src/components/tree/TreeItem.tsx +0 -236
  125. package/src/components/tree/__workshop__/Basic.tsx +0 -108
  126. package/src/components/tree/__workshop__/TabFromElement.tsx +0 -84
  127. package/src/components/tree/__workshop__/basic.perf.ts +0 -19
  128. package/src/components/tree/__workshop__/index.ts +0 -23
  129. package/src/components/tree/helpers.ts +0 -105
  130. package/src/components/tree/types.ts +0 -24
  131. package/src/components/tree/useTree.ts +0 -17
  132. package/src/components/virtualList/VirtualList.tsx +0 -254
  133. package/src/components/virtualList/__workshop__/ChangingProps.tsx +0 -41
  134. package/src/components/virtualList/__workshop__/ElementScroll.tsx +0 -43
  135. package/src/components/virtualList/__workshop__/InfiniteList.tsx +0 -40
  136. package/src/components/virtualList/__workshop__/WindowScrolll.tsx +0 -23
  137. package/src/components/virtualList/__workshop__/index.ts +0 -31
  138. package/src/core/_keys.ts +0 -26
  139. package/src/core/constants.ts +0 -67
  140. package/src/core/getElementRef.ts +0 -29
  141. package/src/core/helpers/animation.ts +0 -26
  142. package/src/core/helpers/element.ts +0 -55
  143. package/src/core/helpers/focus.ts +0 -92
  144. package/src/core/helpers/props.ts +0 -51
  145. package/src/core/helpers/scroll.ts +0 -15
  146. package/src/core/lib/createGlobalScopedContext.ts +0 -39
  147. package/src/core/lib/globalScope.ts +0 -19
  148. package/src/core/lib/isArray.ts +0 -3
  149. package/src/core/lib/isRecord.ts +0 -3
  150. package/src/core/types.ts +0 -57
  151. package/src/hooks/useClickOutsideEvent.test.tsx +0 -114
  152. package/src/hooks/useClickOutsideEvent.ts +0 -66
  153. package/src/hooks/useCustomValidity.ts +0 -13
  154. package/src/hooks/useElementSize.ts +0 -19
  155. package/src/hooks/useGlobalKeyDown.ts +0 -23
  156. package/src/hooks/useMatchMedia.ts +0 -28
  157. package/src/hooks/useMediaIndex/__workshop__/Test.tsx +0 -14
  158. package/src/hooks/useMediaIndex/__workshop__/index.ts +0 -16
  159. package/src/hooks/useMediaIndex/useMediaIndex.test.tsx +0 -21
  160. package/src/hooks/useMediaIndex/useMediaIndex.ts +0 -111
  161. package/src/hooks/useMounted.ts +0 -15
  162. package/src/hooks/usePrefersDark.hydration.test.tsx +0 -56
  163. package/src/hooks/usePrefersDark.test.tsx +0 -20
  164. package/src/hooks/usePrefersDark.ts +0 -16
  165. package/src/hooks/usePrefersReducedMotion.hydration.test.tsx +0 -56
  166. package/src/hooks/usePrefersReducedMotion.test.tsx +0 -20
  167. package/src/hooks/usePrefersReducedMotion.ts +0 -16
  168. package/src/hooks/useResponsiveProp.ts +0 -14
  169. package/src/hooks/useUnique.ts +0 -54
  170. package/src/middleware/origin.ts +0 -47
  171. package/src/observers/elementSize.ts +0 -114
  172. package/src/primitives/_syntax/LazySyntax.tsx +0 -4
  173. package/src/primitives/_syntax/Syntax.tsx +0 -26
  174. package/src/primitives/avatar/Avatar.tsx +0 -145
  175. package/src/primitives/avatar/AvatarCounter.tsx +0 -69
  176. package/src/primitives/avatar/AvatarStack.tsx +0 -77
  177. package/src/primitives/avatar/__workshop__/AsButton.tsx +0 -12
  178. package/src/primitives/avatar/__workshop__/PropsStory.tsx +0 -24
  179. package/src/primitives/avatar/__workshop__/Stack.tsx +0 -27
  180. package/src/primitives/avatar/__workshop__/WithinButton.tsx +0 -51
  181. package/src/primitives/avatar/__workshop__/WithinMenuItem.tsx +0 -52
  182. package/src/primitives/avatar/__workshop__/index.ts +0 -36
  183. package/src/primitives/avatar/types.ts +0 -2
  184. package/src/primitives/badge/Badge.test.tsx +0 -16
  185. package/src/primitives/badge/Badge.tsx +0 -53
  186. package/src/primitives/badge/__workshop__/Props.tsx +0 -27
  187. package/src/primitives/badge/__workshop__/Tones.tsx +0 -15
  188. package/src/primitives/badge/__workshop__/index.ts +0 -26
  189. package/src/primitives/badge/__workshop__/within-button.tsx +0 -36
  190. package/src/primitives/box/Box.tsx +0 -73
  191. package/src/primitives/box/__workshop__/Props.tsx +0 -26
  192. package/src/primitives/box/__workshop__/Responsive.tsx +0 -19
  193. package/src/primitives/box/__workshop__/index.ts +0 -21
  194. package/src/primitives/button/Button.test.tsx +0 -30
  195. package/src/primitives/button/Button.tsx +0 -148
  196. package/src/primitives/button/__workshop__/Custom.tsx +0 -39
  197. package/src/primitives/button/__workshop__/CustomIcons.tsx +0 -37
  198. package/src/primitives/button/__workshop__/DataProps.tsx +0 -18
  199. package/src/primitives/button/__workshop__/Disabled.tsx +0 -43
  200. package/src/primitives/button/__workshop__/MixedChildren.tsx +0 -12
  201. package/src/primitives/button/__workshop__/Props.tsx +0 -60
  202. package/src/primitives/button/__workshop__/Stacked.tsx +0 -60
  203. package/src/primitives/button/__workshop__/Styled1.css.ts +0 -7
  204. package/src/primitives/button/__workshop__/Styled1.tsx +0 -11
  205. package/src/primitives/button/__workshop__/TextOverflow.tsx +0 -17
  206. package/src/primitives/button/__workshop__/UploadButton.tsx +0 -28
  207. package/src/primitives/button/__workshop__/index.ts +0 -61
  208. package/src/primitives/button/types.ts +0 -2
  209. package/src/primitives/card/Card.tsx +0 -124
  210. package/src/primitives/card/CardContext.ts +0 -10
  211. package/src/primitives/card/CardInternalContext.ts +0 -10
  212. package/src/primitives/card/CardInternalProvider.tsx +0 -15
  213. package/src/primitives/card/CardProvider.tsx +0 -16
  214. package/src/primitives/card/__workshop__/AsButton.tsx +0 -103
  215. package/src/primitives/card/__workshop__/AsComponent.tsx +0 -25
  216. package/src/primitives/card/__workshop__/Checkered.tsx +0 -25
  217. package/src/primitives/card/__workshop__/DataProps.tsx +0 -25
  218. package/src/primitives/card/__workshop__/Interactive.tsx +0 -29
  219. package/src/primitives/card/__workshop__/ListNavigation.tsx +0 -78
  220. package/src/primitives/card/__workshop__/Props.tsx +0 -59
  221. package/src/primitives/card/__workshop__/Selected.tsx +0 -62
  222. package/src/primitives/card/__workshop__/Styled.tsx +0 -11
  223. package/src/primitives/card/__workshop__/Tones.tsx +0 -26
  224. package/src/primitives/card/__workshop__/index.ts +0 -21
  225. package/src/primitives/card/types.ts +0 -21
  226. package/src/primitives/card/useCard.ts +0 -20
  227. package/src/primitives/checkbox/Checkbox.tsx +0 -80
  228. package/src/primitives/checkbox/__workshop__/Example.tsx +0 -25
  229. package/src/primitives/checkbox/__workshop__/Props.tsx +0 -35
  230. package/src/primitives/checkbox/__workshop__/ReadOnly.tsx +0 -16
  231. package/src/primitives/checkbox/__workshop__/Tones.tsx +0 -26
  232. package/src/primitives/checkbox/__workshop__/index.ts +0 -15
  233. package/src/primitives/code/Code.tsx +0 -47
  234. package/src/primitives/code/__workshop__/OpticalAlignment.tsx +0 -25
  235. package/src/primitives/code/__workshop__/Props.tsx +0 -20
  236. package/src/primitives/code/__workshop__/index.ts +0 -21
  237. package/src/primitives/container/Container.tsx +0 -43
  238. package/src/primitives/container/__workshop__/Example.tsx +0 -16
  239. package/src/primitives/container/__workshop__/index.ts +0 -16
  240. package/src/primitives/container/types.ts +0 -6
  241. package/src/primitives/flex/Flex.tsx +0 -38
  242. package/src/primitives/flex/__workshop__/Example.tsx +0 -26
  243. package/src/primitives/flex/__workshop__/Gap.tsx +0 -25
  244. package/src/primitives/flex/__workshop__/index.ts +0 -13
  245. package/src/primitives/flex/__workshop__/styles.css.ts +0 -12
  246. package/src/primitives/grid/Grid.tsx +0 -38
  247. package/src/primitives/grid/__workshop__/Responsive.tsx +0 -54
  248. package/src/primitives/grid/__workshop__/index.ts +0 -12
  249. package/src/primitives/heading/Heading.tsx +0 -68
  250. package/src/primitives/heading/__workshop__/OpticalAlignment.tsx +0 -27
  251. package/src/primitives/heading/__workshop__/Plain.tsx +0 -25
  252. package/src/primitives/heading/__workshop__/index.ts +0 -21
  253. package/src/primitives/inline/Inline.tsx +0 -37
  254. package/src/primitives/inline/__workshop__/Plain.tsx +0 -22
  255. package/src/primitives/inline/__workshop__/index.ts +0 -10
  256. package/src/primitives/kbd/Kbd.tsx +0 -36
  257. package/src/primitives/kbd/__workshop__/Plain.tsx +0 -9
  258. package/src/primitives/kbd/__workshop__/index.ts +0 -10
  259. package/src/primitives/label/Label.tsx +0 -67
  260. package/src/primitives/label/__workshop__/OpticalAlignment.tsx +0 -27
  261. package/src/primitives/label/__workshop__/Plain.tsx +0 -27
  262. package/src/primitives/label/__workshop__/index.ts +0 -21
  263. package/src/primitives/layer/Layer.test.tsx +0 -110
  264. package/src/primitives/layer/Layer.tsx +0 -35
  265. package/src/primitives/layer/LayerCard.tsx +0 -90
  266. package/src/primitives/layer/LayerContext.ts +0 -7
  267. package/src/primitives/layer/LayerProvider.tsx +0 -106
  268. package/src/primitives/layer/__workshop__/MultipleRoots.tsx +0 -49
  269. package/src/primitives/layer/__workshop__/Nested.tsx +0 -107
  270. package/src/primitives/layer/__workshop__/ResponsiveZOffset.tsx +0 -17
  271. package/src/primitives/layer/__workshop__/_debug.tsx +0 -17
  272. package/src/primitives/layer/__workshop__/index.ts +0 -26
  273. package/src/primitives/layer/getLayerContext.test.ts +0 -32
  274. package/src/primitives/layer/getLayerContext.ts +0 -21
  275. package/src/primitives/layer/types.ts +0 -9
  276. package/src/primitives/layer/useLayer.ts +0 -24
  277. package/src/primitives/popover/Popover.tsx +0 -291
  278. package/src/primitives/popover/PopoverLayer.tsx +0 -101
  279. package/src/primitives/popover/__workshop__/AlignedStory.tsx +0 -75
  280. package/src/primitives/popover/__workshop__/MarginsStory.tsx +0 -31
  281. package/src/primitives/popover/__workshop__/MatchReferenceWidthStory.tsx +0 -32
  282. package/src/primitives/popover/__workshop__/OpenOnMountStory.tsx +0 -11
  283. package/src/primitives/popover/__workshop__/PlainStory.tsx +0 -67
  284. package/src/primitives/popover/__workshop__/RecursiveStory.tsx +0 -71
  285. package/src/primitives/popover/__workshop__/SidePanelStory.tsx +0 -95
  286. package/src/primitives/popover/__workshop__/TestStory.tsx +0 -97
  287. package/src/primitives/popover/__workshop__/index.ts +0 -56
  288. package/src/primitives/popover/__workshop__/portal-inheritance.tsx +0 -15
  289. package/src/primitives/popover/constants.ts +0 -20
  290. package/src/primitives/popover/floating-ui/size.ts +0 -75
  291. package/src/primitives/popover/types.ts +0 -12
  292. package/src/primitives/popover/useMiddleware.ts +0 -126
  293. package/src/primitives/radio/Radio.tsx +0 -64
  294. package/src/primitives/radio/__workshop__/Example.tsx +0 -63
  295. package/src/primitives/radio/__workshop__/Plain.tsx +0 -28
  296. package/src/primitives/radio/__workshop__/index.ts +0 -13
  297. package/src/primitives/select/Select.tsx +0 -76
  298. package/src/primitives/select/__workshop__/Plain.tsx +0 -37
  299. package/src/primitives/select/__workshop__/ReadOnly.tsx +0 -23
  300. package/src/primitives/select/__workshop__/index.ts +0 -13
  301. package/src/primitives/selectable/Selectable.tsx +0 -48
  302. package/src/primitives/selectable/__workshop__/DataProps.tsx +0 -24
  303. package/src/primitives/selectable/__workshop__/as-link.tsx +0 -13
  304. package/src/primitives/selectable/__workshop__/index.ts +0 -19
  305. package/src/primitives/skeleton/CodeSkeleton.tsx +0 -49
  306. package/src/primitives/skeleton/HeadingSkeleton.tsx +0 -48
  307. package/src/primitives/skeleton/LabelSkeleton.tsx +0 -47
  308. package/src/primitives/skeleton/Skeleton.tsx +0 -70
  309. package/src/primitives/skeleton/TextSkeleton.tsx +0 -49
  310. package/src/primitives/skeleton/__workshop__/Delay.tsx +0 -69
  311. package/src/primitives/skeleton/__workshop__/Skeleton.tsx +0 -63
  312. package/src/primitives/skeleton/__workshop__/index.ts +0 -13
  313. package/src/primitives/spinner/Spinner.tsx +0 -45
  314. package/src/primitives/spinner/SpinnerAnimatedIcon.tsx +0 -14
  315. package/src/primitives/spinner/__workshop__/Props.tsx +0 -13
  316. package/src/primitives/spinner/__workshop__/index.ts +0 -16
  317. package/src/primitives/srOnly/SrOnly.tsx +0 -33
  318. package/src/primitives/stack/Stack.tsx +0 -38
  319. package/src/primitives/stack/__workshop__/Plain.tsx +0 -30
  320. package/src/primitives/stack/__workshop__/index.ts +0 -16
  321. package/src/primitives/switch/Switch.tsx +0 -76
  322. package/src/primitives/switch/__workshop__/Example.tsx +0 -25
  323. package/src/primitives/switch/__workshop__/Props.tsx +0 -23
  324. package/src/primitives/switch/__workshop__/index.ts +0 -13
  325. package/src/primitives/text/InlineCode.tsx +0 -25
  326. package/src/primitives/text/Text.tsx +0 -68
  327. package/src/primitives/text/__workshop__/Example.tsx +0 -26
  328. package/src/primitives/text/__workshop__/OpticalAlignment.tsx +0 -27
  329. package/src/primitives/text/__workshop__/index.ts +0 -26
  330. package/src/primitives/text/__workshop__/inline-code.tsx +0 -13
  331. package/src/primitives/textArea/TextArea.tsx +0 -97
  332. package/src/primitives/textArea/__workshop__/Plain.tsx +0 -46
  333. package/src/primitives/textArea/__workshop__/index.ts +0 -16
  334. package/src/primitives/textInput/TextInput.tsx +0 -279
  335. package/src/primitives/textInput/__workshop__/ClearButton.tsx +0 -32
  336. package/src/primitives/textInput/__workshop__/CustomValidity.tsx +0 -17
  337. package/src/primitives/textInput/__workshop__/Plain.tsx +0 -102
  338. package/src/primitives/textInput/__workshop__/ReadOnly.tsx +0 -14
  339. package/src/primitives/textInput/__workshop__/States.tsx +0 -53
  340. package/src/primitives/textInput/__workshop__/Tones.tsx +0 -40
  341. package/src/primitives/textInput/__workshop__/Typed.tsx +0 -23
  342. package/src/primitives/textInput/__workshop__/index.ts +0 -46
  343. package/src/primitives/tooltip/Tooltip.test.tsx +0 -496
  344. package/src/primitives/tooltip/Tooltip.tsx +0 -546
  345. package/src/primitives/tooltip/TooltipLayer.tsx +0 -72
  346. package/src/primitives/tooltip/__workshop__/CustomPortal.tsx +0 -102
  347. package/src/primitives/tooltip/__workshop__/OverflowingBoundary.tsx +0 -74
  348. package/src/primitives/tooltip/__workshop__/Props.tsx +0 -107
  349. package/src/primitives/tooltip/__workshop__/ResizableBoundary.tsx +0 -91
  350. package/src/primitives/tooltip/__workshop__/index.ts +0 -31
  351. package/src/primitives/tooltip/constants.ts +0 -24
  352. package/src/primitives/tooltip/tooltipDelayGroup/TooltipDelayGroupContext.tsx +0 -13
  353. package/src/primitives/tooltip/tooltipDelayGroup/TooltipDelayGroupProvider.tsx +0 -96
  354. package/src/primitives/tooltip/tooltipDelayGroup/types.ts +0 -7
  355. package/src/primitives/tooltip/tooltipDelayGroup/useTooltipDelayGroup.ts +0 -13
  356. package/src/root/Root.tsx +0 -93
  357. package/src/root/RootProvider.tsx +0 -37
  358. package/src/root/__workshop__/Boundary.tsx +0 -43
  359. package/src/root/__workshop__/index.ts +0 -24
  360. package/src/root/__workshop__/primitives.tsx +0 -49
  361. package/src/root/__workshop__/tone-inheritance.tsx +0 -65
  362. package/src/utils/ErrorBoundary.tsx +0 -50
  363. package/src/utils/boundaryElement/BoundaryElementContext.ts +0 -7
  364. package/src/utils/boundaryElement/BoundaryElementProvider.tsx +0 -16
  365. package/src/utils/boundaryElement/__workshop__/Plain.tsx +0 -49
  366. package/src/utils/boundaryElement/__workshop__/index.ts +0 -16
  367. package/src/utils/boundaryElement/types.ts +0 -2
  368. package/src/utils/boundaryElement/useBoundaryElement.ts +0 -12
  369. package/src/utils/elementQuery/ElementQuery.tsx +0 -75
  370. package/src/utils/elementQuery/__workshop__/CustomMedia.tsx +0 -19
  371. package/src/utils/elementQuery/__workshop__/index.ts +0 -16
  372. package/src/utils/elementQuery/__workshop__/styles.css.ts +0 -31
  373. package/src/utils/elementQuery/helpers.ts +0 -27
  374. package/src/utils/portal/Portal.test.tsx +0 -105
  375. package/src/utils/portal/Portal.tsx +0 -42
  376. package/src/utils/portal/PortalContext.ts +0 -37
  377. package/src/utils/portal/PortalProvider.tsx +0 -38
  378. package/src/utils/portal/__workshop__/Named.tsx +0 -69
  379. package/src/utils/portal/__workshop__/index.ts +0 -16
  380. package/src/utils/portal/types.ts +0 -7
  381. package/src/utils/portal/usePortal.ts +0 -30
@@ -1,307 +0,0 @@
1
- import {CloseIcon, SearchIcon} from '@sanity/icons'
2
- import {
3
- Autocomplete,
4
- Badge,
5
- type BaseAutocompleteOption,
6
- Box,
7
- Button,
8
- Card,
9
- Flex,
10
- Layer,
11
- Portal,
12
- PortalProvider,
13
- Selectable,
14
- Stack,
15
- Text,
16
- TextSkeleton,
17
- Tooltip,
18
- useToast,
19
- } from '@sanity/ui'
20
- import {useBoolean} from '@sanity/ui-workshop'
21
- import {startTransition, useCallback, useEffect, useMemo, useRef, useState} from 'react'
22
-
23
- import {countriesStore} from './mock/apiStore'
24
-
25
- export default function FullscreenStory(): React.JSX.Element {
26
- const error = useBoolean('Error', false)
27
-
28
- const {push: pushToast} = useToast()
29
- const [portalElement, setPortalElement] = useState<HTMLDivElement | null>(null)
30
- const [closeSearchButtonElement, setCloseSearchButtonElement] =
31
- useState<HTMLButtonElement | null>(null)
32
- const [options, setOptions] = useState<BaseAutocompleteOption[]>([])
33
- const searchRef = useRef<{cancel: () => void} | null>(null)
34
- const fetchRef = useRef<{cancel: () => void} | null>(null)
35
- const openSearchButtonElementRef = useRef<HTMLButtonElement | null>(null)
36
- const [loading, setLoading] = useState(false)
37
- const [loadingCurrentRef, setLoadingCurrentRef] = useState(false)
38
- const [open, setOpen] = useState(false)
39
- const [optionTitle, setOptionTitle] = useState<string | null>(null)
40
- const inputRef = useRef<HTMLInputElement>(null)
41
- const [query, setQuery] = useState<string | null>(null)
42
- const [value, setValue] = useState<string>('')
43
-
44
- const relatedElements = useMemo(
45
- () => [closeSearchButtonElement].filter(Boolean) as HTMLElement[],
46
- [closeSearchButtonElement],
47
- )
48
-
49
- const search = useCallback((query: string | null) => {
50
- if (searchRef.current) searchRef.current.cancel()
51
- searchRef.current = countriesStore.search(query || '', setOptions, setLoading)
52
- }, [])
53
-
54
- const filterOption = useCallback(() => true, [])
55
-
56
- const handleClose = useCallback(() => setOpen(false), [])
57
-
58
- const handleQueryChange = useCallback(
59
- (query: string | null) => {
60
- if (query !== null) search(query)
61
- setQuery(query)
62
- },
63
- [search],
64
- )
65
-
66
- const handleOpen = useCallback(() => {
67
- setValue('')
68
- setOpen(true)
69
- }, [])
70
-
71
- const handleSelect = useCallback(
72
- (v: string) => {
73
- setOpen(false)
74
- setValue(v)
75
- pushToast({status: 'info', title: `Selected “${v}”`})
76
- },
77
- [pushToast],
78
- )
79
-
80
- const renderOption = useCallback((option: BaseAutocompleteOption) => {
81
- return <AsyncOption documentId={option.value} />
82
- }, [])
83
-
84
- const renderPopover = useCallback(
85
- (
86
- props: {
87
- content: React.ReactNode
88
- hidden: boolean
89
- onMouseEnter: () => void
90
- onMouseLeave: () => void
91
- },
92
- ref: React.Ref<HTMLDivElement>,
93
- ) => {
94
- if (!props.hidden && error) {
95
- return (
96
- <Portal>
97
- <Card
98
- inset={0}
99
- padding={4}
100
- position="absolute"
101
- tone="critical"
102
- onMouseEnter={props.onMouseEnter}
103
- onMouseLeave={props.onMouseLeave}
104
- >
105
- <Flex align="center" height="fill" justify="center">
106
- <Text align="center" muted>
107
- Something went wrong while searching
108
- </Text>
109
- </Flex>
110
- </Card>
111
- </Portal>
112
- )
113
- }
114
-
115
- if (!props.hidden && query && !loading && options.length === 0) {
116
- return (
117
- <Portal>
118
- <Card
119
- inset={0}
120
- padding={4}
121
- position="absolute"
122
- // shadow={1}
123
- tone="default"
124
- // style={{position: 'absolute', inset: '0 0 0 0'}}
125
- onMouseEnter={props.onMouseEnter}
126
- onMouseLeave={props.onMouseLeave}
127
- >
128
- <Flex align="center" height="fill" justify="center">
129
- <Text align="center" muted size={1}>
130
- No results for <strong>‘{query}’</strong>
131
- </Text>
132
- </Flex>
133
- </Card>
134
- </Portal>
135
- )
136
- }
137
-
138
- return (
139
- <Portal>
140
- <Card
141
- ref={ref}
142
- hidden={props.hidden}
143
- tone="default"
144
- onMouseEnter={props.onMouseEnter}
145
- onMouseLeave={props.onMouseLeave}
146
- >
147
- {props.content}
148
- </Card>
149
- </Portal>
150
- )
151
- },
152
- [error, loading, options, query],
153
- )
154
-
155
- const renderValue = useCallback(() => {
156
- if (loadingCurrentRef) {
157
- return 'Loading…'
158
- }
159
-
160
- return optionTitle || ''
161
- }, [loadingCurrentRef, optionTitle])
162
-
163
- useEffect(() => {
164
- if (open) inputRef.current?.focus()
165
- if (!open) openSearchButtonElementRef.current?.focus()
166
- }, [open])
167
-
168
- useEffect(() => {
169
- if (fetchRef.current) fetchRef.current.cancel()
170
-
171
- if (value) {
172
- fetchRef.current = countriesStore.fetchDocument(
173
- value,
174
- (data) => setOptionTitle(data?.title || null),
175
- setLoadingCurrentRef,
176
- )
177
- } else {
178
- startTransition(() => {
179
- setOptionTitle(null)
180
- setLoadingCurrentRef(false)
181
- })
182
- }
183
- }, [value])
184
-
185
- return (
186
- <Card display="flex" flexDirection="column" minHeight="full">
187
- <PortalProvider element={portalElement}>
188
- <Card hidden={open} padding={2}>
189
- <Flex align="center">
190
- <Box flex={1} />
191
- <Tooltip placement="bottom" text="Open search">
192
- <Button
193
- ref={openSearchButtonElementRef}
194
- aria-label="Open search"
195
- icon={SearchIcon}
196
- mode="bleed"
197
- onClick={handleOpen}
198
- />
199
- </Tooltip>
200
- </Flex>
201
- </Card>
202
- <Layer hidden={!open} style={{position: 'sticky', top: 0}}>
203
- <Card display="flex" gap={2} padding={2} shadow={1}>
204
- <Autocomplete
205
- ref={inputRef}
206
- border={false}
207
- filterOption={filterOption}
208
- flex={1}
209
- fontSize={1}
210
- icon={SearchIcon}
211
- id="fullsceen-example"
212
- listBox={{padding: 2}}
213
- loading={loading}
214
- options={options}
215
- placeholder="Search"
216
- radius={2}
217
- relatedElements={relatedElements}
218
- renderOption={renderOption}
219
- renderPopover={renderPopover}
220
- renderValue={renderValue}
221
- value={value}
222
- onQueryChange={handleQueryChange}
223
- onSelect={handleSelect}
224
- />
225
-
226
- <Tooltip placement="bottom" text="Close search">
227
- <Button
228
- ref={setCloseSearchButtonElement}
229
- aria-label="Close search"
230
- flex="none"
231
- icon={CloseIcon}
232
- mode="bleed"
233
- onClick={handleClose}
234
- />
235
- </Tooltip>
236
- </Card>
237
- </Layer>
238
- <Card ref={setPortalElement} flex={1} hidden={!open} position="relative" />
239
- <Box flex={1} hidden={open} padding={4}>
240
- <Text size={1} weight="medium">
241
- Welcome to this app
242
- </Text>
243
- </Box>
244
- </PortalProvider>
245
- </Card>
246
- )
247
- }
248
-
249
- function AsyncOption(props: {
250
- documentId: string
251
- disabled?: boolean
252
- selected?: boolean
253
- tabIndex?: number
254
- }) {
255
- const {documentId, disabled, selected, tabIndex} = props
256
- const [data, setData] = useState<{code: string; title: string} | null>(null)
257
- const [loading, setLoading] = useState(false)
258
- const ref = useRef<{cancel: () => void} | null>(null)
259
-
260
- useEffect(() => {
261
- if (ref.current) ref.current.cancel()
262
- ref.current = countriesStore.fetchDocument(documentId, setData, setLoading)
263
- }, [documentId])
264
-
265
- return (
266
- <Selectable
267
- aria-label={data?.title}
268
- as="button"
269
- disabled={disabled}
270
- padding={2}
271
- radius={3}
272
- selected={selected}
273
- style={{lineHeight: 0}}
274
- tabIndex={tabIndex}
275
- >
276
- <Flex align="center">
277
- <Box muted radius={2} style={{width: 35, height: 35}} />
278
- <Box flex={1} marginLeft={3}>
279
- <Stack gap={2}>
280
- {loading && (
281
- <>
282
- <TextSkeleton style={{maxWidth: 200}} />
283
- <TextSkeleton size={1} style={{maxWidth: 120}} />
284
- </>
285
- )}
286
- {!loading && (
287
- <>
288
- <Text muted={!data} size={1} textOverflow="ellipsis" weight="medium">
289
- {data ? data.title : <>Untitled</>}
290
- </Text>
291
- <Text muted size={1}>
292
- {data?.code}
293
- </Text>
294
- </>
295
- )}
296
- </Stack>
297
- </Box>
298
- <Box paddingX={1}>
299
- {/* <Label muted size={0}>
300
- Country
301
- </Label> */}
302
- <Badge>Country</Badge>
303
- </Box>
304
- </Flex>
305
- </Selectable>
306
- )
307
- }
@@ -1,41 +0,0 @@
1
- import type {WorkshopScope} from '@sanity/ui-workshop'
2
- import {lazy} from 'react'
3
-
4
- const scope: WorkshopScope = {
5
- name: 'components/autocomplete',
6
- title: 'Autocomplete',
7
- stories: [
8
- {
9
- name: 'example',
10
- title: 'Example',
11
- component: lazy(() => import('./Example')),
12
- },
13
- {
14
- name: 'custom',
15
- title: 'Custom',
16
- component: lazy(() => import('./Custom')),
17
- },
18
- {
19
- name: 'async',
20
- title: 'Async',
21
- component: lazy(() => import('./Async')),
22
- },
23
- {
24
- name: 'constrained-height',
25
- title: 'Constrained height',
26
- component: lazy(() => import('./ConstrainedHeight')),
27
- },
28
- {
29
- name: 'focus-and-blur',
30
- title: 'Focus and blur',
31
- component: lazy(() => import('./FocusAndBlur')),
32
- },
33
- {
34
- name: 'fullscreen',
35
- title: 'Fullscreen',
36
- component: lazy(() => import('./Fullscreen')),
37
- },
38
- ],
39
- }
40
-
41
- export default scope
@@ -1,49 +0,0 @@
1
- import {countries} from './countries'
2
-
3
- export const countriesStore = {
4
- search(
5
- query: string,
6
- onResults: (results: {value: string}[]) => void,
7
- onLoading: (flag: boolean) => void,
8
- ): {cancel: () => void} {
9
- const fakeDelay = 350 + Math.random() * 800
10
-
11
- onLoading(true)
12
-
13
- const timeout = setTimeout(() => {
14
- const results: {value: string}[] = countries
15
- .filter((d) => d.name.toLowerCase().includes(query.toLowerCase()))
16
- .map((d) => ({value: d.code}))
17
-
18
- onResults(results)
19
- onLoading(false)
20
- }, fakeDelay)
21
-
22
- return {
23
- cancel: () => clearTimeout(timeout),
24
- }
25
- },
26
-
27
- fetchDocument(
28
- id: string,
29
- onResult: (value: {code: string; title: string} | null) => void,
30
- onLoading: (flag: boolean) => void,
31
- ): {cancel: () => void} {
32
- const fakeDelay = 50 + Math.random() * 400
33
-
34
- onLoading(true)
35
-
36
- const timeout = setTimeout(() => {
37
- const rec = countries.find((c) => c.code === id)
38
-
39
- const doc = rec && {code: rec.code, title: rec.name}
40
-
41
- onResult(doc || null)
42
- onLoading(false)
43
- }, fakeDelay)
44
-
45
- return {
46
- cancel: () => clearTimeout(timeout),
47
- }
48
- },
49
- }
@@ -1,245 +0,0 @@
1
- export const countries: {name: string; code: string}[] = [
2
- {name: 'Afghanistan', code: 'AF'},
3
- {name: 'Åland Islands', code: 'AX'},
4
- {name: 'Albania', code: 'AL'},
5
- {name: 'Algeria', code: 'DZ'},
6
- {name: 'American Samoa', code: 'AS'},
7
- {name: 'Andorra', code: 'AD'},
8
- {name: 'Angola', code: 'AO'},
9
- {name: 'Anguilla', code: 'AI'},
10
- {name: 'Antarctica', code: 'AQ'},
11
- {name: 'Antigua and Barbuda', code: 'AG'},
12
- {name: 'Argentina', code: 'AR'},
13
- {name: 'Armenia', code: 'AM'},
14
- {name: 'Aruba', code: 'AW'},
15
- {name: 'Australia', code: 'AU'},
16
- {name: 'Austria', code: 'AT'},
17
- {name: 'Azerbaijan', code: 'AZ'},
18
- {name: 'Bahamas', code: 'BS'},
19
- {name: 'Bahrain', code: 'BH'},
20
- {name: 'Bangladesh', code: 'BD'},
21
- {name: 'Barbados', code: 'BB'},
22
- {name: 'Belarus', code: 'BY'},
23
- {name: 'Belgium', code: 'BE'},
24
- {name: 'Belize', code: 'BZ'},
25
- {name: 'Benin', code: 'BJ'},
26
- {name: 'Bermuda', code: 'BM'},
27
- {name: 'Bhutan', code: 'BT'},
28
- {name: 'Bolivia', code: 'BO'},
29
- {name: 'Bosnia and Herzegovina', code: 'BA'},
30
- {name: 'Botswana', code: 'BW'},
31
- {name: 'Bouvet Island', code: 'BV'},
32
- {name: 'Brazil', code: 'BR'},
33
- {name: 'British Indian Ocean Territory', code: 'IO'},
34
- {name: 'Brunei Darussalam', code: 'BN'},
35
- {name: 'Bulgaria', code: 'BG'},
36
- {name: 'Burkina Faso', code: 'BF'},
37
- {name: 'Burundi', code: 'BI'},
38
- {name: 'Cambodia', code: 'KH'},
39
- {name: 'Cameroon', code: 'CM'},
40
- {name: 'Canada', code: 'CA'},
41
- {name: 'Cape Verde', code: 'CV'},
42
- {name: 'Cayman Islands', code: 'KY'},
43
- {name: 'Central African Republic', code: 'CF'},
44
- {name: 'Chad', code: 'TD'},
45
- {name: 'Chile', code: 'CL'},
46
- {name: 'China', code: 'CN'},
47
- {name: 'Christmas Island', code: 'CX'},
48
- {name: 'Cocos (Keeling) Islands', code: 'CC'},
49
- {name: 'Colombia', code: 'CO'},
50
- {name: 'Comoros', code: 'KM'},
51
- {name: 'Congo', code: 'CG'},
52
- {name: 'Congo, The Democratic Republic of the', code: 'CD'},
53
- {name: 'Cook Islands', code: 'CK'},
54
- {name: 'Costa Rica', code: 'CR'},
55
- {name: "Cote D'Ivoire", code: 'CI'},
56
- {name: 'Croatia', code: 'HR'},
57
- {name: 'Cuba', code: 'CU'},
58
- {name: 'Cyprus', code: 'CY'},
59
- {name: 'Czech Republic', code: 'CZ'},
60
- {name: 'Denmark', code: 'DK'},
61
- {name: 'Djibouti', code: 'DJ'},
62
- {name: 'Dominica', code: 'DM'},
63
- {name: 'Dominican Republic', code: 'DO'},
64
- {name: 'Ecuador', code: 'EC'},
65
- {name: 'Egypt', code: 'EG'},
66
- {name: 'El Salvador', code: 'SV'},
67
- {name: 'Equatorial Guinea', code: 'GQ'},
68
- {name: 'Eritrea', code: 'ER'},
69
- {name: 'Estonia', code: 'EE'},
70
- {name: 'Ethiopia', code: 'ET'},
71
- {name: 'Falkland Islands (Malvinas)', code: 'FK'},
72
- {name: 'Faroe Islands', code: 'FO'},
73
- {name: 'Fiji', code: 'FJ'},
74
- {name: 'Finland', code: 'FI'},
75
- {name: 'France', code: 'FR'},
76
- {name: 'French Guiana', code: 'GF'},
77
- {name: 'French Polynesia', code: 'PF'},
78
- {name: 'French Southern Territories', code: 'TF'},
79
- {name: 'Gabon', code: 'GA'},
80
- {name: 'Gambia', code: 'GM'},
81
- {name: 'Georgia', code: 'GE'},
82
- {name: 'Germany', code: 'DE'},
83
- {name: 'Ghana', code: 'GH'},
84
- {name: 'Gibraltar', code: 'GI'},
85
- {name: 'Greece', code: 'GR'},
86
- {name: 'Greenland', code: 'GL'},
87
- {name: 'Grenada', code: 'GD'},
88
- {name: 'Guadeloupe', code: 'GP'},
89
- {name: 'Guam', code: 'GU'},
90
- {name: 'Guatemala', code: 'GT'},
91
- {name: 'Guernsey', code: 'GG'},
92
- {name: 'Guinea', code: 'GN'},
93
- {name: 'Guinea-Bissau', code: 'GW'},
94
- {name: 'Guyana', code: 'GY'},
95
- {name: 'Haiti', code: 'HT'},
96
- {name: 'Heard Island and Mcdonald Islands', code: 'HM'},
97
- {name: 'Holy See (Vatican City State)', code: 'VA'},
98
- {name: 'Honduras', code: 'HN'},
99
- {name: 'Hong Kong', code: 'HK'},
100
- {name: 'Hungary', code: 'HU'},
101
- {name: 'Iceland', code: 'IS'},
102
- {name: 'India', code: 'IN'},
103
- {name: 'Indonesia', code: 'ID'},
104
- {name: 'Iran, Islamic Republic Of', code: 'IR'},
105
- {name: 'Iraq', code: 'IQ'},
106
- {name: 'Ireland', code: 'IE'},
107
- {name: 'Isle of Man', code: 'IM'},
108
- {name: 'Israel', code: 'IL'},
109
- {name: 'Italy', code: 'IT'},
110
- {name: 'Jamaica', code: 'JM'},
111
- {name: 'Japan', code: 'JP'},
112
- {name: 'Jersey', code: 'JE'},
113
- {name: 'Jordan', code: 'JO'},
114
- {name: 'Kazakhstan', code: 'KZ'},
115
- {name: 'Kenya', code: 'KE'},
116
- {name: 'Kiribati', code: 'KI'},
117
- {name: "Korea, Democratic People'S Republic of", code: 'KP'},
118
- {name: 'Korea, Republic of', code: 'KR'},
119
- {name: 'Kuwait', code: 'KW'},
120
- {name: 'Kyrgyzstan', code: 'KG'},
121
- {name: "Lao People'S Democratic Republic", code: 'LA'},
122
- {name: 'Latvia', code: 'LV'},
123
- {name: 'Lebanon', code: 'LB'},
124
- {name: 'Lesotho', code: 'LS'},
125
- {name: 'Liberia', code: 'LR'},
126
- {name: 'Libyan Arab Jamahiriya', code: 'LY'},
127
- {name: 'Liechtenstein', code: 'LI'},
128
- {name: 'Lithuania', code: 'LT'},
129
- {name: 'Luxembourg', code: 'LU'},
130
- {name: 'Macao', code: 'MO'},
131
- {name: 'Macedonia, The Former Yugoslav Republic of', code: 'MK'},
132
- {name: 'Madagascar', code: 'MG'},
133
- {name: 'Malawi', code: 'MW'},
134
- {name: 'Malaysia', code: 'MY'},
135
- {name: 'Maldives', code: 'MV'},
136
- {name: 'Mali', code: 'ML'},
137
- {name: 'Malta', code: 'MT'},
138
- {name: 'Marshall Islands', code: 'MH'},
139
- {name: 'Martinique', code: 'MQ'},
140
- {name: 'Mauritania', code: 'MR'},
141
- {name: 'Mauritius', code: 'MU'},
142
- {name: 'Mayotte', code: 'YT'},
143
- {name: 'Mexico', code: 'MX'},
144
- {name: 'Micronesia, Federated States of', code: 'FM'},
145
- {name: 'Moldova, Republic of', code: 'MD'},
146
- {name: 'Monaco', code: 'MC'},
147
- {name: 'Mongolia', code: 'MN'},
148
- {name: 'Montserrat', code: 'MS'},
149
- {name: 'Morocco', code: 'MA'},
150
- {name: 'Mozambique', code: 'MZ'},
151
- {name: 'Myanmar', code: 'MM'},
152
- {name: 'Namibia', code: 'NA'},
153
- {name: 'Nauru', code: 'NR'},
154
- {name: 'Nepal', code: 'NP'},
155
- {name: 'Netherlands', code: 'NL'},
156
- {name: 'Netherlands Antilles', code: 'AN'},
157
- {name: 'New Caledonia', code: 'NC'},
158
- {name: 'New Zealand', code: 'NZ'},
159
- {name: 'Nicaragua', code: 'NI'},
160
- {name: 'Niger', code: 'NE'},
161
- {name: 'Nigeria', code: 'NG'},
162
- {name: 'Niue', code: 'NU'},
163
- {name: 'Norfolk Island', code: 'NF'},
164
- {name: 'Northern Mariana Islands', code: 'MP'},
165
- {name: 'Norway', code: 'NO'},
166
- {name: 'Oman', code: 'OM'},
167
- {name: 'Pakistan', code: 'PK'},
168
- {name: 'Palau', code: 'PW'},
169
- {name: 'Palestinian Territory, Occupied', code: 'PS'},
170
- {name: 'Panama', code: 'PA'},
171
- {name: 'Papua New Guinea', code: 'PG'},
172
- {name: 'Paraguay', code: 'PY'},
173
- {name: 'Peru', code: 'PE'},
174
- {name: 'Philippines', code: 'PH'},
175
- {name: 'Pitcairn', code: 'PN'},
176
- {name: 'Poland', code: 'PL'},
177
- {name: 'Portugal', code: 'PT'},
178
- {name: 'Puerto Rico', code: 'PR'},
179
- {name: 'Qatar', code: 'QA'},
180
- {name: 'Reunion', code: 'RE'},
181
- {name: 'Romania', code: 'RO'},
182
- {name: 'Russian Federation', code: 'RU'},
183
- {name: 'RWANDA', code: 'RW'},
184
- {name: 'Saint Helena', code: 'SH'},
185
- {name: 'Saint Kitts and Nevis', code: 'KN'},
186
- {name: 'Saint Lucia', code: 'LC'},
187
- {name: 'Saint Pierre and Miquelon', code: 'PM'},
188
- {name: 'Saint Vincent and the Grenadines', code: 'VC'},
189
- {name: 'Samoa', code: 'WS'},
190
- {name: 'San Marino', code: 'SM'},
191
- {name: 'Sao Tome and Principe', code: 'ST'},
192
- {name: 'Saudi Arabia', code: 'SA'},
193
- {name: 'Senegal', code: 'SN'},
194
- {name: 'Serbia and Montenegro', code: 'CS'},
195
- {name: 'Seychelles', code: 'SC'},
196
- {name: 'Sierra Leone', code: 'SL'},
197
- {name: 'Singapore', code: 'SG'},
198
- {name: 'Slovakia', code: 'SK'},
199
- {name: 'Slovenia', code: 'SI'},
200
- {name: 'Solomon Islands', code: 'SB'},
201
- {name: 'Somalia', code: 'SO'},
202
- {name: 'South Africa', code: 'ZA'},
203
- {name: 'South Georgia and the South Sandwich Islands', code: 'GS'},
204
- {name: 'Spain', code: 'ES'},
205
- {name: 'Sri Lanka', code: 'LK'},
206
- {name: 'Sudan', code: 'SD'},
207
- {name: 'Suriname', code: 'SR'},
208
- {name: 'Svalbard and Jan Mayen', code: 'SJ'},
209
- {name: 'Swaziland', code: 'SZ'},
210
- {name: 'Sweden', code: 'SE'},
211
- {name: 'Switzerland', code: 'CH'},
212
- {name: 'Syrian Arab Republic', code: 'SY'},
213
- {name: 'Taiwan, Province of China', code: 'TW'},
214
- {name: 'Tajikistan', code: 'TJ'},
215
- {name: 'Tanzania, United Republic of', code: 'TZ'},
216
- {name: 'Thailand', code: 'TH'},
217
- {name: 'Timor-Leste', code: 'TL'},
218
- {name: 'Togo', code: 'TG'},
219
- {name: 'Tokelau', code: 'TK'},
220
- {name: 'Tonga', code: 'TO'},
221
- {name: 'Trinidad and Tobago', code: 'TT'},
222
- {name: 'Tunisia', code: 'TN'},
223
- {name: 'Turkey', code: 'TR'},
224
- {name: 'Turkmenistan', code: 'TM'},
225
- {name: 'Turks and Caicos Islands', code: 'TC'},
226
- {name: 'Tuvalu', code: 'TV'},
227
- {name: 'Uganda', code: 'UG'},
228
- {name: 'Ukraine', code: 'UA'},
229
- {name: 'United Arab Emirates', code: 'AE'},
230
- {name: 'United Kingdom', code: 'GB'},
231
- {name: 'United States', code: 'US'},
232
- {name: 'United States Minor Outlying Islands', code: 'UM'},
233
- {name: 'Uruguay', code: 'UY'},
234
- {name: 'Uzbekistan', code: 'UZ'},
235
- {name: 'Vanuatu', code: 'VU'},
236
- {name: 'Venezuela', code: 'VE'},
237
- {name: 'Viet Nam', code: 'VN'},
238
- {name: 'Virgin Islands, British', code: 'VG'},
239
- {name: 'Virgin Islands, U.S.', code: 'VI'},
240
- {name: 'Wallis and Futuna', code: 'WF'},
241
- {name: 'Western Sahara', code: 'EH'},
242
- {name: 'Yemen', code: 'YE'},
243
- {name: 'Zambia', code: 'ZM'},
244
- {name: 'Zimbabwe', code: 'ZW'},
245
- ]
@@ -1,4 +0,0 @@
1
- export interface ExampleOption {
2
- value: string
3
- title: string
4
- }
@@ -1,47 +0,0 @@
1
- import type {AutocompleteMsg, AutocompleteState} from './types'
2
-
3
- /**
4
- * @internal
5
- */
6
- export function autocompleteReducer(
7
- state: AutocompleteState,
8
- msg: AutocompleteMsg,
9
- ): AutocompleteState {
10
- if (msg.type === 'input/change') {
11
- return {...state, activeValue: null, focused: true, query: msg.query}
12
- }
13
-
14
- if (msg.type === 'input/focus') {
15
- return {...state, focused: true}
16
- }
17
-
18
- if (msg.type === 'root/blur') {
19
- return {...state, focused: false, query: null}
20
- }
21
-
22
- if (msg.type === 'root/clear') {
23
- return {...state, activeValue: null, query: null, value: null}
24
- }
25
-
26
- if (msg.type === 'root/escape') {
27
- return {...state, focused: false, query: null}
28
- }
29
-
30
- if (msg.type === 'root/open') {
31
- return {...state, query: state.query || msg.query}
32
- }
33
-
34
- if (msg.type === 'root/setActiveValue') {
35
- return {...state, activeValue: msg.value, listFocused: msg.listFocused || state.listFocused}
36
- }
37
-
38
- if (msg.type === 'root/setListFocused') {
39
- return {...state, listFocused: msg.listFocused}
40
- }
41
-
42
- if (msg.type === 'value/change') {
43
- return {...state, activeValue: msg.value, query: null, value: msg.value}
44
- }
45
-
46
- return state
47
- }