@plitzi/sdk-elements 0.38.10 → 0.38.12

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 (228) hide show
  1. package/CHANGELOG.md +295 -0
  2. package/dist/Element/ElementWords.d.ts +6 -2
  3. package/dist/Element/ElementWords.mjs +18 -11
  4. package/dist/Element/JsxManager.mjs +8 -8
  5. package/dist/Element/PluginManager.mjs +4 -4
  6. package/dist/Element/ReplicaProvider.mjs +9 -9
  7. package/dist/Element/RootElement.mjs +60 -60
  8. package/dist/Element/helpers/declaredAttributes.d.ts +10 -0
  9. package/dist/Element/helpers/declaredAttributes.mjs +22 -0
  10. package/dist/Element/hocs/withElement.mjs +101 -100
  11. package/dist/Element/hooks/useEditableContent.d.ts +12 -0
  12. package/dist/Element/hooks/useEditableContent.mjs +21 -0
  13. package/dist/Element/hooks/useElementDataSource.mjs +9 -9
  14. package/dist/Element/hooks/useElementVisible.mjs +1 -1
  15. package/dist/Element/hooks/useInternalItems.mjs +22 -23
  16. package/dist/Element/hooks/useIntervalTriggers.d.ts +2 -3
  17. package/dist/Element/hooks/useKeyTriggers.d.ts +2 -3
  18. package/dist/Element/hooks/usePluginTrigger.d.ts +21 -0
  19. package/dist/Element/hooks/usePluginTrigger.mjs +18 -0
  20. package/dist/Element/hooks/useRootElementInteractions.d.ts +2 -4
  21. package/dist/Element/hooks/useRootElementInteractions.mjs +79 -76
  22. package/dist/Element/hooks/useScrollInteractions.d.ts +2 -3
  23. package/dist/canvas/useAnimationFrame.mjs +1 -1
  24. package/dist/dataSource/GlobalSources.mjs +1 -1
  25. package/dist/dataSource/pathFields.mjs +1 -1
  26. package/dist/dataSource/sourceStore.d.ts +7 -0
  27. package/dist/dataSource/sourceStore.mjs +5 -0
  28. package/dist/elements/advanced/BlockHtml/BlockHtml.mjs +1 -1
  29. package/dist/elements/advanced/BlockHtml/declaration.d.ts +2 -27
  30. package/dist/elements/advanced/BlockHtml/declaration.mjs +2 -25
  31. package/dist/elements/advanced/BlockHtml/index.d.ts +2 -25
  32. package/dist/elements/advanced/BlockJsx/Settings.mjs +37 -37
  33. package/dist/elements/advanced/BlockJsx/declaration.d.ts +2 -27
  34. package/dist/elements/advanced/BlockJsx/declaration.mjs +2 -25
  35. package/dist/elements/advanced/BlockJsx/index.d.ts +2 -25
  36. package/dist/elements/advanced/Custom/Custom.mjs +52 -42
  37. package/dist/elements/advanced/Custom/Settings.mjs +41 -40
  38. package/dist/elements/advanced/Custom/declaration.d.ts +2 -26
  39. package/dist/elements/advanced/Custom/declaration.mjs +2 -22
  40. package/dist/elements/advanced/Custom/index.d.ts +2 -24
  41. package/dist/elements/advanced/NodeHtml/Settings.mjs +3 -3
  42. package/dist/elements/advanced/NodeHtml/declaration.d.ts +19 -44
  43. package/dist/elements/advanced/NodeHtml/declaration.mjs +2 -23
  44. package/dist/elements/advanced/NodeHtml/index.d.ts +19 -42
  45. package/dist/elements/advanced/PlitziSdk/Settings.mjs +4 -4
  46. package/dist/elements/advanced/Reference/Reference.mjs +1 -1
  47. package/dist/elements/advanced/Reference/declaration.d.ts +3 -27
  48. package/dist/elements/advanced/Reference/declaration.mjs +2 -22
  49. package/dist/elements/advanced/Reference/index.d.ts +3 -25
  50. package/dist/elements/basic/Button/Button.mjs +24 -31
  51. package/dist/elements/basic/Button/declaration.d.ts +4 -27
  52. package/dist/elements/basic/Button/declaration.mjs +2 -25
  53. package/dist/elements/basic/Button/index.d.ts +4 -25
  54. package/dist/elements/basic/Dropdown/Dropdown.mjs +1 -1
  55. package/dist/elements/basic/Dropdown/DropdownPopup/declaration.d.ts +3 -19
  56. package/dist/elements/basic/Dropdown/DropdownPopup/declaration.mjs +2 -16
  57. package/dist/elements/basic/Dropdown/DropdownPopup/index.d.ts +3 -17
  58. package/dist/elements/basic/Dropdown/declaration.d.ts +3 -26
  59. package/dist/elements/basic/Dropdown/declaration.mjs +16 -41
  60. package/dist/elements/basic/Dropdown/index.d.ts +5 -42
  61. package/dist/elements/basic/Dropdown/useDropdown.mjs +23 -29
  62. package/dist/elements/basic/Heading/Heading.mjs +15 -17
  63. package/dist/elements/basic/Heading/Settings.mjs +4 -4
  64. package/dist/elements/basic/Heading/declaration.d.ts +2 -27
  65. package/dist/elements/basic/Heading/declaration.mjs +2 -23
  66. package/dist/elements/basic/Heading/index.d.ts +2 -25
  67. package/dist/elements/basic/Link/Link.mjs +52 -59
  68. package/dist/elements/basic/Link/Settings.mjs +52 -51
  69. package/dist/elements/basic/Link/declaration.d.ts +6 -26
  70. package/dist/elements/basic/Link/declaration.mjs +8 -32
  71. package/dist/elements/basic/Link/index.d.ts +6 -24
  72. package/dist/elements/basic/Markdown/Markdown.mjs +1 -1
  73. package/dist/elements/basic/Markdown/declaration.d.ts +2 -25
  74. package/dist/elements/basic/Markdown/declaration.mjs +2 -25
  75. package/dist/elements/basic/Markdown/index.d.ts +2 -23
  76. package/dist/elements/basic/Paragraph/Paragraph.mjs +15 -17
  77. package/dist/elements/basic/Paragraph/declaration.d.ts +2 -27
  78. package/dist/elements/basic/Paragraph/declaration.mjs +5 -28
  79. package/dist/elements/basic/Paragraph/index.d.ts +2 -25
  80. package/dist/elements/basic/RichText/RichText.mjs +1 -1
  81. package/dist/elements/basic/RichText/Settings.mjs +4 -4
  82. package/dist/elements/basic/RichText/declaration.d.ts +4 -27
  83. package/dist/elements/basic/RichText/declaration.mjs +2 -23
  84. package/dist/elements/basic/RichText/index.d.ts +4 -25
  85. package/dist/elements/basic/Text/Text.mjs +16 -18
  86. package/dist/elements/basic/Text/declaration.d.ts +3 -28
  87. package/dist/elements/basic/Text/declaration.mjs +2 -25
  88. package/dist/elements/basic/Text/index.d.ts +3 -26
  89. package/dist/elements/basic/ThemeToggle/Settings.d.ts +6 -0
  90. package/dist/elements/basic/ThemeToggle/Settings.mjs +49 -0
  91. package/dist/elements/basic/ThemeToggle/ThemeToggle.mjs +40 -39
  92. package/dist/elements/basic/ThemeToggle/declaration.d.ts +3 -26
  93. package/dist/elements/basic/ThemeToggle/declaration.mjs +2 -23
  94. package/dist/elements/basic/ThemeToggle/index.d.ts +3 -24
  95. package/dist/elements/declarations/index.d.ts +145 -1061
  96. package/dist/elements/form/Form/Form.mjs +65 -64
  97. package/dist/elements/form/Form/declaration.d.ts +3 -28
  98. package/dist/elements/form/Form/declaration.mjs +2 -25
  99. package/dist/elements/form/Form/index.d.ts +17 -25
  100. package/dist/elements/form/FormControl/FormControl.mjs +106 -105
  101. package/dist/elements/form/FormControl/declaration.d.ts +2 -22
  102. package/dist/elements/form/FormControl/declaration.mjs +4 -23
  103. package/dist/elements/form/FormControl/hocs/withFieldValue.mjs +1 -1
  104. package/dist/elements/form/FormControl/index.d.ts +16 -20
  105. package/dist/elements/internal/LayoutContainer/LayoutContainer.mjs +1 -1
  106. package/dist/elements/internal/LayoutContainer/declaration.d.ts +3 -25
  107. package/dist/elements/internal/LayoutContainer/declaration.mjs +3 -23
  108. package/dist/elements/internal/LayoutContainer/index.d.ts +3 -23
  109. package/dist/elements/internal/Loading/Settings.d.ts +2 -0
  110. package/dist/elements/internal/Loading/Settings.mjs +5 -0
  111. package/dist/elements/internal/Loading/declaration.d.ts +2 -24
  112. package/dist/elements/internal/Loading/declaration.mjs +3 -25
  113. package/dist/elements/internal/Loading/index.d.ts +2 -22
  114. package/dist/elements/internal/NotFound/NotFound.mjs +1 -1
  115. package/dist/elements/internal/NotFound/Settings.d.ts +2 -0
  116. package/dist/elements/internal/NotFound/Settings.mjs +5 -0
  117. package/dist/elements/internal/NotFound/declaration.d.ts +2 -24
  118. package/dist/elements/internal/NotFound/declaration.mjs +7 -29
  119. package/dist/elements/internal/NotFound/index.d.ts +2 -22
  120. package/dist/elements/internal/Page/Page.mjs +17 -16
  121. package/dist/elements/internal/Page/Settings.mjs +102 -101
  122. package/dist/elements/internal/Page/declaration.d.ts +3 -23
  123. package/dist/elements/internal/Page/declaration.mjs +14 -32
  124. package/dist/elements/internal/Page/index.d.ts +3 -21
  125. package/dist/elements/media/Embed/Embed.mjs +1 -1
  126. package/dist/elements/media/Embed/Settings.mjs +7 -7
  127. package/dist/elements/media/Embed/declaration.d.ts +2 -27
  128. package/dist/elements/media/Embed/declaration.mjs +10 -33
  129. package/dist/elements/media/Embed/index.d.ts +2 -25
  130. package/dist/elements/media/FontAwesome/Settings.mjs +8 -8
  131. package/dist/elements/media/FontAwesome/declaration.d.ts +2 -27
  132. package/dist/elements/media/FontAwesome/declaration.mjs +5 -28
  133. package/dist/elements/media/FontAwesome/index.d.ts +2 -25
  134. package/dist/elements/media/Image/Image.mjs +1 -1
  135. package/dist/elements/media/Image/Settings.mjs +47 -46
  136. package/dist/elements/media/Image/declaration.d.ts +2 -27
  137. package/dist/elements/media/Image/declaration.mjs +7 -30
  138. package/dist/elements/media/Image/index.d.ts +2 -25
  139. package/dist/elements/media/Svg/Settings.mjs +4 -4
  140. package/dist/elements/media/Svg/Svg.mjs +1 -1
  141. package/dist/elements/media/Svg/declaration.d.ts +3 -27
  142. package/dist/elements/media/Svg/declaration.mjs +2 -22
  143. package/dist/elements/media/Svg/index.d.ts +3 -25
  144. package/dist/elements/media/Video/Settings.mjs +7 -7
  145. package/dist/elements/media/Video/Video.mjs +1 -1
  146. package/dist/elements/media/Video/declaration.d.ts +2 -27
  147. package/dist/elements/media/Video/declaration.mjs +6 -29
  148. package/dist/elements/media/Video/index.d.ts +2 -25
  149. package/dist/elements/provider/ApiContainer/ApiContainer.mjs +151 -150
  150. package/dist/elements/provider/ApiContainer/Settings.mjs +135 -134
  151. package/dist/elements/provider/ApiContainer/declaration.d.ts +3 -28
  152. package/dist/elements/provider/ApiContainer/declaration.mjs +2 -23
  153. package/dist/elements/provider/ApiContainer/index.d.ts +3 -26
  154. package/dist/elements/provider/Channel/Channel.mjs +57 -55
  155. package/dist/elements/provider/Channel/declaration.d.ts +9 -28
  156. package/dist/elements/provider/Channel/declaration.mjs +10 -25
  157. package/dist/elements/provider/Channel/index.d.ts +9 -26
  158. package/dist/elements/settings.mjs +70 -62
  159. package/dist/elements/structure/Carousel/Carousel.mjs +36 -35
  160. package/dist/elements/structure/Carousel/CarouselTrack/declaration.d.ts +3 -25
  161. package/dist/elements/structure/Carousel/CarouselTrack/declaration.mjs +6 -28
  162. package/dist/elements/structure/Carousel/CarouselTrack/index.d.ts +3 -23
  163. package/dist/elements/structure/Carousel/Settings.mjs +40 -39
  164. package/dist/elements/structure/Carousel/declaration.d.ts +4 -29
  165. package/dist/elements/structure/Carousel/declaration.mjs +2 -25
  166. package/dist/elements/structure/Carousel/index.d.ts +6 -51
  167. package/dist/elements/structure/Container/Settings.mjs +40 -39
  168. package/dist/elements/structure/Container/declaration.d.ts +3 -28
  169. package/dist/elements/structure/Container/declaration.mjs +2 -23
  170. package/dist/elements/structure/Container/index.d.ts +3 -26
  171. package/dist/elements/structure/DialogContainer/DialogContainer.d.ts +8 -8
  172. package/dist/elements/structure/DialogContainer/DialogContainer.mjs +54 -173
  173. package/dist/elements/structure/DialogContainer/Settings.mjs +24 -23
  174. package/dist/elements/structure/DialogContainer/declaration.d.ts +8 -31
  175. package/dist/elements/structure/DialogContainer/declaration.mjs +2 -23
  176. package/dist/elements/structure/DialogContainer/index.d.ts +8 -29
  177. package/dist/elements/structure/List/ListItem/declaration.d.ts +4 -26
  178. package/dist/elements/structure/List/ListItem/declaration.mjs +3 -25
  179. package/dist/elements/structure/List/ListItem/index.d.ts +4 -24
  180. package/dist/elements/structure/List/Settings.mjs +6 -6
  181. package/dist/elements/structure/List/declaration.d.ts +3 -28
  182. package/dist/elements/structure/List/declaration.mjs +2 -23
  183. package/dist/elements/structure/List/index.d.ts +6 -51
  184. package/dist/elements/structure/List/modes/ListControlled/ListControlled.mjs +13 -12
  185. package/dist/elements/structure/List/modes/ListControlled/ListControlledItem.mjs +6 -6
  186. package/dist/elements/structure/ModalContainer/ModalContainer.mjs +27 -121
  187. package/dist/elements/structure/ModalContainer/Settings.mjs +15 -14
  188. package/dist/elements/structure/ModalContainer/declaration.d.ts +3 -26
  189. package/dist/elements/structure/ModalContainer/declaration.mjs +2 -23
  190. package/dist/elements/structure/ModalContainer/index.d.ts +3 -24
  191. package/dist/elements/structure/Overlay/OverlayShell.d.ts +24 -0
  192. package/dist/elements/structure/Overlay/OverlayShell.mjs +64 -0
  193. package/dist/elements/structure/Overlay/metadataOf.d.ts +8 -0
  194. package/dist/elements/structure/{ModalContainer/metadataFromText.mjs → Overlay/metadataOf.mjs} +5 -2
  195. package/dist/elements/structure/{ModalContainer → Overlay}/useModalDialog.mjs +1 -1
  196. package/dist/elements/structure/Overlay/useOverlay.d.ts +40 -0
  197. package/dist/elements/structure/Overlay/useOverlay.mjs +83 -0
  198. package/dist/elements/structure/Pagination/Pagination.mjs +28 -27
  199. package/dist/elements/structure/Pagination/Settings.mjs +10 -10
  200. package/dist/elements/structure/Pagination/declaration.d.ts +3 -26
  201. package/dist/elements/structure/Pagination/declaration.mjs +2 -23
  202. package/dist/elements/structure/Pagination/index.d.ts +3 -24
  203. package/dist/elements/structure/TabContainer/TabContainerBody/TabContainerBody.d.ts +3 -3
  204. package/dist/elements/structure/TabContainer/TabContainerBody/TabContainerBody.mjs +10 -32
  205. package/dist/elements/structure/TabContainer/TabContainerBody/declaration.d.ts +4 -22
  206. package/dist/elements/structure/TabContainer/TabContainerBody/declaration.mjs +3 -17
  207. package/dist/elements/structure/TabContainer/TabContainerBody/index.d.ts +4 -20
  208. package/dist/elements/structure/TabContainer/TabContainerHeader/TabContainerHeader.d.ts +3 -3
  209. package/dist/elements/structure/TabContainer/TabContainerHeader/TabContainerHeader.mjs +10 -34
  210. package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.d.ts +4 -22
  211. package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.mjs +3 -17
  212. package/dist/elements/structure/TabContainer/TabContainerHeader/index.d.ts +4 -20
  213. package/dist/elements/structure/TabContainer/TabContainerItem/declaration.d.ts +4 -26
  214. package/dist/elements/structure/TabContainer/TabContainerItem/declaration.mjs +7 -27
  215. package/dist/elements/structure/TabContainer/TabContainerItem/index.d.ts +4 -24
  216. package/dist/elements/structure/TabContainer/declaration.d.ts +4 -26
  217. package/dist/elements/structure/TabContainer/declaration.mjs +3 -23
  218. package/dist/elements/structure/TabContainer/index.d.ts +15 -89
  219. package/dist/elements/structure/TabContainer/useTabItems.d.ts +7 -0
  220. package/dist/elements/structure/TabContainer/useTabItems.mjs +35 -0
  221. package/dist/elements/useSettingsUpdate.d.ts +12 -0
  222. package/dist/elements/useSettingsUpdate.mjs +8 -0
  223. package/dist/index.d.ts +169 -984
  224. package/dist/realtime/useChannel.d.ts +4 -3
  225. package/dist/realtime/useChannel.mjs +36 -36
  226. package/package.json +58 -14
  227. package/dist/elements/structure/ModalContainer/metadataFromText.d.ts +0 -7
  228. /package/dist/elements/structure/{ModalContainer → Overlay}/useModalDialog.d.ts +0 -0
