@acoustte-digital-services/digitalstore-controls-dev 0.8.1-dev.20260722072521 → 0.8.1-dev.20260722072620

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.
@@ -127,7 +127,7 @@ var Confirm_default = Confirm;
127
127
  }
128
128
 
129
129
  // src/components/Button.tsx
130
- import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
130
+ import { Fragment as Fragment2, jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
131
131
  var Button = (props) => {
132
132
  const [inProgress, setInProgress] = useState2(false);
133
133
  const [isActionPerformed, setIsActionPerformed] = useState2(false);
@@ -137,7 +137,9 @@ var Button = (props) => {
137
137
  event.preventDefault();
138
138
  event.stopPropagation();
139
139
  if (props.confirm) {
140
- const confirmed = await showConfirmation("Are you sure you want to delete this item?");
140
+ const confirmed = await showConfirmation(
141
+ "Are you sure you want to delete this item?"
142
+ );
141
143
  setShowModal(null);
142
144
  if (!confirmed) {
143
145
  return;
@@ -152,7 +154,9 @@ var Button = (props) => {
152
154
  isValid = await props.onValidate();
153
155
  if (!isValid) {
154
156
  setInProgress(false);
155
- ToastService_default.showError("There are errors in the form. Please fix them before proceeding.");
157
+ ToastService_default.showError(
158
+ "There are errors in the form. Please fix them before proceeding."
159
+ );
156
160
  return;
157
161
  }
158
162
  }
@@ -176,7 +180,16 @@ var Button = (props) => {
176
180
  return new Promise((resolve) => {
177
181
  const onConfirm = () => resolve(true);
178
182
  const onCancel = () => resolve(false);
179
- setShowModal(/* @__PURE__ */ jsx3(Confirm_default, { message: props.confirmationMessage, onConfirm, onCancel }));
183
+ setShowModal(
184
+ /* @__PURE__ */ jsx3(
185
+ Confirm_default,
186
+ {
187
+ message: props.confirmationMessage,
188
+ onConfirm,
189
+ onCancel
190
+ }
191
+ )
192
+ );
180
193
  });
181
194
  };
182
195
  let buttonClass = props.ButtonType ? buttonClasses.get(props.ButtonType) : buttonClasses.get("Primary" /* Solid */);
@@ -190,13 +203,39 @@ var Button = (props) => {
190
203
  onClick: execute,
191
204
  disabled: props.disabled,
192
205
  title: isDisabled ? "The button is disabled to prevent any action" : "",
193
- className: buttonClass + " relative " + props.className,
206
+ className: `${buttonClass} relative inline-flex items-center justify-center gap-2 ${props.className ?? ""}`,
194
207
  children: [
195
208
  isActionPerformed && props.oneTimeAction && responseMessage ? responseMessage : props.children,
196
- inProgress && /* @__PURE__ */ jsx3(React3.Fragment, { children: props.hideProgressIndicator === true ? /* @__PURE__ */ jsx3("div", { className: "absolute bottom-0 left-0 h-0.5 bg-gray-400 rounded animate-progress" }) : /* @__PURE__ */ jsxs2("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: [
197
- /* @__PURE__ */ jsx3("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }),
198
- /* @__PURE__ */ jsx3("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" })
199
- ] }) })
209
+ inProgress && /* @__PURE__ */ jsx3(Fragment2, { children: props.hideProgressIndicator ? /* @__PURE__ */ jsx3("div", { className: "absolute bottom-0 left-0 h-0.5 bg-gray-400 rounded animate-progress" }) : /* @__PURE__ */ jsxs2(
210
+ "svg",
211
+ {
212
+ className: `animate-spin h-5 w-5 flex-shrink-0 ${progressClass}`,
213
+ xmlns: "http://www.w3.org/2000/svg",
214
+ fill: "none",
215
+ viewBox: "0 0 24 24",
216
+ children: [
217
+ /* @__PURE__ */ jsx3(
218
+ "circle",
219
+ {
220
+ className: "opacity-25",
221
+ cx: "12",
222
+ cy: "12",
223
+ r: "10",
224
+ stroke: "currentColor",
225
+ strokeWidth: "4"
226
+ }
227
+ ),
228
+ /* @__PURE__ */ jsx3(
229
+ "path",
230
+ {
231
+ className: "opacity-75",
232
+ fill: "currentColor",
233
+ 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"
234
+ }
235
+ )
236
+ ]
237
+ }
238
+ ) })
200
239
  ]
201
240
  }
202
241
  ),
package/dist/index.d.mts CHANGED
@@ -13,7 +13,7 @@ interface ViewControlProps {
13
13
  session?: any;
14
14
  }
15
15
 
16
- declare const ViewControl: (props: ViewControlProps) => React__default.JSX.Element;
16
+ declare const ViewControl: React__default.MemoExoticComponent<(props: ViewControlProps) => React__default.JSX.Element>;
17
17
 
18
18
  declare const ViewControlTypes: {
19
19
  lineText: string;
package/dist/index.d.ts CHANGED
@@ -13,7 +13,7 @@ interface ViewControlProps {
13
13
  session?: any;
14
14
  }
15
15
 
16
- declare const ViewControl: (props: ViewControlProps) => React__default.JSX.Element;
16
+ declare const ViewControl: React__default.MemoExoticComponent<(props: ViewControlProps) => React__default.JSX.Element>;
17
17
 
18
18
  declare const ViewControlTypes: {
19
19
  lineText: string;
package/dist/index.js CHANGED
@@ -1,3 +1,5 @@
1
+ "use client";
2
+
1
3
  "use strict";
2
4
  var __create = Object.create;
3
5
  var __defProp = Object.defineProperty;
@@ -1869,7 +1871,9 @@ var init_Button = __esm({
1869
1871
  event.preventDefault();
1870
1872
  event.stopPropagation();
1871
1873
  if (props.confirm) {
1872
- const confirmed = await showConfirmation("Are you sure you want to delete this item?");
1874
+ const confirmed = await showConfirmation(
1875
+ "Are you sure you want to delete this item?"
1876
+ );
1873
1877
  setShowModal(null);
1874
1878
  if (!confirmed) {
1875
1879
  return;
@@ -1884,7 +1888,9 @@ var init_Button = __esm({
1884
1888
  isValid = await props.onValidate();
1885
1889
  if (!isValid) {
1886
1890
  setInProgress(false);
1887
- ToastService_default.showError("There are errors in the form. Please fix them before proceeding.");
1891
+ ToastService_default.showError(
1892
+ "There are errors in the form. Please fix them before proceeding."
1893
+ );
1888
1894
  return;
1889
1895
  }
1890
1896
  }
@@ -1908,7 +1914,16 @@ var init_Button = __esm({
1908
1914
  return new Promise((resolve) => {
1909
1915
  const onConfirm = () => resolve(true);
1910
1916
  const onCancel = () => resolve(false);
1911
- setShowModal(/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Confirm_default, { message: props.confirmationMessage, onConfirm, onCancel }));
1917
+ setShowModal(
1918
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1919
+ Confirm_default,
1920
+ {
1921
+ message: props.confirmationMessage,
1922
+ onConfirm,
1923
+ onCancel
1924
+ }
1925
+ )
1926
+ );
1912
1927
  });
1913
1928
  };
1914
1929
  let buttonClass = props.ButtonType ? buttonClasses.get(props.ButtonType) : buttonClasses.get("Primary" /* Solid */);
@@ -1922,13 +1937,39 @@ var init_Button = __esm({
1922
1937
  onClick: execute,
1923
1938
  disabled: props.disabled,
1924
1939
  title: isDisabled ? "The button is disabled to prevent any action" : "",
1925
- className: buttonClass + " relative " + props.className,
1940
+ className: `${buttonClass} relative inline-flex items-center justify-center gap-2 ${props.className ?? ""}`,
1926
1941
  children: [
1927
1942
  isActionPerformed && props.oneTimeAction && responseMessage ? responseMessage : props.children,
1928
- inProgress && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react30.default.Fragment, { children: props.hideProgressIndicator === true ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "absolute bottom-0 left-0 h-0.5 bg-gray-400 rounded animate-progress" }) : /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("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: [
1929
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }),
1930
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("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" })
1931
- ] }) })
1943
+ inProgress && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_jsx_runtime33.Fragment, { children: props.hideProgressIndicator ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "absolute bottom-0 left-0 h-0.5 bg-gray-400 rounded animate-progress" }) : /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
1944
+ "svg",
1945
+ {
1946
+ className: `animate-spin h-5 w-5 flex-shrink-0 ${progressClass}`,
1947
+ xmlns: "http://www.w3.org/2000/svg",
1948
+ fill: "none",
1949
+ viewBox: "0 0 24 24",
1950
+ children: [
1951
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1952
+ "circle",
1953
+ {
1954
+ className: "opacity-25",
1955
+ cx: "12",
1956
+ cy: "12",
1957
+ r: "10",
1958
+ stroke: "currentColor",
1959
+ strokeWidth: "4"
1960
+ }
1961
+ ),
1962
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1963
+ "path",
1964
+ {
1965
+ className: "opacity-75",
1966
+ fill: "currentColor",
1967
+ 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"
1968
+ }
1969
+ )
1970
+ ]
1971
+ }
1972
+ ) })
1932
1973
  ]
