@wavemaker-ai/react-runtime 1.0.0-rc.332 → 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 (147) hide show
  1. package/components/advanced/carousel/index.d.ts +1 -0
  2. package/components/advanced/carousel/template.d.ts +1 -0
  3. package/components/advanced/login/index.d.ts +1 -0
  4. package/components/advanced/marquee/index.d.ts +1 -0
  5. package/components/basic/anchor/index.d.ts +1 -0
  6. package/components/basic/anchor/index.js +3 -5
  7. package/components/basic/audio/index.d.ts +1 -0
  8. package/components/basic/html/index.d.ts +1 -0
  9. package/components/basic/icon/index.d.ts +1 -0
  10. package/components/basic/iframe/index.d.ts +1 -0
  11. package/components/basic/label/index.d.ts +1 -0
  12. package/components/basic/picture/index.d.ts +1 -0
  13. package/components/basic/progress-bar/index.d.ts +1 -0
  14. package/components/basic/progress-circle/index.d.ts +1 -0
  15. package/components/basic/richtexteditor/index.d.ts +2 -0
  16. package/components/basic/spinner/index.d.ts +1 -0
  17. package/components/basic/tile/index.d.ts +1 -0
  18. package/components/basic/tree/index.d.ts +1 -0
  19. package/components/basic/video/index.d.ts +1 -0
  20. package/components/chart/index.d.ts +1 -0
  21. package/components/container/accordion/accordion-pane/index.d.ts +1 -0
  22. package/components/container/accordion/index.d.ts +1 -0
  23. package/components/container/index.d.ts +4 -0
  24. package/components/container/index.js +33 -9
  25. package/components/container/layout-grid/grid-column/index.d.ts +1 -0
  26. package/components/container/layout-grid/grid-row/index.d.ts +1 -0
  27. package/components/container/layout-grid/index.d.ts +1 -0
  28. package/components/container/layout-grid/index.js +1 -1
  29. package/components/container/linear-layout/index.d.ts +1 -0
  30. package/components/container/linear-layout/linear-layout-item/index.d.ts +1 -0
  31. package/components/container/panel/index.d.ts +1 -0
  32. package/components/container/props.d.ts +1 -0
  33. package/components/container/repeat-template/index.d.ts +1 -0
  34. package/components/container/repeat-template/index.js +1 -1
  35. package/components/container/tabs/index.d.ts +1 -0
  36. package/components/container/tabs/index.js +8 -6
  37. package/components/container/tabs/tab-pane/index.d.ts +1 -0
  38. package/components/container/tabs/tab-pane/index.js +2 -2
  39. package/components/container/wizard/index.d.ts +2 -0
  40. package/components/container/wizard/index.js +56 -40
  41. package/components/container/wizard/wizard-step/index.d.ts +1 -0
  42. package/components/data/card/card-actions/index.d.ts +1 -0
  43. package/components/data/card/card-content/index.d.ts +1 -0
  44. package/components/data/card/card-footer/index.d.ts +1 -0
  45. package/components/data/card/index.d.ts +1 -0
  46. package/components/data/form/base-form/hooks/useFormOperations.d.ts +1 -1
  47. package/components/data/form/base-form/hooks/useFormOperations.js +5 -2
  48. package/components/data/form/base-form/index.js +10 -14
  49. package/components/data/form/base-form/props.d.ts +1 -0
  50. package/components/data/form/form-action/index.d.ts +2 -0
  51. package/components/data/form/form-controller/withFormController.js +16 -3
  52. package/components/data/form/form-field/index.js +35 -11
  53. package/components/data/form/form-field/props.d.ts +7 -2
  54. package/components/data/list/index.d.ts +2 -0
  55. package/components/data/list/index.js +4 -9
  56. package/components/data/pagination/hooks/usePagination.js +6 -6
  57. package/components/data/table/components/RowExpansionButton.js +5 -1
  58. package/components/data/table/components/TableBody.js +2 -0
  59. package/components/data/table/components/TableHeader.js +3 -1
  60. package/components/data/table/hooks/useFormWidget.js +2 -2
  61. package/components/data/table/hooks/usePanelStructure.js +6 -1
  62. package/components/data/table/hooks/useResponsiveColumns.d.ts +1 -0
  63. package/components/data/table/hooks/useRowHandlers.js +1 -1
  64. package/components/data/table/hooks/useRowSelection.js +7 -3
  65. package/components/data/table/hooks/useTableData.js +10 -2
  66. package/components/data/table/index.d.ts +2 -0
  67. package/components/data/table/index.js +14 -13
  68. package/components/data/table/live-table/index.d.ts +1 -0
  69. package/components/data/table/props.d.ts +1 -0
  70. package/components/data/table/table-action/index.d.ts +1 -0
  71. package/components/data/table/table-column/index.d.ts +1 -0
  72. package/components/data/table/table-row/index.d.ts +1 -0
  73. package/components/data/table/table-row-action/index.d.ts +1 -0
  74. package/components/data/table/utils/buildSelectionColumns.js +17 -22
  75. package/components/data/table/utils/crud-handlers.js +3 -1
  76. package/components/data/table/utils/expansionColumn.js +1 -1
  77. package/components/data/table/utils/index.d.ts +10 -3
  78. package/components/data/table/utils/index.js +5 -8
  79. package/components/data/table/utils/selectionUtils.d.ts +12 -0
  80. package/components/data/table/utils/selectionUtils.js +10 -0
  81. package/components/dialogs/alert-dialog/index.d.ts +2 -0
  82. package/components/dialogs/confirm-dialog/index.d.ts +2 -0
  83. package/components/dialogs/dialog/index.d.ts +2 -0
  84. package/components/dialogs/dialog-actions/index.d.ts +1 -0
  85. package/components/dialogs/dialog-body/index.d.ts +1 -0
  86. package/components/dialogs/dialog-content/index.d.ts +1 -0
  87. package/components/dialogs/dialog-header/index.d.ts +1 -0
  88. package/components/dialogs/iframe-dialog/index.d.ts +2 -0
  89. package/components/dialogs/login-dialog/index.d.ts +2 -0
  90. package/components/dialogs/page-dialog/index.d.ts +2 -0
  91. package/components/dialogs/withDialogWrapper.js +12 -2
  92. package/components/form/button/index.d.ts +1 -0
  93. package/components/form/button-group/index.d.ts +1 -0
  94. package/components/input/calendar/index.d.ts +2 -0
  95. package/components/input/chips/index.d.ts +2 -0
  96. package/components/input/color-picker/index.d.ts +2 -0
  97. package/components/input/composite/index.d.ts +1 -0
  98. package/components/input/composite/index.js +32 -6
  99. package/components/input/default/checkbox/index.d.ts +2 -0
  100. package/components/input/default/checkboxset/index.d.ts +2 -0
  101. package/components/input/default/radioset/index.d.ts +2 -0
  102. package/components/input/default/switch/index.d.ts +2 -0
  103. package/components/input/epoch/date/index.d.ts +1 -0
  104. package/components/input/epoch/datetime/index.d.ts +1 -0
  105. package/components/input/epoch/datetime/index.js +3 -1
  106. package/components/input/epoch/time/index.d.ts +1 -0
  107. package/components/input/fileupload/index.d.ts +1 -0
  108. package/components/input/fileupload/index.js +2 -1
  109. package/components/input/number/index.d.ts +2 -0
  110. package/components/input/rating/index.d.ts +2 -0
  111. package/components/input/slider/index.d.ts +2 -0
  112. package/components/input/text/index.d.ts +2 -0
  113. package/components/input/text/index.js +9 -2
  114. package/components/input/textarea/index.d.ts +2 -0
  115. package/components/input/upload/index.d.ts +2 -0
  116. package/components/navbar/index.d.ts +1 -0
  117. package/components/navbar/nav-item/index.d.ts +1 -0
  118. package/components/navigation/breadcrumb/index.d.ts +1 -0
  119. package/components/navigation/menu/index.d.ts +1 -0
  120. package/components/navigation/menu/index.js +13 -9
  121. package/components/navigation/menu/props.d.ts +1 -0
  122. package/components/navigation/popover/index.d.ts +1 -0
  123. package/components/navigation/popover/index.js +15 -3
  124. package/components/page/partial/index.d.ts +1 -0
  125. package/context/PopoverContext.d.ts +5 -0
  126. package/context/PopoverContext.js +5 -0
  127. package/context/WidgetProvider.js +9 -2
  128. package/core/proxy-service.d.ts +2 -0
  129. package/core/proxy-service.js +46 -3
  130. package/higherOrder/BaseApp.js +2 -1
  131. package/higherOrder/BasePage.js +2 -9
  132. package/higherOrder/props.d.ts +1 -0
  133. package/higherOrder/useActivePageReactivity.js +1 -4
  134. package/higherOrder/withBaseWrapper.js +3 -2
  135. package/package-lock.json +168 -167
  136. package/package.json +3 -3
  137. package/runtime-dynamic/components/PageWrapper.js +1 -1
  138. package/runtime-dynamic/components/PrefabPreview.js +1 -1
  139. package/runtime-dynamic/components/partial-content.js +17 -1
  140. package/runtime-dynamic/factories/build-base-page-like-component.js +11 -7
  141. package/runtime-dynamic/factories/dynamic-component.js +1 -7
  142. package/runtime-dynamic/routes.js +17 -8
  143. package/utils/page-params-util.js +22 -1
  144. package/utils/partial-host-util.d.ts +40 -0
  145. package/utils/partial-host-util.js +41 -0
  146. package/variables/model-variable.d.ts +2 -0
  147. package/variables/model-variable.js +14 -0
