@plitzi/sdk-elements 0.37.8 → 0.37.10

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 (247) hide show
  1. package/CHANGELOG.md +835 -0
  2. package/dist/Element/ElementContext.mjs +2 -3
  3. package/dist/Element/ElementParentContext.mjs +2 -3
  4. package/dist/Element/ElementWords.d.ts +16 -0
  5. package/dist/Element/ElementWords.mjs +19 -0
  6. package/dist/Element/LayoutBody.d.ts +12 -9
  7. package/dist/Element/LayoutBody.mjs +13 -14
  8. package/dist/Element/RootElement.mjs +15 -12
  9. package/dist/Element/helpers/elementConstants.mjs +27 -0
  10. package/dist/Element/helpers/renderStaticTag.d.ts +3 -1
  11. package/dist/Element/helpers/renderStaticTag.mjs +6 -5
  12. package/dist/Element/hooks/useElementDataSource.mjs +20 -19
  13. package/dist/Element/hooks/useElementInternal.mjs +21 -20
  14. package/dist/Element/hooks/useInternalClassName.mjs +1 -1
  15. package/dist/Element/hooks/useInternalItems.mjs +33 -31
  16. package/dist/Element/hooks/useIntervalTriggers.d.ts +17 -0
  17. package/dist/Element/hooks/useIntervalTriggers.mjs +37 -0
  18. package/dist/Element/hooks/useRootElementInteractions.d.ts +6 -2
  19. package/dist/Element/hooks/useRootElementInteractions.mjs +84 -63
  20. package/dist/Element/hooks/useScrollInteractions.d.ts +20 -0
  21. package/dist/Element/hooks/useScrollInteractions.mjs +58 -0
  22. package/dist/components/IconField/IconField.d.ts +8 -0
  23. package/dist/components/IconField/IconField.mjs +41 -0
  24. package/dist/components/IconField/index.d.ts +2 -0
  25. package/dist/components/IconField/index.mjs +2 -0
  26. package/dist/components/IconPicker/IconPicker.d.ts +11 -0
  27. package/dist/components/IconPicker/IconPicker.mjs +82 -0
  28. package/dist/components/IconPicker/index.d.ts +2 -0
  29. package/dist/components/IconPicker/index.mjs +2 -0
  30. package/dist/dataSource/GlobalSources.mjs +102 -83
  31. package/dist/dataSource/useFlag.d.ts +9 -0
  32. package/dist/dataSource/useFlag.mjs +8 -0
  33. package/dist/elements/advanced/BlockHtml/declaration.d.ts +1 -1
  34. package/dist/elements/advanced/BlockHtml/declaration.mjs +1 -1
  35. package/dist/elements/advanced/BlockHtml/index.d.ts +1 -1
  36. package/dist/elements/advanced/BlockJsx/Settings.mjs +2 -1
  37. package/dist/elements/advanced/BlockJsx/declaration.d.ts +1 -1
  38. package/dist/elements/advanced/BlockJsx/declaration.mjs +1 -1
  39. package/dist/elements/advanced/BlockJsx/index.d.ts +1 -1
  40. package/dist/elements/advanced/Custom/declaration.d.ts +1 -1
  41. package/dist/elements/advanced/Custom/declaration.mjs +1 -1
  42. package/dist/elements/advanced/Custom/index.d.ts +1 -1
  43. package/dist/elements/advanced/NodeHtml/declaration.d.ts +3 -3
  44. package/dist/elements/advanced/NodeHtml/declaration.mjs +1 -1
  45. package/dist/elements/advanced/NodeHtml/index.d.ts +3 -3
  46. package/dist/elements/advanced/Reference/PropField.d.ts +13 -0
  47. package/dist/elements/advanced/Reference/PropField.mjs +65 -0
  48. package/dist/elements/advanced/Reference/Reference.d.ts +5 -6
  49. package/dist/elements/advanced/Reference/Reference.mjs +128 -138
  50. package/dist/elements/advanced/Reference/Settings.d.ts +5 -4
  51. package/dist/elements/advanced/Reference/Settings.mjs +48 -87
  52. package/dist/elements/advanced/Reference/declaration.d.ts +3 -5
  53. package/dist/elements/advanced/Reference/declaration.mjs +3 -4
  54. package/dist/elements/advanced/Reference/index.d.ts +3 -5
  55. package/dist/elements/basic/Button/Button.d.ts +9 -1
  56. package/dist/elements/basic/Button/Button.mjs +31 -19
  57. package/dist/elements/basic/Button/Settings.d.ts +3 -1
  58. package/dist/elements/basic/Button/Settings.mjs +39 -33
  59. package/dist/elements/basic/Button/declaration.d.ts +7 -1
  60. package/dist/elements/basic/Button/declaration.mjs +10 -4
  61. package/dist/elements/basic/Button/index.d.ts +7 -1
  62. package/dist/elements/basic/Dropdown/DropdownPopup/declaration.d.ts +1 -1
  63. package/dist/elements/basic/Dropdown/DropdownPopup/declaration.mjs +1 -1
  64. package/dist/elements/basic/Dropdown/DropdownPopup/index.d.ts +1 -1
  65. package/dist/elements/basic/Dropdown/declaration.d.ts +1 -1
  66. package/dist/elements/basic/Dropdown/declaration.mjs +1 -1
  67. package/dist/elements/basic/Dropdown/index.d.ts +2 -2
  68. package/dist/elements/basic/Heading/declaration.d.ts +1 -1
  69. package/dist/elements/basic/Heading/declaration.mjs +1 -1
  70. package/dist/elements/basic/Heading/index.d.ts +1 -1
  71. package/dist/elements/basic/Link/Link.d.ts +20 -1
  72. package/dist/elements/basic/Link/Link.mjs +67 -47
  73. package/dist/elements/basic/Link/Settings.d.ts +6 -1
  74. package/dist/elements/basic/Link/Settings.mjs +91 -58
  75. package/dist/elements/basic/Link/declaration.d.ts +14 -1
  76. package/dist/elements/basic/Link/declaration.mjs +15 -5
  77. package/dist/elements/basic/Link/index.d.ts +14 -1
  78. package/dist/elements/basic/Link/isCurrentPage.d.ts +5 -0
  79. package/dist/elements/basic/Link/isCurrentPage.mjs +12 -0
  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 +1 -1
  83. package/dist/elements/basic/Paragraph/declaration.d.ts +1 -1
  84. package/dist/elements/basic/Paragraph/declaration.mjs +1 -1
  85. package/dist/elements/basic/Paragraph/index.d.ts +1 -1
  86. package/dist/elements/basic/RichText/declaration.d.ts +1 -1
  87. package/dist/elements/basic/RichText/declaration.mjs +1 -1
  88. package/dist/elements/basic/RichText/index.d.ts +1 -1
  89. package/dist/elements/basic/Text/declaration.d.ts +1 -1
  90. package/dist/elements/basic/Text/declaration.mjs +1 -1
  91. package/dist/elements/basic/Text/index.d.ts +1 -1
  92. package/dist/elements/basic/ThemeToggle/declaration.d.ts +1 -1
  93. package/dist/elements/basic/ThemeToggle/declaration.mjs +1 -1
  94. package/dist/elements/basic/ThemeToggle/index.d.ts +1 -1
  95. package/dist/elements/declarations/index.d.ts +364 -44
  96. package/dist/elements/declarations/index.mjs +40 -32
  97. package/dist/elements/form/Form/declaration.d.ts +1 -1
  98. package/dist/elements/form/Form/declaration.mjs +1 -1
  99. package/dist/elements/form/Form/index.d.ts +1 -1
  100. package/dist/elements/form/FormControl/FormControl.mjs +1 -1
  101. package/dist/elements/form/FormControl/declaration.d.ts +1 -1
  102. package/dist/elements/form/FormControl/declaration.mjs +1 -1
  103. package/dist/elements/form/FormControl/index.d.ts +1 -1
  104. package/dist/elements/index.d.ts +7 -1
  105. package/dist/elements/index.mjs +30 -24
  106. package/dist/elements/internal/LayoutContainer/declaration.d.ts +1 -1
  107. package/dist/elements/internal/LayoutContainer/declaration.mjs +1 -1
  108. package/dist/elements/internal/LayoutContainer/index.d.ts +1 -1
  109. package/dist/elements/internal/Loading/declaration.d.ts +1 -1
  110. package/dist/elements/internal/Loading/declaration.mjs +1 -1
  111. package/dist/elements/internal/Loading/index.d.ts +1 -1
  112. package/dist/elements/internal/NotFound/declaration.d.ts +1 -1
  113. package/dist/elements/internal/NotFound/declaration.mjs +1 -1
  114. package/dist/elements/internal/NotFound/index.d.ts +1 -1
  115. package/dist/elements/internal/Page/Page.mjs +29 -29
  116. package/dist/elements/internal/Page/declaration.d.ts +1 -1
  117. package/dist/elements/internal/Page/declaration.mjs +1 -1
  118. package/dist/elements/internal/Page/index.d.ts +1 -1
  119. package/dist/elements/media/Embed/Embed.d.ts +22 -0
  120. package/dist/elements/media/Embed/Embed.mjs +29 -0
  121. package/dist/elements/media/Embed/Settings.d.ts +10 -0
  122. package/dist/elements/media/Embed/Settings.mjs +51 -0
  123. package/dist/elements/media/Embed/declaration.d.ts +70 -0
  124. package/dist/elements/media/Embed/declaration.mjs +54 -0
  125. package/dist/elements/media/Embed/embeddableSrc.d.ts +5 -0
  126. package/dist/elements/media/Embed/embeddableSrc.mjs +4 -0
  127. package/dist/elements/media/Embed/index.d.ts +69 -0
  128. package/dist/elements/media/Embed/index.mjs +6 -0
  129. package/dist/elements/media/FontAwesome/Settings.mjs +32 -100
  130. package/dist/elements/media/FontAwesome/declaration.d.ts +1 -1
  131. package/dist/elements/media/FontAwesome/declaration.mjs +1 -1
  132. package/dist/elements/media/FontAwesome/index.d.ts +1 -1
  133. package/dist/elements/media/Image/Image.d.ts +11 -1
  134. package/dist/elements/media/Image/Image.mjs +33 -23
  135. package/dist/elements/media/Image/Settings.d.ts +4 -1
  136. package/dist/elements/media/Image/Settings.mjs +32 -9
  137. package/dist/elements/media/Image/declaration.d.ts +4 -1
  138. package/dist/elements/media/Image/declaration.mjs +1 -1
  139. package/dist/elements/media/Image/index.d.ts +4 -1
  140. package/dist/elements/media/Svg/Settings.d.ts +7 -0
  141. package/dist/elements/media/Svg/Settings.mjs +24 -0
  142. package/dist/elements/media/Svg/Svg.d.ts +16 -0
  143. package/dist/elements/media/Svg/Svg.mjs +31 -0
  144. package/dist/elements/media/Svg/declaration.d.ts +61 -0
  145. package/dist/elements/media/Svg/declaration.mjs +49 -0
  146. package/dist/elements/media/Svg/index.d.ts +60 -0
  147. package/dist/elements/media/Svg/index.mjs +6 -0
  148. package/dist/elements/media/Svg/sanitizeSvg.d.ts +13 -0
  149. package/dist/elements/media/Svg/sanitizeSvg.mjs +5 -0
  150. package/dist/elements/media/Video/declaration.d.ts +1 -1
  151. package/dist/elements/media/Video/declaration.mjs +1 -1
  152. package/dist/elements/media/Video/index.d.ts +1 -1
  153. package/dist/elements/provider/ApiContainer/ApiContainer.d.ts +6 -1
  154. package/dist/elements/provider/ApiContainer/ApiContainer.mjs +118 -112
  155. package/dist/elements/provider/ApiContainer/Settings.d.ts +2 -1
  156. package/dist/elements/provider/ApiContainer/Settings.mjs +45 -37
  157. package/dist/elements/provider/ApiContainer/declaration.d.ts +1 -1
  158. package/dist/elements/provider/ApiContainer/declaration.mjs +1 -1
  159. package/dist/elements/provider/ApiContainer/helpers/loadingSlot.d.ts +6 -0
  160. package/dist/elements/provider/ApiContainer/helpers/loadingSlot.mjs +8 -0
  161. package/dist/elements/provider/ApiContainer/hooks/useApi.mjs +12 -12
  162. package/dist/elements/provider/ApiContainer/index.d.ts +1 -1
  163. package/dist/elements/provider/Channel/declaration.d.ts +1 -1
  164. package/dist/elements/provider/Channel/declaration.mjs +1 -1
  165. package/dist/elements/provider/Channel/index.d.ts +1 -1
  166. package/dist/elements/settings.mjs +40 -32
  167. package/dist/elements/structure/Carousel/Carousel.d.ts +32 -0
  168. package/dist/elements/structure/Carousel/Carousel.mjs +183 -0
  169. package/dist/elements/structure/Carousel/CarouselContext.d.ts +29 -0
  170. package/dist/elements/structure/Carousel/CarouselContext.mjs +6 -0
  171. package/dist/elements/structure/Carousel/CarouselTrack/CarouselTrack.d.ts +15 -0
  172. package/dist/elements/structure/Carousel/CarouselTrack/CarouselTrack.mjs +51 -0
  173. package/dist/elements/structure/Carousel/CarouselTrack/Settings.d.ts +2 -0
  174. package/dist/elements/structure/Carousel/CarouselTrack/Settings.mjs +8 -0
  175. package/dist/elements/structure/Carousel/CarouselTrack/components/CarouselSlide/CarouselSlide.d.ts +15 -0
  176. package/dist/elements/structure/Carousel/CarouselTrack/components/CarouselSlide/CarouselSlide.mjs +28 -0
  177. package/dist/elements/structure/Carousel/CarouselTrack/components/CarouselSlide/index.d.ts +2 -0
  178. package/dist/elements/structure/Carousel/CarouselTrack/components/CarouselSlide/index.mjs +2 -0
  179. package/dist/elements/structure/Carousel/CarouselTrack/components/MarqueeTrack/MarqueeTrack.d.ts +18 -0
  180. package/dist/elements/structure/Carousel/CarouselTrack/components/MarqueeTrack/MarqueeTrack.mjs +41 -0
  181. package/dist/elements/structure/Carousel/CarouselTrack/components/MarqueeTrack/index.d.ts +2 -0
  182. package/dist/elements/structure/Carousel/CarouselTrack/components/MarqueeTrack/index.mjs +2 -0
  183. package/dist/elements/structure/Carousel/CarouselTrack/components/ScrollTrack/ScrollTrack.d.ts +12 -0
  184. package/dist/elements/structure/Carousel/CarouselTrack/components/ScrollTrack/ScrollTrack.mjs +27 -0
  185. package/dist/elements/structure/Carousel/CarouselTrack/components/ScrollTrack/index.d.ts +2 -0
  186. package/dist/elements/structure/Carousel/CarouselTrack/components/ScrollTrack/index.mjs +2 -0
  187. package/dist/elements/structure/Carousel/CarouselTrack/declaration.d.ts +53 -0
  188. package/dist/elements/structure/Carousel/CarouselTrack/declaration.mjs +44 -0
  189. package/dist/elements/structure/Carousel/CarouselTrack/index.d.ts +52 -0
  190. package/dist/elements/structure/Carousel/CarouselTrack/index.mjs +6 -0
  191. package/dist/elements/structure/Carousel/Settings.d.ts +14 -0
  192. package/dist/elements/structure/Carousel/Settings.mjs +97 -0
  193. package/dist/elements/structure/Carousel/carouselIndex.d.ts +13 -0
  194. package/dist/elements/structure/Carousel/carouselIndex.mjs +16 -0
  195. package/dist/elements/structure/Carousel/declaration.d.ts +131 -0
  196. package/dist/elements/structure/Carousel/declaration.mjs +106 -0
  197. package/dist/elements/structure/Carousel/index.d.ts +184 -0
  198. package/dist/elements/structure/Carousel/index.mjs +10 -0
  199. package/dist/elements/structure/Carousel/useAutoplay.d.ts +18 -0
  200. package/dist/elements/structure/Carousel/useAutoplay.mjs +34 -0
  201. package/dist/elements/structure/Container/Container.d.ts +1 -1
  202. package/dist/elements/structure/Container/Settings.d.ts +1 -1
  203. package/dist/elements/structure/Container/Settings.mjs +4 -0
  204. package/dist/elements/structure/Container/declaration.d.ts +2 -2
  205. package/dist/elements/structure/Container/declaration.mjs +3 -2
  206. package/dist/elements/structure/Container/index.d.ts +2 -2
  207. package/dist/elements/structure/DialogContainer/declaration.d.ts +1 -1
  208. package/dist/elements/structure/DialogContainer/declaration.mjs +1 -1
  209. package/dist/elements/structure/DialogContainer/index.d.ts +1 -1
  210. package/dist/elements/structure/List/List.d.ts +6 -1
  211. package/dist/elements/structure/List/List.mjs +2 -1
  212. package/dist/elements/structure/List/ListItem/declaration.d.ts +1 -1
  213. package/dist/elements/structure/List/ListItem/declaration.mjs +1 -1
  214. package/dist/elements/structure/List/ListItem/index.d.ts +1 -1
  215. package/dist/elements/structure/List/Settings.d.ts +2 -1
  216. package/dist/elements/structure/List/Settings.mjs +41 -29
  217. package/dist/elements/structure/List/declaration.d.ts +2 -1
  218. package/dist/elements/structure/List/declaration.mjs +1 -1
  219. package/dist/elements/structure/List/index.d.ts +3 -2
  220. package/dist/elements/structure/List/modes/ListControlled/ListControlled.d.ts +2 -1
  221. package/dist/elements/structure/List/modes/ListControlled/ListControlled.mjs +36 -35
  222. package/dist/elements/structure/List/modes/ListControlled/ListControlledItem.mjs +1 -1
  223. package/dist/elements/structure/List/modes/ListControlled/rowKeys.d.ts +10 -0
  224. package/dist/elements/structure/List/modes/ListControlled/rowKeys.mjs +11 -0
  225. package/dist/elements/structure/ModalContainer/declaration.d.ts +1 -1
  226. package/dist/elements/structure/ModalContainer/declaration.mjs +1 -1
  227. package/dist/elements/structure/ModalContainer/index.d.ts +1 -1
  228. package/dist/elements/structure/ModalContainer/metadataFromText.d.ts +6 -0
  229. package/dist/elements/structure/ModalContainer/metadataFromText.mjs +2 -1
  230. package/dist/elements/structure/Pagination/declaration.d.ts +1 -1
  231. package/dist/elements/structure/Pagination/declaration.mjs +1 -1
  232. package/dist/elements/structure/Pagination/index.d.ts +1 -1
  233. package/dist/elements/structure/TabContainer/TabContainerBody/declaration.d.ts +1 -1
  234. package/dist/elements/structure/TabContainer/TabContainerBody/declaration.mjs +1 -1
  235. package/dist/elements/structure/TabContainer/TabContainerBody/index.d.ts +1 -1
  236. package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.d.ts +1 -1
  237. package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.mjs +1 -1
  238. package/dist/elements/structure/TabContainer/TabContainerHeader/index.d.ts +1 -1
  239. package/dist/elements/structure/TabContainer/TabContainerItem/declaration.d.ts +1 -1
  240. package/dist/elements/structure/TabContainer/TabContainerItem/declaration.mjs +1 -1
  241. package/dist/elements/structure/TabContainer/TabContainerItem/index.d.ts +1 -1
  242. package/dist/elements/structure/TabContainer/declaration.d.ts +1 -1
  243. package/dist/elements/structure/TabContainer/declaration.mjs +1 -1
  244. package/dist/elements/structure/TabContainer/index.d.ts +4 -4
  245. package/dist/index.d.ts +375 -43
  246. package/dist/index.mjs +34 -27
  247. package/package.json +202 -10
