@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
@@ -1,9 +1,18 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
+ import clsx from "clsx";
2
3
  import DialogActions from "@mui/material/DialogActions";
3
4
  import withBaseWrapper from "../../../higherOrder/withBaseWrapper";
4
5
  const WmDialogFooter = (props) => {
5
- const { children } = props;
6
- return /* @__PURE__ */ jsx(DialogActions, { className: "app-dialog-footer modal-footer", children });
6
+ const { children, className, styles, hidden } = props;
7
+ return /* @__PURE__ */ jsx(
8
+ DialogActions,
9
+ {
10
+ className: clsx("app-dialog-footer modal-footer", className),
11
+ style: styles,
12
+ hidden: hidden != null ? hidden : false,
13
+ children
14
+ }
15
+ );
7
16
  };
8
17
  WmDialogFooter.displayName = "WmDialogFooter";
9
18
  var dialog_actions_default = withBaseWrapper(WmDialogFooter);
@@ -23,6 +23,7 @@ declare const _default: import("react").ComponentType<{
23
23
  width?: number | string;
24
24
  height?: number | string;
25
25
  className?: string;
26
+ class?: string;
26
27
  conditionalstyle?: import("react").CSSProperties;
27
28
  conditionalclass?: string;
28
29
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -26,6 +26,7 @@ declare const _default: import("react").ComponentType<{
26
26
  width?: number | string;
27
27
  height?: number | string;
28
28
  className?: string;
29
+ class?: string;
29
30
  conditionalstyle?: import("react").CSSProperties;
30
31
  conditionalclass?: string;
31
32
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -40,6 +40,7 @@ declare const _default: React.ComponentType<{
40
40
  width?: number | string;
41
41
  height?: number | string;
42
42
  className?: string;
43
+ class?: string;
43
44
  conditionalstyle?: React.CSSProperties;
44
45
  conditionalclass?: string;
45
46
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -39,6 +39,7 @@ declare const WmIframeDialogStandalone: {
39
39
  width?: number | string;
40
40
  height?: number | string;
41
41
  className?: string;
42
+ class?: string;
42
43
  conditionalstyle?: React.CSSProperties;
43
44
  conditionalclass?: string;
44
45
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -135,6 +136,7 @@ declare const _default: {
135
136
  width?: number | string;
136
137
  height?: number | string;
137
138
  className?: string;
139
+ class?: string;
138
140
  conditionalstyle?: React.CSSProperties;
139
141
  conditionalclass?: string;
140
142
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -38,6 +38,7 @@ declare const WmLoginDialogStandalone: {
38
38
  width?: number | string;
39
39
  height?: number | string;
40
40
  className?: string;
41
+ class?: string;
41
42
  conditionalstyle?: React.CSSProperties;
42
43
  conditionalclass?: string;
43
44
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -123,6 +124,7 @@ declare const _default: {
123
124
  width?: number | string;
124
125
  height?: number | string;
125
126
  className?: string;
127
+ class?: string;
126
128
  conditionalstyle?: React.CSSProperties;
127
129
  conditionalclass?: string;
128
130
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -33,6 +33,7 @@ declare const WmPageDialogStandalone: {
33
33
  width?: number | string;
34
34
  height?: number | string;
35
35
  className?: string;
36
+ class?: string;
36
37
  conditionalstyle?: React.CSSProperties;
37
38
  conditionalclass?: string;
38
39
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -122,6 +123,7 @@ declare const _default: {
122
123
  width?: number | string;
123
124
  height?: number | string;
124
125
  className?: string;
126
+ class?: string;
125
127
  conditionalstyle?: React.CSSProperties;
126
128
  conditionalclass?: string;
127
129
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -30,8 +30,9 @@ var __objRest = (source, exclude) => {
30
30
  return target;
31
31
  };
32
32
  import { jsx } from "react/jsx-runtime";
33
- import { useCallback, useState, useEffect, useMemo, useRef } from "react";
33
+ import { useCallback, useState, useEffect, useMemo, useRef, useContext } from "react";
34
34
  import DialogService from "../../core/dialog.service";
35
+ import { PopoverContext } from "../../context/PopoverContext";
35
36
  const BaseDialog = (Component) => {
36
37
  const WrappedComponent = (props) => {
37
38
  const _a = props, {
@@ -52,6 +53,8 @@ const BaseDialog = (Component) => {
52
53
  "appLocale"
53
54
  ]);
54
55
  const [dialogOpen, setDialogOpen] = useState(!!isopen);
56
+ const popoverContext = useContext(PopoverContext);
57
+ const wasDialogOpenRef = useRef(!!isopen);
55
58
  const appLocaleMessages = useMemo(
56
59
  () => {
57
60
  var _a2;
@@ -65,15 +68,22 @@ const BaseDialog = (Component) => {
65
68
  setDialogOpen(!!isopen);
66
69
  isDialogOpenRef.current = !!isopen;
67
70
  }, [isopen]);
71
+ useEffect(() => {
72
+ if (wasDialogOpenRef.current && !dialogOpen) {
73
+ popoverContext == null ? void 0 : popoverContext.onDialogClose();
74
+ }
75
+ wasDialogOpenRef.current = dialogOpen;
76
+ }, [dialogOpen, popoverContext]);
68
77
  const handleTransitionEntered = useCallback(() => {
69
78
  if (onOpened) {
70
79
  onOpened();
71
80
  }
72
81
  }, [onOpened]);
73
82
  const handleOpen = useCallback(() => {
83
+ popoverContext == null ? void 0 : popoverContext.closeForDialog();
74
84
  setDialogOpen(true);
75
85
  isDialogOpenRef.current = true;
76
- }, []);
86
+ }, [popoverContext]);
77
87
  const handleClose = useCallback(
78
88
  (event) => {
79
89
  if (isDialogOpenRef.current) {
@@ -34,6 +34,7 @@ declare const _default: import("react").ComponentType<{
34
34
  width?: number | string;
35
35
  height?: number | string;
36
36
  className?: string;
37
+ class?: string;
37
38
  conditionalstyle?: import("react").CSSProperties;
38
39
  conditionalclass?: string;
39
40
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -26,6 +26,7 @@ declare const _default: React.ComponentType<{
26
26
  width?: number | string;
27
27
  height?: number | string;
28
28
  className?: string;
29
+ class?: string;
29
30
  conditionalstyle?: React.CSSProperties;
30
31
  conditionalclass?: string;
31
32
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -29,6 +29,7 @@ export declare const WmCalendar: React.ForwardRefExoticComponent<Omit<{
29
29
  width?: number | string;
30
30
  height?: number | string;
31
31
  className?: string;
32
+ class?: string;
32
33
  conditionalstyle?: React.CSSProperties;
33
34
  conditionalclass?: string;
34
35
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -89,6 +90,7 @@ declare const _default: React.ComponentType<{
89
90
  width?: number | string;
90
91
  height?: number | string;
91
92
  className?: string;
93
+ class?: string;
92
94
  conditionalstyle?: React.CSSProperties;
93
95
  conditionalclass?: string;
94
96
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -62,6 +62,7 @@ declare const WmChipsStandalone: React.ComponentType<import("../../data/form/for
62
62
  width?: number | string;
63
63
  height?: number | string;
64
64
  className?: string;
65
+ class?: string;
65
66
  conditionalstyle?: React.CSSProperties;
66
67
  conditionalclass?: string;
67
68
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -188,6 +189,7 @@ declare const _default: React.ComponentType<{
188
189
  width?: number | string;
189
190
  height?: number | string;
190
191
  className?: string;
192
+ class?: string;
191
193
  conditionalstyle?: React.CSSProperties;
192
194
  conditionalclass?: string;
193
195
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -29,6 +29,7 @@ declare const WmColorPickerStandalone: React.ComponentType<import("../../data/fo
29
29
  width?: number | string;
30
30
  height?: number | string;
31
31
  className?: string;
32
+ class?: string;
32
33
  conditionalstyle?: React.CSSProperties;
33
34
  conditionalclass?: string;
34
35
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -118,6 +119,7 @@ declare const _default: React.ComponentType<{
118
119
  width?: number | string;
119
120
  height?: number | string;
120
121
  className?: string;
122
+ class?: string;
121
123
  conditionalstyle?: React.CSSProperties;
122
124
  conditionalclass?: string;
123
125
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -26,6 +26,7 @@ declare const _default: React.ComponentType<{
26
26
  width?: number | string;
27
27
  height?: number | string;
28
28
  className?: string;
29
+ class?: string;
29
30
  conditionalstyle?: React.CSSProperties;
30
31
  conditionalclass?: string;
31
32
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -10,6 +10,7 @@ const CAPTION_POSITION = {
10
10
  top: "caption-top",
11
11
  floating: "caption-floating"
12
12
  };
13
+ const getPlaceholderOption = (input) => input instanceof HTMLSelectElement ? input.querySelector("#placeholderOption") : null;
13
14
  function WmComposite(props) {
14
15
  const { children, styles, className, captionposition = "left", id, required } = props;
15
16
  const containerRef = useRef(null);
@@ -17,6 +18,11 @@ function WmComposite(props) {
17
18
  const hasInputValue = useCallback(
18
19
  (input) => {
19
20
  var _a;
21
+ if (input instanceof HTMLSelectElement) {
22
+ return Array.from(input.selectedOptions).some(
23
+ (option) => option.id !== "placeholderOption" && Boolean(option.value.trim())
24
+ );
25
+ }
20
26
  return Boolean((_a = input.value) == null ? void 0 : _a.trim());
21
27
  },
22
28
  []
@@ -32,7 +38,12 @@ function WmComposite(props) {
32
38
  const target = event.target;
33
39
  const originalPlaceholder = target.getAttribute("data-original-placeholder");
34
40
  if (originalPlaceholder) {
35
- target.setAttribute("placeholder", originalPlaceholder);
41
+ const placeholderOption = getPlaceholderOption(target);
42
+ if (placeholderOption) {
43
+ placeholderOption.textContent = originalPlaceholder;
44
+ } else {
45
+ target.setAttribute("placeholder", originalPlaceholder);
46
+ }
36
47
  }
37
48
  },
38
49
  [isFloating, toggleFloatActive]
@@ -42,21 +53,31 @@ function WmComposite(props) {
42
53
  if (!isFloating) return;
43
54
  const target = event.target;
44
55
  toggleFloatActive(hasInputValue(target));
45
- target.setAttribute("placeholder", "");
56
+ const placeholderOption = getPlaceholderOption(target);
57
+ if (placeholderOption) {
58
+ placeholderOption.textContent = "";
59
+ } else {
60
+ target.setAttribute("placeholder", "");
61
+ }
46
62
  },
47
63
  [isFloating, toggleFloatActive, hasInputValue]
48
64
  );
49
65
  useEffect(() => {
50
66
  if (!isFloating || !containerRef.current) return;
51
67
  const container = containerRef.current;
52
- const INPUT_SELECTOR = "input, select, textarea";
68
+ const INPUT_SELECTOR = 'input, select, textarea:not([aria-hidden="true"])';
53
69
  const inputElements = container.querySelectorAll(INPUT_SELECTOR);
54
70
  if (inputElements.length === 0) return;
55
71
  inputElements.forEach((input) => {
56
- const originalPlaceholder = input.getAttribute("placeholder");
72
+ const placeholderOption = getPlaceholderOption(input);
73
+ const originalPlaceholder = (placeholderOption == null ? void 0 : placeholderOption.textContent) || input.getAttribute("placeholder");
57
74
  if (originalPlaceholder) {
58
75
  input.setAttribute("data-original-placeholder", originalPlaceholder);
59
- input.setAttribute("placeholder", "");
76
+ if (placeholderOption) {
77
+ placeholderOption.textContent = "";
78
+ } else {
79
+ input.setAttribute("placeholder", "");
80
+ }
60
81
  }
61
82
  if (hasInputValue(input)) {
62
83
  toggleFloatActive(true);
@@ -68,7 +89,12 @@ function WmComposite(props) {
68
89
  inputElements.forEach((input) => {
69
90
  const originalPlaceholder = input.getAttribute("data-original-placeholder");
70
91
  if (originalPlaceholder) {
71
- input.setAttribute("placeholder", originalPlaceholder);
92
+ const placeholderOption = getPlaceholderOption(input);
93
+ if (placeholderOption) {
94
+ placeholderOption.textContent = originalPlaceholder;
95
+ } else {
96
+ input.setAttribute("placeholder", originalPlaceholder);
97
+ }
72
98
  input.removeAttribute("data-original-placeholder");
73
99
  }
74
100
  input.removeEventListener("focus", handleFocus);
@@ -28,6 +28,7 @@ declare const WmCheckboxStandalone: React.ComponentType<import("../../../data/fo
28
28
  width?: number | string;
29
29
  height?: number | string;
30
30
  className?: string;
31
+ class?: string;
31
32
  conditionalstyle?: React.CSSProperties;
32
33
  conditionalclass?: string;
33
34
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -119,6 +120,7 @@ declare const _default: React.ComponentType<{
119
120
  width?: number | string;
120
121
  height?: number | string;
121
122
  className?: string;
123
+ class?: string;
122
124
  conditionalstyle?: React.CSSProperties;
123
125
  conditionalclass?: string;
124
126
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -50,6 +50,7 @@ declare const WmCheckboxsetStandalone: React.ComponentType<import("../../../data
50
50
  padding?: string;
51
51
  margin?: string;
52
52
  className?: string;
53
+ class?: string;
53
54
  conditionalstyle?: React.CSSProperties;
54
55
  conditionalclass?: string;
55
56
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -160,6 +161,7 @@ declare const _default: React.ComponentType<{
160
161
  padding?: string;
161
162
  margin?: string;
162
163
  className?: string;
164
+ class?: string;
163
165
  conditionalstyle?: React.CSSProperties;
164
166
  conditionalclass?: string;
165
167
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -43,6 +43,7 @@ declare const WmRadiosetStandalone: React.ComponentType<import("../../../data/fo
43
43
  width?: number | string;
44
44
  height?: number | string;
45
45
  className?: string;
46
+ class?: string;
46
47
  conditionalstyle?: React.CSSProperties;
47
48
  conditionalclass?: string;
48
49
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -149,6 +150,7 @@ declare const _default: React.ComponentType<{
149
150
  width?: number | string;
150
151
  height?: number | string;
151
152
  className?: string;
153
+ class?: string;
152
154
  conditionalstyle?: React.CSSProperties;
153
155
  conditionalclass?: string;
154
156
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -43,6 +43,7 @@ declare const WmSwitchStandalone: React.ComponentType<import("../../../data/form
43
43
  width?: number | string;
44
44
  height?: number | string;
45
45
  className?: string;
46
+ class?: string;
46
47
  conditionalstyle?: React.CSSProperties;
47
48
  conditionalclass?: string;
48
49
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -145,6 +146,7 @@ declare const _default: React.ComponentType<{
145
146
  width?: number | string;
146
147
  height?: number | string;
147
148
  className?: string;
149
+ class?: string;
148
150
  conditionalstyle?: React.CSSProperties;
149
151
  conditionalclass?: string;
150
152
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -20,6 +20,7 @@ declare const _default: React.ComponentType<{
20
20
  width?: number | string;
21
21
  height?: number | string;
22
22
  className?: string;
23
+ class?: string;
23
24
  conditionalstyle?: React.CSSProperties;
24
25
  conditionalclass?: string;
25
26
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -153,7 +153,7 @@ const WmDate = forwardRef((props, ref) => {
153
153
  () => {
154
154
  var _a2;
155
155
  return [
156
- defaultDateFormat || ((_a2 = listener == null ? void 0 : listener.localeFormats) == null ? void 0 : _a2.date) || "MMM d, y",
156
+ defaultDateFormat || ((_a2 = listener == null ? void 0 : listener.localeFormats) == null ? void 0 : _a2.date) || "yyyy-MM-dd",
157
157
  selectedLocale || (listener == null ? void 0 : listener.selectedLocale) || "en"
158
158
  ];
159
159
  },
@@ -255,6 +255,7 @@ const WmDate = forwardRef((props, ref) => {
255
255
  if (!dateValue) return "";
256
256
  try {
257
257
  const momentDate = moment(dateValue).locale(currentLocale);
258
+ if (!momentDate.isValid()) return "";
258
259
  const momentPattern = convertToMomentFormat(datepattern);
259
260
  return momentDate.format(momentPattern);
260
261
  } catch (e) {
@@ -57,10 +57,12 @@ const parseExcludedDates = (excludedates, getDateObj) => {
57
57
  };
58
58
  const defaultGetDateObj = (date) => {
59
59
  if (!date) return null;
60
- if (date instanceof Date) return date;
60
+ if (date instanceof Date) return isNaN(date.getTime()) ? null : date;
61
61
  if (typeof date === "string") {
62
62
  const parsedDate = moment(date).toDate();
63
- return isNaN(parsedDate.getTime()) ? new Date(date) : parsedDate;
63
+ if (!isNaN(parsedDate.getTime())) return parsedDate;
64
+ const fallbackDate = new Date(date);
65
+ return isNaN(fallbackDate.getTime()) ? null : fallbackDate;
64
66
  }
65
67
  return null;
66
68
  };
@@ -20,6 +20,7 @@ declare const _default: React.ComponentType<{
20
20
  width?: number | string;
21
21
  height?: number | string;
22
22
  className?: string;
23
+ class?: string;
23
24
  conditionalstyle?: React.CSSProperties;
24
25
  conditionalclass?: string;
25
26
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -96,8 +96,8 @@ const WmDateTime = memo(
96
96
  const defaultDateTimeFormat = useMemo(() => {
97
97
  const combinedFromParts = () => {
98
98
  var _a2, _b2;
99
- const datePart = defaultDateFormat || ((_a2 = listener == null ? void 0 : listener.localeFormats) == null ? void 0 : _a2.date) || "MMM d, y";
100
- const timePart = defaultTimeFormat || ((_b2 = listener == null ? void 0 : listener.localeFormats) == null ? void 0 : _b2.time) || "h:mm:ss a";
99
+ const datePart = defaultDateFormat || ((_a2 = listener == null ? void 0 : listener.localeFormats) == null ? void 0 : _a2.date) || "yyyy-MM-dd";
100
+ const timePart = defaultTimeFormat || ((_b2 = listener == null ? void 0 : listener.localeFormats) == null ? void 0 : _b2.time) || "hh:mm a";
101
101
  return `${datePart} ${timePart}`;
102
102
  };
103
103
  return combinedFromParts();
@@ -586,10 +586,12 @@ const WmDateTime = memo(
586
586
  },
587
587
  InputLabelProps: {
588
588
  shrink: floatinglabel ? void 0 : false,
589
- className: floatinglabel ? "wm-datetime-input-label" : void 0
589
+ className: floatinglabel ? "wm-datetime-input-label" : void 0,
590
+ sx: floatinglabel ? { ".app-composite-widget.caption-floating &": { display: "none" } } : void 0
590
591
  },
591
592
  inputProps: __spreadValues(__spreadValues({
592
593
  accessKey: shortcutkey,
594
+ "aria-label": arialabel || floatinglabel,
593
595
  "aria-invalid": invalidFormat || dateNotInRange,
594
596
  className: "form-control app-textbox display-input wm-datetime-html-input"
595
597
  }, disabled ? { disabled: true } : {}), readonly ? { readOnly: true } : {}),
@@ -45,12 +45,12 @@ export interface DateTimeProps {
45
45
  defaultDateTimeFormat?: string;
46
46
  /**
47
47
  * Default date segment for display when `datepattern` is unset and `defaultDateTimeFormat` is not set.
48
- * Falls back to `listener.localeFormats.date`, then `"MMM d, y"`.
48
+ * Falls back to `listener.localeFormats.date`, then `"yyyy-MM-dd"`.
49
49
  */
50
50
  defaultDateFormat?: string;
51
51
  /**
52
52
  * Default time segment for display when `datepattern` is unset and `defaultDateTimeFormat` is not set.
53
- * Falls back to `listener.localeFormats.time`, then `"h:mm:ss a"`.
53
+ * Falls back to `listener.localeFormats.time`, then `"hh:mm a"`.
54
54
  */
55
55
  defaultTimeFormat?: string;
56
56
  /**
@@ -20,6 +20,7 @@ declare const _default: React.ComponentType<{
20
20
  width?: number | string;
21
21
  height?: number | string;
22
22
  className?: string;
23
+ class?: string;
23
24
  conditionalstyle?: React.CSSProperties;
24
25
  conditionalclass?: string;
25
26
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -9,7 +9,7 @@ export declare function validateTimeRange(timeValue: Date | moment.Moment | null
9
9
  export declare function validateTimeFormat(inputValue: string, pattern: string, required: boolean, validationmessage?: string): ValidationResult;
10
10
  export declare function parseTimeObj(timeValue: string | Date | null | undefined): Date | null;
11
11
  export declare const DEFAULT_CLASS = "input-group app-timeinput";
12
- export declare const DEFAULT_TIMEPATTERN = "h:mm:ss A";
12
+ export declare const DEFAULT_TIMEPATTERN = "hh:mm a";
13
13
  export declare const DEFAULT_OUTPUT_FORMAT = "HH:mm:ss";
14
14
  export declare const READONLY_STYLES: {
15
15
  cursor: string;
@@ -76,7 +76,7 @@ function formatDisplayTimeValue(value, pattern) {
76
76
  if (pattern === "timestamp") {
77
77
  return momentObj.valueOf().toString();
78
78
  }
79
- return momentObj.isValid() ? momentObj.format(pattern) : "";
79
+ return momentObj.isValid() ? momentObj.format(pattern.replace(/\ba\b/g, "A")) : "";
80
80
  } catch (error) {
81
81
  console.warn("Error formatting display value:", error);
82
82
  return "";
@@ -178,7 +178,7 @@ function parseTimeObj(timeValue) {
178
178
  }
179
179
  }
180
180
  const DEFAULT_CLASS = "input-group app-timeinput";
181
- const DEFAULT_TIMEPATTERN = "h:mm:ss A";
181
+ const DEFAULT_TIMEPATTERN = "hh:mm a";
182
182
  const DEFAULT_OUTPUT_FORMAT = "HH:mm:ss";
183
183
  const READONLY_STYLES = {
184
184
  cursor: "not-allowed"
@@ -52,6 +52,7 @@ declare const _default: React.ComponentType<{
52
52
  width?: number | string;
53
53
  height?: number | string;
54
54
  className?: string;
55
+ class?: string;
55
56
  conditionalstyle?: React.CSSProperties;
56
57
  conditionalclass?: string;
57
58
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -250,7 +250,8 @@ const WmFileUpload = memo(
250
250
  "onDelete",
251
251
  "onBeforedelete",
252
252
  "onError",
253
- "hidden"
253
+ "hidden",
254
+ "className"
254
255
  ];
255
256
  const propsChanged = keysToCheck.some((key) => prevProps[key] !== nextProps[key]);
256
257
  const filesChanged = prevProps.datasource !== nextProps.datasource || prevProps.deletedatasource !== nextProps.deletedatasource;
@@ -30,7 +30,6 @@ const useFileUpload = (props) => {
30
30
  disabled = !fileUploadConstants.DEFAULT_VALUES.ENABLED,
31
31
  contenttype = "",
32
32
  maxfilesize,
33
- uploadpath,
34
33
  datasource,
35
34
  extensions,
36
35
  filetype,
@@ -104,7 +103,7 @@ const useFileUpload = (props) => {
104
103
  const eventHandler = (_b2 = (_a2 = listener == null ? void 0 : listener.Widgets) == null ? void 0 : _a2[name]) == null ? void 0 : _b2[eventName];
105
104
  return eventHandler ? eventHandler(payload.$event, listener.Widgets[name], payload.files) || true : true;
106
105
  },
107
- [listener, name]
106
+ [name]
108
107
  );
109
108
  const fileUploadProgress = (progress) => {
110
109
  setUploadedFiles((prevFiles) => {
@@ -125,26 +124,18 @@ const useFileUpload = (props) => {
125
124
  });
126
125
  });
127
126
  };
128
- useEffect(() => {
129
- const progressObs = datasource && datasource._progressObservable;
130
- if (progressObs) {
131
- progressObs.subscribe((progress) => {
132
- var _a2, _b2;
133
- fileUploadProgress(progress);
134
- if (progress.progress === 100) {
135
- (_a2 = listener == null ? void 0 : listener.App) == null ? void 0 : _a2.notifyApp("File uploaded successfully", "Success");
136
- } else if (progress.errMsg) {
137
- (_b2 = listener == null ? void 0 : listener.App) == null ? void 0 : _b2.notifyApp("File upload failed", "Error");
138
- }
139
- });
140
- }
141
- return () => {
142
- const progressObs2 = datasource && datasource._progressObservable;
143
- if (progressObs2 == null ? void 0 : progressObs2.unsubscribe) {
144
- progressObs2.unsubscribe();
127
+ const subscribeToProgress = useCallback((progressObs) => {
128
+ if (!progressObs) return;
129
+ progressObs.subscribe((progress) => {
130
+ var _a2, _b2;
131
+ fileUploadProgress(progress);
132
+ if (progress.progress === 100) {
133
+ (_a2 = listener == null ? void 0 : listener.App) == null ? void 0 : _a2.notifyApp("File uploaded successfully", "Success");
134
+ } else if (progress.errMsg) {
135
+ (_b2 = listener == null ? void 0 : listener.App) == null ? void 0 : _b2.notifyApp("File upload failed", "Error");
145
136
  }
146
- };
147
- }, [invokeEventCallback]);
137
+ });
138
+ }, []);
148
139
  useEffect(() => {
149
140
  const selected = getChooseFilter();
150
141
  setChooseFilter(selected);
@@ -193,7 +184,7 @@ const useFileUpload = (props) => {
193
184
  window.removeEventListener("focus", disableDropZone);
194
185
  };
195
186
  const onBeforeSelectEventCall = ($event, $files) => {
196
- var _a2, _b2, _c, _d;
187
+ var _a2, _b2;
197
188
  const files = getValidFiles(
198
189
  $files,
199
190
  contenttype,
@@ -237,14 +228,18 @@ const useFileUpload = (props) => {
237
228
  });
238
229
  if (datasource) {
239
230
  datasource._progressObservable = eventObserver();
231
+ subscribeToProgress(datasource._progressObservable);
240
232
  datasource.dataBinding = datasource.dataBinding || {};
241
233
  datasource.dataBinding.files = filesWithIds;
242
234
  datasource.dataSet = filesWithIds;
243
235
  }
244
236
  setUploadedFiles((prev) => multiple ? [...prev, ...filesWithIds] : [...filesWithIds]);
245
237
  listener == null ? void 0 : listener.onChange(name, { selectedFiles: filesWithIds });
246
- const selectedFile = (_d = filesWithIds[0]) != null ? _d : (_c = (_b2 = fileInputRef.current) == null ? void 0 : _b2.files) == null ? void 0 : _c[0];
247
- onSelect == null ? void 0 : onSelect($event, selectedFile, filesWithIds);
238
+ onSelect == null ? void 0 : onSelect(
239
+ $event,
240
+ (_b2 = listener == null ? void 0 : listener.Widgets) == null ? void 0 : _b2[name],
241
+ filesWithIds
242
+ );
248
243
  }
249
244
  }
250
245
  };
@@ -35,6 +35,7 @@ declare const WmNumberStandalone: React.ComponentType<import("../../data/form/fo
35
35
  width?: number | string;
36
36
  height?: number | string;
37
37
  className?: string;
38
+ class?: string;
38
39
  conditionalstyle?: React.CSSProperties;
39
40
  conditionalclass?: string;
40
41
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -132,6 +133,7 @@ declare const _default: React.ComponentType<{
132
133
  width?: number | string;
133
134
  height?: number | string;
134
135
  className?: string;
136
+ class?: string;
135
137
  conditionalstyle?: React.CSSProperties;
136
138
  conditionalclass?: string;
137
139
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -56,6 +56,7 @@ declare const WmRatingStandalone: React.ComponentType<import("../../data/form/fo
56
56
  width?: number | string;
57
57
  height?: number | string;
58
58
  className?: string;
59
+ class?: string;
59
60
  conditionalstyle?: React.CSSProperties;
60
61
  conditionalclass?: string;
61
62
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -176,6 +177,7 @@ declare const _default: React.ComponentType<{
176
177
  width?: number | string;
177
178
  height?: number | string;
178
179
  className?: string;
180
+ class?: string;
179
181
  conditionalstyle?: React.CSSProperties;
180
182
  conditionalclass?: string;
181
183
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];