@plitzi/sdk-elements 0.38.11 → 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.
- package/CHANGELOG.md +112 -0
- package/dist/Element/ElementWords.d.ts +6 -2
- package/dist/Element/ElementWords.mjs +18 -11
- package/dist/Element/JsxManager.mjs +8 -8
- package/dist/Element/PluginManager.mjs +4 -4
- package/dist/Element/ReplicaProvider.mjs +9 -9
- package/dist/Element/RootElement.mjs +60 -60
- package/dist/Element/helpers/declaredAttributes.d.ts +10 -0
- package/dist/Element/helpers/declaredAttributes.mjs +22 -0
- package/dist/Element/hocs/withElement.mjs +101 -100
- package/dist/Element/hooks/useEditableContent.d.ts +12 -0
- package/dist/Element/hooks/useEditableContent.mjs +21 -0
- package/dist/Element/hooks/useElementDataSource.mjs +9 -9
- package/dist/Element/hooks/useElementVisible.mjs +1 -1
- package/dist/Element/hooks/useInternalItems.mjs +22 -23
- package/dist/Element/hooks/useIntervalTriggers.d.ts +2 -3
- package/dist/Element/hooks/useKeyTriggers.d.ts +2 -3
- package/dist/Element/hooks/usePluginTrigger.d.ts +21 -0
- package/dist/Element/hooks/usePluginTrigger.mjs +18 -0
- package/dist/Element/hooks/useRootElementInteractions.d.ts +2 -4
- package/dist/Element/hooks/useRootElementInteractions.mjs +79 -76
- package/dist/Element/hooks/useScrollInteractions.d.ts +2 -3
- package/dist/canvas/useAnimationFrame.mjs +1 -1
- package/dist/dataSource/GlobalSources.mjs +1 -1
- package/dist/dataSource/pathFields.mjs +1 -1
- package/dist/dataSource/sourceStore.d.ts +7 -0
- package/dist/dataSource/sourceStore.mjs +5 -0
- package/dist/elements/advanced/BlockHtml/BlockHtml.mjs +1 -1
- package/dist/elements/advanced/BlockHtml/declaration.d.ts +2 -27
- package/dist/elements/advanced/BlockHtml/declaration.mjs +2 -25
- package/dist/elements/advanced/BlockHtml/index.d.ts +2 -25
- package/dist/elements/advanced/BlockJsx/Settings.mjs +37 -37
- package/dist/elements/advanced/BlockJsx/declaration.d.ts +2 -27
- package/dist/elements/advanced/BlockJsx/declaration.mjs +2 -25
- package/dist/elements/advanced/BlockJsx/index.d.ts +2 -25
- package/dist/elements/advanced/Custom/Custom.mjs +52 -42
- package/dist/elements/advanced/Custom/Settings.mjs +41 -40
- package/dist/elements/advanced/Custom/declaration.d.ts +2 -26
- package/dist/elements/advanced/Custom/declaration.mjs +2 -22
- package/dist/elements/advanced/Custom/index.d.ts +2 -24
- package/dist/elements/advanced/NodeHtml/Settings.mjs +3 -3
- package/dist/elements/advanced/NodeHtml/declaration.d.ts +19 -44
- package/dist/elements/advanced/NodeHtml/declaration.mjs +2 -23
- package/dist/elements/advanced/NodeHtml/index.d.ts +19 -42
- package/dist/elements/advanced/PlitziSdk/Settings.mjs +4 -4
- package/dist/elements/advanced/Reference/Reference.mjs +1 -1
- package/dist/elements/advanced/Reference/declaration.d.ts +3 -27
- package/dist/elements/advanced/Reference/declaration.mjs +2 -22
- package/dist/elements/advanced/Reference/index.d.ts +3 -25
- package/dist/elements/basic/Button/Button.mjs +24 -31
- package/dist/elements/basic/Button/declaration.d.ts +4 -27
- package/dist/elements/basic/Button/declaration.mjs +2 -25
- package/dist/elements/basic/Button/index.d.ts +4 -25
- package/dist/elements/basic/Dropdown/Dropdown.mjs +1 -1
- package/dist/elements/basic/Dropdown/DropdownPopup/declaration.d.ts +3 -19
- package/dist/elements/basic/Dropdown/DropdownPopup/declaration.mjs +2 -16
- package/dist/elements/basic/Dropdown/DropdownPopup/index.d.ts +3 -17
- package/dist/elements/basic/Dropdown/declaration.d.ts +3 -26
- package/dist/elements/basic/Dropdown/declaration.mjs +16 -41
- package/dist/elements/basic/Dropdown/index.d.ts +5 -42
- package/dist/elements/basic/Dropdown/useDropdown.mjs +23 -29
- package/dist/elements/basic/Heading/Heading.mjs +15 -17
- package/dist/elements/basic/Heading/Settings.mjs +4 -4
- package/dist/elements/basic/Heading/declaration.d.ts +2 -27
- package/dist/elements/basic/Heading/declaration.mjs +2 -23
- package/dist/elements/basic/Heading/index.d.ts +2 -25
- package/dist/elements/basic/Link/Link.mjs +52 -59
- package/dist/elements/basic/Link/Settings.mjs +52 -51
- package/dist/elements/basic/Link/declaration.d.ts +6 -26
- package/dist/elements/basic/Link/declaration.mjs +8 -32
- package/dist/elements/basic/Link/index.d.ts +6 -24
- package/dist/elements/basic/Markdown/Markdown.mjs +1 -1
- package/dist/elements/basic/Markdown/declaration.d.ts +2 -25
- package/dist/elements/basic/Markdown/declaration.mjs +2 -25
- package/dist/elements/basic/Markdown/index.d.ts +2 -23
- package/dist/elements/basic/Paragraph/Paragraph.mjs +15 -17
- package/dist/elements/basic/Paragraph/declaration.d.ts +2 -27
- package/dist/elements/basic/Paragraph/declaration.mjs +5 -28
- package/dist/elements/basic/Paragraph/index.d.ts +2 -25
- package/dist/elements/basic/RichText/RichText.mjs +1 -1
- package/dist/elements/basic/RichText/Settings.mjs +4 -4
- package/dist/elements/basic/RichText/declaration.d.ts +4 -27
- package/dist/elements/basic/RichText/declaration.mjs +2 -23
- package/dist/elements/basic/RichText/index.d.ts +4 -25
- package/dist/elements/basic/Text/Text.mjs +16 -18
- package/dist/elements/basic/Text/declaration.d.ts +3 -28
- package/dist/elements/basic/Text/declaration.mjs +2 -25
- package/dist/elements/basic/Text/index.d.ts +3 -26
- package/dist/elements/basic/ThemeToggle/Settings.d.ts +6 -0
- package/dist/elements/basic/ThemeToggle/Settings.mjs +49 -0
- package/dist/elements/basic/ThemeToggle/ThemeToggle.mjs +40 -39
- package/dist/elements/basic/ThemeToggle/declaration.d.ts +3 -26
- package/dist/elements/basic/ThemeToggle/declaration.mjs +2 -23
- package/dist/elements/basic/ThemeToggle/index.d.ts +3 -24
- package/dist/elements/declarations/index.d.ts +139 -1061
- package/dist/elements/form/Form/Form.mjs +65 -64
- package/dist/elements/form/Form/declaration.d.ts +3 -28
- package/dist/elements/form/Form/declaration.mjs +2 -25
- package/dist/elements/form/Form/index.d.ts +17 -25
- package/dist/elements/form/FormControl/FormControl.mjs +106 -105
- package/dist/elements/form/FormControl/declaration.d.ts +2 -22
- package/dist/elements/form/FormControl/declaration.mjs +4 -23
- package/dist/elements/form/FormControl/hocs/withFieldValue.mjs +1 -1
- package/dist/elements/form/FormControl/index.d.ts +16 -20
- package/dist/elements/internal/LayoutContainer/LayoutContainer.mjs +1 -1
- package/dist/elements/internal/LayoutContainer/declaration.d.ts +3 -25
- package/dist/elements/internal/LayoutContainer/declaration.mjs +3 -23
- package/dist/elements/internal/LayoutContainer/index.d.ts +3 -23
- package/dist/elements/internal/Loading/Settings.d.ts +2 -0
- package/dist/elements/internal/Loading/Settings.mjs +5 -0
- package/dist/elements/internal/Loading/declaration.d.ts +2 -24
- package/dist/elements/internal/Loading/declaration.mjs +3 -25
- package/dist/elements/internal/Loading/index.d.ts +2 -22
- package/dist/elements/internal/NotFound/NotFound.mjs +1 -1
- package/dist/elements/internal/NotFound/Settings.d.ts +2 -0
- package/dist/elements/internal/NotFound/Settings.mjs +5 -0
- package/dist/elements/internal/NotFound/declaration.d.ts +2 -24
- package/dist/elements/internal/NotFound/declaration.mjs +7 -29
- package/dist/elements/internal/NotFound/index.d.ts +2 -22
- package/dist/elements/internal/Page/Page.mjs +17 -16
- package/dist/elements/internal/Page/Settings.mjs +102 -101
- package/dist/elements/internal/Page/declaration.d.ts +3 -23
- package/dist/elements/internal/Page/declaration.mjs +14 -32
- package/dist/elements/internal/Page/index.d.ts +3 -21
- package/dist/elements/media/Embed/Embed.mjs +1 -1
- package/dist/elements/media/Embed/Settings.mjs +7 -7
- package/dist/elements/media/Embed/declaration.d.ts +2 -27
- package/dist/elements/media/Embed/declaration.mjs +10 -33
- package/dist/elements/media/Embed/index.d.ts +2 -25
- package/dist/elements/media/FontAwesome/Settings.mjs +8 -8
- package/dist/elements/media/FontAwesome/declaration.d.ts +2 -27
- package/dist/elements/media/FontAwesome/declaration.mjs +5 -28
- package/dist/elements/media/FontAwesome/index.d.ts +2 -25
- package/dist/elements/media/Image/Image.mjs +1 -1
- package/dist/elements/media/Image/Settings.mjs +47 -46
- package/dist/elements/media/Image/declaration.d.ts +2 -27
- package/dist/elements/media/Image/declaration.mjs +7 -30
- package/dist/elements/media/Image/index.d.ts +2 -25
- package/dist/elements/media/Svg/Settings.mjs +4 -4
- package/dist/elements/media/Svg/Svg.mjs +1 -1
- package/dist/elements/media/Svg/declaration.d.ts +3 -27
- package/dist/elements/media/Svg/declaration.mjs +2 -22
- package/dist/elements/media/Svg/index.d.ts +3 -25
- package/dist/elements/media/Video/Settings.mjs +7 -7
- package/dist/elements/media/Video/Video.mjs +1 -1
- package/dist/elements/media/Video/declaration.d.ts +2 -27
- package/dist/elements/media/Video/declaration.mjs +6 -29
- package/dist/elements/media/Video/index.d.ts +2 -25
- package/dist/elements/provider/ApiContainer/ApiContainer.mjs +151 -150
- package/dist/elements/provider/ApiContainer/Settings.mjs +135 -134
- package/dist/elements/provider/ApiContainer/declaration.d.ts +3 -28
- package/dist/elements/provider/ApiContainer/declaration.mjs +2 -23
- package/dist/elements/provider/ApiContainer/index.d.ts +3 -26
- package/dist/elements/provider/Channel/Channel.mjs +40 -39
- package/dist/elements/provider/Channel/declaration.d.ts +3 -28
- package/dist/elements/provider/Channel/declaration.mjs +3 -24
- package/dist/elements/provider/Channel/index.d.ts +3 -26
- package/dist/elements/settings.mjs +70 -62
- package/dist/elements/structure/Carousel/Carousel.mjs +36 -35
- package/dist/elements/structure/Carousel/CarouselTrack/declaration.d.ts +3 -25
- package/dist/elements/structure/Carousel/CarouselTrack/declaration.mjs +6 -28
- package/dist/elements/structure/Carousel/CarouselTrack/index.d.ts +3 -23
- package/dist/elements/structure/Carousel/Settings.mjs +40 -39
- package/dist/elements/structure/Carousel/declaration.d.ts +4 -29
- package/dist/elements/structure/Carousel/declaration.mjs +2 -25
- package/dist/elements/structure/Carousel/index.d.ts +6 -51
- package/dist/elements/structure/Container/Settings.mjs +40 -39
- package/dist/elements/structure/Container/declaration.d.ts +3 -28
- package/dist/elements/structure/Container/declaration.mjs +2 -23
- package/dist/elements/structure/Container/index.d.ts +3 -26
- package/dist/elements/structure/DialogContainer/DialogContainer.d.ts +8 -8
- package/dist/elements/structure/DialogContainer/DialogContainer.mjs +54 -173
- package/dist/elements/structure/DialogContainer/Settings.mjs +24 -23
- package/dist/elements/structure/DialogContainer/declaration.d.ts +8 -31
- package/dist/elements/structure/DialogContainer/declaration.mjs +2 -23
- package/dist/elements/structure/DialogContainer/index.d.ts +8 -29
- package/dist/elements/structure/List/ListItem/declaration.d.ts +4 -26
- package/dist/elements/structure/List/ListItem/declaration.mjs +3 -25
- package/dist/elements/structure/List/ListItem/index.d.ts +4 -24
- package/dist/elements/structure/List/Settings.mjs +6 -6
- package/dist/elements/structure/List/declaration.d.ts +3 -28
- package/dist/elements/structure/List/declaration.mjs +2 -23
- package/dist/elements/structure/List/index.d.ts +6 -51
- package/dist/elements/structure/List/modes/ListControlled/ListControlled.mjs +13 -12
- package/dist/elements/structure/List/modes/ListControlled/ListControlledItem.mjs +6 -6
- package/dist/elements/structure/ModalContainer/ModalContainer.mjs +27 -121
- package/dist/elements/structure/ModalContainer/Settings.mjs +15 -14
- package/dist/elements/structure/ModalContainer/declaration.d.ts +3 -26
- package/dist/elements/structure/ModalContainer/declaration.mjs +2 -23
- package/dist/elements/structure/ModalContainer/index.d.ts +3 -24
- package/dist/elements/structure/Overlay/OverlayShell.d.ts +24 -0
- package/dist/elements/structure/Overlay/OverlayShell.mjs +64 -0
- package/dist/elements/structure/Overlay/metadataOf.d.ts +8 -0
- package/dist/elements/structure/{ModalContainer/metadataFromText.mjs → Overlay/metadataOf.mjs} +5 -2
- package/dist/elements/structure/{ModalContainer → Overlay}/useModalDialog.mjs +1 -1
- package/dist/elements/structure/Overlay/useOverlay.d.ts +40 -0
- package/dist/elements/structure/Overlay/useOverlay.mjs +83 -0
- package/dist/elements/structure/Pagination/Pagination.mjs +28 -27
- package/dist/elements/structure/Pagination/Settings.mjs +10 -10
- package/dist/elements/structure/Pagination/declaration.d.ts +3 -26
- package/dist/elements/structure/Pagination/declaration.mjs +2 -23
- package/dist/elements/structure/Pagination/index.d.ts +3 -24
- package/dist/elements/structure/TabContainer/TabContainerBody/TabContainerBody.d.ts +3 -3
- package/dist/elements/structure/TabContainer/TabContainerBody/TabContainerBody.mjs +10 -32
- package/dist/elements/structure/TabContainer/TabContainerBody/declaration.d.ts +4 -22
- package/dist/elements/structure/TabContainer/TabContainerBody/declaration.mjs +3 -17
- package/dist/elements/structure/TabContainer/TabContainerBody/index.d.ts +4 -20
- package/dist/elements/structure/TabContainer/TabContainerHeader/TabContainerHeader.d.ts +3 -3
- package/dist/elements/structure/TabContainer/TabContainerHeader/TabContainerHeader.mjs +10 -34
- package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.d.ts +4 -22
- package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.mjs +3 -17
- package/dist/elements/structure/TabContainer/TabContainerHeader/index.d.ts +4 -20
- package/dist/elements/structure/TabContainer/TabContainerItem/declaration.d.ts +4 -26
- package/dist/elements/structure/TabContainer/TabContainerItem/declaration.mjs +7 -27
- package/dist/elements/structure/TabContainer/TabContainerItem/index.d.ts +4 -24
- package/dist/elements/structure/TabContainer/declaration.d.ts +4 -26
- package/dist/elements/structure/TabContainer/declaration.mjs +3 -23
- package/dist/elements/structure/TabContainer/index.d.ts +15 -89
- package/dist/elements/structure/TabContainer/useTabItems.d.ts +7 -0
- package/dist/elements/structure/TabContainer/useTabItems.mjs +35 -0
- package/dist/elements/useSettingsUpdate.d.ts +12 -0
- package/dist/elements/useSettingsUpdate.mjs +8 -0
- package/dist/index.d.ts +163 -984
- package/package.json +57 -13
- package/dist/elements/structure/ModalContainer/metadataFromText.d.ts +0 -7
- /package/dist/elements/structure/{ModalContainer → Overlay}/useModalDialog.d.ts +0 -0
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import e from "../../../../../Element/ReplicaProvider.mjs";
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import t from "../../../../../dataSource/sourceStore.mjs";
|
|
3
|
+
import { useId as n, useMemo as r } from "react";
|
|
4
|
+
import { StoreProvider as i } from "@plitzi/nexus/react";
|
|
5
5
|
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
6
6
|
import s from "clsx";
|
|
7
7
|
//#region src/elements/structure/List/modes/ListControlled/ListControlledItem.tsx
|
|
8
8
|
var c = ({ children: c, className: l = "", isTemplate: u = !1, index: d = 0, record: f, source: p = "" }) => {
|
|
9
|
-
let m =
|
|
9
|
+
let m = n(), h = r(() => t(p, {
|
|
10
10
|
item: f,
|
|
11
11
|
index: d
|
|
12
|
-
}
|
|
12
|
+
}), [
|
|
13
13
|
p,
|
|
14
14
|
f,
|
|
15
15
|
d
|
|
16
|
-
]), g = /* @__PURE__ */ a(e, { children: /* @__PURE__ */ a(
|
|
16
|
+
]), g = /* @__PURE__ */ a(e, { children: /* @__PURE__ */ a(i, {
|
|
17
17
|
inherit: "live",
|
|
18
18
|
name: `Row:${p}`,
|
|
19
19
|
segment: m,
|
|
@@ -1,129 +1,35 @@
|
|
|
1
1
|
import e from "./declaration.mjs";
|
|
2
2
|
import t from "../../../Element/hocs/withElement.mjs";
|
|
3
|
-
import n from "
|
|
4
|
-
import
|
|
5
|
-
import i from "
|
|
6
|
-
import a from "./useModalDialog.mjs";
|
|
7
|
-
import { metadataFromText as o } from "./metadataFromText.mjs";
|
|
8
|
-
import { use as s, useCallback as c, useEffect as l, useMemo as u, useRef as d, useState as f } from "react";
|
|
9
|
-
import p from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
|
|
10
|
-
import { StoreProvider as m } from "@plitzi/nexus/react";
|
|
11
|
-
import { emptyObject as h } from "@plitzi/sdk-shared/helpers/utils";
|
|
12
|
-
import { jsx as g, jsxs as _ } from "react/jsx-runtime";
|
|
13
|
-
import v from "clsx";
|
|
14
|
-
import y from "@plitzi/sdk-shared/dataSource/helpers/getSourceName";
|
|
15
|
-
import b from "@plitzi/sdk-shared/dataSource/hooks/useRegisterSource";
|
|
3
|
+
import n from "../Overlay/OverlayShell.mjs";
|
|
4
|
+
import r from "../Overlay/useOverlay.mjs";
|
|
5
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
16
6
|
//#region src/elements/structure/ModalContainer/ModalContainer.tsx
|
|
17
|
-
var
|
|
18
|
-
let
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}, [j, L]), V = c(() => {
|
|
25
|
-
F.interactionTrigger(T, "onModalClose", { metadata: I }), L({}), j((e) => ({
|
|
26
|
-
...e,
|
|
27
|
-
visibility: !1
|
|
28
|
-
}));
|
|
29
|
-
}, [
|
|
30
|
-
F,
|
|
31
|
-
j,
|
|
32
|
-
L,
|
|
33
|
-
I,
|
|
34
|
-
T
|
|
35
|
-
]), H = c(() => {
|
|
36
|
-
w && (F.interactionTrigger(T, "onModalClose", { metadata: I }), L({}), j((e) => ({
|
|
37
|
-
...e,
|
|
38
|
-
visibility: !1
|
|
39
|
-
})));
|
|
40
|
-
}, [
|
|
41
|
-
F,
|
|
42
|
-
w,
|
|
43
|
-
j,
|
|
44
|
-
L,
|
|
45
|
-
I,
|
|
46
|
-
T
|
|
47
|
-
]), U = u(() => ({
|
|
48
|
-
openModal: {
|
|
49
|
-
...e.callbacks.openModal,
|
|
50
|
-
title: `Open ${k}`,
|
|
51
|
-
callback: B
|
|
7
|
+
var a = ({ ref: t, className: a = "", children: o, title: s = "Modal Header", autoHideAfterClick: c = !0 }) => {
|
|
8
|
+
let l = r({
|
|
9
|
+
name: "Modal",
|
|
10
|
+
sourceType: e.sourceType,
|
|
11
|
+
callbacks: {
|
|
12
|
+
open: e.callbacks.openModal,
|
|
13
|
+
close: e.callbacks.closeModal
|
|
52
14
|
},
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}), [
|
|
59
|
-
V,
|
|
60
|
-
B,
|
|
61
|
-
k
|
|
62
|
-
]);
|
|
63
|
-
a({
|
|
64
|
-
panelRef: R,
|
|
65
|
-
open: !!N && D,
|
|
66
|
-
onClose: V
|
|
67
|
-
}), l(() => {
|
|
68
|
-
A.visibility !== !1 && F.interactionTrigger(T, "onModalOpen", { metadata: I });
|
|
69
|
-
}, [
|
|
70
|
-
T,
|
|
71
|
-
F,
|
|
72
|
-
I,
|
|
73
|
-
A.visibility
|
|
74
|
-
]);
|
|
75
|
-
let W = c(() => i(I), [I]);
|
|
76
|
-
b({
|
|
77
|
-
id: T,
|
|
78
|
-
source: M,
|
|
79
|
-
name: k || `Modal - ${T}`,
|
|
80
|
-
fields: W
|
|
15
|
+
events: {
|
|
16
|
+
open: "onModalOpen",
|
|
17
|
+
close: "onModalClose"
|
|
18
|
+
},
|
|
19
|
+
autoHideAfterClick: c
|
|
81
20
|
});
|
|
82
|
-
|
|
83
|
-
return /* @__PURE__ */ _(r, {
|
|
21
|
+
return /* @__PURE__ */ i(n, {
|
|
84
22
|
ref: t,
|
|
85
|
-
className:
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
className: v("modal-container__root", O.rootContainer),
|
|
95
|
-
role: "dialog",
|
|
96
|
-
"aria-modal": "true",
|
|
97
|
-
"aria-labelledby": z,
|
|
98
|
-
tabIndex: -1,
|
|
99
|
-
children: [/* @__PURE__ */ _("div", {
|
|
100
|
-
className: v("modal-container__header", O.headerContainer),
|
|
101
|
-
children: [/* @__PURE__ */ g("div", {
|
|
102
|
-
id: z,
|
|
103
|
-
className: v("modal-container__header__title", O.headerTitle),
|
|
104
|
-
children: C || "Modal Header"
|
|
105
|
-
}), /* @__PURE__ */ g("button", {
|
|
106
|
-
type: "button",
|
|
107
|
-
className: v("modal-container__close", O.headerCloseButton),
|
|
108
|
-
"aria-label": "Close",
|
|
109
|
-
title: "Close",
|
|
110
|
-
onClick: V,
|
|
111
|
-
children: /* @__PURE__ */ g("i", {
|
|
112
|
-
className: "fa-solid fa-xmark",
|
|
113
|
-
"aria-hidden": "true"
|
|
114
|
-
})
|
|
115
|
-
})]
|
|
116
|
-
}), /* @__PURE__ */ g("div", {
|
|
117
|
-
className: v("modal-container__body", O.bodyContainer),
|
|
118
|
-
children: /* @__PURE__ */ g(m, {
|
|
119
|
-
inherit: "live",
|
|
120
|
-
name: `Modal:${T}`,
|
|
121
|
-
value: G,
|
|
122
|
-
children: S
|
|
123
|
-
})
|
|
124
|
-
})]
|
|
125
|
-
})]
|
|
23
|
+
className: a,
|
|
24
|
+
block: "modal-container",
|
|
25
|
+
role: "dialog",
|
|
26
|
+
storeName: "Modal",
|
|
27
|
+
title: s || "Modal Header",
|
|
28
|
+
overlay: l,
|
|
29
|
+
triggers: e.triggers,
|
|
30
|
+
onDismiss: l.close,
|
|
31
|
+
children: o
|
|
126
32
|
});
|
|
127
|
-
},
|
|
33
|
+
}, o = t(a);
|
|
128
34
|
//#endregion
|
|
129
|
-
export {
|
|
35
|
+
export { a as ModalContainer, o as default };
|
|
@@ -1,24 +1,25 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import r from "
|
|
4
|
-
import i from "@plitzi/plitzi-ui/
|
|
1
|
+
import e from "../../useSettingsUpdate.mjs";
|
|
2
|
+
import { useCallback as t } from "react";
|
|
3
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
|
+
import i from "@plitzi/plitzi-ui/Checkbox";
|
|
5
|
+
import a from "@plitzi/plitzi-ui/Input";
|
|
5
6
|
//#region src/elements/structure/ModalContainer/Settings.tsx
|
|
6
|
-
var
|
|
7
|
-
let
|
|
8
|
-
return /* @__PURE__ */
|
|
7
|
+
var o = ({ title: o = "Modal Header", autoHideAfterClick: s = !0, onUpdate: c }) => {
|
|
8
|
+
let l = e(c), u = t((e) => c?.("autoHideAfterClick", e.target.checked), [c]);
|
|
9
|
+
return /* @__PURE__ */ r("div", {
|
|
9
10
|
className: "flex flex-col gap-4 py-2",
|
|
10
|
-
children: [/* @__PURE__ */
|
|
11
|
+
children: [/* @__PURE__ */ n(a, {
|
|
11
12
|
label: "Title",
|
|
12
|
-
value:
|
|
13
|
-
onChange:
|
|
13
|
+
value: o,
|
|
14
|
+
onChange: l.text("title"),
|
|
14
15
|
size: "xs"
|
|
15
|
-
}), /* @__PURE__ */
|
|
16
|
+
}), /* @__PURE__ */ n(i, {
|
|
16
17
|
label: "Hide after click background",
|
|
17
|
-
checked:
|
|
18
|
-
onChange:
|
|
18
|
+
checked: s,
|
|
19
|
+
onChange: u,
|
|
19
20
|
size: "xs"
|
|
20
21
|
})]
|
|
21
22
|
});
|
|
22
23
|
};
|
|
23
24
|
//#endregion
|
|
24
|
-
export {
|
|
25
|
+
export { o as default };
|
|
@@ -2,7 +2,7 @@ import { ModalContainerProps } from './ModalContainer';
|
|
|
2
2
|
import { AuthorableAttributes } from '@plitzi/sdk-shared/authoring/declare';
|
|
3
3
|
/** What this element can be authored with — its component's own props, minus what the runtime supplies. */
|
|
4
4
|
export type ModalContainerAttributes = AuthorableAttributes<ModalContainerProps>;
|
|
5
|
-
declare const declaration: {
|
|
5
|
+
declare const declaration: import('@plitzi/sdk-shared/authoring/declare').DeclaredElement<{
|
|
6
6
|
readonly type: "modalContainer";
|
|
7
7
|
readonly sourceType: "modalContainer";
|
|
8
8
|
readonly triggers: {
|
|
@@ -58,10 +58,8 @@ declare const declaration: {
|
|
|
58
58
|
};
|
|
59
59
|
readonly definition: {
|
|
60
60
|
readonly label: "Modal Container";
|
|
61
|
-
readonly type: "modalContainer";
|
|
62
61
|
readonly description: string;
|
|
63
|
-
readonly items:
|
|
64
|
-
readonly bindings: {};
|
|
62
|
+
readonly items: [];
|
|
65
63
|
/**
|
|
66
64
|
* A modal nobody opens is the commonest hidden subtree on a page, and before this it was built, bound and
|
|
67
65
|
* subscribed on every render of the page it sat in. `lazy` rather than `visible` so what a visitor typed into
|
|
@@ -69,7 +67,6 @@ declare const declaration: {
|
|
|
69
67
|
*/
|
|
70
68
|
readonly loadStrategy: "lazy";
|
|
71
69
|
readonly styleSelectors: {
|
|
72
|
-
readonly base: "";
|
|
73
70
|
readonly backgroundContainer: "";
|
|
74
71
|
readonly rootContainer: "";
|
|
75
72
|
readonly headerContainer: "";
|
|
@@ -77,31 +74,12 @@ declare const declaration: {
|
|
|
77
74
|
readonly headerCloseButton: "";
|
|
78
75
|
readonly bodyContainer: "";
|
|
79
76
|
};
|
|
80
|
-
readonly initialState: {
|
|
81
|
-
readonly visibility: true;
|
|
82
|
-
};
|
|
83
|
-
};
|
|
84
|
-
readonly builder: {
|
|
85
|
-
readonly canDelete: true;
|
|
86
|
-
readonly canSelect: true;
|
|
87
|
-
readonly canDragDrop: true;
|
|
88
|
-
readonly canMove: true;
|
|
89
|
-
readonly canSnippet: true;
|
|
90
|
-
readonly itemsAllowed: readonly [];
|
|
91
|
-
readonly itemsNotAllowed: readonly [];
|
|
92
77
|
};
|
|
93
78
|
readonly market: {
|
|
94
79
|
readonly category: "structure";
|
|
95
|
-
readonly owner: "Plitzi";
|
|
96
|
-
readonly verified: true;
|
|
97
|
-
readonly license: "MIT";
|
|
98
|
-
readonly website: "https://plitzi.com";
|
|
99
|
-
readonly backgroundColor: "#4422ee";
|
|
100
80
|
readonly icon: "fa-regular fa-clone";
|
|
101
81
|
};
|
|
102
82
|
readonly defaultStyle: {
|
|
103
|
-
readonly name: "Modal Container";
|
|
104
|
-
readonly displayMode: "desktop";
|
|
105
83
|
readonly style: {
|
|
106
84
|
readonly base: {
|
|
107
85
|
readonly default: {
|
|
@@ -206,10 +184,9 @@ declare const declaration: {
|
|
|
206
184
|
};
|
|
207
185
|
readonly subTypes: {};
|
|
208
186
|
};
|
|
209
|
-
readonly settings: {};
|
|
210
187
|
};
|
|
211
188
|
readonly initialItems: readonly ["container"];
|
|
212
|
-
}
|
|
189
|
+
}, Partial<{
|
|
213
190
|
title?: string | undefined;
|
|
214
191
|
autoHideAfterClick?: boolean | undefined;
|
|
215
192
|
}>>;
|
|
@@ -48,43 +48,23 @@ var t = e()({
|
|
|
48
48
|
},
|
|
49
49
|
definition: {
|
|
50
50
|
label: "Modal Container",
|
|
51
|
-
type: "modalContainer",
|
|
52
51
|
description: "A modal overlay container opened and closed through interactions; use for dialogs over the page. The element itself is fixed over the whole viewport, and holds two layers side by side — neither inside the other: `backgroundContainer`, the dim layer, `rgb(0 0 0 / 50%)` (its `background-color` is the whole dim), and `rootContainer`, the dialog, centred by `top: 50%`, `left: 50%` and `transform: translate3d(-50%, -50%, 0)` — to sit it near the top, set `top` and `transform: translateX(-50%)`; flex alignment on the dim layer moves nothing. Inside the dialog, top to bottom: `headerContainer` (with `headerTitle` and `headerCloseButton`) and `bodyContainer`.",
|
|
53
52
|
items: [],
|
|
54
|
-
bindings: {},
|
|
55
53
|
loadStrategy: "lazy",
|
|
56
54
|
styleSelectors: {
|
|
57
|
-
base: "",
|
|
58
55
|
backgroundContainer: "",
|
|
59
56
|
rootContainer: "",
|
|
60
57
|
headerContainer: "",
|
|
61
58
|
headerTitle: "",
|
|
62
59
|
headerCloseButton: "",
|
|
63
60
|
bodyContainer: ""
|
|
64
|
-
}
|
|
65
|
-
initialState: { visibility: !0 }
|
|
66
|
-
},
|
|
67
|
-
builder: {
|
|
68
|
-
canDelete: !0,
|
|
69
|
-
canSelect: !0,
|
|
70
|
-
canDragDrop: !0,
|
|
71
|
-
canMove: !0,
|
|
72
|
-
canSnippet: !0,
|
|
73
|
-
itemsAllowed: [],
|
|
74
|
-
itemsNotAllowed: []
|
|
61
|
+
}
|
|
75
62
|
},
|
|
76
63
|
market: {
|
|
77
64
|
category: "structure",
|
|
78
|
-
owner: "Plitzi",
|
|
79
|
-
verified: !0,
|
|
80
|
-
license: "MIT",
|
|
81
|
-
website: "https://plitzi.com",
|
|
82
|
-
backgroundColor: "#4422ee",
|
|
83
65
|
icon: "fa-regular fa-clone"
|
|
84
66
|
},
|
|
85
67
|
defaultStyle: {
|
|
86
|
-
name: "Modal Container",
|
|
87
|
-
displayMode: "desktop",
|
|
88
68
|
style: {
|
|
89
69
|
base: { default: {
|
|
90
70
|
position: "fixed",
|
|
@@ -174,8 +154,7 @@ var t = e()({
|
|
|
174
154
|
} }
|
|
175
155
|
},
|
|
176
156
|
subTypes: {}
|
|
177
|
-
}
|
|
178
|
-
settings: {}
|
|
157
|
+
}
|
|
179
158
|
},
|
|
180
159
|
initialItems: ["container"]
|
|
181
160
|
});
|
|
@@ -57,13 +57,10 @@ declare const ModalContainer: {
|
|
|
57
57
|
};
|
|
58
58
|
readonly definition: {
|
|
59
59
|
readonly label: "Modal Container";
|
|
60
|
-
readonly type: "modalContainer";
|
|
61
60
|
readonly description: string;
|
|
62
|
-
readonly items:
|
|
63
|
-
readonly bindings: {};
|
|
61
|
+
readonly items: [];
|
|
64
62
|
readonly loadStrategy: "lazy";
|
|
65
63
|
readonly styleSelectors: {
|
|
66
|
-
readonly base: "";
|
|
67
64
|
readonly backgroundContainer: "";
|
|
68
65
|
readonly rootContainer: "";
|
|
69
66
|
readonly headerContainer: "";
|
|
@@ -71,31 +68,12 @@ declare const ModalContainer: {
|
|
|
71
68
|
readonly headerCloseButton: "";
|
|
72
69
|
readonly bodyContainer: "";
|
|
73
70
|
};
|
|
74
|
-
readonly initialState: {
|
|
75
|
-
readonly visibility: true;
|
|
76
|
-
};
|
|
77
|
-
};
|
|
78
|
-
readonly builder: {
|
|
79
|
-
readonly canDelete: true;
|
|
80
|
-
readonly canSelect: true;
|
|
81
|
-
readonly canDragDrop: true;
|
|
82
|
-
readonly canMove: true;
|
|
83
|
-
readonly canSnippet: true;
|
|
84
|
-
readonly itemsAllowed: readonly [];
|
|
85
|
-
readonly itemsNotAllowed: readonly [];
|
|
86
71
|
};
|
|
87
72
|
readonly market: {
|
|
88
73
|
readonly category: "structure";
|
|
89
|
-
readonly owner: "Plitzi";
|
|
90
|
-
readonly verified: true;
|
|
91
|
-
readonly license: "MIT";
|
|
92
|
-
readonly website: "https://plitzi.com";
|
|
93
|
-
readonly backgroundColor: "#4422ee";
|
|
94
74
|
readonly icon: "fa-regular fa-clone";
|
|
95
75
|
};
|
|
96
76
|
readonly defaultStyle: {
|
|
97
|
-
readonly name: "Modal Container";
|
|
98
|
-
readonly displayMode: "desktop";
|
|
99
77
|
readonly style: {
|
|
100
78
|
readonly base: {
|
|
101
79
|
readonly default: {
|
|
@@ -200,9 +178,10 @@ declare const ModalContainer: {
|
|
|
200
178
|
};
|
|
201
179
|
readonly subTypes: {};
|
|
202
180
|
};
|
|
203
|
-
readonly settings: {};
|
|
204
181
|
};
|
|
205
182
|
readonly initialItems: readonly ["container"];
|
|
183
|
+
} & {
|
|
184
|
+
content: import('@plitzi/sdk-shared/authoring/declare').ElementContentDefaults;
|
|
206
185
|
} & import('@plitzi/sdk-shared/authoring/declare').ElementAttributesBrand<Partial<{
|
|
207
186
|
title?: string | undefined;
|
|
208
187
|
autoHideAfterClick?: boolean | undefined;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Overlay } from './useOverlay';
|
|
2
|
+
import { InteractionCallback } from '@plitzi/sdk-shared';
|
|
3
|
+
import { ReactNode, RefObject } from 'react';
|
|
4
|
+
export type OverlayShellProps = {
|
|
5
|
+
ref?: RefObject<HTMLElement>;
|
|
6
|
+
className?: string;
|
|
7
|
+
/** Its class names' stem: `modal-container` gives `plitzi-component__modal-container`, `modal-container__root`… */
|
|
8
|
+
block: string;
|
|
9
|
+
/** `alertdialog` for one that asks for an answer: a screen reader reads it out as it opens. */
|
|
10
|
+
role: 'dialog' | 'alertdialog';
|
|
11
|
+
/** What its store is called in the dev tools: `Modal:<id>`. */
|
|
12
|
+
storeName: string;
|
|
13
|
+
title: string;
|
|
14
|
+
overlay: Overlay;
|
|
15
|
+
triggers: Record<string, InteractionCallback>;
|
|
16
|
+
/** What the close button and Escape do. */
|
|
17
|
+
onDismiss: () => void;
|
|
18
|
+
children?: ReactNode;
|
|
19
|
+
/** Below the body: a dialog's answers. */
|
|
20
|
+
footer?: ReactNode;
|
|
21
|
+
};
|
|
22
|
+
/** A modal's and a dialog's markup: the backdrop, the panel the keyboard is kept in, its header and its body. */
|
|
23
|
+
declare const OverlayShell: ({ ref, className, block, role, storeName, title, overlay, triggers, onDismiss, children, footer }: OverlayShellProps) => import('react').JSX.Element;
|
|
24
|
+
export default OverlayShell;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { RootElement as e } from "../../../Element/RootElement.mjs";
|
|
2
|
+
import t from "./useModalDialog.mjs";
|
|
3
|
+
import { useRef as n } from "react";
|
|
4
|
+
import { StoreProvider as r } from "@plitzi/nexus/react";
|
|
5
|
+
import { jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
6
|
+
import o from "clsx";
|
|
7
|
+
//#region src/elements/structure/Overlay/OverlayShell.tsx
|
|
8
|
+
var s = ({ ref: s, className: c = "", block: l, role: u, storeName: d, title: f, overlay: p, triggers: m, onDismiss: h, children: g, footer: _ }) => {
|
|
9
|
+
let { id: v, titleId: y, styleSelectors: b, open: x, interactionCallbacks: S, storeValue: C, closeFromBackdrop: w } = p, T = n(null);
|
|
10
|
+
return t({
|
|
11
|
+
panelRef: T,
|
|
12
|
+
open: x,
|
|
13
|
+
onClose: h
|
|
14
|
+
}), /* @__PURE__ */ a(e, {
|
|
15
|
+
ref: s,
|
|
16
|
+
className: o(`plitzi-component__${l}`, c),
|
|
17
|
+
interactionTriggers: m,
|
|
18
|
+
interactionCallbacks: S,
|
|
19
|
+
children: [/* @__PURE__ */ i("div", {
|
|
20
|
+
className: o(`${l}__background`, b.backgroundContainer),
|
|
21
|
+
"aria-hidden": "true",
|
|
22
|
+
onClick: w
|
|
23
|
+
}), /* @__PURE__ */ a("div", {
|
|
24
|
+
ref: T,
|
|
25
|
+
className: o(`${l}__root`, b.rootContainer),
|
|
26
|
+
role: u,
|
|
27
|
+
"aria-modal": "true",
|
|
28
|
+
"aria-labelledby": y,
|
|
29
|
+
tabIndex: -1,
|
|
30
|
+
children: [
|
|
31
|
+
/* @__PURE__ */ a("div", {
|
|
32
|
+
className: o(`${l}__header`, b.headerContainer),
|
|
33
|
+
children: [/* @__PURE__ */ i("div", {
|
|
34
|
+
id: y,
|
|
35
|
+
className: o(`${l}__header__title`, b.headerTitle),
|
|
36
|
+
children: f
|
|
37
|
+
}), /* @__PURE__ */ i("button", {
|
|
38
|
+
type: "button",
|
|
39
|
+
className: o(`${l}__close`, b.headerCloseButton),
|
|
40
|
+
"aria-label": "Close",
|
|
41
|
+
title: "Close",
|
|
42
|
+
onClick: h,
|
|
43
|
+
children: /* @__PURE__ */ i("i", {
|
|
44
|
+
className: "fa-solid fa-xmark",
|
|
45
|
+
"aria-hidden": "true"
|
|
46
|
+
})
|
|
47
|
+
})]
|
|
48
|
+
}),
|
|
49
|
+
/* @__PURE__ */ i("div", {
|
|
50
|
+
className: o(`${l}__body`, b.bodyContainer),
|
|
51
|
+
children: /* @__PURE__ */ i(r, {
|
|
52
|
+
inherit: "live",
|
|
53
|
+
name: `${d}:${v}`,
|
|
54
|
+
value: C,
|
|
55
|
+
children: g
|
|
56
|
+
})
|
|
57
|
+
}),
|
|
58
|
+
_
|
|
59
|
+
]
|
|
60
|
+
})]
|
|
61
|
+
});
|
|
62
|
+
};
|
|
63
|
+
//#endregion
|
|
64
|
+
export { s as default };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What `openModal('modal', …)` — or `openDialog` — hands the container, as its data: an object is its fields, a JSON
|
|
3
|
+
* object in text is too, and anything else is `content`.
|
|
4
|
+
*
|
|
5
|
+
* Numeric ids are the common case, and `'42'` parses as JSON too — as the number. Set as the container's data whole, it
|
|
6
|
+
* had no `content` and every binding inside read nothing.
|
|
7
|
+
*/
|
|
8
|
+
export declare const metadataOf: (metadata: unknown) => Record<string, unknown>;
|
package/dist/elements/structure/{ModalContainer/metadataFromText.mjs → Overlay/metadataOf.mjs}
RENAMED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { isRecord as e } from "@plitzi/sdk-shared/helpers/isRecord";
|
|
2
|
-
//#region src/elements/structure/
|
|
2
|
+
//#region src/elements/structure/Overlay/metadataOf.ts
|
|
3
3
|
var t = (t) => {
|
|
4
|
+
if (e(t)) return t;
|
|
5
|
+
if (t == null) return {};
|
|
6
|
+
if (typeof t != "string") return { content: t };
|
|
4
7
|
try {
|
|
5
8
|
let n = JSON.parse(t);
|
|
6
9
|
if (e(n)) return n;
|
|
@@ -8,4 +11,4 @@ var t = (t) => {
|
|
|
8
11
|
return { content: t };
|
|
9
12
|
};
|
|
10
13
|
//#endregion
|
|
11
|
-
export { t as
|
|
14
|
+
export { t as metadataOf };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useEffect as e, useEffectEvent as t } from "react";
|
|
2
|
-
//#region src/elements/structure/
|
|
2
|
+
//#region src/elements/structure/Overlay/useModalDialog.ts
|
|
3
3
|
var n = "a[href], button:not([disabled]), input:not([disabled]):not([type=\"hidden\"]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"]), [contenteditable=\"true\"]", r = (e) => [...e.querySelectorAll(n)].filter((e) => typeof e.checkVisibility != "function" || e.checkVisibility()), i = ({ panelRef: n, open: i, onClose: a }) => {
|
|
4
4
|
let o = t(a);
|
|
5
5
|
e(() => {
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { InteractionCallback } from '@plitzi/sdk-shared';
|
|
2
|
+
export type UseOverlayProps = {
|
|
3
|
+
/** What it is called where it has no label of its own: `Modal`, `Dialog`. */
|
|
4
|
+
name: string;
|
|
5
|
+
sourceType: string;
|
|
6
|
+
/** The callbacks it answers — `openModal` and `closeModal` — as its declaration has them. */
|
|
7
|
+
callbacks: {
|
|
8
|
+
open: InteractionCallback;
|
|
9
|
+
close: InteractionCallback;
|
|
10
|
+
};
|
|
11
|
+
/** The events it fires as it opens and closes — `onModalOpen`, `onModalClose`. */
|
|
12
|
+
events: {
|
|
13
|
+
open: string;
|
|
14
|
+
close: string;
|
|
15
|
+
};
|
|
16
|
+
/** Whether a click on the backdrop closes it. */
|
|
17
|
+
autoHideAfterClick: boolean;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* What a modal and a dialog share: the data they were opened with, published to what is inside them as their source;
|
|
21
|
+
* the callbacks that open and close them; and the events they fire as they do.
|
|
22
|
+
*/
|
|
23
|
+
declare const useOverlay: ({ name, sourceType, callbacks, events, autoHideAfterClick }: UseOverlayProps) => {
|
|
24
|
+
id: string;
|
|
25
|
+
titleId: string;
|
|
26
|
+
styleSelectors: {
|
|
27
|
+
[selector: string]: string;
|
|
28
|
+
base: string;
|
|
29
|
+
};
|
|
30
|
+
/** Shown, and on a rendered page — never in the builder, where it is something being edited. */
|
|
31
|
+
open: boolean;
|
|
32
|
+
interactionCallbacks: Record<string, InteractionCallback>;
|
|
33
|
+
storeValue: {};
|
|
34
|
+
trigger: (event: string) => Promise<unknown[]> | undefined;
|
|
35
|
+
hide: () => void;
|
|
36
|
+
close: () => void;
|
|
37
|
+
closeFromBackdrop: () => void;
|
|
38
|
+
};
|
|
39
|
+
export type Overlay = ReturnType<typeof useOverlay>;
|
|
40
|
+
export default useOverlay;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import e from "../../../Element/hooks/useElement.mjs";
|
|
2
|
+
import t from "../../../dataSource/pathFields.mjs";
|
|
3
|
+
import n from "../../../dataSource/sourceStore.mjs";
|
|
4
|
+
import { metadataOf as r } from "./metadataOf.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/usePlitzi";
|
|
7
|
+
import u from "@plitzi/sdk-interactions/InteractionsContext";
|
|
8
|
+
import d from "@plitzi/sdk-shared/dataSource/helpers/getSourceName";
|
|
9
|
+
import f from "@plitzi/sdk-shared/dataSource/hooks/useRegisterSource";
|
|
10
|
+
//#region src/elements/structure/Overlay/useOverlay.ts
|
|
11
|
+
var p = ({ name: p, sourceType: m, callbacks: h, events: g, autoHideAfterClick: _ }) => {
|
|
12
|
+
let { id: v, rootId: y, visible: b, definition: { styleSelectors: x, label: S = p }, elementState: C, setElementState: w } = e(), T = d(m, v), { settings: { previewMode: E } } = l(), { interactionsManager: D } = i(u), [O, k] = c({}), A = a((e) => D.interactionTrigger(v, e, { metadata: O }), [
|
|
13
|
+
v,
|
|
14
|
+
D,
|
|
15
|
+
O
|
|
16
|
+
]), j = a(() => {
|
|
17
|
+
k({}), w((e) => ({
|
|
18
|
+
...e,
|
|
19
|
+
visibility: !1
|
|
20
|
+
}));
|
|
21
|
+
}, [w]), M = a((e) => {
|
|
22
|
+
k(r(e.metadata)), w((e) => ({
|
|
23
|
+
...e,
|
|
24
|
+
visibility: !0
|
|
25
|
+
}));
|
|
26
|
+
}, [w]), N = a(() => {
|
|
27
|
+
A(g.close), j();
|
|
28
|
+
}, [
|
|
29
|
+
g.close,
|
|
30
|
+
j,
|
|
31
|
+
A
|
|
32
|
+
]), P = a(() => {
|
|
33
|
+
_ && N();
|
|
34
|
+
}, [_, N]), F = s(() => ({
|
|
35
|
+
[h.open.action]: {
|
|
36
|
+
...h.open,
|
|
37
|
+
title: `Open ${S}`,
|
|
38
|
+
callback: M
|
|
39
|
+
},
|
|
40
|
+
[h.close.action]: {
|
|
41
|
+
...h.close,
|
|
42
|
+
title: `Close ${S}`,
|
|
43
|
+
callback: N
|
|
44
|
+
}
|
|
45
|
+
}), [
|
|
46
|
+
h.close,
|
|
47
|
+
h.open,
|
|
48
|
+
N,
|
|
49
|
+
S,
|
|
50
|
+
M
|
|
51
|
+
]);
|
|
52
|
+
o(() => {
|
|
53
|
+
C.visibility !== !1 && D.interactionTrigger(v, g.open, { metadata: O });
|
|
54
|
+
}, [
|
|
55
|
+
v,
|
|
56
|
+
D,
|
|
57
|
+
O,
|
|
58
|
+
C.visibility,
|
|
59
|
+
g.open
|
|
60
|
+
]);
|
|
61
|
+
let I = a(() => t(O), [O]);
|
|
62
|
+
f({
|
|
63
|
+
id: v,
|
|
64
|
+
source: T,
|
|
65
|
+
name: S || `${p} - ${v}`,
|
|
66
|
+
fields: I
|
|
67
|
+
});
|
|
68
|
+
let L = s(() => n(T, O), [T, O]);
|
|
69
|
+
return {
|
|
70
|
+
id: v,
|
|
71
|
+
titleId: `${y}_${v}_title`,
|
|
72
|
+
styleSelectors: x,
|
|
73
|
+
open: !!E && b,
|
|
74
|
+
interactionCallbacks: F,
|
|
75
|
+
storeValue: L,
|
|
76
|
+
trigger: A,
|
|
77
|
+
hide: j,
|
|
78
|
+
close: N,
|
|
79
|
+
closeFromBackdrop: P
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
//#endregion
|
|
83
|
+
export { p as default };
|