@@ -1,15 +1,17 @@
1
- import { use as e, useCallback as t, useMemo as n, useRef as r } from "react";
2
- import { useCommonStore as i, useCommonStoreSync as a, useRenderSettings as o } from "@plitzi/sdk-shared/store";
3
- import { get as s } from "@plitzi/plitzi-ui/helpers";
4
- import { getPathsFromObeject as c } from "@plitzi/sdk-shared/helpers/utils";
5
- import { evaluateComputed as l, resolveVariables as u } from "@plitzi/sdk-shared/dataSource";
6
- import d, { SPACE_THEME_AREA as f } from "@plitzi/sdk-shared/theme/useTheme";
1
+ import { use as e, useCallback as t, useEffect as n, useMemo as r, useRef as i } from "react";
2
+ import { useCommonStore as a, useCommonStoreSync as o, useRenderSettings as s } from "@plitzi/sdk-shared/store";
3
+ import { get as ee } from "@plitzi/plitzi-ui/helpers";
4
+ import { flagValues as c, undeclaredFlagOverrides as l } from "@plitzi/sdk-shared/flags";
5
+ import { getPathsFromObeject as u } from "@plitzi/sdk-shared/helpers/utils";
6
+ import { evaluateComputed as d, resolveVariables as te } from "@plitzi/sdk-shared/dataSource";
7
+ import ne, { SPACE_THEME_AREA as f } from "@plitzi/sdk-shared/theme/useTheme";
7
8
  import p from "@plitzi/sdk-shared/dataSource/hooks/useRegisterSource";