1933
1974
  }
1934
1975
  ),
@@ -2801,7 +2842,7 @@ var InputControlClient_exports = {};
2801
2842
  __export(InputControlClient_exports, {
2802
2843
  default: () => InputControlClient_default
2803
2844
  });
2804
- var import_react37, import_jsx_runtime46, InputControl, InputControlClient_default;
2845
+ var import_react37, import_jsx_runtime46, ControlComponents2, InputControl, InputControlClient_default;
2805
2846
  var init_InputControlClient = __esm({
2806
2847
  "src/components/controls/edit/InputControlClient.tsx"() {
2807
2848
  "use strict";
@@ -2827,32 +2868,32 @@ var init_InputControlClient = __esm({
2827
2868
  init_AssetUpload();
2828
2869
  init_SwitchInput();
2829
2870
  import_jsx_runtime46 = require("react/jsx-runtime");
2830
- InputControl = import_react37.default.forwardRef(
2871
+ ControlComponents2 = {
2872
+ [InputControlType_default.lineTextInput]: LineTextInput_default,
2873
+ [InputControlType_default.emailInput]: EmailInput_default,
2874
+ [InputControlType_default.multilineTextInput]: MultilineTextInput_default,
2875
+ [InputControlType_default.moneyInput]: MoneyInput_default,
2876
+ [InputControlType_default.select]: Select_default,
2877
+ [InputControlType_default.percentageInput]: PercentageInput_default,
2878
+ [InputControlType_default.phoneInput]: PhoneInput_default,
2879
+ [InputControlType_default.numberInput]: NumberInput_default,
2880
+ [InputControlType_default.checkboxInput]: CheckboxInput_default,
2881
+ [InputControlType_default.otpInput]: OtpInput_default,
2882
+ [InputControlType_default.datetimeInput]: DateTimeInput_default,
2883
+ [InputControlType_default.colorInput]: ColorInput_default,
2884
+ [InputControlType_default.selectWithSearchInput]: SelectWithSearchInput_default,
2885
+ [InputControlType_default.selectWithSearchPanel]: SelectWithSearchPanel_default,
2886
+ [InputControlType_default.booleanSelect]: BooleanSelect_default,
2887
+ [InputControlType_default.timeInput]: TimeInput_default,
2888
+ [InputControlType_default.asset]: AssetUpload_default,
2889
+ [InputControlType_default.switchInput]: SwitchInput_default
2890
+ };
2891
+ InputControl = import_react37.default.memo(import_react37.default.forwardRef(
2831
2892
  (props, ref) => {
2832
- const ControlComponents = {
2833
- [InputControlType_default.lineTextInput]: LineTextInput_default,
2834
- [InputControlType_default.emailInput]: EmailInput_default,
2835
- [InputControlType_default.multilineTextInput]: MultilineTextInput_default,
2836
- [InputControlType_default.moneyInput]: MoneyInput_default,
2837
- [InputControlType_default.select]: Select_default,
2838
- [InputControlType_default.percentageInput]: PercentageInput_default,
2839
- [InputControlType_default.phoneInput]: PhoneInput_default,
2840
- [InputControlType_default.numberInput]: NumberInput_default,
2841
- [InputControlType_default.checkboxInput]: CheckboxInput_default,
2842
- [InputControlType_default.otpInput]: OtpInput_default,
2843
- [InputControlType_default.datetimeInput]: DateTimeInput_default,
2844
- [InputControlType_default.colorInput]: ColorInput_default,
2845
- [InputControlType_default.selectWithSearchInput]: SelectWithSearchInput_default,
2846
- [InputControlType_default.selectWithSearchPanel]: SelectWithSearchPanel_default,
2847
- [InputControlType_default.booleanSelect]: BooleanSelect_default,
2848
- [InputControlType_default.timeInput]: TimeInput_default,
2849
- [InputControlType_default.asset]: AssetUpload_default,
2850
- [InputControlType_default.switchInput]: SwitchInput_default
2851
- };
2852
- const SelectedControlComponent = ControlComponents[props.controlType];
2893
+ const SelectedControlComponent = ControlComponents2[props.controlType];
2853
2894
  return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_react37.default.Fragment, { children: SelectedControlComponent ? /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(SelectedControlComponent, { ...props }) : "Control not found" });
2854
2895
  }
2855
- );
2896
+ ));
2856
2897
  InputControl.displayName = "InputControl";
2857
2898
  InputControlClient_default = InputControl;
2858
2899
  }
@@ -3090,6 +3131,8 @@ var init_LinkNodeButton = __esm({
3090
3131
  LinkNodeButton = (props) => {
3091
3132
  const { node, dataitem, children, linkText, linkType, linkUrl } = props;
3092
3133
  const [isLoading, setIsLoading] = (0, import_react38.useState)(false);
3134
+ const [successMessage, setSuccessMessage] = (0, import_react38.useState)(null);
3135
+ console.log("LinkNodeButton props:", props);
3093
3136
  const extractFieldNames = (0, import_react38.useCallback)((template) => {
3094
3137
  if (!template) return [];
3095
3138
  const regex = /\{(\{\})?([a-zA-Z_$][a-zA-Z0-9_$]*)(?:\}\})?\}/g;
@@ -3097,35 +3140,38 @@ var init_LinkNodeButton = __esm({
3097
3140
  const fieldNames = matches.map((match) => match[2] || match[1]).filter((name, index, self) => self.indexOf(name) === index);
3098
3141
  return fieldNames;
3099
3142
  }, []);
3100
- const replaceTemplateVariables = (0, import_react38.useCallback)((template, responseData) => {
3101
- if (!template) return template;
3102
- let result = template;
3103
- const fieldNames = extractFieldNames(template);
3104
- if (responseData) {
3105
- fieldNames.forEach((fieldName) => {
3106
- const value = getNestedValue7(responseData, fieldName);
3107
- if (value !== void 0) {
3108
- const regex1 = new RegExp(`\\{${fieldName}\\}`, "g");
3109
- const regex2 = new RegExp(`\\{\\{${fieldName}\\}\\}`, "g");
3110
- result = result.replace(regex1, String(value));
3111
- result = result.replace(regex2, String(value));
3112
- }
3113
- });
3114
- }
3115
- if (props.routeParameters) {
3116
- Object.entries(props.routeParameters).forEach(([key, value]) => {
3117
- const regex = new RegExp(`\\{\\{${key}\\}\\}`, "g");
3118
- result = result.replace(regex, String(value));
3119
- });
3120
- }
3121
- if (dataitem) {
3122
- Object.entries(dataitem).forEach(([key, value]) => {
3123
- const regex = new RegExp(`\\{\\{${key}\\}\\}`, "g");
3124
- result = result.replace(regex, String(value));
3125
- });
3126
- }
3127
- return result;
3128
- }, [props.routeParameters, dataitem, extractFieldNames]);
3143
+ const replaceTemplateVariables = (0, import_react38.useCallback)(
3144
+ (template, responseData) => {
3145
+ if (!template) return template;
3146
+ let result = template;
3147
+ const fieldNames = extractFieldNames(template);
3148
+ if (responseData) {
3149
+ fieldNames.forEach((fieldName) => {
3150
+ const value = getNestedValue7(responseData, fieldName);
3151
+ if (value !== void 0) {
3152
+ const regex1 = new RegExp(`\\{${fieldName}\\}`, "g");
3153
+ const regex2 = new RegExp(`\\{\\{${fieldName}\\}\\}`, "g");
3154
+ result = result.replace(regex1, String(value));
3155
+ result = result.replace(regex2, String(value));
3156
+ }
3157
+ });
3158
+ }
3159
+ if (props.routeParameters) {
3160
+ Object.entries(props.routeParameters).forEach(([key, value]) => {
3161
+ const regex = new RegExp(`\\{\\{${key}\\}\\}`, "g");
3162
+ result = result.replace(regex, String(value));
3163
+ });
3164
+ }
3165
+ if (dataitem) {
3166
+ Object.entries(dataitem).forEach(([key, value]) => {
3167
+ const regex = new RegExp(`\\{\\{${key}\\}\\}`, "g");
3168
+ result = result.replace(regex, String(value));
3169
+ });
3170
+ }
3171
+ return result;
3172
+ },
3173
+ [props.routeParameters, dataitem, extractFieldNames]
3174
+ );
3129
3175
  const getNestedValue7 = (0, import_react38.useCallback)((obj, path) => {
3130
3176
  if (!obj || !path) return void 0;
3131
3177
  if (obj[path] !== void 0) {
@@ -3143,7 +3189,10 @@ var init_LinkNodeButton = __esm({
3143
3189
  }, []);
3144
3190
  const onClick = (0, import_react38.useCallback)(async () => {
3145
3191
  if (!node.postUrl) {
3146
- return { isSuccessful: false, message: "No POST URL configured for this button" };
3192
+ return {
3193
+ isSuccessful: false,
3194
+ message: "No POST URL configured for this button"
3195
+ };
3147
3196
  }
3148
3197
  setIsLoading(true);
3149
3198
  try {
@@ -3169,6 +3218,7 @@ var init_LinkNodeButton = __esm({
3169
3218
  }
3170
3219
  if (response?.message) {
3171
3220
  ToastService_default.showSuccess(response.message);
3221
+ setSuccessMessage(response.message);
3172
3222
  }
3173
3223
  if (response && node.redirectUrl) {
3174
3224
  const fieldNames = extractFieldNames(node.redirectUrl);
@@ -3191,7 +3241,9 @@ var init_LinkNodeButton = __esm({
3191
3241
  }
3192
3242
  });
3193
3243
  console.log("Field value map:", fieldValueMap);
3194
- const missingFields = fieldNames.filter((fieldName) => !fieldValueMap[fieldName]);
3244
+ const missingFields = fieldNames.filter(
3245
+ (fieldName) => !fieldValueMap[fieldName]
3246
+ );
3195
3247
  if (missingFields.length > 0) {
3196
3248
  console.warn(`Missing field values for: ${missingFields.join(", ")}`);
3197
3249
  }
@@ -3202,7 +3254,10 @@ var init_LinkNodeButton = __esm({
3202
3254
  resolvedRedirectUrl = resolvedRedirectUrl.replace(regex1, value);
3203
3255
  resolvedRedirectUrl = resolvedRedirectUrl.replace(regex2, value);
3204
3256
  });
3205
- resolvedRedirectUrl = replaceTemplateVariables(resolvedRedirectUrl, response);
3257
+ resolvedRedirectUrl = replaceTemplateVariables(
3258
+ resolvedRedirectUrl,
3259
+ response
3260
+ );
3206
3261
  console.log("Final redirect URL:", resolvedRedirectUrl);
3207
3262
  if (resolvedRedirectUrl && !resolvedRedirectUrl.includes("{")) {
3208
3263
  window.location.href = resolvedRedirectUrl;
@@ -3213,14 +3268,27 @@ var init_LinkNodeButton = __esm({
3213
3268
  return { isSuccessful: false, message: errorMessage };
3214
3269
  }
3215
3270
  setIsLoading(false);
3216
- return { isSuccessful: true, message: response?.message, result: response };
3271
+ return {
3272
+ isSuccessful: true,
3273
+ message: response?.message,
3274
+ result: response
3275
+ };
3217
3276
  } catch (err) {
3218
3277
  console.error("Button API call failed:", err);
3219
3278
  const errorMessage = err.message || "An unexpected error occurred";
3220
3279
  setIsLoading(false);
3221
3280
  return { isSuccessful: false, message: errorMessage };
3222
3281
  }
3223
- }, [node.postUrl, node.payload, node.redirectUrl, replaceTemplateVariables, extractFieldNames, getNestedValue7, props.apiBaseUrl, props.session]);
3282
+ }, [
3283
+ node.postUrl,
3284
+ node.payload,
3285
+ node.redirectUrl,
3286
+ replaceTemplateVariables,
3287
+ extractFieldNames,
3288
+ getNestedValue7,
3289
+ props.apiBaseUrl,
3290
+ props.session
3291
+ ]);
3224
3292
  const renderButtonContent = () => {
3225
3293
  if (children) {
3226
3294
  return children;
@@ -3230,14 +3298,41 @@ var init_LinkNodeButton = __esm({
3230
3298
  }
3231
3299
  return node.title || "Button";
3232
3300
  };
3301
+ const fontSize = node.children?.[0]?.style?.match(/font-size:\s*([^;]+)/)?.[1];
3233
3302
  return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "link-button-wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
3234
3303
  Button_default,
3235
3304
  {
3236
3305
  ButtonType: linkType,
3237
3306
  onClick,
3238
- disabled: isLoading,
3307
+ disabled: isLoading || !!successMessage,
3239
3308
  className: "w-full",
3240
- children: renderButtonContent()
3309
+ children: successMessage ? /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
3310
+ "span",
3311
+ {
3312
+ style: fontSize ? { fontSize } : void 0,
3313
+ className: "inline-flex items-center gap-2",
3314
+ children: [
3315
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
3316
+ "svg",
3317
+ {
3318
+ xmlns: "http://www.w3.org/2000/svg",
3319
+ viewBox: "0 0 20 20",
3320
+ fill: "currentColor",
3321
+ className: "w-5 h-5",
3322
+ children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
3323
+ "path",
3324
+ {
3325
+ fillRule: "evenodd",
3326
+ d: "M16.704 5.29a1 1 0 010 1.42l-7.25 7.25a1 1 0 01-1.415 0L3.29 9.21a1 1 0 111.415-1.414l4.042 4.042 6.543-6.543a1 1 0 011.414 0z",
3327
+ clipRule: "evenodd"
3328
+ }
3329
+ )
3330
+ }
3331
+ ),
3332
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { children: successMessage })
3333
+ ]
3334
+ }
3335
+ ) : renderButtonContent()
3241
3336
  }
3242
3337
  ) });
3243
3338
  };
@@ -4497,36 +4592,36 @@ var DateTimeVew_default = DateTimeView;
4497
4592
 
4498
4593
  // src/components/controls/view/ViewControl.tsx
4499
4594
  var import_jsx_runtime18 = require("react/jsx-runtime");
4500
- var ViewControl = (props) => {
4501
- const ControlComponents = {
4502
- [ViewControlTypes_default.lineText]: LineTextView_default,
4503
- [ViewControlTypes_default.emailText]: EmailTextView_default,
4504
- [ViewControlTypes_default.asset]: Asset_default,
4505
- [ViewControlTypes_default.multilineTextBullets]: MultilineTextBulletsView_default,
4506
- [ViewControlTypes_default.boolean]: BooleanView_default,
4507
- [ViewControlTypes_default.checkboxInput]: BooleanView_default,
4508
- // [ViewControlTypes.timeUntilStarts]: TimeUntilStarts,
4509
- [ViewControlTypes_default.money]: MoneyView_default,
4510
- [ViewControlTypes_default.date]: DateView_default,
4511
- [ViewControlTypes_default.time]: DateView_default,
4512
- [ViewControlTypes_default.datetime]: DateTimeVew_default,
4513
- [ViewControlTypes_default.number]: NumberView_default,
4514
- [ViewControlTypes_default.multilineText]: MultilineTextView_default,
4515
- [ViewControlTypes_default.multilinetext]: MultilineTextView_default,
4516
- [ViewControlTypes_default.moneyText]: MoneyView_default,
4517
- [ViewControlTypes_default.percentage]: PercentageView_default,
4518
- [ViewControlTypes_default.status]: StatusView_default,
4519
- [ViewControlTypes_default.statusBg]: StatusBgView_default,
4520
- [ViewControlTypes_default.progressIndicator]: ProgressIndicator_default,
4521
- // [ViewControlTypes.timeUntilStarts]: TimeUntilStarts,
4522
- // [ViewControlTypes.timeUntilStartsStyled]: TimeUntilStartsStyled,
4523
- [ViewControlTypes_default.aiGeneratedSummary]: AiGeneratedSummary_default,
4524
- [ViewControlTypes_default.booleanView]: BooleanView_default,
4525
- [ViewControlTypes_default.text]: LineTextView_default
4526
- };
4595
+ var ControlComponents = {
4596
+ [ViewControlTypes_default.lineText]: LineTextView_default,
4597
+ [ViewControlTypes_default.emailText]: EmailTextView_default,
4598
+ [ViewControlTypes_default.asset]: Asset_default,
4599
+ [ViewControlTypes_default.multilineTextBullets]: MultilineTextBulletsView_default,
4600
+ [ViewControlTypes_default.boolean]: BooleanView_default,
4601
+ [ViewControlTypes_default.checkboxInput]: BooleanView_default,
4602
+ // [ViewControlTypes.timeUntilStarts]: TimeUntilStarts,
4603
+ [ViewControlTypes_default.money]: MoneyView_default,
4604
+ [ViewControlTypes_default.date]: DateView_default,
4605
+ [ViewControlTypes_default.time]: DateView_default,
4606
+ [ViewControlTypes_default.datetime]: DateTimeVew_default,
4607
+ [ViewControlTypes_default.number]: NumberView_default,
4608
+ [ViewControlTypes_default.multilineText]: MultilineTextView_default,
4609
+ [ViewControlTypes_default.multilinetext]: MultilineTextView_default,
4610
+ [ViewControlTypes_default.moneyText]: MoneyView_default,
4611
+ [ViewControlTypes_default.percentage]: PercentageView_default,
4612
+ [ViewControlTypes_default.status]: StatusView_default,
4613
+ [ViewControlTypes_default.statusBg]: StatusBgView_default,
4614
+ [ViewControlTypes_default.progressIndicator]: ProgressIndicator_default,
4615
+ // [ViewControlTypes.timeUntilStarts]: TimeUntilStarts,
4616
+ // [ViewControlTypes.timeUntilStartsStyled]: TimeUntilStartsStyled,
4617
+ [ViewControlTypes_default.aiGeneratedSummary]: AiGeneratedSummary_default,
4618
+ [ViewControlTypes_default.booleanView]: BooleanView_default,
4619
+ [ViewControlTypes_default.text]: LineTextView_default
4620
+ };
4621
+ var ViewControl = import_react15.default.memo((props) => {
4527
4622
  const SelectedControlComponent = props.controlType ? ControlComponents[props.controlType] : void 0;
4528
4623
  return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_react15.default.Fragment, { children: SelectedControlComponent ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(SelectedControlComponent, { ...props }) : "Control not found:" + props.controlType });
4529
- };
4624
+ });
4530
4625
  var ViewControl_default = ViewControl;
4531
4626
 
4532
4627
  // src/components/controls/edit/InputControl.tsx
@@ -7186,7 +7281,6 @@ var DataList = (props) => {
7186
7281
  let orderBy = "";
7187
7282
  let activePageNumber = 0;
7188
7283
  let pages = 0;
7189
- console.log(props.addLinkText);
7190
7284
  const [isDataFound, setIsDataFound] = (0, import_react58.useState)(null);
7191
7285
  const [searchTerm, setSearchTerm] = (0, import_react58.useState)(props.query?.searchTerm ?? "");
7192
7286
  (0, import_react58.useEffect)(() => {
@@ -7237,7 +7331,6 @@ var DataList = (props) => {
7237
7331
  name: updatedValues.name,
7238
7332
  value: updatedValues.value
7239
7333
  });
7240
- console.log("ddddaaa", updatedValues.value);
7241
7334
  let builder2 = new OdataBuilder(props.path);
7242
7335
  builder2 = builder2.setQuery(props.query);
7243
7336
  if (updatedValues.value != "" && updatedValues.value != null) {
@@ -7538,12 +7631,10 @@ var DataList = (props) => {
7538
7631
  }) }) }),
7539
7632
  /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("tbody", { className: "divide-y divide-gray-200 ", children: props.dataset?.result?.map((dataitem, index) => {
7540
7633
  let validityClass = "";
7541
- console.log("dataitem", dataitem);
7542
7634
  if (props.recordValidityColumnName && getNestedProperty2(dataitem, props.recordValidityColumnName) == false) {
7543
7635
  validityClass = "bg-alert-200";
7544
7636
  }
7545
7637
  return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("tr", { className: validityClass, children: props?.columns?.map((column, colindex) => {
7546
- console.log("column", column);
7547
7638
  return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_react58.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
7548
7639
  "td",
7549
7640
  {