@wavemaker/react-runtime 11.14.1-rc.241 → 11.14.2-1.6423
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/actions/navigation-action.js +5 -3
- package/actions/notification-action.js +6 -3
- package/components/basic/anchor/index.js +6 -7
- package/components/basic/label/index.js +2 -2
- package/components/basic/search/index.js +7 -3
- package/components/chart/components/barColumnChart/index.js +2 -4
- package/components/chart/components/pieDonutChart/index.js +3 -1
- package/components/chart/hooks/useBarYAxisExtras.js +52 -0
- package/components/chart/hooks/useXAxisConfig.js +98 -0
- package/components/chart/index.js +72 -39
- package/components/chart/utils.js +23 -12
- package/components/container/index.js +6 -7
- package/components/container/panel/components/panel-header/index.js +3 -2
- package/components/container/panel/index.js +13 -9
- package/components/container/tabs/index.js +1 -0
- package/components/container/tabs/tab-pane/index.js +39 -3
- package/components/container/wizard/index.js +187 -57
- package/components/container/wizard/utils.js +1 -1
- package/components/container/wizard/wizard-action/index.js +9 -4
- package/components/container/wizard/wizard-step/index.js +21 -8
- package/components/data/form/base-form/index.js +51 -11
- package/components/data/form/form-controller/withFormController.js +7 -10
- package/components/data/list/components/GroupedListItems.js +5 -1
- package/components/data/list/components/ListItemWithTemplate.js +4 -1
- package/components/data/list/hooks/useListEffects.js +34 -14
- package/components/data/list/hooks/useListEventHandlers.js +18 -2
- package/components/data/list/hooks/useListState.js +15 -2
- package/components/data/list/index.js +1 -0
- package/components/data/list/utils/list-helpers.js +3 -5
- package/components/data/list/utils/list-widget-methods.js +1 -1
- package/components/data/live-filter/index.js +6 -5
- package/components/data/live-form/index.js +24 -14
- package/components/data/table/components/TableBody.js +5 -21
- package/components/data/table/components/TableHeader.js +5 -1
- package/components/data/table/index.js +21 -5
- package/components/data/utils/field-data-utils.js +1 -1
- package/components/dialogs/index.js +14 -16
- package/components/input/currency/index.js +11 -7
- package/components/input/default/checkbox/index.js +2 -3
- package/components/input/default/checkboxset/index.js +2 -22
- package/components/input/default/radioset/index.js +5 -4
- package/components/input/epoch/datetime/index.js +6 -2
- package/components/input/epoch/time/index.js +2 -1
- package/components/input/number/index.js +2 -2
- package/components/input/text/util.js +2 -0
- package/components/input/textarea/index.js +22 -24
- package/components/layout/leftnav/index.js +1 -1
- package/components/navbar/nav/index.js +97 -7
- package/components/navbar/nav-item/index.js +5 -2
- package/components/navigation/menu/index.js +73 -12
- package/components/navigation/popover/index.js +2 -0
- package/components/page/error-boundary/index.js +1 -0
- package/components/prefab/container/index.js +10 -3
- package/context/LocalizationProvider.js +1 -0
- package/context/PrefabContext.js +138 -13
- package/context/WidgetProvider.js +2 -2
- package/core/constants/events.js +12 -6
- package/core/constants/index.js +6 -11
- package/core/formatter/number-formatters.js +1 -1
- package/core/proxy-service.js +72 -36
- package/core/util/utils.js +23 -4
- package/higherOrder/BaseApp.js +60 -18
- package/higherOrder/BasePage.js +99 -77
- package/higherOrder/BasePrefab.js +13 -5
- package/higherOrder/withBaseWrapper.js +3 -3
- package/hooks/useDataSourceSubscription.js +1 -1
- package/hooks/useHttp.js +20 -13
- package/mui-config/theme.js +3 -0
- package/package-lock.json +781 -669
- package/package.json +3 -3
- package/store/index.js +5 -1
- package/utils/lib-error-skipper.js +196 -0
- package/variables/service-variable.js +17 -14
package/higherOrder/BasePage.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var
|
|
4
|
+
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.withPageContext = exports["default"] = void 0;
|
|
9
9
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
11
12
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
13
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
@@ -31,14 +32,14 @@ var _appstore = _interopRequireDefault(require("@wavemaker/react-runtime/core/ap
|
|
|
31
32
|
var _scriptRegistry = require("@wavemaker/react-runtime/core/script-registry");
|
|
32
33
|
var _formatters = _interopRequireDefault(require("../core/formatters"));
|
|
33
34
|
var _AppContext2 = require("../context/AppContext");
|
|
34
|
-
var _utils = require("../core/util/utils");
|
|
35
35
|
var _widgetCleanupUtil = require("../utils/widget-cleanup-util");
|
|
36
36
|
var _pageParamsUtil = require("../utils/page-params-util");
|
|
37
37
|
var _constants = require("../core/constants");
|
|
38
38
|
var _AppSpinnerProvider = require("../context/AppSpinnerProvider");
|
|
39
39
|
var _lodash = require("lodash");
|
|
40
40
|
var _events = require("../core/constants/events");
|
|
41
|
-
|
|
41
|
+
var _libErrorSkipper = require("../utils/lib-error-skipper");
|
|
42
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
|
|
42
43
|
var __jsx = _react["default"].createElement;
|
|
43
44
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
44
45
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -94,9 +95,6 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
94
95
|
var _useState = (0, _react.useState)(false),
|
|
95
96
|
isInitialized = _useState[0],
|
|
96
97
|
setIsInitialized = _useState[1];
|
|
97
|
-
var _useState2 = (0, _react.useState)(false),
|
|
98
|
-
startupComplete = _useState2[0],
|
|
99
|
-
setStartupComplete = _useState2[1];
|
|
100
98
|
var redirectHandledRef = (0, _react.useRef)(false);
|
|
101
99
|
|
|
102
100
|
// Refs for managing component lifecycle
|
|
@@ -106,14 +104,14 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
106
104
|
var pageProxyRef = (0, _react.useRef)(null);
|
|
107
105
|
var isInitializingRef = (0, _react.useRef)(false);
|
|
108
106
|
var isMountedRef = (0, _react.useRef)(true);
|
|
109
|
-
var startupInvokedRef = (0, _react.useRef)(false);
|
|
110
107
|
var usedFallbackAppVarsRef = (0, _react.useRef)(false);
|
|
111
108
|
var appVarSubscriptionsDoneRef = (0, _react.useRef)(false);
|
|
112
109
|
var subscribedVariableNamesRef = (0, _react.useRef)(new Set());
|
|
113
110
|
var cleanupUtilRef = (0, _react.useRef)(null);
|
|
111
|
+
var isContentReadyRef = (0, _react.useRef)(false);
|
|
114
112
|
|
|
115
113
|
// Initial page context state
|
|
116
|
-
var
|
|
114
|
+
var _useState2 = (0, _react.useState)(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
117
115
|
Widgets: {},
|
|
118
116
|
Variables: {},
|
|
119
117
|
Actions: {},
|
|
@@ -134,9 +132,8 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
134
132
|
executeStartup: executeStartup,
|
|
135
133
|
formatters: _formatters["default"]
|
|
136
134
|
})),
|
|
137
|
-
pageContext =
|
|
138
|
-
setPageContext =
|
|
139
|
-
|
|
135
|
+
pageContext = _useState2[0],
|
|
136
|
+
setPageContext = _useState2[1];
|
|
140
137
|
// Enhanced initial app config that inherits from app context if available
|
|
141
138
|
var initialAppConfig = (0, _react.useMemo)(function () {
|
|
142
139
|
return appContext;
|
|
@@ -297,31 +294,30 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
297
294
|
newParams = (0, _pageParamsUtil.computeMergedPageParams)(urlParams, {
|
|
298
295
|
componentType: componentInfo === null || componentInfo === void 0 ? void 0 : componentInfo.componentType,
|
|
299
296
|
props: props
|
|
300
|
-
});
|
|
297
|
+
});
|
|
298
|
+
appProxy.appLocale = i18n.appLocale || {};
|
|
299
|
+
|
|
300
|
+
// Update proxy with merged variables and actions
|
|
301
301
|
pageProxy.Variables = Variables;
|
|
302
302
|
pageProxy.Actions = Actions;
|
|
303
303
|
pageProxy.pageParams = _objectSpread({}, newParams);
|
|
304
|
-
pageProxy.App = _objectSpread(_objectSpread(
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
});
|
|
304
|
+
pageProxy.App = _objectSpread(_objectSpread({}, appProxy), initialAppConfig);
|
|
305
|
+
pageProxy.pageParams = _objectSpread({}, newParams);
|
|
306
|
+
pageProxy.selectedLocale = i18n.selectedLocale || "en";
|
|
308
307
|
|
|
309
308
|
// Setup variable event handlers
|
|
310
309
|
setupVariableSubscriptions(pageVariables.Variables);
|
|
311
310
|
if ((componentInfo === null || componentInfo === void 0 ? void 0 : componentInfo.componentType) === "PAGE" && appProxy) {
|
|
312
311
|
pageName = componentInfo === null || componentInfo === void 0 ? void 0 : componentInfo.componentName;
|
|
313
312
|
appProxy.updateActivePage(pageName);
|
|
313
|
+
appProxy.activePage = pageProxy;
|
|
314
314
|
}
|
|
315
315
|
|
|
316
316
|
// Initialize page script
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
appContext === null || appContext === void 0 || appContext.notifyApp("React App is not supporting this functionality check console for more details", "Error");
|
|
322
|
-
}
|
|
323
|
-
console.error(e);
|
|
324
|
-
}
|
|
317
|
+
addPageScript(appProxy, pageProxy);
|
|
318
|
+
|
|
319
|
+
// Gaurd for unsupported third party functionality
|
|
320
|
+
(0, _libErrorSkipper.wrapWithThirdPartyErrorGuard)(pageProxy, appContext, (componentInfo === null || componentInfo === void 0 ? void 0 : componentInfo.componentName) || "Prefab");
|
|
325
321
|
|
|
326
322
|
// Setup global wm object for pages
|
|
327
323
|
if ((componentInfo === null || componentInfo === void 0 ? void 0 : componentInfo.componentType) === "PAGE") {
|
|
@@ -432,18 +428,25 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
432
428
|
(0, _react.useEffect)(function () {
|
|
433
429
|
if (prefabInfo && (componentInfo === null || componentInfo === void 0 ? void 0 : componentInfo.componentType) === "PREFAB") {
|
|
434
430
|
var handlePrefabStateRefresh = function handlePrefabStateRefresh(data) {
|
|
431
|
+
var proxy = pageProxyRef.current;
|
|
435
432
|
Object.keys(data).forEach(function (key) {
|
|
436
|
-
var
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
433
|
+
var _data$key$newValue;
|
|
434
|
+
var propKey = data[key].key;
|
|
435
|
+
var newValue = (_data$key$newValue = data[key].newValue) !== null && _data$key$newValue !== void 0 ? _data$key$newValue : data[key].oldValue;
|
|
436
|
+
if (newValue && (0, _typeof2["default"])(newValue) === "object") {
|
|
437
|
+
newValue = (0, _cloneDeep["default"])(newValue);
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
// Call onPropertyChange if available
|
|
441
|
+
if (proxy && proxy.onPropertyChange) {
|
|
442
|
+
proxy[propKey] = newValue;
|
|
443
|
+
proxy.onPropertyChange(propKey, newValue, data[key].oldValue);
|
|
441
444
|
}
|
|
442
445
|
});
|
|
443
446
|
};
|
|
444
|
-
_events.EVENTEMITTER_METHODS.PREFAB_STATE_SYNC_ON(handlePrefabStateRefresh);
|
|
447
|
+
_events.EVENTEMITTER_METHODS.PREFAB_STATE_SYNC_ON(prefabInfo === null || prefabInfo === void 0 ? void 0 : prefabInfo.name, handlePrefabStateRefresh);
|
|
445
448
|
return function () {
|
|
446
|
-
_events.EVENTEMITTER_METHODS.PREFAB_STATE_SYNC_OFF(handlePrefabStateRefresh);
|
|
449
|
+
_events.EVENTEMITTER_METHODS.PREFAB_STATE_SYNC_OFF(prefabInfo === null || prefabInfo === void 0 ? void 0 : prefabInfo.name, handlePrefabStateRefresh);
|
|
447
450
|
};
|
|
448
451
|
}
|
|
449
452
|
}, [prefabInfo, componentInfo === null || componentInfo === void 0 ? void 0 : componentInfo.componentType]);
|
|
@@ -532,17 +535,12 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
532
535
|
|
|
533
536
|
// If no startup operations, mark as complete immediately
|
|
534
537
|
if (!(startUpActions.length === 0 && startUpVariables.length === 0)) {
|
|
535
|
-
_context2.next =
|
|
538
|
+
_context2.next = 5;
|
|
536
539
|
break;
|
|
537
540
|
}
|
|
538
|
-
setTimeout(function () {
|
|
539
|
-
if (isMountedRef.current) {
|
|
540
|
-
setStartupComplete(true);
|
|
541
|
-
}
|
|
542
|
-
}, 100);
|
|
543
541
|
return _context2.abrupt("return");
|
|
544
|
-
case
|
|
545
|
-
_context2.prev =
|
|
542
|
+
case 5:
|
|
543
|
+
_context2.prev = 5;
|
|
546
544
|
// Execute startup actions
|
|
547
545
|
startUpActions.forEach(function (actionName) {
|
|
548
546
|
var _Actions$actionName;
|
|
@@ -563,28 +561,22 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
563
561
|
}
|
|
564
562
|
return Promise.resolve();
|
|
565
563
|
});
|
|
566
|
-
_context2.next =
|
|
564
|
+
_context2.next = 10;
|
|
567
565
|
return Promise.allSettled(variablePromises);
|
|
568
|
-
case
|
|
566
|
+
case 10:
|
|
569
567
|
startUpVariableLoadedRef.current = true;
|
|
570
568
|
pendingStartupOpsRef.current.clear();
|
|
571
|
-
|
|
572
|
-
setStartupComplete(true);
|
|
573
|
-
}
|
|
574
|
-
_context2.next = 20;
|
|
569
|
+
_context2.next = 17;
|
|
575
570
|
break;
|
|
576
|
-
case
|
|
577
|
-
_context2.prev =
|
|
578
|
-
_context2.t0 = _context2["catch"](
|
|
571
|
+
case 14:
|
|
572
|
+
_context2.prev = 14;
|
|
573
|
+
_context2.t0 = _context2["catch"](5);
|
|
579
574
|
console.error("Error during startup operations:", _context2.t0);
|
|
580
|
-
|
|
581
|
-
setStartupComplete(true); // Set complete even on error to prevent hanging
|
|
582
|
-
}
|
|
583
|
-
case 20:
|
|
575
|
+
case 17:
|
|
584
576
|
case "end":
|
|
585
577
|
return _context2.stop();
|
|
586
578
|
}
|
|
587
|
-
}, _callee2, null, [[
|
|
579
|
+
}, _callee2, null, [[5, 14]]);
|
|
588
580
|
}));
|
|
589
581
|
return function executeStartupOperations(_x, _x2) {
|
|
590
582
|
return _ref9.apply(this, arguments);
|
|
@@ -616,36 +608,30 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
616
608
|
|
|
617
609
|
// Content ready callback
|
|
618
610
|
function onContentReady() {
|
|
619
|
-
if (appContext !== null && appContext !== void 0 && appContext.onPageReady && pageContext.type === "PAGE") {
|
|
620
|
-
appContext.onPageReady(pageContext.componentName, pageProxyRef.current, undefined);
|
|
621
|
-
}
|
|
622
611
|
if (pageContext.onReady) {
|
|
623
|
-
|
|
624
|
-
pageContext.onReady();
|
|
625
|
-
} catch (e) {
|
|
626
|
-
if ((0, _utils.isJQueryError)(e)) {
|
|
627
|
-
appContext === null || appContext === void 0 || appContext.notifyApp("React App is not supporting this functionality check console for more details", "Error");
|
|
628
|
-
}
|
|
629
|
-
console.error(e);
|
|
630
|
-
}
|
|
612
|
+
pageContext.onReady();
|
|
631
613
|
}
|
|
614
|
+
if (appContext !== null && appContext !== void 0 && appContext.onPageReady && pageContext.componentType === "PAGE") {
|
|
615
|
+
appContext.onPageReady(pageContext.componentName, pageProxyRef.current, undefined);
|
|
616
|
+
}
|
|
617
|
+
return Promise.resolve();
|
|
632
618
|
}
|
|
633
619
|
function executeStartup() {
|
|
634
620
|
return _executeStartup.apply(this, arguments);
|
|
635
621
|
} // Update pageContext.appLocale when i18n.appLocale changes
|
|
636
622
|
function _executeStartup() {
|
|
637
|
-
_executeStartup = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function
|
|
638
|
-
return _regenerator["default"].wrap(function
|
|
639
|
-
while (1) switch (
|
|
623
|
+
_executeStartup = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4() {
|
|
624
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
625
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
640
626
|
case 0:
|
|
641
627
|
appContext === null || appContext === void 0 || appContext.executeStartAppOperations();
|
|
642
|
-
|
|
628
|
+
_context4.next = 3;
|
|
643
629
|
return executeStartupOperations(pageContext.Variables, pageContext.Actions);
|
|
644
630
|
case 3:
|
|
645
631
|
case "end":
|
|
646
|
-
return
|
|
632
|
+
return _context4.stop();
|
|
647
633
|
}
|
|
648
|
-
},
|
|
634
|
+
}, _callee4);
|
|
649
635
|
}));
|
|
650
636
|
return _executeStartup.apply(this, arguments);
|
|
651
637
|
}
|
|
@@ -657,17 +643,46 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
657
643
|
appLocale: newAppLocale
|
|
658
644
|
});
|
|
659
645
|
});
|
|
646
|
+
pageContextRef.current.App.appLocale = newAppLocale;
|
|
660
647
|
}
|
|
661
648
|
}, [i18n.appLocale]);
|
|
662
|
-
|
|
649
|
+
var onContentReadyCalledRef = (0, _react.useRef)(false);
|
|
650
|
+
var onStartupCompletedRef = (0, _react.useRef)(false);
|
|
663
651
|
// Call onContentReady when startup operations are complete
|
|
664
652
|
(0, _react.useEffect)(function () {
|
|
665
|
-
if (isMountedRef.current) {
|
|
666
|
-
|
|
653
|
+
if (isInitialized && isMountedRef.current && !onContentReadyCalledRef.current && pageProxyRef.current) {
|
|
654
|
+
// Mark as called before invoking to prevent duplicate calls
|
|
655
|
+
onContentReadyCalledRef.current = true;
|
|
656
|
+
|
|
657
|
+
// 1. First RAF: waits for browser to schedule the next paint
|
|
658
|
+
// 2. Second RAF: waits for the paint to complete and any nested renders
|
|
659
|
+
// This is a reliable pattern to ensure component is fully rendered
|
|
660
|
+
requestAnimationFrame(function () {
|
|
661
|
+
if (!isMountedRef.current) return;
|
|
662
|
+
requestAnimationFrame(/*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
663
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
664
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
665
|
+
case 0:
|
|
666
|
+
if (!(isMountedRef.current && pageProxyRef.current)) {
|
|
667
|
+
_context3.next = 6;
|
|
668
|
+
break;
|
|
669
|
+
}
|
|
670
|
+
_context3.next = 3;
|
|
671
|
+
return onContentReady();
|
|
672
|
+
case 3:
|
|
673
|
+
_context3.next = 5;
|
|
674
|
+
return executeStartup();
|
|
675
|
+
case 5:
|
|
676
|
+
onStartupCompletedRef.current = true;
|
|
677
|
+
case 6:
|
|
678
|
+
case "end":
|
|
679
|
+
return _context3.stop();
|
|
680
|
+
}
|
|
681
|
+
}, _callee3);
|
|
682
|
+
})));
|
|
683
|
+
});
|
|
667
684
|
}
|
|
668
|
-
}, []);
|
|
669
|
-
|
|
670
|
-
// Cleanup on unmount
|
|
685
|
+
}, [isInitialized]);
|
|
671
686
|
(0, _react.useEffect)(function () {
|
|
672
687
|
return function () {
|
|
673
688
|
isMountedRef.current = false;
|
|
@@ -693,7 +708,14 @@ var withPageContext = exports.withPageContext = function withPageContext(Wrapped
|
|
|
693
708
|
listener: {}
|
|
694
709
|
});
|
|
695
710
|
}
|
|
696
|
-
if (
|
|
711
|
+
if (appContext !== null && appContext !== void 0 && appContext.autoUpdateVariables && onStartupCompletedRef.current) {
|
|
712
|
+
var appVariables = appContext.Variables;
|
|
713
|
+
appContext.autoUpdateVariables.forEach(function (value) {
|
|
714
|
+
var _appVariables$value, _appVariables$value2;
|
|
715
|
+
((_appVariables$value = appVariables[value]) === null || _appVariables$value === void 0 ? void 0 : _appVariables$value.invokeOnParamChange) && ((_appVariables$value2 = appVariables[value]) === null || _appVariables$value2 === void 0 ? void 0 : _appVariables$value2.invokeOnParamChange());
|
|
716
|
+
});
|
|
717
|
+
}
|
|
718
|
+
if (pageContext.autoUpdateVariables && onStartupCompletedRef.current) {
|
|
697
719
|
var pageVariables = pageContext.Variables;
|
|
698
720
|
componentInfo.autoUpdateVariables.forEach(function (value) {
|
|
699
721
|
var _pageVariables$value, _pageVariables$value2;
|
|
@@ -17,6 +17,7 @@ var _BasePage = _interopRequireDefault(require("@wavemaker/react-runtime/higherO
|
|
|
17
17
|
var _appstore = _interopRequireDefault(require("@wavemaker/react-runtime/core/appstore"));
|
|
18
18
|
var _appConfigSlice = require("@wavemaker/react-runtime/store/slices/appConfigSlice");
|
|
19
19
|
var _PrefabContext = _interopRequireDefault(require("@wavemaker/react-runtime/context/PrefabContext"));
|
|
20
|
+
var _spinner = require("../components/basic/spinner");
|
|
20
21
|
var _excluded = ["pages", "partials", "componentType"];
|
|
21
22
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
|
|
22
23
|
var __jsx = _react["default"].createElement;
|
|
@@ -109,10 +110,13 @@ var BasePrefab = exports.BasePrefab = function BasePrefab(WrappedComponent, addP
|
|
|
109
110
|
if (!prefabname) {
|
|
110
111
|
return null;
|
|
111
112
|
}
|
|
112
|
-
var appLocale = (0, _merge["default"])({}, (i18n === null || i18n === void 0 ? void 0 : i18n.appLocale) || {}, (i18n === null || i18n === void 0 || (_i18n$prefabMessages = i18n.prefabMessages) === null || _i18n$prefabMessages === void 0 ? void 0 : _i18n$prefabMessages[prefabname]) || {});
|
|
113
113
|
if (loading) {
|
|
114
|
-
return __jsx(
|
|
114
|
+
return __jsx(_spinner.WmSpinner, {
|
|
115
|
+
show: true,
|
|
116
|
+
className: "baseprefab-spinner"
|
|
117
|
+
});
|
|
115
118
|
}
|
|
119
|
+
var appLocale = (0, _merge["default"])({}, (i18n === null || i18n === void 0 ? void 0 : i18n.appLocale) || {}, (i18n === null || i18n === void 0 || (_i18n$prefabMessages = i18n.prefabMessages) === null || _i18n$prefabMessages === void 0 ? void 0 : _i18n$prefabMessages[prefabname]) || {});
|
|
116
120
|
var FragmentConsumer = function FragmentConsumer(fragmentProps) {
|
|
117
121
|
var combinedProps = _objectSpread(_objectSpread({}, props), fragmentProps);
|
|
118
122
|
return __jsx(WrappedComponent, combinedProps);
|
|
@@ -126,20 +130,24 @@ var BasePrefab = exports.BasePrefab = function BasePrefab(WrappedComponent, addP
|
|
|
126
130
|
serviceDefs: (serviceDefs === null || serviceDefs === void 0 ? void 0 : serviceDefs.serviceDefs) || {},
|
|
127
131
|
appLocale: appLocale,
|
|
128
132
|
prefab: true,
|
|
129
|
-
prefabName: prefabname
|
|
133
|
+
prefabName: prefabname,
|
|
134
|
+
name: props.name
|
|
130
135
|
});
|
|
131
|
-
return __jsx(EnhancedComponent, props);
|
|
136
|
+
return __jsx(_react["default"].Fragment, null, __jsx(EnhancedComponent, props));
|
|
132
137
|
}, function (next, prev) {
|
|
133
138
|
return next.prefabname === prev.prefabname;
|
|
134
139
|
});
|
|
140
|
+
BasePrefabWrapper.displayName = "BasePrefabWrapper";
|
|
135
141
|
var BasePrefabWithProvider = function BasePrefabWithProvider(props) {
|
|
136
142
|
return __jsx(_PrefabContext["default"], {
|
|
137
143
|
value: {
|
|
138
144
|
inbound: props.inbound || {},
|
|
139
|
-
outbound: props.outbound || {}
|
|
145
|
+
outbound: props.outbound || {},
|
|
146
|
+
prefabName: props.name
|
|
140
147
|
}
|
|
141
148
|
}, __jsx(BasePrefabWrapper, props));
|
|
142
149
|
};
|
|
150
|
+
BasePrefabWithProvider.displayName = "BasePrefabWithProvider";
|
|
143
151
|
return BasePrefabWithProvider;
|
|
144
152
|
};
|
|
145
153
|
var _default = exports["default"] = BasePrefab;
|
|
@@ -33,7 +33,7 @@ var withBaseWrapper = exports.withBaseWrapper = function withBaseWrapper(Wrapped
|
|
|
33
33
|
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
34
34
|
|
|
35
35
|
// All hooks must be called before any early returns
|
|
36
|
-
var _useDeviceVisibility = (0, _useDeviceVisibility2.useDeviceVisibility)(props.
|
|
36
|
+
var _useDeviceVisibility = (0, _useDeviceVisibility2.useDeviceVisibility)(props.showindevice || ["all"]),
|
|
37
37
|
isHidden = _useDeviceVisibility.isHidden;
|
|
38
38
|
var _usePageContext = (0, _WidgetProvider.usePageContext)(),
|
|
39
39
|
pageContext = _usePageContext.pageContext,
|
|
@@ -61,7 +61,7 @@ var withBaseWrapper = exports.withBaseWrapper = function withBaseWrapper(Wrapped
|
|
|
61
61
|
|
|
62
62
|
// Compute merged props in a memoized way
|
|
63
63
|
var mergedProps = (0, _react.useMemo)(function () {
|
|
64
|
-
var
|
|
64
|
+
var _props$datavalue;
|
|
65
65
|
if (!name || !(pageContext !== null && pageContext !== void 0 && pageContext.Widgets) || (props === null || props === void 0 ? void 0 : props.iswidget) === "false") {
|
|
66
66
|
return props;
|
|
67
67
|
}
|
|
@@ -74,7 +74,7 @@ var withBaseWrapper = exports.withBaseWrapper = function withBaseWrapper(Wrapped
|
|
|
74
74
|
// OR if no widget-id filtering is needed (backward compatibility)
|
|
75
75
|
var shouldMergeFromContext = !componentWidgetId || !contextWidgetId || componentWidgetId === contextWidgetId;
|
|
76
76
|
var mergedState = _objectSpread({}, props);
|
|
77
|
-
var datavalue = (
|
|
77
|
+
var datavalue = (_props$datavalue = props.datavalue) !== null && _props$datavalue !== void 0 ? _props$datavalue : widget.datavalue;
|
|
78
78
|
if (shouldMergeFromContext && (0, _scriptRegistry.isWidgetOverridden)(name, componentWidgetId)) {
|
|
79
79
|
// Apply widget-id specific overridden properties from the registry
|
|
80
80
|
var widgetOverrides = (0, _scriptRegistry.getWidgetOverrides)(name, componentWidgetId);
|
|
@@ -74,7 +74,7 @@ var useDataSourceSubscription = exports.useDataSourceSubscription = function use
|
|
|
74
74
|
}
|
|
75
75
|
if (datasource && datasource.execute && datasource.execute(_types.DataSource.Operation.IS_API_AWARE) && isDataSourceEqual(data.variable, datasource)) {
|
|
76
76
|
// Handle state params only on page load (first time)
|
|
77
|
-
if (pageLoadRef.current && statehandler.toLowerCase() !== "none") {
|
|
77
|
+
if (pageLoadRef.current && statehandler && statehandler.toLowerCase() !== "none") {
|
|
78
78
|
pageLoadRef.current = false; // Mark as handled
|
|
79
79
|
|
|
80
80
|
// Use appropriate state getter based on widget type
|
package/hooks/useHttp.js
CHANGED
|
@@ -87,18 +87,25 @@ var ModernHttpService = /*#__PURE__*/function () {
|
|
|
87
87
|
key: "send",
|
|
88
88
|
value: function () {
|
|
89
89
|
var _send = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(options, variable) {
|
|
90
|
-
var serviceInfo, headers, requestBody, url, _options$url$replace, methodType, isNonDataMethod, axiosConfig, response;
|
|
90
|
+
var serviceInfo, headers, requestBody, url, _serviceInfo$proxySet, isProxyCall, _options$url$replace, methodType, isNonDataMethod, axiosConfig, response;
|
|
91
91
|
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
92
92
|
while (1) switch (_context2.prev = _context2.next) {
|
|
93
93
|
case 0:
|
|
94
94
|
serviceInfo = variable.serviceInfo;
|
|
95
95
|
headers = new _axios.AxiosHeaders(options.headers);
|
|
96
96
|
requestBody = options.data;
|
|
97
|
-
url = options.url;
|
|
98
97
|
variable.cancelTokenSource = _axios["default"].CancelToken.source();
|
|
98
|
+
url = options.url;
|
|
99
|
+
if (serviceInfo) {
|
|
100
|
+
serviceInfo.proxySettings = (serviceInfo === null || serviceInfo === void 0 ? void 0 : serviceInfo.proxySettings) || {
|
|
101
|
+
web: true
|
|
102
|
+
};
|
|
103
|
+
isProxyCall = serviceInfo === null || serviceInfo === void 0 || (_serviceInfo$proxySet = serviceInfo.proxySettings) === null || _serviceInfo$proxySet === void 0 ? void 0 : _serviceInfo$proxySet.web;
|
|
104
|
+
url = isProxyCall ? options.url : serviceInfo === null || serviceInfo === void 0 ? void 0 : serviceInfo.directPath;
|
|
105
|
+
}
|
|
99
106
|
if (variable.category === "wm.LiveVariable" && !(url.startsWith("http://") || url.startsWith("https://"))) {
|
|
100
107
|
url = variable.config.baseUrl + options.url.replace("./", "/");
|
|
101
|
-
} else if (
|
|
108
|
+
} else if (url === (serviceInfo === null || serviceInfo === void 0 ? void 0 : serviceInfo.directPath) && options.url.startsWith("http")) {
|
|
102
109
|
url = options.url;
|
|
103
110
|
} else {
|
|
104
111
|
url = variable.config.baseUrl + ((_options$url$replace = options.url.replace("./services", "")) === null || _options$url$replace === void 0 ? void 0 : _options$url$replace.replace("./", "/"));
|
|
@@ -133,27 +140,27 @@ var ModernHttpService = /*#__PURE__*/function () {
|
|
|
133
140
|
if (options !== null && options !== void 0 && options.onUploadProgress) {
|
|
134
141
|
axiosConfig.onUploadProgress = options.onUploadProgress;
|
|
135
142
|
}
|
|
136
|
-
_context2.prev =
|
|
137
|
-
_context2.next =
|
|
143
|
+
_context2.prev = 13;
|
|
144
|
+
_context2.next = 16;
|
|
138
145
|
return this.axiosInstance.request(axiosConfig);
|
|
139
|
-
case
|
|
146
|
+
case 16:
|
|
140
147
|
response = _context2.sent;
|
|
141
148
|
if (!(variable.operation === "getDownloadFile" || (serviceInfo === null || serviceInfo === void 0 ? void 0 : serviceInfo.operationId) === "FileController_getDownloadFile")) {
|
|
142
|
-
_context2.next =
|
|
149
|
+
_context2.next = 19;
|
|
143
150
|
break;
|
|
144
151
|
}
|
|
145
152
|
return _context2.abrupt("return", this.handleFileDownload(response, options, variable));
|
|
146
|
-
case
|
|
153
|
+
case 19:
|
|
147
154
|
return _context2.abrupt("return", response);
|
|
148
|
-
case
|
|
149
|
-
_context2.prev =
|
|
150
|
-
_context2.t0 = _context2["catch"](
|
|
155
|
+
case 22:
|
|
156
|
+
_context2.prev = 22;
|
|
157
|
+
_context2.t0 = _context2["catch"](13);
|
|
151
158
|
throw _context2.t0.response || _context2.t0;
|
|
152
|
-
case
|
|
159
|
+
case 25:
|
|
153
160
|
case "end":
|
|
154
161
|
return _context2.stop();
|
|
155
162
|
}
|
|
156
|
-
}, _callee2, this, [[
|
|
163
|
+
}, _callee2, this, [[13, 22]]);
|
|
157
164
|
}));
|
|
158
165
|
function send(_x2, _x3) {
|
|
159
166
|
return _send.apply(this, arguments);
|