@plitzi/sdk-elements 0.36.1 → 0.37.0

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 (53) hide show
  1. package/CHANGELOG.md +80 -0
  2. package/dist/Element/ElementParentContext.d.ts +13 -0
  3. package/dist/Element/ElementParentContext.mjs +6 -0
  4. package/dist/Element/LayoutBody.d.ts +21 -0
  5. package/dist/Element/LayoutBody.mjs +24 -0
  6. package/dist/Element/hocs/withElement.mjs +104 -87
  7. package/dist/Element/hooks/useElementDataSource.mjs +1 -1
  8. package/dist/Element/hooks/useElementInternal.mjs +24 -24
  9. package/dist/Element/hooks/useInternalItems.mjs +42 -39
  10. package/dist/Element/hooks/useLayoutChain.d.ts +10 -0
  11. package/dist/Element/hooks/useLayoutChain.mjs +20 -0
  12. package/dist/Element/hooks/useRootElementInteractions.mjs +45 -44
  13. package/dist/dataSource/GlobalSources.mjs +60 -59
  14. package/dist/dataSource/pathFields.d.ts +7 -0
  15. package/dist/dataSource/pathFields.mjs +8 -0
  16. package/dist/elements/advanced/Custom/declaration.d.ts +7 -9
  17. package/dist/elements/advanced/Custom/index.d.ts +1 -7
  18. package/dist/elements/advanced/Reference/Reference.mjs +93 -89
  19. package/dist/elements/advanced/Reference/declaration.d.ts +1 -1
  20. package/dist/elements/advanced/Reference/index.d.ts +1 -1
  21. package/dist/elements/basic/Button/Button.d.ts +9 -1
  22. package/dist/elements/basic/Button/Button.mjs +19 -20
  23. package/dist/elements/basic/Button/Settings.d.ts +2 -1
  24. package/dist/elements/basic/Button/Settings.mjs +13 -6
  25. package/dist/elements/basic/Button/declaration.d.ts +1 -0
  26. package/dist/elements/basic/Button/index.d.ts +1 -0
  27. package/dist/elements/declarations/index.d.ts +6 -9
  28. package/dist/elements/form/FormControl/declaration.d.ts +2 -0
  29. package/dist/elements/internal/LayoutContainer/LayoutContainer.d.ts +6 -0
  30. package/dist/elements/internal/LayoutContainer/LayoutContainer.mjs +31 -23
  31. package/dist/elements/internal/LayoutContainer/Settings.d.ts +4 -1
  32. package/dist/elements/internal/LayoutContainer/Settings.mjs +78 -64
  33. package/dist/elements/internal/LayoutContainer/declaration.d.ts +2 -0
  34. package/dist/elements/internal/LayoutContainer/index.d.ts +2 -0
  35. package/dist/elements/internal/LayoutPicker/LayoutPicker.d.ts +10 -0
  36. package/dist/elements/internal/LayoutPicker/LayoutPicker.mjs +35 -0
  37. package/dist/elements/internal/LayoutPicker/index.d.ts +3 -0
  38. package/dist/elements/internal/LayoutPicker/index.mjs +5 -0
  39. package/dist/elements/internal/Page/Page.mjs +49 -48
  40. package/dist/elements/internal/Page/Settings.mjs +101 -119
  41. package/dist/elements/provider/ApiContainer/ApiContainer.mjs +58 -66
  42. package/dist/elements/provider/ApiContainer/declaration.mjs +1 -1
  43. package/dist/elements/provider/ApiContainer/hooks/useApi.d.ts +8 -0
  44. package/dist/elements/provider/ApiContainer/hooks/useApi.mjs +52 -48
  45. package/dist/elements/structure/Container/Container.d.ts +1 -1
  46. package/dist/elements/structure/Container/Settings.d.ts +1 -1
  47. package/dist/elements/structure/Container/Settings.mjs +4 -0
  48. package/dist/elements/structure/Container/declaration.d.ts +1 -1
  49. package/dist/elements/structure/Container/index.d.ts +1 -1
  50. package/dist/elements/structure/DialogContainer/DialogContainer.mjs +17 -25
  51. package/dist/elements/structure/ModalContainer/ModalContainer.mjs +15 -23
  52. package/dist/index.d.ts +6 -9
  53. package/package.json +38 -10
@@ -1,61 +1,62 @@
1
1
  import e from "../../../Element/hocs/withElement.mjs";
