@plitzi/sdk-elements 0.37.1 → 0.37.3

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 (261) hide show
  1. package/CHANGELOG.md +1306 -0
  2. package/dist/Component/ComponentProvider.d.ts +1 -1
  3. package/dist/Component/ComponentProvider.mjs +10 -5
  4. package/dist/Element/JsxManager.d.ts +1 -1
  5. package/dist/Element/JsxManager.mjs +1 -0
  6. package/dist/Element/LayoutBody.d.ts +1 -1
  7. package/dist/Element/PluginManager.d.ts +1 -1
  8. package/dist/Element/PluginRemote.d.ts +3 -1
  9. package/dist/Element/PluginRemote.mjs +9 -9
  10. package/dist/Element/ReplicaProvider.d.ts +1 -1
  11. package/dist/Element/helpers/elementConstants.mjs +28 -0
  12. package/dist/Element/helpers/elementUtils.mjs +1 -1
  13. package/dist/Element/helpers/loadComponent.d.ts +6 -1
  14. package/dist/Element/helpers/loadComponent.mjs +7 -7
  15. package/dist/Element/helpers/pluginSelector.d.ts +1 -1
  16. package/dist/Element/helpers/pluginSelector.mjs +1 -0
  17. package/dist/Element/hocs/withElement.d.ts +1 -1
  18. package/dist/Element/hooks/useElementDataSource.mjs +23 -16
  19. package/dist/Element/hooks/useElementInternal.mjs +60 -52
  20. package/dist/Element/hooks/useInternalClassName.mjs +19 -18
  21. package/dist/Element/hooks/useKeyTriggers.d.ts +18 -0
  22. package/dist/Element/hooks/useKeyTriggers.mjs +36 -0
  23. package/dist/Element/hooks/useRootElementInteractions.mjs +70 -55
  24. package/dist/Element/hooks/useRscData.mjs +20 -15
  25. package/dist/components/ElementAdvancedEditor.d.ts +1 -1
  26. package/dist/dataSource/GlobalSources.mjs +115 -79
  27. package/dist/dataSource/getSourcesByElementId.mjs +2 -2
  28. package/dist/elements/advanced/BlockHtml/BlockHtml.d.ts +2 -2
  29. package/dist/elements/advanced/BlockHtml/Settings.d.ts +1 -1
  30. package/dist/elements/advanced/BlockHtml/index.d.ts +1 -1
  31. package/dist/elements/advanced/BlockJsx/BlockJsx.d.ts +2 -2
  32. package/dist/elements/advanced/BlockJsx/BlockJsx.mjs +1 -1
  33. package/dist/elements/advanced/BlockJsx/Settings.d.ts +1 -1
  34. package/dist/elements/advanced/BlockJsx/index.d.ts +1 -1
  35. package/dist/elements/advanced/Custom/Custom.d.ts +2 -2
  36. package/dist/elements/advanced/Custom/Settings.d.ts +1 -1
  37. package/dist/elements/advanced/Custom/index.d.ts +1 -1
  38. package/dist/elements/advanced/NodeHtml/declaration.d.ts +1 -1
  39. package/dist/elements/advanced/NodeHtml/index.d.ts +2 -2
  40. package/dist/elements/advanced/PlitziSdk/Settings.d.ts +1 -1
  41. package/dist/elements/advanced/Reference/Reference.d.ts +2 -2
  42. package/dist/elements/advanced/Reference/Settings.d.ts +1 -1
  43. package/dist/elements/advanced/Reference/index.d.ts +1 -1
  44. package/dist/elements/basic/Button/Button.d.ts +11 -4
  45. package/dist/elements/basic/Button/Button.mjs +5 -5
  46. package/dist/elements/basic/Button/Settings.d.ts +2 -1
  47. package/dist/elements/basic/Button/Settings.mjs +14 -7
  48. package/dist/elements/basic/Button/declaration.d.ts +8 -3
  49. package/dist/elements/basic/Button/declaration.mjs +14 -6
  50. package/dist/elements/basic/Button/index.d.ts +9 -4
  51. package/dist/elements/basic/Dropdown/Dropdown.d.ts +2 -2
  52. package/dist/elements/basic/Dropdown/Dropdown.mjs +48 -39
  53. package/dist/elements/basic/Dropdown/DropdownPopup/DropdownPopup.d.ts +2 -2
  54. package/dist/elements/basic/Dropdown/DropdownPopup/Settings.d.ts +1 -1
  55. package/dist/elements/basic/Dropdown/DropdownPopup/declaration.d.ts +2 -1
  56. package/dist/elements/basic/Dropdown/DropdownPopup/declaration.mjs +2 -1
  57. package/dist/elements/basic/Dropdown/DropdownPopup/index.d.ts +3 -2
  58. package/dist/elements/basic/Dropdown/Settings.d.ts +1 -1
  59. package/dist/elements/basic/Dropdown/declaration.d.ts +3 -0
  60. package/dist/elements/basic/Dropdown/declaration.mjs +9 -3
  61. package/dist/elements/basic/Dropdown/index.d.ts +7 -3
  62. package/dist/elements/basic/Dropdown/useDropdown.d.ts +6 -1
  63. package/dist/elements/basic/Dropdown/useDropdown.mjs +58 -41
  64. package/dist/elements/basic/Dropdown/useDropdownTrigger.d.ts +26 -0
  65. package/dist/elements/basic/Dropdown/useDropdownTrigger.mjs +30 -0
  66. package/dist/elements/basic/Heading/Heading.d.ts +2 -2
  67. package/dist/elements/basic/Heading/Settings.d.ts +1 -1
  68. package/dist/elements/basic/Heading/declaration.d.ts +9 -6
  69. package/dist/elements/basic/Heading/declaration.mjs +17 -9
  70. package/dist/elements/basic/Heading/index.d.ts +10 -7
  71. package/dist/elements/basic/Link/Link.d.ts +2 -2
  72. package/dist/elements/basic/Link/Link.mjs +5 -2
  73. package/dist/elements/basic/Link/Settings.d.ts +2 -1
  74. package/dist/elements/basic/Link/Settings.mjs +31 -24
  75. package/dist/elements/basic/Link/declaration.d.ts +5 -1
  76. package/dist/elements/basic/Link/declaration.mjs +16 -3
  77. package/dist/elements/basic/Link/index.d.ts +6 -2
  78. package/dist/elements/basic/Markdown/Markdown.d.ts +2 -2
  79. package/dist/elements/basic/Markdown/Settings.d.ts +1 -1
  80. package/dist/elements/basic/Markdown/declaration.d.ts +1 -1
  81. package/dist/elements/basic/Markdown/declaration.mjs +1 -1
  82. package/dist/elements/basic/Markdown/index.d.ts +2 -2
  83. package/dist/elements/basic/Paragraph/Paragraph.d.ts +2 -2
  84. package/dist/elements/basic/Paragraph/Settings.d.ts +1 -1
  85. package/dist/elements/basic/Paragraph/index.d.ts +1 -1
  86. package/dist/elements/basic/RichText/RichText.d.ts +2 -2
  87. package/dist/elements/basic/RichText/Settings.d.ts +1 -1
  88. package/dist/elements/basic/RichText/declaration.d.ts +3 -0
  89. package/dist/elements/basic/RichText/declaration.mjs +8 -3
  90. package/dist/elements/basic/RichText/index.d.ts +4 -1
  91. package/dist/elements/basic/Text/Settings.d.ts +1 -1
  92. package/dist/elements/basic/Text/Text.d.ts +2 -2
  93. package/dist/elements/basic/Text/declaration.d.ts +1 -1
  94. package/dist/elements/basic/Text/declaration.mjs +1 -1
  95. package/dist/elements/basic/Text/index.d.ts +2 -2
  96. package/dist/elements/basic/ThemeToggle/ThemeToggle.d.ts +2 -2
  97. package/dist/elements/basic/ThemeToggle/ThemeToggle.mjs +58 -62
  98. package/dist/elements/basic/ThemeToggle/declaration.d.ts +15 -1
  99. package/dist/elements/basic/ThemeToggle/declaration.mjs +12 -4
  100. package/dist/elements/basic/ThemeToggle/index.d.ts +16 -2
  101. package/dist/elements/declarations/index.d.ts +530 -21
  102. package/dist/elements/declarations/index.mjs +24 -22
  103. package/dist/elements/form/Form/Form.d.ts +2 -2
  104. package/dist/elements/form/Form/Form.mjs +37 -57
  105. package/dist/elements/form/Form/Settings.d.ts +1 -1
  106. package/dist/elements/form/Form/declaration.d.ts +60 -0
  107. package/dist/elements/form/Form/declaration.mjs +59 -3
  108. package/dist/elements/form/Form/index.d.ts +62 -2
  109. package/dist/elements/form/FormControl/FormControl.d.ts +19 -7
  110. package/dist/elements/form/FormControl/FormControl.mjs +138 -138
  111. package/dist/elements/form/FormControl/Settings.d.ts +3 -1
  112. package/dist/elements/form/FormControl/Settings.mjs +73 -57
  113. package/dist/elements/form/FormControl/components/Label.d.ts +3 -1
  114. package/dist/elements/form/FormControl/components/Label.mjs +20 -18
  115. package/dist/elements/form/FormControl/components/visuallyHidden.d.ts +6 -0
  116. package/dist/elements/form/FormControl/components/visuallyHidden.mjs +14 -0
  117. package/dist/elements/form/FormControl/declaration.d.ts +17 -0
  118. package/dist/elements/form/FormControl/declaration.mjs +56 -30
  119. package/dist/elements/form/FormControl/hocs/withFieldValue.d.ts +1 -1
  120. package/dist/elements/form/FormControl/hocs/withFieldValue.mjs +68 -61
  121. package/dist/elements/form/FormControl/index.d.ts +19 -2
  122. package/dist/elements/form/FormControl/inputs/Checkbox.d.ts +6 -1
  123. package/dist/elements/form/FormControl/inputs/Checkbox.mjs +5 -3
  124. package/dist/elements/form/FormControl/inputs/Hidden.d.ts +1 -1
  125. package/dist/elements/form/FormControl/inputs/Input.d.ts +8 -1
  126. package/dist/elements/form/FormControl/inputs/Input.mjs +44 -38
  127. package/dist/elements/form/FormControl/inputs/Select.d.ts +6 -1
  128. package/dist/elements/form/FormControl/inputs/Select.mjs +12 -10
  129. package/dist/elements/form/FormControl/inputs/Textarea.d.ts +8 -1
  130. package/dist/elements/form/FormControl/inputs/Textarea.mjs +26 -21
  131. package/dist/elements/form/FormControl/inputs/useFocusWhenShown.d.ts +7 -0
  132. package/dist/elements/form/FormControl/inputs/useFocusWhenShown.mjs +9 -0
  133. package/dist/elements/index.d.ts +3 -1
  134. package/dist/elements/index.mjs +16 -14
  135. package/dist/elements/internal/LayoutContainer/LayoutContainer.d.ts +2 -2
  136. package/dist/elements/internal/LayoutContainer/Settings.d.ts +1 -1
  137. package/dist/elements/internal/LayoutContainer/declaration.d.ts +3 -0
  138. package/dist/elements/internal/LayoutContainer/declaration.mjs +15 -3
  139. package/dist/elements/internal/LayoutContainer/index.d.ts +4 -1
  140. package/dist/elements/internal/LayoutPicker/LayoutPicker.d.ts +1 -1
  141. package/dist/elements/internal/Loading/Loading.d.ts +2 -2
  142. package/dist/elements/internal/Loading/index.d.ts +1 -1
  143. package/dist/elements/internal/NotFound/NotFound.d.ts +2 -2
  144. package/dist/elements/internal/NotFound/index.d.ts +1 -1
  145. package/dist/elements/internal/Page/Page.d.ts +2 -2
  146. package/dist/elements/internal/Page/Page.mjs +34 -43
  147. package/dist/elements/internal/Page/Settings.d.ts +1 -1
  148. package/dist/elements/internal/Page/declaration.d.ts +13 -0
  149. package/dist/elements/internal/Page/declaration.mjs +11 -0
  150. package/dist/elements/internal/Page/index.d.ts +14 -1
  151. package/dist/elements/media/FontAwesome/FontAwesome.d.ts +9 -2
  152. package/dist/elements/media/FontAwesome/FontAwesome.mjs +12 -5
  153. package/dist/elements/media/FontAwesome/Settings.d.ts +2 -1
  154. package/dist/elements/media/FontAwesome/Settings.mjs +29 -22
  155. package/dist/elements/media/FontAwesome/declaration.d.ts +1 -0
  156. package/dist/elements/media/FontAwesome/index.d.ts +2 -1
  157. package/dist/elements/media/Image/Image.d.ts +14 -3
  158. package/dist/elements/media/Image/Image.mjs +25 -25
  159. package/dist/elements/media/Image/Settings.d.ts +3 -1
  160. package/dist/elements/media/Image/Settings.mjs +29 -15
  161. package/dist/elements/media/Image/declaration.d.ts +7 -1
  162. package/dist/elements/media/Image/declaration.mjs +16 -3
  163. package/dist/elements/media/Image/index.d.ts +8 -2
  164. package/dist/elements/media/Video/Settings.d.ts +1 -1
  165. package/dist/elements/media/Video/Video.d.ts +2 -2
  166. package/dist/elements/media/Video/index.d.ts +1 -1
  167. package/dist/elements/provider/ApiContainer/ApiContainer.d.ts +11 -2
  168. package/dist/elements/provider/ApiContainer/ApiContainer.mjs +164 -198
  169. package/dist/elements/provider/ApiContainer/Settings.d.ts +2 -1
  170. package/dist/elements/provider/ApiContainer/Settings.mjs +129 -122
  171. package/dist/elements/provider/ApiContainer/components/FiltersInput/FiltersInput.d.ts +1 -1
  172. package/dist/elements/provider/ApiContainer/declaration.d.ts +88 -0
  173. package/dist/elements/provider/ApiContainer/declaration.mjs +112 -4
  174. package/dist/elements/provider/ApiContainer/helpers/isEmptyAnswer.d.ts +16 -0
  175. package/dist/elements/provider/ApiContainer/helpers/isEmptyAnswer.mjs +4 -0
  176. package/dist/elements/provider/ApiContainer/helpers/providerOutcome.d.ts +25 -0
  177. package/dist/elements/provider/ApiContainer/helpers/providerOutcome.mjs +7 -0
  178. package/dist/elements/provider/ApiContainer/helpers/queryInput.d.ts +5 -0
  179. package/dist/elements/provider/ApiContainer/helpers/queryInput.mjs +12 -0
  180. package/dist/elements/provider/ApiContainer/hooks/useAutoRefresh.d.ts +21 -0
  181. package/dist/elements/provider/ApiContainer/hooks/useAutoRefresh.mjs +18 -0
  182. package/dist/elements/provider/ApiContainer/index.d.ts +89 -1
  183. package/dist/elements/provider/Channel/Channel.d.ts +26 -0
  184. package/dist/elements/provider/Channel/Channel.mjs +92 -0
  185. package/dist/elements/provider/Channel/Settings.d.ts +9 -0
  186. package/dist/elements/provider/Channel/Settings.mjs +38 -0
  187. package/dist/elements/provider/Channel/declaration.d.ts +138 -0
  188. package/dist/elements/provider/Channel/declaration.mjs +125 -0
  189. package/dist/elements/provider/Channel/index.d.ts +137 -0
  190. package/dist/elements/provider/Channel/index.mjs +6 -0
  191. package/dist/elements/settings.mjs +25 -23
  192. package/dist/elements/structure/Container/Container.d.ts +17 -3
  193. package/dist/elements/structure/Container/Container.mjs +18 -9
  194. package/dist/elements/structure/Container/Settings.d.ts +4 -2
  195. package/dist/elements/structure/Container/Settings.mjs +110 -69
  196. package/dist/elements/structure/Container/declaration.d.ts +12 -1
  197. package/dist/elements/structure/Container/declaration.mjs +35 -3
  198. package/dist/elements/structure/Container/index.d.ts +7 -2
  199. package/dist/elements/structure/Container/index.mjs +3 -3
  200. package/dist/elements/structure/DialogContainer/DialogContainer.d.ts +2 -2
  201. package/dist/elements/structure/DialogContainer/DialogContainer.mjs +126 -153
  202. package/dist/elements/structure/DialogContainer/Settings.d.ts +1 -1
  203. package/dist/elements/structure/DialogContainer/declaration.d.ts +82 -1
  204. package/dist/elements/structure/DialogContainer/declaration.mjs +62 -1
  205. package/dist/elements/structure/DialogContainer/index.d.ts +83 -2
  206. package/dist/elements/structure/List/List.d.ts +2 -2
  207. package/dist/elements/structure/List/ListItem/ListItem.d.ts +2 -2
  208. package/dist/elements/structure/List/ListItem/Settings.d.ts +1 -1
  209. package/dist/elements/structure/List/ListItem/index.d.ts +1 -1
  210. package/dist/elements/structure/List/Settings.d.ts +1 -1
  211. package/dist/elements/structure/List/declaration.d.ts +4 -0
  212. package/dist/elements/structure/List/declaration.mjs +7 -3
  213. package/dist/elements/structure/List/index.d.ts +6 -2
  214. package/dist/elements/structure/List/modes/ListBasic.d.ts +1 -1
  215. package/dist/elements/structure/List/modes/ListControlled/ListControlled.d.ts +1 -1
  216. package/dist/elements/structure/List/modes/ListControlled/ListControlledItem.d.ts +1 -1
  217. package/dist/elements/structure/ModalContainer/ModalContainer.d.ts +2 -2
  218. package/dist/elements/structure/ModalContainer/ModalContainer.mjs +92 -107
  219. package/dist/elements/structure/ModalContainer/Settings.d.ts +1 -1
  220. package/dist/elements/structure/ModalContainer/declaration.d.ts +48 -2
  221. package/dist/elements/structure/ModalContainer/declaration.mjs +40 -2
  222. package/dist/elements/structure/ModalContainer/index.d.ts +49 -3
  223. package/dist/elements/structure/ModalContainer/metadataFromText.d.ts +1 -0
  224. package/dist/elements/structure/ModalContainer/metadataFromText.mjs +10 -0
  225. package/dist/elements/structure/ModalContainer/useModalDialog.d.ts +20 -0
  226. package/dist/elements/structure/ModalContainer/useModalDialog.mjs +31 -0
  227. package/dist/elements/structure/Pagination/Pagination.d.ts +7 -2
  228. package/dist/elements/structure/Pagination/Pagination.mjs +49 -52
  229. package/dist/elements/structure/Pagination/Settings.d.ts +2 -1
  230. package/dist/elements/structure/Pagination/Settings.mjs +16 -9
  231. package/dist/elements/structure/Pagination/declaration.d.ts +16 -0
  232. package/dist/elements/structure/Pagination/declaration.mjs +14 -3
  233. package/dist/elements/structure/Pagination/index.d.ts +17 -1
  234. package/dist/elements/structure/TabContainer/Settings.d.ts +1 -1
  235. package/dist/elements/structure/TabContainer/TabContainer.d.ts +2 -2
  236. package/dist/elements/structure/TabContainer/TabContainer.mjs +19 -17
  237. package/dist/elements/structure/TabContainer/TabContainerBody/Settings.d.ts +1 -1
  238. package/dist/elements/structure/TabContainer/TabContainerBody/TabContainerBody.d.ts +2 -2
  239. package/dist/elements/structure/TabContainer/TabContainerBody/TabContainerBody.mjs +8 -6
  240. package/dist/elements/structure/TabContainer/TabContainerBody/declaration.d.ts +1 -0
  241. package/dist/elements/structure/TabContainer/TabContainerBody/declaration.mjs +1 -0
  242. package/dist/elements/structure/TabContainer/TabContainerBody/index.d.ts +2 -1
  243. package/dist/elements/structure/TabContainer/TabContainerContext.d.ts +2 -0
  244. package/dist/elements/structure/TabContainer/TabContainerHeader/Settings.d.ts +1 -1
  245. package/dist/elements/structure/TabContainer/TabContainerHeader/TabContainerHeader.d.ts +2 -2
  246. package/dist/elements/structure/TabContainer/TabContainerHeader/TabContainerHeader.mjs +18 -14
  247. package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.d.ts +1 -0
  248. package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.mjs +1 -0
  249. package/dist/elements/structure/TabContainer/TabContainerHeader/index.d.ts +2 -1
  250. package/dist/elements/structure/TabContainer/TabContainerItem/Settings.d.ts +1 -1
  251. package/dist/elements/structure/TabContainer/TabContainerItem/TabContainerItem.d.ts +6 -2
  252. package/dist/elements/structure/TabContainer/TabContainerItem/TabContainerItem.mjs +48 -13
  253. package/dist/elements/structure/TabContainer/TabContainerItem/declaration.d.ts +1 -1
  254. package/dist/elements/structure/TabContainer/TabContainerItem/index.d.ts +1 -1
  255. package/dist/elements/structure/TabContainer/index.d.ts +6 -4
  256. package/dist/index.d.ts +570 -57
  257. package/dist/index.mjs +20 -17
  258. package/dist/realtime/useChannel.d.ts +35 -0
  259. package/dist/realtime/useChannel.mjs +57 -0
  260. package/package.json +75 -11
  261. package/dist/elements/media/FontAwesome/FontAwesome.stories-paused.d.ts +0 -1
