@clyrex-digital/clyrex-controls-dev 0.8.1-dev.20260831113446 → 0.8.1-dev.20260901043813

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/server.js CHANGED
@@ -2509,7 +2509,7 @@ var init_CommentFileNode = __esm({
2509
2509
  });
2510
2510
 
2511
2511
  // src/components/controls/view/CommentNodeRenderer.tsx
2512
- var import_react24, import_jsx_runtime36, TextLeafNode, renderChildren, headingLevelFromTag, CommentNodeRenderer, CommentNodeRenderer_default;
2512
+ var import_react24, import_jsx_runtime36, LINK_STYLE, URL_PATTERN, linkifyText, TextLeafNode, renderChildren, headingLevelFromTag, CommentNodeRenderer, CommentNodeRenderer_default;
2513
2513
  var init_CommentNodeRenderer = __esm({
2514
2514
  "src/components/controls/view/CommentNodeRenderer.tsx"() {
2515
2515
  "use strict";
@@ -2518,8 +2518,42 @@ var init_CommentNodeRenderer = __esm({
2518
2518
  init_CommentImageNode();
2519
2519
  init_CommentFileNode();
2520
2520
  import_jsx_runtime36 = require("react/jsx-runtime");
2521
+ LINK_STYLE = { textDecoration: "underline", wordBreak: "break-word" };
2522
+ URL_PATTERN = /(https?:\/\/[^\s<>"']+|www\.[^\s<>"']+)/gi;
2523
+ linkifyText = (text, keyPrefix) => {
2524
+ const parts = text.split(URL_PATTERN);
2525
+ if (parts.length === 1) {
2526
+ return text;
2527
+ }
2528
+ return parts.map((part, index) => {
2529
+ if (!part) {
2530
+ return null;
2531
+ }
2532
+ const isUrl = index % 2 === 1;
2533
+ if (!isUrl) {
2534
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_react24.default.Fragment, { children: part }, `${keyPrefix}-${index}`);
2535
+ }
2536
+ const trimmed = part.replace(/[.,;:!?)\]]+$/, "");
2537
+ const trailing = part.slice(trimmed.length);
2538
+ const href = trimmed.startsWith("www.") ? `https://${trimmed}` : trimmed;
2539
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_react24.default.Fragment, { children: [
2540
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
2541
+ "a",
2542
+ {
2543
+ href,
2544
+ target: "_blank",
2545
+ rel: "noopener noreferrer nofollow ugc",
2546
+ className: "comment-node-link bg-info-weak",
2547
+ style: LINK_STYLE,
2548
+ children: trimmed
2549
+ }
2550
+ ),
2551
+ trailing
2552
+ ] }, `${keyPrefix}-${index}`);
2553
+ });
2554
+ };
2521
2555
  TextLeafNode = ({ node }) => {
2522
- let content = node.text;
2556
+ let content = node.code ? node.text : linkifyText(node.text ?? "", node.id ?? "comment-text");
2523
2557
  if (node.code) content = /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("code", { className: "comment-node-code", children: content });
2524
2558
  if (node.bold) content = /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("strong", { children: content });
2525
2559
  if (node.italic) content = /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("em", { children: content });
@@ -2595,7 +2629,17 @@ var init_CommentNodeRenderer = __esm({
2595
2629
  return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(CommentFileNode_default, { node: element, assetBaseUrl });
2596
2630
  case "link": {
2597
2631
  const url = typeof element.url === "string" ? element.url : "#";
2598
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("a", { href: url, target: "_blank", rel: "noopener noreferrer", className: "comment-node-link", children: renderChildren(element.children, key, assetBaseUrl) });
2632
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
2633
+ "a",
2634
+ {
2635
+ href: url,
2636
+ target: "_blank",
2637
+ rel: "noopener noreferrer",
2638
+ className: "comment-node-link bg-info-weak",
2639
+ style: LINK_STYLE,
2640
+ children: renderChildren(element.children, key, assetBaseUrl)
2641
+ }
2642
+ );
2599
2643
  }
2600
2644
  case "mention": {
2601
2645
  const label = element.label ?? element.mentionName ?? element.text ?? "";
@@ -2961,7 +3005,6 @@ var init_InputControlType = __esm({
2961
3005
  moneyInput: "money",
2962
3006
  select: "select",
2963
3007
  percentageInput: "percentage",
2964
- asset: "asset",
2965
3008
  assetUpload: "assetUpload",
2966
3009
  phoneInput: "phone",
2967
3010
  numberInput: "numberInput",
@@ -2972,11 +3015,9 @@ var init_InputControlType = __esm({
2972
3015
  colorInput: "colorInput",
2973
3016
  selectWithSearchInput: "selectWithSearchInput",
2974
3017
  selectWithSearchPanel: "selectWithSearchPanel",
2975
- booleanSelect: "booleanSelect",
2976
3018
  switchInput: "switchInput",
2977
3019
  dateInput: "dateInput",
2978
3020
  radioInput: "radioInput",
2979
- switcher: "switcher",
2980
3021
  videoInput: "videoInput",
2981
3022
  referenceInput: "referenceInput"
2982
3023
  };
@@ -4660,106 +4701,13 @@ var init_SelectWithSearchPanel = __esm({
4660
4701
  }
4661
4702
  });
4662
4703
 
4663
- // src/components/controls/edit/BooleanSelect.tsx
4664
- var import_react51, import_jsx_runtime77, BooleanSelect, BooleanSelect_default;
4665
- var init_BooleanSelect = __esm({
4666
- "src/components/controls/edit/BooleanSelect.tsx"() {
4667
- "use strict";
4668
- import_react51 = __toESM(require("react"));
4669
- import_jsx_runtime77 = require("react/jsx-runtime");
4670
- BooleanSelect = (props) => {
4671
- const [list, setList] = (0, import_react51.useState)();
4672
- const textChangeHandler = (event) => {
4673
- const text = event.target.value;
4674
- const boolValue = text?.toLowerCase() === "true" || text === "1";
4675
- if (props.callback !== void 0) {
4676
- props.callback({
4677
- name: props.name,
4678
- value: boolValue,
4679
- index: props.index,
4680
- groupKey: props.groupKey
4681
- });
4682
- }
4683
- };
4684
- (0, import_react51.useEffect)(() => {
4685
- async function fetchData() {
4686
- console.log("in select");
4687
- if (props.dataset) {
4688
- setList(props.dataset);
4689
- } else if (props.dataSource && props.dataSource != "" && props.serviceClient) {
4690
- let dataSource = props.dataSource;
4691
- let response;
4692
- if (props.dataSourceDependsOn) {
4693
- if (props.dependentValue) {
4694
- dataSource = dataSource.replace(
4695
- `{${props.dataSourceDependsOn}}`,
4696
- props.dependentValue
4697
- );
4698
- response = await props.serviceClient.get(dataSource);
4699
- setList(response.result);
4700
- }
4701
- } else {
4702
- response = await props.serviceClient.get(dataSource);
4703
- setList(response.result);
4704
- }
4705
- }
4706
- }
4707
- fetchData();
4708
- }, [
4709
- props.dataSource,
4710
- props.dependentValue,
4711
- props.dataset,
4712
- props.dataSourceDependsOn
4713
- ]);
4714
- let value;
4715
- if (props.value !== void 0 && props.value !== null) {
4716
- value = props.value;
4717
- }
4718
- return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_react51.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("label", { className: "block", children: [
4719
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
4720
- " ",
4721
- props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("span", { className: "bg-error-weak", children: "*" }),
4722
- /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
4723
- "select",
4724
- {
4725
- name: props.name,
4726
- id: props.name,
4727
- value,
4728
- onChange: textChangeHandler,
4729
- required: props?.attributes?.required,
4730
- placeholder: props?.attributes?.placeholder,
4731
- disabled: props?.attributes?.readOnly,
4732
- className: "peer mt-1 py-1.5 block w-full text-black rounded shadow-sm\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n ",
4733
- children: [
4734
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("option", { className: "", value: "", children: props.attributes?.placeholder || "Select" }),
4735
- list && list.map((item, i) => {
4736
- return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
4737
- "option",
4738
- {
4739
- className: "fac-select-option",
4740
- value: item[props.dataKeyFieldName],
4741
- children: item[props.dataTextFieldName]
4742
- },
4743
- item[props.dataKeyFieldName]
4744
- );
4745
- })
4746
- ]
4747
- }
4748
- ),
4749
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
4750
- ] }) });
4751
- };
4752
- BooleanSelect_default = BooleanSelect;
4753
- }
4754
- });
4755
-
4756
4704
  // src/components/controls/edit/EmailInput.tsx
4757
- var import_react52, import_jsx_runtime78, EmailInput, EmailInput_default;
4705
+ var import_react51, import_jsx_runtime77, EmailInput, EmailInput_default;
4758
4706
  var init_EmailInput = __esm({
4759
4707
  "src/components/controls/edit/EmailInput.tsx"() {
4760
4708
  "use strict";
4761
- import_react52 = __toESM(require("react"));
4762
- import_jsx_runtime78 = require("react/jsx-runtime");
4709
+ import_react51 = __toESM(require("react"));
4710
+ import_jsx_runtime77 = require("react/jsx-runtime");
4763
4711
  EmailInput = (props) => {
4764
4712
  const textChangeHandler = (event) => {
4765
4713
  const text = event.target.value;
@@ -4784,11 +4732,11 @@ var init_EmailInput = __esm({
4784
4732
  if (props.value !== void 0 && props.value !== null) {
4785
4733
  value = props.value;
4786
4734
  }
4787
- return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_react52.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)("label", { className: "block mb-1", children: [
4788
- /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: "text-sm font-medium text-slate-700", children: props?.attributes?.label }),
4735
+ return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_react51.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("label", { className: "block mb-1", children: [
4736
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("span", { className: "text-sm font-medium text-slate-700", children: props?.attributes?.label }),
4789
4737
  " ",
4790
- props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: "bg-error-weak", children: "*" }),
4791
- /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
4738
+ props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("span", { className: "bg-error-weak", children: "*" }),
4739
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
4792
4740
  "input",
4793
4741
  {
4794
4742
  type: "email",
@@ -4804,7 +4752,7 @@ var init_EmailInput = __esm({
4804
4752
  className: "peer mt-1 py-1.5 block w-full rounded shadow-sm\n transition-all duration-500 ease-in-out"
4805
4753
  }
4806
4754
  ),
4807
- /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 mb-0 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
4755
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 mb-0 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
4808
4756
  ] }) });
4809
4757
  };
4810
4758
  EmailInput_default = EmailInput;
@@ -4812,13 +4760,13 @@ var init_EmailInput = __esm({
4812
4760
  });
4813
4761
 
4814
4762
  // src/components/controls/edit/TimeInput.tsx
4815
- var import_react53, import_jsx_runtime79, TimeInput, TimeInput_default;
4763
+ var import_react52, import_jsx_runtime78, TimeInput, TimeInput_default;
4816
4764
  var init_TimeInput = __esm({
4817
4765
  "src/components/controls/edit/TimeInput.tsx"() {
4818
4766
  "use strict";
4819
4767
  "use client";
4820
- import_react53 = __toESM(require("react"));
4821
- import_jsx_runtime79 = require("react/jsx-runtime");
4768
+ import_react52 = __toESM(require("react"));
4769
+ import_jsx_runtime78 = require("react/jsx-runtime");
4822
4770
  TimeInput = (props) => {
4823
4771
  const timeChangeHandler = (event) => {
4824
4772
  const timeValue = event.target.value;
@@ -4831,11 +4779,11 @@ var init_TimeInput = __esm({
4831
4779
  });
4832
4780
  }
4833
4781
  };
4834
- return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_react53.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("label", { className: "block mb-1", children: [
4835
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "text-sm font-medium", children: props?.attributes?.label }),
4782
+ return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_react52.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)("label", { className: "block mb-1", children: [
4783
+ /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: "text-sm font-medium", children: props?.attributes?.label }),
4836
4784
  " ",
4837
- props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "bg-error-weak", children: "*" }),
4838
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
4785
+ props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: "bg-error-weak", children: "*" }),
4786
+ /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
4839
4787
  "input",
4840
4788
  {
4841
4789
  type: "time",
@@ -4848,7 +4796,7 @@ var init_TimeInput = __esm({
4848
4796
  className: "peer mt-1 py-1.5 block w-full rounded shadow-sm\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none"
4849
4797
  }
4850
4798
  ) }),
4851
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ?? "" })
4799
+ /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ?? "" })
4852
4800
  ] }) });
