@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
@@ -1,107 +1,124 @@
1
1
  import { useCallback as e, useEffect as t, useMemo as n, useState as r } from "react";
2
2
  import i from "@plitzi/plitzi-ui/hooks/useDidUpdateEffect";
3
3
  //#region src/elements/basic/Dropdown/useDropdown.ts
4
- var a = ({ ref: a, popupRef: o, open: s, placement: c = "bottom", disabled: l = !1, loading: u = !1, closeOnClickPopup: d = !0, offsetX: f = 0, offsetY: p = 0, myWindow: m, onChange: h }) => {
5
- let [g, _] = r(s ?? !1), [v, y] = r(() => a?.current?.getBoundingClientRect()), b = n(() => m || (typeof window < "u" ? window : null), [m]), x = e((e) => {
6
- if (!(l || u)) {
4
+ var a = ({ ref: a, popupRef: o, open: s, placement: c = "bottom", disabled: l = !1, loading: u = !1, closeOnClickPopup: d = !0, closeOnClickOutside: f = !1, offsetX: p = 0, offsetY: m = 0, myWindow: h, onChange: g }) => {
5
+ let [_, v] = r(s ?? !1), [y, b] = r(() => a?.current?.getBoundingClientRect()), x = n(() => h || (typeof window < "u" ? window : null), [h]), S = e((e) => {
6
+ if (!(l || u || e.target instanceof Node && o?.current?.contains(e.target))) {
7
7
  if (e.stopPropagation(), e.preventDefault(), s !== void 0) {
8
- h?.(!g, !1);
8
+ g?.(!_, !1);
9
9
  return;
10
10
  }
11
- h?.(!g, !0), _((e) => !e);
11
+ g?.(!_, !0), v((e) => !e);
12
12
  }
13
13
  }, [
14
14
  l,
15
15
  u,
16
- h,
17
16
  g,
18
- s
19
- ]), S = e((e) => {
17
+ _,
18
+ s,
19
+ o
20
+ ]), C = e((e) => {
20
21
  if (!(l || u || !d)) {
21
22
  if (e.stopPropagation(), e.preventDefault(), s !== void 0) {
22
- h?.(!g, !1);
23
+ g?.(!_, !1);
23
24
  return;
24
25
  }
25
- h?.(!g, !0), _((e) => !e);
26
+ g?.(!_, !0), v((e) => !e);
26
27
  }
27
28
  }, [
28
29
  d,
29
30
  l,
30
31
  u,
31
- h,
32
32
  g,
33
+ _,
33
34
  s
34
35
  ]);
35
36
  t(() => {
36
37
  let e = a?.current;
37
- if (!e || typeof window > "u" || !g) return;
38
- let t = () => y(a.current?.getBoundingClientRect()), n;
38
+ if (!e || typeof window > "u" || !_) return;
39
+ let t = () => b(a.current?.getBoundingClientRect()), n;
39
40
  return typeof ResizeObserver < "u" && (n = new ResizeObserver(t), n.observe(e)), window.addEventListener("scroll", t, !0), window.addEventListener("resize", t), () => {
40
41
  n?.disconnect(), window.removeEventListener("scroll", t, !0), window.removeEventListener("resize", t);
41
42
  };
42
- }, [g, a]);
43
- let C = e((e) => {
44
- e.key === "Escape" && (h?.(!g, s !== void 0), _((e) => !e));
43
+ }, [_, a]);
44
+ let w = e((e) => {
45
+ e.key === "Escape" && (g?.(!_, s !== void 0), v((e) => !e));
45
46
  }, [
46
- h,
47
47
  g,
48
+ _,
48
49
  s
49
50
  ]);
50
51
  t(() => {
51
- if (g && !l) return window.addEventListener("keydown", C), () => {
52
- window.removeEventListener("keydown", C);
52
+ if (!_ || l || !f || !x) return;
53
+ let e = (e) => {
54
+ let t = e.target instanceof Node ? e.target : null;
55
+ !t || a?.current?.contains(t) || o?.current?.contains(t) || (g?.(!1, s === void 0), s === void 0 && v(!1));
53
56
  };
57
+ return x.addEventListener("pointerdown", e, !0), () => x.removeEventListener("pointerdown", e, !0);
54
58
  }, [
59
+ _,
60
+ l,
61
+ f,
62
+ x,
63
+ a,
64
+ o,
55
65
  g,
56
- C,
66
+ s
67
+ ]), t(() => {
68
+ if (_ && !l) return window.addEventListener("keydown", w), () => {
69
+ window.removeEventListener("keydown", w);
70
+ };
71
+ }, [
72
+ _,
73
+ w,
57
74
  l
58
75
  ]);
59
- let w = e((e) => {
60
- if (!v || !b) return;
61
- let t = b.innerWidth, n = b.innerHeight, r = 0, i = 0;
76
+ let T = e((e) => {
77
+ if (!y || !x) return;
78
+ let t = x.innerWidth, n = x.innerHeight, r = 0, i = 0;
62
79
  switch (c) {
63
80
  case "top":
64
- r = v.top - e.height, i = v.left;
81
+ r = y.top - e.height, i = y.left;
65
82
  break;
66
83
  case "bottom":
67
- r = v.bottom, i = v.left;
84
+ r = y.bottom, i = y.left;
68
85
  break;
69
86
  case "left":
70
- r = v.top, i = v.left - e.width;
87
+ r = y.top, i = y.left - e.width;
71
88
  break;
72
89
  case "right":
73
- r = v.top, i = v.right;
90
+ r = y.top, i = y.right;
74
91
  break;
75
- default: r = v.bottom, i = v.left;
92
+ default: r = y.bottom, i = y.left;
76
93
  }
77
- return c === "bottom" ? (r += p, i += f) : c === "top" ? (r -= p, i += f) : c === "left" ? (r += p, i -= f) : c === "right" && (r += p, i += f), c === "bottom" || c === "top" ? (i + e.width > t ? i = v.right - e.width : i < 0 && (i = v.left), r = Math.max(0, Math.min(n - e.height, r))) : c === "left" || c === "right" ? (r + e.height > n ? r = v.bottom - e.height : r < 0 && (r = v.top), i = Math.max(0, Math.min(t - e.width, i))) : (r = Math.max(0, Math.min(n - e.height, r)), i = Math.max(0, Math.min(t - e.width, i))), {
94
+ return c === "bottom" ? (r += m, i += p) : c === "top" ? (r -= m, i += p) : c === "left" ? (r += m, i -= p) : c === "right" && (r += m, i += p), c === "bottom" || c === "top" ? (i + e.width > t ? i = y.right - e.width : i < 0 && (i = y.left), r = Math.max(0, Math.min(n - e.height, r))) : c === "left" || c === "right" ? (r + e.height > n ? r = y.bottom - e.height : r < 0 && (r = y.top), i = Math.max(0, Math.min(t - e.width, i))) : (r = Math.max(0, Math.min(n - e.height, r)), i = Math.max(0, Math.min(t - e.width, i))), {
78
95
  top: r,
79
96
  left: i
80
97
  };
81
98
  }, [
82
- v,
83
- b,
99
+ y,
100
+ x,
84
101
  c,
85
- p,
86
- f
102
+ m,
103
+ p
87
104
  ]);
88
105
  return i(() => {
89
- _(s ?? !1);
106
+ v(s ?? !1);
90
107
  }, [s]), [
91
- g,
92
108
  _,
93
- x,
94
- S,
95
109
  v,
110
+ S,
111
+ C,
112
+ y,
96
113
  n(() => {
97
- if (!g || !a?.current || !o?.current) return;
114
+ if (!_ || !a?.current || !o?.current) return;
98
115
  let e = o.current.getBoundingClientRect();
99
- return w(e);
116
+ return T(e);
100
117
  }, [
101
- g,
118
+ _,
102
119
  a,
103
120
  o,
104
- w
121
+ T
105
122
  ])
106
123
  ];
107
124
  };
@@ -0,0 +1,26 @@
1
+ import { MouseEvent, RefObject } from 'react';
2
+ export type UseDropdownTriggerProps = {
3
+ popupRef: RefObject<HTMLElement | null>;
4
+ open: boolean;
5
+ /** Where the popup is drawn; until it is known the popup is hidden, and nothing in it can take the focus. */
6
+ positioned: boolean;
7
+ /** Off in the builder, where a dropdown is something being edited. */
8
+ enabled: boolean;
9
+ };
10
+ /**
11
+ * What a dropdown tells assistive technology about the control that opens it, and where the keyboard goes.
12
+ *
13
+ * - **The trigger says it opens something** (`aria-haspopup`) **and whether it is open** (`aria-expanded`). The trigger
14
+ * is the author's own button, so the attributes are written on it rather than rendered.
15
+ * - **Opened from the keyboard, the focus moves to the popup's first control** — the popup can come before the trigger
16
+ * in the page, where Tab would never reach it. Opened with a pointer, the focus stays: nobody asked for it to move.
17
+ * - **Closed while the focus is inside, the focus goes back to the trigger**, so Escape leaves a person where they were
18
+ * instead of on a control that has just been hidden.
19
+ *
20
+ * A dropdown with no control outside its popup has none of this: nothing a keyboard can reach opens it
21
+ * (`dropdown-without-control`, in the linter).
22
+ *
23
+ * @returns what the dropdown's own click handler calls first, to learn whether a keyboard pressed the trigger.
24
+ */
25
+ declare const useDropdownTrigger: ({ popupRef, open, positioned, enabled }: UseDropdownTriggerProps) => ((event: MouseEvent) => void);
26
+ export default useDropdownTrigger;
@@ -0,0 +1,30 @@
1
+ import { useCallback as e, useEffect as t, useRef as n } from "react";
2
+ //#region src/elements/basic/Dropdown/useDropdownTrigger.ts
3
+ var r = "button, a[href], input, select, textarea, [role=\"button\"]", i = (e) => {
4
+ let t = e?.closest(".plitzi-component__dropdown");
5
+ return t ? [...t.querySelectorAll(r)].find((t) => !e?.contains(t)) : void 0;
6
+ }, a = ({ popupRef: a, open: o, positioned: s, enabled: c }) => {
7
+ let l = n(!1), u = n(o), d = e((e) => {
8
+ l.current = e.detail === 0;
9
+ }, []);
10
+ return t(() => {
11
+ let e = c ? i(a.current) : void 0;
12
+ e && (e.setAttribute("aria-haspopup", "true"), e.setAttribute("aria-expanded", String(o)));
13
+ }), t(() => {
14
+ let e = a.current, t = u.current && !o;
15
+ if (u.current = o, c && e) {
16
+ if (t && e.contains(e.ownerDocument.activeElement)) {
17
+ i(e)?.focus({ preventScroll: !0 });
18
+ return;
19
+ }
20
+ o && s && l.current && !e.contains(e.ownerDocument.activeElement) && (l.current = !1, e.querySelector(r)?.focus({ preventScroll: !0 }));
21
+ }
22
+ }, [
23
+ c,
24
+ o,
25
+ s,
26
+ a
27
+ ]), d;
28
+ };
29
+ //#endregion
30
+ export { a as default };
@@ -5,9 +5,9 @@ export type HeadingProps = {
5
5
  content?: string;
6
6
  subType?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
7
7
  };
8
- declare const Heading: ({ ref, className, content, subType }: HeadingProps) => import("react").JSX.Element;
8
+ declare const Heading: ({ ref, className, content, subType }: HeadingProps) => import('react').JSX.Element;
9
9
  declare const _default: {
10
- (props: import('../../../Element/hocs/withElement').WithElementProps<HeadingProps>): import("react").JSX.Element;
10
+ (props: import('../../../Element/hocs/withElement').WithElementProps<HeadingProps>): import('react').JSX.Element;
11
11
  displayName: string;
12
12
  };
13
13
  export default _default;
@@ -3,5 +3,5 @@ type SettingsProps = {
3
3
  content?: string;
4
4
  onUpdate?: (key: string, value: string | boolean | number) => void;
5
5
  };
6
- declare const Settings: ({ subType, content, onUpdate }: SettingsProps) => import("react").JSX.Element;
6
+ declare const Settings: ({ subType, content, onUpdate }: SettingsProps) => import('react').JSX.Element;
7
7
  export default Settings;
@@ -4,6 +4,9 @@ import { AuthorableAttributes } from '@plitzi/sdk-shared/authoring/declare';
4
4
  export type HeadingAttributes = AuthorableAttributes<HeadingProps>;
5
5
  declare const declaration: {
6
6
  readonly type: "heading";
7
+ readonly attributeValues: {
8
+ readonly subType: readonly string[];
9
+ };
7
10
  readonly content: {
8
11
  readonly attributes: {
9
12
  readonly content: "Heading";
@@ -58,7 +61,7 @@ declare const declaration: {
58
61
  readonly 'margin-bottom': "25px";
59
62
  readonly 'font-size': "38px";
60
63
  readonly 'font-weight': 700;
61
- readonly 'line-height': "44px";
64
+ readonly 'line-height': "1.158";
62
65
  };
63
66
  };
64
67
  };
@@ -73,7 +76,7 @@ declare const declaration: {
73
76
  readonly 'margin-bottom': "25px";
74
77
  readonly 'font-size': "32px";
75
78
  readonly 'font-weight': 700;
76
- readonly 'line-height': "36px";
79
+ readonly 'line-height': "1.125";
77
80
  };
78
81
  };
79
82
  };
@@ -88,7 +91,7 @@ declare const declaration: {
88
91
  readonly 'margin-bottom': "25px";
89
92
  readonly 'font-size': "24px";
90
93
  readonly 'font-weight': 700;
91
- readonly 'line-height': "30px";
94
+ readonly 'line-height': "1.25";
92
95
  };
93
96
  };
94
97
  };
@@ -103,7 +106,7 @@ declare const declaration: {
103
106
  readonly 'margin-bottom': "25px";
104
107
  readonly 'font-size': "18px";
105
108
  readonly 'font-weight': 700;
106
- readonly 'line-height': "24px";
109
+ readonly 'line-height': "1.333";
107
110
  };
108
111
  };
109
112
  };
@@ -118,7 +121,7 @@ declare const declaration: {
118
121
  readonly 'margin-bottom': "25px";
119
122
  readonly 'font-size': "14px";
120
123
  readonly 'font-weight': 700;
121
- readonly 'line-height': "20px";
124
+ readonly 'line-height': "1.429";
122
125
  };
123
126
  };
124
127
  };
@@ -133,7 +136,7 @@ declare const declaration: {
133
136
  readonly 'margin-bottom': "25px";
134
137
  readonly 'font-size': "12px";
135
138
  readonly 'font-weight': 700;
136
- readonly 'line-height': "18px";
139
+ readonly 'line-height': "1.5";
137
140
  };
138
141
  };
