@plitzi/sdk-elements 0.37.9 → 0.38.1
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 +630 -0
- package/dist/Element/ElementWords.d.ts +16 -0
- package/dist/Element/ElementWords.mjs +19 -0
- package/dist/Element/RootElement.mjs +15 -12
- package/dist/Element/helpers/elementConstants.mjs +27 -0
- package/dist/Element/helpers/renderStaticTag.d.ts +3 -1
- package/dist/Element/helpers/renderStaticTag.mjs +6 -5
- package/dist/Element/hooks/useElementDataSource.mjs +20 -19
- package/dist/Element/hooks/useInternalItems.mjs +33 -31
- package/dist/Element/hooks/useIntervalTriggers.d.ts +17 -0
- package/dist/Element/hooks/useIntervalTriggers.mjs +37 -0
- package/dist/Element/hooks/useRootElementInteractions.d.ts +6 -2
- package/dist/Element/hooks/useRootElementInteractions.mjs +84 -63
- package/dist/Element/hooks/useScrollInteractions.d.ts +20 -0
- package/dist/Element/hooks/useScrollInteractions.mjs +58 -0
- package/dist/components/IconField/IconField.d.ts +8 -0
- package/dist/components/IconField/IconField.mjs +41 -0
- package/dist/components/IconField/index.d.ts +2 -0
- package/dist/components/IconField/index.mjs +2 -0
- package/dist/components/IconPicker/IconPicker.d.ts +11 -0
- package/dist/components/IconPicker/IconPicker.mjs +82 -0
- package/dist/components/IconPicker/index.d.ts +2 -0
- package/dist/components/IconPicker/index.mjs +2 -0
- package/dist/dataSource/GlobalSources.mjs +102 -83
- package/dist/dataSource/useFlag.d.ts +9 -0
- package/dist/dataSource/useFlag.mjs +8 -0
- package/dist/elements/advanced/BlockHtml/declaration.d.ts +1 -1
- package/dist/elements/advanced/BlockHtml/declaration.mjs +1 -1
- package/dist/elements/advanced/BlockHtml/index.d.ts +1 -1
- package/dist/elements/advanced/BlockJsx/Settings.mjs +2 -1
- package/dist/elements/advanced/BlockJsx/declaration.d.ts +1 -1
- package/dist/elements/advanced/BlockJsx/declaration.mjs +1 -1
- package/dist/elements/advanced/BlockJsx/index.d.ts +1 -1
- package/dist/elements/advanced/Custom/declaration.d.ts +1 -1
- package/dist/elements/advanced/Custom/declaration.mjs +1 -1
- package/dist/elements/advanced/Custom/index.d.ts +1 -1
- package/dist/elements/advanced/NodeHtml/declaration.d.ts +3 -3
- package/dist/elements/advanced/NodeHtml/declaration.mjs +1 -1
- package/dist/elements/advanced/NodeHtml/index.d.ts +3 -3
- package/dist/elements/advanced/Reference/declaration.d.ts +1 -1
- package/dist/elements/advanced/Reference/declaration.mjs +1 -1
- package/dist/elements/advanced/Reference/index.d.ts +1 -1
- package/dist/elements/basic/Button/Button.d.ts +9 -1
- package/dist/elements/basic/Button/Button.mjs +31 -19
- package/dist/elements/basic/Button/Settings.d.ts +3 -1
- package/dist/elements/basic/Button/Settings.mjs +39 -33
- package/dist/elements/basic/Button/declaration.d.ts +7 -1
- package/dist/elements/basic/Button/declaration.mjs +10 -4
- package/dist/elements/basic/Button/index.d.ts +7 -1
- package/dist/elements/basic/Dropdown/DropdownPopup/declaration.d.ts +1 -1
- package/dist/elements/basic/Dropdown/DropdownPopup/declaration.mjs +1 -1
- package/dist/elements/basic/Dropdown/DropdownPopup/index.d.ts +1 -1
- package/dist/elements/basic/Dropdown/declaration.d.ts +1 -1
- package/dist/elements/basic/Dropdown/declaration.mjs +1 -1
- package/dist/elements/basic/Dropdown/index.d.ts +2 -2
- package/dist/elements/basic/Heading/declaration.d.ts +1 -1
- package/dist/elements/basic/Heading/declaration.mjs +1 -1
- package/dist/elements/basic/Heading/index.d.ts +1 -1
- package/dist/elements/basic/Link/Link.d.ts +20 -1
- package/dist/elements/basic/Link/Link.mjs +67 -47
- package/dist/elements/basic/Link/Settings.d.ts +6 -1
- package/dist/elements/basic/Link/Settings.mjs +91 -58
- package/dist/elements/basic/Link/declaration.d.ts +14 -1
- package/dist/elements/basic/Link/declaration.mjs +15 -5
- package/dist/elements/basic/Link/index.d.ts +14 -1
- package/dist/elements/basic/Link/isCurrentPage.d.ts +5 -0
- package/dist/elements/basic/Link/isCurrentPage.mjs +12 -0
- package/dist/elements/basic/Markdown/declaration.d.ts +1 -1
- package/dist/elements/basic/Markdown/declaration.mjs +1 -1
- package/dist/elements/basic/Markdown/index.d.ts +1 -1
- package/dist/elements/basic/Paragraph/declaration.d.ts +1 -1
- package/dist/elements/basic/Paragraph/declaration.mjs +1 -1
- package/dist/elements/basic/Paragraph/index.d.ts +1 -1
- package/dist/elements/basic/RichText/declaration.d.ts +1 -1
- package/dist/elements/basic/RichText/declaration.mjs +1 -1
- package/dist/elements/basic/RichText/index.d.ts +1 -1
- package/dist/elements/basic/Text/declaration.d.ts +1 -1
- package/dist/elements/basic/Text/declaration.mjs +1 -1
- package/dist/elements/basic/Text/index.d.ts +1 -1
- package/dist/elements/basic/ThemeToggle/declaration.d.ts +1 -1
- package/dist/elements/basic/ThemeToggle/declaration.mjs +1 -1
- package/dist/elements/basic/ThemeToggle/index.d.ts +1 -1
- package/dist/elements/declarations/index.d.ts +362 -40
- package/dist/elements/declarations/index.mjs +40 -32
- package/dist/elements/form/Form/declaration.d.ts +1 -1
- package/dist/elements/form/Form/declaration.mjs +1 -1
- package/dist/elements/form/Form/index.d.ts +1 -1
- package/dist/elements/form/FormControl/FormControl.mjs +1 -1
- package/dist/elements/form/FormControl/declaration.d.ts +1 -1
- package/dist/elements/form/FormControl/declaration.mjs +1 -1
- package/dist/elements/form/FormControl/index.d.ts +1 -1
- package/dist/elements/index.d.ts +7 -1
- package/dist/elements/index.mjs +30 -24
- package/dist/elements/internal/LayoutContainer/declaration.d.ts +1 -1
- package/dist/elements/internal/LayoutContainer/declaration.mjs +1 -1
- package/dist/elements/internal/LayoutContainer/index.d.ts +1 -1
- package/dist/elements/internal/Loading/declaration.d.ts +1 -1
- package/dist/elements/internal/Loading/declaration.mjs +1 -1
- package/dist/elements/internal/Loading/index.d.ts +1 -1
- package/dist/elements/internal/NotFound/declaration.d.ts +1 -1
- package/dist/elements/internal/NotFound/declaration.mjs +1 -1
- package/dist/elements/internal/NotFound/index.d.ts +1 -1
- package/dist/elements/internal/Page/declaration.d.ts +1 -1
- package/dist/elements/internal/Page/declaration.mjs +1 -1
- package/dist/elements/internal/Page/index.d.ts +1 -1
- package/dist/elements/media/Embed/Embed.d.ts +22 -0
- package/dist/elements/media/Embed/Embed.mjs +29 -0
- package/dist/elements/media/Embed/Settings.d.ts +10 -0
- package/dist/elements/media/Embed/Settings.mjs +51 -0
- package/dist/elements/media/Embed/declaration.d.ts +70 -0
- package/dist/elements/media/Embed/declaration.mjs +54 -0
- package/dist/elements/media/Embed/embeddableSrc.d.ts +5 -0
- package/dist/elements/media/Embed/embeddableSrc.mjs +4 -0
- package/dist/elements/media/Embed/index.d.ts +69 -0
- package/dist/elements/media/Embed/index.mjs +6 -0
- package/dist/elements/media/FontAwesome/Settings.mjs +32 -100
- package/dist/elements/media/FontAwesome/declaration.d.ts +1 -1
- package/dist/elements/media/FontAwesome/declaration.mjs +1 -1
- package/dist/elements/media/FontAwesome/index.d.ts +1 -1
- package/dist/elements/media/Image/Image.d.ts +11 -1
- package/dist/elements/media/Image/Image.mjs +33 -23
- package/dist/elements/media/Image/Settings.d.ts +4 -1
- package/dist/elements/media/Image/Settings.mjs +32 -9
- package/dist/elements/media/Image/declaration.d.ts +4 -1
- package/dist/elements/media/Image/declaration.mjs +1 -1
- package/dist/elements/media/Image/index.d.ts +4 -1
- package/dist/elements/media/Svg/Settings.d.ts +7 -0
- package/dist/elements/media/Svg/Settings.mjs +24 -0
- package/dist/elements/media/Svg/Svg.d.ts +16 -0
- package/dist/elements/media/Svg/Svg.mjs +31 -0
- package/dist/elements/media/Svg/declaration.d.ts +61 -0
- package/dist/elements/media/Svg/declaration.mjs +49 -0
- package/dist/elements/media/Svg/index.d.ts +60 -0
- package/dist/elements/media/Svg/index.mjs +6 -0
- package/dist/elements/media/Svg/sanitizeSvg.d.ts +13 -0
- package/dist/elements/media/Svg/sanitizeSvg.mjs +5 -0
- package/dist/elements/media/Video/declaration.d.ts +1 -1
- package/dist/elements/media/Video/declaration.mjs +1 -1
- package/dist/elements/media/Video/index.d.ts +1 -1
- package/dist/elements/provider/ApiContainer/ApiContainer.d.ts +6 -1
- package/dist/elements/provider/ApiContainer/ApiContainer.mjs +118 -112
- package/dist/elements/provider/ApiContainer/Settings.d.ts +2 -1
- package/dist/elements/provider/ApiContainer/Settings.mjs +45 -37
- package/dist/elements/provider/ApiContainer/declaration.d.ts +1 -1
- package/dist/elements/provider/ApiContainer/declaration.mjs +1 -1
- package/dist/elements/provider/ApiContainer/helpers/loadingSlot.d.ts +6 -0
- package/dist/elements/provider/ApiContainer/helpers/loadingSlot.mjs +8 -0
- package/dist/elements/provider/ApiContainer/index.d.ts +1 -1
- package/dist/elements/provider/Channel/declaration.d.ts +1 -1
- package/dist/elements/provider/Channel/declaration.mjs +1 -1
- package/dist/elements/provider/Channel/index.d.ts +1 -1
- package/dist/elements/settings.mjs +40 -32
- package/dist/elements/structure/Carousel/Carousel.d.ts +32 -0
- package/dist/elements/structure/Carousel/Carousel.mjs +183 -0
- package/dist/elements/structure/Carousel/CarouselContext.d.ts +29 -0
- package/dist/elements/structure/Carousel/CarouselContext.mjs +6 -0
- package/dist/elements/structure/Carousel/CarouselTrack/CarouselTrack.d.ts +15 -0
- package/dist/elements/structure/Carousel/CarouselTrack/CarouselTrack.mjs +51 -0
- package/dist/elements/structure/Carousel/CarouselTrack/Settings.d.ts +2 -0
- package/dist/elements/structure/Carousel/CarouselTrack/Settings.mjs +8 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/CarouselSlide/CarouselSlide.d.ts +15 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/CarouselSlide/CarouselSlide.mjs +28 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/CarouselSlide/index.d.ts +2 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/CarouselSlide/index.mjs +2 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/MarqueeTrack/MarqueeTrack.d.ts +18 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/MarqueeTrack/MarqueeTrack.mjs +41 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/MarqueeTrack/index.d.ts +2 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/MarqueeTrack/index.mjs +2 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/ScrollTrack/ScrollTrack.d.ts +12 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/ScrollTrack/ScrollTrack.mjs +27 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/ScrollTrack/index.d.ts +2 -0
- package/dist/elements/structure/Carousel/CarouselTrack/components/ScrollTrack/index.mjs +2 -0
- package/dist/elements/structure/Carousel/CarouselTrack/declaration.d.ts +53 -0
- package/dist/elements/structure/Carousel/CarouselTrack/declaration.mjs +44 -0
- package/dist/elements/structure/Carousel/CarouselTrack/index.d.ts +52 -0
- package/dist/elements/structure/Carousel/CarouselTrack/index.mjs +6 -0
- package/dist/elements/structure/Carousel/Settings.d.ts +14 -0
- package/dist/elements/structure/Carousel/Settings.mjs +97 -0
- package/dist/elements/structure/Carousel/carouselIndex.d.ts +13 -0
- package/dist/elements/structure/Carousel/carouselIndex.mjs +16 -0
- package/dist/elements/structure/Carousel/declaration.d.ts +131 -0
- package/dist/elements/structure/Carousel/declaration.mjs +106 -0
- package/dist/elements/structure/Carousel/index.d.ts +184 -0
- package/dist/elements/structure/Carousel/index.mjs +10 -0
- package/dist/elements/structure/Carousel/useAutoplay.d.ts +18 -0
- package/dist/elements/structure/Carousel/useAutoplay.mjs +34 -0
- package/dist/elements/structure/Container/Container.d.ts +1 -1
- package/dist/elements/structure/Container/Settings.d.ts +1 -1
- package/dist/elements/structure/Container/Settings.mjs +4 -0
- package/dist/elements/structure/Container/declaration.d.ts +2 -2
- package/dist/elements/structure/Container/declaration.mjs +3 -2
- package/dist/elements/structure/Container/index.d.ts +2 -2
- package/dist/elements/structure/DialogContainer/declaration.d.ts +1 -1
- package/dist/elements/structure/DialogContainer/declaration.mjs +1 -1
- package/dist/elements/structure/DialogContainer/index.d.ts +1 -1
- package/dist/elements/structure/List/List.d.ts +6 -1
- package/dist/elements/structure/List/List.mjs +2 -1
- package/dist/elements/structure/List/ListItem/declaration.d.ts +1 -1
- package/dist/elements/structure/List/ListItem/declaration.mjs +1 -1
- package/dist/elements/structure/List/ListItem/index.d.ts +1 -1
- package/dist/elements/structure/List/Settings.d.ts +2 -1
- package/dist/elements/structure/List/Settings.mjs +41 -29
- package/dist/elements/structure/List/declaration.d.ts +2 -1
- package/dist/elements/structure/List/declaration.mjs +1 -1
- package/dist/elements/structure/List/index.d.ts +3 -2
- package/dist/elements/structure/List/modes/ListControlled/ListControlled.d.ts +2 -1
- package/dist/elements/structure/List/modes/ListControlled/ListControlled.mjs +33 -35
- package/dist/elements/structure/List/modes/ListControlled/ListControlledItem.mjs +1 -1
- package/dist/elements/structure/List/modes/ListControlled/rowKeys.d.ts +10 -0
- package/dist/elements/structure/List/modes/ListControlled/rowKeys.mjs +11 -0
- package/dist/elements/structure/ModalContainer/declaration.d.ts +1 -1
- package/dist/elements/structure/ModalContainer/declaration.mjs +1 -1
- package/dist/elements/structure/ModalContainer/index.d.ts +1 -1
- package/dist/elements/structure/ModalContainer/metadataFromText.d.ts +6 -0
- package/dist/elements/structure/ModalContainer/metadataFromText.mjs +2 -1
- package/dist/elements/structure/Pagination/declaration.d.ts +1 -1
- package/dist/elements/structure/Pagination/declaration.mjs +1 -1
- package/dist/elements/structure/Pagination/index.d.ts +1 -1
- package/dist/elements/structure/TabContainer/TabContainerBody/declaration.d.ts +1 -1
- package/dist/elements/structure/TabContainer/TabContainerBody/declaration.mjs +1 -1
- package/dist/elements/structure/TabContainer/TabContainerBody/index.d.ts +1 -1
- package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.d.ts +1 -1
- package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.mjs +1 -1
- package/dist/elements/structure/TabContainer/TabContainerHeader/index.d.ts +1 -1
- package/dist/elements/structure/TabContainer/TabContainerItem/declaration.d.ts +1 -1
- package/dist/elements/structure/TabContainer/TabContainerItem/declaration.mjs +1 -1
- package/dist/elements/structure/TabContainer/TabContainerItem/index.d.ts +1 -1
- package/dist/elements/structure/TabContainer/declaration.d.ts +1 -1
- package/dist/elements/structure/TabContainer/declaration.mjs +1 -1
- package/dist/elements/structure/TabContainer/index.d.ts +4 -4
- package/dist/index.d.ts +373 -39
- package/dist/index.mjs +34 -27
- package/package.json +200 -12
|
@@ -1,77 +1,97 @@
|
|
|
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
|
|
5
|
-
import i from "
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
9
|
-
import c from "
|
|
10
|
-
import {
|
|
4
|
+
import r from "../../../Element/ElementWords.mjs";
|
|
5
|
+
import { isCurrentPage as i } from "./isCurrentPage.mjs";
|
|
6
|
+
import { useMemo as a } from "react";
|
|
7
|
+
import o from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
|
|
8
|
+
import { useSdkStore as s } from "@plitzi/sdk-shared/store";
|
|
9
|
+
import { processTwig as c } from "@plitzi/sdk-shared/helpers/twigWrapper";
|
|
10
|
+
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
11
|
+
import d from "clsx";
|
|
12
|
+
import { getPageFullPath as f } from "@plitzi/sdk-navigation/NavigationHelper";
|
|
11
13
|
//#region src/elements/basic/Link/Link.tsx
|
|
12
|
-
var
|
|
13
|
-
let { style:
|
|
14
|
+
var p = ({ ref: e, children: p, className: m = "", href: h = "#", target: g = "self", mode: _ = "page", hash: v = "", label: y = "", content: b = "", contentPlacement: x = "after", icon: S = "", iconPlacement: C = "before" }) => {
|
|
15
|
+
let { style: w, definition: { styleSelectors: T } } = t(), { settings: { previewMode: E } } = o(), [[D, O, k, A, j, M]] = s([
|
|
14
16
|
"pageDefinitions",
|
|
15
17
|
"schema.pageFolders",
|
|
16
18
|
"navigation.routeParams",
|
|
17
19
|
"navigation.queryParams",
|
|
18
|
-
"navigation.navigate"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
if (
|
|
22
|
-
|
|
20
|
+
"navigation.navigate",
|
|
21
|
+
"navigation.href"
|
|
22
|
+
]), N = a(() => {
|
|
23
|
+
if (_ === "external") return h;
|
|
24
|
+
if (_ === "internal") {
|
|
25
|
+
let e = `/${h}`.replaceAll(/[/]+/gim, "/");
|
|
23
26
|
try {
|
|
24
|
-
let t =
|
|
25
|
-
...
|
|
26
|
-
...
|
|
27
|
+
let t = c(e, {
|
|
28
|
+
...A,
|
|
29
|
+
...k
|
|
27
30
|
}, !0);
|
|
28
31
|
return typeof t == "string" ? t : e;
|
|
29
32
|
} catch {}
|
|
30
33
|
return e;
|
|
31
34
|
}
|
|
32
|
-
return
|
|
35
|
+
return f(D, O, h, !0);
|
|
33
36
|
}, [
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
]),
|
|
41
|
-
if (!
|
|
37
|
+
_,
|
|
38
|
+
h,
|
|
39
|
+
D,
|
|
40
|
+
O,
|
|
41
|
+
A,
|
|
42
|
+
k
|
|
43
|
+
]), P = _ !== "external" && v ? `${N}#${v}` : N, F = _ !== "external" && i(N, M), I = (e) => {
|
|
44
|
+
if (!E) return;
|
|
42
45
|
e.stopPropagation();
|
|
43
|
-
let t =
|
|
44
|
-
(
|
|
45
|
-
},
|
|
46
|
+
let t = g !== "self" || e.metaKey || e.ctrlKey || e.shiftKey || e.altKey || e.button !== 0;
|
|
47
|
+
(_ === "page" || _ === "internal") && !t && (e.preventDefault(), j(P));
|
|
48
|
+
}, L = a(() => {
|
|
46
49
|
let t = {
|
|
47
50
|
ref: e,
|
|
48
|
-
style:
|
|
49
|
-
target: `_${
|
|
50
|
-
"
|
|
51
|
-
|
|
51
|
+
style: w,
|
|
52
|
+
target: `_${g}`,
|
|
53
|
+
...g === "blank" ? { rel: "noopener noreferrer" } : {},
|
|
54
|
+
"aria-label": y || void 0,
|
|
55
|
+
"aria-current": F ? "page" : void 0,
|
|
56
|
+
className: d("plitzi-component__link", m)
|
|
52
57
|
};
|
|
53
|
-
return
|
|
58
|
+
return E ? {
|
|
54
59
|
...t,
|
|
55
|
-
href:
|
|
60
|
+
href: P
|
|
56
61
|
} : {
|
|
57
62
|
...t,
|
|
58
|
-
"href-disabled":
|
|
63
|
+
"href-disabled": P
|
|
59
64
|
};
|
|
60
65
|
}, [
|
|
61
66
|
e,
|
|
67
|
+
w,
|
|
62
68
|
g,
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
69
|
+
y,
|
|
70
|
+
F,
|
|
71
|
+
m,
|
|
72
|
+
E,
|
|
73
|
+
P
|
|
68
74
|
]);
|
|
69
|
-
return /* @__PURE__ */
|
|
75
|
+
return /* @__PURE__ */ u(n, {
|
|
70
76
|
tag: "a",
|
|
71
|
-
...
|
|
72
|
-
onClick:
|
|
73
|
-
children:
|
|
77
|
+
...L,
|
|
78
|
+
onClick: I,
|
|
79
|
+
children: [
|
|
80
|
+
x === "before" && /* @__PURE__ */ l(r, {
|
|
81
|
+
content: b,
|
|
82
|
+
icon: S,
|
|
83
|
+
iconPlacement: C,
|
|
84
|
+
iconClassName: T.icon
|
|
85
|
+
}),
|
|
86
|
+
p,
|
|
87
|
+
x === "after" && /* @__PURE__ */ l(r, {
|
|
88
|
+
content: b,
|
|
89
|
+
icon: S,
|
|
90
|
+
iconPlacement: C,
|
|
91
|
+
iconClassName: T.icon
|
|
92
|
+
})
|
|
93
|
+
]
|
|
74
94
|
});
|
|
75
|
-
},
|
|
95
|
+
}, m = e(p);
|
|
76
96
|
//#endregion
|
|
77
|
-
export {
|
|
97
|
+
export { p as Link, m as default };
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
type SettingsProps = {
|
|
2
2
|
mode?: 'page' | 'internal' | 'external';
|
|
3
3
|
href?: string;
|
|
4
|
+
hash?: string;
|
|
4
5
|
target?: 'blank' | 'self' | 'parent' | 'top';
|
|
5
6
|
label?: string;
|
|
7
|
+
content?: string;
|
|
8
|
+
contentPlacement?: 'before' | 'after';
|
|
9
|
+
icon?: string;
|
|
10
|
+
iconPlacement?: 'before' | 'after';
|
|
6
11
|
onUpdate?: (key: string, value: string | boolean | number) => void;
|
|
7
12
|
};
|
|
8
|
-
declare const Settings: ({ mode, href, target, label, onUpdate }: SettingsProps) => import('react').JSX.Element;
|
|
13
|
+
declare const Settings: ({ mode, href, hash, target, label, content, contentPlacement, icon, iconPlacement, onUpdate }: SettingsProps) => import('react').JSX.Element;
|
|
9
14
|
export default Settings;
|
|
@@ -1,136 +1,169 @@
|
|
|
1
|
-
import
|
|
2
|
-
import i from "
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import d from "@plitzi/
|
|
8
|
-
import f from "@plitzi/plitzi-ui/
|
|
1
|
+
import e from "../../../components/IconField/IconField.mjs";
|
|
2
|
+
import { use as t, useCallback as n, useEffect as r, useMemo as i } from "react";
|
|
3
|
+
import a from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
|
|
4
|
+
import { useCommonStore as o } from "@plitzi/sdk-shared/store";
|
|
5
|
+
import { get as s, pick as c } from "@plitzi/plitzi-ui/helpers";
|
|
6
|
+
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
7
|
+
import { getPageFullPath as d } from "@plitzi/sdk-navigation/NavigationHelper";
|
|
8
|
+
import f from "@plitzi/plitzi-ui/Input";
|
|
9
|
+
import p from "@plitzi/plitzi-ui/Select";
|
|
9
10
|
//#region src/elements/basic/Link/Settings.tsx
|
|
10
|
-
var
|
|
11
|
-
let { contexts: { NetworkContext:
|
|
11
|
+
var m = ({ mode: m = "page", href: h = "#", hash: g = "", target: _ = "self", label: v = "", content: y = "", contentPlacement: b = "after", icon: x = "", iconPlacement: S = "before", onUpdate: C }) => {
|
|
12
|
+
let { contexts: { NetworkContext: w } } = a(), [[T, E, D]] = o([
|
|
12
13
|
"schema.flat",
|
|
13
14
|
"schema.pages",
|
|
14
15
|
"schema.pageFolders"
|
|
15
|
-
]), { server:
|
|
16
|
-
let e =
|
|
16
|
+
]), { server: O } = t(w), k = i(() => s(O, "domain", "https://subdomain.plitzi.app"), [O]), A = i(() => {
|
|
17
|
+
let e = c(T, E);
|
|
17
18
|
return Object.keys(e).reduce((t, n) => {
|
|
18
|
-
let r = e[n], i =
|
|
19
|
+
let r = e[n], i = s(r, "attributes.name", n), a = s(r, "attributes.default", !1);
|
|
19
20
|
return [...t, {
|
|
20
21
|
key: n,
|
|
21
22
|
label: i,
|
|
22
23
|
defaultPage: a
|
|
23
24
|
}];
|
|
24
25
|
}, []);
|
|
25
|
-
}, [
|
|
26
|
-
if (
|
|
27
|
-
|
|
26
|
+
}, [T, E]), j = n((e) => (t) => C?.(e, t), [C]), M = n((e) => C?.("href", e), [C]), N = n((e) => {
|
|
27
|
+
if (C?.("mode", e), e !== "page") {
|
|
28
|
+
C?.("href", "#");
|
|
28
29
|
return;
|
|
29
30
|
}
|
|
30
|
-
let t =
|
|
31
|
-
t &&
|
|
32
|
-
}, [
|
|
33
|
-
|
|
34
|
-
if (
|
|
35
|
-
let e =
|
|
36
|
-
e &&
|
|
31
|
+
let t = A.find((e) => e.defaultPage);
|
|
32
|
+
t && C?.("href", t.key);
|
|
33
|
+
}, [C, A]);
|
|
34
|
+
r(() => {
|
|
35
|
+
if (m === "page" && h === "#") {
|
|
36
|
+
let e = A.find((e) => e.defaultPage);
|
|
37
|
+
e && C?.("href", e.key);
|
|
37
38
|
}
|
|
38
39
|
}, [
|
|
39
|
-
p,
|
|
40
40
|
m,
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
h,
|
|
42
|
+
A,
|
|
43
|
+
C
|
|
43
44
|
]);
|
|
44
|
-
let
|
|
45
|
-
p,
|
|
46
|
-
y,
|
|
47
|
-
x,
|
|
45
|
+
let P = i(() => m === "page" ? `${k}${d(T, D, h, !0)}` : h.replaceAll(/[/]+/gim, "/"), [
|
|
48
46
|
m,
|
|
49
|
-
|
|
47
|
+
T,
|
|
48
|
+
D,
|
|
49
|
+
h,
|
|
50
|
+
k
|
|
50
51
|
]);
|
|
51
|
-
return /* @__PURE__ */
|
|
52
|
+
return /* @__PURE__ */ u("div", {
|
|
52
53
|
className: "flex h-full flex-col gap-4 py-2",
|
|
53
54
|
children: [
|
|
54
55
|
/* @__PURE__ */ l(f, {
|
|
55
|
-
value:
|
|
56
|
+
value: y,
|
|
57
|
+
label: "Content",
|
|
58
|
+
placeholder: "The link's words, without a text inside it",
|
|
59
|
+
onChange: j("content"),
|
|
60
|
+
size: "sm"
|
|
61
|
+
}),
|
|
62
|
+
/* @__PURE__ */ u(p, {
|
|
63
|
+
value: b,
|
|
64
|
+
label: "Content Placement",
|
|
65
|
+
onChange: j("contentPlacement"),
|
|
66
|
+
size: "sm",
|
|
67
|
+
children: [/* @__PURE__ */ l("option", {
|
|
68
|
+
value: "before",
|
|
69
|
+
children: "Before Elements"
|
|
70
|
+
}), /* @__PURE__ */ l("option", {
|
|
71
|
+
value: "after",
|
|
72
|
+
children: "After Elements"
|
|
73
|
+
})]
|
|
74
|
+
}),
|
|
75
|
+
/* @__PURE__ */ u(p, {
|
|
76
|
+
value: _,
|
|
56
77
|
label: "Target",
|
|
57
|
-
onChange:
|
|
78
|
+
onChange: j("target"),
|
|
58
79
|
size: "sm",
|
|
59
80
|
children: [
|
|
60
|
-
/* @__PURE__ */
|
|
81
|
+
/* @__PURE__ */ l("option", {
|
|
61
82
|
value: "blank",
|
|
62
83
|
children: "Blank"
|
|
63
84
|
}),
|
|
64
|
-
/* @__PURE__ */
|
|
85
|
+
/* @__PURE__ */ l("option", {
|
|
65
86
|
value: "self",
|
|
66
87
|
children: "Self"
|
|
67
88
|
}),
|
|
68
|
-
/* @__PURE__ */
|
|
89
|
+
/* @__PURE__ */ l("option", {
|
|
69
90
|
value: "parent",
|
|
70
91
|
children: "Parent"
|
|
71
92
|
}),
|
|
72
|
-
/* @__PURE__ */
|
|
93
|
+
/* @__PURE__ */ l("option", {
|
|
73
94
|
value: "top",
|
|
74
95
|
children: "Top"
|
|
75
96
|
})
|
|
76
97
|
]
|
|
77
98
|
}),
|
|
78
|
-
/* @__PURE__ */
|
|
79
|
-
value:
|
|
99
|
+
/* @__PURE__ */ u(p, {
|
|
100
|
+
value: m,
|
|
80
101
|
label: "Mode",
|
|
81
|
-
onChange:
|
|
102
|
+
onChange: N,
|
|
82
103
|
size: "sm",
|
|
83
104
|
children: [
|
|
84
|
-
/* @__PURE__ */
|
|
105
|
+
/* @__PURE__ */ l("option", {
|
|
85
106
|
value: "page",
|
|
86
107
|
children: "Space Page"
|
|
87
108
|
}),
|
|
88
|
-
/* @__PURE__ */
|
|
109
|
+
/* @__PURE__ */ l("option", {
|
|
89
110
|
value: "internal",
|
|
90
111
|
children: "Inside Space"
|
|
91
112
|
}),
|
|
92
|
-
/* @__PURE__ */
|
|
113
|
+
/* @__PURE__ */ l("option", {
|
|
93
114
|
value: "external",
|
|
94
115
|
children: "Outside Space"
|
|
95
116
|
})
|
|
96
117
|
]
|
|
97
118
|
}),
|
|
98
|
-
|
|
99
|
-
value:
|
|
119
|
+
m !== "page" && /* @__PURE__ */ l(f, {
|
|
120
|
+
value: h,
|
|
100
121
|
label: "Url",
|
|
101
|
-
onChange:
|
|
122
|
+
onChange: M,
|
|
102
123
|
size: "sm"
|
|
103
124
|
}),
|
|
104
|
-
|
|
125
|
+
m === "page" && /* @__PURE__ */ u("div", {
|
|
105
126
|
className: "flex flex-col",
|
|
106
|
-
children: [/* @__PURE__ */
|
|
107
|
-
value:
|
|
127
|
+
children: [/* @__PURE__ */ u(p, {
|
|
128
|
+
value: h,
|
|
108
129
|
label: "Url",
|
|
109
|
-
onChange:
|
|
130
|
+
onChange: M,
|
|
110
131
|
className: { inputContainer: "rounded-t" },
|
|
111
132
|
size: "sm",
|
|
112
|
-
children: [/* @__PURE__ */
|
|
133
|
+
children: [/* @__PURE__ */ l("option", {
|
|
113
134
|
value: "",
|
|
114
135
|
disabled: !0,
|
|
115
136
|
children: "Select a page"
|
|
116
|
-
}),
|
|
137
|
+
}), A.map((e) => /* @__PURE__ */ l("option", {
|
|
117
138
|
value: e.key,
|
|
118
139
|
children: e.label
|
|
119
140
|
}, e.key))]
|
|
120
|
-
}), /* @__PURE__ */
|
|
141
|
+
}), /* @__PURE__ */ l("div", {
|
|
121
142
|
className: "truncate rounded-b border-r border-b border-l border-gray-200 p-1 text-xs",
|
|
122
|
-
children:
|
|
143
|
+
children: P
|
|
123
144
|
})]
|
|
124
145
|
}),
|
|
125
|
-
/* @__PURE__ */
|
|
146
|
+
m !== "external" && /* @__PURE__ */ l(f, {
|
|
126
147
|
value: g,
|
|
148
|
+
label: "Section",
|
|
149
|
+
placeholder: "An element's anchor, without the #",
|
|
150
|
+
onChange: j("hash"),
|
|
151
|
+
size: "sm"
|
|
152
|
+
}),
|
|
153
|
+
/* @__PURE__ */ l(f, {
|
|
154
|
+
value: v,
|
|
127
155
|
label: "Accessible Name",
|
|
128
156
|
placeholder: "For a link that wraps a whole card",
|
|
129
|
-
onChange:
|
|
157
|
+
onChange: j("label"),
|
|
130
158
|
size: "sm"
|
|
159
|
+
}),
|
|
160
|
+
/* @__PURE__ */ l(e, {
|
|
161
|
+
icon: x,
|
|
162
|
+
iconPlacement: S,
|
|
163
|
+
onUpdate: C
|
|
131
164
|
})
|
|
132
165
|
]
|
|
133
166
|
});
|
|
134
167
|
};
|
|
135
168
|
//#endregion
|
|
136
|
-
export {
|
|
169
|
+
export { m as default };
|
|
@@ -7,13 +7,20 @@ declare const declaration: {
|
|
|
7
7
|
readonly attributeValues: {
|
|
8
8
|
readonly mode: readonly string[];
|
|
9
9
|
readonly target: readonly string[];
|
|
10
|
+
readonly contentPlacement: readonly string[];
|
|
11
|
+
readonly iconPlacement: readonly string[];
|
|
10
12
|
};
|
|
11
13
|
readonly content: {
|
|
12
14
|
readonly attributes: {
|
|
13
15
|
readonly href: "#";
|
|
14
16
|
readonly target: "self";
|
|
15
17
|
readonly mode: "page";
|
|
18
|
+
readonly hash: "";
|
|
16
19
|
readonly label: "";
|
|
20
|
+
readonly content: "";
|
|
21
|
+
readonly contentPlacement: "after";
|
|
22
|
+
readonly icon: "";
|
|
23
|
+
readonly iconPlacement: "before";
|
|
17
24
|
};
|
|
18
25
|
readonly definition: {
|
|
19
26
|
readonly label: "Link";
|
|
@@ -23,6 +30,7 @@ declare const declaration: {
|
|
|
23
30
|
readonly bindings: {};
|
|
24
31
|
readonly styleSelectors: {
|
|
25
32
|
readonly base: "";
|
|
33
|
+
readonly icon: "";
|
|
26
34
|
};
|
|
27
35
|
readonly initialState: {
|
|
28
36
|
readonly visibility: true;
|
|
@@ -33,7 +41,7 @@ declare const declaration: {
|
|
|
33
41
|
readonly canSelect: true;
|
|
34
42
|
readonly canDragDrop: true;
|
|
35
43
|
readonly canMove: true;
|
|
36
|
-
readonly
|
|
44
|
+
readonly canSnippet: true;
|
|
37
45
|
readonly itemsAllowed: readonly [];
|
|
38
46
|
readonly itemsNotAllowed: readonly ["link"];
|
|
39
47
|
};
|
|
@@ -66,5 +74,10 @@ declare const declaration: {
|
|
|
66
74
|
href?: string | undefined;
|
|
67
75
|
label?: string | undefined;
|
|
68
76
|
target?: "self" | "blank" | "parent" | "top" | undefined;
|
|
77
|
+
content?: string | undefined;
|
|
78
|
+
icon?: string | undefined;
|
|
79
|
+
iconPlacement?: import('../../../Element/ElementWords').IconPlacement | undefined;
|
|
80
|
+
contentPlacement?: "before" | "after" | undefined;
|
|
81
|
+
hash?: string | undefined;
|
|
69
82
|
}>>;
|
|
70
83
|
export default declaration;
|
|
@@ -13,22 +13,32 @@ var n = e()({
|
|
|
13
13
|
"blank",
|
|
14
14
|
"parent",
|
|
15
15
|
"top"
|
|
16
|
-
])
|
|
16
|
+
]),
|
|
17
|
+
contentPlacement: t()(["before", "after"]),
|
|
18
|
+
iconPlacement: t()(["before", "after"])
|
|
17
19
|
},
|
|
18
20
|
content: {
|
|
19
21
|
attributes: {
|
|
20
22
|
href: "#",
|
|
21
23
|
target: "self",
|
|
22
24
|
mode: "page",
|
|
23
|
-
|
|
25
|
+
hash: "",
|
|
26
|
+
label: "",
|
|
27
|
+
content: "",
|
|
28
|
+
contentPlacement: "after",
|
|
29
|
+
icon: "",
|
|
30
|
+
iconPlacement: "before"
|
|
24
31
|
},
|
|
25
32
|
definition: {
|
|
26
33
|
label: "Link",
|
|
27
34
|
type: "link",
|
|
28
|
-
description: "Navigation. Moves the user between pages of the site or to an external URL (its `mode`/`href` decide which). Use this to go page-to-page rather than a button + interaction.",
|
|
35
|
+
description: "Navigation. Moves the user between pages of the site or to an external URL (its `mode`/`href` decide which). Use this to go page-to-page rather than a button + interaction. Its words are its own `content` and an icon beside them its `icon` (Font Awesome classes) — no text or fontAwesome element inside it for them.",
|
|
29
36
|
items: [],
|
|
30
37
|
bindings: {},
|
|
31
|
-
styleSelectors: {
|
|
38
|
+
styleSelectors: {
|
|
39
|
+
base: "",
|
|
40
|
+
icon: ""
|
|
41
|
+
},
|
|
32
42
|
initialState: { visibility: !0 }
|
|
33
43
|
},
|
|
34
44
|
builder: {
|
|
@@ -36,7 +46,7 @@ var n = e()({
|
|
|
36
46
|
canSelect: !0,
|
|
37
47
|
canDragDrop: !0,
|
|
38
48
|
canMove: !0,
|
|
39
|
-
|
|
49
|
+
canSnippet: !0,
|
|
40
50
|
itemsAllowed: [],
|
|
41
51
|
itemsNotAllowed: ["link"]
|
|
42
52
|
},
|
|
@@ -6,13 +6,20 @@ declare const Link: {
|
|
|
6
6
|
readonly attributeValues: {
|
|
7
7
|
readonly mode: readonly string[];
|
|
8
8
|
readonly target: readonly string[];
|
|
9
|
+
readonly contentPlacement: readonly string[];
|
|
10
|
+
readonly iconPlacement: readonly string[];
|
|
9
11
|
};
|
|
10
12
|
readonly content: {
|
|
11
13
|
readonly attributes: {
|
|
12
14
|
readonly href: "#";
|
|
13
15
|
readonly target: "self";
|
|
14
16
|
readonly mode: "page";
|
|
17
|
+
readonly hash: "";
|
|
15
18
|
readonly label: "";
|
|
19
|
+
readonly content: "";
|
|
20
|
+
readonly contentPlacement: "after";
|
|
21
|
+
readonly icon: "";
|
|
22
|
+
readonly iconPlacement: "before";
|
|
16
23
|
};
|
|
17
24
|
readonly definition: {
|
|
18
25
|
readonly label: "Link";
|
|
@@ -22,6 +29,7 @@ declare const Link: {
|
|
|
22
29
|
readonly bindings: {};
|
|
23
30
|
readonly styleSelectors: {
|
|
24
31
|
readonly base: "";
|
|
32
|
+
readonly icon: "";
|
|
25
33
|
};
|
|
26
34
|
readonly initialState: {
|
|
27
35
|
readonly visibility: true;
|
|
@@ -32,7 +40,7 @@ declare const Link: {
|
|
|
32
40
|
readonly canSelect: true;
|
|
33
41
|
readonly canDragDrop: true;
|
|
34
42
|
readonly canMove: true;
|
|
35
|
-
readonly
|
|
43
|
+
readonly canSnippet: true;
|
|
36
44
|
readonly itemsAllowed: readonly [];
|
|
37
45
|
readonly itemsNotAllowed: readonly ["link"];
|
|
38
46
|
};
|
|
@@ -65,5 +73,10 @@ declare const Link: {
|
|
|
65
73
|
href?: string | undefined;
|
|
66
74
|
label?: string | undefined;
|
|
67
75
|
target?: "self" | "blank" | "parent" | "top" | undefined;
|
|
76
|
+
content?: string | undefined;
|
|
77
|
+
icon?: string | undefined;
|
|
78
|
+
iconPlacement?: import('../../../Element/ElementWords').IconPlacement | undefined;
|
|
79
|
+
contentPlacement?: "before" | "after" | undefined;
|
|
80
|
+
hash?: string | undefined;
|
|
68
81
|
}>>;
|
|
69
82
|
export default Link;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether a link's path is the page being shown, given the page's whole address (`navigation.href`). Paths alone: the
|
|
3
|
+
* query and the section (`#plans`) are the same page. Undefined while no address is known — nothing is current then.
|
|
4
|
+
*/
|
|
5
|
+
export declare const isCurrentPage: (path: string, location: string | undefined) => boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
//#region src/elements/basic/Link/isCurrentPage.ts
|
|
2
|
+
var e = (e) => e.length > 1 ? e.replace(/\/+$/, "") : e, t = (t, n) => {
|
|
3
|
+
if (!n || !t.startsWith("/")) return !1;
|
|
4
|
+
try {
|
|
5
|
+
let r = new URL(n).pathname, i = new URL(t, n).pathname;
|
|
6
|
+
return e(decodeURI(r)) === e(decodeURI(i));
|
|
7
|
+
} catch {
|
|
8
|
+
return !1;
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
//#endregion
|
|
12
|
+
export { t as isCurrentPage };
|
|
@@ -25,7 +25,7 @@ declare const declaration: {
|
|
|
25
25
|
readonly canSelect: true;
|
|
26
26
|
readonly canDragDrop: true;
|
|
27
27
|
readonly canMove: true;
|
|
28
|
-
readonly
|
|
28
|
+
readonly canSnippet: true;
|
|
29
29
|
readonly itemsAllowed: readonly [];
|
|
30
30
|
readonly itemsNotAllowed: readonly [];
|
|
31
31
|
};
|
|
@@ -24,7 +24,7 @@ declare const Markdown: {
|
|
|
24
24
|
readonly canSelect: true;
|
|
25
25
|
readonly canDragDrop: true;
|
|
26
26
|
readonly canMove: true;
|
|
27
|
-
readonly
|
|
27
|
+
readonly canSnippet: true;
|
|
28
28
|
readonly itemsAllowed: readonly [];
|
|
29
29
|
readonly itemsNotAllowed: readonly [];
|
|
30
30
|
};
|
|
@@ -25,7 +25,7 @@ declare const declaration: {
|
|
|
25
25
|
readonly canSelect: true;
|
|
26
26
|
readonly canDragDrop: true;
|
|
27
27
|
readonly canMove: true;
|
|
28
|
-
readonly
|
|
28
|
+
readonly canSnippet: true;
|
|
29
29
|
readonly itemsAllowed: readonly [];
|
|
30
30
|
readonly itemsNotAllowed: readonly [];
|
|
31
31
|
};
|
|
@@ -24,7 +24,7 @@ declare const Paragraph: {
|
|
|
24
24
|
readonly canSelect: true;
|
|
25
25
|
readonly canDragDrop: true;
|
|
26
26
|
readonly canMove: true;
|
|
27
|
-
readonly
|
|
27
|
+
readonly canSnippet: true;
|
|
28
28
|
readonly itemsAllowed: readonly [];
|
|
29
29
|
readonly itemsNotAllowed: readonly [];
|
|
30
30
|
};
|
|
@@ -31,7 +31,7 @@ declare const declaration: {
|
|
|
31
31
|
readonly canSelect: true;
|
|
32
32
|
readonly canDragDrop: true;
|
|
33
33
|
readonly canMove: true;
|
|
34
|
-
readonly
|
|
34
|
+
readonly canSnippet: true;
|
|
35
35
|
readonly itemsAllowed: readonly [];
|
|
36
36
|
readonly itemsNotAllowed: readonly [];
|
|
37
37
|
};
|
|
@@ -30,7 +30,7 @@ declare const RichText: {
|
|
|
30
30
|
readonly canSelect: true;
|
|
31
31
|
readonly canDragDrop: true;
|
|
32
32
|
readonly canMove: true;
|
|
33
|
-
readonly
|
|
33
|
+
readonly canSnippet: true;
|
|
34
34
|
readonly itemsAllowed: readonly [];
|
|
35
35
|
readonly itemsNotAllowed: readonly [];
|
|
36
36
|
};
|
|
@@ -25,7 +25,7 @@ declare const declaration: {
|
|
|
25
25
|
readonly canSelect: true;
|
|
26
26
|
readonly canDragDrop: true;
|
|
27
27
|
readonly canMove: true;
|
|
28
|
-
readonly
|
|
28
|
+
readonly canSnippet: true;
|
|
29
29
|
readonly itemsAllowed: readonly [];
|
|
30
30
|
readonly itemsNotAllowed: readonly [];
|
|
31
31
|
};
|