@wavemaker-ai/react-runtime 1.0.0-rc.330 → 1.0.0-rc.334

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.
Files changed (171) hide show
  1. package/actions/notification-action.js +3 -3
  2. package/actions/toast.js +2 -1
  3. package/components/advanced/carousel/index.d.ts +1 -0
  4. package/components/advanced/carousel/template.d.ts +1 -0
  5. package/components/advanced/login/index.d.ts +1 -0
  6. package/components/advanced/marquee/index.d.ts +1 -0
  7. package/components/basic/anchor/index.d.ts +1 -0
  8. package/components/basic/anchor/index.js +3 -5
  9. package/components/basic/audio/index.d.ts +1 -0
  10. package/components/basic/html/index.d.ts +1 -0
  11. package/components/basic/icon/index.d.ts +1 -0
  12. package/components/basic/iframe/index.d.ts +1 -0
  13. package/components/basic/label/index.d.ts +1 -0
  14. package/components/basic/message/index.js +1 -0
  15. package/components/basic/picture/index.d.ts +1 -0
  16. package/components/basic/progress-bar/index.d.ts +1 -0
  17. package/components/basic/progress-circle/index.d.ts +1 -0
  18. package/components/basic/richtexteditor/index.d.ts +2 -0
  19. package/components/basic/search/index.js +9 -11
  20. package/components/basic/search/providers.d.ts +1 -1
  21. package/components/basic/search/providers.js +6 -3
  22. package/components/basic/spinner/index.d.ts +1 -0
  23. package/components/basic/tile/index.d.ts +1 -0
  24. package/components/basic/tree/index.d.ts +1 -0
  25. package/components/basic/video/index.d.ts +1 -0
  26. package/components/chart/index.d.ts +1 -0
  27. package/components/container/accordion/accordion-pane/index.d.ts +1 -0
  28. package/components/container/accordion/index.d.ts +1 -0
  29. package/components/container/index.d.ts +4 -0
  30. package/components/container/index.js +33 -9
  31. package/components/container/layout-grid/grid-column/index.d.ts +1 -0
  32. package/components/container/layout-grid/grid-row/index.d.ts +1 -0
  33. package/components/container/layout-grid/index.d.ts +1 -0
  34. package/components/container/layout-grid/index.js +2 -1
  35. package/components/container/linear-layout/index.d.ts +1 -0
  36. package/components/container/linear-layout/index.js +0 -1
  37. package/components/container/linear-layout/linear-layout-item/index.d.ts +1 -0
  38. package/components/container/panel/index.d.ts +1 -0
  39. package/components/container/props.d.ts +1 -0
  40. package/components/container/repeat-template/index.d.ts +1 -0
  41. package/components/container/repeat-template/index.js +1 -1
  42. package/components/container/tabs/index.d.ts +1 -0
  43. package/components/container/tabs/index.js +8 -6
  44. package/components/container/tabs/tab-pane/index.d.ts +1 -0
  45. package/components/container/tabs/tab-pane/index.js +2 -2
  46. package/components/container/wizard/index.d.ts +2 -0
  47. package/components/container/wizard/index.js +56 -40
  48. package/components/container/wizard/wizard-step/index.d.ts +1 -0
  49. package/components/data/card/card-actions/index.d.ts +1 -0
  50. package/components/data/card/card-content/index.d.ts +1 -0
  51. package/components/data/card/card-footer/index.d.ts +1 -0
  52. package/components/data/card/index.d.ts +1 -0
  53. package/components/data/form/base-form/hooks/useFormOperations.d.ts +1 -1
  54. package/components/data/form/base-form/hooks/useFormOperations.js +14 -17
  55. package/components/data/form/base-form/index.js +22 -23
  56. package/components/data/form/base-form/props.d.ts +1 -0
  57. package/components/data/form/base-form/utils.js +5 -4
  58. package/components/data/form/form-action/index.d.ts +4 -2
  59. package/components/data/form/form-action/index.js +2 -2
  60. package/components/data/form/form-context.d.ts +12 -13
  61. package/components/data/form/form-context.js +4 -6
  62. package/components/data/form/form-controller/withFormController.js +20 -7
  63. package/components/data/form/form-field/index.js +40 -15
  64. package/components/data/form/form-field/props.d.ts +7 -2
  65. package/components/data/list/components/ListItems.js +1 -3
  66. package/components/data/list/index.d.ts +2 -0
  67. package/components/data/list/index.js +6 -11
  68. package/components/data/pagination/hooks/usePagination.js +8 -8
  69. package/components/data/table/components/RowExpansionButton.js +5 -1
  70. package/components/data/table/components/TableBody.js +4 -1
  71. package/components/data/table/components/TableDataRow.js +1 -1
  72. package/components/data/table/components/TableHeader.js +3 -1
  73. package/components/data/table/hooks/useFormWidget.js +2 -2
  74. package/components/data/table/hooks/usePanelStructure.js +6 -1
  75. package/components/data/table/hooks/useResponsiveColumns.d.ts +1 -0
  76. package/components/data/table/hooks/useRowHandlers.js +3 -3
  77. package/components/data/table/hooks/useRowSelection.js +22 -13
  78. package/components/data/table/hooks/useTableColumns.js +5 -5
  79. package/components/data/table/hooks/useTableData.js +10 -2
  80. package/components/data/table/index.d.ts +2 -0
  81. package/components/data/table/index.js +15 -14
  82. package/components/data/table/live-table/index.d.ts +1 -0
  83. package/components/data/table/props.d.ts +9 -8
  84. package/components/data/table/table-action/index.d.ts +1 -0
  85. package/components/data/table/table-column/index.d.ts +1 -0
  86. package/components/data/table/table-row/index.d.ts +1 -0
  87. package/components/data/table/table-row-action/index.d.ts +1 -0
  88. package/components/data/table/utils/buildSelectionColumns.js +45 -50
  89. package/components/data/table/utils/crud-handlers.js +3 -1
  90. package/components/data/table/utils/expansionColumn.js +1 -1
  91. package/components/data/table/utils/index.d.ts +10 -3
  92. package/components/data/table/utils/index.js +20 -9
  93. package/components/data/table/utils/selectionUtils.d.ts +14 -0
  94. package/components/data/table/utils/selectionUtils.js +33 -1
  95. package/components/dialogs/alert-dialog/index.d.ts +2 -0
  96. package/components/dialogs/confirm-dialog/index.d.ts +2 -0
  97. package/components/dialogs/dialog/index.d.ts +2 -0
  98. package/components/dialogs/dialog-actions/index.d.ts +1 -0
  99. package/components/dialogs/dialog-actions/index.js +11 -2
  100. package/components/dialogs/dialog-body/index.d.ts +1 -0
  101. package/components/dialogs/dialog-content/index.d.ts +1 -0
  102. package/components/dialogs/dialog-header/index.d.ts +1 -0
  103. package/components/dialogs/iframe-dialog/index.d.ts +2 -0
  104. package/components/dialogs/login-dialog/index.d.ts +2 -0
  105. package/components/dialogs/page-dialog/index.d.ts +2 -0
  106. package/components/dialogs/withDialogWrapper.js +12 -2
  107. package/components/form/button/index.d.ts +1 -0
  108. package/components/form/button-group/index.d.ts +1 -0
  109. package/components/input/calendar/index.d.ts +2 -0
  110. package/components/input/chips/index.d.ts +2 -0
  111. package/components/input/color-picker/index.d.ts +2 -0
  112. package/components/input/composite/index.d.ts +1 -0
  113. package/components/input/composite/index.js +32 -6
  114. package/components/input/default/checkbox/index.d.ts +2 -0
  115. package/components/input/default/checkboxset/index.d.ts +2 -0
  116. package/components/input/default/radioset/index.d.ts +2 -0
  117. package/components/input/default/switch/index.d.ts +2 -0
  118. package/components/input/epoch/date/index.d.ts +1 -0
  119. package/components/input/epoch/date/index.js +2 -1
  120. package/components/input/epoch/date/utils.js +4 -2
  121. package/components/input/epoch/datetime/index.d.ts +1 -0
  122. package/components/input/epoch/datetime/index.js +5 -3
  123. package/components/input/epoch/datetime/props.d.ts +2 -2
  124. package/components/input/epoch/time/index.d.ts +1 -0
  125. package/components/input/epoch/time/utils.d.ts +1 -1
  126. package/components/input/epoch/time/utils.js +2 -2
  127. package/components/input/fileupload/index.d.ts +1 -0
  128. package/components/input/fileupload/index.js +2 -1
  129. package/components/input/fileupload/useFileUpload.js +19 -24
  130. package/components/input/number/index.d.ts +2 -0
  131. package/components/input/rating/index.d.ts +2 -0
  132. package/components/input/select/index.js +6 -3
  133. package/components/input/slider/index.d.ts +2 -0
  134. package/components/input/text/index.d.ts +2 -0
  135. package/components/input/text/index.js +9 -2
  136. package/components/input/textarea/index.d.ts +2 -0
  137. package/components/input/upload/index.d.ts +2 -0
  138. package/components/navbar/index.d.ts +1 -0
  139. package/components/navbar/nav-item/index.d.ts +1 -0
  140. package/components/navigation/breadcrumb/index.d.ts +1 -0
  141. package/components/navigation/menu/index.d.ts +1 -0
  142. package/components/navigation/menu/index.js +13 -9
  143. package/components/navigation/menu/props.d.ts +1 -0
  144. package/components/navigation/popover/index.d.ts +2 -1
  145. package/components/navigation/popover/index.js +16 -4
  146. package/components/navigation/popover/props.d.ts +1 -1
  147. package/components/page/partial/index.d.ts +1 -0
  148. package/context/PopoverContext.d.ts +5 -0
  149. package/context/PopoverContext.js +5 -0
  150. package/context/WidgetProvider.js +9 -2
  151. package/core/proxy-service.d.ts +18 -1
  152. package/core/proxy-service.js +84 -14
  153. package/higherOrder/BaseApp.js +2 -1
  154. package/higherOrder/BaseDateTime.js +8 -1
  155. package/higherOrder/BasePage.js +9 -11
  156. package/higherOrder/props.d.ts +1 -0
  157. package/higherOrder/useActivePageReactivity.js +1 -4
  158. package/higherOrder/withBaseWrapper.js +6 -6
  159. package/package-lock.json +203 -185
  160. package/package.json +3 -3
  161. package/runtime-dynamic/components/PageWrapper.js +1 -1
  162. package/runtime-dynamic/components/PrefabPreview.js +1 -1
  163. package/runtime-dynamic/components/partial-content.js +17 -1
  164. package/runtime-dynamic/factories/build-base-page-like-component.js +11 -7
  165. package/runtime-dynamic/factories/dynamic-component.js +1 -7
  166. package/runtime-dynamic/routes.js +17 -8
  167. package/utils/page-params-util.js +22 -1
  168. package/utils/partial-host-util.d.ts +40 -0
  169. package/utils/partial-host-util.js +41 -0
  170. package/variables/model-variable.d.ts +2 -0
  171. package/variables/model-variable.js +14 -0