139
142
  };
@@ -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/Heading/declaration.ts
3
- var t = e()({
3
+ var n = e()({
4
4
  type: "heading",
5
+ attributeValues: { subType: t()([
6
+ "h1",
7
+ "h2",
8
+ "h3",
9
+ "h4",
10
+ "h5",
11
+ "h6"
12
+ ]) },
5
13
  content: {
6
14
  attributes: {
7
15
  content: "Heading",
@@ -46,7 +54,7 @@ var t = e()({
46
54
  "margin-bottom": "25px",
47
55
  "font-size": "38px",
48
56
  "font-weight": 700,
49
- "line-height": "44px"
57
+ "line-height": "1.158"
50
58
  } } }
51
59
  },
52
60
  h2: {
@@ -57,7 +65,7 @@ var t = e()({
57
65
  "margin-bottom": "25px",
58
66
  "font-size": "32px",
59
67
  "font-weight": 700,
60
- "line-height": "36px"
68
+ "line-height": "1.125"
61
69
  } } }
62
70
  },
63
71
  h3: {
@@ -68,7 +76,7 @@ var t = e()({
68
76
  "margin-bottom": "25px",
69
77
  "font-size": "24px",
70
78
  "font-weight": 700,
71
- "line-height": "30px"
79
+ "line-height": "1.25"
72
80
  } } }
73
81
  },
74
82
  h4: {
@@ -79,7 +87,7 @@ var t = e()({
79
87
  "margin-bottom": "25px",
80
88
  "font-size": "18px",
81
89
  "font-weight": 700,
82
- "line-height": "24px"
90
+ "line-height": "1.333"
83
91
  } } }
84
92
  },
85
93
  h5: {
@@ -90,7 +98,7 @@ var t = e()({
90
98
  "margin-bottom": "25px",
91
99
  "font-size": "14px",
92
100
  "font-weight": 700,
93
- "line-height": "20px"
101
+ "line-height": "1.429"
94
102
  } } }
95
103
  },