4853
4801
  };
4854
4802
  TimeInput_default = TimeInput;
@@ -4856,18 +4804,18 @@ var init_TimeInput = __esm({
4856
4804
  });
4857
4805
 
4858
4806
  // src/components/controls/edit/AssetUpload.tsx
4859
- var import_react54, import_jsx_runtime80, AssetUpload, AssetUpload_default;
4807
+ var import_react53, import_jsx_runtime79, AssetUpload, AssetUpload_default;
4860
4808
  var init_AssetUpload = __esm({
4861
4809
  "src/components/controls/edit/AssetUpload.tsx"() {
4862
4810
  "use strict";
4863
4811
  "use client";
4864
- import_react54 = __toESM(require("react"));
4812
+ import_react53 = __toESM(require("react"));
4865
4813
  init_ClientButton();
4866
4814
  init_StyleTypes();
4867
4815
  init_AssetUtility();
4868
4816
  init_Hyperlink();
4869
4817
  init_Icon();
4870
- import_jsx_runtime80 = require("react/jsx-runtime");
4818
+ import_jsx_runtime79 = require("react/jsx-runtime");
4871
4819
  AssetUpload = (props) => {
4872
4820
  const isDisabled = props.attributes?.disable ?? false;
4873
4821
  let allValues = [];
@@ -4888,8 +4836,8 @@ var init_AssetUpload = __esm({
4888
4836
  }
4889
4837
  return "image";
4890
4838
  };
4891
- const [assetType, setAssetType] = import_react54.default.useState(getInitialTab);
4892
- (0, import_react54.useEffect)(() => {
4839
+ const [assetType, setAssetType] = import_react53.default.useState(getInitialTab);
4840
+ (0, import_react53.useEffect)(() => {
4893
4841
  setAssetType(getInitialTab());
4894
4842
  }, [props.value]);
4895
4843
  const assetUploadCallback = (newAsset) => {
@@ -4964,10 +4912,10 @@ var init_AssetUpload = __esm({
4964
4912
  }
4965
4913
  return false;
4966
4914
  };
4967
- return /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(import_react54.default.Fragment, { children: [
4968
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("label", { className: "block mb-1", children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("span", { className: "text-sm font-medium", children: props?.attributes?.label }) }),
4969
- /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { className: "flex gap-6 bg-neutral-100 rounded p-2", children: [
4970
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
4915
+ return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_react53.default.Fragment, { children: [
4916
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("label", { className: "block mb-1", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "text-sm font-medium", children: props?.attributes?.label }) }),
4917
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "flex gap-6 bg-neutral-100 rounded p-2", children: [
4918
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
4971
4919
  ClientButton_default,
4972
4920
  {
4973
4921
  className: assetType === "image" ? "px-2 py-1 rounded bg-body-200 scale-95" : "text-neutral-700",
@@ -4977,7 +4925,7 @@ var init_AssetUpload = __esm({
4977
4925
  children: "Image Upload"
4978
4926
  }
4979
4927
  ),
4980
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
4928
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
4981
4929
  ClientButton_default,
4982
4930
  {
4983
4931
  className: assetType === "video" ? "bg-body-200 px-2 py-1 rounded-md scale-95" : "text-neutral-700",
@@ -4988,13 +4936,13 @@ var init_AssetUpload = __esm({
4988
4936
  }
4989
4937
  )
4990
4938
  ] }),
4991
- shouldShowDetails() && /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { className: "relative mt-4 rounded-md p-4 border-2 border-dotted border-gray-300 bg-gray-50", children: [
4992
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("span", { className: "absolute -top-2.5 left-3 bg-primary-600 text-white text-xs px-2 py-0.5 rounded-full", children: getAssetType(allValues[0]) === "video" ? "Video" : "Image" }),
4993
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("div", { className: "flex flex-col gap-3", children: allValues.map((digitalAsset, index) => /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { className: "flex justify-between items-start gap-5", children: [
4994
- /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { className: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm w-full", children: [
4995
- /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { children: [
4996
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("p", { className: "text-gray-500", children: "Title" }),
4997
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
4939
+ shouldShowDetails() && /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "relative mt-4 rounded-md p-4 border-2 border-dotted border-gray-300 bg-gray-50", children: [
4940
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "absolute -top-2.5 left-3 bg-primary-600 text-white text-xs px-2 py-0.5 rounded-full", children: getAssetType(allValues[0]) === "video" ? "Video" : "Image" }),
4941
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "flex flex-col gap-3", children: allValues.map((digitalAsset, index) => /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "flex justify-between items-start gap-5", children: [
4942
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm w-full", children: [
4943
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { children: [
4944
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("p", { className: "text-gray-500", children: "Title" }),
4945
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
4998
4946
  "input",
4999
4947
  {
5000
4948
  type: "text",
@@ -5006,18 +4954,18 @@ var init_AssetUpload = __esm({
5006
4954
  }
5007
4955
  )
5008
4956
  ] }),
5009
- digitalAsset.intrinsicWidth && digitalAsset.intrinsicHeight && /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { children: [
5010
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("p", { className: "text-gray-500", children: "Resolution" }),
5011
- /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("p", { className: "font-medium text-gray-900 mt-3", children: [
4957
+ digitalAsset.intrinsicWidth && digitalAsset.intrinsicHeight && /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { children: [
4958
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("p", { className: "text-gray-500", children: "Resolution" }),
4959
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("p", { className: "font-medium text-gray-900 mt-3", children: [
5012
4960
  digitalAsset.intrinsicWidth,
5013
4961
  "\xD7",
5014
4962
  digitalAsset.intrinsicHeight
5015
4963
  ] })
5016
4964
  ] }),
5017
- (digitalAsset.assetUrl || digitalAsset.posterUrl) && /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { children: [
5018
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("p", { className: "text-gray-500", children: "Image / Poster" }),
5019
- /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { className: "flex-shrink-0 flex flex-col gap-3 mt-1", children: [
5020
- getAssetType(digitalAsset) === "video" && digitalAsset.posterUrl && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
4965
+ (digitalAsset.assetUrl || digitalAsset.posterUrl) && /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { children: [
4966
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("p", { className: "text-gray-500", children: "Image / Poster" }),
4967
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "flex-shrink-0 flex flex-col gap-3 mt-1", children: [
4968
+ getAssetType(digitalAsset) === "video" && digitalAsset.posterUrl && /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
5021
4969
  "img",
5022
4970
  {
5023
4971
  src: AssetUtility_default.resolveUrl(props.serviceClient?.baseUrl, digitalAsset.posterUrl),
@@ -5025,7 +4973,7 @@ var init_AssetUpload = __esm({
5025
4973
  className: "w-32 h-auto object-cover rounded border p-1"
5026
4974
  }
5027
4975
  ),
5028
- getAssetType(digitalAsset) === "image" && digitalAsset.assetUrl && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
4976
+ getAssetType(digitalAsset) === "image" && digitalAsset.assetUrl && /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
5029
4977
  "img",
5030
4978
  {
5031
4979
  src: AssetUtility_default.resolveUrl(props.serviceClient?.baseUrl, digitalAsset.assetUrl),
@@ -5035,9 +4983,9 @@ var init_AssetUpload = __esm({
5035
4983
  )
5036
4984
  ] })
5037
4985
  ] }),
5038
- digitalAsset.assetUrl?.endsWith(".m3u8") && /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { className: "col-span-2", children: [
5039
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("p", { className: "text-gray-500", children: "HLS Link" }),
5040
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
4986
+ digitalAsset.assetUrl?.endsWith(".m3u8") && /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "col-span-2", children: [
4987
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("p", { className: "text-gray-500", children: "HLS Link" }),
4988
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
5041
4989
  Hyperlink,
5042
4990
  {
5043
4991
  href: digitalAsset.assetUrl,
@@ -5048,12 +4996,12 @@ var init_AssetUpload = __esm({
5048
4996
  )
5049
4997
  ] })
5050
4998
  ] }),
5051
- /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
4999
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
5052
5000
  "span",
5053
5001
  {
5054
5002
  onClick: () => !isDisabled && deleteFile(index),
5055
5003
  className: isDisabled ? "cursor-not-allowed opacity-50" : "cursor-pointer",
5056
- children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(Icon_default, { className: "w-4 h-4 text-primary", name: "delete" })
5004
+ children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(Icon_default, { className: "w-4 h-4 text-primary", name: "delete" })
5057
5005
  }
5058
5006
  )
5059
5007
  ] }, index)) })
@@ -5065,12 +5013,12 @@ var init_AssetUpload = __esm({
5065
5013
  });
5066
5014
 
5067
5015
  // src/components/controls/edit/SwitchInput.tsx
5068
- var import_react55, import_jsx_runtime81, SwitchInput, SwitchInput_default;
5016
+ var import_react54, import_jsx_runtime80, SwitchInput, SwitchInput_default;
5069
5017
  var init_SwitchInput = __esm({
5070
5018
  "src/components/controls/edit/SwitchInput.tsx"() {
5071
5019
  "use strict";
5072
- import_react55 = __toESM(require("react"));
5073
- import_jsx_runtime81 = require("react/jsx-runtime");
5020
+ import_react54 = __toESM(require("react"));
5021
+ import_jsx_runtime80 = require("react/jsx-runtime");
5074
5022
  SwitchInput = (props) => {
5075
5023
  const textChangeHandler = (event) => {
5076
5024
  let text = event.target.checked;
@@ -5087,28 +5035,28 @@ var init_SwitchInput = __esm({
5087
5035
  if (props.value != void 0 && props.value != null && props.value != "" && (props.value == "true" || props.value.toString() == "true")) {
5088
5036
  value = true;
5089
5037
  }
5090
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_react55.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "flex items-start justify-between gap-4 py-3", children: [
5091
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "min-w-0", children: [
5092
- props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(
5038
+ return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_react54.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { className: "flex items-start justify-between gap-4 py-3", children: [
5039
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { className: "min-w-0", children: [
5040
+ props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(
5093
5041
  "label",
5094
5042
  {
5095
5043
  htmlFor: props.name,
5096
5044
  className: "inline-block text-sm font-semibold text-slate-800",
5097
5045
  children: [
5098
5046
  props.attributes.label,
5099
- props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("span", { className: "bg-error-weak", children: "*" })
5047
+ props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("span", { className: "bg-error-weak", children: "*" })
5100
5048
  ]
5101
5049
  }
5102
5050
  ),
5103
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage || "" })
5051
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage || "" })
5104
5052
  ] }),
5105
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(
5053
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(
5106
5054
  "label",
5107
5055
  {
5108
5056
  htmlFor: props.name,
5109
5057
  className: "relative inline-flex shrink-0 cursor-pointer items-center peer-disabled:cursor-not-allowed",
5110
5058
  children: [
5111
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
5059
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
5112
5060
  "input",
5113
5061
  {
5114
5062
  type: "checkbox",
@@ -5121,13 +5069,13 @@ var init_SwitchInput = __esm({
5121
5069
  className: "peer sr-only"
5122
5070
  }
5123
5071
  ),
5124
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
5072
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
5125
5073
  "div",
5126
5074
  {
5127
5075
  className: "h-6 w-11 rounded-full bg-slate-200 shadow-inner\n transition-colors duration-200 ease-in-out\n peer-checked:bg-blue-600\n peer-focus-visible:ring-2 peer-focus-visible:ring-blue-300 peer-focus-visible:ring-offset-2\n peer-disabled:bg-slate-100"
5128
5076
  }
5129
5077
  ),
5130
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
5078
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
5131
5079
  "div",
5132
5080
  {
5133
5081
  className: "absolute left-0.5 top-0.5 h-5 w-5 rounded-full bg-default shadow\n transition-transform duration-200 ease-in-out\n peer-checked:translate-x-5\n peer-disabled:bg-slate-50"
@@ -5225,15 +5173,15 @@ var init_DateTimeUtility = __esm({
5225
5173
  });
5226
5174
 
5227
5175
  // src/components/controls/edit/DateInput.tsx
5228
- var import_react56, import_jsx_runtime82, DateInput, DateInput_default;
5176
+ var import_react55, import_jsx_runtime81, DateInput, DateInput_default;
5229
5177
  var init_DateInput = __esm({
5230
5178
  "src/components/controls/edit/DateInput.tsx"() {
5231
5179
  "use strict";
5232
- import_react56 = require("react");
5180
+ import_react55 = require("react");
5233
5181
  init_DateTimeUtility();
5234
- import_jsx_runtime82 = require("react/jsx-runtime");
5182
+ import_jsx_runtime81 = require("react/jsx-runtime");
5235
5183
  DateInput = (props) => {
5236
- const value = (0, import_react56.useMemo)(() => {
5184
+ const value = (0, import_react55.useMemo)(() => {
5237
5185
  if (props.value === void 0 || props.value === null || props.value === "") {
5238
5186
  return "";
5239
5187
  }
@@ -5265,11 +5213,11 @@ var init_DateInput = __esm({
5265
5213
  groupKey: props.groupKey
5266
5214
  });
5267
5215
  };
5268
- return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("label", { className: "block mb-1", children: [
5269
- props.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("span", { className: "text-sm font-medium", children: props.attributes.label }),
5216
+ return /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("label", { className: "block mb-1", children: [
5217
+ props.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("span", { className: "text-sm font-medium", children: props.attributes.label }),
5270
5218
  " ",
5271
- props.attributes?.label && props.attributes.required && /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("span", { className: "bg-error-weak", children: "*" }),
5272
- /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
5219
+ props.attributes?.label && props.attributes.required && /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("span", { className: "bg-error-weak", children: "*" }),
5220
+ /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
5273
5221
  "input",
5274
5222
  {
5275
5223
  type: "date",
@@ -5283,7 +5231,7 @@ var init_DateInput = __esm({
5283
5231
  className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm ${props.inputClasses ?? ""}`
5284
5232
  }
5285
5233
  ),
5286
- /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props.attributes?.errorMessage ?? "" })
5234
+ /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props.attributes?.errorMessage ?? "" })
5287
5235
  ] });
5288
5236
  };
5289
5237
  DateInput_default = DateInput;
@@ -5291,16 +5239,16 @@ var init_DateInput = __esm({
5291
5239
  });
5292
5240
 
5293
5241
  // src/components/controls/edit/RadioInput.tsx
5294
- var import_react57, import_jsx_runtime83, RadioInput, RadioInput_default;
5242
+ var import_react56, import_jsx_runtime82, RadioInput, RadioInput_default;
5295
5243
  var init_RadioInput = __esm({
5296
5244
  "src/components/controls/edit/RadioInput.tsx"() {
5297
5245
  "use strict";
5298
- import_react57 = require("react");
5246
+ import_react56 = require("react");
5299
5247
  init_Icon();
5300
- import_jsx_runtime83 = require("react/jsx-runtime");
5248
+ import_jsx_runtime82 = require("react/jsx-runtime");
5301
5249
  RadioInput = (props) => {
5302
- const [list, setList] = (0, import_react57.useState)([]);
5303
- (0, import_react57.useEffect)(() => {
5250
+ const [list, setList] = (0, import_react56.useState)([]);
5251
+ (0, import_react56.useEffect)(() => {
5304
5252
  async function loadData() {
5305
5253
  if (props.dataset) {
5306
5254
  setList(props.dataset);
@@ -5342,22 +5290,22 @@ var init_RadioInput = __esm({
5342
5290
  });
5343
5291
  }
5344
5292
  };
5345
- return /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "block", children: [
5346
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: "text-sm font-medium", children: props.attributes?.label }),
5347
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("div", { className: "flex flex-col gap-3", children: list.map((item, index) => {
5293
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "block", children: [
5294
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("span", { className: "text-sm font-medium", children: props.attributes?.label }),
5295
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { className: "flex flex-col gap-3", children: list.map((item, index) => {
5348
5296
  const itemValue = item[props.dataKeyFieldName];
5349
5297
  const isSelected = String(itemValue) === String(props.value ?? "");
5350
5298
  const isRecommended = props.dataRecommendedValue !== void 0 && String(itemValue) === String(props.dataRecommendedValue);
5351
5299
  const resultClassName = isSelected ? isRecommended ? "bg-success" : props.dataRecommendedValue ? "bg-alert" : "border-transparent" : "border-transparent";
5352
5300
  const iconName = isSelected && props.dataRecommendedValue ? isRecommended ? "checkCircle" : "xCircle" : void 0;
5353
5301
  const inputId = `${props.name}-${props.index ?? 0}-id-${index}`;
5354
- return /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)(
5302
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(
5355
5303
  "div",
5356
5304
  {
5357
5305
  className: `font-normal flex items-center justify-between gap-4 cursor-pointer border rounded p-2 ${resultClassName}`,
5358
5306
  children: [
5359
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "flex gap-4 items-start", children: [
5360
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
5307
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "flex gap-4 items-start", children: [
5308
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
5361
5309
  "input",
5362
5310
  {
5363
5311
  type: "radio",
@@ -5371,125 +5319,30 @@ var init_RadioInput = __esm({
5371
5319
  required: props.attributes?.required
5372
5320
  }
5373
5321
  ),
5374
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("label", { className: "text-body-950 pr-2", htmlFor: inputId, children: item[props.dataTextFieldName] })
5322
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("label", { className: "text-body-950 pr-2", htmlFor: inputId, children: item[props.dataTextFieldName] })
5375
5323
  ] }),
5376
- iconName && /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(Icon_default, { className: "w-5 h-5 text-success", name: iconName })
5324
+ iconName && /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(Icon_default, { className: "w-5 h-5 text-success", name: iconName })
5377
5325
  ]
5378
5326
  },
5379
5327
  String(itemValue)
5380
5328
  );
5381
5329
  }) }),
5382
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props.attributes?.errorMessage ?? "" })
5330
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props.attributes?.errorMessage ?? "" })
5383
5331
  ] });
5384
5332
  };
5385
5333
  RadioInput_default = RadioInput;
5386
5334
  }
5387
5335
  });
5388
5336
 
5389
- // src/components/controls/edit/Switcher.tsx
5390
- var import_react58, import_jsx_runtime84, Switcher, Switcher_default;
5391
- var init_Switcher = __esm({
5392
- "src/components/controls/edit/Switcher.tsx"() {
5393
- "use strict";
5394
- import_react58 = require("react");
5395
- import_jsx_runtime84 = require("react/jsx-runtime");
5396
- Switcher = (props) => {
5397
- const [list, setList] = (0, import_react58.useState)([]);
5398
- (0, import_react58.useEffect)(() => {
5399
- async function loadData() {
5400
- if (props.dataset) {
5401
- setList(props.dataset);
5402
- return;
5403
- }
5404
- if (!props.dataSource || !props.serviceClient) {
5405
- setList([]);
5406
- return;
5407
- }
5408
- let dataSource = props.dataSource;
5409
- if (props.dataSourceDependsOn) {
5410
- if (!props.dependentValue) {
5411
- setList([]);
5412
- return;
5413
- }
5414
- dataSource = dataSource.replace(
5415
- `{${props.dataSourceDependsOn}}`,
5416
- props.dependentValue
5417
- );
5418
- }
5419
- const response = await props.serviceClient.get(dataSource);
5420
- setList(response.result ?? []);
5421
- }
5422
- loadData();
5423
- }, [
5424
- props.dataSource,
5425
- props.dataSourceDependsOn,
5426
- props.dataset,
5427
- props.dependentValue,
5428
- props.serviceClient
5429
- ]);
5430
- const changeHandler = (event) => {
5431
- props.callback?.({
5432
- name: props.name,
5433
- value: event.target.value,
5434
- index: props.index,
5435
- groupKey: props.groupKey
5436
- });
5437
- };
5438
- const value = props.value === void 0 || props.value === null ? "" : String(props.value);
5439
- return /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("label", { className: "block mb-1", children: [
5440
- /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("span", { className: "text-sm font-medium", children: props.attributes?.label }),
5441
- list.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(
5442
- "input",
5443
- {
5444
- type: "text",
5445
- name: props.name,
5446
- id: props.name,
5447
- value,
5448
- onChange: changeHandler,
5449
- required: props.attributes?.required,
5450
- placeholder: props.attributes?.placeholder,
5451
- disabled: props.attributes?.readOnly,
5452
- className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm ${props.inputClasses ?? ""}`
5453
- }
5454
- ) : /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(
5455
- "select",
5456
- {
5457
- name: props.name,
5458
- id: props.name,
5459
- value,
5460
- onChange: changeHandler,
5461
- required: props.attributes?.required,
5462
- disabled: props.attributes?.readOnly,
5463
- className: `peer select my-1 py-1 block w-full rounded shadow-sm ${props.inputClasses ?? ""}`,
5464
- children: [
5465
- /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("option", { value: "", children: props.attributes?.placeholder || "Select" }),
5466
- list.map((item) => /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(
5467
- "option",
5468
- {
5469
- value: item[props.dataKeyFieldName],
5470
- children: item[props.dataTextFieldName]
5471
- },
5472
- String(item[props.dataKeyFieldName])
5473
- ))
5474
- ]
5475
- }
5476
- ),
5477
- /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props.attributes?.errorMessage ?? "" })
5478
- ] });
5479
- };
5480
- Switcher_default = Switcher;
5481
- }
5482
- });
5483
-
5484
5337
  // src/components/controls/edit/ReferenceInput.tsx
5485
- var import_jsx_runtime85, ReferenceInput, ReferenceInput_default;
5338
+ var import_jsx_runtime83, ReferenceInput, ReferenceInput_default;
5486
5339
  var init_ReferenceInput = __esm({
5487
5340
  "src/components/controls/edit/ReferenceInput.tsx"() {
5488
5341
  "use strict";
5489
5342
  init_SelectWithSearchInput();
5490
- import_jsx_runtime85 = require("react/jsx-runtime");
5343
+ import_jsx_runtime83 = require("react/jsx-runtime");
5491
5344
  ReferenceInput = (props) => {
5492
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(SelectWithSearchInput_default, { ...props });
5345
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(SelectWithSearchInput_default, { ...props });
5493
5346
  };
5494
5347
  ReferenceInput_default = ReferenceInput;
5495
5348
  }
@@ -5500,12 +5353,12 @@ var InputControlClient_exports = {};
5500
5353
  __export(InputControlClient_exports, {
5501
5354
  default: () => InputControlClient_default
5502
5355
  });
5503
- var import_react59, import_jsx_runtime86, InputControl, InputControlClient_default;
5356
+ var import_react57, import_jsx_runtime84, InputControl, InputControlClient_default;
5504
5357
  var init_InputControlClient = __esm({
5505
5358
  "src/components/controls/edit/InputControlClient.tsx"() {
5506
5359
  "use strict";
5507
5360
  "use client";
5508
- import_react59 = __toESM(require("react"));
5361
+ import_react57 = __toESM(require("react"));
5509
5362
  init_MultilineTextInput();
5510
5363
  init_LineTextInput();
5511
5364
  init_MoneyInput();
@@ -5520,17 +5373,15 @@ var init_InputControlClient = __esm({
5520
5373
  init_ColorInput();
5521
5374
  init_SelectWithSearchInput();
5522
5375
  init_SelectWithSearchPanel();
5523
- init_BooleanSelect();
5524
5376
  init_EmailInput();
5525
5377
  init_TimeInput();
5526
5378
  init_AssetUpload();
5527
5379
  init_SwitchInput();
5528
5380
  init_DateInput();
5529
5381
  init_RadioInput();
5530
- init_Switcher();
5531
5382
  init_ReferenceInput();
5532
- import_jsx_runtime86 = require("react/jsx-runtime");
5533
- InputControl = import_react59.default.forwardRef(
5383
+ import_jsx_runtime84 = require("react/jsx-runtime");
5384
+ InputControl = import_react57.default.forwardRef(
5534
5385
  (props, ref) => {
5535
5386
  const ControlComponents = {
5536
5387
  [InputControlType_default.lineTextInput]: LineTextInput_default,
@@ -5547,18 +5398,15 @@ var init_InputControlClient = __esm({
5547
5398
  [InputControlType_default.colorInput]: ColorInput_default,
5548
5399
  [InputControlType_default.selectWithSearchInput]: SelectWithSearchInput_default,
5549
5400
  [InputControlType_default.selectWithSearchPanel]: SelectWithSearchPanel_default,
5550
- [InputControlType_default.booleanSelect]: BooleanSelect_default,
5551
5401
  [InputControlType_default.timeInput]: TimeInput_default,
5552
- [InputControlType_default.asset]: AssetUpload_default,
5553
5402
  [InputControlType_default.assetUpload]: AssetUpload_default,
5554
5403
  [InputControlType_default.switchInput]: SwitchInput_default,
5555
5404
  [InputControlType_default.dateInput]: DateInput_default,
5556
5405
  [InputControlType_default.radioInput]: RadioInput_default,
5557
- [InputControlType_default.switcher]: Switcher_default,
5558
5406
  [InputControlType_default.referenceInput]: ReferenceInput_default
5559
5407
  };
5560
5408
  const SelectedControlComponent = ControlComponents[props.controlType];
5561
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_react59.default.Fragment, { children: SelectedControlComponent ? /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(SelectedControlComponent, { ...props }) : "Control not found:" + props.controlType });
5409
+ return /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_react57.default.Fragment, { children: SelectedControlComponent ? /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(SelectedControlComponent, { ...props }) : "Control not found:" + props.controlType });
5562
5410
  }
5563
5411
  );
5564
5412
  InputControl.displayName = "InputControl";
@@ -5584,16 +5432,16 @@ var DataBindingControls_exports = {};
5584
5432
  __export(DataBindingControls_exports, {
5585
5433
  default: () => DataBindingControls_default
5586
5434
  });
5587
- var import_react60, import_navigation, import_jsx_runtime87, humanize, escapeODataString, parseFacetSelections, buildFacetFilter, parseODataSearch, normalizeSortOption, DUMMY_FACETS, DUMMY_SORT_OPTIONS, DataBindingControls, DataBindingControls_default;
5435
+ var import_react58, import_navigation, import_jsx_runtime85, humanize, escapeODataString, parseFacetSelections, buildFacetFilter, parseODataSearch, normalizeSortOption, DUMMY_FACETS, DUMMY_SORT_OPTIONS, DataBindingControls, DataBindingControls_default;
5588
5436
  var init_DataBindingControls = __esm({
5589
5437
  "src/components/pageRenderingEngine/nodes/DataBindingControls.tsx"() {
5590
5438
  "use strict";
5591
5439
  "use client";
5592
- import_react60 = require("react");
5440
+ import_react58 = require("react");
5593
5441
  import_navigation = require("next/navigation");
5594
5442
  init_InputControl();
5595
5443
  init_InputControlType();
5596
- import_jsx_runtime87 = require("react/jsx-runtime");
5444
+ import_jsx_runtime85 = require("react/jsx-runtime");
5597
5445
  humanize = (value) => value.replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/[_-]+/g, " ").trim();
5598
5446
  escapeODataString = (value) => value.replace(/'/g, "''");
5599
5447
  parseFacetSelections = (filter) => {
@@ -5670,12 +5518,12 @@ var init_DataBindingControls = __esm({
5670
5518
  const selectedFacetValues = parseFacetSelections(currentFilter);
5671
5519
  const currentSort = query?.["$orderby"] ?? query?.orderBy ?? "";
5672
5520
  const currentSearch = parseODataSearch(query?.["$search"]);
5673
- const [searchText, setSearchText] = (0, import_react60.useState)(currentSearch);
5674
- const lastNavigationUrl = (0, import_react60.useRef)(null);
5675
- (0, import_react60.useEffect)(() => {
5521
+ const [searchText, setSearchText] = (0, import_react58.useState)(currentSearch);
5522
+ const lastNavigationUrl = (0, import_react58.useRef)(null);
5523
+ (0, import_react58.useEffect)(() => {
5676
5524
  setSearchText(currentSearch);
5677
5525
  }, [currentSearch]);
5678
- const getQueryUrl = (0, import_react60.useCallback)(
5526
+ const getQueryUrl = (0, import_react58.useCallback)(
5679
5527
  (updates) => {
5680
5528
  const params = new URLSearchParams(query ?? {});
5681
5529
  Object.entries(updates).forEach(([key, value]) => {
@@ -5705,7 +5553,7 @@ var init_DataBindingControls = __esm({
5705
5553
  filter: void 0
5706
5554
  });
5707
5555
  };
5708
- const navigateWithoutReload = (0, import_react60.useCallback)(
5556
+ const navigateWithoutReload = (0, import_react58.useCallback)(
5709
5557
  (url) => {
5710
5558
  if (lastNavigationUrl.current === url) {
5711
5559
  return;
@@ -5721,7 +5569,7 @@ var init_DataBindingControls = __esm({
5721
5569
  },
5722
5570
  [router]
5723
5571
  );
5724
- (0, import_react60.useEffect)(() => {
5572
+ (0, import_react58.useEffect)(() => {
5725
5573
  const trimmedSearchText = searchText.trim();
5726
5574
  if (trimmedSearchText === currentSearch.trim()) {
5727
5575
  return;
@@ -5742,8 +5590,8 @@ var init_DataBindingControls = __esm({
5742
5590
  if (!shouldShowToolbar && !shouldShowFacets) {
5743
5591
  return null;
5744
5592
  }
5745
- const renderFacetLinks = (field, values, stacked = false) => /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)("div", { className: stacked ? "flex flex-col gap-1" : "flex flex-wrap gap-2", children: [
5746
- /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
5593
+ const renderFacetLinks = (field, values, stacked = false) => /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: stacked ? "flex flex-col gap-1" : "flex flex-wrap gap-2", children: [
5594
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
5747
5595
  "button",
5748
5596
  {
5749
5597
  type: "button",
@@ -5755,7 +5603,7 @@ var init_DataBindingControls = __esm({
5755
5603
  ),
5756
5604
  values.map((facet) => {
5757
5605
  const isSelected = selectedFacetValues.get(field) === facet.value;
5758
- return /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(
5606
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(
5759
5607
  "button",
5760
5608
  {
5761
5609
  type: "button",
@@ -5773,9 +5621,9 @@ var init_DataBindingControls = __esm({
5773
5621
  );
5774
5622
  })
5775
5623
  ] });
5776
- return /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)("div", { className: mode === "toolbar" ? "mb-6" : "flex flex-col gap-2", children: [
5777
- shouldShowToolbar && /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)("div", { className: "flex flex-col gap-3 md:flex-row md:items-center md:justify-between", children: [
5778
- showSearchBar && /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
5624
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: mode === "toolbar" ? "mb-6" : "flex flex-col gap-2", children: [
5625
+ shouldShowToolbar && /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: "flex flex-col gap-3 md:flex-row md:items-center md:justify-between", children: [
5626
+ showSearchBar && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
5779
5627
  InputControl_default,
5780
5628
  {
5781
5629
  name: "searchText",
@@ -5786,9 +5634,9 @@ var init_DataBindingControls = __esm({
5786
5634
  inputClasses: "!mt-0"
5787
5635
  }
5788
5636
  ) }),
5789
- hasSortControls && /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)("div", { className: "flex items-center gap-2 text-sm", children: [
5790
- /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("span", { className: "font-medium", children: "Sort by" }),
5791
- /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
5637
+ hasSortControls && /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: "flex items-center gap-2 text-sm", children: [
5638
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("span", { className: "font-medium", children: "Sort by" }),
5639
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
5792
5640
  InputControl_default,
5793
5641
  {
5794
5642
  name: "sortOptions",
@@ -5809,10 +5657,10 @@ var init_DataBindingControls = __esm({
5809
5657
  )
5810
5658
  ] })
5811
5659
  ] }),
5812
- shouldShowFacets && facetGroups.length === 1 && /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("nav", { "aria-label": `${humanize(facetGroups[0][0])} filters`, children: renderFacetLinks(facetGroups[0][0], facetGroups[0][1]) }),
5813
- shouldShowFacets && facetGroups.length > 1 && /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("div", { className: "flex flex-col gap-2", children: facetGroups.map(([field, values]) => /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)("details", { className: "border-b", open: true, children: [
5814
- /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("summary", { className: "cursor-pointer font-semibold", children: humanize(field) }),
5815
- /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("div", { className: "p-2", children: renderFacetLinks(field, values, true) })
5660
+ shouldShowFacets && facetGroups.length === 1 && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("nav", { "aria-label": `${humanize(facetGroups[0][0])} filters`, children: renderFacetLinks(facetGroups[0][0], facetGroups[0][1]) }),
5661
+ shouldShowFacets && facetGroups.length > 1 && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: "flex flex-col gap-2", children: facetGroups.map(([field, values]) => /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("details", { className: "border-b", open: true, children: [
5662
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("summary", { className: "cursor-pointer font-semibold", children: humanize(field) }),
5663
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: "p-2", children: renderFacetLinks(field, values, true) })
5816
5664
  ] }, field)) })
5817
5665
  ] });
5818
5666
  };
@@ -5825,13 +5673,13 @@ var Slider_exports = {};
5825
5673
  __export(Slider_exports, {
5826
5674
  default: () => Slider_default
5827
5675
  });
5828
- var import_react61, import_jsx_runtime88, Slider, ArrowButton, ProgressPill, Slider_default;
5676
+ var import_react59, import_jsx_runtime86, Slider, ArrowButton, ProgressPill, Slider_default;
5829
5677
  var init_Slider = __esm({
5830
5678
  "src/components/Slider.tsx"() {
5831
5679
  "use strict";
5832
5680
  "use client";
5833
- import_react61 = __toESM(require("react"));
5834
- import_jsx_runtime88 = require("react/jsx-runtime");
5681
+ import_react59 = __toESM(require("react"));
5682
+ import_jsx_runtime86 = require("react/jsx-runtime");
5835
5683
  Slider = ({
5836
5684
  children,
5837
5685
  slidesToShow = 4,
@@ -5849,13 +5697,13 @@ var init_Slider = __esm({
5849
5697
  pillStyle = "cumulative",
5850
5698
  progressPosition = "bottom"
5851
5699
  }) => {
5852
- const [currentSlide, setCurrentSlide] = (0, import_react61.useState)(0);
5853
- const [transition, setTransition] = (0, import_react61.useState)(true);
5854
- const [slidesToShowState, setSlidesToShowState] = (0, import_react61.useState)(
5700
+ const [currentSlide, setCurrentSlide] = (0, import_react59.useState)(0);
5701
+ const [transition, setTransition] = (0, import_react59.useState)(true);
5702
+ const [slidesToShowState, setSlidesToShowState] = (0, import_react59.useState)(
5855
5703
  typeof slidesToShow === "number" ? slidesToShow : slidesToShow.large
5856
5704
  );
5857
- const [isPlaying, setIsPlaying] = (0, import_react61.useState)(autoplay);
5858
- (0, import_react61.useEffect)(() => {
5705
+ const [isPlaying, setIsPlaying] = (0, import_react59.useState)(autoplay);
5706
+ (0, import_react59.useEffect)(() => {
5859
5707
  if (typeof slidesToShow === "number") return;
5860
5708
  const handleResize = () => {
5861
5709
  if (window.innerWidth >= 1024) {
@@ -5870,7 +5718,7 @@ var init_Slider = __esm({
5870
5718
  window.addEventListener("resize", handleResize);
5871
5719
  return () => window.removeEventListener("resize", handleResize);
5872
5720
  }, [slidesToShow]);
5873
- (0, import_react61.useEffect)(() => {
5721
+ (0, import_react59.useEffect)(() => {
5874
5722
  if (!autoplay) return;
5875
5723
  const timer = setInterval(() => {
5876
5724
  if (isPlaying) {
@@ -5879,7 +5727,7 @@ var init_Slider = __esm({
5879
5727
  }, autoplay_speed);
5880
5728
  return () => clearInterval(timer);
5881
5729
  }, [autoplay, autoplay_speed, currentSlide, isPlaying]);
5882
- const totalSlides = import_react61.Children.count(children);
5730
+ const totalSlides = import_react59.Children.count(children);
5883
5731
  const maxSlide = totalSlides - slidesToShowState;
5884
5732
  const nextSlide = () => {
5885
5733
  if (currentSlide >= maxSlide) {
@@ -5924,16 +5772,16 @@ var init_Slider = __esm({
5924
5772
  }
5925
5773
  };
5926
5774
  const translateX = -currentSlide * (100 / slidesToShowState);
5927
- const slides = import_react61.Children.map(children, (child, index) => {
5928
- if (!import_react61.default.isValidElement(child)) return null;
5775
+ const slides = import_react59.Children.map(children, (child, index) => {
5776
+ if (!import_react59.default.isValidElement(child)) return null;
5929
5777
  const childProps = child.props;
5930
5778
  const mergedClassName = `${childProps.className ?? ""} w-full`.trim();
5931
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
5779
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
5932
5780
  "div",
5933
5781
  {
5934
5782
  className: `flex-none ${scaleOnHover ? "group hover:z-50" : ""} relative`,
5935
5783
  style: { width: `calc(${100 / slidesToShowState}%)`, paddingRight: gap },
5936
- children: (0, import_react61.cloneElement)(child, {
5784
+ children: (0, import_react59.cloneElement)(child, {
5937
5785
  className: mergedClassName
5938
5786
  })
5939
5787
  },
@@ -5951,14 +5799,14 @@ var init_Slider = __esm({
5951
5799
  return "bottom-4";
5952
5800
  }
5953
5801
  };
5954
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(
5802
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
5955
5803
  "div",
5956
5804
  {
5957
5805
  className: `relative w-full overflow-hidden ${className}`,
5958
5806
  onMouseEnter: handleMouseEnter,
5959
5807
  onMouseLeave: handleMouseLeave,
5960
5808
  children: [
5961
- /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
5809
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
5962
5810
  "div",
5963
5811
  {
5964
5812
  className: "flex h-full",
@@ -5969,18 +5817,18 @@ var init_Slider = __esm({
5969
5817
  children: slides
5970
5818
  }
5971
5819
  ),
5972
- show_arrows && /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(import_jsx_runtime88.Fragment, { children: [
5973
- /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
5820
+ show_arrows && /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_jsx_runtime86.Fragment, { children: [
5821
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
5974
5822
  ArrowButton,
5975
5823
  {
5976
5824
  direction: "left",
5977
5825
  onClick: prevSlide,
5978
5826
  visible: infinite_scroll || currentSlide > 0,
5979
5827
  className: arrowClassName,
5980
- children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: "w-6 h-6", children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M15.75 19.5 8.25 12l7.5-7.5" }) })
5828
+ children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: "w-6 h-6", children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M15.75 19.5 8.25 12l7.5-7.5" }) })
5981
5829
  }
5982
5830
  ),
5983
- /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(
5831
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
5984
5832
  ArrowButton,
5985
5833
  {
5986
5834
  direction: "right",
@@ -5988,13 +5836,13 @@ var init_Slider = __esm({
5988
5836
  visible: infinite_scroll || currentSlide < maxSlide,
5989
5837
  className: arrowClassName,
5990
5838
  children: [
5991
- /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: "w-6 h-6", children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "m8.25 4.5 7.5 7.5-7.5 7.5" }) }),
5839
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: "w-6 h-6", children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "m8.25 4.5 7.5 7.5-7.5 7.5" }) }),
5992
5840
  " "
5993
5841
  ]
5994
5842
  }
5995
5843
  )
5996
5844
  ] }),
5997
- show_dots && /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("div", { className: `absolute left-1/2 -translate-x-1/2 flex justify-center space-x-1.5 ${getProgressPositionClass()}`, children: Array.from({ length: totalSlides }).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
5845
+ show_dots && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("div", { className: `absolute left-1/2 -translate-x-1/2 flex justify-center space-x-1.5 ${getProgressPositionClass()}`, children: Array.from({ length: totalSlides }).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
5998
5846
  ProgressPill,
5999
5847
  {
6000
5848
  active: index === currentSlide,
@@ -6020,7 +5868,7 @@ var init_Slider = __esm({
6020
5868
  visible,
6021
5869
  children,
6022
5870
  className = ""
6023
- }) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
5871
+ }) => /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
6024
5872
  "button",
6025
5873
  {
6026
5874
  className: `
@@ -6046,13 +5894,13 @@ var init_Slider = __esm({
6046
5894
  currentSlide,
6047
5895
  totalSlides
6048
5896
  }) => {
6049
- const [progress, setProgress] = (0, import_react61.useState)(0);
6050
- (0, import_react61.useEffect)(() => {
5897
+ const [progress, setProgress] = (0, import_react59.useState)(0);
5898
+ (0, import_react59.useEffect)(() => {
6051
5899
  if (active) {
6052
5900
  setProgress(0);
6053
5901
  }
6054
5902
  }, [active, index]);
6055
- (0, import_react61.useEffect)(() => {
5903
+ (0, import_react59.useEffect)(() => {
6056
5904
  if (!active || !isPlaying) {
6057
5905
  if (!active) {
6058
5906
  setProgress(0);
@@ -6107,7 +5955,7 @@ var init_Slider = __esm({
6107
5955
  const renderProgressBar = () => {
6108
5956
  if (style === "modern" && isActive || style === "cumulative" && shouldShowProgress) {
6109
5957
  const displayProgress = style === "cumulative" && isFilled ? 100 : progress;
6110
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
5958
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
6111
5959
  "div",
6112
5960
  {
6113
5961
  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`,
@@ -6119,7 +5967,7 @@ var init_Slider = __esm({
6119
5967
  };
6120
5968
  const renderCumulativeFill = () => {
6121
5969
  if (style === "cumulative" && isFilled && !isActive) {
6122
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
5970
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
6123
5971
  "div",
6124
5972
  {
6125
5973
  className: `absolute top-0 left-0 h-full rounded-full ${activeClassName || "bg-white"} transition-all duration-300`,
@@ -6129,7 +5977,7 @@ var init_Slider = __esm({
6129
5977
  }
6130
5978
  return null;
6131
5979
  };
6132
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(
5980
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
6133
5981
  "button",
6134
5982
  {
6135
5983
  className: `${baseClasses} ${getStyleClasses()}`,
@@ -6157,7 +6005,7 @@ __export(server_exports, {
6157
6005
  module.exports = __toCommonJS(server_exports);
6158
6006
 
6159
6007
  // src/components/pageRenderingEngine/PageBodyRenderer.tsx
6160
- var import_react63 = __toESM(require("react"));
6008
+ var import_react61 = __toESM(require("react"));
6161
6009
 
6162
6010
  // src/components/pageRenderingEngine/nodes/ParagraphNode.tsx
6163
6011
  var import_react27 = __toESM(require("react"));
@@ -7399,7 +7247,7 @@ var WidgetNode_default = WidgetNode;
7399
7247
 
7400
7248
  // src/components/pageRenderingEngine/nodes/DivContainer.tsx
7401
7249
  var import_dynamic13 = __toESM(require("next/dynamic"));
7402
- var import_react62 = __toESM(require("react"));
7250
+ var import_react60 = __toESM(require("react"));
7403
7251
 
7404
7252
  // src/components/pageRenderingEngine/nodes/EmbedNode.tsx
7405
7253
  var import_dynamic9 = __toESM(require("next/dynamic"));
@@ -8514,7 +8362,7 @@ var GoogleMapNode = (props) => {
8514
8362
  var GoogleMapNode_default = GoogleMapNode;
8515
8363
 
8516
8364
  // src/components/pageRenderingEngine/nodes/DivContainer.tsx
8517
- var import_jsx_runtime89 = require("react/jsx-runtime");
8365
+ var import_jsx_runtime87 = require("react/jsx-runtime");
8518
8366
  var Pagination2 = (0, import_dynamic13.default)(() => Promise.resolve().then(() => (init_Pagination(), Pagination_exports)), { ssr: true });
8519
8367
  var DataBindingControls2 = (0, import_dynamic13.default)(() => Promise.resolve().then(() => (init_DataBindingControls(), DataBindingControls_exports)), {
8520
8368
  ssr: true
@@ -8773,7 +8621,7 @@ var DivContainer = async (props) => {
8773
8621
  response = await serviceClient.get(endpoint);
8774
8622
  result = response?.result;
8775
8623
  if (dataBindingProperties.showNoResultsMessage && (result === void 0 || result.length == 0)) {
8776
- return /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(NoDataFound_default, {});
8624
+ return /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(NoDataFound_default, {});
8777
8625
  }
8778
8626
  if (dataBindingProperties.childCollectionName && props.dataitem) {
8779
8627
  childCollectionData = getNestedValue6(
@@ -8793,7 +8641,7 @@ var DivContainer = async (props) => {
8793
8641
  }
8794
8642
  const SelectedNode = NodeTypes2[node.type];
8795
8643
  if (!SelectedNode) return null;
8796
- return /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_react62.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
8644
+ return /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_react60.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
8797
8645
  SelectedNode,
8798
8646
  {
8799
8647
  node,
@@ -8930,7 +8778,7 @@ var DivContainer = async (props) => {
8930
8778
  dataBindingProperties?.showFacets || dataBindingProperties?.showSortOptions || dataBindingProperties?.showSearchBar
8931
8779
  );
8932
8780
  const WrapperComponent = Wrapper;
8933
- const renderedContainer = /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
8781
+ const renderedContainer = /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
8934
8782
  WrapperComponent,
8935
8783
  {
8936
8784
  id: guid,
@@ -8944,11 +8792,11 @@ var DivContainer = async (props) => {
8944
8792
  item,
8945
8793
  idx,
8946
8794
  props.href ? void 0 : item?.links?.view
8947
- )?.map((child, i) => /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_react62.default.Fragment, { children: child }, i)) : renderChildren2(props.node.children, props, item, idx)
8795
+ )?.map((child, i) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_react60.default.Fragment, { children: child }, i)) : renderChildren2(props.node.children, props, item, idx)
8948
8796
  )
8949
8797
  }
8950
8798
  );
8951
- const paginationControl = dataBindingProperties?.enablePagination ? /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
8799
+ const paginationControl = dataBindingProperties?.enablePagination ? /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
8952
8800
  Pagination2,
8953
8801
  {
8954
8802
  path: props.path,
@@ -8956,15 +8804,15 @@ var DivContainer = async (props) => {
8956
8804
  dataset: response
8957
8805
  }
8958
8806
  ) : null;
8959
- return /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(import_react62.default.Fragment, { children: [
8960
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
8807
+ return /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(import_react60.default.Fragment, { children: [
8808
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
8961
8809
  "style",
8962
8810
  {
8963
8811
  dangerouslySetInnerHTML: { __html: cssResult.css + animationCSS }
8964
8812
  }
8965
8813
  ),
8966
- showDataBindingControls ? /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(import_react62.default.Fragment, { children: [
8967
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
8814
+ showDataBindingControls ? /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(import_react60.default.Fragment, { children: [
8815
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
8968
8816
  DataBindingControls2,
8969
8817
  {
8970
8818
  mode: "toolbar",
@@ -8976,18 +8824,18 @@ var DivContainer = async (props) => {
8976
8824
  showSearchBar: dataBindingProperties?.showSearchBar
8977
8825
  }
8978
8826
  ),
8979
- /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(
8827
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(
8980
8828
  "div",
8981
8829
  {
8982
8830
  className: dataBindingProperties?.showFacets ? "grid items-start gap-6 lg:grid-cols-[minmax(0,1fr)_18rem]" : void 0,
8983
8831
  children: [
8984
- /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)("div", { className: "min-w-0", children: [
8832
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)("div", { className: "min-w-0", children: [
8985
8833
  renderedContainer,
8986
8834
  paginationControl
8987
8835
  ] }),
8988
- dataBindingProperties?.showFacets && /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)("aside", { className: "border bg-default p-3 lg:sticky lg:top-[90px] lg:self-start", children: [
8989
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)("h2", { className: "mb-2 text-lg font-semibold", children: "Filters" }),
8990
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
8836
+ dataBindingProperties?.showFacets && /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)("aside", { className: "border bg-default p-3 lg:sticky lg:top-[90px] lg:self-start", children: [
8837
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("h2", { className: "mb-2 text-lg font-semibold", children: "Filters" }),
8838
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
8991
8839
  DataBindingControls2,
8992
8840
  {
8993
8841
  mode: "facets",
@@ -9001,16 +8849,16 @@ var DivContainer = async (props) => {
9001
8849
  ]
9002
8850
  }
9003
8851
  )
9004
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(import_react62.default.Fragment, { children: [
8852
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(import_react60.default.Fragment, { children: [
9005
8853
  renderedContainer,
9006
- paginationControl && /* @__PURE__ */ (0, import_jsx_runtime89.jsx)("div", { children: paginationControl })
8854
+ paginationControl && /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("div", { children: paginationControl })
9007
8855
  ] })
9008
8856
  ] });
9009
8857
  };
9010
8858
  var DivContainer_default = DivContainer;
9011
8859
 
9012
8860
  // src/components/pageRenderingEngine/PageBodyRenderer.tsx
9013
- var import_jsx_runtime90 = require("react/jsx-runtime");
8861
+ var import_jsx_runtime88 = require("react/jsx-runtime");
9014
8862
  var NodeTypes = {
9015
8863
  ["paragraph"]: ParagraphNode_default,
9016
8864
  ["heading"]: HeadingNode_default,
@@ -9048,14 +8896,14 @@ var PageBodyRenderer = (props) => {
9048
8896
  }
9049
8897
  return true;
9050
8898
  };
9051
- return /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_react63.default.Fragment, { children: rootNode && rootNode?.children?.map((node, index) => {
8899
+ return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_react61.default.Fragment, { children: rootNode && rootNode?.children?.map((node, index) => {
9052
8900
  {
9053
8901
  }
9054
8902
  const SelectedNode = NodeTypes[node.type];
9055
8903
  if (!shouldRenderNode(node)) {
9056
8904
  return null;
9057
8905
  }
9058
- return /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_react63.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_react63.default.Fragment, { children: node.type == "layout-container" ? /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_react63.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(
8906
+ return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_react61.default.Fragment, { children: SelectedNode && /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_react61.default.Fragment, { children: node.type == "layout-container" ? /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_react61.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
9059
8907
  SelectedNode,
9060
8908
  {
9061
8909
  node,
@@ -9071,7 +8919,7 @@ var PageBodyRenderer = (props) => {
9071
8919
  device: props.device,
9072
8920
  widgetRenderer: props.widgetRenderer
9073
8921
  }
9074
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_react63.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(
8922
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_react61.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
9075
8923
  SelectedNode,
9076
8924
  {
9077
8925
  node,