@agilemotion/oui-react-js 1.8.30 → 1.8.32

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 (56) hide show
  1. package/dist/ApplicationManager.js +116 -304
  2. package/dist/DynamicJS.js +1 -0
  3. package/dist/RestService.js +4 -0
  4. package/dist/ViewContext.js +239 -0
  5. package/dist/components/AlertBar.js +1 -1
  6. package/dist/components/Button.css +3 -0
  7. package/dist/components/Button.js +5 -3
  8. package/dist/components/DataGrid.css +4 -0
  9. package/dist/components/DataGrid.js +8 -4
  10. package/dist/components/DataGridFilter.js +2 -2
  11. package/dist/components/DataGridHeading.js +1 -1
  12. package/dist/components/DocumentViewer.js +22 -10
  13. package/dist/components/Graph.js +2 -0
  14. package/dist/components/HtmlPanel.js +0 -1
  15. package/dist/components/Icon.js +22 -0
  16. package/dist/components/LottieIcon.js +19 -19
  17. package/dist/components/SocketManager.js +5 -0
  18. package/dist/components/Spinner.js +56 -0
  19. package/dist/components/StepperTitleBar.js +11 -2
  20. package/dist/components/TabPage.js +1 -1
  21. package/dist/components/TabPanel.js +2 -1
  22. package/dist/components/TitleBar.js +1 -1
  23. package/dist/components/Toolbar.js +5 -7
  24. package/dist/components/WordDocumentViewer.js +27 -4
  25. package/dist/components/customInput/File.js +1 -2
  26. package/dist/components/dashboard/SideMenuModuleDashboard.css +4 -0
  27. package/dist/components/dashboard/components/Header.js +1 -1
  28. package/dist/components/form/CurrencyField.js +1 -1
  29. package/dist/components/form/DatePicker.js +1 -1
  30. package/dist/components/form/FieldSet.js +1 -1
  31. package/dist/components/form/Form.css +8 -0
  32. package/dist/components/form/IconField.js +7 -3
  33. package/dist/components/form/LookupField.js +1 -1
  34. package/dist/components/form/Section.js +6 -1
  35. package/dist/components/form/SelectItem.js +1 -0
  36. package/dist/components/form/TextField.js +1 -0
  37. package/dist/components/form/TimePicker.js +1 -0
  38. package/dist/components/form/TransferList.js +6 -5
  39. package/dist/components/layout/Layout.js +11 -2
  40. package/dist/components/layout/View.css +57 -0
  41. package/dist/components/layout/ViewPort.js +1 -0
  42. package/dist/components/layout/Window.js +4 -1
  43. package/dist/components/layout/WindowViewPort.js +16 -4
  44. package/dist/components/media/ClosablePanel.css +1 -1
  45. package/dist/components/media/ToolbarButton.js +2 -1
  46. package/dist/components/media/TrainingRoom.js +9 -1
  47. package/dist/components/media/VCEventType.js +0 -3
  48. package/dist/components/media/VCRoom.js +15 -1
  49. package/dist/components/media/chat/ChatRoom.js +6 -17
  50. package/dist/components/media/chat/ChatRoomItem.js +8 -8
  51. package/dist/components/media/chat/ChatRooms.scss +27 -13
  52. package/dist/event/EventType.js +1 -0
  53. package/dist/event/Observable.js +11 -2
  54. package/dist/event/RouteActionHandler.js +49 -56
  55. package/dist/js/ProcurementMeetings.js +65 -0
  56. package/package.json +1 -1
@@ -88,9 +88,18 @@ const StepperTitleBar = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.def
88
88
  return [];
89
89
  },
90
90
  show() {
91
- let steps = _ApplicationManager.default.graphs[0].getTitleStack();
91
+ let graphs = [];
92
+ for (const key of Object.keys(this.viewContext)) {
93
+ let viewManager = this.viewContext[key];
94
+ for (const graph of viewManager.getGraphs()) {
95
+ graphs.push(graph);
96
+ }
97
+ }
98
+
99
+ // TODO : Ensure this picks the graph from the correct view
100
+ let steps = graphs[graphs.length - 1].getTitleStack();
92
101
  setSteps(steps);
93
- currentIndex.current = _ApplicationManager.default.graphs[0].getCurrentNodeIndex();
102
+ currentIndex.current = graphs[graphs.length - 1].getCurrentNodeIndex();
94
103
  setActiveSegmentPercentage(100 - 10 * (steps.length - 1));
95
104
  }