96
104
  h6: {
@@ -101,7 +109,7 @@ var t = e()({
101
109
  "margin-bottom": "25px",
102
110
  "font-size": "12px",
103
111
  "font-weight": 700,
104
- "line-height": "18px"
112
+ "line-height": "1.5"
105
113
  } } }
106
114
  }
107
115
  }
@@ -110,4 +118,4 @@ var t = e()({
110
118
  }
111
119
  });
112
120
  //#endregion
113
- export { t as default };
121
+ export { n as default };
@@ -1,8 +1,11 @@
1
1
  declare const Heading: {
2
- (props: import('../../../Element/hocs/withElement').WithElementProps<import('./Heading').HeadingProps>): import("react").JSX.Element;
2
+ (props: import('../../../Element/hocs/withElement').WithElementProps<import('./Heading').HeadingProps>): import('react').JSX.Element;
3
3
  displayName: string;
4
4
  } & {
5
5
  readonly type: "heading";
6
+ readonly attributeValues: {
7
+ readonly subType: readonly string[];
8
+ };
6
9
  readonly content: {
7
10
  readonly attributes: {
8
11
  readonly content: "Heading";
@@ -57,7 +60,7 @@ declare const Heading: {
57
60
  readonly 'margin-bottom': "25px";
58
61
  readonly 'font-size': "38px";
59
62
  readonly 'font-weight': 700;
60
- readonly 'line-height': "44px";
63
+ readonly 'line-height': "1.158";
61
64
  };
62
65
  };
63
66
  };
@@ -72,7 +75,7 @@ declare const Heading: {
72
75
  readonly 'margin-bottom': "25px";
73
76
  readonly 'font-size': "32px";
74
77
  readonly 'font-weight': 700;
75
- readonly 'line-height': "36px";
78
+ readonly 'line-height': "1.125";
76
79
  };
77
80
  };