@@ -4,5 +4,5 @@ type SettingsProps = {
4
4
  referenceContainer?: string;
5
5
  onUpdate?: (key: string, value: string | number | boolean) => void;
6
6
  };
7
- declare const Settings: ({ referenceType, referenceId, referenceContainer, onUpdate }: SettingsProps) => import("react").JSX.Element;
7
+ declare const Settings: ({ referenceType, referenceId, referenceContainer, onUpdate }: SettingsProps) => import('react').JSX.Element;
8
8
  export default Settings;
@@ -1,5 +1,5 @@
1
1
  declare const Reference: {
2
- (props: import('../../../Element/hocs/withElement').WithElementProps<import('./Reference').ReferenceProps>): import("react").JSX.Element;
2
+ (props: import('../../../Element/hocs/withElement').WithElementProps<import('./Reference').ReferenceProps>): import('react').JSX.Element;
3
3
  displayName: string;
4
4
  } & {
5
5
  readonly type: "reference";
@@ -20,14 +20,21 @@ export type ButtonProps = {
20
20
  * What the button does, in words — shown as a tooltip on hover, and the button's accessible name when it has no text
21
21
  * of its own. An icon-only button without one is announced as nothing at all.
22
22
  *
23
- * The browser falls back to it by itself, so it is never copied into `aria-label`: an `aria-label` would win over a
24
- * visually-hidden label among the children, which is how a button with an empty `content` names itself.
23
+ * The browser falls back to it by itself, so it is never copied into `aria-label` — and neither is `content`: the
24
+ * button's name is what it SHOWS, content and children together. An `aria-label` taken from `content` named a button
25
+ * whose words were among its children after the default "Button" instead.
25
26
  */
26
27
  title?: string;
28
+ /**
29
+ * The button's name, for when the words it shows do not say what it does: a key hint beside an icon ("V"), a count,
30
+ * an arrow. Read in place of everything inside it by screen readers and browser agents, so it says the whole of it —
31
+ * "Select (V)". Left empty, the button is named by what it shows, then by `title`.
32
+ */
33
+ label?: string;
27
34
  };
28
- declare const Button: ({ ref, className, children, contentPlacement, content, subType, disabled, ariaExpanded, ariaPressed, title }: ButtonProps) => import("react").JSX.Element;
35
+ declare const Button: ({ ref, className, children, contentPlacement, content, subType, disabled, ariaExpanded, ariaPressed, title, label }: ButtonProps) => import('react').JSX.Element;
29
36
  declare const _default: {
30
- (props: import('../../../Element/hocs/withElement').WithElementProps<ButtonProps>): import("react").JSX.Element;
37
+ (props: import('../../../Element/hocs/withElement').WithElementProps<ButtonProps>): import('react').JSX.Element;
31
38
  displayName: string;
32
39
  };
33
40
  export default _default;
@@ -4,16 +4,16 @@ import n from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
4
4
  import { jsxs as r } from "react/jsx-runtime";
5
5
  import i from "clsx";
6
6
  //#region src/elements/basic/Button/Button.tsx
7
- var a = ({ ref: e, className: a = "", children: o, contentPlacement: s = "after", content: c = "Button", subType: l = "button", disabled: u = !1, ariaExpanded: d, ariaPressed: f, title: p }) => {
8
- let { settings: { previewMode: m } } = n();
7
+ var a = ({ ref: e, className: a = "", children: o, contentPlacement: s = "after", content: c = "Button", subType: l = "button", disabled: u = !1, ariaExpanded: d, ariaPressed: f, title: p, label: m }) => {
8
+ let { settings: { previewMode: h } } = n();
9
9
  return /* @__PURE__ */ r(t, {
10
10
  ref: e,
11
11
  tag: "button",
12
- type: m ? l : "button",
13
- className: i("plitzi-component__button", a, { "container--empty--skip": !m && !o && c }),
12
+ type: h ? l : "button",
13
+ className: i("plitzi-component__button", a, { "container--empty--skip": !h && !o && c }),
14
14
  disabled: u,
15
- "aria-label": c || void 0,
16
15
  title: p || void 0,
16
+ "aria-label": m || void 0,
17
17
  "aria-expanded": d,
18
18
  "aria-pressed": f,
19
19
  children: [
@@ -4,7 +4,8 @@ type SettingsProps = {
4
4
  subType?: 'button' | 'reset' | 'submit';
5
5
  disabled?: boolean;
6
6
  title?: string;
7
+ label?: string;
7
8
  onUpdate?: (key: string, value: string | number | boolean) => void;
8
9
  };
9
- declare const Settings: ({ content, contentPlacement, subType, disabled, title, onUpdate }: SettingsProps) => import("react").JSX.Element;
10
+ declare const Settings: ({ content, contentPlacement, subType, disabled, title, label, onUpdate }: SettingsProps) => import('react').JSX.Element;
10
11
  export default Settings;
@@ -4,28 +4,35 @@ import r from "@plitzi/plitzi-ui/Checkbox";
4
4
  import i from "@plitzi/plitzi-ui/Input";
5
5
  import a from "@plitzi/plitzi-ui/Select";
6
6
  //#region src/elements/basic/Button/Settings.tsx
7
- var o = ({ content: o = "Button", contentPlacement: s = "after", subType: c = "button", disabled: l = !1, title: u = "", onUpdate: d }) => {
8
- let f = e((e) => d?.("content", e), [d]), p = e((e) => d?.("contentPlacement", e), [d]), m = e((e) => d?.("subType", e), [d]), h = e((e) => d?.("title", e), [d]), g = e((e) => d?.("disabled", e.target.checked), [d]);
7
+ var o = ({ content: o = "Button", contentPlacement: s = "after", subType: c = "button", disabled: l = !1, title: u = "", label: d = "", onUpdate: f }) => {
8
+ let p = e((e) => f?.("content", e), [f]), m = e((e) => f?.("contentPlacement", e), [f]), h = e((e) => f?.("subType", e), [f]), g = e((e) => f?.("title", e), [f]), _ = e((e) => f?.("label", e), [f]), v = e((e) => f?.("disabled", e.target.checked), [f]);
9
9
  return /* @__PURE__ */ n("div", {
10
10
  className: "flex h-full flex-col gap-4 py-2",
11
11
  children: [
12
12
  /* @__PURE__ */ t(i, {
13
13
  value: o,
14
14
  label: "Content",
15
- onChange: f,
15
+ onChange: p,
16
16
  size: "xs"
17
17
  }),
18
18
  /* @__PURE__ */ t(i, {
19
19
  value: u,
20
20
  label: "Tooltip",
21
21
  placeholder: "What the button does, for an icon-only one",
22
- onChange: h,
22
+ onChange: g,
23
+ size: "xs"
24
+ }),
25
+ /* @__PURE__ */ t(i, {
26
+ value: d,
27
+ label: "Accessible Name",
28
+ placeholder: "When its words do not say what it does",
29
+ onChange: _,
23
30
  size: "xs"
24
31
  }),
25
32
  /* @__PURE__ */ n(a, {
26
33
  value: s,
27
34
  label: "Mode",
28
- onChange: p,
35
+ onChange: m,
29
36
  size: "xs",
30
37
  children: [
31
38
  /* @__PURE__ */ t("option", {
@@ -45,7 +52,7 @@ var o = ({ content: o = "Button", contentPlacement: s = "after", subType: c = "b
45
52
  /* @__PURE__ */ n(a, {
46
53
  value: c,
47
54
  label: "Button Type",
48
- onChange: m,
55
+ onChange: h,
49
56
  size: "xs",
50
57
  children: [
51
58
  /* @__PURE__ */ t("option", {
@@ -65,7 +72,7 @@ var o = ({ content: o = "Button", contentPlacement: s = "after", subType: c = "b
65
72
  /* @__PURE__ */ t(r, {
66
73
  checked: l,
67
74
  label: "Is Disabled",
68
- onChange: g,
75
+ onChange: v,
69
76
  size: "xs"
70
77
  })
71
78
  ]
@@ -4,6 +4,10 @@ import { AuthorableAttributes } from '@plitzi/sdk-shared/authoring/declare';
4
4
  export type ButtonAttributes = AuthorableAttributes<ButtonProps>;
5
5
  declare const declaration: {
6
6
  readonly type: "button";
7
+ readonly attributeValues: {
8
+ readonly subType: readonly string[];
9
+ readonly contentPlacement: readonly string[];
10
+ };
7
11
  readonly content: {
8
12
  readonly attributes: {
9
13
  readonly contentPlacement: "after";
@@ -63,7 +67,7 @@ declare const declaration: {
63
67
  readonly 'padding-bottom': "6px";
64
68
  readonly cursor: "pointer";
65
69
  readonly 'font-size': "16px";
66
- readonly 'line-height': "24px";
70
+ readonly 'line-height': "1.5";
67
71
  readonly 'border-top-left-radius': "4px";
68
72
  readonly 'border-top-right-radius': "4px";
69
73
  readonly 'border-bottom-left-radius': "4px";
@@ -84,7 +88,7 @@ declare const declaration: {
84
88
  readonly 'padding-bottom': "6px";
85
89
  readonly cursor: "pointer";
86
90
  readonly 'font-size': "16px";
87
- readonly 'line-height': "24px";
91
+ readonly 'line-height': "1.5";
88
92
  readonly 'border-top-left-radius': "4px";
89
93
  readonly 'border-top-right-radius': "4px";
90
94
  readonly 'border-bottom-left-radius': "4px";
@@ -105,7 +109,7 @@ declare const declaration: {
105
109
  readonly 'padding-bottom': "6px";
106
110
  readonly cursor: "pointer";
107
111
  readonly 'font-size': "16px";
108
- readonly 'line-height': "24px";
112
+ readonly 'line-height': "1.5";
109
113
  readonly 'border-top-left-radius': "4px";
110
114
  readonly 'border-top-right-radius': "4px";
111
115
  readonly 'border-bottom-left-radius': "4px";
@@ -119,6 +123,7 @@ declare const declaration: {
119
123
  readonly settings: {};
120
124
  };
121
125
  } & import('@plitzi/sdk-shared/authoring/declare').ElementAttributesBrand<Partial<{
126
+ label?: string | undefined;
122
127
  title?: string | undefined;
123
128
  content?: string | undefined;
124
129
  disabled?: boolean | undefined;
@@ -1,7 +1,15 @@
1
- import { elementDeclaration as e } from "@plitzi/sdk-shared/authoring/declare";
1
+ import { elementDeclaration as e, valuesOf as t } from "@plitzi/sdk-shared/authoring/declare";
2
2
  //#region src/elements/basic/Button/declaration.ts
3
- var t = e()({
3
+ var n = e()({
4
4
  type: "button",
5
+ attributeValues: {
6
+ subType: t()([
7
+ "button",
8
+ "submit",
9
+ "reset"
10
+ ]),
11
+ contentPlacement: t()(["before", "after"])
12
+ },
5
13
  content: {
6
14
  attributes: {
7
15
  contentPlacement: "after",
@@ -51,7 +59,7 @@ var t = e()({
51
59
  "padding-bottom": "6px",
52
60
  cursor: "pointer",
53
61
  "font-size": "16px",
54
- "line-height": "24px",
62
+ "line-height": "1.5",
55
63
  "border-top-left-radius": "4px",
56
64
  "border-top-right-radius": "4px",
57
65
  "border-bottom-left-radius": "4px",
@@ -68,7 +76,7 @@ var t = e()({
68
76
  "padding-bottom": "6px",
69
77
  cursor: "pointer",
70
78
  "font-size": "16px",
71
- "line-height": "24px",
79
+ "line-height": "1.5",
72
80
  "border-top-left-radius": "4px",
73
81
  "border-top-right-radius": "4px",
74
82
  "border-bottom-left-radius": "4px",
@@ -85,7 +93,7 @@ var t = e()({
85
93
  "padding-bottom": "6px",
86
94
  cursor: "pointer",
87
95
  "font-size": "16px",
88
- "line-height": "24px",
96
+ "line-height": "1.5",
89
97
  "border-top-left-radius": "4px",
90
98
  "border-top-right-radius": "4px",
91
99
  "border-bottom-left-radius": "4px",
@@ -98,4 +106,4 @@ var t = e()({
98
106
  }
99
107
  });
100
108
  //#endregion
101
- export { t as default };
109
+ export { n as default };
@@ -1,8 +1,12 @@
1
1
  declare const Button: {
2
- (props: import('../../../Element/hocs/withElement').WithElementProps<import('./Button').ButtonProps>): import("react").JSX.Element;
2
+ (props: import('../../../Element/hocs/withElement').WithElementProps<import('./Button').ButtonProps>): import('react').JSX.Element;
3
3
  displayName: string;
4
4
  } & {
5
5
  readonly type: "button";
6
+ readonly attributeValues: {
7
+ readonly subType: readonly string[];
8
+ readonly contentPlacement: readonly string[];
9
+ };
6
10
  readonly content: {
7
11
  readonly attributes: {
8
12
  readonly contentPlacement: "after";
@@ -62,7 +66,7 @@ declare const Button: {
62
66
  readonly 'padding-bottom': "6px";
63
67
  readonly cursor: "pointer";
64
68
  readonly 'font-size': "16px";
65
- readonly 'line-height': "24px";
69
+ readonly 'line-height': "1.5";
66
70
  readonly 'border-top-left-radius': "4px";
67
71
  readonly 'border-top-right-radius': "4px";
68
72
  readonly 'border-bottom-left-radius': "4px";
@@ -83,7 +87,7 @@ declare const Button: {
83
87
  readonly 'padding-bottom': "6px";
84
88
  readonly cursor: "pointer";
85
89
  readonly 'font-size': "16px";
86
- readonly 'line-height': "24px";
90
+ readonly 'line-height': "1.5";
87
91
  readonly 'border-top-left-radius': "4px";
88
92
  readonly 'border-top-right-radius': "4px";
89
93
  readonly 'border-bottom-left-radius': "4px";
@@ -104,7 +108,7 @@ declare const Button: {
104
108
  readonly 'padding-bottom': "6px";
105
109
  readonly cursor: "pointer";
106
110
  readonly 'font-size': "16px";
107
- readonly 'line-height': "24px";
111
+ readonly 'line-height': "1.5";
108
112
  readonly 'border-top-left-radius': "4px";
109
113
  readonly 'border-top-right-radius': "4px";
110
114
  readonly 'border-bottom-left-radius': "4px";
@@ -118,6 +122,7 @@ declare const Button: {
118
122
  readonly settings: {};
119
123
  };
120
124
  } & import('@plitzi/sdk-shared/authoring/declare').ElementAttributesBrand<Partial<{
125
+ label?: string | undefined;
121
126
  title?: string | undefined;
122
127
  content?: string | undefined;
123
128
  disabled?: boolean | undefined;
@@ -12,9 +12,9 @@ export type DropdownProps = {
12
12
  containerLeftOffset?: number;
13
13
  disabled?: boolean;
14
14
  };
15
- declare const Dropdown: ({ ref, children, className, popupPlacement, openPopup, backgroundDisabled, closeOnClickBackground, closeOnClickPopup, containerTopOffset, containerLeftOffset, disabled }: DropdownProps) => import("react").JSX.Element;
15
+ declare const Dropdown: ({ ref, children, className, popupPlacement, openPopup, backgroundDisabled, closeOnClickBackground, closeOnClickPopup, containerTopOffset, containerLeftOffset, disabled }: DropdownProps) => import('react').JSX.Element;
16
16
  declare const _default: {
17
- (props: import('../../../Element/hocs/withElement').WithElementProps<DropdownProps>): import("react").JSX.Element;
17
+ (props: import('../../../Element/hocs/withElement').WithElementProps<DropdownProps>): import('react').JSX.Element;
18
18
  displayName: string;
19
19
  };
20
20
  export default _default;
@@ -3,56 +3,65 @@ import t from "../../../Element/hooks/useElement.mjs";
3
3
  import { RootElement as n } from "../../../Element/RootElement.mjs";
4
4
  import r from "./DropdownContext.mjs";
5
5
  import i from "./useDropdown.mjs";
6
- import { useCallback as a, useMemo as o, useRef as s } from "react";
7
- import c from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
8
- import { jsx as l, jsxs as u } from "react/jsx-runtime";
9
- import d from "clsx";
6
+ import a from "./useDropdownTrigger.mjs";
7
+ import { useCallback as o, useMemo as s, useRef as c } from "react";
8
+ import l from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
9
+ import { jsx as u, jsxs as d } from "react/jsx-runtime";
10
+ import f from "clsx";
10
11
  //#region src/elements/basic/Dropdown/Dropdown.tsx
11
- var f = ({ ref: e, children: f, className: p = "", popupPlacement: m = "bottom", openPopup: h = !1, backgroundDisabled: g = !1, closeOnClickBackground: _ = !0, closeOnClickPopup: v = !0, containerTopOffset: y = 5, containerLeftOffset: b = 5, disabled: x = !1 }) => {
12
- let { setElementState: S, definition: { styleSelectors: C } } = t(), { settings: { previewMode: w }, utils: { getWindow: T } } = c(), E = s(null), D = s(null), O = o(() => T(), [T]), k = a((e) => {
13
- _ && (e.stopPropagation(), e.preventDefault(), S((e) => ({
12
+ var p = ({ ref: e, children: p, className: m = "", popupPlacement: h = "bottom", openPopup: g = !1, backgroundDisabled: _ = !1, closeOnClickBackground: v = !0, closeOnClickPopup: y = !0, containerTopOffset: b = 5, containerLeftOffset: x = 5, disabled: S = !1 }) => {
13
+ let { setElementState: C, definition: { styleSelectors: w } } = t(), { settings: { previewMode: T }, utils: { getWindow: E } } = l(), D = c(null), O = c(null), k = s(() => E(), [E]), A = o((e) => {
14
+ v && (e.stopPropagation(), e.preventDefault(), C((e) => ({
14
15
  ...e,
15
16
  openPopup: !1
16
17
  })));
17
- }, [_, S]), A = a((e) => {
18
- S((t) => ({
18
+ }, [v, C]), j = o((e) => {
19
+ C((t) => ({
19
20
  ...t,
20
21
  openPopup: e
21
22
  }));
22
- }, [S]), [, , j, M, , N] = i({
23
+ }, [C]), [, , M, N, , P] = i({
23
24
  ref: e,
24
- popupRef: E,
25
- open: h,
26
- disabled: !w || x,
27
- closeOnClickPopup: v,
28
- placement: m,
29
- offsetX: b,
30
- offsetY: y,
31
- myWindow: O,
32
- onChange: A
33
- }), P = o(() => ({
34
- popupRef: E,
35
- openPopup: h,
36
- parameters: N,
37
- onClick: M
25
+ popupRef: D,
26
+ open: g,
27
+ disabled: !T || S,
28
+ closeOnClickPopup: y,
29
+ closeOnClickOutside: v && !_,
30
+ placement: h,
31
+ offsetX: x,
32
+ offsetY: b,
33
+ myWindow: k,
34
+ onChange: j
35
+ }), F = a({
36
+ popupRef: D,
37
+ open: g,
38
+ positioned: !!P,
39
+ enabled: !!T && !S
40
+ }), I = o((e) => {
41
+ F(e), M(e);
42
+ }, [F, M]), L = s(() => ({
43
+ popupRef: D,
44
+ openPopup: g,
45
+ parameters: P,
46
+ onClick: N
38
47
  }), [
39
- M,
40
- h,
41
- N
48
+ N,
49
+ g,
50
+ P
42
51
  ]);
43
- return /* @__PURE__ */ u(n, {
52
+ return /* @__PURE__ */ d(n, {
44
53
  ref: e,
45
- className: d("plitzi-component__dropdown", p, { "container--empty--skip": !w && !f }),
46
- onClick: j,
47
- children: [/* @__PURE__ */ l(r, {
48
- value: P,
49
- children: f
50
- }), h && g && w && /* @__PURE__ */ l("div", {
51
- ref: D,
52
- className: d("plitzi-component__dropdown__background-container", C.backgroundContainer),
53
- onClick: k
54
+ className: f("plitzi-component__dropdown", m, { "container--empty--skip": !T && !p }),
55
+ onClick: I,
56
+ children: [/* @__PURE__ */ u(r, {
57
+ value: L,
58
+ children: p
59
+ }), g && _ && T && /* @__PURE__ */ u("div", {
60
+ ref: O,
61
+ className: f("plitzi-component__dropdown__background-container", w.backgroundContainer),
62
+ onClick: A
54
63
  })]
55
64
  });
56
- }, p = e(f);
65
+ }, m = e(p);
57
66
  //#endregion
58
- export { f as Dropdown, p as default };
67
+ export { p as Dropdown, m as default };
@@ -4,9 +4,9 @@ export type DropdownPopupProps = {
4
4
  className?: string;
5
5
  children?: ReactNode;
6
6
  };
7
- declare const DropdownPopup: ({ ref, className, children }: DropdownPopupProps) => import("react").JSX.Element;
7
+ declare const DropdownPopup: ({ ref, className, children }: DropdownPopupProps) => import('react').JSX.Element;
8
8
  declare const _default: {
9
- (props: import('../../../../Element/hocs/withElement').WithElementProps<DropdownPopupProps>): import("react").JSX.Element;
9
+ (props: import('../../../../Element/hocs/withElement').WithElementProps<DropdownPopupProps>): import('react').JSX.Element;
10
10
  displayName: string;
11
11
  };
12
12
  export default _default;
@@ -1,2 +1,2 @@
1
- declare const Settings: () => import("react").JSX.Element;
1
+ declare const Settings: () => import('react').JSX.Element;
2
2
  export default Settings;
@@ -4,6 +4,7 @@ import { AuthorableAttributes } from '@plitzi/sdk-shared/authoring/declare';
4
4
  export type DropdownPopupAttributes = AuthorableAttributes<DropdownPopupProps>;
5
5
  declare const declaration: {
6
6
  readonly type: "dropdownPopup";
7
+ readonly ancestorType: "dropdown";
7
8
  readonly content: {
8
9
  readonly attributes: {};
9
10
  readonly definition: {
@@ -41,7 +42,7 @@ declare const declaration: {
41
42
  readonly style: {
42
43
  readonly base: {
43
44
  readonly default: {
44
- readonly 'background-color': "white";
45
+ readonly 'background-color': "light-dark(white, oklch(0.21 0.006 285.885))";
45
46
  readonly 'padding-right': "4px";
46
47
  readonly 'padding-bottom': "4px";
47
48
  readonly 'padding-left': "4px";
@@ -2,6 +2,7 @@ import { elementDeclaration as e } from "@plitzi/sdk-shared/authoring/declare";
2
2
  //#region src/elements/basic/Dropdown/DropdownPopup/declaration.ts
3
3
  var t = e()({
4
4
  type: "dropdownPopup",
5
+ ancestorType: "dropdown",
5
6
  content: {
6
7
  attributes: {},
7
8
  definition: {
@@ -35,7 +36,7 @@ var t = e()({
35
36
  name: "Dropdown Popup",
36
37
  displayMode: "desktop",
37
38
  style: { base: { default: {
38
- "background-color": "white",
39
+ "background-color": "light-dark(white, oklch(0.21 0.006 285.885))",
39
40
  "padding-right": "4px",
40
41
  "padding-bottom": "4px",
41
42
  "padding-left": "4px",
@@ -1,8 +1,9 @@
1
1
  declare const DropdownPopup: {
2
- (props: import('../../../../Element/hocs/withElement').WithElementProps<import('./DropdownPopup').DropdownPopupProps>): import("react").JSX.Element;
2
+ (props: import('../../../../Element/hocs/withElement').WithElementProps<import('./DropdownPopup').DropdownPopupProps>): import('react').JSX.Element;
3
3
  displayName: string;
4
4
  } & {
5
5
  readonly type: "dropdownPopup";
6
+ readonly ancestorType: "dropdown";
6
7
  readonly content: {
7
8
  readonly attributes: {};
8
9
  readonly definition: {
@@ -40,7 +41,7 @@ declare const DropdownPopup: {
40
41
  readonly style: {
41
42
  readonly base: {
42
43
  readonly default: {
43
- readonly 'background-color': "white";
44
+ readonly 'background-color': "light-dark(white, oklch(0.21 0.006 285.885))";
44
45
  readonly 'padding-right': "4px";
45
46
  readonly 'padding-bottom': "4px";
46
47
  readonly 'padding-left': "4px";
@@ -9,5 +9,5 @@ type SettingsProps = {
9
9
  disabled?: boolean;
10
10
  onUpdate?: (key: string, value: string | boolean | number) => void;
11
11
  };
12
- declare const Settings: ({ popupPlacement, openPopup, backgroundDisabled, closeOnClickBackground, closeOnClickPopup, containerTopOffset, containerLeftOffset, disabled, onUpdate }: SettingsProps) => import("react").JSX.Element;
12
+ declare const Settings: ({ popupPlacement, openPopup, backgroundDisabled, closeOnClickBackground, closeOnClickPopup, containerTopOffset, containerLeftOffset, disabled, onUpdate }: SettingsProps) => import('react').JSX.Element;
13
13
  export default Settings;
@@ -4,6 +4,9 @@ import { AuthorableAttributes } from '@plitzi/sdk-shared/authoring/declare';
4
4
  export type DropdownAttributes = AuthorableAttributes<DropdownProps>;
5
5
  declare const declaration: {
6
6
  readonly type: "dropdown";
7
+ readonly attributeValues: {
8
+ readonly popupPlacement: readonly string[];
9
+ };
7
10
  readonly content: {
8
11
  readonly attributes: {
9
12
  readonly popupPlacement: "bottom";
@@ -1,7 +1,13 @@
1
- import { elementDeclaration as e } from "@plitzi/sdk-shared/authoring/declare";
1
+ import { elementDeclaration as e, valuesOf as t } from "@plitzi/sdk-shared/authoring/declare";
2
2
  //#region src/elements/basic/Dropdown/declaration.ts
3
- var t = e()({
3
+ var n = e()({
4
4
  type: "dropdown",
5
+ attributeValues: { popupPlacement: t()([
6
+ "left",
7
+ "right",
8
+ "top",
9
+ "bottom"
10
+ ]) },
5
11
  content: {
6
12
  attributes: {
7
13
  popupPlacement: "bottom",
@@ -67,4 +73,4 @@ var t = e()({
67
73
  initialItems: ["dropdownPopup"]
68
74
  });
69
75
  //#endregion
70
- export { t as default };
76
+ export { n as default };
@@ -1,13 +1,14 @@
1
1
  declare const Dropdown: {
2
- (props: import('../../../Element/hocs/withElement').WithElementProps<import('./Dropdown').DropdownProps>): import("react").JSX.Element;
2
+ (props: import('../../../Element/hocs/withElement').WithElementProps<import('./Dropdown').DropdownProps>): import('react').JSX.Element;
3
3
  displayName: string;
4
4
  } & {
5
5
  plugins: {
6
6
  dropdownPopup: {
7
- (props: import('../../../Element/hocs/withElement').WithElementProps<import('./DropdownPopup/DropdownPopup').DropdownPopupProps>): import("react").JSX.Element;
7
+ (props: import('../../../Element/hocs/withElement').WithElementProps<import('./DropdownPopup/DropdownPopup').DropdownPopupProps>): import('react').JSX.Element;
8
8
  displayName: string;
9
9
  } & {
10
10
  readonly type: "dropdownPopup";
11
+ readonly ancestorType: "dropdown";
11
12
  readonly content: {
12
13
  readonly attributes: {};
13
14
  readonly definition: {
@@ -45,7 +46,7 @@ declare const Dropdown: {
45
46
  readonly style: {
46
47
  readonly base: {
47
48
  readonly default: {
48
- readonly 'background-color': "white";
49
+ readonly 'background-color': "light-dark(white, oklch(0.21 0.006 285.885))";
49
50
  readonly 'padding-right': "4px";
50
51
  readonly 'padding-bottom': "4px";
51
52
  readonly 'padding-left': "4px";
@@ -70,6 +71,9 @@ declare const Dropdown: {
70
71
  } & import('@plitzi/sdk-shared/authoring/declare').ElementAttributesBrand<unknown>;
71
72
  };
72
73
  type: "dropdown";
74
+ attributeValues: {
75
+ readonly popupPlacement: readonly string[];
76
+ };
73
77
  content: {
74
78
  readonly attributes: {
75
79
  readonly popupPlacement: "bottom";
@@ -10,6 +10,11 @@ export type UseDropdownProps = {
10
10
  disabled?: boolean;
11
11
  loading?: boolean;
12
12
  closeOnClickPopup?: boolean;
13
+ /**
14
+ * Close when the pointer goes down anywhere outside the trigger and the popup. What a menu is expected to do; off by
15
+ * default here because a caller that renders its own backdrop closes from that instead.
16
+ */
17
+ closeOnClickOutside?: boolean;
13
18
  placement?: 'left' | 'right' | 'top' | 'bottom';
14
19
  myWindow?: Window | null;
15
20
  offsetX?: number;
@@ -24,5 +29,5 @@ export type UseDropdownReturn = [
24
29
  DOMRect | undefined,
25
30
  FloatingPosition | undefined
26
31
  ];
27
- declare const useDropdown: ({ ref, popupRef, open: openProp, placement, disabled, loading, closeOnClickPopup, offsetX, offsetY, myWindow, onChange }: UseDropdownProps) => UseDropdownReturn;
32
+ declare const useDropdown: ({ ref, popupRef, open: openProp, placement, disabled, loading, closeOnClickPopup, closeOnClickOutside, offsetX, offsetY, myWindow, onChange }: UseDropdownProps) => UseDropdownReturn;
28
33
  export default useDropdown;