2
- import t from "../../../Element/hooks/useElement.mjs";
3
- import n from "../../../Element/hooks/useRscData.mjs";
4
- import { RootElement as r } from "../../../Element/RootElement.mjs";
5
- import ee from "./declaration.mjs";
6
- import te from "./hooks/useApi.mjs";
7
- import ne from "./hooks/useProviderPagination.mjs";
8
- import re from "./hooks/useProviderWrite.mjs";
9
- import { use as ie, useCallback as i, useEffect as ae, useMemo as a } from "react";
10
- import oe from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
11
- import { useSdkStore as se } from "@plitzi/sdk-shared/store";
12
- import { StoreProvider as ce } from "@plitzi/nexus/react";
13
- import { emptyObject as o, getPathsFromObeject as le } from "@plitzi/sdk-shared/helpers/utils";
2
+ import ee from "../../../Element/hooks/useElement.mjs";
3
+ import te from "../../../Element/hooks/useRscData.mjs";
4
+ import { RootElement as t } from "../../../Element/RootElement.mjs";
5
+ import ne from "./declaration.mjs";
6
+ import re from "./hooks/useApi.mjs";
7
+ import ie from "./hooks/useProviderPagination.mjs";
8
+ import ae from "./hooks/useProviderWrite.mjs";
9
+ import oe from "../../../dataSource/pathFields.mjs";
10
+ import { use as se, useCallback as n, useEffect as ce, useMemo as r } from "react";
11
+ import le from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
12
+ import { useSdkStore as i } from "@plitzi/sdk-shared/store";
13
+ import { StoreProvider as a } from "@plitzi/nexus/react";
14
+ import { emptyObject as o } from "@plitzi/sdk-shared/helpers/utils";
14
15
  import { jsx as s } from "react/jsx-runtime";
15
16
  import { currentRscLocation as c } from "@plitzi/sdk-shared/server/rsc/refreshRsc";
16
17
  import l from "clsx";
17
18
  import u from "@plitzi/sdk-shared/dataSource/helpers/getSourceName";
18
- import d from "@plitzi/sdk-shared/dataSource/hooks/useRegisterSource";
19
- import { QueryBuilderEvaluator as ue } from "@plitzi/plitzi-ui/QueryBuilder";
19
+ import ue from "@plitzi/sdk-shared/dataSource/hooks/useRegisterSource";
20
+ import { QueryBuilderEvaluator as de } from "@plitzi/plitzi-ui/QueryBuilder";
20
21
  //#region src/elements/provider/ApiContainer/ApiContainer.tsx