@@ -1,85 +1,86 @@
1
1
  import e from "../ElementContext.mjs";
2
2
  import t from "../ElementParentContext.mjs";
3
- import { isVisible as n } from "../helpers/isVisible.mjs";
4
- import { omitKeys as r } from "../helpers/omitKeys.mjs";
5
- import i from "../hooks/useElementInternal.mjs";
6
- import a from "@plitzi/plitzi-ui/ErrorBoundary";
7
- import { Profiler as o, use as s, useEffect as c, useId as l, useMemo as u, useRef as d } from "react";
8
- import f from "@plitzi/sdk-event-bridge/hooks/useEventBridge";
9
- import p from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
10
- import { useCommonStore as m } from "@plitzi/sdk-shared/store";
11
- import { diffProps as h, tracingCollector as g } from "@plitzi/sdk-shared/store/tracing";
12
- import { jsx as _ } from "react/jsx-runtime";
3
+ import { declaredAttributes as n } from "../helpers/declaredAttributes.mjs";
4
+ import { isVisible as r } from "../helpers/isVisible.mjs";
5
+ import { omitKeys as i } from "../helpers/omitKeys.mjs";
6
+ import a from "../hooks/useElementInternal.mjs";
7
+ import o from "@plitzi/plitzi-ui/ErrorBoundary";
8
+ import { Profiler as s, use as c, useEffect as l, useId as u, useMemo as d, useRef as f } from "react";
9
+ import p from "@plitzi/sdk-event-bridge/hooks/useEventBridge";
10
+ import m from "@plitzi/sdk-shared/hooks/usePlitzi";
11
+ import { useCommonStore as h } from "@plitzi/sdk-shared/store";
12
+ import { diffProps as g, tracingCollector as _ } from "@plitzi/sdk-shared/store/tracing";
13
+ import { jsx as v } from "react/jsx-runtime";
13
14
  //#region src/Element/hocs/withElement.tsx