96
105
  };
@@ -39,7 +39,7 @@ const TabPage = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.for
39
39
  let componentKey = 0;
40
40
  return /*#__PURE__*/_react.default.createElement("div", {
41
41
  style: _Utils.default.mergeStyles({
42
- width: "inherit"
42
+ width: "100%"
43
43
  }, props.config)
44
44
  }, /*#__PURE__*/_react.default.createElement(_Typography.default, _extends({
45
45
  component: "div",
@@ -86,7 +86,8 @@ const TabPanel = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.fo
86
86
  return /*#__PURE__*/_react.default.createElement("div", {
87
87
  style: {
88
88
  margin: '16px'
89
- }
89
+ },
90
+ className: 'tab-page-container'
90
91
  }, page.components.map((component, index) => {
91
92
  return renderTabPageComponent(component, page.id, pageIndex + index);
92
93
  }));
@@ -31,7 +31,7 @@ const TitleBar = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.fo
31
31
  actions: [{
32
32
  actionType: 'script',
33
33
  script: {
34
- lines: [`if($event.data.name === 'title'){`, ` let component = @#{${props.config.id}};`, ` if(component) {`, ` component.title = $event.data.value`, ` }`, '}']
34
+ lines: [`if($event.data.name === 'title-${props.viewId}'){`, ` let component = @#{${props.config.id}};`, ` if(component) {`, ` component.title = $event.data.value`, ` }`, '}']
35
35
  }
36
36
  }]
37
37
  };
@@ -21,6 +21,7 @@ var _ClickAwayListener = _interopRequireDefault(require("@mui/material/ClickAway
21
21
  var _MenuList = _interopRequireDefault(require("@mui/material/MenuList"));
22
22
  var _Popper = _interopRequireDefault(require("@mui/material/Popper"));
23
23
  var _MenuItem = _interopRequireDefault(require("./menu/MenuItem"));
24
+ require("./Button.css");
24
25
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
25
26
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
26
27
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -137,15 +138,11 @@ const Toolbar = props => {
137
138
  setOpen(prevOpen => !prevOpen);
138
139
  };
139
140
  function getDefaultStyle(item) {
140
- return {
141
+ return _Utils.default.mergeStyles({
141
142
  height: item.type === 'toolbarSpacer' ? item.attributes?.style?.height ? item.attributes?.style?.height : '100%' : null,
142
143
  width: item.type === 'toolbarSpacer' ? '2' ? item.attributes?.style?.width : '100%' : null,
143
- minWidth: item.type === 'toolbarSpacer' ? '2' : _Utils.default.isNull(item.attributes) || _Utils.default.isNull(item.attributes['label']) ? '60px' : null,
144
- marginLeft: item.type === 'toolbarSpacer' ? '4px' : 0,
145
- marginRight: 4,
146
- marginBottom: 4,
147
- marginTop: item.type === 'toolbarSpacer' ? '6px' : 0
148
- };
144
+ minWidth: item.type === 'toolbarSpacer' ? '2' : _Utils.default.isNull(item.attributes) || _Utils.default.isNull(item.attributes['label']) ? '0px' : null
145
+ }, item);
149
146
  }
150
147
  function renderItem(item, defaultId) {
151
148
  if (_Utils.default.isNull(item.id)) {
@@ -326,6 +323,7 @@ const Toolbar = props => {
326
323
  }
327
324
  return visible && /*#__PURE__*/_react.default.createElement("div", {
328
325
  id: props.config.id,
326
+ className: 'oui-toolbar',
329
327
  style: _Utils.default.mergeStyles({
330
328
  borderBottom: '1px solid #e2e2e2',
331
329
  padding: '4px 0 0 0',
@@ -12,12 +12,16 @@ require("./DocumentTemplateDesignerComponent.css");
12
12
  var _ApplicationManager = _interopRequireDefault(require("../ApplicationManager"));
13
13
  var _ej2Base = require("@syncfusion/ej2-base");
14
14
  var _Alert = _interopRequireDefault(require("react-bootstrap/Alert"));
15
+ var _LottieIcon = _interopRequireDefault(require("./LottieIcon"));
15
16
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
17
  (0, _ej2Base.registerLicense)('ORg4AjUWIQA/Gnt2U1hhQlJBfV5AQmBIYVp/TGpJfl96cVxMZVVBJAtUQF1hTX5adkJiWHtWdXBXT2Je');
17
18
  _ej2ReactDocumenteditor.DocumentEditorContainerComponent.Inject(_ej2ReactDocumenteditor.Toolbar);
18
19
  const WordDocumentViewer = props => {
19
20
  const [container, setContainer] = _react.default.useState(null);
20
21
  const [items, setItems] = _react.default.useState(null);
22
+ const [height, setHeight] = _react.default.useState(0);
23
+ const [width, setWidth] = _react.default.useState(0);
24
+ const [visible, setVisible] = _react.default.useState(false);
21
25
  const [json, setJson] = _react.default.useState(null);
22
26
  const [errorMessage, setErrorMessage] = _react.default.useState(null);
23
27
 
@@ -41,6 +45,12 @@ const WordDocumentViewer = props => {
41
45
  _react.default.useEffect(() => {
42
46
  props.valueHandler.api = api();
43
47
  });
48
+ _react.default.useLayoutEffect(() => {
49
+ const timer = window.setTimeout(() => {
50
+ setVisible(true);
51
+ }, 1_000);
52
+ return () => window.clearTimeout(timer);
53
+ }, []);
44
54
  _react.default.useEffect(() => {
45
55
  let toolbarItems = ["Undo", "Redo", "Separator", {
46
56
  tooltipText: 'Bold',
@@ -133,12 +143,23 @@ const WordDocumentViewer = props => {
133
143
  }
134
144
  }, [json, container]);
135
145
  return /*#__PURE__*/_react.default.createElement("div", {
136
- className: 'col no-margin no-padding',
146
+ className: 'no-margin no-padding',
137
147
  style: {
138
148
  height: '100%'
139
149
  },
140
150
  id: 'parent-container'
141
- }, errorMessage && /*#__PURE__*/_react.default.createElement("div", {
151
+ }, !visible && /*#__PURE__*/_react.default.createElement("div", {
152
+ style: {
153
+ height: '100%',
154
+ width: '100%',
155
+ flexWrap: 'wrap',
156
+ display: 'flex',
157
+ justifyContent: 'center',
158
+ alignContent: 'center'
159
+ }
160
+ }, /*#__PURE__*/_react.default.createElement(_LottieIcon.default, {
161
+ id: 'waiting-sm'
162
+ })), errorMessage && /*#__PURE__*/_react.default.createElement("div", {
142
163
  style: {
143
164
  padding: '0 32px 0 32px',
144
165
  maxHeight: '64px'
@@ -155,7 +176,7 @@ const WordDocumentViewer = props => {
155
176
  style: {
156
177
  color: 'rgba(255, 255, 255, 0.8)'
157
178
  }
158
- }, errorMessage))), items && (_Utils.default.isNull(props.trackChanges) || props.trackChanges === true) && /*#__PURE__*/_react.default.createElement(_ej2ReactDocumenteditor.DocumentEditorContainerComponent, {
179
+ }, errorMessage))), visible && items && (_Utils.default.isNull(props.trackChanges) || props.trackChanges === true) && /*#__PURE__*/_react.default.createElement(_ej2ReactDocumenteditor.DocumentEditorContainerComponent, {
159
180
  id: "container",
160
181
  height: '690px',
161
182
  ref: scope => {
@@ -168,11 +189,12 @@ const WordDocumentViewer = props => {
168
189
  }
169
190
  },
170
191
  toolbarItems: items,
192
+ restrictEditing: props.readOnly,
171
193
  showPropertiesPane: false,
172
194
  enableTrackChanges: true,
173
195
  serviceUrl: "https://services.syncfusion.com/react/production/api/documenteditor/",
174
196
  enableToolbar: !(props.readOnly || props.commentsOnly)
175
- }), items && props.trackChanges === false && /*#__PURE__*/_react.default.createElement(_ej2ReactDocumenteditor.DocumentEditorContainerComponent, {
197
+ }), visible && items && props.trackChanges === false && /*#__PURE__*/_react.default.createElement(_ej2ReactDocumenteditor.DocumentEditorContainerComponent, {
176
198
  id: "container",
177
199
  height: '690px',
178
200
  ref: scope => {
@@ -185,6 +207,7 @@ const WordDocumentViewer = props => {
185
207
  }
186
208
  },
187
209
  toolbarItems: items,
210
+ restrictEditing: props.readOnly,
188
211
  showPropertiesPane: false,
189
212
  serviceUrl: "https://services.syncfusion.com/react/production/api/documenteditor/",
190
213
  enableToolbar: !(props.readOnly || props.commentsOnly)
@@ -64,8 +64,7 @@ const File = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwar
64
64
  }, /*#__PURE__*/_react.default.createElement("div", {
65
65
  className: 'col-*-*',
66
66
  style: {
67
- marginLeft: '0',
68
- width: '72px'
67
+ marginLeft: '0'
69
68
  }
70
69
  }, /*#__PURE__*/_react.default.createElement("input", {
71
70
  accept: "*/*",
@@ -8,6 +8,10 @@
8
8
 
9
9
  }
10
10
 
11
+ .side-menu-module-dashboard .viewport {
12
+ width: calc(100% - 448px) !important;
13
+ }
14
+
11
15
  .side-menu-module-dashboard .sidebar {
12
16
  height: 100vh !important;
13
17
  z-index: 10000 !important;
@@ -60,7 +60,7 @@ const Header = props => {
60
60
  }
61
61
  };
62
62
  _react.default.useEffect(() => {
63
- let listener = new _EventListener.default(null, "dashboard", "applicationManager", _EventType.default.APPLICATION_CONTEXT_CHANGE, null, e => {
63
+ let listener = new _EventListener.default(null, "dashboard", "applicationManager", "dashboard", _EventType.default.APPLICATION_CONTEXT_CHANGE, null, e => {
64
64
  if (e.data.property.name === 'title') {
65
65
  setTitle(e.data.property.value);
66
66
  }
@@ -18,7 +18,7 @@ const CurrencyFieldWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_reac
18
18
  const base = props.base;
19
19
  const width = !_Utils.default.isNull(props.config.attributes?.style?.width) ? props.config.attributes.style.width : "100%";
20
20
  const maxWidth = !_Utils.default.isNull(props.config.attributes?.style?.maxWidth) ? props.config.attributes.style.maxWidth : null;
21
- const minWidth = !_Utils.default.isNull(props.config.attributes?.style?.minWidth) ? props.config.attributes.style.minWidth : "240px";
21
+ const minWidth = !_Utils.default.isNull(props.config.attributes?.style?.minWidth) ? props.config.attributes.style.minWidth : "232px";
22
22
  const height = !_Utils.default.isNull(props.config.attributes?.style?.height) ? props.config.attributes.style.height : null;
23
23
  const currency = !_Utils.default.isNull(props.config.attributes?.currency) ? props.config.attributes.currency : "ZAR";
24
24
  const currencySymbol = !_Utils.default.isNull(props.config.attributes?.currencySymbol) ? props.config.attributes.currencySymbol : "R";
@@ -88,7 +88,7 @@ const CustomDatePickerComponent = /*#__PURE__*/_react.default.memo(/*#__PURE__*/
88
88
  disabled: base.disabled,
89
89
  label: props.config.attributes['label'],
90
90
  value: base.value ? (0, _dayjs.default)(base.value) : null,
91
- className: props.className,
91
+ className: 'oui-form-item' + props.className ? ' ' + props.className : '',
92
92
  onChange: newValue => handleDateChange(newValue.toDate()),
93
93
  error: base.hasError,
94
94
  format: "DD/MM/YYYY",
@@ -504,7 +504,7 @@ const FieldSet = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.fo
504
504
  let style = field.attributes?.containerStyle ? _Utils.default.mergeObjects(field.attributes?.containerStyle, containerStyle) : containerStyle;
505
505
  return /*#__PURE__*/_react.default.createElement("div", {
506
506
  key: (i + 1) * index,
507
- className: "col-*-*",
507
+ className: "col-*-* oui-form-item-container",
508
508
  style: style
509
509
  }, renderComponent(field));
510
510
  }));
@@ -23,6 +23,14 @@
23
23
  width: 100%;
24
24
  }
25
25
 
26
+ .oui-form-item-container .ouiTable .oui-table-row {
27
+ border-bottom: 1px solid #ddd;
28
+ }
29
+
30
+ .oui-form-item-container .ouiTable tbody > tr.oui-table-row:last-of-type {
31
+ border-bottom: 0;
32
+ }
33
+
26
34
  .lookup-field-input input {
27
35
  width: calc(100% - 64px);
28
36
  overflow: hidden !important;
@@ -7,13 +7,17 @@ exports.default = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _BaseField = require("./BaseField");
9
9
  var _Icon = _interopRequireDefault(require("../Icon"));
10
+ var _Utils = _interopRequireDefault(require("../../Utils"));
10
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
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); }
12
13
  const IconWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwardRef((props, ref) => {
13
14
  const base = props.base;
14
- return /*#__PURE__*/_react.default.createElement(_Icon.default, {
15
- id: props.config.iconId
16
- });
15
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, props.config.attributes?.label && /*#__PURE__*/_react.default.createElement("div", {
16
+ style: _Utils.default.mergeStyles({}, props.config)
17
+ }, /*#__PURE__*/_react.default.createElement("label", null, _Utils.default.getComponentAttribute(props.config, 'label', ''))), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_Icon.default, {
18
+ id: props.config.iconId,
19
+ color: props.config.iconColor
20
+ })));
17
21
  }));
18
22
  const IconField = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.forwardRef((props, ref) => {
19
23
  return /*#__PURE__*/_react.default.createElement(_BaseField.BaseField, _extends({}, props, {
@@ -79,7 +79,7 @@ const LookupFieldComponent = exports.LookupFieldComponent = /*#__PURE__*/_react.
79
79
  base.handleValueChange(null);
80
80
  };
81
81
  return /*#__PURE__*/_react.default.createElement("div", {
82
- className: "w-100 lookup row no-margin no-padding",
82
+ className: "w-100 lookup row no-margin no-padding oui-form-item",
83
83
  style: _Utils.default.mergeStyles({
84
84
  width: width,
85
85
  minWidth: minWidth,
@@ -18,6 +18,7 @@ const Section = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.for
18
18
  const [fieldGrid, setFieldGrid] = _react.default.useState(null);
19
19
  const [width, setWidth] = _react.default.useState(null);
20
20
  const [componentHandles] = _react.default.useState({});
21
+ const [visible, setVisible] = _react.default.useState(true);
21
22
  let componentKey = 0;
22
23
  _react.default.useEffect(() => {
23
24
  props.handle.api = api();
@@ -107,6 +108,10 @@ const Section = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.for
107
108
  componentHandle.api.refresh();
108
109
  }
109
110
  }
111
+ let parsedConfig = _Utils.default.parseConfig(props.config, props.viewId);
112
+ if (!_Utils.default.isNull(parsedConfig.visible)) {
113
+ setVisible(_Utils.default.evaluateBooleanExpression(parsedConfig.visible, parsedConfig.id));
114
+ }
110
115
  }
111
116
  };
112
117
  };
@@ -134,7 +139,7 @@ const Section = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.default.for
134
139
  }));
135
140
  }));
136
141
  }
137
- return /*#__PURE__*/_react.default.createElement("div", {
142
+ return visible && /*#__PURE__*/_react.default.createElement("div", {
138
143
  style: {
139
144
  width: width
140
145
  }
@@ -66,6 +66,7 @@ const SelectItemComponent = props => {
66
66
  }
67
67
  }, [loadFullOptionList, props.refreshData]);
68
68
  return /*#__PURE__*/_react.default.createElement(_material.FormControl, {
69
+ className: 'oui-form-item',
69
70
  fullWidth: true,
70
71
  margin: "dense",
71
72
  size: "small",
@@ -56,6 +56,7 @@ const TextFieldWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.de
56
56
  rows: rows,
57
57
  disabled: base.disabled,
58
58
  size: "small",
59
+ className: 'oui-form-item',
59
60
  style: {
60
61
  minWidth: minWidth,
61
62
  width: width,
@@ -47,6 +47,7 @@ const CustomTimePickerComponent = /*#__PURE__*/_react.default.memo(/*#__PURE__*/
47
47
  ampm: false,
48
48
  slotProps: {
49
49
  textField: {
50
+ className: 'oui-form-item',
50
51
  variant: "outlined",
51
52
  margin: "dense",
52
53
  size: "small",
@@ -102,9 +102,10 @@ const TransferListComponent = /*#__PURE__*/_react.default.memo((props, ref) => {
102
102
  style: {
103
103
  border: `1px solid ${base.hasError ? '#f44336' : '#e1e1e1'}`,
104
104
  width: '45%',
105
- minWidth: '320px',
105
+ minWidth: '240px',
106
106
  borderRadius: '4px'
107
- }
107
+ },
108
+ className: 'oui-form-item'
108
109
  }, /*#__PURE__*/_react.default.createElement(_DataGrid.DataGrid, {
109
110
  config: props.config.optionsGrid,
110
111
  handle: props.optionsListHandle,
@@ -144,9 +145,10 @@ const TransferListComponent = /*#__PURE__*/_react.default.memo((props, ref) => {
144
145
  style: {
145
146
  border: `1px solid ${base.hasError ? '#f44336' : '#e1e1e1'}`,
146
147
  width: '45%',
147
- minWidth: '320px',
148
+ minWidth: '240px',
148
149
  borderRadius: '4px'
149
- }
150
+ },
151
+ className: 'oui-form-item'
150
152
  }, /*#__PURE__*/_react.default.createElement(_DataGrid.DataGrid, {
151
153
  config: props.config.selectionGrid,
152
154
  handle: props.selectionListHandle,
@@ -171,7 +173,6 @@ const TransferList = /*#__PURE__*/_react.default.memo((props, ref) => {
171
173
  component: props.handle,
172
174
  viewId: props.viewId
173
175
  }).then(result => {
174
- console.log("\n\n\n\n\nRESULTS : ", result);
175
176
  setData(result);
176
177
  }).catch(e => {
177
178
  console.error(e);
@@ -32,6 +32,7 @@ var _ProgressTracker = _interopRequireDefault(require("../ProgressTracker"));
32
32
  var _Chart = _interopRequireDefault(require("../Chart"));
33
33
  var _FacialRegistration = _interopRequireDefault(require("../facialRecognition/FacialRegistration"));
34
34
  var _FacialVerification = _interopRequireDefault(require("../facialRecognition/FacialVerification"));
35
+ var _Spinner = _interopRequireDefault(require("../Spinner"));
35
36
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
36
37
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
37
38
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -274,6 +275,13 @@ const Layout = props => {
274
275
  key: index,
275
276
  viewId: props.viewId
276
277
  });
278
+ case 'spinner':
279
+ return /*#__PURE__*/_react.default.createElement(_Spinner.default, {
280
+ config: component,
281
+ handle: createComponentHandle(component),
282
+ key: index,
283
+ viewId: props.viewId
284
+ });
277
285
  default:
278
286
  return /*#__PURE__*/_react.default.createElement("div", null, 'Unsupported component type ' + component.type);
279
287
  }
@@ -307,7 +315,8 @@ const Layout = props => {
307
315
  },
308
316
  refresh() {
309
317
  if (!_Utils.default.isNull(props.config.visible)) {
310
- setVisible(_Utils.default.evaluateBooleanExpression(props.config.visible, props.config.id));
318
+ let parsedConfig = _Utils.default.parseConfig(props.config, props.viewId);
319
+ setVisible(_Utils.default.evaluateBooleanExpression(parsedConfig.visible, props.config.id));
311
320
  }
312
321
  }
313
322
  };
@@ -376,7 +385,7 @@ const Layout = props => {
376
385
  return /*#__PURE__*/_react.default.createElement("div", {
377
386
  id: props.config.id,
378
387
  style: getLayoutStyle(props.config, 'transparent'),
379
- className: `${_Utils.default.getComponentAttribute(props.config, 'className', '') + (props.config.orientation === 'HORIZONTAL' ? ' row' : '')}`
388
+ className: `${_Utils.default.getComponentAttribute(props.config, 'className', 'default-oui-layout') + (props.config.orientation === 'HORIZONTAL' ? ' row' : '')}`
380
389
  }, render(props.config));
381
390
  };
382
391
  exports.Layout = Layout;
@@ -28,6 +28,63 @@
28
28
  justify-content: center
29
29
  }
30
30
 
31
+ .max-h-40 {
32
+ }
33
+
34
+ /* 150% zoom res */
35
+ @media (max-width: 1512px) and (max-height: 982px) and (min-resolution: 2dppx) {
36
+ .max-h-40 {
37
+ max-height: 150px !important;
38
+ }
39
+
40
+ .flex-nowrap {
41
+ flex-wrap: wrap !important;
42
+ }
43
+
44
+ .flex-child-nowrap {
45
+ width: 100% !important;
46
+ }
47
+
48
+ .view {
49
+ padding: 0 8px !important;
50
+ }
51
+
52
+ .grid-table-pagination div {
53
+ font-size: 12px;
54
+ }
55
+
56
+ .grid-table-pagination p {
57
+ overflow: hidden;
58
+ text-overflow: ellipsis;
59
+ white-space: nowrap;
60
+ max-width: 12px;
61
+ font-size: 12px;
62
+ margin-top: 4px;
63
+ }
64
+
65
+ .tab-page-container {
66
+ margin: 0;
67
+ }
68
+
69
+ .default-oui-layout {
70
+ margin: 8px;
71
+ padding: 0 !important;
72
+ }
73
+
74
+ .defaultForm {
75
+ margin: 0;
76
+ }
77
+
78
+ .oui-form-item {
79
+ min-width: 232px !important;
80
+ }
81
+
82
+ .oui-form-item-container {
83
+ min-width: 240px !important;
84
+ margin: 0 4px;
85
+ }
86
+ }
87
+
31
88
  /* Smartphones (landscape); */
32
89
  @media only screen and (min-device-width : 361px) and (max-device-width : 480px) {
33
90
  .view {
@@ -41,6 +41,7 @@ const ViewPort = props => {
41
41
  console.log("LOADING VIEWPORT");
42
42
  }, []);
43
43
  return /*#__PURE__*/_react.default.createElement("div", {
44
+ className: "viewport",
44
45
  style: {
45
46
  height: 'calc(100vh - 96px)',
46
47
  maxHeight: 'calc(100vh - 96px)',
@@ -265,7 +265,10 @@ const Window = props => {
265
265
  right: 0
266
266
  }
267
267
  }, /*#__PURE__*/_react.default.createElement("div", {
268
- className: 'dialogHeader row'
268
+ className: 'dialogHeader row',
269
+ style: {
270
+ marginTop: '24px'
271
+ }
269
272
  }, minimizable && /*#__PURE__*/_react.default.createElement("div", null, displayState === 'MAXIMIZED' ? /*#__PURE__*/_react.default.createElement(_IconButton.default, {
270
273
  onClick: e => {
271
274
  minimizeView(e);
@@ -11,19 +11,29 @@ var _View = require("./View");
11
11
  var _ApplicationManager = _interopRequireDefault(require("../../ApplicationManager"));
12
12
  var _Icon = _interopRequireDefault(require("../Icon"));
13
13
  var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
14
+ var _Utils = _interopRequireDefault(require("../../Utils"));
14
15
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
16
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
16
17
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
17
18
  const WindowViewContainer = props => {
18
19
  const [view, setView] = _react.default.useState(null);
19
20
  const [pinned, setPinned] = _react.default.useState(false);
21
+ const [defaultDisplayState, setDefaultDisplayState] = _react.default.useState('MAXIMIZED');
20
22
  const counter = (0, _react.useRef)(0);
21
23
  function loadView(context) {
22
24
  if (context) {
23
25
  if (Object.keys(context).find(key => key === 'windowView')) {
24
26
  setView(null);
25
27
  setView(context.windowView);
26
- setPinned(false);
28
+ if (!_Utils.default.isNull(context.pinned)) {
29
+ setPinned(context.pinned);
30
+ }
31
+ if (_Utils.default.isNull(context.windowView)) {
32
+ setPinned(false);
33
+ }
34
+ if (!_Utils.default.isNull(context.defaultDisplayState)) {
35
+ setDefaultDisplayState(context.defaultDisplayState);
36
+ }
27
37
  }
28
38
  }
29
39
  }
@@ -58,7 +68,7 @@ const WindowViewContainer = props => {
58
68
  pinnable: true,
59
69
  minimizable: false,
60
70
  open: true,
61
- displayState: 'MAXIMIZED',
71
+ displayState: defaultDisplayState,
62
72
  leftOffset: windowLeftOffset || '344px',
63
73
  onPinned: () => {
64
74
  if (!pinned) {
@@ -71,7 +81,9 @@ const WindowViewContainer = props => {
71
81
  });
72
82
  setPinned(!pinned);
73
83
  },
74
- onClose: () => {}
84
+ onClose: () => {
85
+ setPinned(false);
86
+ }
75
87
  }, /*#__PURE__*/_react.default.createElement(_View.View, {
76
88
  config: view.config,
77
89
  key: view.config.id,
@@ -88,7 +100,7 @@ const WindowViewContainer = props => {
88
100
  marginRight: '8px',
89
101
  position: 'absolute',
90
102
  right: 0,
91
- top: 0
103
+ top: 16
92
104
  }
93
105
  }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
94
106
  id: 'DOCK'
@@ -5,7 +5,7 @@
5
5
  }
6
6
 
7
7
  .closable-panel-header {
8
- height: 72px;
8
+ height: 64px;
9
9
  text-align: right;
10
10
  padding: 8px;
11
11
  display: inline-block;
@@ -33,7 +33,8 @@ const ToolbarButton = props => {
33
33
  return /*#__PURE__*/_react.default.createElement("div", {
34
34
  ref: ref,
35
35
  style: {
36
- width: '100%'
36
+ width: isVisible ? '100%' : 0,
37
+ minWidth: isVisible ? '100%' : 0
37
38
  }
38
39
  }, !isVisible ? /*#__PURE__*/_react.default.createElement("div", {
39
40
  style: {
@@ -65,6 +65,13 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.defaul
65
65
  const [screenShared, setScreenShared] = _react.default.useState(null);
66
66
  const [startScreenSharing, setStartScreenSharing] = _react.default.useState(false);
67
67
  const [raisedHands, setRaisedHands] = (0, _react.useState)([]);
68
+ const api = () => {
69
+ return {
70
+ loadChats() {
71
+ fetchChats();
72
+ }
73
+ };
74
+ };
68
75
  const handler = () => {
69
76
  return {
70
77
  get id() {
@@ -234,6 +241,7 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.defaul
234
241
  };
235
242
  (0, _react.useEffect)(() => {
236
243
  eventHandler.api = handler();
244
+ props.handle.api = api();
237
245
  });
238
246
  (0, _react.useEffect)(() => {
239
247
  if (props.settings) {
@@ -360,7 +368,7 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.defaul
360
368
  const hangUp = () => {
361
369
  _SocketManager.default.leaveMeeting(props.calendarEvent.id);
362
370
  _ApplicationManager.default.setHasActiveMeeting(false);
363
- _ApplicationManager.default.removeLoadedGraph(false);
371
+ _ApplicationManager.default.removeLoadedGraph('window');
364
372
  setSideBarOpen(false);
365
373
  setSideBarTab('');
366
374
  };
@@ -46,7 +46,6 @@ class VCEventType {
46
46
  static DENIED = "DENIED";
47
47
  static JOIN_MEETING_PERMIT = "JOIN_MEETING_PERMIT";
48
48
  static RECEIVING_CALL = "RECEIVING_CALL";
49
- static CALL_REJECTED = "CALL_REJECTED";
50
49
  static USERS_ONLINE = "USERS_ONLINE";
51
50
  static USER_ONLINE = "USER_ONLINE";
52
51
  static USER_OFFLINE = "USER_OFFLINE";
@@ -64,7 +63,6 @@ class VCEventType {
64
63
  static POLL_RECORDING_STATUS = "POLL_RECORDING_STATUS";
65
64
  static REQUEST_TO_JOIN = "REQUEST_TO_JOIN";
66
65
  static REQUEST_TO_JOIN_MEETING = "REQUEST_TO_JOIN_MEETING";
67
- static AUDIO_VISUAL_SETTINGS_CHANGED = "AUDIO_VISUAL_SETTINGS_CHANGED";
68
66
  static CREATE_WEBRTC_TRANSPORT = "CREATE_WEBRTC_TRANSPORT";
69
67
  static CONNECT_TRANSPORT = "CONNECT_TRANSPORT";
70
68
  static CLOSE_ALL_USER_TRANSPORTS = "CLOSE_ALL_USER_TRANSPORTS";
@@ -80,7 +78,6 @@ class VCEventType {
80
78
  static STOP_RECORDING = "STOP_RECORDING";
81
79
  static UPDATE_CALENDAR = "UPDATE_CALENDAR";
82
80
  static REQUEST_TO_JOIN_MEETING_ANSWERED = "REQUEST_TO_JOIN_MEETING_ANSWERED";
83
- static PEER_DISCONNECT = "PEER_DISCONNECT";
84
81
  static CONSUMER_CLOSED = "CONSUMER_CLOSED";
85
82
  static CANCEL_SCREEN_SHARE = "CANCEL_SCREEN_SHARE";
86
83
  static SHARING_STOPPED = "SHARING_STOPPED";