@@ -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")[];
@@ -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")[];
@@ -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 } : {}),
@@ -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")[];
@@ -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;
@@ -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")[];
@@ -30,6 +30,7 @@ declare const WmSliderStandalone: React.ComponentType<import("../../data/form/fo
30
30
  width?: number | string;
31
31
  height?: number | string;
32
32
  className?: string;
33
+ class?: string;
33
34
  conditionalstyle?: React.CSSProperties;
34
35
  conditionalclass?: string;
35
36
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -129,6 +130,7 @@ declare const _default: React.ComponentType<{
129
130
  width?: number | string;
130
131
  height?: number | string;
131
132
  className?: string;
133
+ class?: string;
132
134
  conditionalstyle?: React.CSSProperties;
133
135
  conditionalclass?: string;
134
136
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -41,6 +41,7 @@ declare const WmTextStandalone: import("react").ComponentType<import("../../data
41
41
  width?: number | string;
42
42
  height?: number | string;
43
43
  className?: string;
44
+ class?: string;
44
45
  conditionalstyle?: import("react").CSSProperties;
45
46
  conditionalclass?: string;
46
47
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -146,6 +147,7 @@ declare const _default: import("react").ComponentType<{
146
147
  width?: number | string;
147
148
  height?: number | string;
148
149
  className?: string;
150
+ class?: string;
149
151
  conditionalstyle?: import("react").CSSProperties;
150
152
  conditionalclass?: string;
151
153
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -84,11 +84,13 @@ const WmText = memo(
84
84
  const [isTouched, setIsTouched] = useState(false);
85
85
  const [isAutofilled, setIsAutofilled] = useState(false);
86
86
  const ref = useRef(null);
87
+ const wrapperRef = useRef(null);
87
88
  const cursorPositionRef = useRef(0);
88
89
  const displayError = error || isDirty && showError;
89
90
  const isInternalChange = useRef(false);
90
91
  const prevValueRef = useRef(datavalue);
91
92
  useEffect(() => {
93
+ var _a, _b, _c;
92
94
  const normalizedValue = sanitizeInputValue(datavalue);
93
95
  if (!isInternalChange.current && normalizedValue !== rawValue) {
94
96
  setRawValue(normalizedValue);
@@ -100,6 +102,12 @@ const WmText = memo(
100
102
  if (datavalue === "" || datavalue === null || datavalue === void 0) {
101
103
  setIsAutofilled(false);
102
104
  }
105
+ const type_attr = (_a = wrapperRef.current) == null ? void 0 : _a.getAttribute("type");
106
+ if (type && !type_attr) {
107
+ (_b = wrapperRef.current) == null ? void 0 : _b.setAttribute("type", type);
108
+ } else {
109
+ (_c = wrapperRef.current) == null ? void 0 : _c.removeAttribute("type");
110
+ }
103
111
  }, [datavalue]);
104
112
  const validateInput = useCallback(
105
113
  (value) => {
@@ -360,6 +368,7 @@ const WmText = memo(
360
368
  return /* @__PURE__ */ jsx(
361
369
  TextField,
362
370
  __spreadProps(__spreadValues({}, events), {
371
+ ref: wrapperRef,
363
372
  hidden: props.hidden,
364
373
  title: hint || "Text Input",
365
374
  name,
@@ -399,7 +408,6 @@ const WmText = memo(
399
408
  name: "leadingIcon",
400
409
  className: "btn-leading-icon",
401
410
  onClick: handleLeadingIconClick,
402
- "aria-hidden": "true",
403
411
  tabIndex: -1,
404
412
  children: /* @__PURE__ */ jsx(
405
413
  WmAppIcon,
@@ -418,7 +426,6 @@ const WmText = memo(
418
426
  name: "trailingIcon",
419
427
  className: "btn-trailing-icon",
420
428
  onClick: handleTrailingIconClick,
421
- "aria-hidden": "true",
422
429
  tabIndex: -1,
423
430
  children: /* @__PURE__ */ jsx(
424
431
  WmAppIcon,
@@ -27,6 +27,7 @@ declare const WmTextareaStandalone: React.ComponentType<import("../../data/form/
27
27
  width?: number | string;
28
28
  height?: number | string;
29
29
  className?: string;
30
+ class?: string;
30
31
  conditionalstyle?: React.CSSProperties;
31
32
  conditionalclass?: string;
32
33
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -117,6 +118,7 @@ declare const _default: React.ComponentType<{
117
118
  width?: number | string;
118
119
  height?: number | string;
119
120
  className?: string;
121
+ class?: string;
120
122
  conditionalstyle?: React.CSSProperties;
121
123
  conditionalclass?: string;
122
124
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -21,6 +21,7 @@ declare const WithForm: React.NamedExoticComponent<import("../../data/form/form-
21
21
  width?: number | string;
22
22
  height?: number | string;
23
23
  className?: string;
24
+ class?: string;
24
25
  conditionalstyle?: React.CSSProperties;
25
26
  conditionalclass?: string;
26
27
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -106,6 +107,7 @@ declare const _default: React.ComponentType<{
106
107
  width?: number | string;
107
108
  height?: number | string;
108
109
  className?: string;
110
+ class?: string;
109
111
  conditionalstyle?: React.CSSProperties;
110
112
  conditionalclass?: string;
111
113
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -26,6 +26,7 @@ declare const _default: import("react").MemoExoticComponent<import("react").Comp
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")[];
@@ -19,6 +19,7 @@ declare const _default: import("react").MemoExoticComponent<import("react").Comp
19
19
  width?: number | string;
20
20
  height?: number | string;
21
21
  className?: string;
22
+ class?: string;
22
23
  conditionalstyle?: import("react").CSSProperties;
23
24
  conditionalclass?: string;
24
25
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -22,6 +22,7 @@ declare const _default: React.ComponentType<{
22
22
  width?: number | string;
23
23
  height?: number | string;
24
24
  className?: string;
25
+ class?: string;
25
26
  conditionalstyle?: React.CSSProperties;
26
27
  conditionalclass?: string;
27
28
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];
@@ -39,6 +39,7 @@ declare const _default: React.ComponentType<{
39
39
  datavalue?: any;
40
40
  width?: string | number;
41
41
  height?: string | number;
42
+ class?: string;
42
43
  onClick?: (event?: React.MouseEvent<HTMLElement>, widget?: Record<string, any>, newVal?: string | number | null, oldVal?: string | number | null) => void;
43
44
  onDoubleClick?: (event: React.MouseEvent<HTMLElement>, widget?: Record<string, any>, newVal?: string | number | null, oldVal?: string | number | null) => void;
44
45
  onMouseEnter?: (event: React.MouseEvent<HTMLElement>, widget?: Record<string, any>, newVal?: string | number | null, oldVal?: string | number | null) => void;
@@ -314,7 +314,8 @@ const WmMenu = memo((props) => {
314
314
  link: (node == null ? void 0 : node[itemlink]) || dataObject[itemlink] || dataObject["link"],
315
315
  hint: (node == null ? void 0 : node[hint]) || dataObject[hint],
316
316
  disabled: (node == null ? void 0 : node.disabled) || dataObject.disabled,
317
- children: children2
317
+ children: children2,
318
+ itemClass: (node == null ? void 0 : node.class) || dataObject["class"]
318
319
  };
319
320
  },
320
321
  [itemlabel, itemicon, itemlink, hint, itemchildren]
@@ -331,23 +332,25 @@ const WmMenu = memo((props) => {
331
332
  [menualign]
332
333
  );
333
334
  const getMenuLayoutStyles = useCallback(() => {
335
+ const positionStyles = {
336
+ inset: "100% auto auto 0px",
337
+ transform: "translateY(0px)"
338
+ };
334
339
  switch (menulayout) {
335
340
  case LAYOUT.HORIZONTAL:
336
- return {
341
+ return __spreadProps(__spreadValues({}, positionStyles), {
337
342
  display: "flex",
338
343
  flexDirection: "row"
339
- };
344
+ });
340
345
  case LAYOUT.GRID:
341
- return {
346
+ return __spreadProps(__spreadValues({}, positionStyles), {
342
347
  display: "grid",
343
348
  gridTemplateColumns: "repeat(auto-fill, minmax(150px, 1fr))",
344
349
  gap: "8px"
345
- };
350
+ });
346
351
  case LAYOUT.VERTICAL:
347
352
  default:
348
- return {
349
- display: "block"
350
- };
353
+ return __spreadValues({}, positionStyles);
351
354
  }
352
355
  }, [menulayout]);
353
356
  const handleMenuClick = useCallback(
@@ -636,7 +639,7 @@ const WmMenu = memo((props) => {
636
639
  if (!nodes || !Array.isArray(nodes)) return null;
637
640
  return nodes.map((node, index) => {
638
641
  var _a2;
639
- const { label, icon, link, hint: hint2, disabled, children: children2 } = getNodeProperties(node);
642
+ const { label, icon, link, hint: hint2, disabled, children: children2, itemClass } = getNodeProperties(node);
640
643
  const itemPath = pathPrefix ? `${pathPrefix}-${index}` : `${index}`;
641
644
  const nodeValueLink = (_a2 = node == null ? void 0 : node.value) == null ? void 0 : _a2.link;
642
645
  const isActive = nodeValueLink && typeof nodeValueLink === "string" ? isPathMatchingLink(path, nodeValueLink) : link ? isPathMatchingLink(path, link) : false;
@@ -659,6 +662,7 @@ const WmMenu = memo((props) => {
659
662
  className: clsx(
660
663
  children2 && children2.length > 0 && "dropdown-submenu",
661
664
  "app-menu-item",
665
+ itemClass,
662
666
  {
663
667
  active: isActive,
664
668
  hovered: isHovered
@@ -56,6 +56,7 @@ export interface MenuNode {
56
56
  nodeRef?: React.RefObject<HTMLDivElement | null>;
57
57
  dataObject?: any;
58
58
  isactive?: boolean;
59
+ class?: string;
59
60
  }
60
61
  export interface WmMenuExtendedProps extends Omit<WmMenuProps, "name"> {
61
62
  styles?: React.CSSProperties;
@@ -54,6 +54,7 @@ declare const _default: React.ComponentType<{
54
54
  width?: number | string;
55
55
  height?: number | string;
56
56
  className?: string;
57
+ class?: string;
57
58
  conditionalstyle?: React.CSSProperties;
58
59
  conditionalclass?: string;
59
60
  showindevice?: ("xs" | "sm" | "md" | "lg" | "all")[];