14
- var v = (v) => {
15
- let y = v.displayName || v.name, b = (y) => {
16
- let b = d(void 0), x = d(void 0), { id: S, rootId: C } = y.internalProps, w = s(t), T = w?.visible ?? !0, E = `${S}${l()}`, D = w?.traceId ?? E, O = u(() => ({
17
- id: S,
18
- rootId: C,
19
- visible: T,
20
- traceId: D,
15
+ var y = (y) => {
16
+ let b = y.displayName || y.name, x = (b) => {
17
+ let x = f(void 0), S = f(void 0), { id: C, rootId: w } = b.internalProps, T = c(t), E = T?.visible ?? !0, D = `${C}${u()}`, O = T?.traceId ?? D, k = d(() => ({
18
+ id: C,
19
+ rootId: w,
20
+ visible: E,
21
+ traceId: O,
21
22
  plitziJsxSkipHOC: !0
22
23
  }), [
23
- S,
24
24
  C,
25
- T,
26
- D
27
- ]), k = u(() => ({
28
- visible: T,
29
- traceId: D
30
- }), [T, D]);
31
- if (y.plitziJsxSkipHOC) return /* @__PURE__ */ _(t, {
32
- value: k,
33
- children: /* @__PURE__ */ _(e, {
34
- value: O,
35
- children: /* @__PURE__ */ _(v, { ...y })
25
+ w,
26
+ E,
27
+ O
28
+ ]), A = d(() => ({
29
+ visible: E,
30
+ traceId: O
31
+ }), [E, O]);
32
+ if (b.plitziJsxSkipHOC) return /* @__PURE__ */ v(t, {
33
+ value: A,
34
+ children: /* @__PURE__ */ v(e, {
35
+ value: k,
36
+ children: /* @__PURE__ */ v(y, { ...b })
36
37
  })
37
38
  });
38
- let { settings: { previewMode: A, debugMode: j }, root: { baseElementId: M } } = p();
39
- c(() => {
40
- if (j) return g.markMounted(E), () => g.markUnmounted(E);
41
- }, [j, E]);
42
- let [N] = m(`schema.flat.${S}`);
43
- if (!N) throw Error(`Element ${S} not found, Page ${M}`);
44
- let { internalProps: P, customProps: F, children: I } = i({
45
- element: N,
46
- internalProps: y.internalProps,
47
- children: y.children,
48
- previewMode: A,
49
- parentVisible: T
50
- }), { attributes: L, definition: R, style: z, plitziElementLayout: B, elementState: V, setElementState: H } = P, U = u(() => ({ [`${S}_setState`]: H }), [S, H]);
51
- f("element", U);
52
- let W = T && n(V.visibility), G = u(() => ({
53
- id: S,
54
- rootId: C,
55
- visible: W,
56
- traceId: E,
57
- attributes: L,
58
- definition: R,
59
- plitziElementLayout: B,
60
- style: z,
61
- elementState: V,
62
- setElementState: H
39
+ let { settings: { previewMode: j, debugMode: M }, root: { baseElementId: N } } = m();
40
+ l(() => {
41
+ if (M) return _.markMounted(D), () => _.markUnmounted(D);
42
+ }, [M, D]);
43
+ let [P] = h(`schema.flat.${C}`);
44
+ if (!P) throw Error(`Element ${C} not found, Page ${N}`);
45
+ let { internalProps: F, customProps: I, children: L } = a({
46
+ element: P,
47
+ internalProps: b.internalProps,
48
+ children: b.children,
49
+ previewMode: j,
50
+ parentVisible: E
51
+ }), { attributes: R, definition: z, style: B, plitziElementLayout: V, elementState: H, setElementState: U } = F, W = d(() => ({ [`${C}_setState`]: U }), [C, U]);
52
+ p("element", W);
53
+ let G = E && r(H.visibility), K = d(() => ({
54
+ id: C,
55
+ rootId: w,
56
+ visible: G,
57
+ traceId: D,
58
+ attributes: R,
59
+ definition: z,
60
+ plitziElementLayout: V,
61
+ style: B,
62
+ elementState: H,
63
+ setElementState: U
63
64
  }), [
64
- L,
65
65
  R,
66
- V,
67
- S,
68
- B,
69
- C,
70
66
  z,
71
67
  H,
72
- W,
73
- E
74
- ]), K = u(() => ({
75
- visible: W,
76
- traceId: E
77
- }), [W, E]), q = u(() => {
68
+ C,
69
+ V,
70
+ w,
71
+ B,
72
+ U,
73
+ G,
74
+ D
75
+ ]), q = d(() => ({
76
+ visible: G,
77
+ traceId: D
78
+ }), [G, D]), J = d(() => {
78
79
  let e = {
79
- ...P.attributes,
80
- ...y.extraProps,
81
- ...F,
82
- ...r(y, [
80
+ ...n(y, F.attributes),
81
+ ...b.extraProps,
82
+ ...I,
83
+ ...i(b, [
83
84
  "plitziJsxSkipHOC",
84
85
  "internalProps",
85
86
  "className",
@@ -87,37 +88,37 @@ var v = (v) => {
87
88
  "extraProps"
88
89
  ])
89
90
  };
90
- return I && (e = {
91
+ return L && (e = {
91
92
  ...e,
92
- children: I
93
- }), /* @__PURE__ */ _(a, { children: /* @__PURE__ */ _(v, {
93
+ children: L
94
+ }), /* @__PURE__ */ v(o, { children: /* @__PURE__ */ v(y, {
94
95
  ...e,
95
- ref: b
96
+ ref: x
96
97
  }) });
97
98
  }, [
98
- P.attributes,
99
- y,
100
- F,
101
- I
102
- ]), J = /* @__PURE__ */ _(t, {
103
- value: K,
104
- children: /* @__PURE__ */ _(e, {
105
- value: G,
106
- children: q
99
+ F.attributes,
100
+ b,
101
+ I,
102
+ L
103
+ ]), Y = /* @__PURE__ */ v(t, {
104
+ value: q,
105
+ children: /* @__PURE__ */ v(e, {
106
+ value: K,
107
+ children: J
107
108
  })
108
109
  });
109
- if (j) {
110
- g.linkParent(E, w?.traceId, S);
110
+ if (M) {
111
+ _.linkParent(D, T?.traceId, C);
111
112
  let e = {
112
- attributes: L,
113
- definition: R,
114
- style: z,
115
- elementState: V,
116
- plitziElementLayout: B,
117
- children: I,
118
- ...F,
119
- ...y.extraProps,
120
- ...r(y, [
113
+ attributes: R,
114
+ definition: z,
115
+ style: B,
116
+ elementState: H,
117
+ plitziElementLayout: V,
118
+ children: L,
119
+ ...I,
120
+ ...b.extraProps,
121
+ ...i(b, [
121
122
  "plitziJsxSkipHOC",
122
123
  "internalProps",
123
124
  "className",
@@ -125,15 +126,15 @@ var v = (v) => {
125
126
  "extraProps"
126
127
  ])
127
128
  };
128
- return g.recordProps(E, h(x.current, e)), x.current = e, /* @__PURE__ */ _(o, {
129
- id: E,
130
- onRender: g.onRender,
131
- children: J
129
+ return _.recordProps(D, g(S.current, e)), S.current = e, /* @__PURE__ */ v(s, {
130
+ id: D,
131
+ onRender: _.onRender,
132
+ children: Y
132
133
  });
133
134
  }
134
- return J;
135
+ return Y;
135
136
  };
136
- return b.displayName = `withElement(${y})`, b;
137
+ return x.displayName = `withElement(${b})`, x;
137
138
  };
138
139
  //#endregion
139
- export { v as default };
140
+ export { y as default };
@@ -0,0 +1,12 @@
1
+ /** A `content` as the words drawn: a number written out, nothing as nothing, anything else that is not text as its JSON. */
2
+ export declare const contentText: (content: unknown) => string;
3
+ /**
4
+ * A text element's words: drawn on a page, and edited in place in the builder — double-click, type — each change
5
+ * written back to the element's `content`.
6
+ */
7
+ declare const useEditableContent: (content: unknown) => {
8
+ previewMode: boolean | undefined;
9
+ text: string;
10
+ handleChange: (value: string) => void;
11
+ };
12
+ export default useEditableContent;
@@ -0,0 +1,21 @@
1
+ import e from "./useElement.mjs";
2
+ import { use as t, useCallback as n, useMemo as r } from "react";
3
+ import i from "@plitzi/sdk-shared/hooks/usePlitzi";
4
+ import a from "@plitzi/sdk-shared/builder/contexts/BuilderContext";
5
+ //#region src/Element/hooks/useEditableContent.ts
6
+ var o = (e) => typeof e == "string" ? e : typeof e == "number" ? `${e}` : e == null ? "" : JSON.stringify(e), s = (s) => {
7
+ let { id: c } = e(), { settings: { previewMode: l } } = i(), u = t(a);
8
+ return {
9
+ previewMode: l,
10
+ text: r(() => o(s), [s]),
11
+ handleChange: n((e) => {
12
+ l || u.updateElement(c, "content", e);
13
+ }, [
14
+ u,
15
+ c,
16
+ l
17
+ ])
18
+ };
19
+ };
20
+ //#endregion
21
+ export { o as contentText, s as default };
@@ -1,23 +1,23 @@
1
1
  import { useMemo as e } from "react";
2
2
  import { useCommonStore as t } from "@plitzi/sdk-shared/store";
3
- import { templatePaths as n } from "@plitzi/sdk-shared/helpers/twigWrapper";
4
- import { isRecord as r } from "@plitzi/sdk-shared/helpers/isRecord";
3
+ import { isRecord as n } from "@plitzi/sdk-shared/helpers/isRecord";
4
+ import { templatePaths as r } from "@plitzi/sdk-shared/helpers/twigWrapper";
5
5
  //#region src/Element/hooks/useElementDataSource.ts
6
- var i = ({ source: e, transformers: t, when: r }) => {
6
+ var i = ({ source: e, transformers: t, when: n }) => {
7
7
  let i = e ? [e] : [];
8
- for (let { action: e, params: r } of t ?? []) e === "twigTemplate" && typeof r.template == "string" && r.template && i.push(...n(r.template).filter((e) => e !== "source" && !e.startsWith("source.")));
9
- return r && i.push(...a(r)), i;
8
+ for (let { action: e, params: n } of t ?? []) e === "twigTemplate" && typeof n.template == "string" && n.template && i.push(...r(n.template).filter((e) => e !== "source" && !e.startsWith("source.")));
9
+ return n && i.push(...a(n)), i;
10
10
  }, a = (e) => e.rules.flatMap((e) => "rules" in e ? a(e) : [e.field, ...e.isBinding && typeof e.value == "string" ? [e.value] : []]), o = (e) => {
11
11
  let t = [];
12
12
  for (let n of [...new Set(e)].filter(Boolean).sort((e, t) => e.length - t.length)) t.some((e) => n.startsWith(`${e}.`)) || t.push(n);
13
13
  return t;
14
- }, s = (e, t, n) => {
14
+ }, s = (e, t, r) => {
15
15
  let i = t.split("."), a = e;
16
16
  for (let e of i.slice(0, -1)) {
17
- let t = a[e], n = r(t) ? t : {};
18
- a[e] = n, a = n;
17
+ let t = a[e], r = n(t) ? t : {};
18
+ a[e] = r, a = r;
19
19
  }
20
- a[i[i.length - 1]] = n;
20
+ a[i[i.length - 1]] = r;
21
21
  }, c = ({ bindings: n, sources: r }) => {
22
22
  let a = e(() => {
23
23
  let e = new Set(r ?? []);
@@ -1,5 +1,5 @@
1
1
  import { useEffect as e, useState as t } from "react";
2
- import n from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
2
+ import n from "@plitzi/sdk-shared/hooks/usePlitzi";
3
3
  //#region src/Element/hooks/useElementVisible.ts
4
4
  var r = (e) => typeof e.checkVisibility == "function" ? e.checkVisibility() : e.getClientRects().length > 0, i = (i) => {
5
5
  let { utils: { rootRef: a } } = n(), [o, s] = t(void 0);
@@ -4,29 +4,29 @@ import r from "../ServerStaticShell.mjs";
4
4
  import { Fragment as i, isValidElement as a, use as o, useMemo as s, useRef as c, useSyncExternalStore as l } from "react";
5
5
  import { useCommonStore as u } from "@plitzi/sdk-shared/store";
6
6
  import { get as d } from "@plitzi/plitzi-ui/helpers";
7
- import { usePlitziServiceContext as f } from "@plitzi/sdk-shared";
8
- import p from "@plitzi/sdk-shared/elements/ComponentContext";
9
- import { passesFlagGate as m } from "@plitzi/sdk-shared/flags";
7
+ import f from "@plitzi/sdk-shared/elements/ComponentContext";
8
+ import { passesFlagGate as p } from "@plitzi/sdk-shared/flags";
9
+ import m from "@plitzi/sdk-shared/plugins/PluginsContext";
10
10
  import { jsx as h } from "react/jsx-runtime";
11
11
  //#region src/Element/hooks/useInternalItems.tsx
12
12
  var g = typeof window > "u", _ = "#layout-body", v = "#children", y = {}, b = () => () => {}, x = () => !0, S = () => !1, C = ({ id: C, definition: w, plitziElementLayout: T, children: E, previewMode: D, visible: O = !0 }) => {
13
- let [[k, A]] = u(["schema.flat", "rsc.enabled"], { mode: "mount" }), [j = y] = u("runtime.sources.flags"), { components: M, componentDefinitions: N } = o(p), { contexts: { PluginsContext: P } } = f(), { plugins: F } = o(P), { items: I } = w, L = N.current[w.type], R = w.loadStrategy ?? L?.definition.loadStrategy ?? "eager", z = T || E || I?.length, B = c(!1);
14
- O && (B.current = !0);
15
- let V = !D || R === "eager" || O || R === "lazy" && B.current, H = T ? `${T.type}:${T.rootId}:${T.slots.join(",")}` : "", U = l(b, x, S), W = T?.slots.includes(C) ?? !1, G = n(W ? C : void 0);
13
+ let [[k, A]] = u(["schema.flat", "rsc.enabled"], { mode: "mount" }), [j = y] = u("runtime.sources.flags"), { components: M, componentDefinitions: N } = o(f), { plugins: P } = o(m), { items: F } = w, I = N.current[w.type], L = w.loadStrategy ?? I?.definition.loadStrategy ?? "eager", R = T || E || F?.length, z = c(!1);
14
+ O && (z.current = !0);
15
+ let B = !D || L === "eager" || O || L === "lazy" && z.current, V = T ? `${T.type}:${T.rootId}:${T.slots.join(",")}` : "", H = l(b, x, S), U = T?.slots.includes(C) ?? !1, W = n(U ? C : void 0);
16
16
  return s(() => {
17
- if (!z || !V) return;
18
- let n = (I ?? []).filter((e) => {
17
+ if (!R || !B) return;
18
+ let n = (F ?? []).filter((e) => {
19
19
  let t = k[e];
20
- if (!t || !m(t.definition.flag, j)) return !1;
20
+ if (!t || !p(t.definition.flag, j)) return !1;
21
21
  if (!D || !A) return !0;
22
22
  let n = t.definition.runtime ?? "shared";
23
- return !(!U && n === "client");
23
+ return !(!H && n === "client");
24
24
  }).map((n) => {
25
25
  let { rootId: i, type: a, runtime: o } = d(k, `${n}.definition`, {}), s = d(T, "rootId", i), c = a in M.current || !!t({
26
26
  type: a,
27
- plugins: F
27
+ plugins: P
28
28
  }), l = e({
29
- key: !D && T ? `${n}_${H}` : n,
29
+ key: !D && T ? `${n}_${V}` : n,
30
30
  plitziElementLayout: T,
31
31
  type: a,
32
32
  internalProps: {
@@ -34,32 +34,31 @@ var g = typeof window > "u", _ = "#layout-body", v = "#children", y = {}, b = ()
34
34
  rootId: s
35
35
  },
36
36
  components: M.current,
37
- plugins: F
37
+ plugins: P
38
38
  });
39
39
  return A && o === "server" && !g && D ? /* @__PURE__ */ h(r, {
40
40
  id: n,
41
- frozen: !(U && c),
41
+ frozen: !(H && c),
42
42
  children: l
43
43
  }, n) : l;
44
44
  });
45
- if (W && n.push(/* @__PURE__ */ h(i, { children: G }, _)), Array.isArray(E) ? n.push(...E.filter(a)) : a(E) && n.push(/* @__PURE__ */ h(i, { children: E }, v)), I) return n.length === 1 ? n[0] : n;
45
+ if (U && n.push(/* @__PURE__ */ h(i, { children: W }, _)), Array.isArray(E) ? n.push(...E.filter(a)) : a(E) && n.push(/* @__PURE__ */ h(i, { children: E }, v)), F) return n.length === 1 ? n[0] : n;
46
46
  }, [
47
- z,
48
- V,
49
- I,
47
+ R,
48
+ B,
49
+ F,
50
50
  j,
51
51
  T,
52
52
  E,
53
53
  k,
54
54
  D,
55
55
  A,
56
- U,
57
56
  H,
57
+ V,
58
58
  M,
59
- F,
60
- C,
61
- W,
62
- G
59
+ P,
60
+ U,
61
+ W
63
62
  ]);
64
63
  };
65
64
  //#endregion
@@ -1,10 +1,9 @@
1
- import { InteractionsManager } from '@plitzi/sdk-interactions';
2
- import { ElementInteraction } from '@plitzi/sdk-shared';
1
+ import { InteractionsManagerApi, ElementInteraction } from '@plitzi/sdk-shared';
3
2
  export type UseIntervalTriggersProps = {
4
3
  id: string;
5
4
  interactions?: Record<string, ElementInteraction>;
6
5
  previewMode: boolean;
7
- interactionsManager: InteractionsManager;
6
+ interactionsManager: InteractionsManagerApi;
8
7
  };
9
8
  /**
10
9
  * The element's repeating flows: one clock per interval its `onInterval` flows declare, running while it is mounted.
@@ -1,10 +1,9 @@
1
- import { InteractionsManager } from '@plitzi/sdk-interactions';
2
- import { ElementInteraction } from '@plitzi/sdk-shared';
1
+ import { InteractionsManagerApi, ElementInteraction } from '@plitzi/sdk-shared';
3
2
  export type UseKeyTriggersProps = {
4
3
  id: string;
5
4
  interactions?: Record<string, ElementInteraction>;
6
5
  previewMode: boolean;
7
- interactionsManager: InteractionsManager;
6
+ interactionsManager: InteractionsManagerApi;
8
7
  };
9
8
  /**
10
9
  * The element's keyboard shortcuts: its `onKey` flows, heard on the window for as long as it is mounted.
@@ -0,0 +1,21 @@
1
+ /** What a flow started by an event reads, as the plugin hands it: one value for each field its `preview` names. */
2
+ export type PluginTriggerPayload<Preview> = Preview extends object ? {
3
+ [Field in keyof Preview]: unknown;
4
+ } : Record<string, never>;
5
+ /** What `usePluginTrigger` reads of a declaration: the events it fires, each by its action, with what its flows read. */
6
+ export type PluginTriggerDeclaration = {
7
+ triggers: Record<string, {
8
+ action: string;
9
+ preview?: unknown;
10
+ }>;
11
+ };
12
+ /**
13
+ * Fires one of the element's declared events — typed by its declaration, so an event it does not declare, or a payload
14
+ * missing a field its flows read, is a compile error: `fire('onEdit', { ops })`. A flow on that event runs with what
15
+ * it was handed.
16
+ *
17
+ * On a live page only: on the builder's canvas the page is being edited, flows never run, and a plugin that fired from
18
+ * an effect would be talking to nobody.
19
+ */
20
+ declare const usePluginTrigger: <const D extends PluginTriggerDeclaration>(declaration: D) => <Event extends keyof D["triggers"] & string>(event: Event, payload: PluginTriggerPayload<D["triggers"][Event]["preview"]>) => void;
21
+ export default usePluginTrigger;
@@ -0,0 +1,18 @@
1
+ import e from "./useElement.mjs";
2
+ import { use as t, useCallback as n } from "react";
3
+ import r from "@plitzi/sdk-shared/hooks/usePlitzi";
4
+ import i from "@plitzi/sdk-interactions/InteractionsContext";
5
+ //#region src/Element/hooks/usePluginTrigger.ts
6
+ var a = (a) => {
7
+ let { id: o } = e(), { settings: { previewMode: s = !0 } } = r(), { interactionsManager: c } = t(i);
8
+ return n((e, t) => {
9
+ s && c.interactionTrigger(o, a.triggers[e].action, t);
10
+ }, [
11
+ a,
12
+ o,
13
+ c,
14
+ s
15
+ ]);
16
+ };
17
+ //#endregion
18
+ export { a as default };
@@ -1,10 +1,8 @@
1
1
  import { ElementContextValue } from '../ElementContext';
2
- import { InteractionsContextValue } from '@plitzi/sdk-interactions';
3
2
  import { InteractionCallback } from '@plitzi/sdk-shared';
4
- import { Context, RefObject } from 'react';
3
+ import { RefObject } from 'react';
5
4
  export type UseRootElementInteractionsProps = {
6
5
  elementContext: ElementContextValue;
7
- InteractionsContext: Context<InteractionsContextValue>;
8
6
  previewMode: boolean;
9
7
  debugMode: boolean;
10
8
  baseElementId?: string;
@@ -21,5 +19,5 @@ export type RootElementInteractions = {
21
19
  /** The ref the root node is rendered with: the component's, or one of the element's own. */
22
20
  nodeRef: RefObject<HTMLElement | null>;
23
21
  };
24
- declare const useRootElementInteractions: ({ elementContext, InteractionsContext, previewMode, debugMode, baseElementId, className, interactionTriggers, interactionCallbacks, otherProps, ref }: UseRootElementInteractionsProps) => RootElementInteractions;
22
+ declare const useRootElementInteractions: ({ elementContext, previewMode, debugMode, baseElementId, className, interactionTriggers, interactionCallbacks, otherProps, ref }: UseRootElementInteractionsProps) => RootElementInteractions;
25
23
  export default useRootElementInteractions;