78
81
  };
@@ -87,7 +90,7 @@ declare const Heading: {
87
90
  readonly 'margin-bottom': "25px";
88
91
  readonly 'font-size': "24px";
89
92
  readonly 'font-weight': 700;
90
- readonly 'line-height': "30px";
93
+ readonly 'line-height': "1.25";
91
94
  };
92
95
  };
93
96
  };
@@ -102,7 +105,7 @@ declare const Heading: {
102
105
  readonly 'margin-bottom': "25px";
103
106
  readonly 'font-size': "18px";
104
107
  readonly 'font-weight': 700;
105
- readonly 'line-height': "24px";
108
+ readonly 'line-height': "1.333";
106
109
  };
107
110
  };
108
111
  };
@@ -117,7 +120,7 @@ declare const Heading: {
117
120
  readonly 'margin-bottom': "25px";
118
121
  readonly 'font-size': "14px";
119
122
  readonly 'font-weight': 700;
120
- readonly 'line-height': "20px";
123
+ readonly 'line-height': "1.429";
121
124
  };
122
125
  };
123
126
  };
@@ -132,7 +135,7 @@ declare const Heading: {
132
135
  readonly 'margin-bottom': "25px";
133
136
  readonly 'font-size': "12px";
134
137
  readonly 'font-weight': 700;
135
- readonly 'line-height': "18px";
138
+ readonly 'line-height': "1.5";
136
139
  };