21
- var f = ({ ref: e, className: f = "", children: p, query: m = "", method: h = "get", accessToken: g = "", when: _ = o, headers: v = o, mockData: y = "{}", subType: de = "", credentials: fe = "same-origin", singleRecord: b = !1, pagination: x = "none", pageParam: S = "page", renderWhileLoading: pe = !1, cache: me = !1, staleTime: he = 30, gcTime: ge = 300 }) => {
22
- let { id: C, visible: w, definition: { label: T = "Api Container", runtime: _e, items: ve } } = t(), E = _e === "server", { loaded: D, stale: O, location: k, elementData: A, refresh: j } = n(), M = u(ee.sourceType, C), { settings: { previewMode: N }, contexts: { InteractionsContext: P } } = oe(), { interactionsManager: F } = ie(P), [[I, L, ye]] = se([
22
+ var d = ({ ref: e, className: d = "", children: f, query: p = "", method: m = "get", accessToken: h = "", when: g = o, headers: _ = o, mockData: v = "{}", subType: y = "", credentials: fe = "same-origin", singleRecord: b = !1, pagination: x = "none", pageParam: pe = "page", renderWhileLoading: me = !1, cache: S = !1, staleTime: he = 30, gcTime: ge = 300 }) => {
23
+ let { id: C, visible: w, definition: { label: T = "Api Container", runtime: _e, items: ve } } = ee(), E = _e === "server", { loaded: D, stale: O, location: k, elementData: A, refresh: j } = te(), M = u(ne.sourceType, C), { settings: { previewMode: N }, contexts: { InteractionsContext: P } } = le(), { interactionsManager: F } = se(P), [[I, L, ye]] = i([
23
24
  "navigation.routeParams",
24
25
  "navigation.queryParams",
25
26
  "navigation.navigate"
26
- ]), be = a(() => g ? {
27
- ...v,
28
- Authorization: `Bearer ${g}`
29
- } : v, [v, g]), xe = a(() => E || !w ? !1 : !!(N && m && (_ === o || ue(_, {
27
+ ]), be = r(() => h ? {
28
+ ..._,
29
+ Authorization: `Bearer ${h}`
30
+ } : _, [_, h]), xe = r(() => E || !w ? !1 : !!(N && p && (g === o || de(g, {
30
31
  ...I,
31
32
  ...L
32
- })) || !N && (m || y && y !== "{}" && y !== o)), [
33
+ })) || !N && (p || v && v !== "{}" && v !== o)), [
33
34
  E,
34
35
  w,
35
36
  N,
36
- m,
37
- _,
37
+ p,
38
+ g,
38
39
  I,
39
40
  L,
40
- y
41
- ]), Se = a(() => [C], [C]), { isLoading: Ce, isFetching: we, data: R, refetch: z, isSuccess: B, isError: V } = te({
42
- url: m,
43
- method: h,
41
+ v
42
+ ]), Se = r(() => [C], [C]), { isLoading: Ce, isFetching: we, data: R, refetch: z, isSuccess: B, isError: V } = re({
43
+ url: p,
44
+ method: m,
44
45
  credentials: fe,
45
- mock: N ? void 0 : y,
46
+ mock: N ? void 0 : v,
46
47
  customHeaders: be,
47
48
  enabled: xe,
48
- cache: me,
49
+ cache: S,
49
50
  staleTime: he,
50
51
  gcTime: ge,
51
52
  tags: Se
52
- }), H = E && !!k && k !== c(), U = E && D && !H && A === null, W = a(() => {
53
+ }), H = E && !!k && k !== c(), U = E && D && !H && A === null, W = r(() => {
53
54
  if (!E) return R ?? o;
54
55
  if (A) return A;
55
56
  if (D) return o;
56
- if (typeof y != "string") return y;
57
+ if (typeof v != "string") return v;
57
58
  try {
58
- return JSON.parse(y || "{}");
59
+ return JSON.parse(v || "{}");
59
60
  } catch {
60
61
  return o;
61
62
  }
@@ -64,8 +65,8 @@ var f = ({ ref: e, className: f = "", children: p, query: m = "", method: h = "g
64
65
  R,
65
66
  A,
66
67
  D,
67
- y
68
- ]), G = E ? H : we, Te = E ? H : Ce, K = i(async () => {
68
+ v
69
+ ]), G = E ? H : we, Te = E ? H : Ce, K = n(async () => {
69
70
  if (!E) {
70
71
  z();
71
72
  return;
@@ -76,23 +77,23 @@ var f = ({ ref: e, className: f = "", children: p, query: m = "", method: h = "g
76
77
  z,
77
78
  j,
78
79
  C
79
- ]), q = W, Ee = a(() => Array.isArray(q.records) ? q.records : [], [q.records]), { records: J, isLoadingMore: Y, goToPage: X, loadMore: Z } = ne({
80
+ ]), q = W, Ee = r(() => Array.isArray(q.records) ? q.records : [], [q.records]), { records: J, isLoadingMore: Y, goToPage: X, loadMore: Z } = ie({
80
81
  elementId: C,
81
82
  mode: x,
82
- pageParam: S,
83
+ pageParam: pe,
83
84
  records: Ee,
84
85
  page: q.pageInfo?.page ?? 1,
85
86
  refresh: j,
86
87
  navigate: ye
87
88
  });
88
- ae(() => {
89
+ ce(() => {
89
90
  !G && C && (B ? F.interactionTrigger(C, "onApiSuccess", {
90
- url: m,
91
- method: h,
91
+ url: p,
92
+ method: m,
92
93
  ...W
93
94
  }) : V && F.interactionTrigger(C, "onApiError", {
94
- url: m,
95
- method: h,
95
+ url: p,
96
+ method: m,
96
97
  ...W
97
98
  }));
98
99
  }, [
@@ -102,10 +103,10 @@ var f = ({ ref: e, className: f = "", children: p, query: m = "", method: h = "g
102
103
  V,
103
104
  G,
104
105
  B,
105
- h,
106
- m
106
+ m,
107
+ p
107
108
  ]);
108
- let Q = a(() => ({
109
+ let Q = r(() => ({
109
110
  ...W,
110
111
  ...Array.isArray(q.records) ? { records: J } : o,
111
112
  isLoading: G || Y,
@@ -124,27 +125,18 @@ var f = ({ ref: e, className: f = "", children: p, query: m = "", method: h = "g
124
125
  U,
125
126
  E,
126
127
  O
127
- ]), De = i(() => le(Q).reduce((e, t) => {
128
- let n = t.split(".");
129
- return n.length > 1 ? [...e, {
130
- path: t,
131
- name: n.slice(n.length - 2).join(" ")
132
- }] : [...e, {
133
- path: t,
134
- name: n[n.length - 1]
135
- }];
136
- }, []), [Q]);
137
- d({
128
+ ]), De = n(() => oe(Q), [Q]);
129
+ ue({
138
130
  id: C,
139
131
  source: M,
140
132
  name: T || `API - ${C}`,
141
133
  fields: De
142
134
  });
143
- let { writeRecord: $ } = re({
135
+ let { writeRecord: $ } = ae({
144
136
  elementId: C,
145
137
  enabled: E,
146
138
  onDone: K
147
- }), Oe = a(() => {
139
+ }), Oe = r(() => {
148
140
  let e = {
149
141
  performQuery: {
150
142
  action: "performQuery",
@@ -201,7 +193,7 @@ var f = ({ ref: e, className: f = "", children: p, query: m = "", method: h = "g
201
193
  X,
202
194
  E,
203
195
  $
204
- ]), ke = a(() => ({
196
+ ]), ke = r(() => ({
205
197
  onApiError: {
206
198
  action: "onApiError",
207
199
  title: "On Api Error",
@@ -226,20 +218,20 @@ var f = ({ ref: e, className: f = "", children: p, query: m = "", method: h = "g
226
218
  data: ""
227
219
  }
228
220
  }
229
- }), []), Ae = a(() => M ? { runtime: { sources: { [M]: Q } } } : o, [Q, M]);
230
- return /* @__PURE__ */ s(r, {
221
+ }), []), Ae = r(() => M ? { runtime: { sources: { [M]: Q } } } : o, [Q, M]);
222
+ return /* @__PURE__ */ s(t, {
231
223
  ref: e,
232
- tag: !N && !ve?.length ? "div" : de,
233
- className: l("plitzi-component__api-container", f),
224
+ tag: !N && !ve?.length ? "div" : y,
225
+ className: l("plitzi-component__api-container", d),
234
226
  interactionTriggers: ke,
235
227
  interactionCallbacks: Oe,
236
- children: (!Te || pe) && /* @__PURE__ */ s(ce, {
228
+ children: (!Te || me) && /* @__PURE__ */ s(a, {
237
229
  inherit: "live",
238
230
  name: `Api:${C}`,
239
231
  value: Ae,
240
- children: p
232
+ children: f
241
233
  })
242
234
  });
243
- }, p = e(f);
235
+ }, f = e(d);
244
236
  //#endregion
245
- export { f as ApiContainer, p as default };
237
+ export { d as ApiContainer, f as default };
@@ -26,7 +26,7 @@ var t = e()({
26
26
  definition: {
27
27
  label: "Api Container",
28
28
  type: "apiContainer",
29
- description: "Fetches data from a backend HTTP API (its `query`/`method`/`credentials`) and exposes the response as a data source ITS DESCENDANTS bind to (source `apiContainer_<id>.data`; only elements inside it can consume it). This is how you get backend data into the frontend. Its `mockData` prop is builder-only sample data — the published runtime fetches the real `query`, so always set a real query for production. With `cache: true` a browser request is kept for `staleTime` seconds (default 30) and shared with every provider asking the same thing; it is off unless set. A flow refreshes it with `performQuery` or the global `invalidateQueries` step.",
29
+ description: "Fetches data from a backend HTTP API (its `query`/`method`/`credentials`) and exposes the response as a data source ITS DESCENDANTS bind to (source `apiContainer_<id>.data`; only elements inside it can consume it). This is how you get backend data into the frontend. Its `mockData` prop is builder-only sample data — the published runtime fetches the real `query`, so always set a real query for production. With `cache: true` a browser request is kept for `staleTime` seconds (default 30) and shared with every provider asking the same thing; it is off unless set. A flow refreshes it with `performQuery` or the global `invalidateQueries` step. Its `subType` (container tag) is empty by default, and then it renders NO element of its own: its children lay out directly in its parent, and any class, variant or style binding on it applies to nothing. To style the provider itself give it a tag (`subType: \"div\"`, `section`, …); otherwise style its parent or a child.",
30
30
  items: [],
31
31
  bindings: {},
32
32
  styleSelectors: { base: "" },
@@ -39,6 +39,14 @@ declare const useApi: ({ url, method, mock, customHeaders, enabled, credentials,
39
39
  isFetching: boolean;
40
40
  data: ApiResponse | undefined;
41
41
  refetch: () => void;
42
+ /**
43
+ * Whether THIS question has been answered — not whether an answer is on screen.
44
+ *
45
+ * The last answer is kept visible while the URL is unaskable, so nothing flickers; reporting it as this URL's
46
+ * success is a different claim and a wrong one. It fired `onApiSuccess` again on the way out of a page — the
47
+ * URL is one of the trigger's dependencies — and the flow behind it set the workspace id from a route param
48
+ * the page had already lost, which emptied it.
49
+ */
42
50
  isSuccess: boolean;
43
51
  isError: boolean;
44
52
  };
@@ -1,9 +1,10 @@
1
1
  import { useCallback as e, useId as t, useMemo as n } from "react";
2
- import { emptyObject as r } from "@plitzi/sdk-shared/helpers/utils";
3
- import { authFailureFromResponse as i, reportAuthFailure as a } from "@plitzi/sdk-shared/auth";
4
- import { requestKey as o, useQuery as s } from "@plitzi/sdk-shared/queries";
2
+ import { hasValidToken as r } from "@plitzi/sdk-shared/helpers/twigWrapper";
3
+ import { emptyObject as i } from "@plitzi/sdk-shared/helpers/utils";
4
+ import { authFailureFromResponse as a, reportAuthFailure as o } from "@plitzi/sdk-shared/auth";
5
+ import { requestKey as s, useQuery as c } from "@plitzi/sdk-shared/queries";
5
6
  //#region src/elements/provider/ApiContainer/hooks/useApi.ts
6
- var c = 30, l = 300, u = (e) => !!e && e !== "{}" && e !== r, d = (e) => {
7
+ var l = 30, u = 300, d = (e) => !!e && e !== "{}" && e !== i, f = (e) => {
7
8
  if (typeof e != "string") return {
8
9
  status: 200,
9
10
  data: e
@@ -19,22 +20,23 @@ var c = 30, l = 300, u = (e) => !!e && e !== "{}" && e !== r, d = (e) => {
19
20
  data: e.message
20
21
  };
21
22
  }
22
- }, f = async (e, t, n, r) => {
23
+ }, p = async (e, t, n, r, i) => {
23
24
  if (!e) return {
24
25
  status: 400,
25
26
  data: "URL is required"
26
27
  };
27
- let o = new Headers(r);
28
- o.has("Content-Type") || o.set("Content-Type", "application/json");
29
- let s = {
28
+ let s = new Headers(r);
29
+ s.has("Content-Type") || s.set("Content-Type", "application/json");
30
+ let c = {
30
31
  method: t,
31
32
  credentials: n,
32
- headers: o
33
+ headers: s,
34
+ signal: i
33
35
  };
34
- t !== "get" && (s.body = "{}");
36
+ t !== "get" && (c.body = "{}");
35
37
  try {
36
- let t = await fetch(e, s), n = await t.json(), r = i(t.status, n);
37
- return r && a({
38
+ let t = await fetch(e, c), n = await t.json(), r = a(t.status, n);
39
+ return r && o({
38
40
  reason: r,
39
41
  url: e
40
42
  }), {
@@ -42,57 +44,59 @@ var c = 30, l = 300, u = (e) => !!e && e !== "{}" && e !== r, d = (e) => {
42
44
  data: n
43
45
  };
44
46
  } catch (e) {
47
+ if (i.aborted) throw e;
45
48
  return console.error(e.message), {
46
49
  status: 500,
47
50
  data: e.message
48
51
  };
49
52
  }
50
- }, p = (e) => e.status < 400, m = (e, t) => {
53
+ }, m = (e) => e.status < 400, h = (e, t) => {
51
54
  let n = typeof e == "number" ? e : Number(e);
52
55
  return (Number.isFinite(n) && n >= 0 ? n : t) * 1e3;
53
- }, h = ({ url: i = "", method: a = "get", mock: c, customHeaders: l = r, enabled: h = !0, credentials: g = "same-origin", cache: _ = !1, staleTime: v = 30, gcTime: y = 300, tags: b }) => {
54
- let x = u(c), S = t(), C = n(() => {
55
- if (x || !i) return;
56
- let e = o({
57
- method: a,
58
- url: i,
59
- credentials: g,
60
- headers: l
56
+ }, g = ({ url: a = "", method: o = "get", mock: l, customHeaders: u = i, enabled: g = !0, credentials: _ = "same-origin", cache: v = !1, staleTime: y = 30, gcTime: b = 300, tags: x }) => {
57
+ let S = d(l), C = t(), w = !S && (!a || r(a)), T = n(() => {
58
+ if (S || w) return;
59
+ let e = s({
60
+ method: o,
61
+ url: a,
62
+ credentials: _,
63
+ headers: u
61
64
  });
62
- return _ ? e : `${e}#${S}`;
65
+ return v ? e : `${e}#${C}`;
63
66
  }, [
64
- x,
65
- i,
67
+ S,
68
+ w,
66
69
  a,
67
- g,
68
- l,
70
+ o,
69
71
  _,
70
- S
71
- ]), w = e(() => f(i, a, g, l), [
72
- i,
72
+ u,
73
+ v,
74
+ C
75
+ ]), E = e((e) => p(a, o, _, u, e), [
73
76
  a,
74
- g,
75
- l
76
- ]), T = s({
77
- key: C,
77
+ o,
78
+ _,
79
+ u
80
+ ]), D = c({
81
+ key: T,
78
82
  meta: {
79
- url: i,
80
- tags: b
83
+ url: a,
84
+ tags: x
81
85
  },
82
- fetcher: w,
83
- enabled: h,
84
- staleTime: _ ? m(v, 30) : 0,
85
- gcTime: _ ? m(y, 300) : 0,
86
- isCacheable: p
87
- }), E = n(() => x ? d(c) : void 0, [x, c]), D = h && E ? E : T.data, O = !E && T.isFetching;
86
+ fetcher: E,
87
+ enabled: g,
88
+ staleTime: v ? h(y, 30) : 0,
89
+ gcTime: v ? h(b, 300) : 0,
90
+ isCacheable: m
91
+ }), O = n(() => S ? f(l) : void 0, [S, l]), k = g && O ? O : D.data, A = !O && D.isFetching;
88
92
  return {
89
- isLoading: O && D === void 0,
90
- isFetching: O,
91
- data: D,
92
- refetch: T.refetch,
93
- isSuccess: !O && !!D && D.status < 400,
94
- isError: !O && !!D && D.status >= 400
93
+ isLoading: A && k === void 0,
94
+ isFetching: A,
95
+ data: k,
96
+ refetch: D.refetch,
97
+ isSuccess: !w && !A && !!k && k.status < 400,
98
+ isError: !w && !A && !!k && k.status >= 400
95
99
  };
96
100
  };
97
101
  //#endregion
98
- export { l as DEFAULT_GC_TIME, c as DEFAULT_STALE_TIME, h as default };
102
+ export { u as DEFAULT_GC_TIME, l as DEFAULT_STALE_TIME, g as default };
@@ -2,7 +2,7 @@ import { ReactNode, RefObject } from 'react';
2
2
  export type ContainerProps = {
3
3
  ref?: RefObject<HTMLElement>;
4
4
  className?: string;
5
- subType?: 'div' | 'header' | 'footer' | 'nav' | 'main' | 'section' | 'article' | 'aside' | 'address' | 'figure' | 'dl' | 'dt' | 'dd';
5
+ subType?: 'div' | 'header' | 'footer' | 'nav' | 'main' | 'section' | 'article' | 'aside' | 'address' | 'figure' | 'dl' | 'dt' | 'dd' | 'li';
6
6
  children?: ReactNode;
7
7
  };
8
8
  declare const Container: ({ ref, className, subType, children }: ContainerProps) => import("react").JSX.Element;
@@ -1,5 +1,5 @@
1
1
  type SettingsProps = {
2
- subType?: 'div' | 'header' | 'footer' | 'nav' | 'main' | 'section' | 'article' | 'aside' | 'address' | 'figure' | 'dl' | 'dt' | 'dd';
2
+ subType?: 'div' | 'header' | 'footer' | 'nav' | 'main' | 'section' | 'article' | 'aside' | 'address' | 'figure' | 'dl' | 'dt' | 'dd' | 'li';
3
3
  onUpdate?: (key: string, value: string | boolean | number) => void;
4
4
  };
5
5
  declare const Settings: ({ subType, onUpdate }: SettingsProps) => import("react").JSX.Element;
@@ -63,6 +63,10 @@ var i = ({ subType: i = "div", onUpdate: a }) => {
63
63
  /* @__PURE__ */ t("option", {
64
64
  value: "dd",
65
65
  children: "DD"
66
+ }),
67
+ /* @__PURE__ */ t("option", {
68
+ value: "li",
69
+ children: "LI"
66
70
  })
67
71
  ]
68
72
  })
@@ -52,6 +52,6 @@ declare const declaration: {
52
52
  readonly settings: {};
53
53
  };
54
54
  } & import('@plitzi/sdk-shared/authoring/declare').ElementAttributesBrand<Partial<{
55
- subType?: "div" | "header" | "footer" | "nav" | "main" | "section" | "article" | "aside" | "address" | "figure" | "dl" | "dt" | "dd" | undefined;
55
+ subType?: "div" | "header" | "footer" | "nav" | "main" | "section" | "article" | "aside" | "address" | "figure" | "dl" | "dt" | "dd" | "li" | undefined;
56
56
  }>>;
57
57
  export default declaration;
@@ -51,6 +51,6 @@ declare const Container: {
51
51
  readonly settings: {};
52
52
  };
53
53
  } & import('@plitzi/sdk-shared/authoring/declare').ElementAttributesBrand<Partial<{
54
- subType?: "div" | "header" | "footer" | "nav" | "main" | "section" | "article" | "aside" | "address" | "figure" | "dl" | "dt" | "dd" | undefined;
54
+ subType?: "div" | "header" | "footer" | "nav" | "main" | "section" | "article" | "aside" | "address" | "figure" | "dl" | "dt" | "dd" | "li" | undefined;
55
55
  }>>;
56
56
  export default Container;
@@ -1,18 +1,19 @@
1
1
  import e from "../../../Element/hocs/withElement.mjs";
2
2
  import t from "../../../Element/hooks/useElement.mjs";
3
3
  import { RootElement as n } from "../../../Element/RootElement.mjs";
4
- import r from "./declaration.mjs";
5
- import { use as i, useCallback as a, useEffect as o, useMemo as s, useState as c } from "react";
6
- import l from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
7
- import { StoreProvider as u } from "@plitzi/nexus/react";
8
- import { emptyObject as d, getPathsFromObeject as f } from "@plitzi/sdk-shared/helpers/utils";
4
+ import r from "../../../dataSource/pathFields.mjs";
5
+ import i from "./declaration.mjs";
6
+ import { use as a, useCallback as o, useEffect as s, useMemo as c, useState as l } from "react";
7
+ import u from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
8
+ import { StoreProvider as d } from "@plitzi/nexus/react";
9
+ import { emptyObject as f } from "@plitzi/sdk-shared/helpers/utils";
9
10
  import { jsx as p, jsxs as m } from "react/jsx-runtime";
10
11
  import h from "clsx";
11
12
  import g from "@plitzi/sdk-shared/dataSource/helpers/getSourceName";
12
13
  import _ from "@plitzi/sdk-shared/dataSource/hooks/useRegisterSource";
13
14
  //#region src/elements/structure/DialogContainer/DialogContainer.tsx
14
15
  var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Header", acceptButtonLabel: x = "Accept", acceptButtonLabelLoading: S = "Loading...", rejectButtonLabel: C = "Cancel", autoHideAfterClick: w = !0 }) => {
15
- let { id: T, setElementState: E, definition: { styleSelectors: D, label: O = "Dialog" }, elementState: k } = t(), A = g(r.sourceType, T), { contexts: { InteractionsContext: j } } = l(), { interactionsManager: M } = i(j), [N, P] = c({}), [F, I] = c(!1), L = a((e) => {
16
+ let { id: T, setElementState: E, definition: { styleSelectors: D, label: O = "Dialog" }, elementState: k } = t(), A = g(i.sourceType, T), { contexts: { InteractionsContext: j } } = u(), { interactionsManager: M } = a(j), [N, P] = l({}), [F, I] = l(!1), L = o((e) => {
16
17
  let { metadata: t } = e;
17
18
  if (t && typeof t == "object") P(t);
18
19
  else if (typeof t == "string") try {
@@ -25,7 +26,7 @@ var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Head
25
26
  ...e,
26
27
  visibility: !0
27
28
  }));
28
- }, [E, P]), R = a(() => {
29
+ }, [E, P]), R = o(() => {
29
30
  M.interactionTrigger(T, "onDialogClose", { metadata: N }), P({}), E((e) => ({
30
31
  ...e,
31
32
  visibility: !1
@@ -36,7 +37,7 @@ var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Head
36
37
  P,
37
38
  N,
38
39
  T
39
- ]), z = a(() => {
40
+ ]), z = o(() => {
40
41
  w && (M.interactionTrigger(T, "onDialogClose", { metadata: N }), P({}), E((e) => ({
41
42
  ...e,
42
43
  visibility: !1
@@ -48,7 +49,7 @@ var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Head
48
49
  P,
49
50
  N,
50
51
  T
51
- ]), B = a(async () => {
52
+ ]), B = o(async () => {
52
53
  I(!0), await M.interactionTrigger(T, "onDialogAccept", { metadata: N }), I(!1), E((e) => ({
53
54
  ...e,
54
55
  visibility: !1
@@ -58,7 +59,7 @@ var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Head
58
59
  T,
59
60
  N,
60
61
  E
61
- ]), V = a(async () => {
62
+ ]), V = o(async () => {
62
63
  I(!0), await M.interactionTrigger(T, "onDialogReject", { metadata: N }), I(!1), E((e) => ({
63
64
  ...e,
64
65
  visibility: !1
@@ -68,7 +69,7 @@ var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Head
68
69
  T,
69
70
  N,
70
71
  E
71
- ]), H = s(() => ({
72
+ ]), H = c(() => ({
72
73
  onDialogAccept: {
73
74
  action: "onDialogAccept",
74
75
  title: "On Dialog Accept",
@@ -109,7 +110,7 @@ var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Head
109
110
  } },
110
111
  preview: { metadata: "" }
111
112
  }
112
- }), []), U = s(() => ({
113
+ }), []), U = c(() => ({
113
114
  openDialog: {
114
115
  action: "openDialog",
115
116
  title: `Open ${O}`,
@@ -134,7 +135,7 @@ var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Head
134
135
  L,
135
136
  O
136
137
  ]);
137
- o(() => {
138
+ s(() => {
138
139
  k.visibility !== !1 && M.interactionTrigger(T, "onDialogOpen", { metadata: N });
139
140
  }, [
140
141
  T,
@@ -142,23 +143,14 @@ var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Head
142
143
  N,
143
144
  k.visibility
144
145
  ]);
145
- let W = a(() => typeof N == "object" ? f(N).reduce((e, t) => {
146
- let n = t.split(".");
147
- return n.length > 1 ? [...e, {
148
- path: t,
149
- name: n.slice(n.length - 2).join(" ")
150
- }] : [...e, {
151
- path: t,
152
- name: n[n.length - 1]
153
- }];
154
- }, []) : [], [N]);
146
+ let W = o(() => r(N), [N]);
155
147
  _({
156
148
  id: T,
157
149
  source: A,
158
150
  name: O || `Dialog - ${T}`,
159
151
  fields: W
160
152
  });
161
- let G = s(() => A ? { runtime: { sources: { [A]: N } } } : d, [A, N]);
153
+ let G = c(() => A ? { runtime: { sources: { [A]: N } } } : f, [A, N]);
162
154
  return /* @__PURE__ */ m(n, {
163
155
  ref: e,
164
156
  className: h("plitzi-component__dialog-container", v),
@@ -183,7 +175,7 @@ var v = ({ ref: e, className: v = "", children: y, headerLabel: b = "Dialog Head
183
175
  }),
184
176
  /* @__PURE__ */ p("div", {
185
177
  className: h("dialog-container__body", D.body),
186
- children: /* @__PURE__ */ p(u, {
178
+ children: /* @__PURE__ */ p(d, {
187
179
  inherit: "live",
188
180
  name: `Dialog:${T}`,
189
181
  value: G,