@agilemotion/oui-react-js 1.8.76 → 1.8.78
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/dist/DynamicJS.js +1 -2
- package/dist/ViewContext.js +1 -0
- package/dist/assets/jss/views/loginBasicStyle.js +4 -4
- package/dist/assets/jss/views/loginBasicStyle.jsx +4 -4
- package/dist/components/Chart.js +2 -2
- package/dist/components/DataGrid.js +6 -11
- package/dist/components/DataGridColumn.js +2 -2
- package/dist/components/DataGridFilter.js +2 -4
- package/dist/components/DataGridHeading.js +2 -3
- package/dist/components/Dialog.js +2 -2
- package/dist/components/DocumentViewer.js +2 -2
- package/dist/components/HtmlPanel.js +2 -2
- package/dist/components/PopupView.js +3 -1
- package/dist/components/Portlet.js +2 -2
- package/dist/components/ProgressTracker.js +2 -2
- package/dist/components/SignaturePanel.js +2 -2
- package/dist/components/Spinner.js +2 -2
- package/dist/components/StepperTitleBar.js +2 -2
- package/dist/components/TabPage.js +2 -2
- package/dist/components/TabPanel.js +37 -18
- package/dist/components/TableCellContent.js +6 -12
- package/dist/components/TemplateDesigner.js +2 -2
- package/dist/components/TitleBar.js +2 -2
- package/dist/components/Tree.js +32 -14
- package/dist/components/WordDocumentViewer.css +9 -0
- package/dist/components/WordDocumentViewer.js +38 -50
- package/dist/components/dashboard/FoldingSideTabDashboard.js +3 -2
- package/dist/components/dashboard/components/blackDashboard/sidebar/FoldingTabSidebar.js +27 -22
- package/dist/components/form/AddressSearch.js +4 -4
- package/dist/components/form/Checkbox.js +4 -4
- package/dist/components/form/CurrencyField.js +4 -4
- package/dist/components/form/FieldSet.js +6 -6
- package/dist/components/form/Form.js +2 -3
- package/dist/components/form/GridField.js +29 -47
- package/dist/components/form/IconField.js +4 -4
- package/dist/components/form/ImageEditor.js +4 -15
- package/dist/components/form/LabelField.js +4 -4
- package/dist/components/form/LookupField.js +4 -4
- package/dist/components/form/RadioGroup.js +4 -4
- package/dist/components/form/Section.js +2 -6
- package/dist/components/form/SelectItem.js +2 -2
- package/dist/components/form/SignatureTemplateDesignerField.js +4 -4
- package/dist/components/form/Switch.js +4 -4
- package/dist/components/form/TextField.js +23 -9
- package/dist/components/form/TransferList.js +13 -11
- package/dist/components/form/UploadField.js +4 -5
- package/dist/components/layout/Layout.js +1 -2
- package/dist/components/layout/View.css +0 -1
- package/dist/components/menu/MenuLink.js +11 -5
- package/dist/components/observers/useOnFullyVisible.js +29 -0
- package/dist/components/observers/useResizeObserver.js +25 -0
- package/dist/js/ProcurementMeetings.js +25 -4
- package/package.json +1 -1
|
@@ -14,58 +14,14 @@ var _ej2Base = require("@syncfusion/ej2-base");
|
|
|
14
14
|
var _Alert = _interopRequireDefault(require("react-bootstrap/Alert"));
|
|
15
15
|
var _LottieIcon = _interopRequireDefault(require("./LottieIcon"));
|
|
16
16
|
require("./WordDocumentViewer.css");
|
|
17
|
+
var _useResizeObserver = require("./observers/useResizeObserver");
|
|
18
|
+
var _useOnFullyVisible = require("./observers/useOnFullyVisible");
|
|
17
19
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
20
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (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 (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
19
21
|
const KEY = exports.KEY = 'Ngo9BigBOggjHTQxAR8/V1JGaF5cXGpCf1FpRmJGdld5fUVHYVZUTXxaS00DNHVRdkdlWX5ceHVRQ2BYUUdwX0NWYEs=';
|
|
20
22
|
(0, _ej2Base.registerLicense)(KEY);
|
|
21
23
|
const DOCSVC = exports.DOCSVC = "https://document.syncfusion.com/web-services/docx-editor/api/documenteditor/";
|
|
22
24
|
_ej2ReactDocumenteditor.DocumentEditorContainerComponent.Inject(_ej2ReactDocumenteditor.Toolbar);
|
|
23
|
-
function useOnFullyVisible(callback) {
|
|
24
|
-
let {
|
|
25
|
-
threshold = 0.1
|
|
26
|
-
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
27
|
-
const ref = (0, _react.useRef)(null);
|
|
28
|
-
(0, _react.useEffect)(() => {
|
|
29
|
-
const el = ref.current;
|
|
30
|
-
if (!el) return;
|
|
31
|
-
const nextPaint = () => new Promise(res => requestAnimationFrame(() => requestAnimationFrame(res)));
|
|
32
|
-
const waitImages = () => {
|
|
33
|
-
const imgs = Array.from(el.querySelectorAll('img'));
|
|
34
|
-
const pending = imgs.filter(img => !(img.complete && img.naturalWidth > 0));
|
|
35
|
-
if (!pending.length) return Promise.resolve();
|
|
36
|
-
return Promise.all(pending.map(img => new Promise(r => {
|
|
37
|
-
const done = () => {
|
|
38
|
-
img.removeEventListener('load', done);
|
|
39
|
-
img.removeEventListener('error', done);
|
|
40
|
-
r();
|
|
41
|
-
};
|
|
42
|
-
img.addEventListener('load', done, {
|
|
43
|
-
once: true
|
|
44
|
-
});
|
|
45
|
-
img.addEventListener('error', done, {
|
|
46
|
-
once: true
|
|
47
|
-
});
|
|
48
|
-
})));
|
|
49
|
-
};
|
|
50
|
-
const waitFonts = () => 'fonts' in document && document.fonts && document.fonts.ready ? document.fonts.ready : Promise.resolve();
|
|
51
|
-
const io = new IntersectionObserver(async entries => {
|
|
52
|
-
const entry = entries[0];
|
|
53
|
-
const fullyVisible = entry.intersectionRatio >= threshold || entry.intersectionRatio >= 0.99;
|
|
54
|
-
if (fullyVisible) {
|
|
55
|
-
io.disconnect();
|
|
56
|
-
await waitImages();
|
|
57
|
-
await waitFonts();
|
|
58
|
-
await nextPaint();
|
|
59
|
-
callback(el);
|
|
60
|
-
}
|
|
61
|
-
}, {
|
|
62
|
-
threshold: [threshold, 0.99]
|
|
63
|
-
});
|
|
64
|
-
io.observe(el);
|
|
65
|
-
return () => io.disconnect();
|
|
66
|
-
}, [callback, threshold]);
|
|
67
|
-
return ref;
|
|
68
|
-
}
|
|
69
25
|
const LEVEL_FMT = ['%1.', '%1.%2.', '%1.%2.%3.'];
|
|
70
26
|
function applyLevel(ed) {
|
|
71
27
|
let level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
@@ -73,6 +29,34 @@ function applyLevel(ed) {
|
|
|
73
29
|
ed.selection.paragraphFormat.listLevelNumber = depth;
|
|
74
30
|
ed.applyNumbering(LEVEL_FMT[depth], 'Arabic');
|
|
75
31
|
}
|
|
32
|
+
function useDynamicSyncfusionHeight(parentRef, containerRef) {
|
|
33
|
+
const [height, setHeight] = (0, _react.useState)(0);
|
|
34
|
+
const measure = (0, _react.useCallback)(() => {
|
|
35
|
+
if (!parentRef.current) return;
|
|
36
|
+
const rect = parentRef.current.getBoundingClientRect();
|
|
37
|
+
const newHeight = Math.floor(rect.height);
|
|
38
|
+
if (newHeight > 0 && newHeight !== height) {
|
|
39
|
+
console.log("MEASURE : ", newHeight);
|
|
40
|
+
setHeight(newHeight);
|
|
41
|
+
}
|
|
42
|
+
}, [parentRef, height]);
|
|
43
|
+
|
|
44
|
+
// 🔁 Resize observer
|
|
45
|
+
(0, _useResizeObserver.useResizeObserver)(parentRef, measure);
|
|
46
|
+
|
|
47
|
+
// ⚡ Syncfusion resize trigger
|
|
48
|
+
(0, _react.useEffect)(() => {
|
|
49
|
+
if (containerRef.current && height > 0) {
|
|
50
|
+
try {
|
|
51
|
+
containerRef.current.resize();
|
|
52
|
+
containerRef.current.documentEditor.resize();
|
|
53
|
+
} catch (e) {
|
|
54
|
+
// silent
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}, [height, containerRef]);
|
|
58
|
+
return height;
|
|
59
|
+
}
|
|
76
60
|
const WordDocumentViewer = props => {
|
|
77
61
|
const [container, setContainer] = _react.default.useState(null);
|
|
78
62
|
const [items, setItems] = _react.default.useState(null);
|
|
@@ -85,12 +69,14 @@ const WordDocumentViewer = props => {
|
|
|
85
69
|
const anchorEnd = (0, _react.useRef)(false);
|
|
86
70
|
const deleteLockRef = (0, _react.useRef)(false);
|
|
87
71
|
const loading = (0, _react.useRef)(true);
|
|
88
|
-
const
|
|
72
|
+
const parentRef = (0, _useOnFullyVisible.useOnFullyVisible)(el => {
|
|
89
73
|
if (!reRendering) {
|
|
90
74
|
setVisible(false);
|
|
91
75
|
setReRendering(true);
|
|
92
76
|
}
|
|
93
77
|
});
|
|
78
|
+
const containerRef = (0, _react.useRef)(null);
|
|
79
|
+
const editorHeight = useDynamicSyncfusionHeight(parentRef, containerRef);
|
|
94
80
|
function isPointInsideElement(x, y, el) {
|
|
95
81
|
if (!el) return false;
|
|
96
82
|
const rect = el.getBoundingClientRect();
|
|
@@ -557,7 +543,7 @@ const WordDocumentViewer = props => {
|
|
|
557
543
|
height: '100%'
|
|
558
544
|
},
|
|
559
545
|
id: "parent-container",
|
|
560
|
-
ref:
|
|
546
|
+
ref: parentRef
|
|
561
547
|
}, !visible && /*#__PURE__*/_react.default.createElement("div", {
|
|
562
548
|
style: {
|
|
563
549
|
height: '100%',
|
|
@@ -588,9 +574,10 @@ const WordDocumentViewer = props => {
|
|
|
588
574
|
}
|
|
589
575
|
}, errorMessage))), visible && items && (_Utils.default.isNull(props.trackChanges) || props.trackChanges === true) && /*#__PURE__*/_react.default.createElement(_ej2ReactDocumenteditor.DocumentEditorContainerComponent, {
|
|
590
576
|
id: "".concat(props.id, "-container"),
|
|
591
|
-
height:
|
|
577
|
+
height: editorHeight > 0 ? "".concat(editorHeight, "px") : '1200px',
|
|
592
578
|
ref: scope => {
|
|
593
579
|
setContainer(scope);
|
|
580
|
+
containerRef.current = scope;
|
|
594
581
|
},
|
|
595
582
|
created: () => {
|
|
596
583
|
if (container) {
|
|
@@ -609,9 +596,10 @@ const WordDocumentViewer = props => {
|
|
|
609
596
|
enableToolbar: !props.readOnly || props.commentsOnly
|
|
610
597
|
}), visible && items && props.trackChanges === false && /*#__PURE__*/_react.default.createElement(_ej2ReactDocumenteditor.DocumentEditorContainerComponent, {
|
|
611
598
|
id: "".concat(props.id, "-container"),
|
|
612
|
-
height:
|
|
599
|
+
height: editorHeight > 0 ? "".concat(editorHeight, "px") : '1200px',
|
|
613
600
|
ref: scope => {
|
|
614
601
|
setContainer(scope);
|
|
602
|
+
containerRef.current = scope;
|
|
615
603
|
},
|
|
616
604
|
created: () => {
|
|
617
605
|
if (container) {
|
|
@@ -82,6 +82,7 @@ function normalizeLogo(src) {
|
|
|
82
82
|
return DATA_URL_PREFIX + s;
|
|
83
83
|
}
|
|
84
84
|
function FoldingSideTabDashboard(props) {
|
|
85
|
+
var _props$appLogoPath;
|
|
85
86
|
const [open, setOpen] = React.useState(true);
|
|
86
87
|
const [navDrawerOpen, setNavDrawerOpen] = React.useState(true);
|
|
87
88
|
const [loading, setLoading] = React.useState(true);
|
|
@@ -407,7 +408,7 @@ function FoldingSideTabDashboard(props) {
|
|
|
407
408
|
dashboardLauncher: () => {
|
|
408
409
|
launchDashboard();
|
|
409
410
|
},
|
|
410
|
-
appLogoPath: props.appLogoPath,
|
|
411
|
+
appLogoPath: (_props$appLogoPath = props.appLogoPath) !== null && _props$appLogoPath !== void 0 ? _props$appLogoPath : '',
|
|
411
412
|
logo: {
|
|
412
413
|
outterLink: '',
|
|
413
414
|
text: '',
|
|
@@ -455,7 +456,7 @@ FoldingSideTabDashboard.propTypes = {
|
|
|
455
456
|
showDashboardMenu: _propTypes.default.bool,
|
|
456
457
|
logo: _propTypes.default.string,
|
|
457
458
|
logoStyle: _propTypes.default.object,
|
|
458
|
-
appLogoPath: _propTypes.default.
|
|
459
|
+
appLogoPath: _propTypes.default.object,
|
|
459
460
|
avatar: _propTypes.default.string,
|
|
460
461
|
logoutCallBack: _propTypes.default.func
|
|
461
462
|
};
|
|
@@ -130,8 +130,8 @@ function FoldingTabSidebar(props) {
|
|
|
130
130
|
});
|
|
131
131
|
const activeRoute = routeName => activeRouteMenu.id === routeName;
|
|
132
132
|
const getLiClassName = prop => 'li-' + prop.level;
|
|
133
|
-
const fallbackIcon = prop => {
|
|
134
|
-
var _prop$name;
|
|
133
|
+
const fallbackIcon = (prop, iconNode) => {
|
|
134
|
+
var _prop$name, _prop$name$charAt, _prop$name2, _prop$name$charAt2, _prop$name3;
|
|
135
135
|
if (prop.icon) return iconNode;
|
|
136
136
|
if (prop.level === 0) {
|
|
137
137
|
return /*#__PURE__*/_react.default.createElement(_MoreHoriz.default, {
|
|
@@ -139,8 +139,11 @@ function FoldingTabSidebar(props) {
|
|
|
139
139
|
});
|
|
140
140
|
}
|
|
141
141
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
142
|
-
className: "mini-avatar"
|
|
143
|
-
|
|
142
|
+
className: "mini-avatar",
|
|
143
|
+
style: {
|
|
144
|
+
fontSize: '10px'
|
|
145
|
+
}
|
|
146
|
+
}, ((_prop$name = prop.name) === null || _prop$name === void 0 ? void 0 : _prop$name.charAt(0)) + ((_prop$name$charAt = (_prop$name2 = prop.name) === null || _prop$name2 === void 0 ? void 0 : _prop$name2.charAt(1)) !== null && _prop$name$charAt !== void 0 ? _prop$name$charAt : '') + ((_prop$name$charAt2 = (_prop$name3 = prop.name) === null || _prop$name3 === void 0 ? void 0 : _prop$name3.charAt(2)) !== null && _prop$name$charAt2 !== void 0 ? _prop$name$charAt2 : '') + '...');
|
|
144
147
|
};
|
|
145
148
|
|
|
146
149
|
/* ----------------- createLinks with dynamic classes + theme colors ----------------- */
|
|
@@ -226,7 +229,7 @@ function FoldingTabSidebar(props) {
|
|
|
226
229
|
marginTop: 0
|
|
227
230
|
}
|
|
228
231
|
}))
|
|
229
|
-
}) : !iconNode ? fallbackIcon(prop) : null);
|
|
232
|
+
}) : !iconNode ? fallbackIcon(prop, iconNode) : null);
|
|
230
233
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
|
|
231
234
|
key: key
|
|
232
235
|
}, shouldShowTooltip ? /*#__PURE__*/_react.default.createElement(_material.Tooltip, {
|
|
@@ -246,6 +249,22 @@ function FoldingTabSidebar(props) {
|
|
|
246
249
|
className: "nav"
|
|
247
250
|
}, createLinks(prop.views))));
|
|
248
251
|
}
|
|
252
|
+
let menuLink = /*#__PURE__*/_react.default.createElement(_MenuLink.default, {
|
|
253
|
+
config: prop.item,
|
|
254
|
+
clickCallback: prop.name === 'Dashboard' ? item => {
|
|
255
|
+
props.dashboardLauncher && props.dashboardLauncher();
|
|
256
|
+
setActiveRouteMenu(item);
|
|
257
|
+
} : item => setActiveRouteMenu(item),
|
|
258
|
+
autoClick: prop.name === 'My Work Items' || prop.item && prop.item.defaultItem,
|
|
259
|
+
viewId: "menuBar",
|
|
260
|
+
icon: prop.icon,
|
|
261
|
+
content: open ? null : fallbackIcon(prop, iconNode),
|
|
262
|
+
iconColor: (prop.name === 'Dashboard' || prop.name === 'My Work Items') && isActive ? props.secondaryThemeColor : null,
|
|
263
|
+
name: prop.name,
|
|
264
|
+
id: prop.id,
|
|
265
|
+
level: prop.level,
|
|
266
|
+
tab: TAB
|
|
267
|
+
});
|
|
249
268
|
const content = /*#__PURE__*/_react.default.createElement(_material.ListItemButton, {
|
|
250
269
|
key: key,
|
|
251
270
|
className: prop.name === 'Dashboard' || prop.name === 'My Work Items' ? isActive ? 'dashboard-link-active' : 'dashboard-link' : leafClassName,
|
|
@@ -267,22 +286,8 @@ function FoldingTabSidebar(props) {
|
|
|
267
286
|
color: (prop.name === 'Dashboard' || prop.name === 'My Work Items') && isActive ? secondaryThemeColor : 'inherit'
|
|
268
287
|
}
|
|
269
288
|
}, iconNode), open ? /*#__PURE__*/_react.default.createElement(_material.ListItemText, {
|
|
270
|
-
primary: /*#__PURE__*/_react.default.createElement("span", null,
|
|
271
|
-
|
|
272
|
-
clickCallback: prop.name === 'Dashboard' ? item => {
|
|
273
|
-
props.dashboardLauncher && props.dashboardLauncher();
|
|
274
|
-
setActiveRouteMenu(item);
|
|
275
|
-
} : item => setActiveRouteMenu(item),
|
|
276
|
-
autoClick: prop.name === 'My Work Items' || prop.item && prop.item.defaultItem,
|
|
277
|
-
viewId: "menuBar",
|
|
278
|
-
icon: prop.icon,
|
|
279
|
-
iconColor: (prop.name === 'Dashboard' || prop.name === 'My Work Items') && isActive ? props.secondaryThemeColor : null,
|
|
280
|
-
name: prop.name,
|
|
281
|
-
id: prop.id,
|
|
282
|
-
level: prop.level,
|
|
283
|
-
tab: TAB
|
|
284
|
-
}))
|
|
285
|
-
}) : !iconNode ? fallbackIcon(prop) : null);
|
|
289
|
+
primary: /*#__PURE__*/_react.default.createElement("span", null, menuLink)
|
|
290
|
+
}) : !iconNode ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, menuLink) : null);
|
|
286
291
|
|
|
287
292
|
// leaf
|
|
288
293
|
return !open ? /*#__PURE__*/_react.default.createElement(_material.Tooltip, {
|
|
@@ -403,7 +408,7 @@ FoldingTabSidebar.propTypes = {
|
|
|
403
408
|
text: _propTypes.default.string.isRequired
|
|
404
409
|
})]),
|
|
405
410
|
heading: _propTypes.default.string,
|
|
406
|
-
appLogoPath: _propTypes.default.
|
|
411
|
+
appLogoPath: _propTypes.default.object,
|
|
407
412
|
closeSidebar: _propTypes.default.func,
|
|
408
413
|
dashboardLauncher: _propTypes.default.func,
|
|
409
414
|
logoStyle: _propTypes.default.object,
|
|
@@ -16,7 +16,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
16
16
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
17
17
|
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
18
18
|
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
|
19
|
-
const AddressSearchWrapper = /*#__PURE__*/_react.default.memo(
|
|
19
|
+
const AddressSearchWrapper = /*#__PURE__*/_react.default.memo(props => {
|
|
20
20
|
const base = props.base;
|
|
21
21
|
const getAddressProp = (components, id) => {
|
|
22
22
|
for (const component of components) {
|
|
@@ -75,8 +75,8 @@ const AddressSearchWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_reac
|
|
|
75
75
|
}));
|
|
76
76
|
}
|
|
77
77
|
});
|
|
78
|
-
})
|
|
79
|
-
const AddressSearch = /*#__PURE__*/_react.default.memo(
|
|
78
|
+
});
|
|
79
|
+
const AddressSearch = /*#__PURE__*/_react.default.memo(props => {
|
|
80
80
|
return /*#__PURE__*/_react.default.createElement(_BaseField.BaseField, _extends({}, props, {
|
|
81
81
|
handle: props.handle,
|
|
82
82
|
valueParser: (value, inbound) => {
|
|
@@ -90,5 +90,5 @@ const AddressSearch = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.defau
|
|
|
90
90
|
}), base => /*#__PURE__*/_react.default.createElement(AddressSearchWrapper, _extends({
|
|
91
91
|
base: base
|
|
92
92
|
}, props)));
|
|
93
|
-
})
|
|
93
|
+
});
|
|
94
94
|
var _default = exports.default = AddressSearch;
|
|
@@ -11,7 +11,7 @@ var _BaseField = require("./BaseField");
|
|
|
11
11
|
var _Utils = _interopRequireDefault(require("../../Utils"));
|
|
12
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
13
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
14
|
-
const CheckboxWrapper = /*#__PURE__*/_react.default.memo(
|
|
14
|
+
const CheckboxWrapper = /*#__PURE__*/_react.default.memo(props => {
|
|
15
15
|
const base = props.base;
|
|
16
16
|
return /*#__PURE__*/_react.default.createElement(_FormControlLabel.default, {
|
|
17
17
|
style: {
|
|
@@ -32,12 +32,12 @@ const CheckboxWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.def
|
|
|
32
32
|
}),
|
|
33
33
|
label: props.config.attributes['label']
|
|
34
34
|
});
|
|
35
|
-
})
|
|
36
|
-
const Checkbox = /*#__PURE__*/_react.default.memo(
|
|
35
|
+
});
|
|
36
|
+
const Checkbox = /*#__PURE__*/_react.default.memo(props => {
|
|
37
37
|
return /*#__PURE__*/_react.default.createElement(_BaseField.BaseField, _extends({}, props, {
|
|
38
38
|
handle: props.handle
|
|
39
39
|
}), base => /*#__PURE__*/_react.default.createElement(CheckboxWrapper, _extends({
|
|
40
40
|
base: base
|
|
41
41
|
}, props)));
|
|
42
|
-
})
|
|
42
|
+
});
|
|
43
43
|
var _default = exports.default = Checkbox;
|
|
@@ -13,7 +13,7 @@ var _reactRedux = require("react-redux");
|
|
|
13
13
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
14
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (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 (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
15
15
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
16
|
-
const CurrencyFieldWrapper = /*#__PURE__*/_react.default.memo(
|
|
16
|
+
const CurrencyFieldWrapper = /*#__PURE__*/_react.default.memo(props => {
|
|
17
17
|
var _props$config$attribu, _props$config$attribu2, _props$config$attribu3, _props$config$attribu4, _props$config$attribu5, _props$config$attribu6;
|
|
18
18
|
const base = props.base;
|
|
19
19
|
const width = !_Utils.default.isNull((_props$config$attribu = props.config.attributes) === null || _props$config$attribu === void 0 || (_props$config$attribu = _props$config$attribu.style) === null || _props$config$attribu === void 0 ? void 0 : _props$config$attribu.width) ? props.config.attributes.style.width : "100%";
|
|
@@ -86,8 +86,8 @@ const CurrencyFieldWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_reac
|
|
|
86
86
|
onChange: handleInputChange,
|
|
87
87
|
onBlur: handleBlur
|
|
88
88
|
});
|
|
89
|
-
})
|
|
90
|
-
const CurrencyField = /*#__PURE__*/_react.default.memo(
|
|
89
|
+
});
|
|
90
|
+
const CurrencyField = /*#__PURE__*/_react.default.memo(props => {
|
|
91
91
|
return /*#__PURE__*/_react.default.createElement(_BaseField.BaseField, _extends({}, props, {
|
|
92
92
|
handle: props.handle,
|
|
93
93
|
valueParser: (value, inbound) => {
|
|
@@ -104,5 +104,5 @@ const CurrencyField = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.defau
|
|
|
104
104
|
}), base => /*#__PURE__*/_react.default.createElement(CurrencyFieldWrapper, _extends({
|
|
105
105
|
base: base
|
|
106
106
|
}, props)));
|
|
107
|
-
})
|
|
107
|
+
});
|
|
108
108
|
var _default = exports.default = CurrencyField;
|
|
@@ -37,7 +37,7 @@ var _IconField = _interopRequireDefault(require("./IconField"));
|
|
|
37
37
|
var _DocumentTemplateDesigner = _interopRequireDefault(require("../DocumentTemplateDesigner"));
|
|
38
38
|
var _DynamicJS = _interopRequireDefault(require("../../DynamicJS"));
|
|
39
39
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
40
|
-
const FieldSet = /*#__PURE__*/_react.default.memo(
|
|
40
|
+
const FieldSet = /*#__PURE__*/_react.default.memo(props => {
|
|
41
41
|
const [fieldGrid] = _react.default.useState(_Utils.default.getFieldGrid(props.config.attributes, props.config.fields));
|
|
42
42
|
const [componentHandles] = _react.default.useState({});
|
|
43
43
|
const [visible, setVisible] = _react.default.useState(false);
|
|
@@ -64,14 +64,14 @@ const FieldSet = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.fo
|
|
|
64
64
|
}, []);
|
|
65
65
|
_react.default.useEffect(() => {
|
|
66
66
|
if (!_Utils.default.isNull(props.disabled)) {
|
|
67
|
-
|
|
67
|
+
updateComponentDisabledState(props.disabled);
|
|
68
68
|
}
|
|
69
69
|
}, [props.disabled]);
|
|
70
70
|
function fireChangeEvent() {
|
|
71
71
|
let event = new _Event.default(props.handle, props.viewId);
|
|
72
72
|
_Observable.default.fireEvent(_EventType.default.VALUE_CHANGE, event);
|
|
73
73
|
}
|
|
74
|
-
function
|
|
74
|
+
function updateComponentDisabledState(disabled) {
|
|
75
75
|
let properties = Object.getOwnPropertyNames(componentHandles);
|
|
76
76
|
for (const property of properties) {
|
|
77
77
|
let componentHandle = componentHandles[property];
|
|
@@ -389,7 +389,7 @@ const FieldSet = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.fo
|
|
|
389
389
|
return fieldNames;
|
|
390
390
|
},
|
|
391
391
|
set disabled(disabled) {
|
|
392
|
-
|
|
392
|
+
updateComponentDisabledState(disabled);
|
|
393
393
|
},
|
|
394
394
|
clear() {
|
|
395
395
|
let properties = Object.getOwnPropertyNames(componentHandles);
|
|
@@ -463,7 +463,7 @@ const FieldSet = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.fo
|
|
|
463
463
|
setVisible(true);
|
|
464
464
|
}
|
|
465
465
|
if (!_Utils.default.isNull(props.config) && !_Utils.default.isNull(props.config.disabled)) {
|
|
466
|
-
|
|
466
|
+
updateComponentDisabledState(_Utils.default.evaluateBooleanExpression(props.config.disabled, props.config.id));
|
|
467
467
|
}
|
|
468
468
|
refreshComponents();
|
|
469
469
|
}
|
|
@@ -520,5 +520,5 @@ const FieldSet = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.fo
|
|
|
520
520
|
}, !_Utils.default.isNull(props.config.attributes) && !_Utils.default.isNull(props.config.attributes['label']) ? /*#__PURE__*/_react.default.createElement("div", {
|
|
521
521
|
className: 'fieldSetTitle'
|
|
522
522
|
}, props.config.attributes['label']) : null, !_Utils.default.isNull(fieldGrid) ? render(props.config) : null);
|
|
523
|
-
})
|
|
523
|
+
});
|
|
524
524
|
var _default = exports.default = FieldSet;
|
|
@@ -43,7 +43,7 @@ const useStyles = (0, _styles.makeStyles)(theme => ({
|
|
|
43
43
|
},
|
|
44
44
|
root: {}
|
|
45
45
|
}));
|
|
46
|
-
const Form = /*#__PURE__*/_react.default.memo(
|
|
46
|
+
const Form = /*#__PURE__*/_react.default.memo(props => {
|
|
47
47
|
const values = _react.default.useRef(!_Utils.default.isNull(props.values) ? props.values : {});
|
|
48
48
|
const [masterValues, setMasterValues] = _react.default.useState(null);
|
|
49
49
|
const [config, setConfig] = _react.default.useState(_Utils.default.parseConfig(props.config, props.viewId));
|
|
@@ -635,7 +635,6 @@ const Form = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwar
|
|
|
635
635
|
config: section,
|
|
636
636
|
disabled: props.disabled,
|
|
637
637
|
handle: createSectionHandle(section),
|
|
638
|
-
ref: /*#__PURE__*/_react.default.createRef(),
|
|
639
638
|
form: () => {
|
|
640
639
|
return !_Utils.default.isNull(props.handle.api) ? props.handle.api : api();
|
|
641
640
|
},
|
|
@@ -654,5 +653,5 @@ const Form = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwar
|
|
|
654
653
|
maxHeight: '70vh'
|
|
655
654
|
}, props.config) : null
|
|
656
655
|
}, !_Utils.default.isNull(props.config.id) ? render(props.config) : /*#__PURE__*/_react.default.createElement("div", null, "ERROR: A form must have an ID"));
|
|
657
|
-
})
|
|
656
|
+
});
|
|
658
657
|
var _default = exports.default = Form;
|
|
@@ -12,41 +12,35 @@ var _Icon = _interopRequireDefault(require("../Icon"));
|
|
|
12
12
|
var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
|
|
13
13
|
var _InputLabel = _interopRequireDefault(require("@mui/material/InputLabel"));
|
|
14
14
|
var _Toolbar = _interopRequireDefault(require("../Toolbar"));
|
|
15
|
-
var _Observable = _interopRequireDefault(require("../../event/Observable"));
|
|
16
15
|
var _DynamicJS = _interopRequireDefault(require("../../DynamicJS"));
|
|
17
16
|
var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
|
|
18
17
|
var _ApplicationManager = _interopRequireDefault(require("../../ApplicationManager"));
|
|
19
18
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
19
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
21
|
-
function getEditorType(columnName, gridConfig) {
|
|
22
|
-
for (const column of gridConfig.columns) {
|
|
23
|
-
if ((column.id === columnName || column.dataBinding === columnName) && !_Utils.default.isNull(column.editor)) {
|
|
24
|
-
return column.editor.fieldType;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
return null;
|
|
28
|
-
}
|
|
29
20
|
function createRecord(row, gridConfig, inbound) {
|
|
30
21
|
let record = {};
|
|
31
22
|
for (const column of gridConfig.columns) {
|
|
32
23
|
let property = !_Utils.default.isNull(column.dataBinding) ? column.dataBinding : column.id;
|
|
33
24
|
let val = _Utils.default.readNestedProperty(row, property);
|
|
34
|
-
_Utils.default.updateNestedProperty(record, property, val);
|
|
25
|
+
_Utils.default.updateNestedProperty(record, property, val !== null && val !== void 0 ? val : null);
|
|
35
26
|
}
|
|
36
27
|
|
|
37
28
|
//record.id = row.id >= 0 ? row.id : null;
|
|
38
29
|
record.id = row.id;
|
|
39
30
|
return record;
|
|
40
31
|
}
|
|
41
|
-
const GridFieldWrapper = /*#__PURE__*/_react.default.memo(
|
|
32
|
+
const GridFieldWrapper = /*#__PURE__*/_react.default.memo(props => {
|
|
42
33
|
const base = props.base;
|
|
43
34
|
const newRowIdCounter = _react.default.useRef(-1);
|
|
44
35
|
const [selection, setSelection] = _react.default.useState([]);
|
|
45
36
|
const [label, setLabel] = _react.default.useState();
|
|
46
|
-
const
|
|
37
|
+
const loaded = _react.default.useRef(false);
|
|
38
|
+
const [rowModel, setRowModel] = _react.default.useState([]);
|
|
39
|
+
const [latestAddedRow, setLatestAddedRow] = _react.default.useState([]);
|
|
40
|
+
const hasErrors = _react.default.useRef(false);
|
|
47
41
|
const [crudToolstripWidth, setCrudToolstripWidth] = _react.default.useState(null);
|
|
42
|
+
const editing = _react.default.useRef(false);
|
|
48
43
|
const [hasButtons] = _react.default.useState(_Utils.default.isNull(props.config.attributes) || _Utils.default.isNull(props.config.attributes.addDisabled) || _Utils.default.evaluateBooleanExpression(props.config.attributes.addDisabled, props.config.id) === false || _Utils.default.isNull(props.config.attributes.removeDisabled) || _Utils.default.evaluateBooleanExpression(props.config.attributes.removeDisabled, props.config.id) === false);
|
|
49
|
-
const initialValueSet = _react.default.useRef(false);
|
|
50
44
|
_react.default.useEffect(() => {
|
|
51
45
|
var _props$config$attribu, _props$config$attribu2;
|
|
52
46
|
let numCrudButtons = 0;
|
|
@@ -67,26 +61,16 @@ const GridFieldWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.de
|
|
|
67
61
|
setLabel(_Utils.default.getComponentAttribute(props.config, 'label', ''));
|
|
68
62
|
}
|
|
69
63
|
}, []);
|
|
70
|
-
function setNewRows(values) {
|
|
71
|
-
if (Array.isArray(values)) {
|
|
72
|
-
let newRows = [];
|
|
73
|
-
for (const value of values) {
|
|
74
|
-
if (value) {
|
|
75
|
-
newRows.push(value);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
setRows(newRows);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
64
|
_react.default.useEffect(() => {
|
|
82
|
-
if (
|
|
83
|
-
|
|
65
|
+
if (editing.current) {
|
|
66
|
+
editing.current = false;
|
|
67
|
+
return;
|
|
84
68
|
}
|
|
69
|
+
setRowModel(base.value);
|
|
85
70
|
}, [base.value]);
|
|
86
71
|
_react.default.useEffect(() => {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}, [base.valueObject[base.valueProperty]]);
|
|
72
|
+
props.gridHandle.api.select([latestAddedRow.id]);
|
|
73
|
+
}, [latestAddedRow]);
|
|
90
74
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
91
75
|
className: "MuiFormControl-root MuiTextField-root MuiFormControl-marginDense",
|
|
92
76
|
style: _Utils.default.mergeStyles({}, props.config)
|
|
@@ -124,9 +108,11 @@ const GridFieldWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.de
|
|
|
124
108
|
"aria-controls": "menu-list-grow",
|
|
125
109
|
"aria-haspopup": "true",
|
|
126
110
|
onClick: () => {
|
|
127
|
-
|
|
111
|
+
let row = {
|
|
128
112
|
id: newRowIdCounter.current--
|
|
129
|
-
}
|
|
113
|
+
};
|
|
114
|
+
setRowModel(props.gridHandle.api.addRows([row]));
|
|
115
|
+
setLatestAddedRow(row);
|
|
130
116
|
}
|
|
131
117
|
}, /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
132
118
|
id: 'ADD'
|
|
@@ -146,31 +132,27 @@ const GridFieldWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.de
|
|
|
146
132
|
}, /*#__PURE__*/_react.default.createElement(_Toolbar.default, {
|
|
147
133
|
config: props.config.toolstrip,
|
|
148
134
|
handle: props.toolstripHandle,
|
|
149
|
-
ref: /*#__PURE__*/_react.default.createRef(),
|
|
150
135
|
viewId: props.viewId
|
|
151
136
|
})) : null)) : null, /*#__PURE__*/_react.default.createElement(_DataGrid.DataGrid, {
|
|
152
137
|
config: props.config.grid,
|
|
153
138
|
handle: props.gridHandle,
|
|
154
|
-
ref: /*#__PURE__*/_react.default.createRef(),
|
|
155
139
|
viewId: props.viewId,
|
|
140
|
+
loaded: loaded,
|
|
156
141
|
disabled: base.disabled,
|
|
157
|
-
rows:
|
|
142
|
+
rows: rowModel,
|
|
158
143
|
formValues: props.values,
|
|
159
|
-
valueChangeHandler: newRows => {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
value =
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
}
|
|
144
|
+
valueChangeHandler: (newRows, hasRowErrors) => {
|
|
145
|
+
if (!_Utils.default.isNull(newRows) && !hasRowErrors) {
|
|
146
|
+
editing.current = true;
|
|
147
|
+
let value = newRows.map(row => createRecord(row, props.config.grid, false));
|
|
148
|
+
base.handleValueChange(value);
|
|
149
|
+
} else {
|
|
150
|
+
base.handleValueChange(null);
|
|
167
151
|
}
|
|
168
|
-
base.handleValueChange(value);
|
|
169
152
|
},
|
|
170
153
|
pagination: false,
|
|
171
154
|
onSelectionChange: selection => {
|
|
172
155
|
setSelection(selection);
|
|
173
|
-
initialValueSet.current = true;
|
|
174
156
|
},
|
|
175
157
|
filterWrapperClass: 'transferListFilterWrapper',
|
|
176
158
|
hasBorder: false
|
|
@@ -180,8 +162,8 @@ const GridFieldWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.de
|
|
|
180
162
|
color: "rgb(244, 67, 54)"
|
|
181
163
|
}
|
|
182
164
|
}, base.errorMessage)));
|
|
183
|
-
})
|
|
184
|
-
const GridField = /*#__PURE__*/_react.default.memo(
|
|
165
|
+
});
|
|
166
|
+
const GridField = /*#__PURE__*/_react.default.memo(props => {
|
|
185
167
|
const [gridHandle] = _react.default.useState({});
|
|
186
168
|
const [toolHandle] = _react.default.useState(!_Utils.default.isNull(props.config.toolstrip) ? {} : null);
|
|
187
169
|
return /*#__PURE__*/_react.default.createElement(_BaseField.BaseField, _extends({}, props, {
|
|
@@ -231,5 +213,5 @@ const GridField = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.f
|
|
|
231
213
|
toolstripHandle: toolHandle,
|
|
232
214
|
base: base
|
|
233
215
|
}, props)));
|
|
234
|
-
})
|
|
216
|
+
});
|
|
235
217
|
var _default = exports.default = GridField;
|
|
@@ -10,7 +10,7 @@ var _Icon = _interopRequireDefault(require("../Icon"));
|
|
|
10
10
|
var _Utils = _interopRequireDefault(require("../../Utils"));
|
|
11
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
12
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
13
|
-
const IconWrapper = /*#__PURE__*/_react.default.memo(
|
|
13
|
+
const IconWrapper = /*#__PURE__*/_react.default.memo(props => {
|
|
14
14
|
var _props$config$attribu;
|
|
15
15
|
const base = props.base;
|
|
16
16
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, ((_props$config$attribu = props.config.attributes) === null || _props$config$attribu === void 0 ? void 0 : _props$config$attribu.label) && /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -19,12 +19,12 @@ const IconWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default
|
|
|
19
19
|
id: props.config.iconId,
|
|
20
20
|
color: props.config.iconColor
|
|
21
21
|
})));
|
|
22
|
-
})
|
|
23
|
-
const IconField = /*#__PURE__*/_react.default.memo(
|
|
22
|
+
});
|
|
23
|
+
const IconField = /*#__PURE__*/_react.default.memo(props => {
|
|
24
24
|
return /*#__PURE__*/_react.default.createElement(_BaseField.BaseField, _extends({}, props, {
|
|
25
25
|
handle: props.handle
|
|
26
26
|
}), base => /*#__PURE__*/_react.default.createElement(IconWrapper, _extends({
|
|
27
27
|
base: base
|
|
28
28
|
}, props)));
|
|
29
|
-
})
|
|
29
|
+
});
|
|
30
30
|
var _default = exports.default = IconField;
|