137
140
  };
138
141
  };
@@ -14,9 +14,9 @@ export type LinkProps = {
14
14
  */
15
15
  label?: string;
16
16
  };
17
- declare const Link: ({ ref, children, className, href, target, mode, label }: LinkProps) => import("react").JSX.Element;
17
+ declare const Link: ({ ref, children, className, href, target, mode, label }: LinkProps) => import('react').JSX.Element;
18
18
  declare const _default: {
19
- (props: import('../../../Element/hocs/withElement').WithElementProps<LinkProps>): import("react").JSX.Element;
19
+ (props: import('../../../Element/hocs/withElement').WithElementProps<LinkProps>): import('react').JSX.Element;
20
20
  displayName: string;
21
21
  };
22
22
  export default _default;
@@ -18,8 +18,8 @@ var u = ({ ref: e, children: u, className: d = "", href: f = "#", target: p = "s
18
18
  "navigation.navigate"
19
19
  ]), C = r(() => {
20
20
  if (m === "external") return f;
21
- let e = `/${f}`.replaceAll(/[/]+/gim, "/");
22
21
  if (m === "internal") {
22
+ let e = `/${f}`.replaceAll(/[/]+/gim, "/");
23
23
  try {
24
24
  let t = o(e, {
25
25
  ...x,
@@ -38,7 +38,10 @@ var u = ({ ref: e, children: u, className: d = "", href: f = "#", target: p = "s
38
38
  x,
39
39
  b
40
40
  ]), w = (e) => {
41
- _ && (e.stopPropagation(), (m === "page" || m === "internal") && (e.preventDefault(), S(C)));
41
+ if (!_) return;
42
+ e.stopPropagation();
43
+ let t = p !== "self" || e.metaKey || e.ctrlKey || e.shiftKey || e.altKey || e.button !== 0;
44
+ (m === "page" || m === "internal") && !t && (e.preventDefault(), S(C));
42
45
  }, T = r(() => {
43
46
  let t = {
44
47
  ref: e,
@@ -2,7 +2,8 @@ type SettingsProps = {
2
2
  mode?: 'page' | 'internal' | 'external';
3
3
  href?: string;
4
4
  target?: 'blank' | 'self' | 'parent' | 'top';
5
+ label?: string;
5
6
  onUpdate?: (key: string, value: string | boolean | number) => void;
6
7
  };
7
- declare const Settings: ({ mode, href, target, onUpdate }: SettingsProps) => import("react").JSX.Element;
8
+ declare const Settings: ({ mode, href, target, label, onUpdate }: SettingsProps) => import('react').JSX.Element;
8
9
  export default Settings;
@@ -7,13 +7,13 @@ import { getPageFullPath as u } from "@plitzi/sdk-navigation/NavigationHelper";
7
7
  import d from "@plitzi/plitzi-ui/Input";
8
8
  import f from "@plitzi/plitzi-ui/Select";
9
9
  //#region src/elements/basic/Link/Settings.tsx
10
- var p = ({ mode: p = "page", href: m = "#", target: h = "self", onUpdate: g }) => {
11
- let { contexts: { NetworkContext: _ } } = i(), [[v, y, b]] = a([
10
+ var p = ({ mode: p = "page", href: m = "#", target: h = "self", label: g = "", onUpdate: _ }) => {
11
+ let { contexts: { NetworkContext: v } } = i(), [[y, b, x]] = a([
12
12
  "schema.flat",
13
13
  "schema.pages",
14
14
  "schema.pageFolders"
15
- ]), { server: x } = e(_), S = r(() => o(x, "domain", "https://subdomain.plitzi.app"), [x]), C = r(() => {
16
- let e = s(v, y);
15
+ ]), { server: S } = e(v), C = r(() => o(S, "domain", "https://subdomain.plitzi.app"), [S]), w = r(() => {
16
+ let e = s(y, b);
17
17
  return Object.keys(e).reduce((t, n) => {
18
18
  let r = e[n], i = o(r, "attributes.name", n), a = o(r, "attributes.default", !1);
19
19
  return [...t, {
@@ -22,31 +22,31 @@ var p = ({ mode: p = "page", href: m = "#", target: h = "self", onUpdate: g }) =
22
22
  defaultPage: a
23
23
  }];
24
24
  }, []);
25
- }, [v, y]), w = t((e) => (t) => g?.(e, t), [g]), T = t((e) => g?.("href", e), [g]), E = t((e) => {
26
- if (g?.("mode", e), e !== "page") {
27
- g?.("href", "#");
25
+ }, [y, b]), T = t((e) => (t) => _?.(e, t), [_]), E = t((e) => _?.("href", e), [_]), D = t((e) => {
26
+ if (_?.("mode", e), e !== "page") {
27
+ _?.("href", "#");
28
28
  return;
29
29
  }
30
- let t = C.find((e) => e.defaultPage);
31
- t && g?.("href", t.key);
32
- }, [g, C]);
30
+ let t = w.find((e) => e.defaultPage);
31
+ t && _?.("href", t.key);
32
+ }, [_, w]);
33
33
  n(() => {
34
34
  if (p === "page" && m === "#") {
35
- let e = C.find((e) => e.defaultPage);
36
- e && g?.("href", e.key);
35
+ let e = w.find((e) => e.defaultPage);
36
+ e && _?.("href", e.key);
37
37
  }
38
38
  }, [
39
39
  p,
40
40
  m,
41
- C,
42
- g
41
+ w,
42
+ _
43
43
  ]);
44
- let D = r(() => p === "page" ? `${S}${u(v, b, m, !0)}` : m.replaceAll(/[/]+/gim, "/"), [
44
+ let O = r(() => p === "page" ? `${C}${u(y, x, m, !0)}` : m.replaceAll(/[/]+/gim, "/"), [
45
45
  p,
46
- v,
47
- b,
46
+ y,
47
+ x,
48
48
  m,
49
- S
49
+ C
50
50
  ]);
51
51
  return /* @__PURE__ */ l("div", {
52
52
  className: "flex h-full flex-col gap-4 py-2",
@@ -54,7 +54,7 @@ var p = ({ mode: p = "page", href: m = "#", target: h = "self", onUpdate: g }) =
54
54
  /* @__PURE__ */ l(f, {
55
55
  value: h,
56
56
  label: "Target",
57
- onChange: w("target"),
57
+ onChange: T("target"),
58
58
  size: "sm",
59
59
  children: [
60
60
  /* @__PURE__ */ c("option", {
@@ -78,7 +78,7 @@ var p = ({ mode: p = "page", href: m = "#", target: h = "self", onUpdate: g }) =
78
78
  /* @__PURE__ */ l(f, {
79
79
  value: p,
80
80
  label: "Mode",
81
- onChange: E,
81
+ onChange: D,
82
82
  size: "sm",
83
83
  children: [
84
84
  /* @__PURE__ */ c("option", {
@@ -98,7 +98,7 @@ var p = ({ mode: p = "page", href: m = "#", target: h = "self", onUpdate: g }) =
98
98
  p !== "page" && /* @__PURE__ */ c(d, {
99
99
  value: m,
100
100
  label: "Url",
101
- onChange: T,
101
+ onChange: E,
102
102
  size: "sm"
103
103
  }),
104
104
  p === "page" && /* @__PURE__ */ l("div", {
@@ -106,21 +106,28 @@ var p = ({ mode: p = "page", href: m = "#", target: h = "self", onUpdate: g }) =
106
106
  children: [/* @__PURE__ */ l(f, {
107
107
  value: m,
108
108
  label: "Url",
109
- onChange: T,
109
+ onChange: E,
110
110
  className: { inputContainer: "rounded-t" },
111
111
  size: "sm",
112
112
  children: [/* @__PURE__ */ c("option", {
113
113
  value: "",
114
114
  disabled: !0,
115
115
  children: "Select a page"
116
- }), C.map((e) => /* @__PURE__ */ c("option", {
116
+ }), w.map((e) => /* @__PURE__ */ c("option", {
117
117
  value: e.key,
118
118
  children: e.label
119
119
  }, e.key))]
120
120
  }), /* @__PURE__ */ c("div", {
121
121
  className: "truncate rounded-b border-r border-b border-l border-gray-200 p-1 text-xs",
122
- children: D
122
+ children: O
123
123
  })]
124
+ }),
125
+ /* @__PURE__ */ c(d, {
126
+ value: g,
127
+ label: "Accessible Name",
128
+ placeholder: "For a link that wraps a whole card",
129
+ onChange: T("label"),
130
+ size: "sm"
124
131
  })
125
132
  ]
126
133
  });
@@ -4,6 +4,10 @@ import { AuthorableAttributes } from '@plitzi/sdk-shared/authoring/declare';
4
4
  export type LinkAttributes = AuthorableAttributes<LinkProps>;
5
5
  declare const declaration: {
6
6
  readonly type: "link";
7
+ readonly attributeValues: {
8
+ readonly mode: readonly string[];
9
+ readonly target: readonly string[];
10
+ };
7
11
  readonly content: {
8
12
  readonly attributes: {
9
13
  readonly href: "#";
@@ -59,8 +63,8 @@ declare const declaration: {
59
63
  };
60
64
  } & import('@plitzi/sdk-shared/authoring/declare').ElementAttributesBrand<Partial<{
61
65
  mode?: "page" | "internal" | "external" | undefined;
66
+ href?: string | undefined;
62
67
  label?: string | undefined;
63
68
  target?: "self" | "blank" | "parent" | "top" | undefined;
64
- href?: string | undefined;
65
69
  }>>;
66
70
  export default declaration;