8
9
  import m from "@plitzi/sdk-auth/AuthContext";
9
- import h from "@plitzi/sdk-shared/hooks/useStableValue";
10
+ import h from "@plitzi/sdk-shared/flags/useFlagResolution";
11
+ import g from "@plitzi/sdk-shared/hooks/useStableValue";
10
12
  //#region src/dataSource/GlobalSources.tsx
11
- var g = ({ children: g }) => {
12
- let { environment: _ } = o(), [[v, y, b, x, S, C, w]] = i([
13
+ var _ = ({ children: _ }) => {
14
+ let { environment: v } = s(), [[y, b, x, S, C, w, T]] = a([
13
15
  "schema.variables",
14
16
  "navigation.routeParams",
15
17
  "navigation.queryParams",
@@ -17,46 +19,46 @@ var g = ({ children: g }) => {
17
19
  "navigation.origin",
18
20
  "navigation.href",
19
21
  "navigation.currentPageId"
20
- ]), T = h(n(() => u(v, {
21
- routeParams: y,
22
- queryParams: b,
23
- hostname: x,
24
- environment: _
22
+ ]), E = g(r(() => te(y, {
23
+ routeParams: b,
24
+ queryParams: x,
25
+ hostname: S,
26
+ environment: v
25
27
  }), [
26
- _,
28
+ v,
29
+ S,
27
30
  x,
28
31
  b,
29
- y,
30
- v
31
- ])), E = t(() => c(T).map((e) => ({
32
+ y
33
+ ])), re = t(() => u(E).map((e) => ({
32
34
  path: e,
33
35
  name: `variables.${e}`
34
- })), [T]);
36
+ })), [E]);
35
37
  p({
36
38
  id: "global",
37
39
  source: "variables",
38
40
  name: "Variables",
39
- fields: E
40
- }), a("runtime.sources.variables", T);
41
- let [D = {}] = i("pageDefinitions"), O = n(() => Object.values(D).map((e) => ({
41
+ fields: re
42
+ }), o("runtime.sources.variables", E);
43
+ let [D = {}] = a("pageDefinitions"), O = r(() => Object.values(D).map((e) => ({
42
44
  value: e.id,
43
- label: s(e, "attributes.name", e.id)
44
- })), [D]), k = n(() => ({
45
- routeParams: y,
46
- queryParams: b,
47
- origin: S,
48
- href: C,
49
- currentPageId: w
45
+ label: ee(e, "attributes.name", e.id)
46
+ })), [D]), k = r(() => ({
47
+ routeParams: b,
48
+ queryParams: x,
49
+ origin: C,
50
+ href: w,
51
+ currentPageId: T
50
52
  }), [
51
- y,
52
53
  b,
53
- S,
54
+ x,
54
55
  C,
55
- w
56
+ w,
57
+ T
56
58
  ]), A = t(() => {
57
- let e = c({
58
- routeParams: y,
59
- queryParams: b
59
+ let e = u({
60
+ routeParams: b,
61
+ queryParams: x
60
62
  }).map((e) => ({
61
63
  path: e,
62
64
  name: `navigation.${e}`
@@ -82,8 +84,8 @@ var g = ({ children: g }) => {
82
84
  r
83
85
  ];
84
86
  }, [
85
- y,
86
87
  b,
88
+ x,
87
89
  O
88
90
  ]);
89
91
  p({
@@ -91,94 +93,111 @@ var g = ({ children: g }) => {
91
93
  source: "navigation",
92
94
  name: "Navigation",
93
95
  fields: A
94
- }), a("runtime.sources.navigation", k);
95
- let { user: j, authenticated: M, state: N } = e(m), [P = "basic"] = i("schema.settings.userProvider"), F = n(() => P === "" ? {} : {
96
- isAuthenticated: M,
97
- ...N === void 0 ? {} : { status: N },
98
- accessToken: j?.accessToken ?? "",
96
+ }), o("runtime.sources.navigation", k);
97
+ let j = e(m), { user: M, authenticated: N, state: P } = j, [F = "basic"] = a("schema.settings.userProvider"), I = r(() => F === "" ? {} : {
98
+ isAuthenticated: N,
99
+ ...P === void 0 ? {} : { status: P },
100
+ accessToken: M?.accessToken ?? "",
99
101
  details: {
100
102
  username: "",
101
103
  email: "",
102
104
  roles: "",
103
105
  permissions: "",
104
106
  verified: "",
105
- ...j?.details ?? {}
107
+ ...M?.details ?? {}
106
108
  }
107
109
  }, [
108
- P,
109
- j,
110
+ F,
110
111
  M,
111
- N
112
- ]), I = t(() => c(F).map((e) => ({
112
+ N,
113
+ P
114
+ ]), L = t(() => u(I).map((e) => ({
113
115
  path: e,
114
116
  name: `user.${e}`
115
- })), [F]);
117
+ })), [I]);
116
118
  p({
117
119
  id: "global",
118
120
  source: "auth",
119
121
  name: "Auth State",
120
- fields: I
121
- }), a("runtime.sources.auth", F);
122
- let [L] = i("runtime.state"), R = t(() => c(L).map((e) => ({
122
+ fields: L
123
+ }), o("runtime.sources.auth", I);
124
+ let R = h(j), z = r(() => c(R), [R]), B = t(() => Object.keys(z).map((e) => ({
125
+ path: e,
126
+ name: `flags.${e}`,
127
+ inputType: "checkbox"
128
+ })), [z]);
129
+ p({
130
+ id: "global",
131
+ source: "flags",
132
+ name: "Feature Flags",
133
+ fields: B
134
+ }), o("runtime.sources.flags", z), o("flags.resolved", R);
135
+ let [V, H] = a(["schema.flags", "flags.overrides"])[0], U = g(l(V, H ?? {}));
136
+ n(() => {
137
+ U.forEach(({ layer: e, name: t }) => console.warn(`[plitzi] The ${e} sets the feature flag "${t}", which this space does not declare: the override is ignored. Declare the flag in the space, or remove the override.`));
138
+ }, [U]);
139
+ let [W] = a("runtime.state"), G = t(() => u(W).map((e) => ({
123
140
  path: e,
124
141
  name: `state.${e}`
125
- })), [L]);
142
+ })), [W]);
126
143
  p({
127
144
  id: "global",
128
145
  source: "state",
129
146
  name: "State",
130
- fields: R
131
- }), a("runtime.sources.state", L);
132
- let [z] = i("runtime.host"), B = t(() => c(z).map((e) => ({
147
+ fields: G
148
+ }), o("runtime.sources.state", W);
149
+ let [K] = a("runtime.host"), q = t(() => u(K).map((e) => ({
133
150
  path: e,
134
151
  name: `host.${e}`
135
- })), [z]);
152
+ })), [K]);
136
153
  p({
137
154
  id: "global",
138
155
  source: "host",
139
156
  name: "Host",
140
- fields: B
141
- }), a("runtime.sources.host", z);
142
- let { theme: V, resolvedTheme: H } = d(f), U = n(() => ({
143
- mode: V,
144
- resolved: H
145
- }), [V, H]), W = t(() => c(U).map((e) => ({
157
+ fields: q
158
+ }), o("runtime.sources.host", K);
159
+ let { theme: J, resolvedTheme: Y } = ne(f), X = r(() => ({
160
+ mode: J,
161
+ resolved: Y
162
+ }), [J, Y]), ie = t(() => u(X).map((e) => ({
146
163
  path: e,
147
164
  name: `theme.${e}`
148
- })), [U]);
165
+ })), [X]);
149
166
  p({
150
167
  id: "global",
151
168
  source: "theme",
152
169
  name: "Theme",
153
- fields: W
154
- }), a("runtime.sources.theme", U);
155
- let [G] = i("schema.settings.computed"), K = r(void 0), q = n(() => l(G ?? {}, {
156
- variables: T,
170
+ fields: ie
171
+ }), o("runtime.sources.theme", X);
172
+ let [Z] = a("schema.settings.computed"), Q = i(void 0), $ = r(() => d(Z ?? {}, {
173
+ variables: E,
157
174
  navigation: k,
158
- auth: F,
159
- state: L ?? {},
160
- host: z ?? {},
161
- theme: U
162
- }, K.current), [
163
- G,
164
- T,
175
+ auth: I,
176
+ state: W ?? {},
177
+ host: K ?? {},
178
+ theme: X,
179
+ flags: z
180
+ }, Q.current), [
181
+ Z,
182
+ E,
165
183
  k,
166
- F,
167
- L,
168
- z,
169
- U
184
+ I,
185
+ W,
186
+ K,
187
+ X,
188
+ z
170
189
  ]);
171
- K.current = q;
172
- let J = t(() => c(q).map((e) => ({
190
+ Q.current = $;
191
+ let ae = t(() => u($).map((e) => ({
173
192
  path: e,
174
193
  name: `computed.${e}`
175
- })), [q]);
194
+ })), [$]);
176
195
  return p({
177
196
  id: "global",
178
197
  source: "computed",
179
198
  name: "Computed",
180
- fields: J
181
- }), a("runtime.sources.computed", q), g;
199
+ fields: ae
200
+ }), o("runtime.sources.computed", $), _;
182
201
  };
