@acoustte-digital-services/digitalstore-controls-dev 0.8.1-dev.20260326104921 → 0.8.1-dev.20260326105727
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/LinkNodeButton-KBSXOEHS.mjs +169 -0
- package/dist/chunk-3IDT4246.mjs +400 -0
- package/dist/index.js +640 -565
- package/dist/index.mjs +352 -901
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
HlsPlayer_default
|
|
3
3
|
} from "./chunk-CVVLFQ4J.mjs";
|
|
4
|
+
import {
|
|
5
|
+
Button_default,
|
|
6
|
+
ServiceClient_default,
|
|
7
|
+
buttonClasses
|
|
8
|
+
} from "./chunk-3IDT4246.mjs";
|
|
4
9
|
|
|
5
10
|
// src/components/pageRenderingEngine/nodes/WidgetRegistry.tsx
|
|
6
11
|
var registry = {};
|
|
@@ -346,7 +351,7 @@ var ViewControl = (props) => {
|
|
|
346
351
|
var ViewControl_default = ViewControl;
|
|
347
352
|
|
|
348
353
|
// src/components/controls/edit/InputControl.tsx
|
|
349
|
-
import
|
|
354
|
+
import React26 from "react";
|
|
350
355
|
|
|
351
356
|
// src/components/controls/edit/MultilineTextInput.tsx
|
|
352
357
|
import React10 from "react";
|
|
@@ -1210,214 +1215,24 @@ var SelectWithSearchInput = (props) => {
|
|
|
1210
1215
|
};
|
|
1211
1216
|
var SelectWithSearchInput_default = SelectWithSearchInput;
|
|
1212
1217
|
|
|
1213
|
-
// src/components/Button.tsx
|
|
1214
|
-
import React24, { useState as useState4 } from "react";
|
|
1215
|
-
|
|
1216
|
-
// src/components/ToastService.tsx
|
|
1217
|
-
var ToastService = class _ToastService {
|
|
1218
|
-
static initialize(showToast, closeToast) {
|
|
1219
|
-
_ToastService.showToast = showToast;
|
|
1220
|
-
_ToastService.closeToast = closeToast;
|
|
1221
|
-
}
|
|
1222
|
-
static showError(message) {
|
|
1223
|
-
if (_ToastService.showToast) {
|
|
1224
|
-
_ToastService.showToast(message, "error");
|
|
1225
|
-
}
|
|
1226
|
-
}
|
|
1227
|
-
static showInfo(message) {
|
|
1228
|
-
if (_ToastService.showToast) {
|
|
1229
|
-
_ToastService.showToast(message, "info");
|
|
1230
|
-
}
|
|
1231
|
-
}
|
|
1232
|
-
static close() {
|
|
1233
|
-
if (_ToastService.closeToast) {
|
|
1234
|
-
_ToastService.closeToast();
|
|
1235
|
-
}
|
|
1236
|
-
}
|
|
1237
|
-
};
|
|
1238
|
-
var ToastService_default = ToastService;
|
|
1239
|
-
|
|
1240
|
-
// src/components/StyleTypes.tsx
|
|
1241
|
-
var buttonClasses = /* @__PURE__ */ new Map([
|
|
1242
|
-
["Primary" /* Solid */, "btn-solid"],
|
|
1243
|
-
["PrimaryHollow" /* Hollow */, "btn-hollow"],
|
|
1244
|
-
["Link" /* Link */, "btn-link"]
|
|
1245
|
-
]);
|
|
1246
|
-
var progressClasses = /* @__PURE__ */ new Map([
|
|
1247
|
-
["Primary" /* Solid */, ""],
|
|
1248
|
-
["PrimaryHollow" /* Hollow */, ""],
|
|
1249
|
-
["Link" /* Link */, ""]
|
|
1250
|
-
]);
|
|
1251
|
-
|
|
1252
|
-
// src/components/Confirm.tsx
|
|
1253
|
-
import { useState as useState3 } from "react";
|
|
1254
|
-
|
|
1255
|
-
// src/components/ClientButton.tsx
|
|
1256
|
-
import React22 from "react";
|
|
1257
|
-
import { jsx as jsx22 } from "react/jsx-runtime";
|
|
1258
|
-
var ClientButton = (props) => {
|
|
1259
|
-
const execute = async (event) => {
|
|
1260
|
-
if (props.onClick !== void 0) {
|
|
1261
|
-
props.onClick();
|
|
1262
|
-
} else {
|
|
1263
|
-
ToastService_default.showError("No action defined.");
|
|
1264
|
-
}
|
|
1265
|
-
};
|
|
1266
|
-
let buttonClass = props.ButtonType ? buttonClasses.get(props.ButtonType) : buttonClasses.get("Primary" /* Solid */);
|
|
1267
|
-
return /* @__PURE__ */ jsx22(React22.Fragment, { children: /* @__PURE__ */ jsx22(
|
|
1268
|
-
"button",
|
|
1269
|
-
{
|
|
1270
|
-
type: "button",
|
|
1271
|
-
onClick: execute,
|
|
1272
|
-
className: buttonClass + " " + props.className,
|
|
1273
|
-
children: props.children
|
|
1274
|
-
}
|
|
1275
|
-
) });
|
|
1276
|
-
};
|
|
1277
|
-
var ClientButton_default = ClientButton;
|
|
1278
|
-
|
|
1279
|
-
// src/components/Confirm.tsx
|
|
1280
|
-
import { Fragment, jsx as jsx23, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
1281
|
-
var Confirm = ({ message, onConfirm, onCancel }) => {
|
|
1282
|
-
const [showModal, setShowModal] = useState3(true);
|
|
1283
|
-
const handleConfirmAction = () => {
|
|
1284
|
-
setShowModal(false);
|
|
1285
|
-
if (onConfirm) {
|
|
1286
|
-
onConfirm();
|
|
1287
|
-
}
|
|
1288
|
-
};
|
|
1289
|
-
const handleCancelAction = () => {
|
|
1290
|
-
setShowModal(false);
|
|
1291
|
-
if (onCancel) {
|
|
1292
|
-
onCancel();
|
|
1293
|
-
}
|
|
1294
|
-
};
|
|
1295
|
-
return /* @__PURE__ */ jsx23(Fragment, { children: showModal && /* @__PURE__ */ jsxs18("div", { className: "fixed inset-0 flex items-center justify-center z-50", children: [
|
|
1296
|
-
/* @__PURE__ */ jsx23("div", { className: "absolute inset-0 bg-black opacity-70" }),
|
|
1297
|
-
/* @__PURE__ */ jsxs18("div", { className: "bg-white rounded-md p-6 w-2/6 shadow border z-50", children: [
|
|
1298
|
-
/* @__PURE__ */ jsx23("p", { className: "text-xl font-medium mb-4", children: "Confirmation" }),
|
|
1299
|
-
/* @__PURE__ */ jsx23("p", { className: "mb-4", children: message }),
|
|
1300
|
-
/* @__PURE__ */ jsxs18("div", { className: "flex justify-end gap-8", children: [
|
|
1301
|
-
/* @__PURE__ */ jsx23(
|
|
1302
|
-
ClientButton_default,
|
|
1303
|
-
{
|
|
1304
|
-
onClick: handleCancelAction,
|
|
1305
|
-
ButtonType: "PrimaryHollow" /* Hollow */,
|
|
1306
|
-
children: "Cancel"
|
|
1307
|
-
}
|
|
1308
|
-
),
|
|
1309
|
-
/* @__PURE__ */ jsx23(
|
|
1310
|
-
ClientButton_default,
|
|
1311
|
-
{
|
|
1312
|
-
onClick: handleConfirmAction,
|
|
1313
|
-
children: "Confirm"
|
|
1314
|
-
}
|
|
1315
|
-
)
|
|
1316
|
-
] })
|
|
1317
|
-
] })
|
|
1318
|
-
] }) });
|
|
1319
|
-
};
|
|
1320
|
-
var Confirm_default = Confirm;
|
|
1321
|
-
{
|
|
1322
|
-
}
|
|
1323
|
-
|
|
1324
|
-
// src/components/Button.tsx
|
|
1325
|
-
import { jsx as jsx24, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
1326
|
-
var Button = (props) => {
|
|
1327
|
-
const [inProgress, setInProgress] = useState4(false);
|
|
1328
|
-
const [isActionPerformed, setIsActionPerformed] = useState4(false);
|
|
1329
|
-
const [responseMessage, setResponseMessage] = useState4(null);
|
|
1330
|
-
const [showModal, setShowModal] = useState4(null);
|
|
1331
|
-
const execute = async (event) => {
|
|
1332
|
-
event.preventDefault();
|
|
1333
|
-
event.stopPropagation();
|
|
1334
|
-
if (props.confirm) {
|
|
1335
|
-
const confirmed = await showConfirmation("Are you sure you want to delete this item?");
|
|
1336
|
-
setShowModal(null);
|
|
1337
|
-
if (!confirmed) {
|
|
1338
|
-
return;
|
|
1339
|
-
}
|
|
1340
|
-
}
|
|
1341
|
-
if (props.oneTimeAction && isActionPerformed) {
|
|
1342
|
-
return;
|
|
1343
|
-
}
|
|
1344
|
-
setInProgress(true);
|
|
1345
|
-
let isValid = true;
|
|
1346
|
-
if (props.onValidate !== void 0) {
|
|
1347
|
-
isValid = await props.onValidate();
|
|
1348
|
-
if (!isValid) {
|
|
1349
|
-
setInProgress(false);
|
|
1350
|
-
ToastService_default.showError("There are errors in the form. Please fix them before proceeding.");
|
|
1351
|
-
return;
|
|
1352
|
-
}
|
|
1353
|
-
}
|
|
1354
|
-
if (props.onClick !== void 0) {
|
|
1355
|
-
let response = await props.onClick();
|
|
1356
|
-
if (response.isSuccessful) {
|
|
1357
|
-
setIsActionPerformed(true);
|
|
1358
|
-
setResponseMessage(response.message);
|
|
1359
|
-
if (props.showToast) {
|
|
1360
|
-
ToastService_default.showInfo(response.message || "");
|
|
1361
|
-
}
|
|
1362
|
-
} else {
|
|
1363
|
-
ToastService_default.showError(response.message || "");
|
|
1364
|
-
}
|
|
1365
|
-
} else {
|
|
1366
|
-
ToastService_default.showError("No action defined.");
|
|
1367
|
-
}
|
|
1368
|
-
setInProgress(false);
|
|
1369
|
-
};
|
|
1370
|
-
const showConfirmation = (message) => {
|
|
1371
|
-
return new Promise((resolve) => {
|
|
1372
|
-
const onConfirm = () => resolve(true);
|
|
1373
|
-
const onCancel = () => resolve(false);
|
|
1374
|
-
setShowModal(/* @__PURE__ */ jsx24(Confirm_default, { message: props.confirmationMessage, onConfirm, onCancel }));
|
|
1375
|
-
});
|
|
1376
|
-
};
|
|
1377
|
-
let buttonClass = props.ButtonType ? buttonClasses.get(props.ButtonType) : buttonClasses.get("Primary" /* Solid */);
|
|
1378
|
-
let progressClass = props.ButtonType ? progressClasses.get(props.ButtonType) : progressClasses.get("Primary" /* Solid */);
|
|
1379
|
-
const isDisabled = inProgress || isActionPerformed && props.oneTimeAction;
|
|
1380
|
-
return /* @__PURE__ */ jsxs19(React24.Fragment, { children: [
|
|
1381
|
-
/* @__PURE__ */ jsxs19(
|
|
1382
|
-
"button",
|
|
1383
|
-
{
|
|
1384
|
-
type: "submit",
|
|
1385
|
-
onClick: execute,
|
|
1386
|
-
disabled: props.disabled,
|
|
1387
|
-
title: isDisabled ? "The button is disabled to prevent any action" : "",
|
|
1388
|
-
className: buttonClass + " relative " + props.className,
|
|
1389
|
-
children: [
|
|
1390
|
-
isActionPerformed && props.oneTimeAction && responseMessage ? responseMessage : props.children,
|
|
1391
|
-
inProgress && /* @__PURE__ */ jsx24(React24.Fragment, { children: props.hideProgressIndicator === true ? /* @__PURE__ */ jsx24("div", { className: "absolute bottom-0 left-0 h-0.5 bg-gray-400 rounded animate-progress" }) : /* @__PURE__ */ jsxs19("svg", { className: "animate-spin ml-2 mr-3 h-5 w-5 " + progressClass, xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", children: [
|
|
1392
|
-
/* @__PURE__ */ jsx24("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }),
|
|
1393
|
-
/* @__PURE__ */ jsx24("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z" })
|
|
1394
|
-
] }) })
|
|
1395
|
-
]
|
|
1396
|
-
}
|
|
1397
|
-
),
|
|
1398
|
-
showModal
|
|
1399
|
-
] });
|
|
1400
|
-
};
|
|
1401
|
-
var Button_default = Button;
|
|
1402
|
-
|
|
1403
1218
|
// src/components/controls/edit/SelectWithSearchPanel.tsx
|
|
1404
|
-
import
|
|
1219
|
+
import React22, {
|
|
1405
1220
|
useEffect as useEffect4,
|
|
1406
1221
|
useRef as useRef2,
|
|
1407
|
-
useState as
|
|
1222
|
+
useState as useState3,
|
|
1408
1223
|
useCallback
|
|
1409
1224
|
} from "react";
|
|
1410
|
-
import { jsx as
|
|
1225
|
+
import { jsx as jsx22, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
1411
1226
|
var SelectWithSearchPanel = (props) => {
|
|
1412
|
-
const [isOpen, setIsOpen] =
|
|
1413
|
-
const [searchTerm, setSearchTerm] =
|
|
1414
|
-
const [highlightedIndex, setHighlightedIndex] =
|
|
1415
|
-
const [list, setList] =
|
|
1227
|
+
const [isOpen, setIsOpen] = useState3(false);
|
|
1228
|
+
const [searchTerm, setSearchTerm] = useState3("");
|
|
1229
|
+
const [highlightedIndex, setHighlightedIndex] = useState3(0);
|
|
1230
|
+
const [list, setList] = useState3([]);
|
|
1416
1231
|
const listRef = useRef2(null);
|
|
1417
|
-
const [isError, setIsError] =
|
|
1232
|
+
const [isError, setIsError] = useState3(false);
|
|
1418
1233
|
const containerRef = useRef2(null);
|
|
1419
|
-
const [isCreateOpen, setIsCreateOpen] =
|
|
1420
|
-
const [formData, setFormData] =
|
|
1234
|
+
const [isCreateOpen, setIsCreateOpen] = useState3(false);
|
|
1235
|
+
const [formData, setFormData] = useState3({});
|
|
1421
1236
|
const getNestedValue3 = (obj, path) => {
|
|
1422
1237
|
return path.split(".").reduce((acc, key) => acc?.[key], obj);
|
|
1423
1238
|
};
|
|
@@ -1543,9 +1358,9 @@ var SelectWithSearchPanel = (props) => {
|
|
|
1543
1358
|
console.log("Form Data:", formData);
|
|
1544
1359
|
return formData;
|
|
1545
1360
|
}, []);
|
|
1546
|
-
return /* @__PURE__ */
|
|
1547
|
-
/* @__PURE__ */
|
|
1548
|
-
/* @__PURE__ */
|
|
1361
|
+
return /* @__PURE__ */ jsxs18("div", { className: "relative", children: [
|
|
1362
|
+
/* @__PURE__ */ jsx22("label", { className: "text-sm mb-1 font-medium", children: props.attributes?.label }),
|
|
1363
|
+
/* @__PURE__ */ jsx22("div", { children: /* @__PURE__ */ jsx22(
|
|
1549
1364
|
"input",
|
|
1550
1365
|
{
|
|
1551
1366
|
type: "text",
|
|
@@ -1559,14 +1374,14 @@ var SelectWithSearchPanel = (props) => {
|
|
|
1559
1374
|
disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none`
|
|
1560
1375
|
}
|
|
1561
1376
|
) }),
|
|
1562
|
-
/* @__PURE__ */
|
|
1563
|
-
/* @__PURE__ */
|
|
1564
|
-
/* @__PURE__ */
|
|
1377
|
+
/* @__PURE__ */ jsx22("div", { ref: containerRef, children: isOpen && /* @__PURE__ */ jsxs18(React22.Fragment, { children: [
|
|
1378
|
+
/* @__PURE__ */ jsxs18("div", { className: "fixed z-50 right-0 bg-white top-[62px] w-1/4 border-l border-gray-200", children: [
|
|
1379
|
+
/* @__PURE__ */ jsx22("div", { className: "flex flex-col p-2 bg-accent-950 text-white", children: /* @__PURE__ */ jsxs18("h5", { className: "text-md text-white font-medium", children: [
|
|
1565
1380
|
"Select a",
|
|
1566
1381
|
" ",
|
|
1567
1382
|
props.attributes?.label || props.attributes?.heading
|
|
1568
1383
|
] }) }),
|
|
1569
|
-
/* @__PURE__ */
|
|
1384
|
+
/* @__PURE__ */ jsx22("div", { className: "flex justify-end px-4 border-b py-2 border-gray-200 h-10", children: props.createFields && props.createFields.length > 0 && /* @__PURE__ */ jsx22(
|
|
1570
1385
|
"button",
|
|
1571
1386
|
{
|
|
1572
1387
|
type: "button",
|
|
@@ -1579,12 +1394,12 @@ var SelectWithSearchPanel = (props) => {
|
|
|
1579
1394
|
}
|
|
1580
1395
|
) })
|
|
1581
1396
|
] }),
|
|
1582
|
-
isCreateOpen && /* @__PURE__ */
|
|
1583
|
-
/* @__PURE__ */
|
|
1397
|
+
isCreateOpen && /* @__PURE__ */ jsxs18("div", { className: "fixed right-0 w-1/4 h-full top-[62px] bg-white shadow-lg border-l border-gray-200 z-50", children: [
|
|
1398
|
+
/* @__PURE__ */ jsx22("div", { className: "flex flex-col p-2 bg-accent-950", children: /* @__PURE__ */ jsxs18("h5", { className: "text-md font-medium text-white", children: [
|
|
1584
1399
|
"Create New ",
|
|
1585
1400
|
props.attributes?.label
|
|
1586
1401
|
] }) }),
|
|
1587
|
-
/* @__PURE__ */
|
|
1402
|
+
/* @__PURE__ */ jsx22("div", { className: "flex justify-end px-4 border-b py-2 border-gray-200", children: /* @__PURE__ */ jsx22(
|
|
1588
1403
|
"button",
|
|
1589
1404
|
{
|
|
1590
1405
|
type: "button",
|
|
@@ -1593,10 +1408,10 @@ var SelectWithSearchPanel = (props) => {
|
|
|
1593
1408
|
children: "Close"
|
|
1594
1409
|
}
|
|
1595
1410
|
) }),
|
|
1596
|
-
/* @__PURE__ */
|
|
1597
|
-
props.createFields?.map((field) => /* @__PURE__ */
|
|
1598
|
-
/* @__PURE__ */
|
|
1599
|
-
/* @__PURE__ */
|
|
1411
|
+
/* @__PURE__ */ jsxs18("div", { className: "p-4", children: [
|
|
1412
|
+
props.createFields?.map((field) => /* @__PURE__ */ jsxs18("div", { className: "mb-4", children: [
|
|
1413
|
+
/* @__PURE__ */ jsx22("label", { className: "text-sm mb-1 font-medium block", children: field.label }),
|
|
1414
|
+
/* @__PURE__ */ jsx22(
|
|
1600
1415
|
"input",
|
|
1601
1416
|
{
|
|
1602
1417
|
type: field.type,
|
|
@@ -1612,7 +1427,7 @@ var SelectWithSearchPanel = (props) => {
|
|
|
1612
1427
|
}
|
|
1613
1428
|
)
|
|
1614
1429
|
] }, field.name)),
|
|
1615
|
-
/* @__PURE__ */
|
|
1430
|
+
/* @__PURE__ */ jsxs18(Button_default, { onClick: async () => {
|
|
1616
1431
|
handleSaveModal();
|
|
1617
1432
|
return { isSuccessful: true };
|
|
1618
1433
|
}, className: "w-full", children: [
|
|
@@ -1621,13 +1436,13 @@ var SelectWithSearchPanel = (props) => {
|
|
|
1621
1436
|
] })
|
|
1622
1437
|
] })
|
|
1623
1438
|
] }),
|
|
1624
|
-
/* @__PURE__ */
|
|
1439
|
+
/* @__PURE__ */ jsx22(
|
|
1625
1440
|
"div",
|
|
1626
1441
|
{
|
|
1627
1442
|
ref: listRef,
|
|
1628
1443
|
className: "fixed z-10 right-0 mt-[130px] top-0 w-1/4 bg-white border-l border-gray-200 shadow-lg overflow-y-auto",
|
|
1629
1444
|
style: { height: "calc(100vh - 130px)" },
|
|
1630
|
-
children: filteredItems.length > 0 ? filteredItems.map((item, index) => /* @__PURE__ */
|
|
1445
|
+
children: filteredItems.length > 0 ? filteredItems.map((item, index) => /* @__PURE__ */ jsx22("div", { children: /* @__PURE__ */ jsx22(
|
|
1631
1446
|
"button",
|
|
1632
1447
|
{
|
|
1633
1448
|
onClick: (e) => {
|
|
@@ -1637,9 +1452,9 @@ var SelectWithSearchPanel = (props) => {
|
|
|
1637
1452
|
role: "option",
|
|
1638
1453
|
tabIndex: -1,
|
|
1639
1454
|
onMouseEnter: () => setHighlightedIndex(index),
|
|
1640
|
-
children: /* @__PURE__ */
|
|
1455
|
+
children: /* @__PURE__ */ jsx22("span", { children: getNestedValue3(item, props.dataTextFieldName) })
|
|
1641
1456
|
}
|
|
1642
|
-
) }, item[props.dataKeyFieldName])) : /* @__PURE__ */
|
|
1457
|
+
) }, item[props.dataKeyFieldName])) : /* @__PURE__ */ jsx22("div", { className: "px-4 py-2 text-gray-500", children: "No results found" })
|
|
1643
1458
|
}
|
|
1644
1459
|
)
|
|
1645
1460
|
] }) })
|
|
@@ -1648,13 +1463,13 @@ var SelectWithSearchPanel = (props) => {
|
|
|
1648
1463
|
var SelectWithSearchPanel_default = SelectWithSearchPanel;
|
|
1649
1464
|
|
|
1650
1465
|
// src/components/controls/edit/BooleanSelect.tsx
|
|
1651
|
-
import
|
|
1652
|
-
useState as
|
|
1466
|
+
import React23, {
|
|
1467
|
+
useState as useState4,
|
|
1653
1468
|
useEffect as useEffect5
|
|
1654
1469
|
} from "react";
|
|
1655
|
-
import { jsx as
|
|
1470
|
+
import { jsx as jsx23, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
1656
1471
|
var BooleanSelect = (props) => {
|
|
1657
|
-
const [list, setList] =
|
|
1472
|
+
const [list, setList] = useState4();
|
|
1658
1473
|
const textChangeHandler = (event) => {
|
|
1659
1474
|
const text = event.target.value;
|
|
1660
1475
|
const boolValue = text?.toLowerCase() === "true" || text === "1";
|
|
@@ -1701,11 +1516,11 @@ var BooleanSelect = (props) => {
|
|
|
1701
1516
|
if (props.value !== void 0 && props.value !== null) {
|
|
1702
1517
|
value = props.value;
|
|
1703
1518
|
}
|
|
1704
|
-
return /* @__PURE__ */
|
|
1705
|
-
/* @__PURE__ */
|
|
1519
|
+
return /* @__PURE__ */ jsx23(React23.Fragment, { children: /* @__PURE__ */ jsxs19("label", { className: "block", children: [
|
|
1520
|
+
/* @__PURE__ */ jsx23("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
|
|
1706
1521
|
" ",
|
|
1707
|
-
props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */
|
|
1708
|
-
/* @__PURE__ */
|
|
1522
|
+
props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx23("span", { className: "text-alert", children: "*" }),
|
|
1523
|
+
/* @__PURE__ */ jsxs19(
|
|
1709
1524
|
"select",
|
|
1710
1525
|
{
|
|
1711
1526
|
name: props.name,
|
|
@@ -1717,9 +1532,9 @@ var BooleanSelect = (props) => {
|
|
|
1717
1532
|
disabled: props?.attributes?.readOnly,
|
|
1718
1533
|
className: "peer mt-1 py-1.5 block w-full text-black rounded border-gray-300 shadow-sm\n focus:border-indigo-300 focus:ring focus:ring-indigo-200 focus:ring-opacity-50\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n ",
|
|
1719
1534
|
children: [
|
|
1720
|
-
/* @__PURE__ */
|
|
1535
|
+
/* @__PURE__ */ jsx23("option", { className: "", value: "", children: props.attributes?.placeholder || "Select" }),
|
|
1721
1536
|
list && list.map((item, i) => {
|
|
1722
|
-
return /* @__PURE__ */
|
|
1537
|
+
return /* @__PURE__ */ jsx23(
|
|
1723
1538
|
"option",
|
|
1724
1539
|
{
|
|
1725
1540
|
className: "fac-select-option",
|
|
@@ -1732,14 +1547,14 @@ var BooleanSelect = (props) => {
|
|
|
1732
1547
|
]
|
|
1733
1548
|
}
|
|
1734
1549
|
),
|
|
1735
|
-
/* @__PURE__ */
|
|
1550
|
+
/* @__PURE__ */ jsx23("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 text-alert text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
|
|
1736
1551
|
] }) });
|
|
1737
1552
|
};
|
|
1738
1553
|
var BooleanSelect_default = BooleanSelect;
|
|
1739
1554
|
|
|
1740
1555
|
// src/components/controls/edit/EmailInput.tsx
|
|
1741
|
-
import
|
|
1742
|
-
import { jsx as
|
|
1556
|
+
import React24 from "react";
|
|
1557
|
+
import { jsx as jsx24, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
1743
1558
|
var EmailInput = (props) => {
|
|
1744
1559
|
const textChangeHandler = (event) => {
|
|
1745
1560
|
const text = event.target.value;
|
|
@@ -1764,11 +1579,11 @@ var EmailInput = (props) => {
|
|
|
1764
1579
|
if (props.value !== void 0 && props.value !== null) {
|
|
1765
1580
|
value = props.value;
|
|
1766
1581
|
}
|
|
1767
|
-
return /* @__PURE__ */
|
|
1768
|
-
/* @__PURE__ */
|
|
1582
|
+
return /* @__PURE__ */ jsx24(React24.Fragment, { children: /* @__PURE__ */ jsxs20("label", { className: "block mb-1", children: [
|
|
1583
|
+
/* @__PURE__ */ jsx24("span", { className: "text-sm font-medium text-slate-700", children: props?.attributes?.label }),
|
|
1769
1584
|
" ",
|
|
1770
|
-
props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */
|
|
1771
|
-
/* @__PURE__ */
|
|
1585
|
+
props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx24("span", { className: "text-alert", children: "*" }),
|
|
1586
|
+
/* @__PURE__ */ jsx24(
|
|
1772
1587
|
"input",
|
|
1773
1588
|
{
|
|
1774
1589
|
type: "email",
|
|
@@ -1784,14 +1599,14 @@ var EmailInput = (props) => {
|
|
|
1784
1599
|
className: "peer mt-1 py-1.5 block w-full rounded border-gray-300 shadow-sm\n focus-within:border-neutral-300 focus-within:ring focus-within:ring-neutral-300 focus-within:ring-opacity-50 transition-all duration-500 ease-in-out"
|
|
1785
1600
|
}
|
|
1786
1601
|
),
|
|
1787
|
-
/* @__PURE__ */
|
|
1602
|
+
/* @__PURE__ */ jsx24("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 mb-0 text-alert text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
|
|
1788
1603
|
] }) });
|
|
1789
1604
|
};
|
|
1790
1605
|
var EmailInput_default = EmailInput;
|
|
1791
1606
|
|
|
1792
1607
|
// src/components/controls/edit/TimeInput.tsx
|
|
1793
|
-
import
|
|
1794
|
-
import { jsx as
|
|
1608
|
+
import React25 from "react";
|
|
1609
|
+
import { jsx as jsx25, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
1795
1610
|
var TimeInput = (props) => {
|
|
1796
1611
|
const timeChangeHandler = (event) => {
|
|
1797
1612
|
const timeValue = event.target.value;
|
|
@@ -1804,10 +1619,10 @@ var TimeInput = (props) => {
|
|
|
1804
1619
|
});
|
|
1805
1620
|
}
|
|
1806
1621
|
};
|
|
1807
|
-
return /* @__PURE__ */
|
|
1808
|
-
/* @__PURE__ */
|
|
1809
|
-
props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */
|
|
1810
|
-
/* @__PURE__ */
|
|
1622
|
+
return /* @__PURE__ */ jsx25(React25.Fragment, { children: /* @__PURE__ */ jsxs21("label", { className: "block mb-1", children: [
|
|
1623
|
+
/* @__PURE__ */ jsx25("span", { className: "text-sm font-medium", children: props?.attributes?.label }),
|
|
1624
|
+
props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx25("span", { className: "text-alert", children: "*" }),
|
|
1625
|
+
/* @__PURE__ */ jsx25("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ jsx25(
|
|
1811
1626
|
"input",
|
|
1812
1627
|
{
|
|
1813
1628
|
type: "time",
|
|
@@ -1820,14 +1635,14 @@ var TimeInput = (props) => {
|
|
|
1820
1635
|
className: "peer mt-1 py-1.5 block w-full rounded border-gray-300 shadow-sm\n focus:border-indigo-300 focus:ring focus:ring-indigo-200 focus:ring-opacity-50\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none"
|
|
1821
1636
|
}
|
|
1822
1637
|
) }),
|
|
1823
|
-
/* @__PURE__ */
|
|
1638
|
+
/* @__PURE__ */ jsx25("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 text-alert text-sm", children: props?.attributes?.errorMessage ?? "" })
|
|
1824
1639
|
] }) });
|
|
1825
1640
|
};
|
|
1826
1641
|
var TimeInput_default = TimeInput;
|
|
1827
1642
|
|
|
1828
1643
|
// src/components/controls/edit/InputControl.tsx
|
|
1829
|
-
import { jsx as
|
|
1830
|
-
var InputControl =
|
|
1644
|
+
import { jsx as jsx26 } from "react/jsx-runtime";
|
|
1645
|
+
var InputControl = React26.forwardRef(
|
|
1831
1646
|
(props, ref) => {
|
|
1832
1647
|
const ControlComponents = {
|
|
1833
1648
|
[InputControlType_default.lineTextInput]: LineTextInput_default,
|
|
@@ -1848,58 +1663,58 @@ var InputControl = React29.forwardRef(
|
|
|
1848
1663
|
[InputControlType_default.timeInput]: TimeInput_default
|
|
1849
1664
|
};
|
|
1850
1665
|
const SelectedControlComponent = ControlComponents[props.controlType];
|
|
1851
|
-
return /* @__PURE__ */
|
|
1666
|
+
return /* @__PURE__ */ jsx26(React26.Fragment, { children: SelectedControlComponent ? /* @__PURE__ */ jsx26(SelectedControlComponent, { ...props }) : "Control not found" });
|
|
1852
1667
|
}
|
|
1853
1668
|
);
|
|
1854
1669
|
InputControl.displayName = "InputControl";
|
|
1855
1670
|
var InputControl_default = InputControl;
|
|
1856
1671
|
|
|
1857
1672
|
// src/components/dataForm/DataList.tsx
|
|
1858
|
-
import
|
|
1673
|
+
import React29, { useEffect as useEffect6, useState as useState5, useCallback as useCallback2, useReducer } from "react";
|
|
1859
1674
|
import { useRouter } from "next/navigation";
|
|
1860
1675
|
|
|
1861
1676
|
// src/components/dataForm/NoContentView.tsx
|
|
1862
|
-
import
|
|
1863
|
-
import { jsx as
|
|
1677
|
+
import React27 from "react";
|
|
1678
|
+
import { jsx as jsx27 } from "react/jsx-runtime";
|
|
1864
1679
|
var NoContentView = (props) => {
|
|
1865
|
-
return /* @__PURE__ */
|
|
1680
|
+
return /* @__PURE__ */ jsx27(React27.Fragment, { children: props.isDataFound === false && props.children });
|
|
1866
1681
|
};
|
|
1867
1682
|
var NoContentView_default = NoContentView;
|
|
1868
1683
|
|
|
1869
1684
|
// src/components/dataForm/ContentView.tsx
|
|
1870
|
-
import
|
|
1871
|
-
import { jsx as
|
|
1685
|
+
import React28 from "react";
|
|
1686
|
+
import { jsx as jsx28, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
1872
1687
|
var ContentView = (props) => {
|
|
1873
|
-
return /* @__PURE__ */
|
|
1874
|
-
props.isDataFound == null && /* @__PURE__ */
|
|
1875
|
-
/* @__PURE__ */
|
|
1876
|
-
/* @__PURE__ */
|
|
1877
|
-
/* @__PURE__ */
|
|
1878
|
-
/* @__PURE__ */
|
|
1879
|
-
/* @__PURE__ */
|
|
1688
|
+
return /* @__PURE__ */ jsxs22(React28.Fragment, { children: [
|
|
1689
|
+
props.isDataFound == null && /* @__PURE__ */ jsx28("div", { className: "", children: /* @__PURE__ */ jsxs22("div", { className: "bg-gray-200 rounded-md p-4 animate-pulse", children: [
|
|
1690
|
+
/* @__PURE__ */ jsxs22("div", { className: "flex items-center mb-4", children: [
|
|
1691
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 h-8 w-8 rounded-full animate-pulse" }),
|
|
1692
|
+
/* @__PURE__ */ jsxs22("div", { className: "ml-2", children: [
|
|
1693
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 h-3 w-16 animate-pulse" }),
|
|
1694
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 h-2 w-12 animate-pulse" })
|
|
1880
1695
|
] })
|
|
1881
1696
|
] }),
|
|
1882
|
-
/* @__PURE__ */
|
|
1883
|
-
/* @__PURE__ */
|
|
1884
|
-
/* @__PURE__ */
|
|
1885
|
-
/* @__PURE__ */
|
|
1886
|
-
/* @__PURE__ */
|
|
1887
|
-
/* @__PURE__ */
|
|
1888
|
-
/* @__PURE__ */
|
|
1697
|
+
/* @__PURE__ */ jsxs22("div", { className: "grid grid-cols-3 gap-4 mt-6", children: [
|
|
1698
|
+
/* @__PURE__ */ jsxs22("div", { className: "animate-pulse", children: [
|
|
1699
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
|
|
1700
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
|
|
1701
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
|
|
1702
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
|
|
1703
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
|
|
1889
1704
|
] }),
|
|
1890
|
-
/* @__PURE__ */
|
|
1891
|
-
/* @__PURE__ */
|
|
1892
|
-
/* @__PURE__ */
|
|
1893
|
-
/* @__PURE__ */
|
|
1894
|
-
/* @__PURE__ */
|
|
1895
|
-
/* @__PURE__ */
|
|
1705
|
+
/* @__PURE__ */ jsxs22("div", { className: "animate-pulse", children: [
|
|
1706
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
|
|
1707
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
|
|
1708
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
|
|
1709
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
|
|
1710
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
|
|
1896
1711
|
] }),
|
|
1897
|
-
/* @__PURE__ */
|
|
1898
|
-
/* @__PURE__ */
|
|
1899
|
-
/* @__PURE__ */
|
|
1900
|
-
/* @__PURE__ */
|
|
1901
|
-
/* @__PURE__ */
|
|
1902
|
-
/* @__PURE__ */
|
|
1712
|
+
/* @__PURE__ */ jsxs22("div", { className: "animate-pulse", children: [
|
|
1713
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-12 mb-2" }),
|
|
1714
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-24 mb-2" }),
|
|
1715
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-32 mb-2" }),
|
|
1716
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-16 mb-2" }),
|
|
1717
|
+
/* @__PURE__ */ jsx28("div", { className: "bg-gray-300 rounded-full h-3 w-28 mb-2" })
|
|
1903
1718
|
] })
|
|
1904
1719
|
] })
|
|
1905
1720
|
] }) }),
|
|
@@ -1910,7 +1725,7 @@ var ContentView_default = ContentView;
|
|
|
1910
1725
|
|
|
1911
1726
|
// src/components/dataForm/Hyperlink.tsx
|
|
1912
1727
|
import Link from "next/link";
|
|
1913
|
-
import { Fragment
|
|
1728
|
+
import { Fragment, jsx as jsx29 } from "react/jsx-runtime";
|
|
1914
1729
|
function Hyperlink(props) {
|
|
1915
1730
|
let linkClass = props.linkType ? buttonClasses.get(props.linkType) : "";
|
|
1916
1731
|
const target = props?.href?.startsWith("http") ? "_blank" : "_self";
|
|
@@ -1918,7 +1733,7 @@ function Hyperlink(props) {
|
|
|
1918
1733
|
if (target == "_blank") {
|
|
1919
1734
|
additionalProps.rel = "noopener noreferrer";
|
|
1920
1735
|
}
|
|
1921
|
-
return /* @__PURE__ */
|
|
1736
|
+
return /* @__PURE__ */ jsx29(Fragment, { children: props.href ? /* @__PURE__ */ jsx29(
|
|
1922
1737
|
Link,
|
|
1923
1738
|
{
|
|
1924
1739
|
href: props.href,
|
|
@@ -1928,7 +1743,7 @@ function Hyperlink(props) {
|
|
|
1928
1743
|
target,
|
|
1929
1744
|
children: props.children
|
|
1930
1745
|
}
|
|
1931
|
-
) : props.isHeading ? /* @__PURE__ */
|
|
1746
|
+
) : props.isHeading ? /* @__PURE__ */ jsx29("h5", { className: props.className + "inline-block", children: props.children }) : /* @__PURE__ */ jsx29("span", { className: props.className, children: props.children }) });
|
|
1932
1747
|
}
|
|
1933
1748
|
|
|
1934
1749
|
// src/clients/OdataBuilder.tsx
|
|
@@ -2086,30 +1901,30 @@ var OdataBuilder = class {
|
|
|
2086
1901
|
};
|
|
2087
1902
|
|
|
2088
1903
|
// src/svg/chevron-updown.tsx
|
|
2089
|
-
import { jsx as
|
|
1904
|
+
import { jsx as jsx30 } from "react/jsx-runtime";
|
|
2090
1905
|
var ChevronUpDown = (props) => {
|
|
2091
|
-
return /* @__PURE__ */
|
|
1906
|
+
return /* @__PURE__ */ jsx30("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__ */ jsx30("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M8.25 15L12 18.75 15.75 15m-7.5-6L12 5.25 15.75 9" }) });
|
|
2092
1907
|
};
|
|
2093
1908
|
var chevron_updown_default = ChevronUpDown;
|
|
2094
1909
|
|
|
2095
1910
|
// src/svg/chevron-down.tsx
|
|
2096
|
-
import { jsx as
|
|
1911
|
+
import { jsx as jsx31 } from "react/jsx-runtime";
|
|
2097
1912
|
var ChevronDown = (props) => {
|
|
2098
|
-
return /* @__PURE__ */
|
|
1913
|
+
return /* @__PURE__ */ jsx31("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__ */ jsx31("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19.5 8.25l-7.5 7.5-7.5-7.5" }) });
|
|
2099
1914
|
};
|
|
2100
1915
|
var chevron_down_default = ChevronDown;
|
|
2101
1916
|
|
|
2102
1917
|
// src/svg/chevron-up.tsx
|
|
2103
|
-
import { jsx as
|
|
1918
|
+
import { jsx as jsx32 } from "react/jsx-runtime";
|
|
2104
1919
|
var ChevronUp = (props) => {
|
|
2105
|
-
return /* @__PURE__ */
|
|
1920
|
+
return /* @__PURE__ */ jsx32("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__ */ jsx32("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M4.5 15.75l7.5-7.5 7.5 7.5" }) });
|
|
2106
1921
|
};
|
|
2107
1922
|
var chevron_up_default = ChevronUp;
|
|
2108
1923
|
|
|
2109
1924
|
// src/svg/plus.tsx
|
|
2110
|
-
import { jsx as
|
|
1925
|
+
import { jsx as jsx33 } from "react/jsx-runtime";
|
|
2111
1926
|
var Plus = (props) => {
|
|
2112
|
-
return /* @__PURE__ */
|
|
1927
|
+
return /* @__PURE__ */ jsx33("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__ */ jsx33("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M12 4.5v15m7.5-7.5h-15" }) });
|
|
2113
1928
|
};
|
|
2114
1929
|
var plus_default = Plus;
|
|
2115
1930
|
|
|
@@ -2123,14 +1938,14 @@ var Icons = {
|
|
|
2123
1938
|
var Icons_default = Icons;
|
|
2124
1939
|
|
|
2125
1940
|
// src/svg/Icon.tsx
|
|
2126
|
-
import { jsx as
|
|
1941
|
+
import { jsx as jsx34 } from "react/jsx-runtime";
|
|
2127
1942
|
var Icon = ({ name, className, ...props }) => {
|
|
2128
1943
|
const IconComponent = Icons_default[name];
|
|
2129
1944
|
if (!IconComponent) {
|
|
2130
1945
|
console.error(`Icon "${name}" not found.`);
|
|
2131
1946
|
return null;
|
|
2132
1947
|
}
|
|
2133
|
-
return /* @__PURE__ */
|
|
1948
|
+
return /* @__PURE__ */ jsx34(IconComponent, { ...props, className });
|
|
2134
1949
|
};
|
|
2135
1950
|
var Icon_default = Icon;
|
|
2136
1951
|
|
|
@@ -2179,7 +1994,7 @@ function FormReducer(state, action) {
|
|
|
2179
1994
|
var FormReducer_default = FormReducer;
|
|
2180
1995
|
|
|
2181
1996
|
// src/components/dataForm/DataList.tsx
|
|
2182
|
-
import { Fragment as
|
|
1997
|
+
import { Fragment as Fragment2, jsx as jsx35, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
2183
1998
|
var DataList = (props) => {
|
|
2184
1999
|
console.log(props.dataset, "datasetssssss");
|
|
2185
2000
|
const router = useRouter();
|
|
@@ -2188,7 +2003,7 @@ var DataList = (props) => {
|
|
|
2188
2003
|
let activePageNumber = 0;
|
|
2189
2004
|
let pages = 0;
|
|
2190
2005
|
console.log(props.addLinkText);
|
|
2191
|
-
const [isDataFound, setIsDataFound] =
|
|
2006
|
+
const [isDataFound, setIsDataFound] = useState5(null);
|
|
2192
2007
|
useEffect6(() => {
|
|
2193
2008
|
if (props?.dataset) {
|
|
2194
2009
|
if (props?.dataset.result && props.dataset.result.length > 0) {
|
|
@@ -2202,7 +2017,7 @@ var DataList = (props) => {
|
|
|
2202
2017
|
if (path.includes(".")) {
|
|
2203
2018
|
return path.split(".").reduce((prev, curr) => prev ? prev[curr] : null, obj);
|
|
2204
2019
|
} else if (Array.isArray(obj[path])) {
|
|
2205
|
-
return obj[path].map((item, index) => /* @__PURE__ */
|
|
2020
|
+
return obj[path].map((item, index) => /* @__PURE__ */ jsx35("div", { children: item }, index));
|
|
2206
2021
|
} else {
|
|
2207
2022
|
return obj[path];
|
|
2208
2023
|
}
|
|
@@ -2258,30 +2073,30 @@ var DataList = (props) => {
|
|
|
2258
2073
|
const renderPageNumbers = () => {
|
|
2259
2074
|
if (pages <= 10) {
|
|
2260
2075
|
return Array.from({ length: pages }, (_, index) => index + 1).map(
|
|
2261
|
-
(page) => /* @__PURE__ */
|
|
2076
|
+
(page) => /* @__PURE__ */ jsx35(React29.Fragment, { children: activePageNumber !== page ? /* @__PURE__ */ jsx35(
|
|
2262
2077
|
Hyperlink,
|
|
2263
2078
|
{
|
|
2264
2079
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
2265
2080
|
href: builder.getNewPageUrl(page),
|
|
2266
2081
|
children: page
|
|
2267
2082
|
}
|
|
2268
|
-
) : /* @__PURE__ */
|
|
2083
|
+
) : /* @__PURE__ */ jsx35("span", { className: "px-3 py-1 border-t border-b border-gray-300 bg-primary text-white", children: page }) }, page)
|
|
2269
2084
|
);
|
|
2270
2085
|
} else {
|
|
2271
2086
|
const showFirstPages = activePageNumber <= 5;
|
|
2272
2087
|
const showLastPages = activePageNumber > pages - 5;
|
|
2273
2088
|
if (showFirstPages) {
|
|
2274
|
-
return /* @__PURE__ */
|
|
2275
|
-
Array.from({ length: 8 }, (_, index) => index + 1).map((page) => /* @__PURE__ */
|
|
2089
|
+
return /* @__PURE__ */ jsxs23(Fragment2, { children: [
|
|
2090
|
+
Array.from({ length: 8 }, (_, index) => index + 1).map((page) => /* @__PURE__ */ jsx35(React29.Fragment, { children: activePageNumber !== page ? /* @__PURE__ */ jsx35(
|
|
2276
2091
|
Hyperlink,
|
|
2277
2092
|
{
|
|
2278
2093
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
2279
2094
|
href: builder.getNewPageUrl(page),
|
|
2280
2095
|
children: page
|
|
2281
2096
|
}
|
|
2282
|
-
) : /* @__PURE__ */
|
|
2283
|
-
/* @__PURE__ */
|
|
2284
|
-
/* @__PURE__ */
|
|
2097
|
+
) : /* @__PURE__ */ jsx35("span", { className: "px-3 py-1 border-t border-b border-gray-300 bg-primary text-white", children: page }) }, page)),
|
|
2098
|
+
/* @__PURE__ */ jsx35("span", { className: "px-2 py-1", children: "..." }),
|
|
2099
|
+
/* @__PURE__ */ jsx35(
|
|
2285
2100
|
Hyperlink,
|
|
2286
2101
|
{
|
|
2287
2102
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -2289,7 +2104,7 @@ var DataList = (props) => {
|
|
|
2289
2104
|
children: pages - 1
|
|
2290
2105
|
}
|
|
2291
2106
|
),
|
|
2292
|
-
/* @__PURE__ */
|
|
2107
|
+
/* @__PURE__ */ jsx35(
|
|
2293
2108
|
Hyperlink,
|
|
2294
2109
|
{
|
|
2295
2110
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -2297,7 +2112,7 @@ var DataList = (props) => {
|
|
|
2297
2112
|
children: pages
|
|
2298
2113
|
}
|
|
2299
2114
|
),
|
|
2300
|
-
/* @__PURE__ */
|
|
2115
|
+
/* @__PURE__ */ jsx35("div", { className: "relative inline-block", children: /* @__PURE__ */ jsxs23(
|
|
2301
2116
|
"select",
|
|
2302
2117
|
{
|
|
2303
2118
|
className: " py-1 border border-gray-300 bg-white text-gray-700 appearance-none rounded-none",
|
|
@@ -2309,18 +2124,18 @@ var DataList = (props) => {
|
|
|
2309
2124
|
}
|
|
2310
2125
|
},
|
|
2311
2126
|
children: [
|
|
2312
|
-
/* @__PURE__ */
|
|
2127
|
+
/* @__PURE__ */ jsx35("option", { className: "", value: "", children: "Jump to" }),
|
|
2313
2128
|
Array.from(
|
|
2314
2129
|
{ length: Math.max(0, pages - 10) },
|
|
2315
2130
|
(_, index) => index + 9
|
|
2316
|
-
).map((page) => /* @__PURE__ */
|
|
2131
|
+
).map((page) => /* @__PURE__ */ jsx35("option", { value: page, children: page }, page))
|
|
2317
2132
|
]
|
|
2318
2133
|
}
|
|
2319
2134
|
) })
|
|
2320
2135
|
] });
|
|
2321
2136
|
} else if (showLastPages) {
|
|
2322
|
-
return /* @__PURE__ */
|
|
2323
|
-
/* @__PURE__ */
|
|
2137
|
+
return /* @__PURE__ */ jsxs23(Fragment2, { children: [
|
|
2138
|
+
/* @__PURE__ */ jsx35(
|
|
2324
2139
|
Hyperlink,
|
|
2325
2140
|
{
|
|
2326
2141
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -2328,7 +2143,7 @@ var DataList = (props) => {
|
|
|
2328
2143
|
children: "1"
|
|
2329
2144
|
}
|
|
2330
2145
|
),
|
|
2331
|
-
/* @__PURE__ */
|
|
2146
|
+
/* @__PURE__ */ jsx35(
|
|
2332
2147
|
Hyperlink,
|
|
2333
2148
|
{
|
|
2334
2149
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -2336,21 +2151,21 @@ var DataList = (props) => {
|
|
|
2336
2151
|
children: "2"
|
|
2337
2152
|
}
|
|
2338
2153
|
),
|
|
2339
|
-
/* @__PURE__ */
|
|
2154
|
+
/* @__PURE__ */ jsx35("span", { className: "px-2 py-1", children: "..." }),
|
|
2340
2155
|
Array.from({ length: 8 }, (_, index) => pages - 7 + index).map(
|
|
2341
|
-
(page) => /* @__PURE__ */
|
|
2156
|
+
(page) => /* @__PURE__ */ jsx35(React29.Fragment, { children: activePageNumber !== page ? /* @__PURE__ */ jsx35(
|
|
2342
2157
|
Hyperlink,
|
|
2343
2158
|
{
|
|
2344
2159
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
2345
2160
|
href: builder.getNewPageUrl(page),
|
|
2346
2161
|
children: page
|
|
2347
2162
|
}
|
|
2348
|
-
) : /* @__PURE__ */
|
|
2163
|
+
) : /* @__PURE__ */ jsx35("span", { className: "px-3 py-1 border-t border-b border-gray-300 bg-primary text-white", children: page }) }, page)
|
|
2349
2164
|
)
|
|
2350
2165
|
] });
|
|
2351
2166
|
} else {
|
|
2352
|
-
return /* @__PURE__ */
|
|
2353
|
-
/* @__PURE__ */
|
|
2167
|
+
return /* @__PURE__ */ jsxs23(Fragment2, { children: [
|
|
2168
|
+
/* @__PURE__ */ jsx35(
|
|
2354
2169
|
Hyperlink,
|
|
2355
2170
|
{
|
|
2356
2171
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -2358,7 +2173,7 @@ var DataList = (props) => {
|
|
|
2358
2173
|
children: "1"
|
|
2359
2174
|
}
|
|
2360
2175
|
),
|
|
2361
|
-
/* @__PURE__ */
|
|
2176
|
+
/* @__PURE__ */ jsx35(
|
|
2362
2177
|
Hyperlink,
|
|
2363
2178
|
{
|
|
2364
2179
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -2366,20 +2181,20 @@ var DataList = (props) => {
|
|
|
2366
2181
|
children: "2"
|
|
2367
2182
|
}
|
|
2368
2183
|
),
|
|
2369
|
-
/* @__PURE__ */
|
|
2184
|
+
/* @__PURE__ */ jsx35("span", { className: "px-2 py-1", children: "..." }),
|
|
2370
2185
|
Array.from(
|
|
2371
2186
|
{ length: 5 },
|
|
2372
2187
|
(_, index) => activePageNumber - 2 + index
|
|
2373
|
-
).map((page) => /* @__PURE__ */
|
|
2188
|
+
).map((page) => /* @__PURE__ */ jsx35(React29.Fragment, { children: activePageNumber !== page ? /* @__PURE__ */ jsx35(
|
|
2374
2189
|
Hyperlink,
|
|
2375
2190
|
{
|
|
2376
2191
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
2377
2192
|
href: builder.getNewPageUrl(page),
|
|
2378
2193
|
children: page
|
|
2379
2194
|
}
|
|
2380
|
-
) : /* @__PURE__ */
|
|
2381
|
-
/* @__PURE__ */
|
|
2382
|
-
/* @__PURE__ */
|
|
2195
|
+
) : /* @__PURE__ */ jsx35("span", { className: "px-3 py-1 border-t border-b border-gray-300 bg-primary text-white", children: page }) }, page)),
|
|
2196
|
+
/* @__PURE__ */ jsx35("span", { className: "px-2 py-1", children: "..." }),
|
|
2197
|
+
/* @__PURE__ */ jsx35(
|
|
2383
2198
|
Hyperlink,
|
|
2384
2199
|
{
|
|
2385
2200
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -2387,7 +2202,7 @@ var DataList = (props) => {
|
|
|
2387
2202
|
children: pages - 1
|
|
2388
2203
|
}
|
|
2389
2204
|
),
|
|
2390
|
-
/* @__PURE__ */
|
|
2205
|
+
/* @__PURE__ */ jsx35(
|
|
2391
2206
|
Hyperlink,
|
|
2392
2207
|
{
|
|
2393
2208
|
className: "px-3 py-1 border-t border-b border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -2395,7 +2210,7 @@ var DataList = (props) => {
|
|
|
2395
2210
|
children: pages
|
|
2396
2211
|
}
|
|
2397
2212
|
),
|
|
2398
|
-
/* @__PURE__ */
|
|
2213
|
+
/* @__PURE__ */ jsx35("div", { className: "relative inline-block", children: /* @__PURE__ */ jsxs23(
|
|
2399
2214
|
"select",
|
|
2400
2215
|
{
|
|
2401
2216
|
className: "px-2 py-1 border border-gray-300 bg-white text-gray-700 appearance-none rounded-none",
|
|
@@ -2407,8 +2222,8 @@ var DataList = (props) => {
|
|
|
2407
2222
|
}
|
|
2408
2223
|
},
|
|
2409
2224
|
children: [
|
|
2410
|
-
/* @__PURE__ */
|
|
2411
|
-
Array.from({ length: pages - 4 }, (_, index) => index + 3).filter((page) => page > 2 && page < pages - 1).map((page) => /* @__PURE__ */
|
|
2225
|
+
/* @__PURE__ */ jsx35("option", { value: "", children: "Jump to" }),
|
|
2226
|
+
Array.from({ length: pages - 4 }, (_, index) => index + 3).filter((page) => page > 2 && page < pages - 1).map((page) => /* @__PURE__ */ jsx35("option", { value: page, children: page }, page))
|
|
2412
2227
|
]
|
|
2413
2228
|
}
|
|
2414
2229
|
) })
|
|
@@ -2416,16 +2231,16 @@ var DataList = (props) => {
|
|
|
2416
2231
|
}
|
|
2417
2232
|
}
|
|
2418
2233
|
};
|
|
2419
|
-
return /* @__PURE__ */
|
|
2420
|
-
/* @__PURE__ */
|
|
2421
|
-
(props.title || props.filters || props.addLinkHref) && /* @__PURE__ */
|
|
2234
|
+
return /* @__PURE__ */ jsxs23(React29.Fragment, { children: [
|
|
2235
|
+
/* @__PURE__ */ jsxs23(ContentView_default, { isDataFound, children: [
|
|
2236
|
+
(props.title || props.filters || props.addLinkHref) && /* @__PURE__ */ jsxs23(
|
|
2422
2237
|
"div",
|
|
2423
2238
|
{
|
|
2424
2239
|
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`,
|
|
2425
2240
|
children: [
|
|
2426
|
-
props.title ? /* @__PURE__ */
|
|
2427
|
-
/* @__PURE__ */
|
|
2428
|
-
props.filters && props.filters.map((filter) => /* @__PURE__ */
|
|
2241
|
+
props.title ? /* @__PURE__ */ jsx35("div", { className: "inline-flex items-center gap-2", children: /* @__PURE__ */ jsx35("h2", { className: "text-lg font-semibold text-black-800", children: props.title }) }) : /* @__PURE__ */ jsx35("div", {}),
|
|
2242
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
|
|
2243
|
+
props.filters && props.filters.map((filter) => /* @__PURE__ */ jsx35(
|
|
2429
2244
|
InputControl_default,
|
|
2430
2245
|
{
|
|
2431
2246
|
name: filter.name,
|
|
@@ -2440,15 +2255,15 @@ var DataList = (props) => {
|
|
|
2440
2255
|
},
|
|
2441
2256
|
filter.name
|
|
2442
2257
|
)),
|
|
2443
|
-
props.addLinkHref && /* @__PURE__ */
|
|
2258
|
+
props.addLinkHref && /* @__PURE__ */ jsxs23(
|
|
2444
2259
|
Hyperlink,
|
|
2445
2260
|
{
|
|
2446
2261
|
className: "gap-1",
|
|
2447
2262
|
linkType: "Primary" /* Solid */,
|
|
2448
2263
|
href: props.addLinkHref,
|
|
2449
2264
|
children: [
|
|
2450
|
-
/* @__PURE__ */
|
|
2451
|
-
/* @__PURE__ */
|
|
2265
|
+
/* @__PURE__ */ jsx35(Icon_default, { name: "plus", className: "w-4 h-4" }),
|
|
2266
|
+
/* @__PURE__ */ jsx35("span", { className: "text-sm font-medium", children: props.addLinkText || "Add New" })
|
|
2452
2267
|
]
|
|
2453
2268
|
}
|
|
2454
2269
|
)
|
|
@@ -2456,8 +2271,8 @@ var DataList = (props) => {
|
|
|
2456
2271
|
]
|
|
2457
2272
|
}
|
|
2458
2273
|
),
|
|
2459
|
-
/* @__PURE__ */
|
|
2460
|
-
/* @__PURE__ */
|
|
2274
|
+
/* @__PURE__ */ jsx35("div", { className: "flex-1 overflow-y-auto justify-end bg-white rounded shadow h-[calc(100vh-14rem)]", children: /* @__PURE__ */ jsxs23("table", { className: "w-full divide-y divide-gray-200", children: [
|
|
2275
|
+
/* @__PURE__ */ jsx35("thead", { className: "bg-gray-50 sticky top-0", children: /* @__PURE__ */ jsx35("tr", { children: props?.columns?.map((column) => {
|
|
2461
2276
|
let url = builder.getNewOrderByUrl(column.name);
|
|
2462
2277
|
let icon = "chevronUpDown";
|
|
2463
2278
|
if (orderBy.includes(`${column.name} desc`)) {
|
|
@@ -2467,36 +2282,36 @@ var DataList = (props) => {
|
|
|
2467
2282
|
icon = "chevronUp";
|
|
2468
2283
|
url = builder.getNewOrderByUrl(column.name + " desc");
|
|
2469
2284
|
}
|
|
2470
|
-
return /* @__PURE__ */
|
|
2285
|
+
return /* @__PURE__ */ jsx35(
|
|
2471
2286
|
"th",
|
|
2472
2287
|
{
|
|
2473
2288
|
className: "px-6 py-3 text-left font-medium cursor-pointer bg-neutral-soft " + column.width + (column.controlType == ViewControlTypes_default.money ? " text-right" : ""),
|
|
2474
|
-
children: /* @__PURE__ */
|
|
2475
|
-
/* @__PURE__ */
|
|
2476
|
-
column.enableSorting && /* @__PURE__ */
|
|
2289
|
+
children: /* @__PURE__ */ jsx35(Hyperlink, { href: url, className: "!text-neutral-contrast ", children: /* @__PURE__ */ jsxs23("span", { className: "flex items-center space-x-1", children: [
|
|
2290
|
+
/* @__PURE__ */ jsx35("span", { className: "text-black", children: column.label }),
|
|
2291
|
+
column.enableSorting && /* @__PURE__ */ jsx35(Icon_default, { className: "w-4 h-4", name: icon })
|
|
2477
2292
|
] }) })
|
|
2478
2293
|
},
|
|
2479
2294
|
column.name
|
|
2480
2295
|
);
|
|
2481
2296
|
}) }) }),
|
|
2482
|
-
/* @__PURE__ */
|
|
2297
|
+
/* @__PURE__ */ jsx35("tbody", { className: "divide-y divide-gray-200 ", children: props.dataset?.result?.map((dataitem, index) => {
|
|
2483
2298
|
let validityClass = "";
|
|
2484
2299
|
console.log("dataitem", dataitem);
|
|
2485
2300
|
if (props.recordValidityColumnName && getNestedProperty2(dataitem, props.recordValidityColumnName) == false) {
|
|
2486
2301
|
validityClass = "bg-alert-200";
|
|
2487
2302
|
}
|
|
2488
|
-
return /* @__PURE__ */
|
|
2303
|
+
return /* @__PURE__ */ jsx35("tr", { className: validityClass, children: props?.columns?.map((column, colindex) => {
|
|
2489
2304
|
console.log("column", column);
|
|
2490
|
-
return /* @__PURE__ */
|
|
2305
|
+
return /* @__PURE__ */ jsx35(React29.Fragment, { children: /* @__PURE__ */ jsx35(
|
|
2491
2306
|
"td",
|
|
2492
2307
|
{
|
|
2493
2308
|
className: "px-6 py-2 whitespace-normal " + (column.controlType == ViewControlTypes_default.money ? "" : ""),
|
|
2494
|
-
children: column.addhref === true ? /* @__PURE__ */
|
|
2309
|
+
children: column.addhref === true ? /* @__PURE__ */ jsx35(
|
|
2495
2310
|
Hyperlink,
|
|
2496
2311
|
{
|
|
2497
2312
|
className: "",
|
|
2498
2313
|
href: `https://${dataitem[column.name]}`,
|
|
2499
|
-
children: /* @__PURE__ */
|
|
2314
|
+
children: /* @__PURE__ */ jsx35(
|
|
2500
2315
|
ViewControl_default,
|
|
2501
2316
|
{
|
|
2502
2317
|
controlType: column.controlType,
|
|
@@ -2509,11 +2324,11 @@ var DataList = (props) => {
|
|
|
2509
2324
|
}
|
|
2510
2325
|
)
|
|
2511
2326
|
}
|
|
2512
|
-
) : column.showAsLink ? /* @__PURE__ */
|
|
2327
|
+
) : column.showAsLink ? /* @__PURE__ */ jsx35(
|
|
2513
2328
|
Hyperlink,
|
|
2514
2329
|
{
|
|
2515
2330
|
href: props.path + dataitem[props.columns[0].name] + "/" + (dataitem.linkUrlSegment ?? column.linkUrlSegment),
|
|
2516
|
-
children: /* @__PURE__ */
|
|
2331
|
+
children: /* @__PURE__ */ jsx35(
|
|
2517
2332
|
ViewControl_default,
|
|
2518
2333
|
{
|
|
2519
2334
|
controlType: column.controlType,
|
|
@@ -2523,7 +2338,7 @@ var DataList = (props) => {
|
|
|
2523
2338
|
}
|
|
2524
2339
|
)
|
|
2525
2340
|
}
|
|
2526
|
-
) : /* @__PURE__ */
|
|
2341
|
+
) : /* @__PURE__ */ jsx35(
|
|
2527
2342
|
ViewControl_default,
|
|
2528
2343
|
{
|
|
2529
2344
|
controlType: column.controlType,
|
|
@@ -2537,10 +2352,10 @@ var DataList = (props) => {
|
|
|
2537
2352
|
}) }, index);
|
|
2538
2353
|
}) })
|
|
2539
2354
|
] }) }),
|
|
2540
|
-
/* @__PURE__ */
|
|
2541
|
-
/* @__PURE__ */
|
|
2542
|
-
/* @__PURE__ */
|
|
2543
|
-
activePageNumber > 1 && /* @__PURE__ */
|
|
2355
|
+
/* @__PURE__ */ jsx35("div", { className: "pt-4 border-t border-t-gray-50 sticky bottom-0 h-11 mt-2 ", children: /* @__PURE__ */ jsxs23("div", { className: "flex items-center justify-between", children: [
|
|
2356
|
+
/* @__PURE__ */ jsx35("div", { className: "text-gray-700", children: label }),
|
|
2357
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex space-x-2 items-center", children: [
|
|
2358
|
+
activePageNumber > 1 && /* @__PURE__ */ jsx35(
|
|
2544
2359
|
Hyperlink,
|
|
2545
2360
|
{
|
|
2546
2361
|
className: "px-3 py-1 rounded-l-md border border-gray-300 bg-white text-gray-500 hover:bg-gray-200",
|
|
@@ -2548,9 +2363,9 @@ var DataList = (props) => {
|
|
|
2548
2363
|
children: "Prev"
|
|
2549
2364
|
}
|
|
2550
2365
|
),
|
|
2551
|
-
activePageNumber <= 1 && /* @__PURE__ */
|
|
2366
|
+
activePageNumber <= 1 && /* @__PURE__ */ jsx35("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" }),
|
|
2552
2367
|
renderPageNumbers(),
|
|
2553
|
-
activePageNumber < pages && /* @__PURE__ */
|
|
2368
|
+
activePageNumber < pages && /* @__PURE__ */ jsx35(
|
|
2554
2369
|
Hyperlink,
|
|
2555
2370
|
{
|
|
2556
2371
|
className: "px-3 py-1 rounded-r-md border border-gray-300 bg-white text-gray-500 hover:bg-gray-200",
|
|
@@ -2558,19 +2373,19 @@ var DataList = (props) => {
|
|
|
2558
2373
|
children: "Next"
|
|
2559
2374
|
}
|
|
2560
2375
|
),
|
|
2561
|
-
activePageNumber >= pages && /* @__PURE__ */
|
|
2376
|
+
activePageNumber >= pages && /* @__PURE__ */ jsx35("div", { className: "px-3 py-1 rounded-r-md border border-gray-300 bg-gray-200 text-gray-500", children: "Next" })
|
|
2562
2377
|
] })
|
|
2563
2378
|
] }) })
|
|
2564
2379
|
] }),
|
|
2565
|
-
/* @__PURE__ */
|
|
2566
|
-
(props.title || props.filters || props.addLinkHref) && /* @__PURE__ */
|
|
2380
|
+
/* @__PURE__ */ jsxs23(NoContentView_default, { isDataFound, children: [
|
|
2381
|
+
(props.title || props.filters || props.addLinkHref) && /* @__PURE__ */ jsxs23(
|
|
2567
2382
|
"div",
|
|
2568
2383
|
{
|
|
2569
2384
|
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`,
|
|
2570
2385
|
children: [
|
|
2571
|
-
props.title ? /* @__PURE__ */
|
|
2572
|
-
/* @__PURE__ */
|
|
2573
|
-
props.filters && props.filters.map((filter) => /* @__PURE__ */
|
|
2386
|
+
props.title ? /* @__PURE__ */ jsx35("div", { className: "inline-flex items-center gap-2", children: /* @__PURE__ */ jsx35("h2", { className: "text-lg font-semibold text-black", children: props.title }) }) : /* @__PURE__ */ jsx35("div", {}),
|
|
2387
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
|
|
2388
|
+
props.filters && props.filters.map((filter) => /* @__PURE__ */ jsx35(
|
|
2574
2389
|
InputControl_default,
|
|
2575
2390
|
{
|
|
2576
2391
|
name: filter.name,
|
|
@@ -2585,15 +2400,15 @@ var DataList = (props) => {
|
|
|
2585
2400
|
},
|
|
2586
2401
|
filter.name
|
|
2587
2402
|
)),
|
|
2588
|
-
props.addLinkHref && /* @__PURE__ */
|
|
2403
|
+
props.addLinkHref && /* @__PURE__ */ jsxs23(
|
|
2589
2404
|
Hyperlink,
|
|
2590
2405
|
{
|
|
2591
2406
|
className: "gap-1",
|
|
2592
2407
|
linkType: "Primary" /* Solid */,
|
|
2593
2408
|
href: props.addLinkHref,
|
|
2594
2409
|
children: [
|
|
2595
|
-
/* @__PURE__ */
|
|
2596
|
-
/* @__PURE__ */
|
|
2410
|
+
/* @__PURE__ */ jsx35(Icon_default, { name: "plus", className: "w-4 h-4" }),
|
|
2411
|
+
/* @__PURE__ */ jsx35("span", { className: "text-sm font-medium", children: props.addLinkText || "Add New" })
|
|
2597
2412
|
]
|
|
2598
2413
|
}
|
|
2599
2414
|
)
|
|
@@ -2601,8 +2416,8 @@ var DataList = (props) => {
|
|
|
2601
2416
|
]
|
|
2602
2417
|
}
|
|
2603
2418
|
),
|
|
2604
|
-
/* @__PURE__ */
|
|
2605
|
-
/* @__PURE__ */
|
|
2419
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex-grow overflow-y-auto justify-end bg-white rounded shadow h-[75vh]", children: [
|
|
2420
|
+
/* @__PURE__ */ jsx35("div", { children: /* @__PURE__ */ jsx35("table", { className: "w-full divide-y divide-gray-200", children: /* @__PURE__ */ jsx35("thead", { className: "bg-gray-50", children: /* @__PURE__ */ jsx35("tr", { children: props?.columns?.map((column) => {
|
|
2606
2421
|
let url = builder.getNewOrderByUrl(column.name);
|
|
2607
2422
|
let icon = "chevronUpDown";
|
|
2608
2423
|
if (orderBy.includes(`${column.name} desc`)) {
|
|
@@ -2612,19 +2427,19 @@ var DataList = (props) => {
|
|
|
2612
2427
|
icon = "chevronUp";
|
|
2613
2428
|
url = builder.getNewOrderByUrl(column.name + " desc");
|
|
2614
2429
|
}
|
|
2615
|
-
return /* @__PURE__ */
|
|
2430
|
+
return /* @__PURE__ */ jsx35(
|
|
2616
2431
|
"th",
|
|
2617
2432
|
{
|
|
2618
2433
|
className: "px-6 py-3 text-left font-medium cursor-pointer bg-neutral-soft " + column.width + (column.controlType == ViewControlTypes_default.money ? " text-right" : ""),
|
|
2619
|
-
children: /* @__PURE__ */
|
|
2620
|
-
/* @__PURE__ */
|
|
2621
|
-
column.enableSorting && /* @__PURE__ */
|
|
2434
|
+
children: /* @__PURE__ */ jsx35(Hyperlink, { href: url, className: "text-body-950", children: /* @__PURE__ */ jsxs23("span", { className: "flex items-center space-x-1", children: [
|
|
2435
|
+
/* @__PURE__ */ jsx35("span", { children: column.label }),
|
|
2436
|
+
column.enableSorting && /* @__PURE__ */ jsx35(Icon_default, { className: "w-4 h-4", name: icon })
|
|
2622
2437
|
] }) })
|
|
2623
2438
|
},
|
|
2624
2439
|
column.name
|
|
2625
2440
|
);
|
|
2626
2441
|
}) }) }) }) }),
|
|
2627
|
-
/* @__PURE__ */
|
|
2442
|
+
/* @__PURE__ */ jsx35("div", { className: "w-full text-center bg-transparent pt-5", children: "There are no entries in the table at the moment." })
|
|
2628
2443
|
] })
|
|
2629
2444
|
] })
|
|
2630
2445
|
] });
|
|
@@ -2632,13 +2447,13 @@ var DataList = (props) => {
|
|
|
2632
2447
|
var DataList_default = DataList;
|
|
2633
2448
|
|
|
2634
2449
|
// src/components/pageRenderingEngine/PageBodyRenderer.tsx
|
|
2635
|
-
import
|
|
2450
|
+
import React42 from "react";
|
|
2636
2451
|
|
|
2637
2452
|
// src/components/pageRenderingEngine/nodes/ParagraphNode.tsx
|
|
2638
|
-
import
|
|
2453
|
+
import React32 from "react";
|
|
2639
2454
|
|
|
2640
2455
|
// src/components/pageRenderingEngine/nodes/TextNode.tsx
|
|
2641
|
-
import { jsx as
|
|
2456
|
+
import { jsx as jsx36 } from "react/jsx-runtime";
|
|
2642
2457
|
var TextNode = (props) => {
|
|
2643
2458
|
function cssStringToJson(cssString) {
|
|
2644
2459
|
const styleObject = {};
|
|
@@ -2698,23 +2513,23 @@ var TextNode = (props) => {
|
|
|
2698
2513
|
const displayText = props.linkText ? props.linkText : props.node.text;
|
|
2699
2514
|
return (
|
|
2700
2515
|
// @ts-expect-error custom code
|
|
2701
|
-
/* @__PURE__ */
|
|
2516
|
+
/* @__PURE__ */ jsx36("span", { style: { ...styles }, className: getFormatClass(props.node.format), children: props.dataitem && props.linkText ? displayText : props.dataitem ? replacePlaceholders(props.node.text, props.dataitem) : props.node.text })
|
|
2702
2517
|
);
|
|
2703
2518
|
};
|
|
2704
2519
|
var TextNode_default = TextNode;
|
|
2705
2520
|
|
|
2706
2521
|
// src/components/pageRenderingEngine/nodes/LineBreakNode.tsx
|
|
2707
|
-
import { jsx as
|
|
2522
|
+
import { jsx as jsx37 } from "react/jsx-runtime";
|
|
2708
2523
|
var LineBreakNode = () => {
|
|
2709
|
-
return /* @__PURE__ */
|
|
2524
|
+
return /* @__PURE__ */ jsx37("div", { className: "py-0.5 lg:py-1.5" });
|
|
2710
2525
|
};
|
|
2711
2526
|
var LineBreakNode_default = LineBreakNode;
|
|
2712
2527
|
|
|
2713
2528
|
// src/components/pageRenderingEngine/nodes/LinkNode.tsx
|
|
2714
|
-
import
|
|
2529
|
+
import React31 from "react";
|
|
2715
2530
|
|
|
2716
2531
|
// src/components/pageRenderingEngine/nodes/ImageNode.tsx
|
|
2717
|
-
import
|
|
2532
|
+
import React30 from "react";
|
|
2718
2533
|
|
|
2719
2534
|
// src/components/utilities/AssetUtility.tsx
|
|
2720
2535
|
var AssetUtility = class {
|
|
@@ -2741,7 +2556,7 @@ var AssetUtility_default = AssetUtility;
|
|
|
2741
2556
|
import dynamic from "next/dynamic";
|
|
2742
2557
|
|
|
2743
2558
|
// src/components/DeviceAssetSelector.tsx
|
|
2744
|
-
import { jsx as
|
|
2559
|
+
import { jsx as jsx38 } from "react/jsx-runtime";
|
|
2745
2560
|
var DeviceAssetSelector = ({
|
|
2746
2561
|
assets,
|
|
2747
2562
|
assetBaseUrl,
|
|
@@ -2816,7 +2631,7 @@ var DeviceAssetSelector = ({
|
|
|
2816
2631
|
const formatClasses = FormatClass[nodeProps?.format || ""] || "";
|
|
2817
2632
|
const renderMedia = () => {
|
|
2818
2633
|
if (isHls) {
|
|
2819
|
-
return /* @__PURE__ */
|
|
2634
|
+
return /* @__PURE__ */ jsx38(
|
|
2820
2635
|
HlsPlayer_default,
|
|
2821
2636
|
{
|
|
2822
2637
|
assetUrl: resolvedAssetUrl,
|
|
@@ -2833,7 +2648,7 @@ var DeviceAssetSelector = ({
|
|
|
2833
2648
|
} else {
|
|
2834
2649
|
return (
|
|
2835
2650
|
/* eslint-disable-next-line @next/next/no-img-element */
|
|
2836
|
-
/* @__PURE__ */
|
|
2651
|
+
/* @__PURE__ */ jsx38(
|
|
2837
2652
|
"img",
|
|
2838
2653
|
{
|
|
2839
2654
|
style: styles,
|
|
@@ -2849,17 +2664,17 @@ var DeviceAssetSelector = ({
|
|
|
2849
2664
|
}
|
|
2850
2665
|
};
|
|
2851
2666
|
if (width) {
|
|
2852
|
-
return /* @__PURE__ */
|
|
2667
|
+
return /* @__PURE__ */ jsx38("div", { style: { width }, children: renderMedia() });
|
|
2853
2668
|
}
|
|
2854
2669
|
if (nodeProps?.format) {
|
|
2855
|
-
return /* @__PURE__ */
|
|
2670
|
+
return /* @__PURE__ */ jsx38("div", { className: `flex ${formatClasses}`, children: renderMedia() });
|
|
2856
2671
|
}
|
|
2857
2672
|
return renderMedia();
|
|
2858
2673
|
};
|
|
2859
2674
|
var DeviceAssetSelector_default = DeviceAssetSelector;
|
|
2860
2675
|
|
|
2861
2676
|
// src/components/pageRenderingEngine/nodes/ImageNode.tsx
|
|
2862
|
-
import { Fragment as
|
|
2677
|
+
import { Fragment as Fragment3, jsx as jsx39 } from "react/jsx-runtime";
|
|
2863
2678
|
var HlsPlayer = dynamic(() => import("./HlsPlayer-FFEIK6FG.mjs"), {
|
|
2864
2679
|
ssr: false
|
|
2865
2680
|
});
|
|
@@ -2902,7 +2717,7 @@ var ImageNode = (props) => {
|
|
|
2902
2717
|
console.error("Error parsing assets in ImageNode:", error);
|
|
2903
2718
|
}
|
|
2904
2719
|
if (assets && assets.length > 0) {
|
|
2905
|
-
return /* @__PURE__ */
|
|
2720
|
+
return /* @__PURE__ */ jsx39(Fragment3, { children: /* @__PURE__ */ jsx39(
|
|
2906
2721
|
DeviceAssetSelector_default,
|
|
2907
2722
|
{
|
|
2908
2723
|
device: props.device,
|
|
@@ -2951,7 +2766,7 @@ var ImageNode = (props) => {
|
|
|
2951
2766
|
const isHls = imageUrl?.endsWith(".m3u8");
|
|
2952
2767
|
const renderMedia = () => {
|
|
2953
2768
|
if (isHls) {
|
|
2954
|
-
return /* @__PURE__ */
|
|
2769
|
+
return /* @__PURE__ */ jsx39(
|
|
2955
2770
|
HlsPlayer,
|
|
2956
2771
|
{
|
|
2957
2772
|
assetUrl: imageUrl,
|
|
@@ -2966,7 +2781,7 @@ var ImageNode = (props) => {
|
|
|
2966
2781
|
}
|
|
2967
2782
|
);
|
|
2968
2783
|
} else {
|
|
2969
|
-
return /* @__PURE__ */
|
|
2784
|
+
return /* @__PURE__ */ jsx39(React30.Fragment, { children: /* @__PURE__ */ jsx39(
|
|
2970
2785
|
"img",
|
|
2971
2786
|
{
|
|
2972
2787
|
style: styles,
|
|
@@ -2981,382 +2796,18 @@ var ImageNode = (props) => {
|
|
|
2981
2796
|
}
|
|
2982
2797
|
};
|
|
2983
2798
|
if (props.node.width) {
|
|
2984
|
-
return /* @__PURE__ */
|
|
2799
|
+
return /* @__PURE__ */ jsx39("div", { className: `flex ${formatClasses}`, children: renderMedia() });
|
|
2985
2800
|
}
|
|
2986
2801
|
return renderMedia();
|
|
2987
2802
|
};
|
|
2988
2803
|
var ImageNode_default = ImageNode;
|
|
2989
2804
|
|
|
2990
|
-
// src/components/pageRenderingEngine/nodes/LinkNodeButton.tsx
|
|
2991
|
-
import { useCallback as useCallback3, useState as useState8 } from "react";
|
|
2992
|
-
|
|
2993
|
-
// src/clients/CacheManage.tsx
|
|
2994
|
-
import NodeCache from "node-cache";
|
|
2995
|
-
var CacheManager = class _CacheManager {
|
|
2996
|
-
constructor() {
|
|
2997
|
-
this.maxCacheSize = 1e3;
|
|
2998
|
-
this.cache = new NodeCache({ stdTTL: 0, checkperiod: 300 });
|
|
2999
|
-
}
|
|
3000
|
-
static getInstance() {
|
|
3001
|
-
if (!_CacheManager.instance) {
|
|
3002
|
-
_CacheManager.instance = new _CacheManager();
|
|
3003
|
-
}
|
|
3004
|
-
return _CacheManager.instance;
|
|
3005
|
-
}
|
|
3006
|
-
get(key) {
|
|
3007
|
-
return null;
|
|
3008
|
-
}
|
|
3009
|
-
set(key, data, ttl) {
|
|
3010
|
-
}
|
|
3011
|
-
clear() {
|
|
3012
|
-
this.cache.flushAll();
|
|
3013
|
-
}
|
|
3014
|
-
size() {
|
|
3015
|
-
return this.cache.keys().length;
|
|
3016
|
-
}
|
|
3017
|
-
destroy() {
|
|
3018
|
-
this.cache.close();
|
|
3019
|
-
}
|
|
3020
|
-
};
|
|
3021
|
-
|
|
3022
|
-
// src/clients/ServiceClient.tsx
|
|
3023
|
-
var ServerApiError = class extends Error {
|
|
3024
|
-
constructor(data, status) {
|
|
3025
|
-
super(data.message || "---");
|
|
3026
|
-
this.status = status;
|
|
3027
|
-
this.data = data;
|
|
3028
|
-
this.data.isSuccessful = false;
|
|
3029
|
-
}
|
|
3030
|
-
};
|
|
3031
|
-
var ServiceClient = class {
|
|
3032
|
-
constructor(apiBaseUrl, session) {
|
|
3033
|
-
this.cacheManager = CacheManager.getInstance();
|
|
3034
|
-
this.baseUrl = apiBaseUrl;
|
|
3035
|
-
this.session = session;
|
|
3036
|
-
}
|
|
3037
|
-
buildFullPath(path, params) {
|
|
3038
|
-
let updatedPath = path;
|
|
3039
|
-
if (params) {
|
|
3040
|
-
Object.keys(params).forEach((key) => {
|
|
3041
|
-
updatedPath = updatedPath.replace(
|
|
3042
|
-
`{${key}}`,
|
|
3043
|
-
String(params[key])
|
|
3044
|
-
);
|
|
3045
|
-
});
|
|
3046
|
-
}
|
|
3047
|
-
return this.baseUrl + updatedPath;
|
|
3048
|
-
}
|
|
3049
|
-
getConfig() {
|
|
3050
|
-
const config = { headers: {} };
|
|
3051
|
-
if (this.session) {
|
|
3052
|
-
if (this.session.oAuthToken) {
|
|
3053
|
-
config.headers["Authorization"] = "Bearer " + this.session.oAuthToken;
|
|
3054
|
-
}
|
|
3055
|
-
config.headers["cid"] = this.session.cid || "";
|
|
3056
|
-
config.headers["UserCurrencyCode"] = this.session.userCurrencyCode || "INR";
|
|
3057
|
-
config.headers["MarketCode"] = this.session?.marketCode || "IND";
|
|
3058
|
-
}
|
|
3059
|
-
return config;
|
|
3060
|
-
}
|
|
3061
|
-
handleFetchError(error) {
|
|
3062
|
-
console.log(error);
|
|
3063
|
-
const serverApiError = error;
|
|
3064
|
-
if (serverApiError) {
|
|
3065
|
-
return serverApiError.data;
|
|
3066
|
-
}
|
|
3067
|
-
return {
|
|
3068
|
-
message: "There is some error. Please try after sometime.",
|
|
3069
|
-
isSuccessful: false
|
|
3070
|
-
};
|
|
3071
|
-
}
|
|
3072
|
-
async fetchJsonWithCache(fullPath, config) {
|
|
3073
|
-
const cacheKey = fullPath + "--" + (this.session?.marketCode || "IND");
|
|
3074
|
-
const cachedData = this.cacheManager.get(cacheKey);
|
|
3075
|
-
if (cachedData) {
|
|
3076
|
-
return cachedData;
|
|
3077
|
-
}
|
|
3078
|
-
console.log("*****************CALLING API:", cacheKey, (/* @__PURE__ */ new Date()).toISOString());
|
|
3079
|
-
const response = await fetch(fullPath, { headers: config.headers });
|
|
3080
|
-
if (!response.ok) {
|
|
3081
|
-
const apiErrorData = await response.json();
|
|
3082
|
-
throw new ServerApiError(apiErrorData, response.status);
|
|
3083
|
-
}
|
|
3084
|
-
const cacheControl = response.headers.get("Cache-Control");
|
|
3085
|
-
let revalidate = null;
|
|
3086
|
-
if (cacheControl) {
|
|
3087
|
-
const maxAgeMatch = cacheControl.match(/max-age=(\d+)/);
|
|
3088
|
-
if (maxAgeMatch && maxAgeMatch[1]) {
|
|
3089
|
-
const maxAge = parseInt(maxAgeMatch[1], 10);
|
|
3090
|
-
revalidate = maxAge * 1e3;
|
|
3091
|
-
}
|
|
3092
|
-
}
|
|
3093
|
-
const data = await response.json();
|
|
3094
|
-
data.isSuccessful = true;
|
|
3095
|
-
if (revalidate !== null && revalidate > 0) {
|
|
3096
|
-
console.log("revalidate............I am caching:" + revalidate);
|
|
3097
|
-
this.cacheManager.set(cacheKey, data, revalidate);
|
|
3098
|
-
}
|
|
3099
|
-
return data;
|
|
3100
|
-
}
|
|
3101
|
-
// private async refreshToken(): Promise<void> {
|
|
3102
|
-
// console.log("*******************calling refresh token***********************");
|
|
3103
|
-
// try {
|
|
3104
|
-
// const response = await fetch(this.baseUrl + "/auth/storefront/login/refreshToken", {
|
|
3105
|
-
// method: 'POST',
|
|
3106
|
-
// headers: {
|
|
3107
|
-
// 'Content-Type': 'application/json'
|
|
3108
|
-
// },
|
|
3109
|
-
// body: JSON.stringify({ refreshToken: this.session.refreshToken })
|
|
3110
|
-
// });
|
|
3111
|
-
// if (!response.ok) {
|
|
3112
|
-
// throw new Error("Failed to refresh token");
|
|
3113
|
-
// }
|
|
3114
|
-
// const responseData = await response.json();
|
|
3115
|
-
// this.session.oAuthToken = responseData.result.accessToken;
|
|
3116
|
-
// if (typeof window === "undefined") {
|
|
3117
|
-
// // Running on the server
|
|
3118
|
-
// } else {
|
|
3119
|
-
// await fetch("/api/login", {
|
|
3120
|
-
// method: "post",
|
|
3121
|
-
// headers: {
|
|
3122
|
-
// "Content-Type": "application/json",
|
|
3123
|
-
// },
|
|
3124
|
-
// body: JSON.stringify({ session: this.session }),
|
|
3125
|
-
// });
|
|
3126
|
-
// }
|
|
3127
|
-
// } catch (error: any) {
|
|
3128
|
-
// throw new Error("Failed to refresh token");
|
|
3129
|
-
// }
|
|
3130
|
-
// }
|
|
3131
|
-
async handleRequest(request) {
|
|
3132
|
-
try {
|
|
3133
|
-
return await request();
|
|
3134
|
-
} catch (error) {
|
|
3135
|
-
throw error;
|
|
3136
|
-
}
|
|
3137
|
-
}
|
|
3138
|
-
async post(path, data) {
|
|
3139
|
-
const request = async () => {
|
|
3140
|
-
const fullPath = this.baseUrl + path;
|
|
3141
|
-
const config = this.getConfig();
|
|
3142
|
-
const response = await fetch(fullPath, {
|
|
3143
|
-
method: "POST",
|
|
3144
|
-
headers: {
|
|
3145
|
-
...config.headers,
|
|
3146
|
-
"Content-Type": "application/json"
|
|
3147
|
-
},
|
|
3148
|
-
body: JSON.stringify(data)
|
|
3149
|
-
});
|
|
3150
|
-
if (!response.ok) {
|
|
3151
|
-
const apiErrorData = await response.json();
|
|
3152
|
-
throw new ServerApiError(apiErrorData, response.status);
|
|
3153
|
-
}
|
|
3154
|
-
const responseData = await response.json();
|
|
3155
|
-
responseData.isSuccessful = true;
|
|
3156
|
-
return responseData;
|
|
3157
|
-
};
|
|
3158
|
-
try {
|
|
3159
|
-
return await this.handleRequest(request);
|
|
3160
|
-
} catch (error) {
|
|
3161
|
-
return this.handleFetchError(error);
|
|
3162
|
-
}
|
|
3163
|
-
}
|
|
3164
|
-
async getSingle(path, params) {
|
|
3165
|
-
const request = async () => {
|
|
3166
|
-
const sanitizedParams = params ? Object.fromEntries(
|
|
3167
|
-
Object.entries(params).map(([k, v]) => [k, String(v)])
|
|
3168
|
-
) : void 0;
|
|
3169
|
-
const fullPath = this.buildFullPath(path, sanitizedParams);
|
|
3170
|
-
const config = this.getConfig();
|
|
3171
|
-
return await this.fetchJsonWithCache(fullPath, config);
|
|
3172
|
-
};
|
|
3173
|
-
try {
|
|
3174
|
-
return await this.handleRequest(request);
|
|
3175
|
-
} catch (error) {
|
|
3176
|
-
return this.handleFetchError(error);
|
|
3177
|
-
}
|
|
3178
|
-
}
|
|
3179
|
-
async get(path, params) {
|
|
3180
|
-
const request = async () => {
|
|
3181
|
-
const sanitizedParams = params ? Object.fromEntries(
|
|
3182
|
-
Object.entries(params).map(([k, v]) => [k, String(v)])
|
|
3183
|
-
) : void 0;
|
|
3184
|
-
const fullPath = this.buildFullPath(path, sanitizedParams);
|
|
3185
|
-
const config = this.getConfig();
|
|
3186
|
-
console.log(fullPath);
|
|
3187
|
-
return await this.fetchJsonWithCache(fullPath, config);
|
|
3188
|
-
};
|
|
3189
|
-
try {
|
|
3190
|
-
return await this.handleRequest(request);
|
|
3191
|
-
} catch (error) {
|
|
3192
|
-
return this.handleFetchError(error);
|
|
3193
|
-
}
|
|
3194
|
-
}
|
|
3195
|
-
};
|
|
3196
|
-
var ServiceClient_default = ServiceClient;
|
|
3197
|
-
|
|
3198
|
-
// src/components/pageRenderingEngine/nodes/LinkNodeButton.tsx
|
|
3199
|
-
import { jsx as jsx43 } from "react/jsx-runtime";
|
|
3200
|
-
var LinkNodeButton = (props) => {
|
|
3201
|
-
const { node, dataitem, children, linkText, linkType, linkUrl } = props;
|
|
3202
|
-
const [isLoading, setIsLoading] = useState8(false);
|
|
3203
|
-
const [error, setError] = useState8(null);
|
|
3204
|
-
const extractFieldNames = useCallback3((template) => {
|
|
3205
|
-
if (!template) return [];
|
|
3206
|
-
const regex = /\{(\{\})?([a-zA-Z_$][a-zA-Z0-9_$]*)(?:\}\})?\}/g;
|
|
3207
|
-
const matches = Array.from(template.matchAll(regex));
|
|
3208
|
-
const fieldNames = matches.map((match) => match[2] || match[1]).filter((name, index, self) => self.indexOf(name) === index);
|
|
3209
|
-
return fieldNames;
|
|
3210
|
-
}, []);
|
|
3211
|
-
const replaceTemplateVariables = useCallback3((template, responseData) => {
|
|
3212
|
-
if (!template) return template;
|
|
3213
|
-
let result = template;
|
|
3214
|
-
const fieldNames = extractFieldNames(template);
|
|
3215
|
-
if (responseData) {
|
|
3216
|
-
fieldNames.forEach((fieldName) => {
|
|
3217
|
-
const value = getNestedValue3(responseData, fieldName);
|
|
3218
|
-
if (value !== void 0) {
|
|
3219
|
-
const regex1 = new RegExp(`\\{${fieldName}\\}`, "g");
|
|
3220
|
-
const regex2 = new RegExp(`\\{\\{${fieldName}\\}\\}`, "g");
|
|
3221
|
-
result = result.replace(regex1, String(value));
|
|
3222
|
-
result = result.replace(regex2, String(value));
|
|
3223
|
-
}
|
|
3224
|
-
});
|
|
3225
|
-
}
|
|
3226
|
-
if (props.routeParameters) {
|
|
3227
|
-
Object.entries(props.routeParameters).forEach(([key, value]) => {
|
|
3228
|
-
const regex = new RegExp(`\\{\\{${key}\\}\\}`, "g");
|
|
3229
|
-
result = result.replace(regex, String(value));
|
|
3230
|
-
});
|
|
3231
|
-
}
|
|
3232
|
-
if (dataitem) {
|
|
3233
|
-
Object.entries(dataitem).forEach(([key, value]) => {
|
|
3234
|
-
const regex = new RegExp(`\\{\\{${key}\\}\\}`, "g");
|
|
3235
|
-
result = result.replace(regex, String(value));
|
|
3236
|
-
});
|
|
3237
|
-
}
|
|
3238
|
-
return result;
|
|
3239
|
-
}, [props.routeParameters, dataitem, extractFieldNames]);
|
|
3240
|
-
const getNestedValue3 = useCallback3((obj, path) => {
|
|
3241
|
-
if (!obj || !path) return void 0;
|
|
3242
|
-
if (obj[path] !== void 0) {
|
|
3243
|
-
return obj[path];
|
|
3244
|
-
}
|
|
3245
|
-
const keys = path.split(".");
|
|
3246
|
-
let current = obj;
|
|
3247
|
-
for (const key of keys) {
|
|
3248
|
-
if (current[key] === void 0) {
|
|
3249
|
-
return void 0;
|
|
3250
|
-
}
|
|
3251
|
-
current = current[key];
|
|
3252
|
-
}
|
|
3253
|
-
return current;
|
|
3254
|
-
}, []);
|
|
3255
|
-
const onClick = useCallback3(async (e) => {
|
|
3256
|
-
if (!node.postUrl) {
|
|
3257
|
-
setError("No POST URL configured for this button");
|
|
3258
|
-
return;
|
|
3259
|
-
}
|
|
3260
|
-
setIsLoading(true);
|
|
3261
|
-
setError(null);
|
|
3262
|
-
try {
|
|
3263
|
-
const resolvedPostUrl = replaceTemplateVariables(node.postUrl);
|
|
3264
|
-
let parsedPayload = {};
|
|
3265
|
-
if (node.payload) {
|
|
3266
|
-
try {
|
|
3267
|
-
const payloadStr = replaceTemplateVariables(node.payload);
|
|
3268
|
-
parsedPayload = JSON.parse(payloadStr);
|
|
3269
|
-
console.log("Parsed payload:", parsedPayload);
|
|
3270
|
-
} catch (err) {
|
|
3271
|
-
console.error("Failed to parse payload JSON:", err);
|
|
3272
|
-
parsedPayload = { error: "Invalid payload JSON" };
|
|
3273
|
-
}
|
|
3274
|
-
}
|
|
3275
|
-
const serviceClient = new ServiceClient_default(props.apiBaseUrl, props.session);
|
|
3276
|
-
const response = await serviceClient.post(resolvedPostUrl, parsedPayload);
|
|
3277
|
-
console.log("API Response:", response);
|
|
3278
|
-
if (response && !response.isSuccessful) {
|
|
3279
|
-
const errorMessage = response.message || "API request failed";
|
|
3280
|
-
setError(errorMessage);
|
|
3281
|
-
setIsLoading(false);
|
|
3282
|
-
return { isSuccessful: false, message: errorMessage };
|
|
3283
|
-
}
|
|
3284
|
-
if (response && node.redirectUrl) {
|
|
3285
|
-
const fieldNames = extractFieldNames(node.redirectUrl);
|
|
3286
|
-
console.log("Field names in redirect URL:", fieldNames);
|
|
3287
|
-
const fieldValueMap = {};
|
|
3288
|
-
fieldNames.forEach((fieldName) => {
|
|
3289
|
-
const value = getNestedValue3(response, fieldName);
|
|
3290
|
-
if (value !== void 0) {
|
|
3291
|
-
fieldValueMap[fieldName] = String(value);
|
|
3292
|
-
} else {
|
|
3293
|
-
const resultValue = getNestedValue3(response, `result.${fieldName}`);
|
|
3294
|
-
if (resultValue !== void 0) {
|
|
3295
|
-
fieldValueMap[fieldName] = String(resultValue);
|
|
3296
|
-
} else {
|
|
3297
|
-
const dataValue = getNestedValue3(response, `data.${fieldName}`);
|
|
3298
|
-
if (dataValue !== void 0) {
|
|
3299
|
-
fieldValueMap[fieldName] = String(dataValue);
|
|
3300
|
-
}
|
|
3301
|
-
}
|
|
3302
|
-
}
|
|
3303
|
-
});
|
|
3304
|
-
console.log("Field value map:", fieldValueMap);
|
|
3305
|
-
const missingFields = fieldNames.filter((fieldName) => !fieldValueMap[fieldName]);
|
|
3306
|
-
if (missingFields.length > 0) {
|
|
3307
|
-
console.warn(`Missing field values for: ${missingFields.join(", ")}`);
|
|
3308
|
-
}
|
|
3309
|
-
let resolvedRedirectUrl = node.redirectUrl;
|
|
3310
|
-
Object.entries(fieldValueMap).forEach(([fieldName, value]) => {
|
|
3311
|
-
const regex1 = new RegExp(`\\{${fieldName}\\}`, "g");
|
|
3312
|
-
const regex2 = new RegExp(`\\{\\{${fieldName}\\}\\}`, "g");
|
|
3313
|
-
resolvedRedirectUrl = resolvedRedirectUrl.replace(regex1, value);
|
|
3314
|
-
resolvedRedirectUrl = resolvedRedirectUrl.replace(regex2, value);
|
|
3315
|
-
});
|
|
3316
|
-
resolvedRedirectUrl = replaceTemplateVariables(resolvedRedirectUrl, response);
|
|
3317
|
-
console.log("Final redirect URL:", resolvedRedirectUrl);
|
|
3318
|
-
if (resolvedRedirectUrl && !resolvedRedirectUrl.includes("{")) {
|
|
3319
|
-
window.location.href = resolvedRedirectUrl;
|
|
3320
|
-
}
|
|
3321
|
-
} else if (response && !response.result && response.message) {
|
|
3322
|
-
setError(response.message);
|
|
3323
|
-
throw new Error(response.message);
|
|
3324
|
-
} else if (!response) {
|
|
3325
|
-
setError("No response from server");
|
|
3326
|
-
}
|
|
3327
|
-
setIsLoading(false);
|
|
3328
|
-
return { isSuccessful: true, response };
|
|
3329
|
-
} catch (err) {
|
|
3330
|
-
console.error("Button API call failed:", err);
|
|
3331
|
-
setError(err.message || "An unexpected error occurred");
|
|
3332
|
-
setIsLoading(false);
|
|
3333
|
-
return { isSuccessful: false, message: err.message };
|
|
3334
|
-
}
|
|
3335
|
-
}, [node.postUrl, node.payload, node.redirectUrl, replaceTemplateVariables, extractFieldNames, getNestedValue3, props.apiBaseUrl, props.session]);
|
|
3336
|
-
const renderButtonContent = () => {
|
|
3337
|
-
if (children) {
|
|
3338
|
-
return children;
|
|
3339
|
-
}
|
|
3340
|
-
if (linkText) {
|
|
3341
|
-
return /* @__PURE__ */ jsx43("span", { children: linkText });
|
|
3342
|
-
}
|
|
3343
|
-
return node.title || "Button";
|
|
3344
|
-
};
|
|
3345
|
-
return /* @__PURE__ */ jsx43("div", { className: "link-button-wrapper", children: /* @__PURE__ */ jsx43(
|
|
3346
|
-
Button_default,
|
|
3347
|
-
{
|
|
3348
|
-
ButtonType: linkType,
|
|
3349
|
-
onClick,
|
|
3350
|
-
disabled: isLoading,
|
|
3351
|
-
className: "w-full",
|
|
3352
|
-
children: renderButtonContent()
|
|
3353
|
-
}
|
|
3354
|
-
) });
|
|
3355
|
-
};
|
|
3356
|
-
var LinkNodeButton_default = LinkNodeButton;
|
|
3357
|
-
|
|
3358
2805
|
// src/components/pageRenderingEngine/nodes/LinkNode.tsx
|
|
3359
|
-
import
|
|
2806
|
+
import dynamic2 from "next/dynamic";
|
|
2807
|
+
import { Fragment as Fragment4, jsx as jsx40, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
2808
|
+
var LinkNodeButton = dynamic2(() => import("./LinkNodeButton-KBSXOEHS.mjs"), {
|
|
2809
|
+
ssr: false
|
|
2810
|
+
});
|
|
3360
2811
|
var LinkNode = (props) => {
|
|
3361
2812
|
const NodeTypes2 = {
|
|
3362
2813
|
text: TextNode_default,
|
|
@@ -3400,13 +2851,13 @@ var LinkNode = (props) => {
|
|
|
3400
2851
|
const isButton = node.isButton === true;
|
|
3401
2852
|
const renderChildren = () => {
|
|
3402
2853
|
if (!node.children || node.children.length === 0) return null;
|
|
3403
|
-
return /* @__PURE__ */
|
|
2854
|
+
return /* @__PURE__ */ jsx40(Fragment4, { children: node.children.map((childNode, index) => {
|
|
3404
2855
|
const SelectedNode = NodeTypes2[childNode.type];
|
|
3405
2856
|
if (!SelectedNode) {
|
|
3406
2857
|
console.warn("Unknown node type:", childNode.type);
|
|
3407
2858
|
return null;
|
|
3408
2859
|
}
|
|
3409
|
-
return /* @__PURE__ */
|
|
2860
|
+
return /* @__PURE__ */ jsx40(React31.Fragment, { children: /* @__PURE__ */ jsx40(
|
|
3410
2861
|
SelectedNode,
|
|
3411
2862
|
{
|
|
3412
2863
|
node: childNode,
|
|
@@ -3419,16 +2870,16 @@ var LinkNode = (props) => {
|
|
|
3419
2870
|
};
|
|
3420
2871
|
const renderFallback = () => {
|
|
3421
2872
|
if ((!node.children || node.children.length === 0) && linkText) {
|
|
3422
|
-
return /* @__PURE__ */
|
|
2873
|
+
return /* @__PURE__ */ jsx40("span", { children: linkText });
|
|
3423
2874
|
}
|
|
3424
2875
|
if ((!node.children || node.children.length === 0) && !linkText) {
|
|
3425
|
-
return /* @__PURE__ */
|
|
2876
|
+
return /* @__PURE__ */ jsx40("br", {});
|
|
3426
2877
|
}
|
|
3427
2878
|
return null;
|
|
3428
2879
|
};
|
|
3429
2880
|
if (isButton) {
|
|
3430
|
-
return /* @__PURE__ */
|
|
3431
|
-
|
|
2881
|
+
return /* @__PURE__ */ jsxs24(
|
|
2882
|
+
LinkNodeButton,
|
|
3432
2883
|
{
|
|
3433
2884
|
node,
|
|
3434
2885
|
dataitem,
|
|
@@ -3445,7 +2896,7 @@ var LinkNode = (props) => {
|
|
|
3445
2896
|
}
|
|
3446
2897
|
);
|
|
3447
2898
|
}
|
|
3448
|
-
return /* @__PURE__ */
|
|
2899
|
+
return /* @__PURE__ */ jsxs24(
|
|
3449
2900
|
Hyperlink,
|
|
3450
2901
|
{
|
|
3451
2902
|
href: linkUrl || "#",
|
|
@@ -3461,10 +2912,10 @@ var LinkNode = (props) => {
|
|
|
3461
2912
|
var LinkNode_default = LinkNode;
|
|
3462
2913
|
|
|
3463
2914
|
// src/components/pageRenderingEngine/nodes/SVGIconNode.tsx
|
|
3464
|
-
import { jsx as
|
|
2915
|
+
import { jsx as jsx41 } from "react/jsx-runtime";
|
|
3465
2916
|
var SVGIconNode = ({ node }) => {
|
|
3466
2917
|
if (!node?.svgCode) return null;
|
|
3467
|
-
return /* @__PURE__ */
|
|
2918
|
+
return /* @__PURE__ */ jsx41(
|
|
3468
2919
|
"span",
|
|
3469
2920
|
{
|
|
3470
2921
|
style: {
|
|
@@ -3481,7 +2932,7 @@ var SVGIconNode_default = SVGIconNode;
|
|
|
3481
2932
|
|
|
3482
2933
|
// src/components/pageRenderingEngine/nodes/EquationNode.tsx
|
|
3483
2934
|
import katex from "katex";
|
|
3484
|
-
import { jsx as
|
|
2935
|
+
import { jsx as jsx42 } from "react/jsx-runtime";
|
|
3485
2936
|
var EquationNode = ({ node }) => {
|
|
3486
2937
|
const { equation, inline } = node;
|
|
3487
2938
|
let html = "";
|
|
@@ -3496,7 +2947,7 @@ var EquationNode = ({ node }) => {
|
|
|
3496
2947
|
});
|
|
3497
2948
|
}
|
|
3498
2949
|
if (inline) {
|
|
3499
|
-
return /* @__PURE__ */
|
|
2950
|
+
return /* @__PURE__ */ jsx42(
|
|
3500
2951
|
"span",
|
|
3501
2952
|
{
|
|
3502
2953
|
className: "katex-inline",
|
|
@@ -3504,7 +2955,7 @@ var EquationNode = ({ node }) => {
|
|
|
3504
2955
|
}
|
|
3505
2956
|
);
|
|
3506
2957
|
}
|
|
3507
|
-
return /* @__PURE__ */
|
|
2958
|
+
return /* @__PURE__ */ jsx42(
|
|
3508
2959
|
"div",
|
|
3509
2960
|
{
|
|
3510
2961
|
className: "katex-block my-3 text-center",
|
|
@@ -3515,7 +2966,7 @@ var EquationNode = ({ node }) => {
|
|
|
3515
2966
|
var EquationNode_default = EquationNode;
|
|
3516
2967
|
|
|
3517
2968
|
// src/components/pageRenderingEngine/nodes/DatafieldNode.tsx
|
|
3518
|
-
import { jsx as
|
|
2969
|
+
import { jsx as jsx43 } from "react/jsx-runtime";
|
|
3519
2970
|
function getNestedProperty(obj, path) {
|
|
3520
2971
|
if (!obj || !path) return null;
|
|
3521
2972
|
if (path.includes(".")) {
|
|
@@ -3528,7 +2979,7 @@ function getNestedProperty(obj, path) {
|
|
|
3528
2979
|
}
|
|
3529
2980
|
const value = obj[path];
|
|
3530
2981
|
if (Array.isArray(value)) {
|
|
3531
|
-
return value.map((item, index) => /* @__PURE__ */
|
|
2982
|
+
return value.map((item, index) => /* @__PURE__ */ jsx43("div", { children: String(item) }, index));
|
|
3532
2983
|
}
|
|
3533
2984
|
return value;
|
|
3534
2985
|
}
|
|
@@ -3589,7 +3040,7 @@ var DatafieldNode = (props) => {
|
|
|
3589
3040
|
const dataType = props.node.dataType;
|
|
3590
3041
|
if (isEmptyValue) return null;
|
|
3591
3042
|
if (dataType === "rawContent") {
|
|
3592
|
-
return /* @__PURE__ */
|
|
3043
|
+
return /* @__PURE__ */ jsx43(
|
|
3593
3044
|
PageBodyRenderer_default,
|
|
3594
3045
|
{
|
|
3595
3046
|
rawBody: String(value ?? `@databound[${fieldName}]`),
|
|
@@ -3604,12 +3055,12 @@ var DatafieldNode = (props) => {
|
|
|
3604
3055
|
}
|
|
3605
3056
|
);
|
|
3606
3057
|
}
|
|
3607
|
-
return /* @__PURE__ */
|
|
3058
|
+
return /* @__PURE__ */ jsx43(
|
|
3608
3059
|
"span",
|
|
3609
3060
|
{
|
|
3610
3061
|
className: `datafield-node ${props.node.format < Formats.length ? Formats[props.node.format] : ""}`,
|
|
3611
3062
|
style: styles,
|
|
3612
|
-
children: /* @__PURE__ */
|
|
3063
|
+
children: /* @__PURE__ */ jsx43(
|
|
3613
3064
|
ViewControl_default,
|
|
3614
3065
|
{
|
|
3615
3066
|
controlType: dataType,
|
|
@@ -3622,7 +3073,7 @@ var DatafieldNode = (props) => {
|
|
|
3622
3073
|
var DatafieldNode_default = DatafieldNode;
|
|
3623
3074
|
|
|
3624
3075
|
// src/components/pageRenderingEngine/nodes/ParagraphNode.tsx
|
|
3625
|
-
import { Fragment as
|
|
3076
|
+
import { Fragment as Fragment5, jsx as jsx44, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
3626
3077
|
var ParagraphNode = (props) => {
|
|
3627
3078
|
const NodeTypes2 = {
|
|
3628
3079
|
["text"]: TextNode_default,
|
|
@@ -3642,9 +3093,9 @@ var ParagraphNode = (props) => {
|
|
|
3642
3093
|
const isInlineOnlyParent = props.parentTag === "summary";
|
|
3643
3094
|
const hasChildren = props.node.children && props.node.children.length > 0;
|
|
3644
3095
|
if (isInlineOnlyParent) {
|
|
3645
|
-
return /* @__PURE__ */
|
|
3096
|
+
return /* @__PURE__ */ jsx44(Fragment5, { children: hasChildren && props.node.children.map((node, index) => {
|
|
3646
3097
|
const SelectedNode = NodeTypes2[node.type];
|
|
3647
|
-
return /* @__PURE__ */
|
|
3098
|
+
return /* @__PURE__ */ jsx44(React32.Fragment, { children: SelectedNode && /* @__PURE__ */ jsx44(
|
|
3648
3099
|
SelectedNode,
|
|
3649
3100
|
{
|
|
3650
3101
|
node,
|
|
@@ -3656,10 +3107,10 @@ var ParagraphNode = (props) => {
|
|
|
3656
3107
|
) }, index);
|
|
3657
3108
|
}) });
|
|
3658
3109
|
}
|
|
3659
|
-
return /* @__PURE__ */
|
|
3110
|
+
return /* @__PURE__ */ jsxs25("div", { className: " " + formatClasses, children: [
|
|
3660
3111
|
hasChildren && props.node.children.map((node, index) => {
|
|
3661
3112
|
const SelectedNode = NodeTypes2[node.type];
|
|
3662
|
-
return /* @__PURE__ */
|
|
3113
|
+
return /* @__PURE__ */ jsx44(React32.Fragment, { children: SelectedNode && /* @__PURE__ */ jsx44(
|
|
3663
3114
|
SelectedNode,
|
|
3664
3115
|
{
|
|
3665
3116
|
node,
|
|
@@ -3670,14 +3121,14 @@ var ParagraphNode = (props) => {
|
|
|
3670
3121
|
}
|
|
3671
3122
|
) }, index);
|
|
3672
3123
|
}),
|
|
3673
|
-
!hasChildren && /* @__PURE__ */
|
|
3124
|
+
!hasChildren && /* @__PURE__ */ jsx44("div", { className: "py-1.5 lg:py-2" })
|
|
3674
3125
|
] });
|
|
3675
3126
|
};
|
|
3676
3127
|
var ParagraphNode_default = ParagraphNode;
|
|
3677
3128
|
|
|
3678
3129
|
// src/components/pageRenderingEngine/nodes/HeadingNode.tsx
|
|
3679
|
-
import
|
|
3680
|
-
import { Fragment as
|
|
3130
|
+
import React33 from "react";
|
|
3131
|
+
import { Fragment as Fragment6, jsx as jsx45 } from "react/jsx-runtime";
|
|
3681
3132
|
var HeadingNode = (props) => {
|
|
3682
3133
|
const NodeTypes2 = {
|
|
3683
3134
|
["text"]: TextNode_default,
|
|
@@ -3693,23 +3144,23 @@ var HeadingNode = (props) => {
|
|
|
3693
3144
|
{
|
|
3694
3145
|
}
|
|
3695
3146
|
const formatClasses = FormatClass[props.node.format] || "";
|
|
3696
|
-
return /* @__PURE__ */
|
|
3147
|
+
return /* @__PURE__ */ jsx45(Fragment6, { children: React33.createElement(
|
|
3697
3148
|
HeadingTag,
|
|
3698
3149
|
{ className: formatClasses },
|
|
3699
3150
|
props.node.children && props.node.children.map((childNode, index) => {
|
|
3700
3151
|
const SelectedNode = NodeTypes2[childNode.type];
|
|
3701
|
-
return /* @__PURE__ */
|
|
3152
|
+
return /* @__PURE__ */ jsx45(React33.Fragment, { children: SelectedNode && /* @__PURE__ */ jsx45(SelectedNode, { node: childNode, dataitem: props.dataitem, session: props.session, apiBaseUrl: props.apiBaseUrl, routeParameters: props.routeParameters }) }, index);
|
|
3702
3153
|
})
|
|
3703
3154
|
) });
|
|
3704
3155
|
};
|
|
3705
3156
|
var HeadingNode_default = HeadingNode;
|
|
3706
3157
|
|
|
3707
3158
|
// src/components/pageRenderingEngine/nodes/ListNode.tsx
|
|
3708
|
-
import
|
|
3159
|
+
import React35 from "react";
|
|
3709
3160
|
|
|
3710
3161
|
// src/components/pageRenderingEngine/nodes/ListItemNode.tsx
|
|
3711
|
-
import
|
|
3712
|
-
import { jsx as
|
|
3162
|
+
import React34 from "react";
|
|
3163
|
+
import { jsx as jsx46 } from "react/jsx-runtime";
|
|
3713
3164
|
var ListItemNode = (props) => {
|
|
3714
3165
|
const NodeTypes2 = {
|
|
3715
3166
|
text: TextNode_default,
|
|
@@ -3726,66 +3177,66 @@ var ListItemNode = (props) => {
|
|
|
3726
3177
|
liStyle.fontSize = match[1].trim();
|
|
3727
3178
|
}
|
|
3728
3179
|
}
|
|
3729
|
-
return /* @__PURE__ */
|
|
3180
|
+
return /* @__PURE__ */ jsx46("li", { style: liStyle, children: props.node.children && props.node.children.map((node, index) => {
|
|
3730
3181
|
const SelectedNode = NodeTypes2[node.type];
|
|
3731
3182
|
if (node.type === "linebreak") {
|
|
3732
3183
|
if (!foundFirstBreak) {
|
|
3733
3184
|
foundFirstBreak = true;
|
|
3734
|
-
return /* @__PURE__ */
|
|
3185
|
+
return /* @__PURE__ */ jsx46("div", {}, index);
|
|
3735
3186
|
} else {
|
|
3736
|
-
return /* @__PURE__ */
|
|
3187
|
+
return /* @__PURE__ */ jsx46("div", { className: "py-1 lg:py-2" }, index);
|
|
3737
3188
|
}
|
|
3738
3189
|
} else {
|
|
3739
3190
|
foundFirstBreak = false;
|
|
3740
|
-
return /* @__PURE__ */
|
|
3191
|
+
return /* @__PURE__ */ jsx46(React34.Fragment, { children: SelectedNode && /* @__PURE__ */ jsx46(SelectedNode, { node, dataitem: props.dataitem, routeParameters: props.routeParameters }) }, index);
|
|
3741
3192
|
}
|
|
3742
3193
|
}) });
|
|
3743
3194
|
};
|
|
3744
3195
|
var ListItemNode_default = ListItemNode;
|
|
3745
3196
|
|
|
3746
3197
|
// src/components/pageRenderingEngine/nodes/ListNode.tsx
|
|
3747
|
-
import { jsx as
|
|
3198
|
+
import { jsx as jsx47, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
3748
3199
|
var ListNode = (props) => {
|
|
3749
3200
|
const NodeTypes2 = {
|
|
3750
3201
|
listitem: ListItemNode_default
|
|
3751
3202
|
};
|
|
3752
|
-
return /* @__PURE__ */
|
|
3753
|
-
props.node.listType == "bullet" && /* @__PURE__ */
|
|
3203
|
+
return /* @__PURE__ */ jsxs26(React35.Fragment, { children: [
|
|
3204
|
+
props.node.listType == "bullet" && /* @__PURE__ */ jsx47("ul", { children: props.node.children && props.node.children.map((node, index) => {
|
|
3754
3205
|
const SelectedNode = NodeTypes2[node.type];
|
|
3755
|
-
return /* @__PURE__ */
|
|
3206
|
+
return /* @__PURE__ */ jsx47(React35.Fragment, { children: SelectedNode && /* @__PURE__ */ jsx47(SelectedNode, { node, dataitem: props.dataitem, routeParameters: props.routeParameters }) }, index);
|
|
3756
3207
|
}) }),
|
|
3757
|
-
props.node.listType == "number" && /* @__PURE__ */
|
|
3208
|
+
props.node.listType == "number" && /* @__PURE__ */ jsx47("ol", { children: props.node.children && props.node.children.map((node, index) => {
|
|
3758
3209
|
const SelectedNode = NodeTypes2[node.type];
|
|
3759
|
-
return /* @__PURE__ */
|
|
3210
|
+
return /* @__PURE__ */ jsx47(React35.Fragment, { children: SelectedNode && /* @__PURE__ */ jsx47(SelectedNode, { node, dataitem: props.dataitem, routeParameters: props.routeParameters }) }, index);
|
|
3760
3211
|
}) })
|
|
3761
3212
|
] });
|
|
3762
3213
|
};
|
|
3763
3214
|
var ListNode_default = ListNode;
|
|
3764
3215
|
|
|
3765
3216
|
// src/components/pageRenderingEngine/nodes/QuoteNode.tsx
|
|
3766
|
-
import
|
|
3767
|
-
import { jsx as
|
|
3217
|
+
import React36 from "react";
|
|
3218
|
+
import { jsx as jsx48 } from "react/jsx-runtime";
|
|
3768
3219
|
var QuoteNode = (props) => {
|
|
3769
3220
|
const NodeTypes2 = {
|
|
3770
3221
|
["text"]: TextNode_default,
|
|
3771
3222
|
["linebreak"]: LineBreakNode_default,
|
|
3772
3223
|
["link"]: LinkNode_default
|
|
3773
3224
|
};
|
|
3774
|
-
return /* @__PURE__ */
|
|
3225
|
+
return /* @__PURE__ */ jsx48("blockquote", { children: props.node.children && props.node.children.map((node, index) => {
|
|
3775
3226
|
const SelectedNode = NodeTypes2[node.type];
|
|
3776
|
-
return /* @__PURE__ */
|
|
3227
|
+
return /* @__PURE__ */ jsx48(React36.Fragment, { children: SelectedNode && /* @__PURE__ */ jsx48(SelectedNode, { node, session: props.session, apiBaseUrl: props.apiBaseUrl, routeParameters: props.routeParameters }) }, index);
|
|
3777
3228
|
}) });
|
|
3778
3229
|
};
|
|
3779
3230
|
var QuoteNode_default = QuoteNode;
|
|
3780
3231
|
|
|
3781
3232
|
// src/components/pageRenderingEngine/nodes/CodeNode.tsx
|
|
3782
|
-
import
|
|
3783
|
-
import
|
|
3784
|
-
import { jsx as
|
|
3785
|
-
var CopyButton =
|
|
3233
|
+
import React37 from "react";
|
|
3234
|
+
import dynamic3 from "next/dynamic";
|
|
3235
|
+
import { jsx as jsx49, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
3236
|
+
var CopyButton = dynamic3(() => import("./CopyButton-XONTQQW7.mjs"), {
|
|
3786
3237
|
ssr: false,
|
|
3787
3238
|
// optional: fallback UI while loading
|
|
3788
|
-
loading: () => /* @__PURE__ */
|
|
3239
|
+
loading: () => /* @__PURE__ */ jsx49("span", { className: "text-gray-400 text-xs", children: "Copy" })
|
|
3789
3240
|
});
|
|
3790
3241
|
var CodeNode = (props) => {
|
|
3791
3242
|
const NodeTypes2 = {
|
|
@@ -3799,14 +3250,14 @@ var CodeNode = (props) => {
|
|
|
3799
3250
|
if (node.type === "link") return node.text || node.url || "";
|
|
3800
3251
|
return "";
|
|
3801
3252
|
}).join("") ?? "";
|
|
3802
|
-
return /* @__PURE__ */
|
|
3803
|
-
/* @__PURE__ */
|
|
3804
|
-
/* @__PURE__ */
|
|
3805
|
-
/* @__PURE__ */
|
|
3253
|
+
return /* @__PURE__ */ jsxs27("div", { children: [
|
|
3254
|
+
/* @__PURE__ */ jsxs27("div", { className: "flex items-center relative bg-neutral-strong px-4 py-3 text-xs font-sans justify-between rounded-t-md ", children: [
|
|
3255
|
+
/* @__PURE__ */ jsx49("span", { children: "Code Snippet" }),
|
|
3256
|
+
/* @__PURE__ */ jsx49(CopyButton, { text: textContent })
|
|
3806
3257
|
] }),
|
|
3807
|
-
/* @__PURE__ */
|
|
3258
|
+
/* @__PURE__ */ jsx49("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) => {
|
|
3808
3259
|
const SelectedNode = NodeTypes2[node.type];
|
|
3809
|
-
return /* @__PURE__ */
|
|
3260
|
+
return /* @__PURE__ */ jsx49(React37.Fragment, { children: SelectedNode && /* @__PURE__ */ jsx49(
|
|
3810
3261
|
SelectedNode,
|
|
3811
3262
|
{
|
|
3812
3263
|
node,
|
|
@@ -3821,14 +3272,14 @@ var CodeNode = (props) => {
|
|
|
3821
3272
|
var CodeNode_default = CodeNode;
|
|
3822
3273
|
|
|
3823
3274
|
// src/components/pageRenderingEngine/nodes/HorizontalRuleNode.tsx
|
|
3824
|
-
import { jsx as
|
|
3275
|
+
import { jsx as jsx50 } from "react/jsx-runtime";
|
|
3825
3276
|
var HorizontalRuleNode = () => {
|
|
3826
|
-
return /* @__PURE__ */
|
|
3277
|
+
return /* @__PURE__ */ jsx50("hr", {});
|
|
3827
3278
|
};
|
|
3828
3279
|
var HorizontalRuleNode_default = HorizontalRuleNode;
|
|
3829
3280
|
|
|
3830
3281
|
// src/components/pageRenderingEngine/nodes/WidgetNode.tsx
|
|
3831
|
-
import { Fragment as
|
|
3282
|
+
import { Fragment as Fragment7, jsx as jsx51, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
3832
3283
|
var WidgetNode = (props) => {
|
|
3833
3284
|
const getWidgetParameters = () => {
|
|
3834
3285
|
const widgetInputParameters = {
|
|
@@ -3885,14 +3336,14 @@ var WidgetNode = (props) => {
|
|
|
3885
3336
|
};
|
|
3886
3337
|
const widgetCode = props.node?.widgetCode;
|
|
3887
3338
|
if (!widgetCode) {
|
|
3888
|
-
return /* @__PURE__ */
|
|
3339
|
+
return /* @__PURE__ */ jsx51(Fragment7, { children: "Invalid widget" });
|
|
3889
3340
|
}
|
|
3890
3341
|
const SelectedWidget = getWidget(widgetCode);
|
|
3891
3342
|
if (!SelectedWidget) {
|
|
3892
3343
|
if (process.env.NODE_ENV !== "production") {
|
|
3893
3344
|
console.warn("Widget not found:", widgetCode);
|
|
3894
3345
|
}
|
|
3895
|
-
return /* @__PURE__ */
|
|
3346
|
+
return /* @__PURE__ */ jsxs28(Fragment7, { children: [
|
|
3896
3347
|
"Widget not found: ",
|
|
3897
3348
|
widgetCode
|
|
3898
3349
|
] });
|
|
@@ -3900,7 +3351,7 @@ var WidgetNode = (props) => {
|
|
|
3900
3351
|
const widgetParams = getWidgetParameters();
|
|
3901
3352
|
return (
|
|
3902
3353
|
// eslint-disable-next-line react-hooks/static-components
|
|
3903
|
-
/* @__PURE__ */
|
|
3354
|
+
/* @__PURE__ */ jsx51(
|
|
3904
3355
|
SelectedWidget,
|
|
3905
3356
|
{
|
|
3906
3357
|
params: widgetParams,
|
|
@@ -3916,12 +3367,12 @@ var WidgetNode = (props) => {
|
|
|
3916
3367
|
var WidgetNode_default = WidgetNode;
|
|
3917
3368
|
|
|
3918
3369
|
// src/components/pageRenderingEngine/nodes/FormContainerNode.tsx
|
|
3919
|
-
import
|
|
3370
|
+
import React38, { useRef as useRef3, useReducer as useReducer2, useCallback as useCallback3, useEffect as useEffect7 } from "react";
|
|
3920
3371
|
|
|
3921
3372
|
// src/components/pageRenderingEngine/nodes/InputControlNode.tsx
|
|
3922
|
-
import { jsx as
|
|
3373
|
+
import { jsx as jsx52 } from "react/jsx-runtime";
|
|
3923
3374
|
var InputControlNode = (props) => {
|
|
3924
|
-
return /* @__PURE__ */
|
|
3375
|
+
return /* @__PURE__ */ jsx52("div", { children: /* @__PURE__ */ jsx52(
|
|
3925
3376
|
InputControl_default,
|
|
3926
3377
|
{
|
|
3927
3378
|
name: props.node.name,
|
|
@@ -3950,7 +3401,7 @@ var InputControlNode = (props) => {
|
|
|
3950
3401
|
var InputControlNode_default = InputControlNode;
|
|
3951
3402
|
|
|
3952
3403
|
// src/components/pageRenderingEngine/nodes/FormContainerNode.tsx
|
|
3953
|
-
import { jsx as
|
|
3404
|
+
import { jsx as jsx53, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
3954
3405
|
var FormContainerNode = (props) => {
|
|
3955
3406
|
const NodeTypes2 = {
|
|
3956
3407
|
["input-control"]: InputControlNode_default
|
|
@@ -3962,7 +3413,7 @@ var FormContainerNode = (props) => {
|
|
|
3962
3413
|
lastPropertyChanged: ""
|
|
3963
3414
|
};
|
|
3964
3415
|
const [formState, dispatch] = useReducer2(FormReducer_default, initialState);
|
|
3965
|
-
const handleInputChange =
|
|
3416
|
+
const handleInputChange = useCallback3((updatedValues) => {
|
|
3966
3417
|
dispatch({ type: FORM_INPUT_UPDATE, name: updatedValues.name, value: updatedValues.value });
|
|
3967
3418
|
}, [dispatch]);
|
|
3968
3419
|
useEffect7(() => {
|
|
@@ -3980,12 +3431,12 @@ var FormContainerNode = (props) => {
|
|
|
3980
3431
|
};
|
|
3981
3432
|
fetchInitialData();
|
|
3982
3433
|
}, [props.apiBaseUrl, props.node, props.session, props.routeParameters]);
|
|
3983
|
-
return /* @__PURE__ */
|
|
3434
|
+
return /* @__PURE__ */ jsxs29("form", { className: "group space-y-6 pb-6 overflow-y-auto", noValidate: true, ref: formRef, children: [
|
|
3984
3435
|
node.children && node.children.map((node2, index) => {
|
|
3985
3436
|
{
|
|
3986
3437
|
}
|
|
3987
3438
|
const SelectedNode = NodeTypes2[node2.type];
|
|
3988
|
-
return /* @__PURE__ */
|
|
3439
|
+
return /* @__PURE__ */ jsx53(React38.Fragment, { children: SelectedNode && node2.type == "input-control" && /* @__PURE__ */ jsx53(
|
|
3989
3440
|
InputControlNode_default,
|
|
3990
3441
|
{
|
|
3991
3442
|
value: formState.inputValues[node2.name],
|
|
@@ -3994,18 +3445,18 @@ var FormContainerNode = (props) => {
|
|
|
3994
3445
|
}
|
|
3995
3446
|
) }, index);
|
|
3996
3447
|
}),
|
|
3997
|
-
node.children.length == 0 && /* @__PURE__ */
|
|
3448
|
+
node.children.length == 0 && /* @__PURE__ */ jsx53("div", { className: "py-0.5 lg:py-1.5" })
|
|
3998
3449
|
] });
|
|
3999
3450
|
};
|
|
4000
3451
|
var FormContainerNode_default = FormContainerNode;
|
|
4001
3452
|
|
|
4002
3453
|
// src/components/pageRenderingEngine/nodes/DivContainer.tsx
|
|
4003
|
-
import
|
|
3454
|
+
import React41 from "react";
|
|
4004
3455
|
|
|
4005
3456
|
// src/components/pageRenderingEngine/nodes/EmbedNode.tsx
|
|
4006
|
-
import
|
|
4007
|
-
import { jsx as
|
|
4008
|
-
var IframeClient =
|
|
3457
|
+
import dynamic4 from "next/dynamic";
|
|
3458
|
+
import { jsx as jsx54 } from "react/jsx-runtime";
|
|
3459
|
+
var IframeClient = dynamic4(() => import("./IframeClient-J22NMEVY.mjs"), {
|
|
4009
3460
|
ssr: false
|
|
4010
3461
|
});
|
|
4011
3462
|
var EmbedNode = (props) => {
|
|
@@ -4017,13 +3468,13 @@ var EmbedNode = (props) => {
|
|
|
4017
3468
|
} else {
|
|
4018
3469
|
src = props.node.embedSrc;
|
|
4019
3470
|
}
|
|
4020
|
-
return /* @__PURE__ */
|
|
3471
|
+
return /* @__PURE__ */ jsx54("div", { className: "aspect-video", children: src && /* @__PURE__ */ jsx54(IframeClient, { src }) });
|
|
4021
3472
|
};
|
|
4022
3473
|
var EmbedNode_default = EmbedNode;
|
|
4023
3474
|
|
|
4024
3475
|
// src/components/Slider.tsx
|
|
4025
|
-
import
|
|
4026
|
-
import { Fragment as
|
|
3476
|
+
import React39, { useState as useState6, useEffect as useEffect8, Children, cloneElement } from "react";
|
|
3477
|
+
import { Fragment as Fragment8, jsx as jsx55, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
4027
3478
|
var Slider = ({
|
|
4028
3479
|
children,
|
|
4029
3480
|
slidesToShow = 4,
|
|
@@ -4041,12 +3492,12 @@ var Slider = ({
|
|
|
4041
3492
|
pillStyle = "cumulative",
|
|
4042
3493
|
progressPosition = "bottom"
|
|
4043
3494
|
}) => {
|
|
4044
|
-
const [currentSlide, setCurrentSlide] =
|
|
4045
|
-
const [transition, setTransition] =
|
|
4046
|
-
const [slidesToShowState, setSlidesToShowState] =
|
|
3495
|
+
const [currentSlide, setCurrentSlide] = useState6(0);
|
|
3496
|
+
const [transition, setTransition] = useState6(true);
|
|
3497
|
+
const [slidesToShowState, setSlidesToShowState] = useState6(
|
|
4047
3498
|
typeof slidesToShow === "number" ? slidesToShow : slidesToShow.large
|
|
4048
3499
|
);
|
|
4049
|
-
const [isPlaying, setIsPlaying] =
|
|
3500
|
+
const [isPlaying, setIsPlaying] = useState6(autoplay);
|
|
4050
3501
|
useEffect8(() => {
|
|
4051
3502
|
if (typeof slidesToShow === "number") return;
|
|
4052
3503
|
const handleResize = () => {
|
|
@@ -4117,10 +3568,10 @@ var Slider = ({
|
|
|
4117
3568
|
};
|
|
4118
3569
|
const translateX = -currentSlide * (100 / slidesToShowState);
|
|
4119
3570
|
const slides = Children.map(children, (child, index) => {
|
|
4120
|
-
if (!
|
|
3571
|
+
if (!React39.isValidElement(child)) return null;
|
|
4121
3572
|
const childProps = child.props;
|
|
4122
3573
|
const mergedClassName = `${childProps.className ?? ""} w-full`.trim();
|
|
4123
|
-
return /* @__PURE__ */
|
|
3574
|
+
return /* @__PURE__ */ jsx55(
|
|
4124
3575
|
"div",
|
|
4125
3576
|
{
|
|
4126
3577
|
className: `flex-none ${scaleOnHover ? "group hover:z-50" : ""} relative`,
|
|
@@ -4143,14 +3594,14 @@ var Slider = ({
|
|
|
4143
3594
|
return "bottom-4";
|
|
4144
3595
|
}
|
|
4145
3596
|
};
|
|
4146
|
-
return /* @__PURE__ */
|
|
3597
|
+
return /* @__PURE__ */ jsxs30(
|
|
4147
3598
|
"div",
|
|
4148
3599
|
{
|
|
4149
3600
|
className: `relative w-full overflow-hidden ${className}`,
|
|
4150
3601
|
onMouseEnter: handleMouseEnter,
|
|
4151
3602
|
onMouseLeave: handleMouseLeave,
|
|
4152
3603
|
children: [
|
|
4153
|
-
/* @__PURE__ */
|
|
3604
|
+
/* @__PURE__ */ jsx55(
|
|
4154
3605
|
"div",
|
|
4155
3606
|
{
|
|
4156
3607
|
className: "flex h-full",
|
|
@@ -4161,18 +3612,18 @@ var Slider = ({
|
|
|
4161
3612
|
children: slides
|
|
4162
3613
|
}
|
|
4163
3614
|
),
|
|
4164
|
-
show_arrows && /* @__PURE__ */
|
|
4165
|
-
/* @__PURE__ */
|
|
3615
|
+
show_arrows && /* @__PURE__ */ jsxs30(Fragment8, { children: [
|
|
3616
|
+
/* @__PURE__ */ jsx55(
|
|
4166
3617
|
ArrowButton,
|
|
4167
3618
|
{
|
|
4168
3619
|
direction: "left",
|
|
4169
3620
|
onClick: prevSlide,
|
|
4170
3621
|
visible: infinite_scroll || currentSlide > 0,
|
|
4171
3622
|
className: arrowClassName,
|
|
4172
|
-
children: /* @__PURE__ */
|
|
3623
|
+
children: /* @__PURE__ */ jsx55("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__ */ jsx55("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M15.75 19.5 8.25 12l7.5-7.5" }) })
|
|
4173
3624
|
}
|
|
4174
3625
|
),
|
|
4175
|
-
/* @__PURE__ */
|
|
3626
|
+
/* @__PURE__ */ jsxs30(
|
|
4176
3627
|
ArrowButton,
|
|
4177
3628
|
{
|
|
4178
3629
|
direction: "right",
|
|
@@ -4180,13 +3631,13 @@ var Slider = ({
|
|
|
4180
3631
|
visible: infinite_scroll || currentSlide < maxSlide,
|
|
4181
3632
|
className: arrowClassName,
|
|
4182
3633
|
children: [
|
|
4183
|
-
/* @__PURE__ */
|
|
3634
|
+
/* @__PURE__ */ jsx55("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__ */ jsx55("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "m8.25 4.5 7.5 7.5-7.5 7.5" }) }),
|
|
4184
3635
|
" "
|
|
4185
3636
|
]
|
|
4186
3637
|
}
|
|
4187
3638
|
)
|
|
4188
3639
|
] }),
|
|
4189
|
-
show_dots && /* @__PURE__ */
|
|
3640
|
+
show_dots && /* @__PURE__ */ jsx55("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__ */ jsx55(
|
|
4190
3641
|
ProgressPill,
|
|
4191
3642
|
{
|
|
4192
3643
|
active: index === currentSlide,
|
|
@@ -4212,7 +3663,7 @@ var ArrowButton = ({
|
|
|
4212
3663
|
visible,
|
|
4213
3664
|
children,
|
|
4214
3665
|
className = ""
|
|
4215
|
-
}) => /* @__PURE__ */
|
|
3666
|
+
}) => /* @__PURE__ */ jsx55(
|
|
4216
3667
|
"button",
|
|
4217
3668
|
{
|
|
4218
3669
|
className: `
|
|
@@ -4238,7 +3689,7 @@ var ProgressPill = ({
|
|
|
4238
3689
|
currentSlide,
|
|
4239
3690
|
totalSlides
|
|
4240
3691
|
}) => {
|
|
4241
|
-
const [progress, setProgress] =
|
|
3692
|
+
const [progress, setProgress] = useState6(0);
|
|
4242
3693
|
useEffect8(() => {
|
|
4243
3694
|
if (active) {
|
|
4244
3695
|
setProgress(0);
|
|
@@ -4299,7 +3750,7 @@ var ProgressPill = ({
|
|
|
4299
3750
|
const renderProgressBar = () => {
|
|
4300
3751
|
if (style === "modern" && isActive || style === "cumulative" && shouldShowProgress) {
|
|
4301
3752
|
const displayProgress = style === "cumulative" && isFilled ? 100 : progress;
|
|
4302
|
-
return /* @__PURE__ */
|
|
3753
|
+
return /* @__PURE__ */ jsx55(
|
|
4303
3754
|
"div",
|
|
4304
3755
|
{
|
|
4305
3756
|
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`,
|
|
@@ -4311,7 +3762,7 @@ var ProgressPill = ({
|
|
|
4311
3762
|
};
|
|
4312
3763
|
const renderCumulativeFill = () => {
|
|
4313
3764
|
if (style === "cumulative" && isFilled && !isActive) {
|
|
4314
|
-
return /* @__PURE__ */
|
|
3765
|
+
return /* @__PURE__ */ jsx55(
|
|
4315
3766
|
"div",
|
|
4316
3767
|
{
|
|
4317
3768
|
className: `absolute top-0 left-0 h-full rounded-full ${activeClassName || "bg-white"} transition-all duration-300`,
|
|
@@ -4321,7 +3772,7 @@ var ProgressPill = ({
|
|
|
4321
3772
|
}
|
|
4322
3773
|
return null;
|
|
4323
3774
|
};
|
|
4324
|
-
return /* @__PURE__ */
|
|
3775
|
+
return /* @__PURE__ */ jsxs30(
|
|
4325
3776
|
"button",
|
|
4326
3777
|
{
|
|
4327
3778
|
className: `${baseClasses} ${getStyleClasses()}`,
|
|
@@ -4497,10 +3948,10 @@ var PathUtility = class {
|
|
|
4497
3948
|
var PathUtility_default = new PathUtility();
|
|
4498
3949
|
|
|
4499
3950
|
// src/components/NoDataFound.tsx
|
|
4500
|
-
import { jsx as
|
|
3951
|
+
import { jsx as jsx56, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
4501
3952
|
var NoDataFound = () => {
|
|
4502
|
-
return /* @__PURE__ */
|
|
4503
|
-
/* @__PURE__ */
|
|
3953
|
+
return /* @__PURE__ */ jsxs31("div", { className: "flex flex-col items-center justify-center py-12 px-4 text-center bg-neutral-weak", children: [
|
|
3954
|
+
/* @__PURE__ */ jsx56("div", { className: "mb-5", children: /* @__PURE__ */ jsx56("div", { className: "mx-auto w-20 h-20 rounded-full flex items-center justify-center bg-neutral-soft", children: /* @__PURE__ */ jsx56(
|
|
4504
3955
|
"svg",
|
|
4505
3956
|
{
|
|
4506
3957
|
className: "w-10 h-10",
|
|
@@ -4508,7 +3959,7 @@ var NoDataFound = () => {
|
|
|
4508
3959
|
stroke: "currentColor",
|
|
4509
3960
|
viewBox: "0 0 24 24",
|
|
4510
3961
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4511
|
-
children: /* @__PURE__ */
|
|
3962
|
+
children: /* @__PURE__ */ jsx56(
|
|
4512
3963
|
"path",
|
|
4513
3964
|
{
|
|
4514
3965
|
strokeLinecap: "round",
|
|
@@ -4519,15 +3970,15 @@ var NoDataFound = () => {
|
|
|
4519
3970
|
)
|
|
4520
3971
|
}
|
|
4521
3972
|
) }) }),
|
|
4522
|
-
/* @__PURE__ */
|
|
4523
|
-
/* @__PURE__ */
|
|
3973
|
+
/* @__PURE__ */ jsx56("h3", { className: "text-lg font-medium mb-2", children: "No data available" }),
|
|
3974
|
+
/* @__PURE__ */ jsx56("p", { className: " max-w-sm mb-0", children: "No records found. Data may be empty or not available at the moment." })
|
|
4524
3975
|
] });
|
|
4525
3976
|
};
|
|
4526
3977
|
var NoDataFound_default = NoDataFound;
|
|
4527
3978
|
|
|
4528
3979
|
// src/components/Pagination.tsx
|
|
4529
3980
|
import { useMemo } from "react";
|
|
4530
|
-
import { jsx as
|
|
3981
|
+
import { jsx as jsx57, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
4531
3982
|
var Pagination = (props) => {
|
|
4532
3983
|
const { dataset, path, query, showPageSizeSelector = false, showJumpToPage = false } = props;
|
|
4533
3984
|
const builder = useMemo(() => {
|
|
@@ -4571,7 +4022,7 @@ var Pagination = (props) => {
|
|
|
4571
4022
|
return range;
|
|
4572
4023
|
};
|
|
4573
4024
|
const paginationRange = getPaginationRange();
|
|
4574
|
-
const PageButton = ({ page, children }) => /* @__PURE__ */
|
|
4025
|
+
const PageButton = ({ page, children }) => /* @__PURE__ */ jsx57(
|
|
4575
4026
|
Hyperlink,
|
|
4576
4027
|
{
|
|
4577
4028
|
linkType: "Link" /* Link */,
|
|
@@ -4586,9 +4037,9 @@ var Pagination = (props) => {
|
|
|
4586
4037
|
);
|
|
4587
4038
|
const NavigationButton = ({ page, disabled, children }) => {
|
|
4588
4039
|
if (disabled) {
|
|
4589
|
-
return /* @__PURE__ */
|
|
4040
|
+
return /* @__PURE__ */ jsx57("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 });
|
|
4590
4041
|
}
|
|
4591
|
-
return /* @__PURE__ */
|
|
4042
|
+
return /* @__PURE__ */ jsx57(
|
|
4592
4043
|
Hyperlink,
|
|
4593
4044
|
{
|
|
4594
4045
|
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",
|
|
@@ -4598,35 +4049,35 @@ var Pagination = (props) => {
|
|
|
4598
4049
|
);
|
|
4599
4050
|
};
|
|
4600
4051
|
if (totalPages <= 1 && totalItems === 0) return null;
|
|
4601
|
-
return /* @__PURE__ */
|
|
4602
|
-
/* @__PURE__ */
|
|
4603
|
-
/* @__PURE__ */
|
|
4052
|
+
return /* @__PURE__ */ jsxs32("div", { className: "py-6 border-t bg-default", children: [
|
|
4053
|
+
/* @__PURE__ */ jsxs32("div", { className: "flex flex-col sm:flex-row items-center justify-between gap-4", children: [
|
|
4054
|
+
/* @__PURE__ */ jsxs32("div", { className: "text-sm", children: [
|
|
4604
4055
|
"Showing ",
|
|
4605
|
-
/* @__PURE__ */
|
|
4056
|
+
/* @__PURE__ */ jsxs32("span", { className: "font-semibold", children: [
|
|
4606
4057
|
startItem,
|
|
4607
4058
|
"-",
|
|
4608
4059
|
endItem
|
|
4609
4060
|
] }),
|
|
4610
4061
|
" ",
|
|
4611
4062
|
"out of ",
|
|
4612
|
-
/* @__PURE__ */
|
|
4063
|
+
/* @__PURE__ */ jsx57("span", { className: "font-semibold", children: totalItems.toLocaleString() }),
|
|
4613
4064
|
" results"
|
|
4614
4065
|
] }),
|
|
4615
|
-
totalPages > 1 && /* @__PURE__ */
|
|
4616
|
-
/* @__PURE__ */
|
|
4066
|
+
totalPages > 1 && /* @__PURE__ */ jsxs32("div", { className: "flex items-center space-x-1", children: [
|
|
4067
|
+
/* @__PURE__ */ jsxs32(
|
|
4617
4068
|
NavigationButton,
|
|
4618
4069
|
{
|
|
4619
4070
|
page: activePageNumber - 1,
|
|
4620
4071
|
disabled: activePageNumber === 1,
|
|
4621
4072
|
children: [
|
|
4622
|
-
/* @__PURE__ */
|
|
4623
|
-
/* @__PURE__ */
|
|
4073
|
+
/* @__PURE__ */ jsx57("span", { children: /* @__PURE__ */ jsx57(Icon_default, { name: "chevronLeft", className: "w-4 h-4 mr-1" }) }),
|
|
4074
|
+
/* @__PURE__ */ jsx57("span", { className: "text-sm", children: "Prev" })
|
|
4624
4075
|
]
|
|
4625
4076
|
}
|
|
4626
4077
|
),
|
|
4627
4078
|
paginationRange.map((item, index) => {
|
|
4628
4079
|
if (item === "...") {
|
|
4629
|
-
return /* @__PURE__ */
|
|
4080
|
+
return /* @__PURE__ */ jsx57(
|
|
4630
4081
|
"span",
|
|
4631
4082
|
{
|
|
4632
4083
|
className: "min-w-[20px] md:min-w-[40px] h-10 flex items-center justify-center text-gray-500",
|
|
@@ -4636,23 +4087,23 @@ var Pagination = (props) => {
|
|
|
4636
4087
|
);
|
|
4637
4088
|
}
|
|
4638
4089
|
const page = item;
|
|
4639
|
-
return /* @__PURE__ */
|
|
4090
|
+
return /* @__PURE__ */ jsx57(PageButton, { page, children: page }, page);
|
|
4640
4091
|
}),
|
|
4641
|
-
/* @__PURE__ */
|
|
4092
|
+
/* @__PURE__ */ jsxs32(
|
|
4642
4093
|
NavigationButton,
|
|
4643
4094
|
{
|
|
4644
4095
|
page: activePageNumber + 1,
|
|
4645
4096
|
disabled: activePageNumber === totalPages,
|
|
4646
4097
|
children: [
|
|
4647
|
-
/* @__PURE__ */
|
|
4648
|
-
/* @__PURE__ */
|
|
4098
|
+
/* @__PURE__ */ jsx57("span", { className: "text-sm", children: "Next" }),
|
|
4099
|
+
/* @__PURE__ */ jsx57("span", { children: /* @__PURE__ */ jsx57(Icon_default, { name: "chevronRight", className: "w-4 h-4 ml-1" }) })
|
|
4649
4100
|
]
|
|
4650
4101
|
}
|
|
4651
4102
|
)
|
|
4652
4103
|
] }),
|
|
4653
|
-
showJumpToPage && totalPages > 5 && /* @__PURE__ */
|
|
4654
|
-
/* @__PURE__ */
|
|
4655
|
-
/* @__PURE__ */
|
|
4104
|
+
showJumpToPage && totalPages > 5 && /* @__PURE__ */ jsxs32("div", { className: "flex items-center space-x-2", children: [
|
|
4105
|
+
/* @__PURE__ */ jsx57("span", { className: "text-sm", children: "Go to:" }),
|
|
4106
|
+
/* @__PURE__ */ jsx57("div", { className: "relative", children: /* @__PURE__ */ jsx57(
|
|
4656
4107
|
"input",
|
|
4657
4108
|
{
|
|
4658
4109
|
type: "number",
|
|
@@ -4673,9 +4124,9 @@ var Pagination = (props) => {
|
|
|
4673
4124
|
) })
|
|
4674
4125
|
] })
|
|
4675
4126
|
] }),
|
|
4676
|
-
showPageSizeSelector && /* @__PURE__ */
|
|
4677
|
-
/* @__PURE__ */
|
|
4678
|
-
/* @__PURE__ */
|
|
4127
|
+
showPageSizeSelector && /* @__PURE__ */ jsx57("div", { className: "mt-4 pt-4 border-t bg-default", children: /* @__PURE__ */ jsxs32("div", { className: "flex items-center justify-center space-x-2", children: [
|
|
4128
|
+
/* @__PURE__ */ jsx57("span", { className: "text-sm", children: "Show:" }),
|
|
4129
|
+
/* @__PURE__ */ jsx57("div", { className: "flex space-x-1", children: [10, 25, 50, 100].map((size) => /* @__PURE__ */ jsx57(
|
|
4679
4130
|
Hyperlink,
|
|
4680
4131
|
{
|
|
4681
4132
|
className: `
|
|
@@ -4687,16 +4138,16 @@ var Pagination = (props) => {
|
|
|
4687
4138
|
},
|
|
4688
4139
|
size
|
|
4689
4140
|
)) }),
|
|
4690
|
-
/* @__PURE__ */
|
|
4141
|
+
/* @__PURE__ */ jsx57("span", { className: "text-sm", children: "per page" })
|
|
4691
4142
|
] }) })
|
|
4692
4143
|
] });
|
|
4693
4144
|
};
|
|
4694
4145
|
var Pagination_default = Pagination;
|
|
4695
4146
|
|
|
4696
4147
|
// src/components/pageRenderingEngine/nodes/ImageGalleryNode.tsx
|
|
4697
|
-
import
|
|
4698
|
-
import { jsx as
|
|
4699
|
-
var HlsPlayer1 =
|
|
4148
|
+
import dynamic5 from "next/dynamic";
|
|
4149
|
+
import { jsx as jsx58 } from "react/jsx-runtime";
|
|
4150
|
+
var HlsPlayer1 = dynamic5(() => import("./HlsPlayer-FFEIK6FG.mjs"), {
|
|
4700
4151
|
ssr: false
|
|
4701
4152
|
});
|
|
4702
4153
|
var parseMaybeNumber = (value) => {
|
|
@@ -4732,7 +4183,7 @@ var ImageGalleryNode = (props) => {
|
|
|
4732
4183
|
right: "justify-end"
|
|
4733
4184
|
};
|
|
4734
4185
|
const formatClasses = FormatClass[props.node.format || ""] || "";
|
|
4735
|
-
return /* @__PURE__ */
|
|
4186
|
+
return /* @__PURE__ */ jsx58("div", { className: `flex flex-wrap gap-4 ${formatClasses}`, children: visibleImages.map((img, idx) => {
|
|
4736
4187
|
const imageUrl = resolveImageUrl(img.imageUrl);
|
|
4737
4188
|
if (!imageUrl) return null;
|
|
4738
4189
|
const posterUrl = resolvePosterUrl(img.posterUrl);
|
|
@@ -4740,7 +4191,7 @@ var ImageGalleryNode = (props) => {
|
|
|
4740
4191
|
const intrinsicHeight = parseMaybeNumber(img.intrinsicHeight);
|
|
4741
4192
|
const isHls = imageUrl.endsWith(".m3u8");
|
|
4742
4193
|
const alt = img.title || "Gallery image";
|
|
4743
|
-
return /* @__PURE__ */
|
|
4194
|
+
return /* @__PURE__ */ jsx58("div", { className: "max-w-full", children: isHls ? /* @__PURE__ */ jsx58(
|
|
4744
4195
|
HlsPlayer1,
|
|
4745
4196
|
{
|
|
4746
4197
|
assetUrl: imageUrl,
|
|
@@ -4755,7 +4206,7 @@ var ImageGalleryNode = (props) => {
|
|
|
4755
4206
|
}
|
|
4756
4207
|
) : (
|
|
4757
4208
|
/* eslint-disable-next-line @next/next/no-img-element */
|
|
4758
|
-
/* @__PURE__ */
|
|
4209
|
+
/* @__PURE__ */ jsx58(
|
|
4759
4210
|
"img",
|
|
4760
4211
|
{
|
|
4761
4212
|
loading: "lazy",
|
|
@@ -4773,7 +4224,7 @@ var ImageGalleryNode_default = ImageGalleryNode;
|
|
|
4773
4224
|
|
|
4774
4225
|
// src/components/pageRenderingEngine/nodes/DivContainer.tsx
|
|
4775
4226
|
import Link2 from "next/link";
|
|
4776
|
-
import { jsx as
|
|
4227
|
+
import { jsx as jsx59, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
4777
4228
|
function toCamelCase(str) {
|
|
4778
4229
|
return str.replace(/-([a-z])/g, (_, letter) => letter.toUpperCase());
|
|
4779
4230
|
}
|
|
@@ -4956,7 +4407,7 @@ var DivContainer = async (props) => {
|
|
|
4956
4407
|
response = await serviceClient.get(endpoint);
|
|
4957
4408
|
result = response?.result;
|
|
4958
4409
|
if (dataBindingProperties.showNoResultsMessage && (result === void 0 || result.length == 0)) {
|
|
4959
|
-
return /* @__PURE__ */
|
|
4410
|
+
return /* @__PURE__ */ jsx59(NoDataFound_default, {});
|
|
4960
4411
|
}
|
|
4961
4412
|
if (dataBindingProperties.childCollectionName && props.dataitem) {
|
|
4962
4413
|
childCollectionData = getNestedValue2(props.dataitem, dataBindingProperties.childCollectionName);
|
|
@@ -4968,7 +4419,7 @@ var DivContainer = async (props) => {
|
|
|
4968
4419
|
}
|
|
4969
4420
|
const SelectedNode = NodeTypes2[node.type];
|
|
4970
4421
|
if (!SelectedNode) return null;
|
|
4971
|
-
return /* @__PURE__ */
|
|
4422
|
+
return /* @__PURE__ */ jsx59(React41.Fragment, { children: /* @__PURE__ */ jsx59(
|
|
4972
4423
|
SelectedNode,
|
|
4973
4424
|
{
|
|
4974
4425
|
node,
|
|
@@ -5068,9 +4519,9 @@ var DivContainer = async (props) => {
|
|
|
5068
4519
|
props.node.autoFormat && "auto-format",
|
|
5069
4520
|
props.node.bgClass
|
|
5070
4521
|
].filter(Boolean).join(" ");
|
|
5071
|
-
return /* @__PURE__ */
|
|
5072
|
-
/* @__PURE__ */
|
|
5073
|
-
/* @__PURE__ */
|
|
4522
|
+
return /* @__PURE__ */ jsxs33(React41.Fragment, { children: [
|
|
4523
|
+
/* @__PURE__ */ jsx59("style", { dangerouslySetInnerHTML: { __html: cssResult.css + animationCSS } }),
|
|
4524
|
+
/* @__PURE__ */ jsx59(React41.Fragment, { children: /* @__PURE__ */ jsx59(
|
|
5074
4525
|
Wrapper,
|
|
5075
4526
|
{
|
|
5076
4527
|
id: guid,
|
|
@@ -5079,18 +4530,18 @@ var DivContainer = async (props) => {
|
|
|
5079
4530
|
...wrapperProps,
|
|
5080
4531
|
children: dataToRender.map(
|
|
5081
4532
|
(item, idx) => item?.links?.view && renderLink ? renderChildren(props.node.children, props, item, idx, props.href ? void 0 : item?.links?.view)?.map(
|
|
5082
|
-
(child, i) => /* @__PURE__ */
|
|
4533
|
+
(child, i) => /* @__PURE__ */ jsx59(React41.Fragment, { children: child }, i)
|
|
5083
4534
|
) : renderChildren(props.node.children, props, item, idx)
|
|
5084
4535
|
)
|
|
5085
4536
|
}
|
|
5086
4537
|
) }),
|
|
5087
|
-
dataBindingProperties && props.node.dataBinding.enablePagination && /* @__PURE__ */
|
|
4538
|
+
dataBindingProperties && props.node.dataBinding.enablePagination && /* @__PURE__ */ jsx59("div", { children: /* @__PURE__ */ jsx59(Pagination_default, { path: props.path, query: props.query, dataset: response }) })
|
|
5088
4539
|
] });
|
|
5089
4540
|
};
|
|
5090
4541
|
var DivContainer_default = DivContainer;
|
|
5091
4542
|
|
|
5092
4543
|
// src/components/pageRenderingEngine/PageBodyRenderer.tsx
|
|
5093
|
-
import { jsx as
|
|
4544
|
+
import { jsx as jsx60 } from "react/jsx-runtime";
|
|
5094
4545
|
var NodeTypes = {
|
|
5095
4546
|
["paragraph"]: ParagraphNode_default,
|
|
5096
4547
|
["heading"]: HeadingNode_default,
|
|
@@ -5118,11 +4569,11 @@ var PageBodyRenderer = (props) => {
|
|
|
5118
4569
|
if (pageBodyTree && pageBodyTree.root) {
|
|
5119
4570
|
rootNode = pageBodyTree.root;
|
|
5120
4571
|
}
|
|
5121
|
-
return /* @__PURE__ */
|
|
4572
|
+
return /* @__PURE__ */ jsx60(React42.Fragment, { children: rootNode && rootNode?.children?.map((node, index) => {
|
|
5122
4573
|
{
|
|
5123
4574
|
}
|
|
5124
4575
|
const SelectedNode = NodeTypes[node.type];
|
|
5125
|
-
return /* @__PURE__ */
|
|
4576
|
+
return /* @__PURE__ */ jsx60(React42.Fragment, { children: SelectedNode && /* @__PURE__ */ jsx60(React42.Fragment, { children: node.type == "layout-container" ? /* @__PURE__ */ jsx60(React42.Fragment, { children: /* @__PURE__ */ jsx60(
|
|
5126
4577
|
SelectedNode,
|
|
5127
4578
|
{
|
|
5128
4579
|
node,
|
|
@@ -5137,7 +4588,7 @@ var PageBodyRenderer = (props) => {
|
|
|
5137
4588
|
assetBaseUrl: props.assetBaseUrl,
|
|
5138
4589
|
device: props.device
|
|
5139
4590
|
}
|
|
5140
|
-
) }) : /* @__PURE__ */
|
|
4591
|
+
) }) : /* @__PURE__ */ jsx60(React42.Fragment, { children: /* @__PURE__ */ jsx60(
|
|
5141
4592
|
SelectedNode,
|
|
5142
4593
|
{
|
|
5143
4594
|
node,
|