@acoustte-digital-services/digitalstore-controls-dev 0.8.1-dev.20260427052110 → 0.8.1-dev.20260428094243
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/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +813 -603
- package/dist/index.mjs +678 -468
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -277,15 +277,15 @@ var HlsPlayer_exports = {};
|
|
|
277
277
|
__export(HlsPlayer_exports, {
|
|
278
278
|
default: () => HlsPlayer_default
|
|
279
279
|
});
|
|
280
|
-
var
|
|
280
|
+
var import_react32, import_hls, import_jsx_runtime41, HlsPlayer, HlsPlayer_default;
|
|
281
281
|
var init_HlsPlayer = __esm({
|
|
282
282
|
"src/components/HlsPlayer.tsx"() {
|
|
283
283
|
"use strict";
|
|
284
284
|
"use client";
|
|
285
|
-
|
|
285
|
+
import_react32 = __toESM(require("react"));
|
|
286
286
|
import_hls = __toESM(require("hls.js"));
|
|
287
|
-
|
|
288
|
-
HlsPlayer =
|
|
287
|
+
import_jsx_runtime41 = require("react/jsx-runtime");
|
|
288
|
+
HlsPlayer = import_react32.default.memo(
|
|
289
289
|
({
|
|
290
290
|
sources,
|
|
291
291
|
assetUrl,
|
|
@@ -297,18 +297,18 @@ var init_HlsPlayer = __esm({
|
|
|
297
297
|
playOptions = "autoplay",
|
|
298
298
|
placementCode = ""
|
|
299
299
|
}) => {
|
|
300
|
-
const videoRef = (0,
|
|
301
|
-
const hlsRef = (0,
|
|
302
|
-
const [isPlaying, setIsPlaying] = (0,
|
|
303
|
-
const [isHovered, setIsHovered] = (0,
|
|
304
|
-
const [isMobile, setIsMobile] = (0,
|
|
305
|
-
const [isControlsVisible, setIsControlsVisible] = (0,
|
|
306
|
-
const [isPosterVisible, setIsPosterVisible] = (0,
|
|
307
|
-
const wasManuallyPausedRef = (0,
|
|
308
|
-
const inactivityTimerRef = (0,
|
|
300
|
+
const videoRef = (0, import_react32.useRef)(null);
|
|
301
|
+
const hlsRef = (0, import_react32.useRef)(null);
|
|
302
|
+
const [isPlaying, setIsPlaying] = (0, import_react32.useState)(playOptions === "autoplay");
|
|
303
|
+
const [isHovered, setIsHovered] = (0, import_react32.useState)(false);
|
|
304
|
+
const [isMobile, setIsMobile] = (0, import_react32.useState)(false);
|
|
305
|
+
const [isControlsVisible, setIsControlsVisible] = (0, import_react32.useState)(true);
|
|
306
|
+
const [isPosterVisible, setIsPosterVisible] = (0, import_react32.useState)(true);
|
|
307
|
+
const wasManuallyPausedRef = (0, import_react32.useRef)(false);
|
|
308
|
+
const inactivityTimerRef = (0, import_react32.useRef)(null);
|
|
309
309
|
const INACTIVITY_DELAY = 2500;
|
|
310
310
|
const resolvedSources = sources && sources.length > 0 ? sources : assetUrl ? [{ src: assetUrl, posterUrl }] : [];
|
|
311
|
-
(0,
|
|
311
|
+
(0, import_react32.useEffect)(() => {
|
|
312
312
|
const checkMobile = () => {
|
|
313
313
|
const hasTouch = "ontouchstart" in window || navigator.maxTouchPoints > 0;
|
|
314
314
|
const isSmallScreen = window.innerWidth <= 768;
|
|
@@ -321,7 +321,7 @@ var init_HlsPlayer = __esm({
|
|
|
321
321
|
window.addEventListener("resize", checkMobile);
|
|
322
322
|
return () => window.removeEventListener("resize", checkMobile);
|
|
323
323
|
}, []);
|
|
324
|
-
(0,
|
|
324
|
+
(0, import_react32.useEffect)(() => {
|
|
325
325
|
const v = videoRef.current;
|
|
326
326
|
if (!v) return;
|
|
327
327
|
const onPlaying = () => setIsPosterVisible(false);
|
|
@@ -335,7 +335,7 @@ var init_HlsPlayer = __esm({
|
|
|
335
335
|
v.removeEventListener("pause", onPause);
|
|
336
336
|
};
|
|
337
337
|
}, []);
|
|
338
|
-
const resetInactivityTimer = (0,
|
|
338
|
+
const resetInactivityTimer = (0, import_react32.useCallback)(() => {
|
|
339
339
|
setIsControlsVisible(true);
|
|
340
340
|
if (inactivityTimerRef.current) clearTimeout(inactivityTimerRef.current);
|
|
341
341
|
if (isPlaying) {
|
|
@@ -345,18 +345,18 @@ var init_HlsPlayer = __esm({
|
|
|
345
345
|
);
|
|
346
346
|
}
|
|
347
347
|
}, [isPlaying]);
|
|
348
|
-
(0,
|
|
348
|
+
(0, import_react32.useEffect)(() => {
|
|
349
349
|
if (!isPlaying) {
|
|
350
350
|
if (inactivityTimerRef.current) clearTimeout(inactivityTimerRef.current);
|
|
351
351
|
setIsControlsVisible(true);
|
|
352
352
|
}
|
|
353
353
|
}, [isPlaying]);
|
|
354
|
-
(0,
|
|
354
|
+
(0, import_react32.useEffect)(() => {
|
|
355
355
|
return () => {
|
|
356
356
|
if (inactivityTimerRef.current) clearTimeout(inactivityTimerRef.current);
|
|
357
357
|
};
|
|
358
358
|
}, []);
|
|
359
|
-
(0,
|
|
359
|
+
(0, import_react32.useEffect)(() => {
|
|
360
360
|
const v = videoRef.current;
|
|
361
361
|
if (!v || resolvedSources.length === 0) return;
|
|
362
362
|
if (hlsRef.current) {
|
|
@@ -388,7 +388,7 @@ var init_HlsPlayer = __esm({
|
|
|
388
388
|
v.load();
|
|
389
389
|
}
|
|
390
390
|
}, [JSON.stringify(resolvedSources)]);
|
|
391
|
-
const handlePlayPause = (0,
|
|
391
|
+
const handlePlayPause = (0, import_react32.useCallback)(() => {
|
|
392
392
|
const v = videoRef.current;
|
|
393
393
|
if (!v) return;
|
|
394
394
|
if (v.paused) {
|
|
@@ -400,7 +400,7 @@ var init_HlsPlayer = __esm({
|
|
|
400
400
|
setIsPlaying(false);
|
|
401
401
|
}
|
|
402
402
|
}, []);
|
|
403
|
-
const handleMouseEnter = (0,
|
|
403
|
+
const handleMouseEnter = (0, import_react32.useCallback)(() => {
|
|
404
404
|
if (isMobile) return;
|
|
405
405
|
setIsHovered(true);
|
|
406
406
|
resetInactivityTimer();
|
|
@@ -408,7 +408,7 @@ var init_HlsPlayer = __esm({
|
|
|
408
408
|
videoRef.current.play().then(() => setIsPlaying(true));
|
|
409
409
|
}
|
|
410
410
|
}, [playOptions, isMobile, resetInactivityTimer]);
|
|
411
|
-
const handleMouseLeave = (0,
|
|
411
|
+
const handleMouseLeave = (0, import_react32.useCallback)(() => {
|
|
412
412
|
if (isMobile) return;
|
|
413
413
|
setIsHovered(false);
|
|
414
414
|
if (inactivityTimerRef.current) clearTimeout(inactivityTimerRef.current);
|
|
@@ -419,7 +419,7 @@ var init_HlsPlayer = __esm({
|
|
|
419
419
|
setIsPlaying(false);
|
|
420
420
|
}
|
|
421
421
|
}, [playOptions, isMobile, isPlaying]);
|
|
422
|
-
const handleMouseMove = (0,
|
|
422
|
+
const handleMouseMove = (0, import_react32.useCallback)(() => {
|
|
423
423
|
if (isMobile) return;
|
|
424
424
|
resetInactivityTimer();
|
|
425
425
|
}, [isMobile, resetInactivityTimer]);
|
|
@@ -427,7 +427,7 @@ var init_HlsPlayer = __esm({
|
|
|
427
427
|
const fallbackPoster = posterUrl ?? resolvedSources.find((s) => !s.media)?.posterUrl ?? resolvedSources[0]?.posterUrl;
|
|
428
428
|
const isPlayOnHover = playOptions === "playOnHover";
|
|
429
429
|
if (resolvedSources.length === 0) return null;
|
|
430
|
-
return /* @__PURE__ */ (0,
|
|
430
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
|
|
431
431
|
"div",
|
|
432
432
|
{
|
|
433
433
|
className: "relative w-full aspect-video bg-black",
|
|
@@ -435,7 +435,7 @@ var init_HlsPlayer = __esm({
|
|
|
435
435
|
onMouseLeave: handleMouseLeave,
|
|
436
436
|
onMouseMove: handleMouseMove,
|
|
437
437
|
children: [
|
|
438
|
-
/* @__PURE__ */ (0,
|
|
438
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
439
439
|
"video",
|
|
440
440
|
{
|
|
441
441
|
ref: videoRef,
|
|
@@ -447,7 +447,7 @@ var init_HlsPlayer = __esm({
|
|
|
447
447
|
loop,
|
|
448
448
|
playsInline: true,
|
|
449
449
|
onClick: !isMobile ? handlePlayPause : void 0,
|
|
450
|
-
children: resolvedSources.map(({ src, media }, i) => /* @__PURE__ */ (0,
|
|
450
|
+
children: resolvedSources.map(({ src, media }, i) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
451
451
|
"source",
|
|
452
452
|
{
|
|
453
453
|
src,
|
|
@@ -458,7 +458,7 @@ var init_HlsPlayer = __esm({
|
|
|
458
458
|
))
|
|
459
459
|
}
|
|
460
460
|
),
|
|
461
|
-
!isMobile && fallbackPoster && /* @__PURE__ */ (0,
|
|
461
|
+
!isMobile && fallbackPoster && /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
|
|
462
462
|
"picture",
|
|
463
463
|
{
|
|
464
464
|
className: "absolute inset-0 pointer-events-none",
|
|
@@ -467,8 +467,8 @@ var init_HlsPlayer = __esm({
|
|
|
467
467
|
transition: "opacity 0.4s ease"
|
|
468
468
|
},
|
|
469
469
|
children: [
|
|
470
|
-
posterSources.map(({ media, posterUrl: src }, i) => /* @__PURE__ */ (0,
|
|
471
|
-
/* @__PURE__ */ (0,
|
|
470
|
+
posterSources.map(({ media, posterUrl: src }, i) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("source", { media, srcSet: src }, i)),
|
|
471
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
472
472
|
"img",
|
|
473
473
|
{
|
|
474
474
|
src: fallbackPoster,
|
|
@@ -481,7 +481,7 @@ var init_HlsPlayer = __esm({
|
|
|
481
481
|
]
|
|
482
482
|
}
|
|
483
483
|
),
|
|
484
|
-
!isMobile && !isPlayOnHover && /* @__PURE__ */ (0,
|
|
484
|
+
!isMobile && !isPlayOnHover && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
485
485
|
"div",
|
|
486
486
|
{
|
|
487
487
|
className: "absolute inset-0 flex items-center justify-center pointer-events-none",
|
|
@@ -489,7 +489,7 @@ var init_HlsPlayer = __esm({
|
|
|
489
489
|
opacity: isControlsVisible ? 1 : 0,
|
|
490
490
|
transition: "opacity 0.3s ease"
|
|
491
491
|
},
|
|
492
|
-
children: /* @__PURE__ */ (0,
|
|
492
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
493
493
|
"button",
|
|
494
494
|
{
|
|
495
495
|
type: "button",
|
|
@@ -528,13 +528,13 @@ var init_HlsPlayer = __esm({
|
|
|
528
528
|
},
|
|
529
529
|
children: isPlaying ? (
|
|
530
530
|
/* Pause — two rounded bars */
|
|
531
|
-
/* @__PURE__ */ (0,
|
|
532
|
-
/* @__PURE__ */ (0,
|
|
533
|
-
/* @__PURE__ */ (0,
|
|
531
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
|
|
532
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("rect", { x: "3.5", y: "2.5", width: "4.5", height: "15", rx: "1.5", fill: "white" }),
|
|
533
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("rect", { x: "12", y: "2.5", width: "4.5", height: "15", rx: "1.5", fill: "white" })
|
|
534
534
|
] })
|
|
535
535
|
) : (
|
|
536
536
|
/* Play — solid triangle, nudged right for optical balance */
|
|
537
|
-
/* @__PURE__ */ (0,
|
|
537
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("path", { d: "M5 3.5L17 10L5 16.5V3.5Z", fill: "white" }) })
|
|
538
538
|
)
|
|
539
539
|
}
|
|
540
540
|
)
|
|
@@ -769,28 +769,28 @@ var LinkNodeButton_exports = {};
|
|
|
769
769
|
__export(LinkNodeButton_exports, {
|
|
770
770
|
default: () => LinkNodeButton_default
|
|
771
771
|
});
|
|
772
|
-
var
|
|
772
|
+
var import_react34, import_jsx_runtime44, LinkNodeButton, LinkNodeButton_default;
|
|
773
773
|
var init_LinkNodeButton = __esm({
|
|
774
774
|
"src/components/pageRenderingEngine/nodes/LinkNodeButton.tsx"() {
|
|
775
775
|
"use strict";
|
|
776
776
|
"use client";
|
|
777
|
-
|
|
777
|
+
import_react34 = require("react");
|
|
778
778
|
init_Button();
|
|
779
779
|
init_ServiceClient();
|
|
780
780
|
init_ToastService();
|
|
781
|
-
|
|
781
|
+
import_jsx_runtime44 = require("react/jsx-runtime");
|
|
782
782
|
LinkNodeButton = (props) => {
|
|
783
783
|
const { node, dataitem, children, linkText, linkType, linkUrl } = props;
|
|
784
|
-
const [isLoading, setIsLoading] = (0,
|
|
785
|
-
const [error, setError] = (0,
|
|
786
|
-
const extractFieldNames = (0,
|
|
784
|
+
const [isLoading, setIsLoading] = (0, import_react34.useState)(false);
|
|
785
|
+
const [error, setError] = (0, import_react34.useState)(null);
|
|
786
|
+
const extractFieldNames = (0, import_react34.useCallback)((template) => {
|
|
787
787
|
if (!template) return [];
|
|
788
788
|
const regex = /\{(\{\})?([a-zA-Z_$][a-zA-Z0-9_$]*)(?:\}\})?\}/g;
|
|
789
789
|
const matches = Array.from(template.matchAll(regex));
|
|
790
790
|
const fieldNames = matches.map((match) => match[2] || match[1]).filter((name, index, self) => self.indexOf(name) === index);
|
|
791
791
|
return fieldNames;
|
|
792
792
|
}, []);
|
|
793
|
-
const replaceTemplateVariables = (0,
|
|
793
|
+
const replaceTemplateVariables = (0, import_react34.useCallback)((template, responseData) => {
|
|
794
794
|
if (!template) return template;
|
|
795
795
|
let result = template;
|
|
796
796
|
const fieldNames = extractFieldNames(template);
|
|
@@ -819,7 +819,7 @@ var init_LinkNodeButton = __esm({
|
|
|
819
819
|
}
|
|
820
820
|
return result;
|
|
821
821
|
}, [props.routeParameters, dataitem, extractFieldNames]);
|
|
822
|
-
const getNestedValue3 = (0,
|
|
822
|
+
const getNestedValue3 = (0, import_react34.useCallback)((obj, path) => {
|
|
823
823
|
if (!obj || !path) return void 0;
|
|
824
824
|
if (obj[path] !== void 0) {
|
|
825
825
|
return obj[path];
|
|
@@ -834,7 +834,7 @@ var init_LinkNodeButton = __esm({
|
|
|
834
834
|
}
|
|
835
835
|
return current;
|
|
836
836
|
}, []);
|
|
837
|
-
const onClick = (0,
|
|
837
|
+
const onClick = (0, import_react34.useCallback)(async (e) => {
|
|
838
838
|
if (!node.postUrl) {
|
|
839
839
|
setError("No POST URL configured for this button");
|
|
840
840
|
return;
|
|
@@ -921,11 +921,11 @@ var init_LinkNodeButton = __esm({
|
|
|
921
921
|
return children;
|
|
922
922
|
}
|
|
923
923
|
if (linkText) {
|
|
924
|
-
return /* @__PURE__ */ (0,
|
|
924
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { children: linkText });
|
|
925
925
|
}
|
|
926
926
|
return node.title || "Button";
|
|
927
927
|
};
|
|
928
|
-
return /* @__PURE__ */ (0,
|
|
928
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "link-button-wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
929
929
|
Button_default,
|
|
930
930
|
{
|
|
931
931
|
ButtonType: linkType,
|
|
@@ -946,9 +946,9 @@ __export(CopyButton_exports, {
|
|
|
946
946
|
default: () => CopyButton
|
|
947
947
|
});
|
|
948
948
|
function CopyButton({ text }) {
|
|
949
|
-
const [copied, setCopied] = (0,
|
|
950
|
-
const timeoutRef = (0,
|
|
951
|
-
(0,
|
|
949
|
+
const [copied, setCopied] = (0, import_react41.useState)(false);
|
|
950
|
+
const timeoutRef = (0, import_react41.useRef)(null);
|
|
951
|
+
(0, import_react41.useEffect)(() => {
|
|
952
952
|
return () => {
|
|
953
953
|
if (timeoutRef.current) clearTimeout(timeoutRef.current);
|
|
954
954
|
};
|
|
@@ -963,13 +963,13 @@ function CopyButton({ text }) {
|
|
|
963
963
|
console.error("Failed to copy: ", err);
|
|
964
964
|
}
|
|
965
965
|
};
|
|
966
|
-
return /* @__PURE__ */ (0,
|
|
966
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(
|
|
967
967
|
"button",
|
|
968
968
|
{
|
|
969
969
|
onClick: handleCopy,
|
|
970
970
|
className: "flex gap-1 items-center hover:text-white transition",
|
|
971
971
|
children: [
|
|
972
|
-
/* @__PURE__ */ (0,
|
|
972
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
973
973
|
"svg",
|
|
974
974
|
{
|
|
975
975
|
width: "16",
|
|
@@ -977,7 +977,7 @@ function CopyButton({ text }) {
|
|
|
977
977
|
viewBox: "0 0 24 24",
|
|
978
978
|
className: "w-4 h-4",
|
|
979
979
|
fill: "currentColor",
|
|
980
|
-
children: /* @__PURE__ */ (0,
|
|
980
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
981
981
|
"path",
|
|
982
982
|
{
|
|
983
983
|
fillRule: "evenodd",
|
|
@@ -992,54 +992,54 @@ function CopyButton({ text }) {
|
|
|
992
992
|
}
|
|
993
993
|
);
|
|
994
994
|
}
|
|
995
|
-
var
|
|
995
|
+
var import_react41, import_jsx_runtime54;
|
|
996
996
|
var init_CopyButton = __esm({
|
|
997
997
|
"src/components/CopyButton.tsx"() {
|
|
998
998
|
"use strict";
|
|
999
999
|
"use client";
|
|
1000
|
-
|
|
1001
|
-
|
|
1000
|
+
import_react41 = require("react");
|
|
1001
|
+
import_jsx_runtime54 = require("react/jsx-runtime");
|
|
1002
1002
|
}
|
|
1003
1003
|
});
|
|
1004
1004
|
|
|
1005
1005
|
// src/components/IFrameLoaderView.tsx
|
|
1006
|
-
var
|
|
1006
|
+
var import_react45, import_jsx_runtime60, IFrameLoaderView, IFrameLoaderView_default;
|
|
1007
1007
|
var init_IFrameLoaderView = __esm({
|
|
1008
1008
|
"src/components/IFrameLoaderView.tsx"() {
|
|
1009
1009
|
"use strict";
|
|
1010
|
-
|
|
1011
|
-
|
|
1010
|
+
import_react45 = __toESM(require("react"));
|
|
1011
|
+
import_jsx_runtime60 = require("react/jsx-runtime");
|
|
1012
1012
|
IFrameLoaderView = (props) => {
|
|
1013
|
-
return /* @__PURE__ */ (0,
|
|
1014
|
-
props.isDataFound == null && /* @__PURE__ */ (0,
|
|
1015
|
-
/* @__PURE__ */ (0,
|
|
1016
|
-
/* @__PURE__ */ (0,
|
|
1017
|
-
/* @__PURE__ */ (0,
|
|
1018
|
-
/* @__PURE__ */ (0,
|
|
1019
|
-
/* @__PURE__ */ (0,
|
|
1013
|
+
return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_react45.default.Fragment, { children: [
|
|
1014
|
+
props.isDataFound == null && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "mt-4 bg-gray-200 rounded-md p-4 animate-pulse", children: [
|
|
1015
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "flex items-center mb-4", children: [
|
|
1016
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 h-8 w-8 rounded-full animate-pulse" }),
|
|
1017
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "ml-2", children: [
|
|
1018
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 h-3 w-16 animate-pulse" }),
|
|
1019
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 h-2 w-12 animate-pulse" })
|
|
1020
1020
|
] })
|
|
1021
1021
|
] }),
|
|
1022
|
-
/* @__PURE__ */ (0,
|
|
1023
|
-
/* @__PURE__ */ (0,
|
|
1024
|
-
/* @__PURE__ */ (0,
|
|
1025
|
-
/* @__PURE__ */ (0,
|
|
1026
|
-
/* @__PURE__ */ (0,
|
|
1027
|
-
/* @__PURE__ */ (0,
|
|
1028
|
-
/* @__PURE__ */ (0,
|
|
1022
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "grid grid-cols-3 gap-4 mt-6", children: [
|
|
1023
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "animate-pulse", children: [
|
|
1024
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
|
|
1025
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
|
|
1026
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
|
|
1027
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
|
|
1028
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
|
|
1029
1029
|
] }),
|
|
1030
|
-
/* @__PURE__ */ (0,
|
|
1031
|
-
/* @__PURE__ */ (0,
|
|
1032
|
-
/* @__PURE__ */ (0,
|
|
1033
|
-
/* @__PURE__ */ (0,
|
|
1034
|
-
/* @__PURE__ */ (0,
|
|
1035
|
-
/* @__PURE__ */ (0,
|
|
1030
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "animate-pulse", children: [
|
|
1031
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
|
|
1032
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
|
|
1033
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
|
|
1034
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
|
|
1035
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
|
|
1036
1036
|
] }),
|
|
1037
|
-
/* @__PURE__ */ (0,
|
|
1038
|
-
/* @__PURE__ */ (0,
|
|
1039
|
-
/* @__PURE__ */ (0,
|
|
1040
|
-
/* @__PURE__ */ (0,
|
|
1041
|
-
/* @__PURE__ */ (0,
|
|
1042
|
-
/* @__PURE__ */ (0,
|
|
1037
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "animate-pulse", children: [
|
|
1038
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
|
|
1039
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
|
|
1040
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
|
|
1041
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
|
|
1042
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
|
|
1043
1043
|
] })
|
|
1044
1044
|
] })
|
|
1045
1045
|
] }) }),
|
|
@@ -1055,19 +1055,19 @@ var IframeClient_exports = {};
|
|
|
1055
1055
|
__export(IframeClient_exports, {
|
|
1056
1056
|
default: () => IframeClient_default
|
|
1057
1057
|
});
|
|
1058
|
-
var
|
|
1058
|
+
var import_react46, import_jsx_runtime61, IframeClient, IframeClient_default;
|
|
1059
1059
|
var init_IframeClient = __esm({
|
|
1060
1060
|
"src/components/pageRenderingEngine/nodes/IframeClient.tsx"() {
|
|
1061
1061
|
"use strict";
|
|
1062
1062
|
"use client";
|
|
1063
|
-
|
|
1063
|
+
import_react46 = __toESM(require("react"));
|
|
1064
1064
|
init_IFrameLoaderView();
|
|
1065
|
-
|
|
1065
|
+
import_jsx_runtime61 = require("react/jsx-runtime");
|
|
1066
1066
|
IframeClient = ({ src }) => {
|
|
1067
|
-
const iframeRef = (0,
|
|
1068
|
-
const [iframeHeight, setIframeHeight] = (0,
|
|
1069
|
-
const [isDataFound, setIsDataFound] = (0,
|
|
1070
|
-
(0,
|
|
1067
|
+
const iframeRef = (0, import_react46.useRef)(null);
|
|
1068
|
+
const [iframeHeight, setIframeHeight] = (0, import_react46.useState)("100%");
|
|
1069
|
+
const [isDataFound, setIsDataFound] = (0, import_react46.useState)(null);
|
|
1070
|
+
(0, import_react46.useEffect)(() => {
|
|
1071
1071
|
const handleReceiveMessage = (event) => {
|
|
1072
1072
|
const eventName = event?.data?.eventName;
|
|
1073
1073
|
const payload = event?.data?.payload;
|
|
@@ -1082,7 +1082,7 @@ var init_IframeClient = __esm({
|
|
|
1082
1082
|
window.addEventListener("message", handleReceiveMessage);
|
|
1083
1083
|
return () => window.removeEventListener("message", handleReceiveMessage);
|
|
1084
1084
|
}, []);
|
|
1085
|
-
(0,
|
|
1085
|
+
(0, import_react46.useEffect)(() => {
|
|
1086
1086
|
const handleResize = () => {
|
|
1087
1087
|
if (iframeRef.current) {
|
|
1088
1088
|
iframeRef.current.contentWindow?.postMessage({ eventName: "RESIZE" }, "*");
|
|
@@ -1094,7 +1094,7 @@ var init_IframeClient = __esm({
|
|
|
1094
1094
|
const handleIframeLoad = () => {
|
|
1095
1095
|
setIsDataFound(true);
|
|
1096
1096
|
};
|
|
1097
|
-
return /* @__PURE__ */ (0,
|
|
1097
|
+
return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_react46.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(IFrameLoaderView_default, { isDataFound, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
|
|
1098
1098
|
"iframe",
|
|
1099
1099
|
{
|
|
1100
1100
|
ref: iframeRef,
|
|
@@ -1296,6 +1296,7 @@ var timeZoneAbbreviations = {
|
|
|
1296
1296
|
// src/components/controls/view/DateView.tsx
|
|
1297
1297
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
1298
1298
|
var DateView = (props) => {
|
|
1299
|
+
const userTimeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
1299
1300
|
const getTimeZoneAbbreviation = (timeZone) => {
|
|
1300
1301
|
return timeZoneAbbreviations[timeZone] || timeZone;
|
|
1301
1302
|
};
|
|
@@ -1314,7 +1315,8 @@ var DateView = (props) => {
|
|
|
1314
1315
|
return new Intl.DateTimeFormat("en", {
|
|
1315
1316
|
day: "2-digit",
|
|
1316
1317
|
month: "short",
|
|
1317
|
-
year: "numeric"
|
|
1318
|
+
year: "numeric",
|
|
1319
|
+
timeZone: userTimeZone
|
|
1318
1320
|
}).format(date);
|
|
1319
1321
|
};
|
|
1320
1322
|
console.log("DateView props:", props);
|
|
@@ -1328,55 +1330,63 @@ var DateView = (props) => {
|
|
|
1328
1330
|
return new Intl.DateTimeFormat("en", {
|
|
1329
1331
|
day: "2-digit",
|
|
1330
1332
|
month: "short",
|
|
1331
|
-
year: "numeric"
|
|
1333
|
+
year: "numeric",
|
|
1334
|
+
timeZone: userTimeZone
|
|
1332
1335
|
}).format(parsedDate);
|
|
1333
1336
|
case "time":
|
|
1334
|
-
return `${formatTime(parsedDate)} ${getTimeZoneAbbreviation(
|
|
1337
|
+
return `${formatTime(parsedDate)} ${getTimeZoneAbbreviation(userTimeZone)} (${getTimePeriod(parsedDate)})`;
|
|
1335
1338
|
default:
|
|
1336
1339
|
return parsedDate.getSeconds() === 0 ? new Intl.DateTimeFormat("en", {
|
|
1337
1340
|
day: "2-digit",
|
|
1338
1341
|
month: "short",
|
|
1339
1342
|
year: "numeric",
|
|
1340
1343
|
hour: "2-digit",
|
|
1341
|
-
minute: "2-digit"
|
|
1344
|
+
minute: "2-digit",
|
|
1345
|
+
timeZone: userTimeZone
|
|
1342
1346
|
}).format(parsedDate) : new Intl.DateTimeFormat("en", {
|
|
1343
1347
|
day: "2-digit",
|
|
1344
1348
|
month: "short",
|
|
1345
1349
|
year: "numeric",
|
|
1346
1350
|
hour: "2-digit",
|
|
1347
1351
|
minute: "2-digit",
|
|
1348
|
-
second: "2-digit"
|
|
1352
|
+
second: "2-digit",
|
|
1353
|
+
timeZone: userTimeZone
|
|
1349
1354
|
}).format(parsedDate);
|
|
1350
1355
|
}
|
|
1351
1356
|
};
|
|
1352
1357
|
const formatTime = (date) => {
|
|
1353
1358
|
return date.getSeconds() === 0 ? new Intl.DateTimeFormat("en", {
|
|
1354
1359
|
hour: "2-digit",
|
|
1355
|
-
minute: "2-digit"
|
|
1360
|
+
minute: "2-digit",
|
|
1361
|
+
timeZone: userTimeZone
|
|
1356
1362
|
}).format(date) : new Intl.DateTimeFormat("en", {
|
|
1357
1363
|
hour: "2-digit",
|
|
1358
1364
|
minute: "2-digit",
|
|
1359
|
-
second: "2-digit"
|
|
1365
|
+
second: "2-digit",
|
|
1366
|
+
timeZone: userTimeZone
|
|
1360
1367
|
}).format(date);
|
|
1361
1368
|
};
|
|
1362
1369
|
const getTimePeriod = (date) => {
|
|
1363
|
-
const
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
if (
|
|
1371
|
-
return "
|
|
1370
|
+
const localHours = Number(
|
|
1371
|
+
new Intl.DateTimeFormat("en", {
|
|
1372
|
+
hour: "numeric",
|
|
1373
|
+
hour12: false,
|
|
1374
|
+
timeZone: userTimeZone
|
|
1375
|
+
}).format(date)
|
|
1376
|
+
);
|
|
1377
|
+
if (localHours >= 5 && localHours < 8) return "Early Morning";
|
|
1378
|
+
if (localHours >= 8 && localHours < 12) return "Morning";
|
|
1379
|
+
if (localHours >= 12 && localHours < 14) return "Noon";
|
|
1380
|
+
if (localHours >= 14 && localHours < 17) return "Afternoon";
|
|
1381
|
+
if (localHours >= 17 && localHours < 20) return "Evening";
|
|
1382
|
+
if (localHours >= 20 && localHours < 22) return "Late Evening";
|
|
1383
|
+
return "Night";
|
|
1372
1384
|
};
|
|
1373
1385
|
let localDateTime = "";
|
|
1374
1386
|
let timeZoneAbbreviation = "";
|
|
1375
1387
|
try {
|
|
1376
1388
|
localDateTime = parseAndFormatDate(props.value, props.format);
|
|
1377
|
-
timeZoneAbbreviation = getTimeZoneAbbreviation(
|
|
1378
|
-
Intl.DateTimeFormat().resolvedOptions().timeZone
|
|
1379
|
-
);
|
|
1389
|
+
timeZoneAbbreviation = getTimeZoneAbbreviation(userTimeZone);
|
|
1380
1390
|
} catch (error) {
|
|
1381
1391
|
console.error("Error parsing date:", props.value, error);
|
|
1382
1392
|
}
|
|
@@ -1544,7 +1554,7 @@ var ViewControl = (props) => {
|
|
|
1544
1554
|
var ViewControl_default = ViewControl;
|
|
1545
1555
|
|
|
1546
1556
|
// src/components/controls/edit/InputControl.tsx
|
|
1547
|
-
var
|
|
1557
|
+
var import_react31 = __toESM(require("react"));
|
|
1548
1558
|
|
|
1549
1559
|
// src/components/controls/edit/MultilineTextInput.tsx
|
|
1550
1560
|
var import_react11 = __toESM(require("react"));
|
|
@@ -1714,6 +1724,7 @@ var InputControlType = {
|
|
|
1714
1724
|
moneyInput: "money",
|
|
1715
1725
|
select: "select",
|
|
1716
1726
|
percentageInput: "percentage",
|
|
1727
|
+
asset: "asset",
|
|
1717
1728
|
phoneInput: "phone",
|
|
1718
1729
|
numberInput: "number",
|
|
1719
1730
|
checkboxInput: "boolean",
|
|
@@ -2758,9 +2769,304 @@ var TimeInput = (props) => {
|
|
|
2758
2769
|
};
|
|
2759
2770
|
var TimeInput_default = TimeInput;
|
|
2760
2771
|
|
|
2761
|
-
// src/components/controls/edit/
|
|
2772
|
+
// src/components/controls/edit/AssetUpload.tsx
|
|
2773
|
+
var import_react30 = __toESM(require("react"));
|
|
2774
|
+
init_ClientButton();
|
|
2775
|
+
init_StyleTypes();
|
|
2776
|
+
|
|
2777
|
+
// src/components/utilities/AssetUtility.tsx
|
|
2778
|
+
var AssetUtility = class {
|
|
2779
|
+
constructor() {
|
|
2780
|
+
}
|
|
2781
|
+
static resolveUrl(assetBaseUrl, url) {
|
|
2782
|
+
if (!url) return void 0;
|
|
2783
|
+
if (url.startsWith("http")) return url;
|
|
2784
|
+
if (!assetBaseUrl) return url;
|
|
2785
|
+
return `${assetBaseUrl}/${url}`;
|
|
2786
|
+
}
|
|
2787
|
+
// static getAssetUrl(apiBaseUrl: string) {
|
|
2788
|
+
// let domainName = apiBaseUrl.replace("https://", "");
|
|
2789
|
+
// return `https://cdn.g-assets.com/${domainName}`;
|
|
2790
|
+
// }
|
|
2791
|
+
static getAssetFullPath(apiBaseUrl, relativePath) {
|
|
2792
|
+
const domainName = apiBaseUrl.replace("https://", "");
|
|
2793
|
+
return `https://cdn.g-assets.com/${domainName}/${relativePath}`;
|
|
2794
|
+
}
|
|
2795
|
+
};
|
|
2796
|
+
var AssetUtility_default = AssetUtility;
|
|
2797
|
+
|
|
2798
|
+
// src/components/dataForm/Hyperlink.tsx
|
|
2799
|
+
var import_link = __toESM(require("next/link"));
|
|
2800
|
+
init_StyleTypes();
|
|
2762
2801
|
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
2763
|
-
|
|
2802
|
+
function Hyperlink(props) {
|
|
2803
|
+
let linkClass = props.linkType ? buttonClasses.get(props.linkType) : buttonClasses.get("Link" /* Link */);
|
|
2804
|
+
const target = props?.href?.startsWith("http") ? "_blank" : "_self";
|
|
2805
|
+
const additionalProps = {};
|
|
2806
|
+
if (target == "_blank") {
|
|
2807
|
+
additionalProps.rel = "noopener noreferrer";
|
|
2808
|
+
}
|
|
2809
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_jsx_runtime31.Fragment, { children: props.href ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
2810
|
+
import_link.default,
|
|
2811
|
+
{
|
|
2812
|
+
href: props.href,
|
|
2813
|
+
prefetch: false,
|
|
2814
|
+
className: [linkClass, props.className].filter(Boolean).join(" "),
|
|
2815
|
+
...additionalProps,
|
|
2816
|
+
target,
|
|
2817
|
+
children: props.children
|
|
2818
|
+
}
|
|
2819
|
+
) : props.isHeading ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("h5", { className: props.className + "inline-block", children: props.children }) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: props.className, children: props.children }) });
|
|
2820
|
+
}
|
|
2821
|
+
|
|
2822
|
+
// src/svg/chevron-updown.tsx
|
|
2823
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
2824
|
+
var ChevronUpDown = (props) => {
|
|
2825
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: props.className, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M8.25 15L12 18.75 15.75 15m-7.5-6L12 5.25 15.75 9" }) });
|
|
2826
|
+
};
|
|
2827
|
+
var chevron_updown_default = ChevronUpDown;
|
|
2828
|
+
|
|
2829
|
+
// src/svg/chevron-down.tsx
|
|
2830
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
2831
|
+
var ChevronDown = (props) => {
|
|
2832
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: props.className, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19.5 8.25l-7.5 7.5-7.5-7.5" }) });
|
|
2833
|
+
};
|
|
2834
|
+
var chevron_down_default = ChevronDown;
|
|
2835
|
+
|
|
2836
|
+
// src/svg/chevron-up.tsx
|
|
2837
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
2838
|
+
var ChevronUp = (props) => {
|
|
2839
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: props.className, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M4.5 15.75l7.5-7.5 7.5 7.5" }) });
|
|
2840
|
+
};
|
|
2841
|
+
var chevron_up_default = ChevronUp;
|
|
2842
|
+
|
|
2843
|
+
// src/svg/plus.tsx
|
|
2844
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
2845
|
+
var Plus = (props) => {
|
|
2846
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: props.className, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M12 4.5v15m7.5-7.5h-15" }) });
|
|
2847
|
+
};
|
|
2848
|
+
var plus_default = Plus;
|
|
2849
|
+
|
|
2850
|
+
// src/svg/Icons.tsx
|
|
2851
|
+
var Icons = {
|
|
2852
|
+
chevronUpDown: chevron_updown_default,
|
|
2853
|
+
chevronDown: chevron_down_default,
|
|
2854
|
+
chevronUp: chevron_up_default,
|
|
2855
|
+
plus: plus_default
|
|
2856
|
+
};
|
|
2857
|
+
var Icons_default = Icons;
|
|
2858
|
+
|
|
2859
|
+
// src/svg/Icon.tsx
|
|
2860
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
2861
|
+
var Icon = ({ name, className, ...props }) => {
|
|
2862
|
+
const IconComponent = Icons_default[name];
|
|
2863
|
+
if (!IconComponent) {
|
|
2864
|
+
console.error(`Icon "${name}" not found.`);
|
|
2865
|
+
return null;
|
|
2866
|
+
}
|
|
2867
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(IconComponent, { ...props, className });
|
|
2868
|
+
};
|
|
2869
|
+
var Icon_default = Icon;
|
|
2870
|
+
|
|
2871
|
+
// src/components/controls/edit/AssetUpload.tsx
|
|
2872
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
2873
|
+
var AssetUpload = (props) => {
|
|
2874
|
+
const isDisabled = props.attributes?.disable ?? false;
|
|
2875
|
+
let allValues = [];
|
|
2876
|
+
if (props.value !== void 0 && props.value !== null && props.value !== "") {
|
|
2877
|
+
try {
|
|
2878
|
+
allValues = JSON.parse(props.value.toString());
|
|
2879
|
+
} catch (error) {
|
|
2880
|
+
}
|
|
2881
|
+
}
|
|
2882
|
+
const getInitialTab = () => {
|
|
2883
|
+
if (allValues.length > 0) {
|
|
2884
|
+
const asset = allValues[0];
|
|
2885
|
+
if (asset.posterUrl) {
|
|
2886
|
+
return "video";
|
|
2887
|
+
} else if (asset.assetUrl) {
|
|
2888
|
+
return "image";
|
|
2889
|
+
}
|
|
2890
|
+
}
|
|
2891
|
+
return "image";
|
|
2892
|
+
};
|
|
2893
|
+
const [assetType, setAssetType] = import_react30.default.useState(getInitialTab);
|
|
2894
|
+
(0, import_react30.useEffect)(() => {
|
|
2895
|
+
setAssetType(getInitialTab());
|
|
2896
|
+
}, [props.value]);
|
|
2897
|
+
const assetUploadCallback = (newAsset) => {
|
|
2898
|
+
if (isDisabled) return;
|
|
2899
|
+
let updated = [];
|
|
2900
|
+
updated.push({
|
|
2901
|
+
assetUrl: newAsset.assetUrl,
|
|
2902
|
+
title: newAsset.title,
|
|
2903
|
+
posterUrl: newAsset.posterUrl,
|
|
2904
|
+
intrinsicHeight: newAsset.intrinsicHeight,
|
|
2905
|
+
intrinsicWidth: newAsset.intrinsicWidth
|
|
2906
|
+
});
|
|
2907
|
+
props.callback?.({
|
|
2908
|
+
name: props.name,
|
|
2909
|
+
value: JSON.stringify(updated),
|
|
2910
|
+
index: props.index,
|
|
2911
|
+
groupKey: props.groupKey
|
|
2912
|
+
});
|
|
2913
|
+
};
|
|
2914
|
+
const deleteFile = (index) => {
|
|
2915
|
+
if (isDisabled) return;
|
|
2916
|
+
let existingValue = [];
|
|
2917
|
+
if (props.value) {
|
|
2918
|
+
try {
|
|
2919
|
+
existingValue = JSON.parse(props.value.toString());
|
|
2920
|
+
} catch (error) {
|
|
2921
|
+
}
|
|
2922
|
+
}
|
|
2923
|
+
if (existingValue.length > index) {
|
|
2924
|
+
existingValue.splice(index, 1);
|
|
2925
|
+
props.callback?.({
|
|
2926
|
+
name: props.name,
|
|
2927
|
+
value: JSON.stringify(existingValue),
|
|
2928
|
+
index: props.index,
|
|
2929
|
+
groupKey: props.groupKey
|
|
2930
|
+
});
|
|
2931
|
+
}
|
|
2932
|
+
};
|
|
2933
|
+
const textChangeHandler = (index, event) => {
|
|
2934
|
+
if (isDisabled) return;
|
|
2935
|
+
let existingValue = [];
|
|
2936
|
+
if (props.value) {
|
|
2937
|
+
try {
|
|
2938
|
+
existingValue = JSON.parse(props.value.toString());
|
|
2939
|
+
} catch (error) {
|
|
2940
|
+
}
|
|
2941
|
+
}
|
|
2942
|
+
const text = event.target.value;
|
|
2943
|
+
if (existingValue.length > index) {
|
|
2944
|
+
const updatedArray = [...existingValue];
|
|
2945
|
+
updatedArray[index] = { ...updatedArray[index], title: text };
|
|
2946
|
+
props.callback?.({
|
|
2947
|
+
name: props.name,
|
|
2948
|
+
value: JSON.stringify(updatedArray),
|
|
2949
|
+
index: props.index,
|
|
2950
|
+
groupKey: props.groupKey
|
|
2951
|
+
});
|
|
2952
|
+
}
|
|
2953
|
+
};
|
|
2954
|
+
const getAssetType = (asset) => {
|
|
2955
|
+
if (asset.assetUrl?.endsWith(".m3u8") || asset.posterUrl) return "video";
|
|
2956
|
+
return "image";
|
|
2957
|
+
};
|
|
2958
|
+
const shouldShowDetails = () => {
|
|
2959
|
+
if (allValues.length === 0) return false;
|
|
2960
|
+
const asset = allValues[0];
|
|
2961
|
+
if (assetType === "video") {
|
|
2962
|
+
return Boolean(asset.posterUrl && asset.assetUrl && asset.assetUrl.endsWith(".m3u8"));
|
|
2963
|
+
}
|
|
2964
|
+
if (assetType === "image") {
|
|
2965
|
+
return Boolean(asset.assetUrl && !asset.assetUrl.endsWith(".m3u8"));
|
|
2966
|
+
}
|
|
2967
|
+
return false;
|
|
2968
|
+
};
|
|
2969
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_react30.default.Fragment, { children: [
|
|
2970
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("label", { className: "block mb-1", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { className: "text-sm font-medium", children: props?.attributes?.label }) }),
|
|
2971
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex gap-6 bg-neutral-100 rounded p-2", children: [
|
|
2972
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2973
|
+
ClientButton_default,
|
|
2974
|
+
{
|
|
2975
|
+
className: assetType === "image" ? "px-2 py-1 rounded bg-body-200 scale-95" : "text-neutral-700",
|
|
2976
|
+
ButtonType: "Link" /* Link */,
|
|
2977
|
+
onClick: () => setAssetType("image"),
|
|
2978
|
+
disabled: isDisabled,
|
|
2979
|
+
children: "Image Upload"
|
|
2980
|
+
}
|
|
2981
|
+
),
|
|
2982
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2983
|
+
ClientButton_default,
|
|
2984
|
+
{
|
|
2985
|
+
className: assetType === "video" ? "bg-body-200 px-2 py-1 rounded-md scale-95" : "text-neutral-700",
|
|
2986
|
+
ButtonType: "Link" /* Link */,
|
|
2987
|
+
onClick: () => setAssetType("video"),
|
|
2988
|
+
disabled: isDisabled,
|
|
2989
|
+
children: "Video Upload"
|
|
2990
|
+
}
|
|
2991
|
+
)
|
|
2992
|
+
] }),
|
|
2993
|
+
shouldShowDetails() && /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "relative mt-4 rounded-md p-4 border-2 border-dotted border-gray-300 bg-gray-50", children: [
|
|
2994
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { className: "absolute -top-2.5 left-3 bg-primary-600 text-white text-xs px-2 py-0.5 rounded-full", children: getAssetType(allValues[0]) === "video" ? "Video" : "Image" }),
|
|
2995
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "flex flex-col gap-3", children: allValues.map((digitalAsset, index) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex justify-between items-start gap-5", children: [
|
|
2996
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm w-full", children: [
|
|
2997
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { children: [
|
|
2998
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "text-gray-500", children: "Title" }),
|
|
2999
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3000
|
+
"input",
|
|
3001
|
+
{
|
|
3002
|
+
type: "text",
|
|
3003
|
+
value: digitalAsset.title,
|
|
3004
|
+
onChange: (event) => textChangeHandler(index, event),
|
|
3005
|
+
placeholder: "title",
|
|
3006
|
+
disabled: isDisabled,
|
|
3007
|
+
className: "w-full mt-1 py-1.5 block rounded border-gray-300 shadow-sm bg-white\n focus:border-indigo-300 focus:ring focus:ring-indigo-200 focus:ring-opacity-50\n disabled:bg-gray-100 disabled:text-gray-400 disabled:cursor-not-allowed"
|
|
3008
|
+
}
|
|
3009
|
+
)
|
|
3010
|
+
] }),
|
|
3011
|
+
digitalAsset.intrinsicWidth && digitalAsset.intrinsicHeight && /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { children: [
|
|
3012
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "text-gray-500", children: "Resolution" }),
|
|
3013
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("p", { className: "font-medium text-gray-900 mt-3", children: [
|
|
3014
|
+
digitalAsset.intrinsicWidth,
|
|
3015
|
+
"\xD7",
|
|
3016
|
+
digitalAsset.intrinsicHeight
|
|
3017
|
+
] })
|
|
3018
|
+
] }),
|
|
3019
|
+
(digitalAsset.assetUrl || digitalAsset.posterUrl) && /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { children: [
|
|
3020
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "text-gray-500", children: "Image / Poster" }),
|
|
3021
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex-shrink-0 flex flex-col gap-3 mt-1", children: [
|
|
3022
|
+
getAssetType(digitalAsset) === "video" && digitalAsset.posterUrl && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3023
|
+
"img",
|
|
3024
|
+
{
|
|
3025
|
+
src: AssetUtility_default.resolveUrl(props.serviceClient?.baseUrl, digitalAsset.posterUrl),
|
|
3026
|
+
alt: digitalAsset.title || "Video poster",
|
|
3027
|
+
className: "w-32 h-auto object-cover rounded border p-1"
|
|
3028
|
+
}
|
|
3029
|
+
),
|
|
3030
|
+
getAssetType(digitalAsset) === "image" && digitalAsset.assetUrl && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3031
|
+
"img",
|
|
3032
|
+
{
|
|
3033
|
+
src: AssetUtility_default.resolveUrl(props.serviceClient?.baseUrl, digitalAsset.assetUrl),
|
|
3034
|
+
alt: digitalAsset.title || "Uploaded image",
|
|
3035
|
+
className: "w-32 h-auto object-cover rounded border p-1"
|
|
3036
|
+
}
|
|
3037
|
+
)
|
|
3038
|
+
] })
|
|
3039
|
+
] }),
|
|
3040
|
+
digitalAsset.assetUrl?.endsWith(".m3u8") && /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "col-span-2", children: [
|
|
3041
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "text-gray-500", children: "HLS Link" }),
|
|
3042
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3043
|
+
Hyperlink,
|
|
3044
|
+
{
|
|
3045
|
+
href: digitalAsset.assetUrl,
|
|
3046
|
+
className: "text-primary-600 underline mt-1 break-all",
|
|
3047
|
+
title: digitalAsset.assetUrl,
|
|
3048
|
+
children: digitalAsset.assetUrl
|
|
3049
|
+
}
|
|
3050
|
+
)
|
|
3051
|
+
] })
|
|
3052
|
+
] }),
|
|
3053
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3054
|
+
"span",
|
|
3055
|
+
{
|
|
3056
|
+
onClick: () => !isDisabled && deleteFile(index),
|
|
3057
|
+
className: isDisabled ? "cursor-not-allowed opacity-50" : "cursor-pointer",
|
|
3058
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Icon_default, { className: "w-4 h-4 text-primary", name: "delete" })
|
|
3059
|
+
}
|
|
3060
|
+
)
|
|
3061
|
+
] }, index)) })
|
|
3062
|
+
] })
|
|
3063
|
+
] });
|
|
3064
|
+
};
|
|
3065
|
+
var AssetUpload_default = AssetUpload;
|
|
3066
|
+
|
|
3067
|
+
// src/components/controls/edit/InputControl.tsx
|
|
3068
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
3069
|
+
var InputControl = import_react31.default.forwardRef(
|
|
2764
3070
|
(props, ref) => {
|
|
2765
3071
|
const ControlComponents = {
|
|
2766
3072
|
[InputControlType_default.lineTextInput]: LineTextInput_default,
|
|
@@ -2778,23 +3084,24 @@ var InputControl = import_react30.default.forwardRef(
|
|
|
2778
3084
|
[InputControlType_default.selectWithSearchInput]: SelectWithSearchInput_default,
|
|
2779
3085
|
[InputControlType_default.selectWithSearchPanel]: SelectWithSearchPanel_default,
|
|
2780
3086
|
[InputControlType_default.booleanSelect]: BooleanSelect_default,
|
|
2781
|
-
[InputControlType_default.timeInput]: TimeInput_default
|
|
3087
|
+
[InputControlType_default.timeInput]: TimeInput_default,
|
|
3088
|
+
[InputControlType_default.asset]: AssetUpload_default
|
|
2782
3089
|
};
|
|
2783
3090
|
const SelectedControlComponent = ControlComponents[props.controlType];
|
|
2784
|
-
return /* @__PURE__ */ (0,
|
|
3091
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_react31.default.Fragment, { children: SelectedControlComponent ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(SelectedControlComponent, { ...props }) : "Control not found" });
|
|
2785
3092
|
}
|
|
2786
3093
|
);
|
|
2787
3094
|
InputControl.displayName = "InputControl";
|
|
2788
3095
|
var InputControl_default = InputControl;
|
|
2789
3096
|
|
|
2790
3097
|
// src/components/pageRenderingEngine/PageBodyRenderer.tsx
|
|
2791
|
-
var
|
|
3098
|
+
var import_react50 = __toESM(require("react"));
|
|
2792
3099
|
|
|
2793
3100
|
// src/components/pageRenderingEngine/nodes/ParagraphNode.tsx
|
|
2794
|
-
var
|
|
3101
|
+
var import_react36 = __toESM(require("react"));
|
|
2795
3102
|
|
|
2796
3103
|
// src/components/pageRenderingEngine/nodes/TextNode.tsx
|
|
2797
|
-
var
|
|
3104
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
2798
3105
|
var TextNode = (props) => {
|
|
2799
3106
|
function cssStringToJson(cssString) {
|
|
2800
3107
|
const styleObject = {};
|
|
@@ -2852,60 +3159,37 @@ var TextNode = (props) => {
|
|
|
2852
3159
|
});
|
|
2853
3160
|
}
|
|
2854
3161
|
function renderWithLineBreaks(text) {
|
|
2855
|
-
return text.split("\n").map((line, index, arr) => /* @__PURE__ */ (0,
|
|
3162
|
+
return text.split("\n").map((line, index, arr) => /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("span", { children: [
|
|
2856
3163
|
line,
|
|
2857
|
-
index < arr.length - 1 && /* @__PURE__ */ (0,
|
|
3164
|
+
index < arr.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("br", {})
|
|
2858
3165
|
] }, index));
|
|
2859
3166
|
}
|
|
2860
3167
|
const displayText = props.linkText ? props.linkText : props.node.text;
|
|
2861
3168
|
const finalText = props.dataitem && props.linkText ? displayText : props.dataitem ? replacePlaceholders(props.node.text, props.dataitem) : props.node.text;
|
|
2862
3169
|
return (
|
|
2863
3170
|
// @ts-expect-error custom code
|
|
2864
|
-
/* @__PURE__ */ (0,
|
|
3171
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { style: { ...styles }, className: getFormatClass(props.node.format), children: typeof finalText === "string" ? renderWithLineBreaks(finalText) : finalText })
|
|
2865
3172
|
);
|
|
2866
3173
|
};
|
|
2867
3174
|
var TextNode_default = TextNode;
|
|
2868
3175
|
|
|
2869
3176
|
// src/components/pageRenderingEngine/nodes/LineBreakNode.tsx
|
|
2870
|
-
var
|
|
3177
|
+
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
2871
3178
|
var LineBreakNode = () => {
|
|
2872
|
-
return /* @__PURE__ */ (0,
|
|
3179
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "py-0.5 lg:py-1.5" });
|
|
2873
3180
|
};
|
|
2874
3181
|
var LineBreakNode_default = LineBreakNode;
|
|
2875
3182
|
|
|
2876
3183
|
// src/components/pageRenderingEngine/nodes/LinkNode.tsx
|
|
2877
|
-
var
|
|
2878
|
-
|
|
2879
|
-
// src/components/pageRenderingEngine/nodes/ImageNode.tsx
|
|
2880
|
-
var import_react32 = __toESM(require("react"));
|
|
2881
|
-
|
|
2882
|
-
// src/components/utilities/AssetUtility.tsx
|
|
2883
|
-
var AssetUtility = class {
|
|
2884
|
-
constructor() {
|
|
2885
|
-
}
|
|
2886
|
-
static resolveUrl(assetBaseUrl, url) {
|
|
2887
|
-
if (!url) return void 0;
|
|
2888
|
-
if (url.startsWith("http")) return url;
|
|
2889
|
-
if (!assetBaseUrl) return url;
|
|
2890
|
-
return `${assetBaseUrl}/${url}`;
|
|
2891
|
-
}
|
|
2892
|
-
// static getAssetUrl(apiBaseUrl: string) {
|
|
2893
|
-
// let domainName = apiBaseUrl.replace("https://", "");
|
|
2894
|
-
// return `https://cdn.g-assets.com/${domainName}`;
|
|
2895
|
-
// }
|
|
2896
|
-
static getAssetFullPath(apiBaseUrl, relativePath) {
|
|
2897
|
-
const domainName = apiBaseUrl.replace("https://", "");
|
|
2898
|
-
return `https://cdn.g-assets.com/${domainName}/${relativePath}`;
|
|
2899
|
-
}
|
|
2900
|
-
};
|
|
2901
|
-
var AssetUtility_default = AssetUtility;
|
|
3184
|
+
var import_react35 = __toESM(require("react"));
|
|
2902
3185
|
|
|
2903
3186
|
// src/components/pageRenderingEngine/nodes/ImageNode.tsx
|
|
3187
|
+
var import_react33 = __toESM(require("react"));
|
|
2904
3188
|
var import_dynamic = __toESM(require("next/dynamic"));
|
|
2905
3189
|
|
|
2906
3190
|
// src/components/DeviceAssetSelector.tsx
|
|
2907
3191
|
init_HlsPlayer();
|
|
2908
|
-
var
|
|
3192
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
2909
3193
|
var DeviceAssetSelector = ({
|
|
2910
3194
|
assets,
|
|
2911
3195
|
assetBaseUrl,
|
|
@@ -2980,7 +3264,7 @@ var DeviceAssetSelector = ({
|
|
|
2980
3264
|
const formatClasses = FormatClass[nodeProps?.format || ""] || "";
|
|
2981
3265
|
const renderMedia = () => {
|
|
2982
3266
|
if (isHls) {
|
|
2983
|
-
return /* @__PURE__ */ (0,
|
|
3267
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
2984
3268
|
HlsPlayer_default,
|
|
2985
3269
|
{
|
|
2986
3270
|
assetUrl: resolvedAssetUrl,
|
|
@@ -2997,7 +3281,7 @@ var DeviceAssetSelector = ({
|
|
|
2997
3281
|
} else {
|
|
2998
3282
|
return (
|
|
2999
3283
|
/* eslint-disable-next-line @next/next/no-img-element */
|
|
3000
|
-
/* @__PURE__ */ (0,
|
|
3284
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
3001
3285
|
"img",
|
|
3002
3286
|
{
|
|
3003
3287
|
style: styles,
|
|
@@ -3013,17 +3297,17 @@ var DeviceAssetSelector = ({
|
|
|
3013
3297
|
}
|
|
3014
3298
|
};
|
|
3015
3299
|
if (width) {
|
|
3016
|
-
return /* @__PURE__ */ (0,
|
|
3300
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { style: { width }, children: renderMedia() });
|
|
3017
3301
|
}
|
|
3018
3302
|
if (nodeProps?.format) {
|
|
3019
|
-
return /* @__PURE__ */ (0,
|
|
3303
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: `flex ${formatClasses}`, children: renderMedia() });
|
|
3020
3304
|
}
|
|
3021
3305
|
return renderMedia();
|
|
3022
3306
|
};
|
|
3023
3307
|
var DeviceAssetSelector_default = DeviceAssetSelector;
|
|
3024
3308
|
|
|
3025
3309
|
// src/components/pageRenderingEngine/nodes/ImageNode.tsx
|
|
3026
|
-
var
|
|
3310
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
3027
3311
|
var HlsPlayer2 = (0, import_dynamic.default)(() => Promise.resolve().then(() => (init_HlsPlayer(), HlsPlayer_exports)), {
|
|
3028
3312
|
ssr: false
|
|
3029
3313
|
});
|
|
@@ -3066,7 +3350,7 @@ var ImageNode = (props) => {
|
|
|
3066
3350
|
console.error("Error parsing assets in ImageNode:", error);
|
|
3067
3351
|
}
|
|
3068
3352
|
if (assets && assets.length > 0) {
|
|
3069
|
-
return /* @__PURE__ */ (0,
|
|
3353
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_jsx_runtime43.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
3070
3354
|
DeviceAssetSelector_default,
|
|
3071
3355
|
{
|
|
3072
3356
|
device: props.device,
|
|
@@ -3115,7 +3399,7 @@ var ImageNode = (props) => {
|
|
|
3115
3399
|
const isHls = imageUrl?.endsWith(".m3u8");
|
|
3116
3400
|
const renderMedia = () => {
|
|
3117
3401
|
if (isHls) {
|
|
3118
|
-
return /* @__PURE__ */ (0,
|
|
3402
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
3119
3403
|
HlsPlayer2,
|
|
3120
3404
|
{
|
|
3121
3405
|
assetUrl: imageUrl,
|
|
@@ -3130,7 +3414,7 @@ var ImageNode = (props) => {
|
|
|
3130
3414
|
}
|
|
3131
3415
|
);
|
|
3132
3416
|
} else {
|
|
3133
|
-
return /* @__PURE__ */ (0,
|
|
3417
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_react33.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
3134
3418
|
"img",
|
|
3135
3419
|
{
|
|
3136
3420
|
style: styles,
|
|
@@ -3145,7 +3429,7 @@ var ImageNode = (props) => {
|
|
|
3145
3429
|
}
|
|
3146
3430
|
};
|
|
3147
3431
|
if (props.node.width) {
|
|
3148
|
-
return /* @__PURE__ */ (0,
|
|
3432
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: `flex ${formatClasses}`, children: renderMedia() });
|
|
3149
3433
|
}
|
|
3150
3434
|
return renderMedia();
|
|
3151
3435
|
};
|
|
@@ -3153,34 +3437,8 @@ var ImageNode_default = ImageNode;
|
|
|
3153
3437
|
|
|
3154
3438
|
// src/components/pageRenderingEngine/nodes/LinkNode.tsx
|
|
3155
3439
|
init_StyleTypes();
|
|
3156
|
-
|
|
3157
|
-
// src/components/dataForm/Hyperlink.tsx
|
|
3158
|
-
var import_link = __toESM(require("next/link"));
|
|
3159
|
-
init_StyleTypes();
|
|
3160
|
-
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
3161
|
-
function Hyperlink(props) {
|
|
3162
|
-
let linkClass = props.linkType ? buttonClasses.get(props.linkType) : buttonClasses.get("Link" /* Link */);
|
|
3163
|
-
const target = props?.href?.startsWith("http") ? "_blank" : "_self";
|
|
3164
|
-
const additionalProps = {};
|
|
3165
|
-
if (target == "_blank") {
|
|
3166
|
-
additionalProps.rel = "noopener noreferrer";
|
|
3167
|
-
}
|
|
3168
|
-
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children: props.href ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3169
|
-
import_link.default,
|
|
3170
|
-
{
|
|
3171
|
-
href: props.href,
|
|
3172
|
-
prefetch: false,
|
|
3173
|
-
className: [linkClass, props.className].filter(Boolean).join(" "),
|
|
3174
|
-
...additionalProps,
|
|
3175
|
-
target,
|
|
3176
|
-
children: props.children
|
|
3177
|
-
}
|
|
3178
|
-
) : props.isHeading ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("h5", { className: props.className + "inline-block", children: props.children }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { className: props.className, children: props.children }) });
|
|
3179
|
-
}
|
|
3180
|
-
|
|
3181
|
-
// src/components/pageRenderingEngine/nodes/LinkNode.tsx
|
|
3182
3440
|
var import_dynamic2 = __toESM(require("next/dynamic"));
|
|
3183
|
-
var
|
|
3441
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
3184
3442
|
var LinkNodeButton2 = (0, import_dynamic2.default)(() => Promise.resolve().then(() => (init_LinkNodeButton(), LinkNodeButton_exports)), {
|
|
3185
3443
|
ssr: false
|
|
3186
3444
|
});
|
|
@@ -3227,13 +3485,13 @@ var LinkNode = (props) => {
|
|
|
3227
3485
|
const isButton = node.isButton === true;
|
|
3228
3486
|
const renderChildren = () => {
|
|
3229
3487
|
if (!node.children || node.children.length === 0) return null;
|
|
3230
|
-
return /* @__PURE__ */ (0,
|
|
3488
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_jsx_runtime45.Fragment, { children: node.children.map((childNode, index) => {
|
|
3231
3489
|
const SelectedNode = NodeTypes2[childNode.type];
|
|
3232
3490
|
if (!SelectedNode) {
|
|
3233
3491
|
console.warn("Unknown node type:", childNode.type);
|
|
3234
3492
|
return null;
|
|
3235
3493
|
}
|
|
3236
|
-
return /* @__PURE__ */ (0,
|
|
3494
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_react35.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
3237
3495
|
SelectedNode,
|
|
3238
3496
|
{
|
|
3239
3497
|
node: childNode,
|
|
@@ -3246,15 +3504,15 @@ var LinkNode = (props) => {
|
|
|
3246
3504
|
};
|
|
3247
3505
|
const renderFallback = () => {
|
|
3248
3506
|
if ((!node.children || node.children.length === 0) && linkText) {
|
|
3249
|
-
return /* @__PURE__ */ (0,
|
|
3507
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { children: linkText });
|
|
3250
3508
|
}
|
|
3251
3509
|
if ((!node.children || node.children.length === 0) && !linkText) {
|
|
3252
|
-
return /* @__PURE__ */ (0,
|
|
3510
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("br", {});
|
|
3253
3511
|
}
|
|
3254
3512
|
return null;
|
|
3255
3513
|
};
|
|
3256
3514
|
if (isButton) {
|
|
3257
|
-
return /* @__PURE__ */ (0,
|
|
3515
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
3258
3516
|
LinkNodeButton2,
|
|
3259
3517
|
{
|
|
3260
3518
|
node,
|
|
@@ -3272,7 +3530,7 @@ var LinkNode = (props) => {
|
|
|
3272
3530
|
}
|
|
3273
3531
|
);
|
|
3274
3532
|
}
|
|
3275
|
-
return /* @__PURE__ */ (0,
|
|
3533
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
3276
3534
|
Hyperlink,
|
|
3277
3535
|
{
|
|
3278
3536
|
href: linkUrl || "#",
|
|
@@ -3288,10 +3546,10 @@ var LinkNode = (props) => {
|
|
|
3288
3546
|
var LinkNode_default = LinkNode;
|
|
3289
3547
|
|
|
3290
3548
|
// src/components/pageRenderingEngine/nodes/SVGIconNode.tsx
|
|
3291
|
-
var
|
|
3549
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
3292
3550
|
var SVGIconNode = ({ node }) => {
|
|
3293
3551
|
if (!node?.svgCode) return null;
|
|
3294
|
-
return /* @__PURE__ */ (0,
|
|
3552
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
3295
3553
|
"span",
|
|
3296
3554
|
{
|
|
3297
3555
|
style: {
|
|
@@ -3308,7 +3566,7 @@ var SVGIconNode_default = SVGIconNode;
|
|
|
3308
3566
|
|
|
3309
3567
|
// src/components/pageRenderingEngine/nodes/EquationNode.tsx
|
|
3310
3568
|
var import_katex = __toESM(require("katex"));
|
|
3311
|
-
var
|
|
3569
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
3312
3570
|
var EquationNode = ({ node }) => {
|
|
3313
3571
|
const { equation, inline } = node;
|
|
3314
3572
|
let html = "";
|
|
@@ -3323,7 +3581,7 @@ var EquationNode = ({ node }) => {
|
|
|
3323
3581
|
});
|
|
3324
3582
|
}
|
|
3325
3583
|
if (inline) {
|
|
3326
|
-
return /* @__PURE__ */ (0,
|
|
3584
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
3327
3585
|
"span",
|
|
3328
3586
|
{
|
|
3329
3587
|
className: "katex-inline",
|
|
@@ -3331,7 +3589,7 @@ var EquationNode = ({ node }) => {
|
|
|
3331
3589
|
}
|
|
3332
3590
|
);
|
|
3333
3591
|
}
|
|
3334
|
-
return /* @__PURE__ */ (0,
|
|
3592
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
3335
3593
|
"div",
|
|
3336
3594
|
{
|
|
3337
3595
|
className: "katex-block my-3 text-center",
|
|
@@ -3342,7 +3600,7 @@ var EquationNode = ({ node }) => {
|
|
|
3342
3600
|
var EquationNode_default = EquationNode;
|
|
3343
3601
|
|
|
3344
3602
|
// src/components/pageRenderingEngine/nodes/DatafieldNode.tsx
|
|
3345
|
-
var
|
|
3603
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
3346
3604
|
function getNestedProperty(obj, path) {
|
|
3347
3605
|
if (!obj || !path) return null;
|
|
3348
3606
|
if (path.includes(".")) {
|
|
@@ -3355,7 +3613,7 @@ function getNestedProperty(obj, path) {
|
|
|
3355
3613
|
}
|
|
3356
3614
|
const value = obj[path];
|
|
3357
3615
|
if (Array.isArray(value)) {
|
|
3358
|
-
return value.map((item, index) => /* @__PURE__ */ (0,
|
|
3616
|
+
return value.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { children: String(item) }, index));
|
|
3359
3617
|
}
|
|
3360
3618
|
return value;
|
|
3361
3619
|
}
|
|
@@ -3416,7 +3674,7 @@ var DatafieldNode = (props) => {
|
|
|
3416
3674
|
const dataType = props.node.dataType;
|
|
3417
3675
|
if (isEmptyValue) return null;
|
|
3418
3676
|
if (dataType === "rawContent") {
|
|
3419
|
-
return /* @__PURE__ */ (0,
|
|
3677
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3420
3678
|
PageBodyRenderer_default,
|
|
3421
3679
|
{
|
|
3422
3680
|
rawBody: String(value ?? `@databound[${fieldName}]`),
|
|
@@ -3432,12 +3690,12 @@ var DatafieldNode = (props) => {
|
|
|
3432
3690
|
}
|
|
3433
3691
|
);
|
|
3434
3692
|
}
|
|
3435
|
-
return /* @__PURE__ */ (0,
|
|
3693
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3436
3694
|
"span",
|
|
3437
3695
|
{
|
|
3438
3696
|
className: `datafield-node ${props.node.format < Formats.length ? Formats[props.node.format] : ""}`,
|
|
3439
3697
|
style: styles,
|
|
3440
|
-
children: /* @__PURE__ */ (0,
|
|
3698
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3441
3699
|
ViewControl_default,
|
|
3442
3700
|
{
|
|
3443
3701
|
controlType: dataType,
|
|
@@ -3450,7 +3708,7 @@ var DatafieldNode = (props) => {
|
|
|
3450
3708
|
var DatafieldNode_default = DatafieldNode;
|
|
3451
3709
|
|
|
3452
3710
|
// src/components/pageRenderingEngine/nodes/ParagraphNode.tsx
|
|
3453
|
-
var
|
|
3711
|
+
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
3454
3712
|
var ParagraphNode = (props) => {
|
|
3455
3713
|
const NodeTypes2 = {
|
|
3456
3714
|
["text"]: TextNode_default,
|
|
@@ -3470,9 +3728,9 @@ var ParagraphNode = (props) => {
|
|
|
3470
3728
|
const isInlineOnlyParent = props.parentTag === "summary";
|
|
3471
3729
|
const hasChildren = props.node.children && props.node.children.length > 0;
|
|
3472
3730
|
if (isInlineOnlyParent) {
|
|
3473
|
-
return /* @__PURE__ */ (0,
|
|
3731
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_jsx_runtime49.Fragment, { children: hasChildren && props.node.children.map((node, index) => {
|
|
3474
3732
|
const SelectedNode = NodeTypes2[node.type];
|
|
3475
|
-
return /* @__PURE__ */ (0,
|
|
3733
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_react36.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
3476
3734
|
SelectedNode,
|
|
3477
3735
|
{
|
|
3478
3736
|
node,
|
|
@@ -3484,10 +3742,10 @@ var ParagraphNode = (props) => {
|
|
|
3484
3742
|
) }, index);
|
|
3485
3743
|
}) });
|
|
3486
3744
|
}
|
|
3487
|
-
return /* @__PURE__ */ (0,
|
|
3745
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: " " + formatClasses, children: [
|
|
3488
3746
|
hasChildren && props.node.children.map((node, index) => {
|
|
3489
3747
|
const SelectedNode = NodeTypes2[node.type];
|
|
3490
|
-
return /* @__PURE__ */ (0,
|
|
3748
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_react36.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
3491
3749
|
SelectedNode,
|
|
3492
3750
|
{
|
|
3493
3751
|
node,
|
|
@@ -3498,14 +3756,14 @@ var ParagraphNode = (props) => {
|
|
|
3498
3756
|
}
|
|
3499
3757
|
) }, index);
|
|
3500
3758
|
}),
|
|
3501
|
-
!hasChildren && /* @__PURE__ */ (0,
|
|
3759
|
+
!hasChildren && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "py-1.5 lg:py-2" })
|
|
3502
3760
|
] });
|
|
3503
3761
|
};
|
|
3504
3762
|
var ParagraphNode_default = ParagraphNode;
|
|
3505
3763
|
|
|
3506
3764
|
// src/components/pageRenderingEngine/nodes/HeadingNode.tsx
|
|
3507
|
-
var
|
|
3508
|
-
var
|
|
3765
|
+
var import_react37 = __toESM(require("react"));
|
|
3766
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
3509
3767
|
var HeadingNode = (props) => {
|
|
3510
3768
|
const NodeTypes2 = {
|
|
3511
3769
|
["text"]: TextNode_default,
|
|
@@ -3521,23 +3779,23 @@ var HeadingNode = (props) => {
|
|
|
3521
3779
|
{
|
|
3522
3780
|
}
|
|
3523
3781
|
const formatClasses = FormatClass[props.node.format] || "";
|
|
3524
|
-
return /* @__PURE__ */ (0,
|
|
3782
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_jsx_runtime50.Fragment, { children: import_react37.default.createElement(
|
|
3525
3783
|
HeadingTag,
|
|
3526
3784
|
{ className: formatClasses },
|
|
3527
3785
|
props.node.children && props.node.children.map((childNode, index) => {
|
|
3528
3786
|
const SelectedNode = NodeTypes2[childNode.type];
|
|
3529
|
-
return /* @__PURE__ */ (0,
|
|
3787
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_react37.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(SelectedNode, { node: childNode, dataitem: props.dataitem, session: props.session, apiBaseUrl: props.apiBaseUrl, routeParameters: props.routeParameters }) }, index);
|
|
3530
3788
|
})
|
|
3531
3789
|
) });
|
|
3532
3790
|
};
|
|
3533
3791
|
var HeadingNode_default = HeadingNode;
|
|
3534
3792
|
|
|
3535
3793
|
// src/components/pageRenderingEngine/nodes/ListNode.tsx
|
|
3536
|
-
var
|
|
3794
|
+
var import_react39 = __toESM(require("react"));
|
|
3537
3795
|
|
|
3538
3796
|
// src/components/pageRenderingEngine/nodes/ListItemNode.tsx
|
|
3539
|
-
var
|
|
3540
|
-
var
|
|
3797
|
+
var import_react38 = __toESM(require("react"));
|
|
3798
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
3541
3799
|
var ListItemNode = (props) => {
|
|
3542
3800
|
const NodeTypes2 = {
|
|
3543
3801
|
text: TextNode_default,
|
|
@@ -3554,66 +3812,66 @@ var ListItemNode = (props) => {
|
|
|
3554
3812
|
liStyle.fontSize = match[1].trim();
|
|
3555
3813
|
}
|
|
3556
3814
|
}
|
|
3557
|
-
return /* @__PURE__ */ (0,
|
|
3815
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("li", { style: liStyle, children: props.node.children && props.node.children.map((node, index) => {
|
|
3558
3816
|
const SelectedNode = NodeTypes2[node.type];
|
|
3559
3817
|
if (node.type === "linebreak") {
|
|
3560
3818
|
if (!foundFirstBreak) {
|
|
3561
3819
|
foundFirstBreak = true;
|
|
3562
|
-
return /* @__PURE__ */ (0,
|
|
3820
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", {}, index);
|
|
3563
3821
|
} else {
|
|
3564
|
-
return /* @__PURE__ */ (0,
|
|
3822
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "py-1 lg:py-2" }, index);
|
|
3565
3823
|
}
|
|
3566
3824
|
} else {
|
|
3567
3825
|
foundFirstBreak = false;
|
|
3568
|
-
return /* @__PURE__ */ (0,
|
|
3826
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react38.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(SelectedNode, { node, dataitem: props.dataitem, routeParameters: props.routeParameters }) }, index);
|
|
3569
3827
|
}
|
|
3570
3828
|
}) });
|
|
3571
3829
|
};
|
|
3572
3830
|
var ListItemNode_default = ListItemNode;
|
|
3573
3831
|
|
|
3574
3832
|
// src/components/pageRenderingEngine/nodes/ListNode.tsx
|
|
3575
|
-
var
|
|
3833
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
3576
3834
|
var ListNode = (props) => {
|
|
3577
3835
|
const NodeTypes2 = {
|
|
3578
3836
|
listitem: ListItemNode_default
|
|
3579
3837
|
};
|
|
3580
|
-
return /* @__PURE__ */ (0,
|
|
3581
|
-
props.node.listType == "bullet" && /* @__PURE__ */ (0,
|
|
3838
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(import_react39.default.Fragment, { children: [
|
|
3839
|
+
props.node.listType == "bullet" && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("ul", { children: props.node.children && props.node.children.map((node, index) => {
|
|
3582
3840
|
const SelectedNode = NodeTypes2[node.type];
|
|
3583
|
-
return /* @__PURE__ */ (0,
|
|
3841
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react39.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(SelectedNode, { node, dataitem: props.dataitem, routeParameters: props.routeParameters }) }, index);
|
|
3584
3842
|
}) }),
|
|
3585
|
-
props.node.listType == "number" && /* @__PURE__ */ (0,
|
|
3843
|
+
props.node.listType == "number" && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("ol", { children: props.node.children && props.node.children.map((node, index) => {
|
|
3586
3844
|
const SelectedNode = NodeTypes2[node.type];
|
|
3587
|
-
return /* @__PURE__ */ (0,
|
|
3845
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react39.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(SelectedNode, { node, dataitem: props.dataitem, routeParameters: props.routeParameters }) }, index);
|
|
3588
3846
|
}) })
|
|
3589
3847
|
] });
|
|
3590
3848
|
};
|
|
3591
3849
|
var ListNode_default = ListNode;
|
|
3592
3850
|
|
|
3593
3851
|
// src/components/pageRenderingEngine/nodes/QuoteNode.tsx
|
|
3594
|
-
var
|
|
3595
|
-
var
|
|
3852
|
+
var import_react40 = __toESM(require("react"));
|
|
3853
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
3596
3854
|
var QuoteNode = (props) => {
|
|
3597
3855
|
const NodeTypes2 = {
|
|
3598
3856
|
["text"]: TextNode_default,
|
|
3599
3857
|
["linebreak"]: LineBreakNode_default,
|
|
3600
3858
|
["link"]: LinkNode_default
|
|
3601
3859
|
};
|
|
3602
|
-
return /* @__PURE__ */ (0,
|
|
3860
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("blockquote", { children: props.node.children && props.node.children.map((node, index) => {
|
|
3603
3861
|
const SelectedNode = NodeTypes2[node.type];
|
|
3604
|
-
return /* @__PURE__ */ (0,
|
|
3862
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_react40.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SelectedNode, { node, session: props.session, apiBaseUrl: props.apiBaseUrl, routeParameters: props.routeParameters }) }, index);
|
|
3605
3863
|
}) });
|
|
3606
3864
|
};
|
|
3607
3865
|
var QuoteNode_default = QuoteNode;
|
|
3608
3866
|
|
|
3609
3867
|
// src/components/pageRenderingEngine/nodes/CodeNode.tsx
|
|
3610
|
-
var
|
|
3868
|
+
var import_react42 = __toESM(require("react"));
|
|
3611
3869
|
var import_dynamic3 = __toESM(require("next/dynamic"));
|
|
3612
|
-
var
|
|
3870
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
3613
3871
|
var CopyButton2 = (0, import_dynamic3.default)(() => Promise.resolve().then(() => (init_CopyButton(), CopyButton_exports)), {
|
|
3614
3872
|
ssr: false,
|
|
3615
3873
|
// optional: fallback UI while loading
|
|
3616
|
-
loading: () => /* @__PURE__ */ (0,
|
|
3874
|
+
loading: () => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { className: "text-gray-400 text-xs", children: "Copy" })
|
|
3617
3875
|
});
|
|
3618
3876
|
var CodeNode = (props) => {
|
|
3619
3877
|
const NodeTypes2 = {
|
|
@@ -3627,14 +3885,14 @@ var CodeNode = (props) => {
|
|
|
3627
3885
|
if (node.type === "link") return node.text || node.url || "";
|
|
3628
3886
|
return "";
|
|
3629
3887
|
}).join("") ?? "";
|
|
3630
|
-
return /* @__PURE__ */ (0,
|
|
3631
|
-
/* @__PURE__ */ (0,
|
|
3632
|
-
/* @__PURE__ */ (0,
|
|
3633
|
-
/* @__PURE__ */ (0,
|
|
3888
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { children: [
|
|
3889
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "flex items-center relative bg-neutral-strong px-4 py-3 text-xs font-sans justify-between rounded-t-md ", children: [
|
|
3890
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { children: "Code Snippet" }),
|
|
3891
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)(CopyButton2, { text: textContent })
|
|
3634
3892
|
] }),
|
|
3635
|
-
/* @__PURE__ */ (0,
|
|
3893
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("code", { className: "bg-neutral-soft p-4 text-sm whitespace-pre-wrap border border-2 block", children: props.node.children && props.node.children.map((node, index) => {
|
|
3636
3894
|
const SelectedNode = NodeTypes2[node.type];
|
|
3637
|
-
return /* @__PURE__ */ (0,
|
|
3895
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react42.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
3638
3896
|
SelectedNode,
|
|
3639
3897
|
{
|
|
3640
3898
|
node,
|
|
@@ -3649,15 +3907,15 @@ var CodeNode = (props) => {
|
|
|
3649
3907
|
var CodeNode_default = CodeNode;
|
|
3650
3908
|
|
|
3651
3909
|
// src/components/pageRenderingEngine/nodes/HorizontalRuleNode.tsx
|
|
3652
|
-
var
|
|
3910
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
3653
3911
|
var HorizontalRuleNode = () => {
|
|
3654
|
-
return /* @__PURE__ */ (0,
|
|
3912
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("hr", {});
|
|
3655
3913
|
};
|
|
3656
3914
|
var HorizontalRuleNode_default = HorizontalRuleNode;
|
|
3657
3915
|
|
|
3658
3916
|
// src/components/pageRenderingEngine/nodes/WidgetNode.tsx
|
|
3659
|
-
var
|
|
3660
|
-
var
|
|
3917
|
+
var import_react43 = __toESM(require("react"));
|
|
3918
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
3661
3919
|
var WidgetNode = (props) => {
|
|
3662
3920
|
const getWidgetParameters = () => {
|
|
3663
3921
|
const widgetInputParameters = {
|
|
@@ -3714,7 +3972,7 @@ var WidgetNode = (props) => {
|
|
|
3714
3972
|
};
|
|
3715
3973
|
const widgetCode = props.node?.widgetCode;
|
|
3716
3974
|
if (!widgetCode) {
|
|
3717
|
-
return /* @__PURE__ */ (0,
|
|
3975
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_jsx_runtime57.Fragment, { children: "Invalid widget" });
|
|
3718
3976
|
}
|
|
3719
3977
|
const widgetParams = getWidgetParameters();
|
|
3720
3978
|
const WidgetRenderer = props.widgetRenderer;
|
|
@@ -3723,7 +3981,7 @@ var WidgetNode = (props) => {
|
|
|
3723
3981
|
}
|
|
3724
3982
|
return (
|
|
3725
3983
|
// eslint-disable-next-line react-hooks/static-components
|
|
3726
|
-
/* @__PURE__ */ (0,
|
|
3984
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_react43.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
3727
3985
|
WidgetRenderer,
|
|
3728
3986
|
{
|
|
3729
3987
|
params: widgetParams,
|
|
@@ -3740,12 +3998,12 @@ var WidgetNode = (props) => {
|
|
|
3740
3998
|
var WidgetNode_default = WidgetNode;
|
|
3741
3999
|
|
|
3742
4000
|
// src/components/pageRenderingEngine/nodes/FormContainerNode.tsx
|
|
3743
|
-
var
|
|
4001
|
+
var import_react44 = __toESM(require("react"));
|
|
3744
4002
|
|
|
3745
4003
|
// src/components/pageRenderingEngine/nodes/InputControlNode.tsx
|
|
3746
|
-
var
|
|
4004
|
+
var import_jsx_runtime58 = require("react/jsx-runtime");
|
|
3747
4005
|
var InputControlNode = (props) => {
|
|
3748
|
-
return /* @__PURE__ */ (0,
|
|
4006
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
3749
4007
|
InputControl_default,
|
|
3750
4008
|
{
|
|
3751
4009
|
name: props.node.name,
|
|
@@ -3819,22 +4077,22 @@ var FormReducer_default = FormReducer;
|
|
|
3819
4077
|
|
|
3820
4078
|
// src/components/pageRenderingEngine/nodes/FormContainerNode.tsx
|
|
3821
4079
|
init_ServiceClient();
|
|
3822
|
-
var
|
|
4080
|
+
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
3823
4081
|
var FormContainerNode = (props) => {
|
|
3824
4082
|
const NodeTypes2 = {
|
|
3825
4083
|
["input-control"]: InputControlNode_default
|
|
3826
4084
|
};
|
|
3827
4085
|
const { node } = props;
|
|
3828
|
-
const formRef = (0,
|
|
4086
|
+
const formRef = (0, import_react44.useRef)(null);
|
|
3829
4087
|
const initialState = {
|
|
3830
4088
|
inputValues: {},
|
|
3831
4089
|
lastPropertyChanged: ""
|
|
3832
4090
|
};
|
|
3833
|
-
const [formState, dispatch] = (0,
|
|
3834
|
-
const handleInputChange = (0,
|
|
4091
|
+
const [formState, dispatch] = (0, import_react44.useReducer)(FormReducer_default, initialState);
|
|
4092
|
+
const handleInputChange = (0, import_react44.useCallback)((updatedValues) => {
|
|
3835
4093
|
dispatch({ type: FORM_INPUT_UPDATE, name: updatedValues.name, value: updatedValues.value });
|
|
3836
4094
|
}, [dispatch]);
|
|
3837
|
-
(0,
|
|
4095
|
+
(0, import_react44.useEffect)(() => {
|
|
3838
4096
|
const fetchInitialData = async () => {
|
|
3839
4097
|
const client = new ServiceClient_default(props.apiBaseUrl, props.session);
|
|
3840
4098
|
const response = await client.getSingle(props.node.dataFetchApi, props.routeParameters);
|
|
@@ -3849,12 +4107,12 @@ var FormContainerNode = (props) => {
|
|
|
3849
4107
|
};
|
|
3850
4108
|
fetchInitialData();
|
|
3851
4109
|
}, [props.apiBaseUrl, props.node, props.session, props.routeParameters]);
|
|
3852
|
-
return /* @__PURE__ */ (0,
|
|
4110
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("form", { className: "group space-y-6 pb-6 overflow-y-auto", noValidate: true, ref: formRef, children: [
|
|
3853
4111
|
node.children && node.children.map((node2, index) => {
|
|
3854
4112
|
{
|
|
3855
4113
|
}
|
|
3856
4114
|
const SelectedNode = NodeTypes2[node2.type];
|
|
3857
|
-
return /* @__PURE__ */ (0,
|
|
4115
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_react44.default.Fragment, { children: SelectedNode && node2.type == "input-control" && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
3858
4116
|
InputControlNode_default,
|
|
3859
4117
|
{
|
|
3860
4118
|
value: formState.inputValues[node2.name],
|
|
@@ -3863,17 +4121,17 @@ var FormContainerNode = (props) => {
|
|
|
3863
4121
|
}
|
|
3864
4122
|
) }, index);
|
|
3865
4123
|
}),
|
|
3866
|
-
node.children.length == 0 && /* @__PURE__ */ (0,
|
|
4124
|
+
node.children.length == 0 && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "py-0.5 lg:py-1.5" })
|
|
3867
4125
|
] });
|
|
3868
4126
|
};
|
|
3869
4127
|
var FormContainerNode_default = FormContainerNode;
|
|
3870
4128
|
|
|
3871
4129
|
// src/components/pageRenderingEngine/nodes/DivContainer.tsx
|
|
3872
|
-
var
|
|
4130
|
+
var import_react49 = __toESM(require("react"));
|
|
3873
4131
|
|
|
3874
4132
|
// src/components/pageRenderingEngine/nodes/EmbedNode.tsx
|
|
3875
4133
|
var import_dynamic4 = __toESM(require("next/dynamic"));
|
|
3876
|
-
var
|
|
4134
|
+
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
3877
4135
|
var IframeClient2 = (0, import_dynamic4.default)(() => Promise.resolve().then(() => (init_IframeClient(), IframeClient_exports)), {
|
|
3878
4136
|
ssr: false
|
|
3879
4137
|
});
|
|
@@ -3886,7 +4144,7 @@ var EmbedNode = (props) => {
|
|
|
3886
4144
|
} else {
|
|
3887
4145
|
src = props.node.embedSrc;
|
|
3888
4146
|
}
|
|
3889
|
-
return /* @__PURE__ */ (0,
|
|
4147
|
+
return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "aspect-video", children: src && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(IframeClient2, { src }) });
|
|
3890
4148
|
};
|
|
3891
4149
|
var EmbedNode_default = EmbedNode;
|
|
3892
4150
|
|
|
@@ -3894,8 +4152,8 @@ var EmbedNode_default = EmbedNode;
|
|
|
3894
4152
|
init_ServiceClient();
|
|
3895
4153
|
|
|
3896
4154
|
// src/components/Slider.tsx
|
|
3897
|
-
var
|
|
3898
|
-
var
|
|
4155
|
+
var import_react47 = __toESM(require("react"));
|
|
4156
|
+
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
3899
4157
|
var Slider = ({
|
|
3900
4158
|
children,
|
|
3901
4159
|
slidesToShow = 4,
|
|
@@ -3913,13 +4171,13 @@ var Slider = ({
|
|
|
3913
4171
|
pillStyle = "cumulative",
|
|
3914
4172
|
progressPosition = "bottom"
|
|
3915
4173
|
}) => {
|
|
3916
|
-
const [currentSlide, setCurrentSlide] = (0,
|
|
3917
|
-
const [transition, setTransition] = (0,
|
|
3918
|
-
const [slidesToShowState, setSlidesToShowState] = (0,
|
|
4174
|
+
const [currentSlide, setCurrentSlide] = (0, import_react47.useState)(0);
|
|
4175
|
+
const [transition, setTransition] = (0, import_react47.useState)(true);
|
|
4176
|
+
const [slidesToShowState, setSlidesToShowState] = (0, import_react47.useState)(
|
|
3919
4177
|
typeof slidesToShow === "number" ? slidesToShow : slidesToShow.large
|
|
3920
4178
|
);
|
|
3921
|
-
const [isPlaying, setIsPlaying] = (0,
|
|
3922
|
-
(0,
|
|
4179
|
+
const [isPlaying, setIsPlaying] = (0, import_react47.useState)(autoplay);
|
|
4180
|
+
(0, import_react47.useEffect)(() => {
|
|
3923
4181
|
if (typeof slidesToShow === "number") return;
|
|
3924
4182
|
const handleResize = () => {
|
|
3925
4183
|
if (window.innerWidth >= 1024) {
|
|
@@ -3934,7 +4192,7 @@ var Slider = ({
|
|
|
3934
4192
|
window.addEventListener("resize", handleResize);
|
|
3935
4193
|
return () => window.removeEventListener("resize", handleResize);
|
|
3936
4194
|
}, [slidesToShow]);
|
|
3937
|
-
(0,
|
|
4195
|
+
(0, import_react47.useEffect)(() => {
|
|
3938
4196
|
if (!autoplay) return;
|
|
3939
4197
|
const timer = setInterval(() => {
|
|
3940
4198
|
if (isPlaying) {
|
|
@@ -3943,7 +4201,7 @@ var Slider = ({
|
|
|
3943
4201
|
}, autoplay_speed);
|
|
3944
4202
|
return () => clearInterval(timer);
|
|
3945
4203
|
}, [autoplay, autoplay_speed, currentSlide, isPlaying]);
|
|
3946
|
-
const totalSlides =
|
|
4204
|
+
const totalSlides = import_react47.Children.count(children);
|
|
3947
4205
|
const maxSlide = totalSlides - slidesToShowState;
|
|
3948
4206
|
const nextSlide = () => {
|
|
3949
4207
|
if (currentSlide >= maxSlide) {
|
|
@@ -3988,16 +4246,16 @@ var Slider = ({
|
|
|
3988
4246
|
}
|
|
3989
4247
|
};
|
|
3990
4248
|
const translateX = -currentSlide * (100 / slidesToShowState);
|
|
3991
|
-
const slides =
|
|
3992
|
-
if (!
|
|
4249
|
+
const slides = import_react47.Children.map(children, (child, index) => {
|
|
4250
|
+
if (!import_react47.default.isValidElement(child)) return null;
|
|
3993
4251
|
const childProps = child.props;
|
|
3994
4252
|
const mergedClassName = `${childProps.className ?? ""} w-full`.trim();
|
|
3995
|
-
return /* @__PURE__ */ (0,
|
|
4253
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
3996
4254
|
"div",
|
|
3997
4255
|
{
|
|
3998
4256
|
className: `flex-none ${scaleOnHover ? "group hover:z-50" : ""} relative`,
|
|
3999
4257
|
style: { width: `calc(${100 / slidesToShowState}%)`, paddingRight: gap },
|
|
4000
|
-
children: (0,
|
|
4258
|
+
children: (0, import_react47.cloneElement)(child, {
|
|
4001
4259
|
className: mergedClassName
|
|
4002
4260
|
})
|
|
4003
4261
|
},
|
|
@@ -4015,14 +4273,14 @@ var Slider = ({
|
|
|
4015
4273
|
return "bottom-4";
|
|
4016
4274
|
}
|
|
4017
4275
|
};
|
|
4018
|
-
return /* @__PURE__ */ (0,
|
|
4276
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
|
|
4019
4277
|
"div",
|
|
4020
4278
|
{
|
|
4021
4279
|
className: `relative w-full overflow-hidden ${className}`,
|
|
4022
4280
|
onMouseEnter: handleMouseEnter,
|
|
4023
4281
|
onMouseLeave: handleMouseLeave,
|
|
4024
4282
|
children: [
|
|
4025
|
-
/* @__PURE__ */ (0,
|
|
4283
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4026
4284
|
"div",
|
|
4027
4285
|
{
|
|
4028
4286
|
className: "flex h-full",
|
|
@@ -4033,18 +4291,18 @@ var Slider = ({
|
|
|
4033
4291
|
children: slides
|
|
4034
4292
|
}
|
|
4035
4293
|
),
|
|
4036
|
-
show_arrows && /* @__PURE__ */ (0,
|
|
4037
|
-
/* @__PURE__ */ (0,
|
|
4294
|
+
show_arrows && /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_jsx_runtime63.Fragment, { children: [
|
|
4295
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4038
4296
|
ArrowButton,
|
|
4039
4297
|
{
|
|
4040
4298
|
direction: "left",
|
|
4041
4299
|
onClick: prevSlide,
|
|
4042
4300
|
visible: infinite_scroll || currentSlide > 0,
|
|
4043
4301
|
className: arrowClassName,
|
|
4044
|
-
children: /* @__PURE__ */ (0,
|
|
4302
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: "w-6 h-6", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M15.75 19.5 8.25 12l7.5-7.5" }) })
|
|
4045
4303
|
}
|
|
4046
4304
|
),
|
|
4047
|
-
/* @__PURE__ */ (0,
|
|
4305
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
|
|
4048
4306
|
ArrowButton,
|
|
4049
4307
|
{
|
|
4050
4308
|
direction: "right",
|
|
@@ -4052,13 +4310,13 @@ var Slider = ({
|
|
|
4052
4310
|
visible: infinite_scroll || currentSlide < maxSlide,
|
|
4053
4311
|
className: arrowClassName,
|
|
4054
4312
|
children: [
|
|
4055
|
-
/* @__PURE__ */ (0,
|
|
4313
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: "w-6 h-6", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "m8.25 4.5 7.5 7.5-7.5 7.5" }) }),
|
|
4056
4314
|
" "
|
|
4057
4315
|
]
|
|
4058
4316
|
}
|
|
4059
4317
|
)
|
|
4060
4318
|
] }),
|
|
4061
|
-
show_dots && /* @__PURE__ */ (0,
|
|
4319
|
+
show_dots && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: `absolute left-1/2 -translate-x-1/2 flex justify-center space-x-1.5 ${getProgressPositionClass()}`, children: Array.from({ length: totalSlides }).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4062
4320
|
ProgressPill,
|
|
4063
4321
|
{
|
|
4064
4322
|
active: index === currentSlide,
|
|
@@ -4084,7 +4342,7 @@ var ArrowButton = ({
|
|
|
4084
4342
|
visible,
|
|
4085
4343
|
children,
|
|
4086
4344
|
className = ""
|
|
4087
|
-
}) => /* @__PURE__ */ (0,
|
|
4345
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4088
4346
|
"button",
|
|
4089
4347
|
{
|
|
4090
4348
|
className: `
|
|
@@ -4110,13 +4368,13 @@ var ProgressPill = ({
|
|
|
4110
4368
|
currentSlide,
|
|
4111
4369
|
totalSlides
|
|
4112
4370
|
}) => {
|
|
4113
|
-
const [progress, setProgress] = (0,
|
|
4114
|
-
(0,
|
|
4371
|
+
const [progress, setProgress] = (0, import_react47.useState)(0);
|
|
4372
|
+
(0, import_react47.useEffect)(() => {
|
|
4115
4373
|
if (active) {
|
|
4116
4374
|
setProgress(0);
|
|
4117
4375
|
}
|
|
4118
4376
|
}, [active, index]);
|
|
4119
|
-
(0,
|
|
4377
|
+
(0, import_react47.useEffect)(() => {
|
|
4120
4378
|
if (!active || !isPlaying) {
|
|
4121
4379
|
if (!active) {
|
|
4122
4380
|
setProgress(0);
|
|
@@ -4171,7 +4429,7 @@ var ProgressPill = ({
|
|
|
4171
4429
|
const renderProgressBar = () => {
|
|
4172
4430
|
if (style === "modern" && isActive || style === "cumulative" && shouldShowProgress) {
|
|
4173
4431
|
const displayProgress = style === "cumulative" && isFilled ? 100 : progress;
|
|
4174
|
-
return /* @__PURE__ */ (0,
|
|
4432
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4175
4433
|
"div",
|
|
4176
4434
|
{
|
|
4177
4435
|
className: `absolute top-0 left-0 h-full rounded-full ${style === "cumulative" && isFilled ? activeClassName || "bg-white" : activeClassName || "bg-white"} transition-all duration-50 ease-linear`,
|
|
@@ -4183,7 +4441,7 @@ var ProgressPill = ({
|
|
|
4183
4441
|
};
|
|
4184
4442
|
const renderCumulativeFill = () => {
|
|
4185
4443
|
if (style === "cumulative" && isFilled && !isActive) {
|
|
4186
|
-
return /* @__PURE__ */ (0,
|
|
4444
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4187
4445
|
"div",
|
|
4188
4446
|
{
|
|
4189
4447
|
className: `absolute top-0 left-0 h-full rounded-full ${activeClassName || "bg-white"} transition-all duration-300`,
|
|
@@ -4193,7 +4451,7 @@ var ProgressPill = ({
|
|
|
4193
4451
|
}
|
|
4194
4452
|
return null;
|
|
4195
4453
|
};
|
|
4196
|
-
return /* @__PURE__ */ (0,
|
|
4454
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
|
|
4197
4455
|
"button",
|
|
4198
4456
|
{
|
|
4199
4457
|
className: `${baseClasses} ${getStyleClasses()}`,
|
|
@@ -4531,10 +4789,10 @@ var PathUtility = class {
|
|
|
4531
4789
|
var PathUtility_default = new PathUtility();
|
|
4532
4790
|
|
|
4533
4791
|
// src/components/NoDataFound.tsx
|
|
4534
|
-
var
|
|
4792
|
+
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
4535
4793
|
var NoDataFound = () => {
|
|
4536
|
-
return /* @__PURE__ */ (0,
|
|
4537
|
-
/* @__PURE__ */ (0,
|
|
4794
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex flex-col items-center justify-center py-12 px-4 text-center bg-neutral-weak", children: [
|
|
4795
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "mb-5", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "mx-auto w-20 h-20 rounded-full flex items-center justify-center bg-neutral-soft", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4538
4796
|
"svg",
|
|
4539
4797
|
{
|
|
4540
4798
|
className: "w-10 h-10",
|
|
@@ -4542,7 +4800,7 @@ var NoDataFound = () => {
|
|
|
4542
4800
|
stroke: "currentColor",
|
|
4543
4801
|
viewBox: "0 0 24 24",
|
|
4544
4802
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4545
|
-
children: /* @__PURE__ */ (0,
|
|
4803
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4546
4804
|
"path",
|
|
4547
4805
|
{
|
|
4548
4806
|
strokeLinecap: "round",
|
|
@@ -4553,70 +4811,19 @@ var NoDataFound = () => {
|
|
|
4553
4811
|
)
|
|
4554
4812
|
}
|
|
4555
4813
|
) }) }),
|
|
4556
|
-
/* @__PURE__ */ (0,
|
|
4557
|
-
/* @__PURE__ */ (0,
|
|
4814
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("h3", { className: "text-lg font-medium mb-2", children: "No data available" }),
|
|
4815
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: " max-w-sm mb-0", children: "No records found. Data may be empty or not available at the moment." })
|
|
4558
4816
|
] });
|
|
4559
4817
|
};
|
|
4560
4818
|
var NoDataFound_default = NoDataFound;
|
|
4561
4819
|
|
|
4562
4820
|
// src/components/Pagination.tsx
|
|
4563
|
-
var
|
|
4564
|
-
|
|
4565
|
-
// src/svg/chevron-updown.tsx
|
|
4566
|
-
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
4567
|
-
var ChevronUpDown = (props) => {
|
|
4568
|
-
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: props.className, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M8.25 15L12 18.75 15.75 15m-7.5-6L12 5.25 15.75 9" }) });
|
|
4569
|
-
};
|
|
4570
|
-
var chevron_updown_default = ChevronUpDown;
|
|
4571
|
-
|
|
4572
|
-
// src/svg/chevron-down.tsx
|
|
4573
|
-
var import_jsx_runtime60 = require("react/jsx-runtime");
|
|
4574
|
-
var ChevronDown = (props) => {
|
|
4575
|
-
return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: props.className, children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19.5 8.25l-7.5 7.5-7.5-7.5" }) });
|
|
4576
|
-
};
|
|
4577
|
-
var chevron_down_default = ChevronDown;
|
|
4578
|
-
|
|
4579
|
-
// src/svg/chevron-up.tsx
|
|
4580
|
-
var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
4581
|
-
var ChevronUp = (props) => {
|
|
4582
|
-
return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: props.className, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M4.5 15.75l7.5-7.5 7.5 7.5" }) });
|
|
4583
|
-
};
|
|
4584
|
-
var chevron_up_default = ChevronUp;
|
|
4585
|
-
|
|
4586
|
-
// src/svg/plus.tsx
|
|
4587
|
-
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
4588
|
-
var Plus = (props) => {
|
|
4589
|
-
return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: props.className, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M12 4.5v15m7.5-7.5h-15" }) });
|
|
4590
|
-
};
|
|
4591
|
-
var plus_default = Plus;
|
|
4592
|
-
|
|
4593
|
-
// src/svg/Icons.tsx
|
|
4594
|
-
var Icons = {
|
|
4595
|
-
chevronUpDown: chevron_updown_default,
|
|
4596
|
-
chevronDown: chevron_down_default,
|
|
4597
|
-
chevronUp: chevron_up_default,
|
|
4598
|
-
plus: plus_default
|
|
4599
|
-
};
|
|
4600
|
-
var Icons_default = Icons;
|
|
4601
|
-
|
|
4602
|
-
// src/svg/Icon.tsx
|
|
4603
|
-
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
4604
|
-
var Icon = ({ name, className, ...props }) => {
|
|
4605
|
-
const IconComponent = Icons_default[name];
|
|
4606
|
-
if (!IconComponent) {
|
|
4607
|
-
console.error(`Icon "${name}" not found.`);
|
|
4608
|
-
return null;
|
|
4609
|
-
}
|
|
4610
|
-
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(IconComponent, { ...props, className });
|
|
4611
|
-
};
|
|
4612
|
-
var Icon_default = Icon;
|
|
4613
|
-
|
|
4614
|
-
// src/components/Pagination.tsx
|
|
4821
|
+
var import_react48 = require("react");
|
|
4615
4822
|
init_StyleTypes();
|
|
4616
|
-
var
|
|
4823
|
+
var import_jsx_runtime65 = require("react/jsx-runtime");
|
|
4617
4824
|
var Pagination = (props) => {
|
|
4618
4825
|
const { dataset, path, query, showPageSizeSelector = false, showJumpToPage = false } = props;
|
|
4619
|
-
const builder = (0,
|
|
4826
|
+
const builder = (0, import_react48.useMemo)(() => {
|
|
4620
4827
|
const b = new OdataBuilder(path);
|
|
4621
4828
|
if (query) b.setQuery(query);
|
|
4622
4829
|
return b;
|
|
@@ -4657,7 +4864,7 @@ var Pagination = (props) => {
|
|
|
4657
4864
|
return range;
|
|
4658
4865
|
};
|
|
4659
4866
|
const paginationRange = getPaginationRange();
|
|
4660
|
-
const PageButton = ({ page, children }) => /* @__PURE__ */ (0,
|
|
4867
|
+
const PageButton = ({ page, children }) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
4661
4868
|
Hyperlink,
|
|
4662
4869
|
{
|
|
4663
4870
|
linkType: "Link" /* Link */,
|
|
@@ -4672,9 +4879,9 @@ var Pagination = (props) => {
|
|
|
4672
4879
|
);
|
|
4673
4880
|
const NavigationButton = ({ page, disabled, children }) => {
|
|
4674
4881
|
if (disabled) {
|
|
4675
|
-
return /* @__PURE__ */ (0,
|
|
4882
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "min-w-[20px] md:min-w-[40px] h-10 flex items-center justify-center px-2 md:px-3 border bg-neutral-base cursor-not-allowed", children });
|
|
4676
4883
|
}
|
|
4677
|
-
return /* @__PURE__ */ (0,
|
|
4884
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
4678
4885
|
Hyperlink,
|
|
4679
4886
|
{
|
|
4680
4887
|
className: "min-w-[20px] md:min-w-[40px] h-10 flex items-center justify-center px-2 md:px-3 border transition-colors duration-150",
|
|
@@ -4684,35 +4891,35 @@ var Pagination = (props) => {
|
|
|
4684
4891
|
);
|
|
4685
4892
|
};
|
|
4686
4893
|
if (totalPages <= 1 && totalItems === 0) return null;
|
|
4687
|
-
return /* @__PURE__ */ (0,
|
|
4688
|
-
/* @__PURE__ */ (0,
|
|
4689
|
-
/* @__PURE__ */ (0,
|
|
4894
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "py-6 border-t bg-default", children: [
|
|
4895
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex flex-col sm:flex-row items-center justify-between gap-4", children: [
|
|
4896
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "text-sm", children: [
|
|
4690
4897
|
"Showing ",
|
|
4691
|
-
/* @__PURE__ */ (0,
|
|
4898
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { className: "font-semibold", children: [
|
|
4692
4899
|
startItem,
|
|
4693
4900
|
"-",
|
|
4694
4901
|
endItem
|
|
4695
4902
|
] }),
|
|
4696
4903
|
" ",
|
|
4697
4904
|
"out of ",
|
|
4698
|
-
/* @__PURE__ */ (0,
|
|
4905
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "font-semibold", children: totalItems.toLocaleString() }),
|
|
4699
4906
|
" results"
|
|
4700
4907
|
] }),
|
|
4701
|
-
totalPages > 1 && /* @__PURE__ */ (0,
|
|
4702
|
-
/* @__PURE__ */ (0,
|
|
4908
|
+
totalPages > 1 && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center space-x-1", children: [
|
|
4909
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
4703
4910
|
NavigationButton,
|
|
4704
4911
|
{
|
|
4705
4912
|
page: activePageNumber - 1,
|
|
4706
4913
|
disabled: activePageNumber === 1,
|
|
4707
4914
|
children: [
|
|
4708
|
-
/* @__PURE__ */ (0,
|
|
4709
|
-
/* @__PURE__ */ (0,
|
|
4915
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Icon_default, { name: "chevronLeft", className: "w-4 h-4 mr-1" }) }),
|
|
4916
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm", children: "Prev" })
|
|
4710
4917
|
]
|
|
4711
4918
|
}
|
|
4712
4919
|
),
|
|
4713
4920
|
paginationRange.map((item, index) => {
|
|
4714
4921
|
if (item === "...") {
|
|
4715
|
-
return /* @__PURE__ */ (0,
|
|
4922
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
4716
4923
|
"span",
|
|
4717
4924
|
{
|
|
4718
4925
|
className: "min-w-[20px] md:min-w-[40px] h-10 flex items-center justify-center text-gray-500",
|
|
@@ -4722,23 +4929,23 @@ var Pagination = (props) => {
|
|
|
4722
4929
|
);
|
|
4723
4930
|
}
|
|
4724
4931
|
const page = item;
|
|
4725
|
-
return /* @__PURE__ */ (0,
|
|
4932
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(PageButton, { page, children: page }, page);
|
|
4726
4933
|
}),
|
|
4727
|
-
/* @__PURE__ */ (0,
|
|
4934
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
4728
4935
|
NavigationButton,
|
|
4729
4936
|
{
|
|
4730
4937
|
page: activePageNumber + 1,
|
|
4731
4938
|
disabled: activePageNumber === totalPages,
|
|
4732
4939
|
children: [
|
|
4733
|
-
/* @__PURE__ */ (0,
|
|
4734
|
-
/* @__PURE__ */ (0,
|
|
4940
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm", children: "Next" }),
|
|
4941
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Icon_default, { name: "chevronRight", className: "w-4 h-4 ml-1" }) })
|
|
4735
4942
|
]
|
|
4736
4943
|
}
|
|
4737
4944
|
)
|
|
4738
4945
|
] }),
|
|
4739
|
-
showJumpToPage && totalPages > 5 && /* @__PURE__ */ (0,
|
|
4740
|
-
/* @__PURE__ */ (0,
|
|
4741
|
-
/* @__PURE__ */ (0,
|
|
4946
|
+
showJumpToPage && totalPages > 5 && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center space-x-2", children: [
|
|
4947
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm", children: "Go to:" }),
|
|
4948
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "relative", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
4742
4949
|
"input",
|
|
4743
4950
|
{
|
|
4744
4951
|
type: "number",
|
|
@@ -4759,9 +4966,9 @@ var Pagination = (props) => {
|
|
|
4759
4966
|
) })
|
|
4760
4967
|
] })
|
|
4761
4968
|
] }),
|
|
4762
|
-
showPageSizeSelector && /* @__PURE__ */ (0,
|
|
4763
|
-
/* @__PURE__ */ (0,
|
|
4764
|
-
/* @__PURE__ */ (0,
|
|
4969
|
+
showPageSizeSelector && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "mt-4 pt-4 border-t bg-default", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center justify-center space-x-2", children: [
|
|
4970
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm", children: "Show:" }),
|
|
4971
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "flex space-x-1", children: [10, 25, 50, 100].map((size) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
4765
4972
|
Hyperlink,
|
|
4766
4973
|
{
|
|
4767
4974
|
className: `
|
|
@@ -4773,7 +4980,7 @@ var Pagination = (props) => {
|
|
|
4773
4980
|
},
|
|
4774
4981
|
size
|
|
4775
4982
|
)) }),
|
|
4776
|
-
/* @__PURE__ */ (0,
|
|
4983
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm", children: "per page" })
|
|
4777
4984
|
] }) })
|
|
4778
4985
|
] });
|
|
4779
4986
|
};
|
|
@@ -4781,7 +4988,7 @@ var Pagination_default = Pagination;
|
|
|
4781
4988
|
|
|
4782
4989
|
// src/components/pageRenderingEngine/nodes/ImageGalleryNode.tsx
|
|
4783
4990
|
var import_dynamic5 = __toESM(require("next/dynamic"));
|
|
4784
|
-
var
|
|
4991
|
+
var import_jsx_runtime66 = require("react/jsx-runtime");
|
|
4785
4992
|
var HlsPlayer3 = (0, import_dynamic5.default)(() => Promise.resolve().then(() => (init_HlsPlayer(), HlsPlayer_exports)), { ssr: false });
|
|
4786
4993
|
var deviceToMediaQuery = (device) => {
|
|
4787
4994
|
switch (device) {
|
|
@@ -4850,8 +5057,8 @@ var ImageGalleryNode = (props) => {
|
|
|
4850
5057
|
right: "justify-end"
|
|
4851
5058
|
};
|
|
4852
5059
|
const formatClasses = FormatClass[props.node.format || ""] || "";
|
|
4853
|
-
return /* @__PURE__ */ (0,
|
|
4854
|
-
hlsSources.length > 0 && /* @__PURE__ */ (0,
|
|
5060
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_jsx_runtime66.Fragment, { children: [
|
|
5061
|
+
hlsSources.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_jsx_runtime66.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
4855
5062
|
HlsPlayer3,
|
|
4856
5063
|
{
|
|
4857
5064
|
sources: hlsSources,
|
|
@@ -4865,14 +5072,14 @@ var ImageGalleryNode = (props) => {
|
|
|
4865
5072
|
session: props.session
|
|
4866
5073
|
}
|
|
4867
5074
|
) }),
|
|
4868
|
-
staticFallback && /* @__PURE__ */ (0,
|
|
5075
|
+
staticFallback && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_jsx_runtime66.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("picture", { children: [
|
|
4869
5076
|
DEVICE_ORDER.map((deviceKey) => {
|
|
4870
5077
|
const match = staticSources.find((img) => img.device === deviceKey);
|
|
4871
5078
|
if (!match) return null;
|
|
4872
5079
|
const srcUrl = resolveImageUrl(match.imageUrl);
|
|
4873
5080
|
if (!srcUrl) return null;
|
|
4874
5081
|
const mediaQuery = deviceToMediaQuery(match.device);
|
|
4875
|
-
return /* @__PURE__ */ (0,
|
|
5082
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
4876
5083
|
"source",
|
|
4877
5084
|
{
|
|
4878
5085
|
media: mediaQuery,
|
|
@@ -4896,7 +5103,7 @@ var ImageGalleryNode = (props) => {
|
|
|
4896
5103
|
if (img.borderRadius) styles.borderRadius = img.borderRadius;
|
|
4897
5104
|
return (
|
|
4898
5105
|
// eslint-disable-next-line @next/next/no-img-element
|
|
4899
|
-
/* @__PURE__ */ (0,
|
|
5106
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
4900
5107
|
"img",
|
|
4901
5108
|
{
|
|
4902
5109
|
loading: "lazy",
|
|
@@ -4917,7 +5124,7 @@ var ImageGalleryNode_default = ImageGalleryNode;
|
|
|
4917
5124
|
|
|
4918
5125
|
// src/components/pageRenderingEngine/nodes/DivContainer.tsx
|
|
4919
5126
|
var import_link2 = __toESM(require("next/link"));
|
|
4920
|
-
var
|
|
5127
|
+
var import_jsx_runtime67 = require("react/jsx-runtime");
|
|
4921
5128
|
function toCamelCase(str) {
|
|
4922
5129
|
return str.replace(/-([a-z])/g, (_, letter) => letter.toUpperCase());
|
|
4923
5130
|
}
|
|
@@ -5122,7 +5329,7 @@ var DivContainer = async (props) => {
|
|
|
5122
5329
|
response = await serviceClient.get(endpoint);
|
|
5123
5330
|
result = response?.result;
|
|
5124
5331
|
if (dataBindingProperties.showNoResultsMessage && (result === void 0 || result.length == 0)) {
|
|
5125
|
-
return /* @__PURE__ */ (0,
|
|
5332
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(NoDataFound_default, {});
|
|
5126
5333
|
}
|
|
5127
5334
|
if (dataBindingProperties.childCollectionName && props.dataitem) {
|
|
5128
5335
|
childCollectionData = getNestedValue2(props.dataitem, dataBindingProperties.childCollectionName);
|
|
@@ -5139,7 +5346,7 @@ var DivContainer = async (props) => {
|
|
|
5139
5346
|
}
|
|
5140
5347
|
const SelectedNode = NodeTypes2[node.type];
|
|
5141
5348
|
if (!SelectedNode) return null;
|
|
5142
|
-
return /* @__PURE__ */ (0,
|
|
5349
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react49.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
5143
5350
|
SelectedNode,
|
|
5144
5351
|
{
|
|
5145
5352
|
node,
|
|
@@ -5241,9 +5448,9 @@ var DivContainer = async (props) => {
|
|
|
5241
5448
|
props.node.autoFormat && "auto-format",
|
|
5242
5449
|
props.node.bgClass
|
|
5243
5450
|
].filter(Boolean).join(" ");
|
|
5244
|
-
return /* @__PURE__ */ (0,
|
|
5245
|
-
/* @__PURE__ */ (0,
|
|
5246
|
-
/* @__PURE__ */ (0,
|
|
5451
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_react49.default.Fragment, { children: [
|
|
5452
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("style", { dangerouslySetInnerHTML: { __html: cssResult.css + animationCSS } }),
|
|
5453
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react49.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
5247
5454
|
Wrapper,
|
|
5248
5455
|
{
|
|
5249
5456
|
id: guid,
|
|
@@ -5252,18 +5459,18 @@ var DivContainer = async (props) => {
|
|
|
5252
5459
|
...wrapperProps,
|
|
5253
5460
|
children: dataToRender.map(
|
|
5254
5461
|
(item, idx) => item?.links?.view && renderLink ? renderChildren(props.node.children, props, item, idx, props.href ? void 0 : item?.links?.view)?.map(
|
|
5255
|
-
(child, i) => /* @__PURE__ */ (0,
|
|
5462
|
+
(child, i) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react49.default.Fragment, { children: child }, i)
|
|
5256
5463
|
) : renderChildren(props.node.children, props, item, idx)
|
|
5257
5464
|
)
|
|
5258
5465
|
}
|
|
5259
5466
|
) }),
|
|
5260
|
-
dataBindingProperties && props.node.dataBinding.enablePagination && /* @__PURE__ */ (0,
|
|
5467
|
+
dataBindingProperties && props.node.dataBinding.enablePagination && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Pagination_default, { path: props.path, query: props.query, dataset: response }) })
|
|
5261
5468
|
] });
|
|
5262
5469
|
};
|
|
5263
5470
|
var DivContainer_default = DivContainer;
|
|
5264
5471
|
|
|
5265
5472
|
// src/components/pageRenderingEngine/PageBodyRenderer.tsx
|
|
5266
|
-
var
|
|
5473
|
+
var import_jsx_runtime68 = require("react/jsx-runtime");
|
|
5267
5474
|
var NodeTypes = {
|
|
5268
5475
|
["paragraph"]: ParagraphNode_default,
|
|
5269
5476
|
["heading"]: HeadingNode_default,
|
|
@@ -5291,11 +5498,11 @@ var PageBodyRenderer = (props) => {
|
|
|
5291
5498
|
if (pageBodyTree && pageBodyTree.root) {
|
|
5292
5499
|
rootNode = pageBodyTree.root;
|
|
5293
5500
|
}
|
|
5294
|
-
return /* @__PURE__ */ (0,
|
|
5501
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react50.default.Fragment, { children: rootNode && rootNode?.children?.map((node, index) => {
|
|
5295
5502
|
{
|
|
5296
5503
|
}
|
|
5297
5504
|
const SelectedNode = NodeTypes[node.type];
|
|
5298
|
-
return /* @__PURE__ */ (0,
|
|
5505
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react50.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react50.default.Fragment, { children: node.type == "layout-container" ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react50.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
5299
5506
|
SelectedNode,
|
|
5300
5507
|
{
|
|
5301
5508
|
node,
|
|
@@ -5311,7 +5518,7 @@ var PageBodyRenderer = (props) => {
|
|
|
5311
5518
|
device: props.device,
|
|
5312
5519
|
widgetRenderer: props.widgetRenderer
|
|
5313
5520
|
}
|
|
5314
|
-
) }) : /* @__PURE__ */ (0,
|
|
5521
|
+
) }) : /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react50.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
5315
5522
|
SelectedNode,
|
|
5316
5523
|
{
|
|
5317
5524
|
node,
|
|
@@ -5332,13 +5539,13 @@ var PageBodyRenderer = (props) => {
|
|
|
5332
5539
|
var PageBodyRenderer_default = PageBodyRenderer;
|
|
5333
5540
|
|
|
5334
5541
|
// src/components/Toast.tsx
|
|
5335
|
-
var
|
|
5542
|
+
var import_react51 = require("react");
|
|
5336
5543
|
init_ToastService();
|
|
5337
|
-
var
|
|
5544
|
+
var import_jsx_runtime69 = require("react/jsx-runtime");
|
|
5338
5545
|
var Toast = () => {
|
|
5339
|
-
const [showToast, setShowToast] = (0,
|
|
5340
|
-
const [message, setMessage] = (0,
|
|
5341
|
-
const [messageType, setMessageType] = (0,
|
|
5546
|
+
const [showToast, setShowToast] = (0, import_react51.useState)(false);
|
|
5547
|
+
const [message, setMessage] = (0, import_react51.useState)("");
|
|
5548
|
+
const [messageType, setMessageType] = (0, import_react51.useState)("error");
|
|
5342
5549
|
ToastService_default.showError = function(message2) {
|
|
5343
5550
|
setShowToast(true);
|
|
5344
5551
|
setMessage(message2);
|
|
@@ -5377,8 +5584,8 @@ var Toast = () => {
|
|
|
5377
5584
|
const closeToast = () => {
|
|
5378
5585
|
setShowToast(false);
|
|
5379
5586
|
};
|
|
5380
|
-
return /* @__PURE__ */ (0,
|
|
5381
|
-
/* @__PURE__ */ (0,
|
|
5587
|
+
return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_jsx_runtime69.Fragment, { children: showToast && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "fixed top-2 flex justify-center w-1/2 max-w-xl left-1/2 -translate-x-1/2", style: { zIndex: 1e3 }, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: `w-full items-center flex justify-between p-3 rounded-md relative shadow border bg-${messageType}-soft`, children: [
|
|
5588
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
|
|
5382
5589
|
"span",
|
|
5383
5590
|
{
|
|
5384
5591
|
className: "font-medium text-inherit text-sm",
|
|
@@ -5386,7 +5593,7 @@ var Toast = () => {
|
|
|
5386
5593
|
children: message
|
|
5387
5594
|
}
|
|
5388
5595
|
),
|
|
5389
|
-
/* @__PURE__ */ (0,
|
|
5596
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsx)("button", { className: "absolute right-2 top-2 ml-2 focus:outline-none", onClick: closeToast, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
|
|
5390
5597
|
"svg",
|
|
5391
5598
|
{
|
|
5392
5599
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -5394,7 +5601,7 @@ var Toast = () => {
|
|
|
5394
5601
|
fill: "none",
|
|
5395
5602
|
viewBox: "0 0 24 24",
|
|
5396
5603
|
stroke: "currentColor",
|
|
5397
|
-
children: /* @__PURE__ */ (0,
|
|
5604
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M6 18L18 6M6 6l12 12" })
|
|
5398
5605
|
}
|
|
5399
5606
|
) })
|
|
5400
5607
|
] }) }) });
|
|
@@ -5407,7 +5614,7 @@ init_ToastService();
|
|
|
5407
5614
|
// src/components/NavigationTabsV2.tsx
|
|
5408
5615
|
var import_link3 = __toESM(require("next/link"));
|
|
5409
5616
|
var import_navigation = require("next/navigation");
|
|
5410
|
-
var
|
|
5617
|
+
var import_jsx_runtime70 = require("react/jsx-runtime");
|
|
5411
5618
|
function resolveRoutePlaceholders(route, params) {
|
|
5412
5619
|
return route.replace(/\{([^}]+)\}/g, (match, key) => {
|
|
5413
5620
|
const value = params[key];
|
|
@@ -5432,8 +5639,8 @@ var NavigationTabsV2 = ({ tabs, params = {} }) => {
|
|
|
5432
5639
|
isActive: tab.isActive
|
|
5433
5640
|
})) || [];
|
|
5434
5641
|
if (mappedTabs.length === 0) return null;
|
|
5435
|
-
return /* @__PURE__ */ (0,
|
|
5436
|
-
return /* @__PURE__ */ (0,
|
|
5642
|
+
return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "flex border-b bg-white rounded-t mb-3", children: mappedTabs.map(({ tabTitle, landingPageUrl, isActive }) => {
|
|
5643
|
+
return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_link3.default, { href: landingPageUrl, className: "-mb-px", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
5437
5644
|
"div",
|
|
5438
5645
|
{
|
|
5439
5646
|
className: `text-sm font-medium border-b-2 px-6 py-2 transition
|
|
@@ -5446,51 +5653,51 @@ var NavigationTabsV2 = ({ tabs, params = {} }) => {
|
|
|
5446
5653
|
var NavigationTabsV2_default = NavigationTabsV2;
|
|
5447
5654
|
|
|
5448
5655
|
// src/components/dataForm/DataList.tsx
|
|
5449
|
-
var
|
|
5656
|
+
var import_react54 = __toESM(require("react"));
|
|
5450
5657
|
var import_navigation2 = require("next/navigation");
|
|
5451
5658
|
|
|
5452
5659
|
// src/components/dataForm/NoContentView.tsx
|
|
5453
|
-
var
|
|
5454
|
-
var
|
|
5660
|
+
var import_react52 = __toESM(require("react"));
|
|
5661
|
+
var import_jsx_runtime71 = require("react/jsx-runtime");
|
|
5455
5662
|
var NoContentView = (props) => {
|
|
5456
|
-
return /* @__PURE__ */ (0,
|
|
5663
|
+
return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_react52.default.Fragment, { children: props.isDataFound === false && props.children });
|
|
5457
5664
|
};
|
|
5458
5665
|
var NoContentView_default = NoContentView;
|
|
5459
5666
|
|
|
5460
5667
|
// src/components/dataForm/ContentView.tsx
|
|
5461
|
-
var
|
|
5462
|
-
var
|
|
5668
|
+
var import_react53 = __toESM(require("react"));
|
|
5669
|
+
var import_jsx_runtime72 = require("react/jsx-runtime");
|
|
5463
5670
|
var ContentView = (props) => {
|
|
5464
|
-
return /* @__PURE__ */ (0,
|
|
5465
|
-
props.isDataFound == null && /* @__PURE__ */ (0,
|
|
5466
|
-
/* @__PURE__ */ (0,
|
|
5467
|
-
/* @__PURE__ */ (0,
|
|
5468
|
-
/* @__PURE__ */ (0,
|
|
5469
|
-
/* @__PURE__ */ (0,
|
|
5470
|
-
/* @__PURE__ */ (0,
|
|
5671
|
+
return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(import_react53.default.Fragment, { children: [
|
|
5672
|
+
props.isDataFound == null && /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "", children: /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "bg-gray-200 rounded-md p-4 animate-pulse", children: [
|
|
5673
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "flex items-center mb-4", children: [
|
|
5674
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 h-8 w-8 rounded-full animate-pulse" }),
|
|
5675
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "ml-2", children: [
|
|
5676
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 h-3 w-16 animate-pulse" }),
|
|
5677
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 h-2 w-12 animate-pulse" })
|
|
5471
5678
|
] })
|
|
5472
5679
|
] }),
|
|
5473
|
-
/* @__PURE__ */ (0,
|
|
5474
|
-
/* @__PURE__ */ (0,
|
|
5475
|
-
/* @__PURE__ */ (0,
|
|
5476
|
-
/* @__PURE__ */ (0,
|
|
5477
|
-
/* @__PURE__ */ (0,
|
|
5478
|
-
/* @__PURE__ */ (0,
|
|
5479
|
-
/* @__PURE__ */ (0,
|
|
5680
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "grid grid-cols-3 gap-4 mt-6", children: [
|
|
5681
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "animate-pulse", children: [
|
|
5682
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
|
|
5683
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
|
|
5684
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
|
|
5685
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
|
|
5686
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
|
|
5480
5687
|
] }),
|
|
5481
|
-
/* @__PURE__ */ (0,
|
|
5482
|
-
/* @__PURE__ */ (0,
|
|
5483
|
-
/* @__PURE__ */ (0,
|
|
5484
|
-
/* @__PURE__ */ (0,
|
|
5485
|
-
/* @__PURE__ */ (0,
|
|
5486
|
-
/* @__PURE__ */ (0,
|
|
5688
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "animate-pulse", children: [
|
|
5689
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
|
|
5690
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
|
|
5691
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
|
|
5692
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
|
|
5693
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
|
|
5487
5694
|
] }),
|
|
5488
|
-
/* @__PURE__ */ (0,
|
|
5489
|
-
/* @__PURE__ */ (0,
|
|
5490
|
-
/* @__PURE__ */ (0,
|
|
5491
|
-
/* @__PURE__ */ (0,
|
|
5492
|
-
/* @__PURE__ */ (0,
|
|
5493
|
-
/* @__PURE__ */ (0,
|
|
5695
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "animate-pulse", children: [
|
|
5696
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
|
|
5697
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
|
|
5698
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
|
|
5699
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
|
|
5700
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
|
|
5494
5701
|
] })
|
|
5495
5702
|
] })
|
|
5496
5703
|
] }) }),
|
|
@@ -5501,7 +5708,7 @@ var ContentView_default = ContentView;
|
|
|
5501
5708
|
|
|
5502
5709
|
// src/components/dataForm/DataList.tsx
|
|
5503
5710
|
init_StyleTypes();
|
|
5504
|
-
var
|
|
5711
|
+
var import_jsx_runtime73 = require("react/jsx-runtime");
|
|
5505
5712
|
var DataList = (props) => {
|
|
5506
5713
|
console.log(props.dataset, "datasetssssss");
|
|
5507
5714
|
const router = (0, import_navigation2.useRouter)();
|
|
@@ -5510,8 +5717,8 @@ var DataList = (props) => {
|
|
|
5510
5717
|
let activePageNumber = 0;
|
|
5511
5718
|
let pages = 0;
|
|
5512
5719
|
console.log(props.addLinkText);
|
|
5513
|
-
const [isDataFound, setIsDataFound] = (0,
|
|
5514
|
-
(0,
|
|
5720
|
+
const [isDataFound, setIsDataFound] = (0, import_react54.useState)(null);
|
|
5721
|
+
(0, import_react54.useEffect)(() => {
|
|
5515
5722
|
if (props?.dataset) {
|
|
5516
5723
|
if (props?.dataset.result && props.dataset.result.length > 0) {
|
|
5517
5724
|
setIsDataFound(true);
|
|
@@ -5524,7 +5731,7 @@ var DataList = (props) => {
|
|
|
5524
5731
|
if (path.includes(".")) {
|
|
5525
5732
|
return path.split(".").reduce((prev, curr) => prev ? prev[curr] : null, obj);
|
|
5526
5733
|
} else if (Array.isArray(obj[path])) {
|
|
5527
|
-
return obj[path].map((item, index) => /* @__PURE__ */ (0,
|
|
5734
|
+
return obj[path].map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { children: item }, index));
|
|
5528
5735
|
} else {
|
|
5529
5736
|
return obj[path];
|
|
5530
5737
|
}
|
|
@@ -5533,8 +5740,8 @@ var DataList = (props) => {
|
|
|
5533
5740
|
inputValues: {},
|
|
5534
5741
|
lastPropertyChanged: ""
|
|
5535
5742
|
};
|
|
5536
|
-
const [formState, dispatch] = (0,
|
|
5537
|
-
const handleFilterChange = (0,
|
|
5743
|
+
const [formState, dispatch] = (0, import_react54.useReducer)(FormReducer_default, initialState);
|
|
5744
|
+
const handleFilterChange = (0, import_react54.useCallback)(
|
|
5538
5745
|
(updatedValues) => {
|
|
5539
5746
|
dispatch({
|
|
5540
5747
|
type: FORM_INPUT_UPDATE,
|
|
@@ -5580,30 +5787,30 @@ var DataList = (props) => {
|
|
|
5580
5787
|
const renderPageNumbers = () => {
|
|
5581
5788
|
if (pages <= 10) {
|
|
5582
5789
|
return Array.from({ length: pages }, (_, index) => index + 1).map(
|
|
5583
|
-
(page) => /* @__PURE__ */ (0,
|
|
5790
|
+
(page) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_react54.default.Fragment, { children: activePageNumber !== page ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5584
5791
|
Hyperlink,
|
|
5585
5792
|
{
|
|
5586
5793
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
5587
5794
|
href: builder.getNewPageUrl(page),
|
|
5588
5795
|
children: page
|
|
5589
5796
|
}
|
|
5590
|
-
) : /* @__PURE__ */ (0,
|
|
5797
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "px-3 py-1 border-t border-b border-gray-300 bg-primary text-white", children: page }) }, page)
|
|
5591
5798
|
);
|
|
5592
5799
|
} else {
|
|
5593
5800
|
const showFirstPages = activePageNumber <= 5;
|
|
5594
5801
|
const showLastPages = activePageNumber > pages - 5;
|
|
5595
5802
|
if (showFirstPages) {
|
|
5596
|
-
return /* @__PURE__ */ (0,
|
|
5597
|
-
Array.from({ length: 8 }, (_, index) => index + 1).map((page) => /* @__PURE__ */ (0,
|
|
5803
|
+
return /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(import_jsx_runtime73.Fragment, { children: [
|
|
5804
|
+
Array.from({ length: 8 }, (_, index) => index + 1).map((page) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_react54.default.Fragment, { children: activePageNumber !== page ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5598
5805
|
Hyperlink,
|
|
5599
5806
|
{
|
|
5600
5807
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
5601
5808
|
href: builder.getNewPageUrl(page),
|
|
5602
5809
|
children: page
|
|
5603
5810
|
}
|
|
5604
|
-
) : /* @__PURE__ */ (0,
|
|
5605
|
-
/* @__PURE__ */ (0,
|
|
5606
|
-
/* @__PURE__ */ (0,
|
|
5811
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "px-3 py-1 border-t border-b border-gray-300 bg-primary text-white", children: page }) }, page)),
|
|
5812
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "px-2 py-1", children: "..." }),
|
|
5813
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5607
5814
|
Hyperlink,
|
|
5608
5815
|
{
|
|
5609
5816
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -5611,7 +5818,7 @@ var DataList = (props) => {
|
|
|
5611
5818
|
children: pages - 1
|
|
5612
5819
|
}
|
|
5613
5820
|
),
|
|
5614
|
-
/* @__PURE__ */ (0,
|
|
5821
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5615
5822
|
Hyperlink,
|
|
5616
5823
|
{
|
|
5617
5824
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -5619,7 +5826,7 @@ var DataList = (props) => {
|
|
|
5619
5826
|
children: pages
|
|
5620
5827
|
}
|
|
5621
5828
|
),
|
|
5622
|
-
/* @__PURE__ */ (0,
|
|
5829
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "relative inline-block", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(
|
|
5623
5830
|
"select",
|
|
5624
5831
|
{
|
|
5625
5832
|
className: " py-1 border border-gray-300 bg-white text-gray-700 appearance-none rounded-none",
|
|
@@ -5631,18 +5838,18 @@ var DataList = (props) => {
|
|
|
5631
5838
|
}
|
|
5632
5839
|
},
|
|
5633
5840
|
children: [
|
|
5634
|
-
/* @__PURE__ */ (0,
|
|
5841
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("option", { className: "", value: "", children: "Jump to" }),
|
|
5635
5842
|
Array.from(
|
|
5636
5843
|
{ length: Math.max(0, pages - 10) },
|
|
5637
5844
|
(_, index) => index + 9
|
|
5638
|
-
).map((page) => /* @__PURE__ */ (0,
|
|
5845
|
+
).map((page) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("option", { value: page, children: page }, page))
|
|
5639
5846
|
]
|
|
5640
5847
|
}
|
|
5641
5848
|
) })
|
|
5642
5849
|
] });
|
|
5643
5850
|
} else if (showLastPages) {
|
|
5644
|
-
return /* @__PURE__ */ (0,
|
|
5645
|
-
/* @__PURE__ */ (0,
|
|
5851
|
+
return /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(import_jsx_runtime73.Fragment, { children: [
|
|
5852
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5646
5853
|
Hyperlink,
|
|
5647
5854
|
{
|
|
5648
5855
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -5650,7 +5857,7 @@ var DataList = (props) => {
|
|
|
5650
5857
|
children: "1"
|
|
5651
5858
|
}
|
|
5652
5859
|
),
|
|
5653
|
-
/* @__PURE__ */ (0,
|
|
5860
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5654
5861
|
Hyperlink,
|
|
5655
5862
|
{
|
|
5656
5863
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -5658,21 +5865,21 @@ var DataList = (props) => {
|
|
|
5658
5865
|
children: "2"
|
|
5659
5866
|
}
|
|
5660
5867
|
),
|
|
5661
|
-
/* @__PURE__ */ (0,
|
|
5868
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "px-2 py-1", children: "..." }),
|
|
5662
5869
|
Array.from({ length: 8 }, (_, index) => pages - 7 + index).map(
|
|
5663
|
-
(page) => /* @__PURE__ */ (0,
|
|
5870
|
+
(page) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_react54.default.Fragment, { children: activePageNumber !== page ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5664
5871
|
Hyperlink,
|
|
5665
5872
|
{
|
|
5666
5873
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
5667
5874
|
href: builder.getNewPageUrl(page),
|
|
5668
5875
|
children: page
|
|
5669
5876
|
}
|
|
5670
|
-
) : /* @__PURE__ */ (0,
|
|
5877
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "px-3 py-1 border-t border-b border-gray-300 bg-primary text-white", children: page }) }, page)
|
|
5671
5878
|
)
|
|
5672
5879
|
] });
|
|
5673
5880
|
} else {
|
|
5674
|
-
return /* @__PURE__ */ (0,
|
|
5675
|
-
/* @__PURE__ */ (0,
|
|
5881
|
+
return /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(import_jsx_runtime73.Fragment, { children: [
|
|
5882
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5676
5883
|
Hyperlink,
|
|
5677
5884
|
{
|
|
5678
5885
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -5680,7 +5887,7 @@ var DataList = (props) => {
|
|
|
5680
5887
|
children: "1"
|
|
5681
5888
|
}
|
|
5682
5889
|
),
|
|
5683
|
-
/* @__PURE__ */ (0,
|
|
5890
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5684
5891
|
Hyperlink,
|
|
5685
5892
|
{
|
|
5686
5893
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -5688,20 +5895,20 @@ var DataList = (props) => {
|
|
|
5688
5895
|
children: "2"
|
|
5689
5896
|
}
|
|
5690
5897
|
),
|
|
5691
|
-
/* @__PURE__ */ (0,
|
|
5898
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "px-2 py-1", children: "..." }),
|
|
5692
5899
|
Array.from(
|
|
5693
5900
|
{ length: 5 },
|
|
5694
5901
|
(_, index) => activePageNumber - 2 + index
|
|
5695
|
-
).map((page) => /* @__PURE__ */ (0,
|
|
5902
|
+
).map((page) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_react54.default.Fragment, { children: activePageNumber !== page ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5696
5903
|
Hyperlink,
|
|
5697
5904
|
{
|
|
5698
5905
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
5699
5906
|
href: builder.getNewPageUrl(page),
|
|
5700
5907
|
children: page
|
|
5701
5908
|
}
|
|
5702
|
-
) : /* @__PURE__ */ (0,
|
|
5703
|
-
/* @__PURE__ */ (0,
|
|
5704
|
-
/* @__PURE__ */ (0,
|
|
5909
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "px-3 py-1 border-t border-b border-gray-300 bg-primary text-white", children: page }) }, page)),
|
|
5910
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "px-2 py-1", children: "..." }),
|
|
5911
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5705
5912
|
Hyperlink,
|
|
5706
5913
|
{
|
|
5707
5914
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -5709,7 +5916,7 @@ var DataList = (props) => {
|
|
|
5709
5916
|
children: pages - 1
|
|
5710
5917
|
}
|
|
5711
5918
|
),
|
|
5712
|
-
/* @__PURE__ */ (0,
|
|
5919
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5713
5920
|
Hyperlink,
|
|
5714
5921
|
{
|
|
5715
5922
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -5717,7 +5924,7 @@ var DataList = (props) => {
|
|
|
5717
5924
|
children: pages
|
|
5718
5925
|
}
|
|
5719
5926
|
),
|
|
5720
|
-
/* @__PURE__ */ (0,
|
|
5927
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "relative inline-block", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(
|
|
5721
5928
|
"select",
|
|
5722
5929
|
{
|
|
5723
5930
|
className: "px-2 py-1 border border-gray-300 bg-white text-gray-700 appearance-none rounded-none",
|
|
@@ -5729,8 +5936,8 @@ var DataList = (props) => {
|
|
|
5729
5936
|
}
|
|
5730
5937
|
},
|
|
5731
5938
|
children: [
|
|
5732
|
-
/* @__PURE__ */ (0,
|
|
5733
|
-
Array.from({ length: pages - 4 }, (_, index) => index + 3).filter((page) => page > 2 && page < pages - 1).map((page) => /* @__PURE__ */ (0,
|
|
5939
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("option", { value: "", children: "Jump to" }),
|
|
5940
|
+
Array.from({ length: pages - 4 }, (_, index) => index + 3).filter((page) => page > 2 && page < pages - 1).map((page) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("option", { value: page, children: page }, page))
|
|
5734
5941
|
]
|
|
5735
5942
|
}
|
|
5736
5943
|
) })
|
|
@@ -5738,16 +5945,16 @@ var DataList = (props) => {
|
|
|
5738
5945
|
}
|
|
5739
5946
|
}
|
|
5740
5947
|
};
|
|
5741
|
-
return /* @__PURE__ */ (0,
|
|
5742
|
-
/* @__PURE__ */ (0,
|
|
5743
|
-
(props.title || props.filters || props.addLinkHref) && /* @__PURE__ */ (0,
|
|
5948
|
+
return /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(import_react54.default.Fragment, { children: [
|
|
5949
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(ContentView_default, { isDataFound, children: [
|
|
5950
|
+
(props.title || props.filters || props.addLinkHref) && /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(
|
|
5744
5951
|
"div",
|
|
5745
5952
|
{
|
|
5746
5953
|
className: `flex justify-between items-center bg-white pl-6 pr-2 h-14 mb-3 shadow-sm rounded-md border-b border-neutral-200 sticky top-0`,
|
|
5747
5954
|
children: [
|
|
5748
|
-
props.title ? /* @__PURE__ */ (0,
|
|
5749
|
-
/* @__PURE__ */ (0,
|
|
5750
|
-
props.filters && props.filters.map((filter) => /* @__PURE__ */ (0,
|
|
5955
|
+
props.title ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "inline-flex items-center gap-2", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("h2", { className: "text-lg font-semibold text-black-800", children: props.title }) }) : /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", {}),
|
|
5956
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "flex items-center gap-3", children: [
|
|
5957
|
+
props.filters && props.filters.map((filter) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5751
5958
|
InputControl_default,
|
|
5752
5959
|
{
|
|
5753
5960
|
name: filter.name,
|
|
@@ -5762,15 +5969,15 @@ var DataList = (props) => {
|
|
|
5762
5969
|
},
|
|
5763
5970
|
filter.name
|
|
5764
5971
|
)),
|
|
5765
|
-
props.addLinkHref && /* @__PURE__ */ (0,
|
|
5972
|
+
props.addLinkHref && /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(
|
|
5766
5973
|
Hyperlink,
|
|
5767
5974
|
{
|
|
5768
5975
|
className: "gap-1",
|
|
5769
5976
|
linkType: "Primary" /* Solid */,
|
|
5770
5977
|
href: props.addLinkHref,
|
|
5771
5978
|
children: [
|
|
5772
|
-
/* @__PURE__ */ (0,
|
|
5773
|
-
/* @__PURE__ */ (0,
|
|
5979
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Icon_default, { name: "plus", className: "w-4 h-4" }),
|
|
5980
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "text-sm font-medium", children: props.addLinkText || "Add New" })
|
|
5774
5981
|
]
|
|
5775
5982
|
}
|
|
5776
5983
|
)
|
|
@@ -5778,8 +5985,8 @@ var DataList = (props) => {
|
|
|
5778
5985
|
]
|
|
5779
5986
|
}
|
|
5780
5987
|
),
|
|
5781
|
-
/* @__PURE__ */ (0,
|
|
5782
|
-
/* @__PURE__ */ (0,
|
|
5988
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "flex-1 overflow-y-auto justify-end bg-white rounded shadow h-[calc(100vh-14rem)]", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("table", { className: "w-full divide-y divide-gray-200", children: [
|
|
5989
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("thead", { className: "bg-gray-50 sticky top-0", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("tr", { children: props?.columns?.map((column) => {
|
|
5783
5990
|
let url = builder.getNewOrderByUrl(column.name);
|
|
5784
5991
|
let icon = "chevronUpDown";
|
|
5785
5992
|
if (orderBy.includes(`${column.name} desc`)) {
|
|
@@ -5789,36 +5996,36 @@ var DataList = (props) => {
|
|
|
5789
5996
|
icon = "chevronUp";
|
|
5790
5997
|
url = builder.getNewOrderByUrl(column.name + " desc");
|
|
5791
5998
|
}
|
|
5792
|
-
return /* @__PURE__ */ (0,
|
|
5999
|
+
return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5793
6000
|
"th",
|
|
5794
6001
|
{
|
|
5795
6002
|
className: "px-6 py-3 text-left font-medium cursor-pointer bg-neutral-soft " + column.width + (column.controlType == ViewControlTypes_default.money ? " text-right" : ""),
|
|
5796
|
-
children: /* @__PURE__ */ (0,
|
|
5797
|
-
/* @__PURE__ */ (0,
|
|
5798
|
-
column.enableSorting && /* @__PURE__ */ (0,
|
|
6003
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Hyperlink, { href: url, className: "!text-neutral-contrast ", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("span", { className: "flex items-center space-x-1", children: [
|
|
6004
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "text-black", children: column.label }),
|
|
6005
|
+
column.enableSorting && /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Icon_default, { className: "w-4 h-4", name: icon })
|
|
5799
6006
|
] }) })
|
|
5800
6007
|
},
|
|
5801
6008
|
column.name
|
|
5802
6009
|
);
|
|
5803
6010
|
}) }) }),
|
|
5804
|
-
/* @__PURE__ */ (0,
|
|
6011
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("tbody", { className: "divide-y divide-gray-200 ", children: props.dataset?.result?.map((dataitem, index) => {
|
|
5805
6012
|
let validityClass = "";
|
|
5806
6013
|
console.log("dataitem", dataitem);
|
|
5807
6014
|
if (props.recordValidityColumnName && getNestedProperty2(dataitem, props.recordValidityColumnName) == false) {
|
|
5808
6015
|
validityClass = "bg-alert-200";
|
|
5809
6016
|
}
|
|
5810
|
-
return /* @__PURE__ */ (0,
|
|
6017
|
+
return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("tr", { className: validityClass, children: props?.columns?.map((column, colindex) => {
|
|
5811
6018
|
console.log("column", column);
|
|
5812
|
-
return /* @__PURE__ */ (0,
|
|
6019
|
+
return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_react54.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5813
6020
|
"td",
|
|
5814
6021
|
{
|
|
5815
6022
|
className: "px-6 py-2 whitespace-normal " + (column.controlType == ViewControlTypes_default.money ? "" : ""),
|
|
5816
|
-
children: column.addhref === true ? /* @__PURE__ */ (0,
|
|
6023
|
+
children: column.addhref === true ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5817
6024
|
Hyperlink,
|
|
5818
6025
|
{
|
|
5819
6026
|
className: "",
|
|
5820
6027
|
href: `https://${dataitem[column.name]}`,
|
|
5821
|
-
children: /* @__PURE__ */ (0,
|
|
6028
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5822
6029
|
ViewControl_default,
|
|
5823
6030
|
{
|
|
5824
6031
|
controlType: column.controlType,
|
|
@@ -5831,11 +6038,11 @@ var DataList = (props) => {
|
|
|
5831
6038
|
}
|
|
5832
6039
|
)
|
|
5833
6040
|
}
|
|
5834
|
-
) : column.showAsLink ? /* @__PURE__ */ (0,
|
|
6041
|
+
) : column.showAsLink ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5835
6042
|
Hyperlink,
|
|
5836
6043
|
{
|
|
5837
6044
|
href: props.path + dataitem[props.columns[0].name] + "/" + (dataitem.linkUrlSegment ?? column.linkUrlSegment),
|
|
5838
|
-
children: /* @__PURE__ */ (0,
|
|
6045
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5839
6046
|
ViewControl_default,
|
|
5840
6047
|
{
|
|
5841
6048
|
controlType: column.controlType,
|
|
@@ -5845,7 +6052,7 @@ var DataList = (props) => {
|
|
|
5845
6052
|
}
|
|
5846
6053
|
)
|
|
5847
6054
|
}
|
|
5848
|
-
) : /* @__PURE__ */ (0,
|
|
6055
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5849
6056
|
ViewControl_default,
|
|
5850
6057
|
{
|
|
5851
6058
|
controlType: column.controlType,
|
|
@@ -5859,10 +6066,10 @@ var DataList = (props) => {
|
|
|
5859
6066
|
}) }, index);
|
|
5860
6067
|
}) })
|
|
5861
6068
|
] }) }),
|
|
5862
|
-
/* @__PURE__ */ (0,
|
|
5863
|
-
/* @__PURE__ */ (0,
|
|
5864
|
-
/* @__PURE__ */ (0,
|
|
5865
|
-
activePageNumber > 1 && /* @__PURE__ */ (0,
|
|
6069
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "pt-4 border-t border-t-gray-50 sticky bottom-0 h-11 mt-2 ", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "flex items-center justify-between", children: [
|
|
6070
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "text-gray-700", children: label }),
|
|
6071
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "flex space-x-2 items-center", children: [
|
|
6072
|
+
activePageNumber > 1 && /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5866
6073
|
Hyperlink,
|
|
5867
6074
|
{
|
|
5868
6075
|
className: "px-3 py-1 rounded-l-md border border-gray-300 bg-white text-gray-500 hover:bg-gray-200",
|
|
@@ -5870,9 +6077,9 @@ var DataList = (props) => {
|
|
|
5870
6077
|
children: "Prev"
|
|
5871
6078
|
}
|
|
5872
6079
|
),
|
|
5873
|
-
activePageNumber <= 1 && /* @__PURE__ */ (0,
|
|
6080
|
+
activePageNumber <= 1 && /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "px-3 py-1 rounded-l-md border border-gray-300 bg-gray-200 text-gray-500 hover:bg-gray-200", children: "Prev" }),
|
|
5874
6081
|
renderPageNumbers(),
|
|
5875
|
-
activePageNumber < pages && /* @__PURE__ */ (0,
|
|
6082
|
+
activePageNumber < pages && /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5876
6083
|
Hyperlink,
|
|
5877
6084
|
{
|
|
5878
6085
|
className: "px-3 py-1 rounded-r-md border border-gray-300 bg-white text-gray-500 hover:bg-gray-200",
|
|
@@ -5880,19 +6087,19 @@ var DataList = (props) => {
|
|
|
5880
6087
|
children: "Next"
|
|
5881
6088
|
}
|
|
5882
6089
|
),
|
|
5883
|
-
activePageNumber >= pages && /* @__PURE__ */ (0,
|
|
6090
|
+
activePageNumber >= pages && /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "px-3 py-1 rounded-r-md border border-gray-300 bg-gray-200 text-gray-500", children: "Next" })
|
|
5884
6091
|
] })
|
|
5885
6092
|
] }) })
|
|
5886
6093
|
] }),
|
|
5887
|
-
/* @__PURE__ */ (0,
|
|
5888
|
-
(props.title || props.filters || props.addLinkHref) && /* @__PURE__ */ (0,
|
|
6094
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(NoContentView_default, { isDataFound, children: [
|
|
6095
|
+
(props.title || props.filters || props.addLinkHref) && /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(
|
|
5889
6096
|
"div",
|
|
5890
6097
|
{
|
|
5891
6098
|
className: `flex justify-between items-center bg-white pl-6 pr-2 h-14 mb-3 shadow-sm rounded-md border-b border-neutral-200`,
|
|
5892
6099
|
children: [
|
|
5893
|
-
props.title ? /* @__PURE__ */ (0,
|
|
5894
|
-
/* @__PURE__ */ (0,
|
|
5895
|
-
props.filters && props.filters.map((filter) => /* @__PURE__ */ (0,
|
|
6100
|
+
props.title ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "inline-flex items-center gap-2", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("h2", { className: "text-lg font-semibold text-black", children: props.title }) }) : /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", {}),
|
|
6101
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "flex items-center gap-3", children: [
|
|
6102
|
+
props.filters && props.filters.map((filter) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5896
6103
|
InputControl_default,
|
|
5897
6104
|
{
|
|
5898
6105
|
name: filter.name,
|
|
@@ -5907,15 +6114,15 @@ var DataList = (props) => {
|
|
|
5907
6114
|
},
|
|
5908
6115
|
filter.name
|
|
5909
6116
|
)),
|
|
5910
|
-
props.addLinkHref && /* @__PURE__ */ (0,
|
|
6117
|
+
props.addLinkHref && /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(
|
|
5911
6118
|
Hyperlink,
|
|
5912
6119
|
{
|
|
5913
6120
|
className: "gap-1",
|
|
5914
6121
|
linkType: "Primary" /* Solid */,
|
|
5915
6122
|
href: props.addLinkHref,
|
|
5916
6123
|
children: [
|
|
5917
|
-
/* @__PURE__ */ (0,
|
|
5918
|
-
/* @__PURE__ */ (0,
|
|
6124
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Icon_default, { name: "plus", className: "w-4 h-4" }),
|
|
6125
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { className: "text-sm font-medium", children: props.addLinkText || "Add New" })
|
|
5919
6126
|
]
|
|
5920
6127
|
}
|
|
5921
6128
|
)
|
|
@@ -5923,8 +6130,8 @@ var DataList = (props) => {
|
|
|
5923
6130
|
]
|
|
5924
6131
|
}
|
|
5925
6132
|
),
|
|
5926
|
-
/* @__PURE__ */ (0,
|
|
5927
|
-
/* @__PURE__ */ (0,
|
|
6133
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "flex-grow overflow-y-auto justify-end bg-white rounded shadow h-[75vh]", children: [
|
|
6134
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("table", { className: "w-full divide-y divide-gray-200", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("thead", { className: "bg-gray-50", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("tr", { children: props?.columns?.map((column) => {
|
|
5928
6135
|
let url = builder.getNewOrderByUrl(column.name);
|
|
5929
6136
|
let icon = "chevronUpDown";
|
|
5930
6137
|
if (orderBy.includes(`${column.name} desc`)) {
|
|
@@ -5934,19 +6141,19 @@ var DataList = (props) => {
|
|
|
5934
6141
|
icon = "chevronUp";
|
|
5935
6142
|
url = builder.getNewOrderByUrl(column.name + " desc");
|
|
5936
6143
|
}
|
|
5937
|
-
return /* @__PURE__ */ (0,
|
|
6144
|
+
return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
5938
6145
|
"th",
|
|
5939
6146
|
{
|
|
5940
6147
|
className: "px-6 py-3 text-left font-medium cursor-pointer bg-neutral-soft " + column.width + (column.controlType == ViewControlTypes_default.money ? " text-right" : ""),
|
|
5941
|
-
children: /* @__PURE__ */ (0,
|
|
5942
|
-
/* @__PURE__ */ (0,
|
|
5943
|
-
column.enableSorting && /* @__PURE__ */ (0,
|
|
6148
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Hyperlink, { href: url, className: "text-body-950", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("span", { className: "flex items-center space-x-1", children: [
|
|
6149
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("span", { children: column.label }),
|
|
6150
|
+
column.enableSorting && /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Icon_default, { className: "w-4 h-4", name: icon })
|
|
5944
6151
|
] }) })
|
|
5945
6152
|
},
|
|
5946
6153
|
column.name
|
|
5947
6154
|
);
|
|
5948
6155
|
}) }) }) }) }),
|
|
5949
|
-
/* @__PURE__ */ (0,
|
|
6156
|
+
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: "w-full text-center bg-transparent pt-5", children: "There are no entries in the table at the moment." })
|
|
5950
6157
|
] })
|
|
5951
6158
|
] })
|
|
5952
6159
|
] });
|
|
@@ -5954,10 +6161,10 @@ var DataList = (props) => {
|
|
|
5954
6161
|
var DataList_default = DataList;
|
|
5955
6162
|
|
|
5956
6163
|
// src/components/dataForm/DataListRenderer.tsx
|
|
5957
|
-
var
|
|
6164
|
+
var import_react55 = __toESM(require("react"));
|
|
5958
6165
|
init_ServiceClient();
|
|
5959
6166
|
var import_navigation3 = require("next/navigation");
|
|
5960
|
-
var
|
|
6167
|
+
var import_jsx_runtime74 = require("react/jsx-runtime");
|
|
5961
6168
|
var viewControlMap = {
|
|
5962
6169
|
number: ViewControlTypes.number,
|
|
5963
6170
|
lineText: ViewControlTypes.lineText,
|
|
@@ -6011,14 +6218,14 @@ var DataListRenderer = ({
|
|
|
6011
6218
|
widgetProps
|
|
6012
6219
|
}) => {
|
|
6013
6220
|
const serviceClient = new ServiceClient_default(apiBaseUrl, session);
|
|
6014
|
-
const [columns, setColumns] = (0,
|
|
6015
|
-
const [dataset, setDataset] = (0,
|
|
6016
|
-
const [filter, setFilters] = (0,
|
|
6017
|
-
const [addLinkHref, setAddLinkHref] = (0,
|
|
6018
|
-
const [addLinkText, setAddLinkText] = (0,
|
|
6019
|
-
const [serviceRoute, setServiceRoute] = (0,
|
|
6221
|
+
const [columns, setColumns] = (0, import_react55.useState)([]);
|
|
6222
|
+
const [dataset, setDataset] = (0, import_react55.useState)();
|
|
6223
|
+
const [filter, setFilters] = (0, import_react55.useState)([]);
|
|
6224
|
+
const [addLinkHref, setAddLinkHref] = (0, import_react55.useState)("");
|
|
6225
|
+
const [addLinkText, setAddLinkText] = (0, import_react55.useState)("");
|
|
6226
|
+
const [serviceRoute, setServiceRoute] = (0, import_react55.useState)("");
|
|
6020
6227
|
const pathname = (0, import_navigation3.usePathname)();
|
|
6021
|
-
(0,
|
|
6228
|
+
(0, import_react55.useEffect)(() => {
|
|
6022
6229
|
if (!formDefinition) return;
|
|
6023
6230
|
setColumns(mapApiToColumns(formDefinition));
|
|
6024
6231
|
setFilters(mapApiToFilters(formDefinition));
|
|
@@ -6031,7 +6238,7 @@ var DataListRenderer = ({
|
|
|
6031
6238
|
setAddLinkHref(resolvedAddLinkHref);
|
|
6032
6239
|
setAddLinkText(formDefinition?.siteFormDataList?.addLinkText ?? "");
|
|
6033
6240
|
}, [formDefinition, params]);
|
|
6034
|
-
(0,
|
|
6241
|
+
(0, import_react55.useEffect)(() => {
|
|
6035
6242
|
const fetchData = async () => {
|
|
6036
6243
|
if (!serviceRoute) return;
|
|
6037
6244
|
const resolvedRoute = resolveRoutePlaceholders2(serviceRoute, params);
|
|
@@ -6043,12 +6250,12 @@ var DataListRenderer = ({
|
|
|
6043
6250
|
};
|
|
6044
6251
|
fetchData();
|
|
6045
6252
|
}, [serviceRoute, query, params]);
|
|
6046
|
-
const [tabItem, setTabItem] = (0,
|
|
6253
|
+
const [tabItem, setTabItem] = (0, import_react55.useState)();
|
|
6047
6254
|
const activeTab = tabItem?.find((tab) => tab.isActive);
|
|
6048
6255
|
const activeHref = activeTab ? resolveRoutePlaceholders2(activeTab.landingPageUrl, params) : pathname;
|
|
6049
|
-
return /* @__PURE__ */ (0,
|
|
6050
|
-
widgetProps && /* @__PURE__ */ (0,
|
|
6051
|
-
/* @__PURE__ */ (0,
|
|
6256
|
+
return /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)(import_react55.default.Fragment, { children: [
|
|
6257
|
+
widgetProps && /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(NavigationTabsV2_default, { tabs, params: widgetProps.params }),
|
|
6258
|
+
/* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
|
|
6052
6259
|
DataList_default,
|
|
6053
6260
|
{
|
|
6054
6261
|
addLinkHref,
|
|
@@ -6067,12 +6274,12 @@ var DataListRenderer = ({
|
|
|
6067
6274
|
var DataListRenderer_default = DataListRenderer;
|
|
6068
6275
|
|
|
6069
6276
|
// src/components/dataForm/DataForm.tsx
|
|
6070
|
-
var
|
|
6277
|
+
var import_react57 = __toESM(require("react"));
|
|
6071
6278
|
init_Button();
|
|
6072
6279
|
init_StyleTypes();
|
|
6073
6280
|
|
|
6074
6281
|
// src/components/dataForm/DataFormChildSection.tsx
|
|
6075
|
-
var
|
|
6282
|
+
var import_react56 = __toESM(require("react"));
|
|
6076
6283
|
|
|
6077
6284
|
// src/components/dataForm/StyleTypes.tsx
|
|
6078
6285
|
var StyleTypes2 = /* @__PURE__ */ ((StyleTypes3) => {
|
|
@@ -6098,7 +6305,7 @@ var FORM_CHILD_ONE_TO_ONE_UPDATE = "FORM_CHILD_ONE_TO_ONE_UPDATE";
|
|
|
6098
6305
|
var FORM_CHILD_ROW_ADD = "FORM_CHILD_ROW_ADD";
|
|
6099
6306
|
|
|
6100
6307
|
// src/components/dataForm/DataFormChildSection.tsx
|
|
6101
|
-
var
|
|
6308
|
+
var import_jsx_runtime75 = require("react/jsx-runtime");
|
|
6102
6309
|
var DataFormChildSection = (props) => {
|
|
6103
6310
|
const { section } = props;
|
|
6104
6311
|
const isOneToOne = section.relationshipType === "one-to-one";
|
|
@@ -6110,7 +6317,7 @@ var DataFormChildSection = (props) => {
|
|
|
6110
6317
|
return childItems.map((item, originalIndex) => ({ item, originalIndex })).filter((x) => !x.item.isDeleted) || [];
|
|
6111
6318
|
};
|
|
6112
6319
|
const childItemsToRender = getChildItemsForRendering();
|
|
6113
|
-
const handleChildInputChange = (0,
|
|
6320
|
+
const handleChildInputChange = (0, import_react56.useCallback)(
|
|
6114
6321
|
(updatedValues) => {
|
|
6115
6322
|
if (isOneToOne) {
|
|
6116
6323
|
props.callback({
|
|
@@ -6137,7 +6344,7 @@ var DataFormChildSection = (props) => {
|
|
|
6137
6344
|
},
|
|
6138
6345
|
[props, isOneToOne, childItemsToRender]
|
|
6139
6346
|
);
|
|
6140
|
-
const onAddRow = (0,
|
|
6347
|
+
const onAddRow = (0, import_react56.useCallback)(() => {
|
|
6141
6348
|
props.callback({
|
|
6142
6349
|
sectionName: props.section.name,
|
|
6143
6350
|
actionType: FORM_CHILD_ROW_ADD,
|
|
@@ -6146,7 +6353,7 @@ var DataFormChildSection = (props) => {
|
|
|
6146
6353
|
rowIndex: -1
|
|
6147
6354
|
});
|
|
6148
6355
|
}, [props]);
|
|
6149
|
-
const onDeleteRow = (0,
|
|
6356
|
+
const onDeleteRow = (0, import_react56.useCallback)(
|
|
6150
6357
|
(filteredIndex) => {
|
|
6151
6358
|
const visibleItem = childItemsToRender[filteredIndex];
|
|
6152
6359
|
if (visibleItem) {
|
|
@@ -6166,14 +6373,14 @@ var DataFormChildSection = (props) => {
|
|
|
6166
6373
|
childItemsToRender,
|
|
6167
6374
|
allChildItems: childItems
|
|
6168
6375
|
});
|
|
6169
|
-
return /* @__PURE__ */ (0,
|
|
6170
|
-
section.sectionTitle && /* @__PURE__ */ (0,
|
|
6171
|
-
/* @__PURE__ */ (0,
|
|
6172
|
-
/* @__PURE__ */ (0,
|
|
6173
|
-
(!isOneToOne || childItemsToRender.length > 0) && /* @__PURE__ */ (0,
|
|
6174
|
-
return /* @__PURE__ */ (0,
|
|
6376
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_react56.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("div", { className: "rounded border-neutral-200 border px-6 py-4 mb-2", children: [
|
|
6377
|
+
section.sectionTitle && /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { className: "mb-4 text-lg font-medium text-body-950", children: section.sectionTitle }),
|
|
6378
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { className: "flex-grow flex flex-col justify-between overflow-y-auto", children: /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("div", { className: "flex flex-col justify-between gap-2", children: [
|
|
6379
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("table", { className: "w-full border-separate divide-y divide-gray-200", children: [
|
|
6380
|
+
(!isOneToOne || childItemsToRender.length > 0) && /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("thead", { className: "", children: section.sectionRows.map((sectionRow, sectionRowIndex) => {
|
|
6381
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("tr", { className: "", children: [
|
|
6175
6382
|
sectionRow.elements.map((field, index) => {
|
|
6176
|
-
return /* @__PURE__ */ (0,
|
|
6383
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
|
|
6177
6384
|
"th",
|
|
6178
6385
|
{
|
|
6179
6386
|
className: "py-3 font-normal text-left",
|
|
@@ -6182,21 +6389,21 @@ var DataFormChildSection = (props) => {
|
|
|
6182
6389
|
field.name
|
|
6183
6390
|
);
|
|
6184
6391
|
}),
|
|
6185
|
-
!section.readonly && !isOneToOne && /* @__PURE__ */ (0,
|
|
6392
|
+
!section.readonly && !isOneToOne && /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("th", { className: "py-3 font-normal text-left", children: "Actions" })
|
|
6186
6393
|
] }, sectionRowIndex);
|
|
6187
6394
|
}) }),
|
|
6188
|
-
/* @__PURE__ */ (0,
|
|
6395
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsx)("tbody", { className: "divide-y divide-gray-200", children: childItemsToRender.map((visibleItem, filteredIndex) => {
|
|
6189
6396
|
const { item, originalIndex } = visibleItem;
|
|
6190
6397
|
const rowKey = originalIndex;
|
|
6191
|
-
return /* @__PURE__ */ (0,
|
|
6398
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_react56.default.Fragment, { children: section.sectionRows.map(
|
|
6192
6399
|
(sectionRow, sectionRowIndex) => {
|
|
6193
|
-
return /* @__PURE__ */ (0,
|
|
6400
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)(
|
|
6194
6401
|
"tr",
|
|
6195
6402
|
{
|
|
6196
6403
|
className: "",
|
|
6197
6404
|
children: [
|
|
6198
6405
|
sectionRow.elements.map((field, index) => {
|
|
6199
|
-
return /* @__PURE__ */ (0,
|
|
6406
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("td", { children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { className: "w-11/12", children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
|
|
6200
6407
|
InputControl_default,
|
|
6201
6408
|
{
|
|
6202
6409
|
index: filteredIndex,
|
|
@@ -6216,7 +6423,7 @@ var DataFormChildSection = (props) => {
|
|
|
6216
6423
|
}
|
|
6217
6424
|
) }) }) }, field.name);
|
|
6218
6425
|
}),
|
|
6219
|
-
!section.readonly && !isOneToOne && /* @__PURE__ */ (0,
|
|
6426
|
+
!section.readonly && !isOneToOne && /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("td", { children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
|
|
6220
6427
|
ClientButton_default,
|
|
6221
6428
|
{
|
|
6222
6429
|
ButtonType: StyleTypes2.Hollow,
|
|
@@ -6225,7 +6432,7 @@ var DataFormChildSection = (props) => {
|
|
|
6225
6432
|
},
|
|
6226
6433
|
dataRole: "delete",
|
|
6227
6434
|
tabIndex: -1,
|
|
6228
|
-
children: /* @__PURE__ */ (0,
|
|
6435
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
|
|
6229
6436
|
Icon_default,
|
|
6230
6437
|
{
|
|
6231
6438
|
className: "w-4 h-4",
|
|
@@ -6242,7 +6449,7 @@ var DataFormChildSection = (props) => {
|
|
|
6242
6449
|
) }, rowKey);
|
|
6243
6450
|
}) })
|
|
6244
6451
|
] }) }),
|
|
6245
|
-
!section.readonly && !isOneToOne && /* @__PURE__ */ (0,
|
|
6452
|
+
!section.readonly && !isOneToOne && /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { className: "ml-1", children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
|
|
6246
6453
|
ClientButton_default,
|
|
6247
6454
|
{
|
|
6248
6455
|
ButtonType: "Link" /* Link */,
|
|
@@ -6257,9 +6464,9 @@ var DataFormChildSection = (props) => {
|
|
|
6257
6464
|
var DataFormChildSection_default = DataFormChildSection;
|
|
6258
6465
|
|
|
6259
6466
|
// src/components/dataForm/DataForm.tsx
|
|
6260
|
-
var
|
|
6467
|
+
var import_jsx_runtime76 = require("react/jsx-runtime");
|
|
6261
6468
|
var DataForm = (props) => {
|
|
6262
|
-
const formRef = (0,
|
|
6469
|
+
const formRef = (0, import_react57.useRef)(null);
|
|
6263
6470
|
console.log(props.dataItem, "dssads");
|
|
6264
6471
|
const initialState = {
|
|
6265
6472
|
inputValues: {},
|
|
@@ -6268,9 +6475,9 @@ var DataForm = (props) => {
|
|
|
6268
6475
|
const childInitialState = {
|
|
6269
6476
|
inputValues: []
|
|
6270
6477
|
};
|
|
6271
|
-
const [formState, dispatch] = (0,
|
|
6478
|
+
const [formState, dispatch] = (0, import_react57.useReducer)(FormReducer_default, initialState);
|
|
6272
6479
|
console.log(props.sections, "sections");
|
|
6273
|
-
const clearHiddenChildSections = (0,
|
|
6480
|
+
const clearHiddenChildSections = (0, import_react57.useCallback)(
|
|
6274
6481
|
(changedProperty, newValues) => {
|
|
6275
6482
|
if (!props.sections) return;
|
|
6276
6483
|
const allChildSections = [];
|
|
@@ -6308,7 +6515,7 @@ var DataForm = (props) => {
|
|
|
6308
6515
|
},
|
|
6309
6516
|
[props.sections, formState.inputValues]
|
|
6310
6517
|
);
|
|
6311
|
-
const handleInputChange = (0,
|
|
6518
|
+
const handleInputChange = (0, import_react57.useCallback)(
|
|
6312
6519
|
async (updatedValues) => {
|
|
6313
6520
|
dispatch({
|
|
6314
6521
|
type: FORM_INPUT_UPDATE,
|
|
@@ -6323,7 +6530,7 @@ var DataForm = (props) => {
|
|
|
6323
6530
|
},
|
|
6324
6531
|
[dispatch, formState.inputValues, clearHiddenChildSections]
|
|
6325
6532
|
);
|
|
6326
|
-
const fetchData = (0,
|
|
6533
|
+
const fetchData = (0, import_react57.useCallback)(async () => {
|
|
6327
6534
|
if (!props.rules) return;
|
|
6328
6535
|
if (Object.keys(formState.inputValues).length === 0) {
|
|
6329
6536
|
return;
|
|
@@ -6354,7 +6561,7 @@ var DataForm = (props) => {
|
|
|
6354
6561
|
console.error("Error fetching data:", error);
|
|
6355
6562
|
}
|
|
6356
6563
|
}, [formState.lastPropertyChanged, formState.inputValues]);
|
|
6357
|
-
(0,
|
|
6564
|
+
(0, import_react57.useEffect)(() => {
|
|
6358
6565
|
fetchData();
|
|
6359
6566
|
}, [formState.inputValues, formState.lastPropertyChanged]);
|
|
6360
6567
|
function replacePlaceholders(template, context, params) {
|
|
@@ -6374,7 +6581,7 @@ var DataForm = (props) => {
|
|
|
6374
6581
|
}
|
|
6375
6582
|
);
|
|
6376
6583
|
}
|
|
6377
|
-
const handleChildSectionChangeCallback = (0,
|
|
6584
|
+
const handleChildSectionChangeCallback = (0, import_react57.useCallback)(
|
|
6378
6585
|
(params) => {
|
|
6379
6586
|
dispatch({
|
|
6380
6587
|
type: params.actionType,
|
|
@@ -6419,7 +6626,7 @@ var DataForm = (props) => {
|
|
|
6419
6626
|
});
|
|
6420
6627
|
return cloned;
|
|
6421
6628
|
}
|
|
6422
|
-
const onClick = (0,
|
|
6629
|
+
const onClick = (0, import_react57.useCallback)(async () => {
|
|
6423
6630
|
if (props.onClick) {
|
|
6424
6631
|
const isEdit = props.dataItem && Object.keys(props.dataItem).length > 0;
|
|
6425
6632
|
const normalizedValues = normalizeChildSections(
|
|
@@ -6435,21 +6642,21 @@ var DataForm = (props) => {
|
|
|
6435
6642
|
return { isSuccessful: true };
|
|
6436
6643
|
}
|
|
6437
6644
|
}, [formState, props]);
|
|
6438
|
-
const handleAdditionalOnClick = (0,
|
|
6645
|
+
const handleAdditionalOnClick = (0, import_react57.useCallback)(async () => {
|
|
6439
6646
|
if (props.additionalActions?.onClick) {
|
|
6440
6647
|
return await props.additionalActions.onClick(formState);
|
|
6441
6648
|
} else {
|
|
6442
6649
|
return { isSuccessful: true, message: "Action completed successfully" };
|
|
6443
6650
|
}
|
|
6444
6651
|
}, [formState, props]);
|
|
6445
|
-
const onDelete = (0,
|
|
6652
|
+
const onDelete = (0, import_react57.useCallback)(async () => {
|
|
6446
6653
|
if (props.onDelete) {
|
|
6447
6654
|
return await props.onDelete(formState);
|
|
6448
6655
|
} else {
|
|
6449
6656
|
return { isSuccessful: true };
|
|
6450
6657
|
}
|
|
6451
6658
|
}, [formState, props]);
|
|
6452
|
-
(0,
|
|
6659
|
+
(0, import_react57.useEffect)(() => {
|
|
6453
6660
|
if (props.dataItem) {
|
|
6454
6661
|
dispatch({
|
|
6455
6662
|
type: FORM_INITIAL_UPDATE,
|
|
@@ -6477,19 +6684,19 @@ var DataForm = (props) => {
|
|
|
6477
6684
|
return false;
|
|
6478
6685
|
}
|
|
6479
6686
|
}
|
|
6480
|
-
return /* @__PURE__ */ (0,
|
|
6481
|
-
props.title && /* @__PURE__ */ (0,
|
|
6687
|
+
return /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_react57.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)("div", { className: "flex-grow flex flex-col", children: [
|
|
6688
|
+
props.title && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { className: "inline-flex items-center gap-2 px-6 py-3 border border-neutral-200 bg-white shadow-sm rounded-t-md", children: /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(
|
|
6482
6689
|
"div",
|
|
6483
6690
|
{
|
|
6484
6691
|
className: "inline-flex items-center gap-2 cursor-pointer",
|
|
6485
6692
|
onClick: () => window.history.back(),
|
|
6486
6693
|
children: [
|
|
6487
|
-
/* @__PURE__ */ (0,
|
|
6488
|
-
/* @__PURE__ */ (0,
|
|
6694
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)(Icon_default, { name: "chevronLeft", className: "w-4 h-4 text-primary-800" }),
|
|
6695
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)("h2", { className: "text-lg font-semibold text-primary-800", children: props.title })
|
|
6489
6696
|
]
|
|
6490
6697
|
}
|
|
6491
6698
|
) }),
|
|
6492
|
-
/* @__PURE__ */ (0,
|
|
6699
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
|
|
6493
6700
|
"form",
|
|
6494
6701
|
{
|
|
6495
6702
|
className: "group space-y-6 pb-6 overflow-y-auto",
|
|
@@ -6510,8 +6717,8 @@ var DataForm = (props) => {
|
|
|
6510
6717
|
}
|
|
6511
6718
|
}
|
|
6512
6719
|
},
|
|
6513
|
-
children: /* @__PURE__ */ (0,
|
|
6514
|
-
return /* @__PURE__ */ (0,
|
|
6720
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { className: "flex flex-col gap-6", children: props.sections?.map((section, sectionIndex) => {
|
|
6721
|
+
return /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_react57.default.Fragment, { children: !section.isChildSection && /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)("div", { className: " rounded-b-lg bg-white shadow border-neutral-200 border px-8 py-6 ", children: [
|
|
6515
6722
|
section.sectionRows?.map(
|
|
6516
6723
|
(sectionRow, sectionRowIndex) => {
|
|
6517
6724
|
const elementsCount = sectionRow.elements.length;
|
|
@@ -6522,46 +6729,49 @@ var DataForm = (props) => {
|
|
|
6522
6729
|
sectionRow.visible
|
|
6523
6730
|
);
|
|
6524
6731
|
}
|
|
6525
|
-
return /* @__PURE__ */ (0,
|
|
6526
|
-
return /* @__PURE__ */ (0,
|
|
6732
|
+
return /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_react57.default.Fragment, { children: isVisible && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { className: "lg:flex gap-14 flex-1 mb-4 ", children: sectionRow.elements.map((field, index) => {
|
|
6733
|
+
return /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(
|
|
6527
6734
|
"div",
|
|
6528
6735
|
{
|
|
6529
6736
|
className: sectionRow.grow ? "grow" : "",
|
|
6530
|
-
children:
|
|
6531
|
-
|
|
6532
|
-
|
|
6533
|
-
|
|
6534
|
-
|
|
6535
|
-
|
|
6536
|
-
|
|
6537
|
-
|
|
6538
|
-
|
|
6539
|
-
|
|
6540
|
-
|
|
6541
|
-
|
|
6542
|
-
|
|
6543
|
-
|
|
6544
|
-
|
|
6545
|
-
|
|
6546
|
-
|
|
6547
|
-
|
|
6548
|
-
|
|
6549
|
-
|
|
6550
|
-
|
|
6551
|
-
|
|
6552
|
-
|
|
6737
|
+
children: [
|
|
6738
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { children: field.controlType }),
|
|
6739
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
|
|
6740
|
+
InputControl_default,
|
|
6741
|
+
{
|
|
6742
|
+
name: field.name,
|
|
6743
|
+
controlType: field.controlType,
|
|
6744
|
+
value: getNestedProperty2(
|
|
6745
|
+
formState.inputValues,
|
|
6746
|
+
field.name
|
|
6747
|
+
),
|
|
6748
|
+
callback: handleInputChange,
|
|
6749
|
+
dataSourceDependsOn: field.dataSourceDependsOn,
|
|
6750
|
+
dependentValue: field.dataSourceDependsOn ? formState.inputValues[field.dataSourceDependsOn] : "",
|
|
6751
|
+
dataSource: field.dataSource,
|
|
6752
|
+
dataset: field.dataset,
|
|
6753
|
+
dataKeyFieldName: field.dataKeyFieldName,
|
|
6754
|
+
dataTextFieldName: field.dataTextFieldName,
|
|
6755
|
+
attributes: field.attributes,
|
|
6756
|
+
serviceClient: props.serviceClient,
|
|
6757
|
+
assetsUploadPath: props.dataItem ? props.dataItem["assetsUploadPath"] : null,
|
|
6758
|
+
entityType: field.entityType,
|
|
6759
|
+
uploadInSharedLocation: field.uploadInSharedLocation
|
|
6760
|
+
}
|
|
6761
|
+
)
|
|
6762
|
+
]
|
|
6553
6763
|
},
|
|
6554
6764
|
field.name
|
|
6555
6765
|
);
|
|
6556
6766
|
}) }) }, sectionRowIndex);
|
|
6557
6767
|
}
|
|
6558
6768
|
),
|
|
6559
|
-
/* @__PURE__ */ (0,
|
|
6769
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { children: section.childSections?.map(
|
|
6560
6770
|
(childSection, childSectionIndex) => {
|
|
6561
|
-
return /* @__PURE__ */ (0,
|
|
6771
|
+
return /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { children: childSection.name && evalutateCondition(
|
|
6562
6772
|
formState.inputValues,
|
|
6563
6773
|
childSection.visible
|
|
6564
|
-
) && /* @__PURE__ */ (0,
|
|
6774
|
+
) && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
|
|
6565
6775
|
DataFormChildSection_default,
|
|
6566
6776
|
{
|
|
6567
6777
|
section: childSection,
|
|
@@ -6576,8 +6786,8 @@ var DataForm = (props) => {
|
|
|
6576
6786
|
}) })
|
|
6577
6787
|
}
|
|
6578
6788
|
),
|
|
6579
|
-
/* @__PURE__ */ (0,
|
|
6580
|
-
/* @__PURE__ */ (0,
|
|
6789
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsxs)("div", { className: "flex px-6 py-3 mt-2 mb-2 justify-end items-center gap-5", children: [
|
|
6790
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { children: props.additionalActions && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
|
|
6581
6791
|
Button_default,
|
|
6582
6792
|
{
|
|
6583
6793
|
ButtonType: "PrimaryHollow" /* Hollow */,
|
|
@@ -6585,7 +6795,7 @@ var DataForm = (props) => {
|
|
|
6585
6795
|
children: props.additionalActions.title
|
|
6586
6796
|
}
|
|
6587
6797
|
) }),
|
|
6588
|
-
/* @__PURE__ */ (0,
|
|
6798
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { children: props.onDelete && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
|
|
6589
6799
|
Button_default,
|
|
6590
6800
|
{
|
|
6591
6801
|
ButtonType: "PrimaryHollow" /* Hollow */,
|
|
@@ -6596,7 +6806,7 @@ var DataForm = (props) => {
|
|
|
6596
6806
|
children: "Delete"
|
|
6597
6807
|
}
|
|
6598
6808
|
) }),
|
|
6599
|
-
/* @__PURE__ */ (0,
|
|
6809
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { children: props.onClick && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
|
|
6600
6810
|
Button_default,
|
|
6601
6811
|
{
|
|
6602
6812
|
onValidate,
|
|
@@ -6614,7 +6824,7 @@ var DataForm_default = DataForm;
|
|
|
6614
6824
|
|
|
6615
6825
|
// src/components/dataForm/DataFormRenderer.tsx
|
|
6616
6826
|
init_ServiceClient();
|
|
6617
|
-
var
|
|
6827
|
+
var import_jsx_runtime77 = require("react/jsx-runtime");
|
|
6618
6828
|
function getAction(actions, code) {
|
|
6619
6829
|
return actions?.find((a) => a.actionCode === code);
|
|
6620
6830
|
}
|
|
@@ -6640,9 +6850,9 @@ var DataFormRenderer = ({
|
|
|
6640
6850
|
"Delete"
|
|
6641
6851
|
);
|
|
6642
6852
|
const hasDataItem = dataItem && Object.keys(dataItem).length > 0;
|
|
6643
|
-
return /* @__PURE__ */ (0,
|
|
6644
|
-
widgetProps && /* @__PURE__ */ (0,
|
|
6645
|
-
/* @__PURE__ */ (0,
|
|
6853
|
+
return /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: "flex-grow flex flex-col", children: [
|
|
6854
|
+
widgetProps && /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(NavigationTabsV2_default, { tabs, params: widgetProps.params }),
|
|
6855
|
+
/* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
|
|
6646
6856
|
DataForm_default,
|
|
6647
6857
|
{
|
|
6648
6858
|
title: !isAddPage ? "Edit " + formDefinition.formTitle + "- v2" : "Add " + formDefinition.formTitle + "- v2",
|