183
202
  //#endregion
184
- export { g as default };
203
+ export { _ as default };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Whether one of the space's feature flags is on, for a plugin — the `flags` source an element reads as
3
+ * `{{ flags.<name> }}`, read without a binding.
4
+ *
5
+ * It follows every layer that decides a flag, a tester forcing it included, and renders again when it changes. A
6
+ * flag the space does not declare is off: a plugin cannot invent one, only ask about the ones the space has.
7
+ */
8
+ declare const useFlag: (name: string) => boolean;
9
+ export default useFlag;
@@ -0,0 +1,8 @@
1
+ import { useCommonStore as e } from "@plitzi/sdk-shared/store";
2
+ //#region src/dataSource/useFlag.ts
3
+ var t = (t) => {
4
+ let [n] = e(`runtime.sources.flags.${t}`);
5
+ return n === !0;
6
+ };
7
+ //#endregion
8
+ export { t as default };
@@ -25,7 +25,7 @@ declare const declaration: {
25
25
  readonly canSelect: true;
26
26
  readonly canDragDrop: true;
27
27
  readonly canMove: true;
28
- readonly canTemplate: true;
28
+ readonly canSnippet: true;
29
29
  readonly itemsAllowed: readonly [];
30
30
  readonly itemsNotAllowed: readonly [];
31
31
  };