@@ -259,10 +259,7 @@ const withPageContext = (WrappedComponent, addPageScript, getVariables, componen
259
259
  pageProxyRef.current.Variables = updatedVariables;
260
260
  pageProxyRef.current.Actions = updatedActions;
261
261
  return __spreadProps(__spreadValues({}, prev), {
262
- App: __spreadProps(__spreadValues({}, prev.App), {
263
- Variables: appContext.Variables || {},
264
- Actions: appContext.Actions || {}
265
- }),
262
+ App: appProxy != null ? appProxy : prev.App,
266
263
  Variables: updatedVariables,
267
264
  Actions: updatedActions
268
265
  });
@@ -274,7 +271,6 @@ const withPageContext = (WrappedComponent, addPageScript, getVariables, componen
274
271
  }
275
272
  isInitializingRef.current = true;
276
273
  const initializeComponent = async () => {
277
- var _a2;
278
274
  try {
279
275
  overriddenPropsRegistryRef.current = createOverriddenPropsRegistry();
280
276
  const pageProxy = createStateProxy(
@@ -304,7 +300,6 @@ const withPageContext = (WrappedComponent, addPageScript, getVariables, componen
304
300
  pageProxy.pageParams = newParams;
305
301
  if ((componentInfo == null ? void 0 : componentInfo.componentType) !== "PAGE") {
306
302
  pageProxy.partialParams = newParams;
307
- (_a2 = props.onLoad) == null ? void 0 : _a2.call(props, pageProxy);
308
303
  }
309
304
  const mergedAppLocale = i18n.appLocale || {};
310
305
  if (!appProxy.appLocale) {
@@ -391,6 +386,9 @@ const withPageContext = (WrappedComponent, addPageScript, getVariables, componen
391
386
  }
392
387
  });
393
388
  subscriptionsRef.current = [];
389
+ if ((componentInfo == null ? void 0 : componentInfo.componentName) && (componentInfo == null ? void 0 : componentInfo.componentType) == "PARTIAL" && appProxy && pageProxyRef.current && appProxy[componentInfo.componentName]) {
390
+ appProxy[componentInfo.componentName] = void 0;
391
+ }
394
392
  };
395
393
  }, [shouldInitialize]);
396
394
  useEffect(() => {
@@ -609,17 +607,17 @@ const withPageContext = (WrappedComponent, addPageScript, getVariables, componen
609
607
  const pageName = (appProxy == null ? void 0 : appProxy.activePageName) || "";
610
608
  useEffect(() => {
611
609
  if ((componentInfo == null ? void 0 : componentInfo.componentType) === "PARTIAL" && pageName) {
612
- setPageContext((prev) => __spreadProps(__spreadValues({}, prev), {
613
- App: __spreadProps(__spreadValues({}, prev.App), {
614
- activePageName: pageName
615
- })
616
- }));
610
+ setPageContext((prev) => __spreadValues({}, prev));
617
611
  }
618
612
  }, [pageName]);
619
613
  useEffect(() => {
620
614
  if (isInitialized && isPageReady && isMountedRef.current && !onStartupCompletedRef.current && pageProxyRef.current) {
621
615
  const runStartup = async () => {
616
+ var _a2;
622
617
  if (!isMountedRef.current) return;
618
+ if ((componentInfo == null ? void 0 : componentInfo.componentType) !== "PAGE") {
619
+ (_a2 = props.onLoad) == null ? void 0 : _a2.call(props, pageProxyRef.current);
620
+ }
623
621
  if ((securityConfig == null ? void 0 : securityConfig.authenticated) && (appProxy == null ? void 0 : appProxy.executeSessionFailureRequests)) {
624
622
  await appProxy.executeSessionFailureRequests();
625
623
  }
@@ -15,6 +15,7 @@ export interface Props {
15
15
  width?: number | string;
16
16
  height?: number | string;
17
17
  className?: string;
18
+ class?: string;
18
19
  conditionalstyle?: CSSProperties;
19
20
  conditionalclass?: string;
20
21
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -1,7 +1,5 @@
1
1
  "use client";
2
2
  var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
3
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -17,7 +15,6 @@ var __spreadValues = (a, b) => {
17
15
  }
18
16
  return a;
19
17
  };
20
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
18
  import { useEffect, useRef } from "react";
22
19
  import { EVENTEMITTER_METHODS } from "../core/constants/events";
23
20
  const resolvePath = (root, path) => path.split(".").reduce((obj, key) => obj == null ? void 0 : obj[key], root);
@@ -41,7 +38,7 @@ const useActivePageReactivity = ({
41
38
  const next = readValues();
42
39
  if (next.some((value, i) => !Object.is(value, snapshotRef.current[i]))) {
43
40
  snapshotRef.current = next;
44
- setPageContext((prev) => __spreadProps(__spreadValues({}, prev), { App: __spreadValues({}, prev.App) }));
41
+ setPageContext((prev) => __spreadValues({}, prev));
45
42
  }
46
43
  };
47
44
  EVENTEMITTER_METHODS.ACTIVE_PAGE_SYNC_ON(onActivePageChange);
@@ -57,7 +57,6 @@ const withBaseWrapper = (WrappedComponent) => {
57
57
  }
58
58
  }, [name, pageContext == null ? void 0 : pageContext.Widgets, componentWidgetId, props]);
59
59
  const mergedProps = useMemo(() => {
60
- var _a2;
61
60
  if (!name || !(pageContext == null ? void 0 : pageContext.Widgets) || (props == null ? void 0 : props.iswidget) === "false") {
62
61
  return props;
63
62
  }
@@ -68,13 +67,13 @@ const withBaseWrapper = (WrappedComponent) => {
68
67
  let mergedState = __spreadValues({}, props);
69
68
  const registry = pageContext == null ? void 0 : pageContext.overriddenPropsRegistry;
70
69
  const widgetDatavalue = widget.datavalue;
71
- const datavalue = widgetDatavalue != null ? widgetDatavalue : props.datavalue;
70
+ const datavalue = props["item-id"] ? props.datavalue : widgetDatavalue != null ? widgetDatavalue : props.datavalue;
72
71
  if (shouldMergeFromContext && (registry == null ? void 0 : registry.isWidgetOverridden(name, componentWidgetId || "")) && !props.formfield) {
73
72
  const widgetOverrides = registry == null ? void 0 : registry.getWidgetOverrides(name, componentWidgetId || "");
74
73
  if (widgetOverrides) {
75
74
  Object.keys(widgetOverrides).forEach((key) => {
76
- var _a3;
77
- const internalValue = (_a3 = registry == null ? void 0 : registry.getLastInternalValue) == null ? void 0 : _a3.call(registry, name, key);
75
+ var _a2;
76
+ const internalValue = (_a2 = registry == null ? void 0 : registry.getLastInternalValue) == null ? void 0 : _a2.call(registry, name, key);
78
77
  mergedState[key] = internalValue !== void 0 ? internalValue : widgetOverrides[key];
79
78
  if (props.prefab && key !== "inbound" && key !== "outbound" && key !== "show") {
80
79
  const updatedInbound = __spreadProps(__spreadValues({}, props.inbound), {
@@ -95,7 +94,7 @@ const withBaseWrapper = (WrappedComponent) => {
95
94
  });
96
95
  }
97
96
  } else if (shouldMergeFromContext) {
98
- mergedState = __spreadValues(__spreadValues(__spreadValues(__spreadValues({}, widget), props), (props == null ? void 0 : props.formfield) ? { datavalue: props.datavalue } : { datavalue: (_a2 = props.datavalue) != null ? _a2 : widgetDatavalue }), component === "WmFormField" && !props["value"] && { value: datavalue, datavalue });
97
+ mergedState = __spreadValues(__spreadValues(__spreadValues(__spreadValues({}, widget), props), (props == null ? void 0 : props.formfield) ? { datavalue: props.datavalue } : { datavalue: datavalue != null ? datavalue : widgetDatavalue }), component === "WmFormField" && !props["value"] && { value: datavalue, datavalue });
99
98
  } else {
100
99
  mergedState = __spreadValues(__spreadValues({}, props), component === "WmFormField" && !props["value"] && { value: datavalue, datavalue });
101
100
  }
@@ -142,10 +141,11 @@ const withBaseWrapper = (WrappedComponent) => {
142
141
  const computedClassName = useMemo(() => {
143
142
  return [
144
143
  props.className,
144
+ mergedProps.class,
145
145
  props.conditionalclass,
146
146
  props.animation && `animated ${props.animation}`
147
147
  ].filter(Boolean).join(" ");
148
- }, [props.className, props.conditionalclass, props.animation]);
148
+ }, [props.className, mergedProps.class, props.conditionalclass, props.animation]);
149
149
  if (isHidden) return null;
150
150
  const isDeferLoad = deferload === true;
151
151
  const showValue = ((_c = mergedProps == null ? void 0 : mergedProps.show) == null ? void 0 : _c.toString()) !== "false";