@@ -17,7 +17,7 @@ var t = e()({
17
17
  canSelect: !0,
18
18
  canDragDrop: !0,
19
19
  canMove: !0,
20
- canTemplate: !0,
20
+ canSnippet: !0,
21
21
  itemsAllowed: [],
22
22
  itemsNotAllowed: []
23
23
  },
@@ -24,7 +24,7 @@ declare const BlockHtml: {
24
24
  readonly canSelect: true;
25
25
  readonly canDragDrop: true;
26
26
  readonly canMove: true;
27
- readonly canTemplate: true;
27
+ readonly canSnippet: true;
28
28
  readonly itemsAllowed: readonly [];
29
29
  readonly itemsNotAllowed: readonly [];
30
30
  };
@@ -36,8 +36,9 @@ var m = ({ content: m = "", props: h = "{}", onUpdate: g }) => {
36
36
  className: "flex flex-col py-2",
37
37
  children: [
38
38
  x && /* @__PURE__ */ o(f, {
39
- className: "mb-4 text-white",
39
+ className: "mb-4",
40
40
  intent: "error",
41
+ size: "sm",
41
42
  children: /* @__PURE__ */ s("div", {
42
43
  className: "flex flex-col text-xs",
43
44
  children: [/* @__PURE__ */ o("div", {
@@ -31,7 +31,7 @@ declare const declaration: {
31
31
  readonly canSelect: true;
32
32
  readonly canDragDrop: true;
33
33
  readonly canMove: true;
34
- readonly canTemplate: true;
34
+ readonly canSnippet: true;
35
35
  readonly itemsAllowed: readonly [];
36
36
  readonly itemsNotAllowed: readonly [];
37
37
  };
@@ -22,7 +22,7 @@ var t = e()({
22
22
  canSelect: !0,
23
23
  canDragDrop: !0,
24
24
  canMove: !0,
25
- canTemplate: !0,
25
+ canSnippet: !0,
26
26
  itemsAllowed: [],
27
27
  itemsNotAllowed: []
28
28
  },
@@ -27,7 +27,7 @@ declare const BlockJsx: {
27
27
  readonly canSelect: true;
28
28
  readonly canDragDrop: true;
29
29
  readonly canMove: true;
30
- readonly canTemplate: true;
30
+ readonly canSnippet: true;
31
31
  readonly itemsAllowed: readonly [];
32
32
  readonly itemsNotAllowed: readonly [];
33
33
  };
@@ -33,7 +33,7 @@ declare const declaration: {
33
33
  readonly canSelect: true;
34
34
  readonly canDragDrop: true;
35
35
  readonly canMove: true;
36
- readonly canTemplate: true;
36
+ readonly canSnippet: true;
37
37
  readonly itemsAllowed: readonly [];
38
38
  readonly itemsNotAllowed: readonly [];
39
39
  };
@@ -23,7 +23,7 @@ var t = e()({
23
23
  canSelect: !0,
24
24
  canDragDrop: !0,
25
25
  canMove: !0,
26
- canTemplate: !0,
26
+ canSnippet: !0,
27
27
  itemsAllowed: [],
28
28
  itemsNotAllowed: []
29
29
  },
@@ -28,7 +28,7 @@ declare const Custom: {
28
28
  readonly canSelect: true;
29
29
  readonly canDragDrop: true;
30
30
  readonly canMove: true;
31
- readonly canTemplate: true;
31
+ readonly canSnippet: true;
32
32
  readonly itemsAllowed: readonly [];
33
33
  readonly itemsNotAllowed: readonly [];
34
34
  };
@@ -33,7 +33,7 @@ declare const declaration: {
33
33
  readonly canSelect: true;
34
34
  readonly canDragDrop: true;
35
35
  readonly canMove: true;
36
- readonly canTemplate: true;
36
+ readonly canSnippet: true;
37
37
  readonly itemsAllowed: readonly [];
38
38
  readonly itemsNotAllowed: readonly [];
39
39
  };
@@ -76,6 +76,8 @@ declare const declaration: {
76
76
  slot?: string | undefined | undefined;
77
77
  title?: string | undefined | undefined;
78
78
  defaultValue?: string | number | readonly string[] | undefined;
79
+ hidden?: boolean | undefined | undefined;
80
+ onScroll?: import('react').UIEventHandler<"span"> | undefined;
79
81
  onLoad?: import('react').ReactEventHandler<"span"> | undefined;
80
82
  onClick?: import('react').MouseEventHandler<"span"> | undefined;
81
83
  onPointerDown?: import('react').PointerEventHandler<"span"> | undefined;
@@ -284,7 +286,6 @@ declare const declaration: {
284
286
  onGotPointerCaptureCapture?: import('react').PointerEventHandler<"span"> | undefined;
285
287
  onLostPointerCapture?: import('react').PointerEventHandler<"span"> | undefined;
286
288
  onLostPointerCaptureCapture?: import('react').PointerEventHandler<"span"> | undefined;
287
- onScroll?: import('react').UIEventHandler<"span"> | undefined;
288
289
  onScrollCapture?: import('react').UIEventHandler<"span"> | undefined;
289
290
  onScrollEnd?: import('react').UIEventHandler<"span"> | undefined;
290
291
  onScrollEndCapture?: import('react').UIEventHandler<"span"> | undefined;
@@ -316,7 +317,6 @@ declare const declaration: {
316
317
  dir?: string | undefined | undefined;
317
318
  draggable?: (boolean | "false" | "true") | undefined;
318
319
  enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
319
- hidden?: boolean | undefined | undefined;
320
320
  spellCheck?: (boolean | "false" | "true") | undefined;
321
321
  translate?: "yes" | "no" | undefined | undefined;
322
322
  radioGroup?: string | undefined | undefined;
@@ -18,7 +18,7 @@ var t = e()({
18
18
  canSelect: !0,
19
19
  canDragDrop: !0,
20
20
  canMove: !0,
21
- canTemplate: !0,
21
+ canSnippet: !0,
22
22
  itemsAllowed: [],
23
23
  itemsNotAllowed: []
24
24
  },
@@ -25,7 +25,7 @@ declare const NodeHtml: {
25
25
  readonly canSelect: true;
26
26
  readonly canDragDrop: true;
27
27
  readonly canMove: true;
28
- readonly canTemplate: true;
28
+ readonly canSnippet: true;
29
29
  readonly itemsAllowed: readonly [];
30
30
  readonly itemsNotAllowed: readonly [];
31
31
  };
@@ -68,6 +68,8 @@ declare const NodeHtml: {
68
68
  slot?: string | undefined | undefined;
69
69
  title?: string | undefined | undefined;
70
70
  defaultValue?: string | number | readonly string[] | undefined;
71
+ hidden?: boolean | undefined | undefined;
72
+ onScroll?: import('react').UIEventHandler<"span"> | undefined;
71
73
  onLoad?: import('react').ReactEventHandler<"span"> | undefined;
72
74
  onClick?: import('react').MouseEventHandler<"span"> | undefined;
73
75
  onPointerDown?: import('react').PointerEventHandler<"span"> | undefined;
@@ -276,7 +278,6 @@ declare const NodeHtml: {
276
278
  onGotPointerCaptureCapture?: import('react').PointerEventHandler<"span"> | undefined;
277
279
  onLostPointerCapture?: import('react').PointerEventHandler<"span"> | undefined;
278
280
  onLostPointerCaptureCapture?: import('react').PointerEventHandler<"span"> | undefined;
279
- onScroll?: import('react').UIEventHandler<"span"> | undefined;
280
281
  onScrollCapture?: import('react').UIEventHandler<"span"> | undefined;
281
282
  onScrollEnd?: import('react').UIEventHandler<"span"> | undefined;
282
283
  onScrollEndCapture?: import('react').UIEventHandler<"span"> | undefined;
@@ -308,7 +309,6 @@ declare const NodeHtml: {
308
309
  dir?: string | undefined | undefined;
309
310
  draggable?: (boolean | "false" | "true") | undefined;
310
311
  enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
311
- hidden?: boolean | undefined | undefined;
312
312
  spellCheck?: (boolean | "false" | "true") | undefined;
313
313
  translate?: "yes" | "no" | undefined | undefined;
314
314
  radioGroup?: string | undefined | undefined;
@@ -0,0 +1,13 @@
1
+ import { ComponentProp } from '@plitzi/sdk-shared';
2
+ export type PropFieldProps = {
3
+ name: string;
4
+ prop: ComponentProp;
5
+ value: unknown;
6
+ onUpdate?: (key: string, value: string | number | boolean | object) => void;
7
+ };
8
+ /**
9
+ * One prop of an instance, with the control its declared type asks for. A text box takes a template as readily as a
10
+ * value — `{{ item.name }}` — which is how an instance hands in what is around it.
11
+ */
12
+ declare const PropField: (props: PropFieldProps) => import('react').JSX.Element;
13
+ export default PropField;
@@ -0,0 +1,65 @@
1
+ import { useCallback as e, useMemo as t } from "react";
2
+ import { jsx as n } from "react/jsx-runtime";
3
+ import r from "@plitzi/plitzi-ui/Checkbox";
4
+ import i from "@plitzi/plitzi-ui/Input";
5
+ import a from "@plitzi/plitzi-ui/TextArea";
6
+ import o from "@plitzi/plitzi-ui/Select2";
7
+ //#region src/elements/advanced/Reference/PropField.tsx
8
+ var s = (e, t) => `${t.label ?? e}${t.required ? " *" : ""}`, c = (e) => e == null ? "" : typeof e == "string" ? e : JSON.stringify(e), l = (e) => {
9
+ try {
10
+ let t = JSON.parse(e);
11
+ return typeof t == "string" || typeof t == "number" || typeof t == "boolean" || typeof t == "object" && t ? t : e;
12
+ } catch {
13
+ return e;
14
+ }
15
+ }, u = ({ name: t, prop: i, value: a, onUpdate: o }) => {
16
+ let c = e((e) => o?.(t, e.target.checked), [t, o]);
17
+ return /* @__PURE__ */ n(r, {
18
+ checked: a === !0,
19
+ onChange: c,
20
+ label: s(t, i),
21
+ size: "xs"
22
+ });
23
+ }, d = ({ name: r, prop: i, value: a, onUpdate: l }) => {
24
+ let u = t(() => (i.options ?? []).map((e) => ({
25
+ value: e,
26
+ label: i.optionLabels?.[e] ?? e
27
+ })), [i.options, i.optionLabels]), d = e((e) => l?.(r, e?.value ?? ""), [r, l]);
28
+ return /* @__PURE__ */ n(o, {
29
+ value: c(a),
30
+ label: s(r, i),
31
+ onChange: d,
32
+ placeholder: "None",
33
+ options: u
34
+ });
35
+ }, f = ({ name: t, prop: r, value: i, onUpdate: o }) => {
36
+ let u = e((e) => o?.(t, l(e)), [t, o]);
37
+ return /* @__PURE__ */ n(a, {
38
+ value: c(i),
39
+ label: s(t, r),
40
+ onChange: u,
41
+ size: "xs"
42
+ });
43
+ }, p = ({ name: t, prop: r, value: o, onUpdate: l }) => {
44
+ let u = e((e) => l?.(t, r.type === "number" && e.trim() !== "" && !Number.isNaN(Number(e)) ? Number(e) : e), [
45
+ t,
46
+ l,
47
+ r.type
48
+ ]);
49
+ return r.type === "textarea" ? /* @__PURE__ */ n(a, {
50
+ value: c(o),
51
+ label: s(t, r),
52
+ onChange: u,
53
+ size: "xs"
54
+ }) : /* @__PURE__ */ n(i, {
55
+ value: c(o),
56
+ label: s(t, r),
57
+ onChange: u,
58
+ size: "xs"
59
+ });
60
+ }, m = (e) => {
61
+ let { prop: t } = e;
62
+ return t.type === "boolean" ? /* @__PURE__ */ n(u, { ...e }) : t.type === "select" ? /* @__PURE__ */ n(d, { ...e }) : t.type === "json" ? /* @__PURE__ */ n(f, { ...e }) : /* @__PURE__ */ n(p, { ...e });
63
+ };
64
+ //#endregion
65
+ export { m as default };
@@ -1,14 +1,13 @@
1
- import { ElementLayoutType } from '@plitzi/sdk-shared';
2
- import { ReactNode, RefObject } from 'react';
1
+ import { RefObject } from 'react';
3
2
  export type ReferenceProps = {
4
3
  ref: RefObject<HTMLElement>;
5
- children: ReactNode;
6
4
  className: string;
7
- referenceType: ElementLayoutType;
5
+ /** `element` renders another element of the space; `component` places one of the space's components. */
6
+ referenceType: 'element' | 'component';
7
+ /** The element's id, or the component's. */
8
8
  referenceId: string;
9
- referenceContainer: string;
10
9
  };
11
- declare const Reference: ({ ref, children, className, referenceType, referenceId, referenceContainer }: ReferenceProps) => import('react').JSX.Element;
10
+ declare const Reference: ({ ref, className, referenceType, referenceId }: ReferenceProps) => import('react').JSX.Element;
12
11
  declare const _default: {
13
12
  (props: import('../../../Element/hocs/withElement').WithElementProps<ReferenceProps>): import('react').JSX.Element;
14
13
  displayName: string;