orc-shared 5.99.0-dev.1 → 5.99.0-dev.10

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 (102) hide show
  1. package/dist/components/AppFrame/About.js +13 -13
  2. package/dist/components/AppFrame/Anchor.js +7 -7
  3. package/dist/components/AppFrame/AppFrame.js +3 -3
  4. package/dist/components/AppFrame/Help.js +4 -4
  5. package/dist/components/AppFrame/MenuItem.js +14 -14
  6. package/dist/components/AppFrame/Preferences.js +14 -14
  7. package/dist/components/AppFrame/Sidebar.js +6 -6
  8. package/dist/components/AppFrame/Topbar.js +6 -6
  9. package/dist/components/DropMenu/Menu.js +9 -9
  10. package/dist/components/Form/Field.js +4 -4
  11. package/dist/components/Form/Inputs/Button.js +2 -2
  12. package/dist/components/Form/Inputs/MultiSelector.js +67 -12
  13. package/dist/components/Form/Inputs/Selector.js +13 -10
  14. package/dist/components/InternetExplorerWarningMessage.js +15 -15
  15. package/dist/components/MaterialUI/DataDisplay/Modal.js +3 -3
  16. package/dist/components/MaterialUI/DataDisplay/PredefinedElements/Placeholder.js +6 -6
  17. package/dist/components/MaterialUI/DataDisplay/PredefinedElements/StepperModal.js +4 -4
  18. package/dist/components/MaterialUI/DataDisplay/PredefinedElements/TableInfoBar.js +1 -1
  19. package/dist/components/MaterialUI/DataDisplay/SelectionList.js +1 -1
  20. package/dist/components/MaterialUI/DataDisplay/TransferList.js +1 -1
  21. package/dist/components/MaterialUI/Inputs/CheckboxGroup.js +1 -1
  22. package/dist/components/MaterialUI/Inputs/DatePicker.js +1 -1
  23. package/dist/components/MaterialUI/Inputs/InputBase.js +209 -24
  24. package/dist/components/MaterialUI/Inputs/PredefinedElements/SearchControl.js +1 -1
  25. package/dist/components/MaterialUI/Inputs/Select.js +170 -114
  26. package/dist/components/MaterialUI/Inputs/SelectProps.js +10 -2
  27. package/dist/components/MaterialUI/Inputs/Switch.js +1 -1
  28. package/dist/components/MaterialUI/ScopeSelector/ScopeSelector.js +1 -1
  29. package/dist/components/MaterialUI/ScopeSelector/TreeItem.js +27 -42
  30. package/dist/components/MaterialUI/Surfaces/Paper.js +1 -1
  31. package/dist/components/MaterialUI/muiThemes.js +1 -1
  32. package/dist/components/Routing/SegmentPage.js +9 -7
  33. package/dist/components/Scope/ScopeNode.js +7 -9
  34. package/dist/components/Sidepanel.js +29 -27
  35. package/dist/components/Spritesheet.js +17 -15
  36. package/dist/components/ToastList.js +11 -11
  37. package/dist/components/Treeview/Branch.js +9 -9
  38. package/dist/components/Treeview/Label.js +8 -8
  39. package/dist/components/Treeview/Leaf.js +2 -2
  40. package/dist/components/Treeview/settings.js +10 -1
  41. package/dist/hocs/withScrollBox.js +3 -8
  42. package/dist/hooks/useWindowSize.js +88 -0
  43. package/dist/sharedMessages.js +8 -0
  44. package/package.json +1 -1
  45. package/src/components/AppFrame/About.js +13 -13
  46. package/src/components/AppFrame/Anchor.js +7 -7
  47. package/src/components/AppFrame/AppFrame.js +3 -3
  48. package/src/components/AppFrame/Help.js +4 -4
  49. package/src/components/AppFrame/MenuItem.js +14 -14
  50. package/src/components/AppFrame/Preferences.js +14 -14
  51. package/src/components/AppFrame/Sidebar.js +6 -6
  52. package/src/components/AppFrame/Topbar.js +6 -6
  53. package/src/components/DropMenu/Menu.js +9 -9
  54. package/src/components/Form/Field.js +4 -4
  55. package/src/components/Form/Inputs/Button.js +2 -2
  56. package/src/components/Form/Inputs/MultiSelector.js +55 -5
  57. package/src/components/Form/Inputs/MultiSelector.test.js +259 -39
  58. package/src/components/Form/Inputs/Selector.js +12 -4
  59. package/src/components/Form/Inputs/Selector.test.js +27 -12
  60. package/src/components/InternetExplorerWarningMessage.js +15 -15
  61. package/src/components/MaterialUI/DataDisplay/Modal.js +3 -3
  62. package/src/components/MaterialUI/DataDisplay/PredefinedElements/Placeholder.js +6 -6
  63. package/src/components/MaterialUI/DataDisplay/PredefinedElements/StepperModal.js +3 -3
  64. package/src/components/MaterialUI/DataDisplay/PredefinedElements/StepperModal.test.js +74 -0
  65. package/src/components/MaterialUI/DataDisplay/PredefinedElements/TableInfoBar.js +1 -1
  66. package/src/components/MaterialUI/DataDisplay/SelectionList.js +1 -1
  67. package/src/components/MaterialUI/DataDisplay/TransferList.js +1 -1
  68. package/src/components/MaterialUI/Inputs/CheckboxGroup.js +1 -1
  69. package/src/components/MaterialUI/Inputs/DatePicker.js +1 -1
  70. package/src/components/MaterialUI/Inputs/InputBase.js +209 -8
  71. package/src/components/MaterialUI/Inputs/InputBase.test.js +481 -3
  72. package/src/components/MaterialUI/Inputs/PredefinedElements/SearchControl.js +1 -1
  73. package/src/components/MaterialUI/Inputs/PredefinedElements/SearchControl.test.js +1 -1
  74. package/src/components/MaterialUI/Inputs/Select.js +140 -87
  75. package/src/components/MaterialUI/Inputs/Select.test.js +170 -30
  76. package/src/components/MaterialUI/Inputs/SelectProps.js +9 -1
  77. package/src/components/MaterialUI/Inputs/SelectProps.test.js +8 -0
  78. package/src/components/MaterialUI/Inputs/Switch.js +1 -1
  79. package/src/components/MaterialUI/ScopeSelector/ScopeSelector.js +1 -2
  80. package/src/components/MaterialUI/ScopeSelector/TreeItem.js +8 -31
  81. package/src/components/MaterialUI/Surfaces/Paper.js +1 -1
  82. package/src/components/MaterialUI/muiThemes.js +1 -1
  83. package/src/components/Routing/SegmentPage.js +7 -7
  84. package/src/components/Scope/ScopeNode.js +7 -8
  85. package/src/components/Sidepanel.js +7 -7
  86. package/src/components/Sidepanel.test.js +9 -4
  87. package/src/components/Spritesheet.js +5 -5
  88. package/src/components/ToastList.js +11 -11
  89. package/src/components/Treeview/Branch.js +10 -10
  90. package/src/components/Treeview/Branch.test.js +2 -40
  91. package/src/components/Treeview/Label.js +9 -9
  92. package/src/components/Treeview/Label.test.js +13 -3
  93. package/src/components/Treeview/Leaf.js +3 -3
  94. package/src/components/Treeview/Leaf.test.js +1 -20
  95. package/src/components/Treeview/settings.js +3 -0
  96. package/src/hocs/withScrollBox.js +2 -8
  97. package/src/hooks/useMultipleFieldEditState.test.js +0 -1
  98. package/src/hooks/useWindowSize.js +39 -0
  99. package/src/hooks/useWindowSize.test.js +68 -0
  100. package/src/sharedMessages.js +8 -0
  101. package/src/translations/en-US.json +2 -0
  102. package/src/translations/fr-CA.json +2 -0
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.default = exports.SelectIconButton = void 0;
4
+ exports.renderMultipleValues = exports.default = exports.SelectIconButton = void 0;
5
5
  var _react = _interopRequireWildcard(require("react"));
6
6
  var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
7
7
  var _Select = _interopRequireDefault(require("@material-ui/core/Select"));
@@ -12,6 +12,8 @@ var _TooltippedTypography = _interopRequireDefault(require("./../DataDisplay/Too
12
12
  var _Icon = _interopRequireDefault(require("./../DataDisplay/Icon"));
13
13
  var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
14
14
  var _core = require("@material-ui/core");
15
+ var _FormControl = _interopRequireDefault(require("@material-ui/core/FormControl"));
16
+ var _useWindowSize = _interopRequireDefault(require("../../../hooks/useWindowSize"));
15
17
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
18
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
17
19
  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; }
@@ -23,11 +25,6 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
23
25
  var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
24
26
  enterModule && enterModule(module);
25
27
  })();
26
- 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; }
27
- 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) { _defineProperty(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; }
28
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
29
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
30
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
31
28
  function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
32
29
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
33
30
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
@@ -35,6 +32,11 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
35
32
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
36
33
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
37
34
  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); }
35
+ 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; }
36
+ 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) { _defineProperty(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; }
37
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
38
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
39
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
38
40
  var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
39
41
  return a;
40
42
  };
@@ -43,8 +45,12 @@ var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoader
43
45
  };
44
46
  var useStyles = (0, _styles.makeStyles)(function (theme) {
45
47
  return {
46
- baseItem: {
47
- maxWidth: theme.spacing(35)
48
+ baseItem: function baseItem(props) {
49
+ return _objectSpread({}, props.autoWidth ? {
50
+ maxWidth: theme.spacing(35)
51
+ } : {
52
+ maxWidth: theme.spacing(props.multipleWidthSpacing)
53
+ });
48
54
  },
49
55
  level0: {},
50
56
  level1: {
@@ -75,35 +81,45 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
75
81
  display: "flex",
76
82
  flexDirection: "column"
77
83
  },
78
- selectPaper: {
79
- border: "1px solid ".concat(theme.palette.grey.borders),
80
- minWidth: "auto !important",
81
- width: "auto !important",
82
- "& ul": {
83
- minWidth: theme.spacing(17.5),
84
- maxHeight: theme.spacing(30),
85
- paddingTop: 0,
86
- paddingBottom: 0
87
- },
88
- "& li": {
89
- fontSize: theme.typography.fontSize,
90
- fontFamily: theme.typography.fontFamily,
91
- textTransform: "none",
92
- color: theme.palette.grey.dark,
93
- paddingTop: theme.spacing(1),
94
- paddingBottom: theme.spacing(1),
95
- borderRadius: 0,
96
- whiteSpace: "normal",
97
- "&:hover": {
98
- backgroundColor: theme.palette.primary.light
84
+ selectPaper: function selectPaper(props) {
85
+ return _objectSpread({
86
+ border: "1px solid ".concat(theme.palette.grey.borders),
87
+ "& ul": {
88
+ minWidth: theme.spacing(17.5),
89
+ maxHeight: theme.spacing(30),
90
+ paddingTop: 0,
91
+ paddingBottom: 0
99
92
  },
100
- "&:focus, &:active": {
93
+ "& li": {
94
+ fontSize: theme.typography.fontSize,
95
+ fontFamily: theme.typography.fontFamily,
96
+ textTransform: "none",
97
+ color: theme.palette.grey.dark,
98
+ paddingTop: theme.spacing(1),
99
+ paddingBottom: theme.spacing(1),
101
100
  borderRadius: 0,
101
+ whiteSpace: "normal",
102
102
  "&:hover": {
103
- backgroundColor: theme.palette.primary.light
103
+ backgroundColor: theme.palette.primary.main,
104
+ "&:not(.Mui-selected) > p": {
105
+ color: "".concat(theme.palette.primary.contrastText)
106
+ },
107
+ "&.Mui-selected": {
108
+ backgroundColor: theme.palette.secondary.light
109
+ }
110
+ },
111
+ "&:focus, &:active": {
112
+ borderRadius: 0,
113
+ boxShadow: props.multiple ? "none" : "0 0 ".concat(theme.spacing(0.4), " #4fa1f0"),
114
+ "&:hover": {
115
+ backgroundColor: theme.palette.primary.main
116
+ }
104
117
  }
105
118
  }
106
- }
119
+ }, props.autoWidth ? {
120
+ minWidth: "auto !important",
121
+ width: "auto !important"
122
+ } : {});
107
123
  },
108
124
  label: {
109
125
  fontSize: theme.typography.fontSize,
@@ -136,6 +152,12 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
136
152
  color: theme.palette.text.primary,
137
153
  backgroundColor: theme.palette.grey.light,
138
154
  border: 0
155
+ },
156
+ formControl: function formControl(props) {
157
+ return {
158
+ maxWidth: theme.spacing(props.multipleWidthSpacing),
159
+ minWidth: theme.spacing(props.multipleWidthSpacing)
160
+ };
139
161
  }
140
162
  };
141
163
  });
@@ -185,13 +207,18 @@ __signature__(SelectIconButton, "useStyles{classes}", function () {
185
207
  __signature__(SelectIconButton, "useStyles{classes}", function () {
186
208
  return [useStyles];
187
209
  });
188
- var renderMultipleValues = function renderMultipleValues(selected) {
189
- return selected == null ? void 0 : selected.join(", ");
210
+ var renderMultipleValues = exports.renderMultipleValues = function renderMultipleValues(value, options) {
211
+ return options.filter(function (x) {
212
+ return value.indexOf(x.value) !== -1;
213
+ }).map(function (x) {
214
+ return x.label;
215
+ }).join(", ");
190
216
  };
191
217
  var selectEmptyValue = "~~#~~";
192
218
  var Select = function Select(_ref) {
193
219
  var _selectProps$get;
194
- var options = _ref.options,
220
+ var _ref$options = _ref.options,
221
+ options = _ref$options === void 0 ? [] : _ref$options,
195
222
  selectProps = _ref.selectProps,
196
223
  children = _ref.children;
197
224
  if ((0, _SelectProps.isSelectProps)(selectProps) === false) {
@@ -202,7 +229,6 @@ var Select = function Select(_ref) {
202
229
  open = _useState2[0],
203
230
  setOpen = _useState2[1];
204
231
  var ref = (0, _react.useRef)(null);
205
- var classes = useStyles();
206
232
  var update = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.update);
207
233
  var value = (_selectProps$get = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.value)) != null ? _selectProps$get : "";
208
234
  var sortType = (selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.sortType)) || _SelectProps.sortTypeEnum.none;
@@ -215,129 +241,159 @@ var Select = function Select(_ref) {
215
241
  var native = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.native);
216
242
  var onClose = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.onClose);
217
243
  var inputProps = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.inputProps);
218
- var multiple = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.multiple);
244
+ var multiple = (selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.multiple)) || false;
245
+ var renderValue = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.renderValue);
246
+ var autoWidth = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.autoWidth);
247
+ var autoFocus = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.autoFocus);
248
+ var multipleSelectWidth = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.multipleSelectWidth);
219
249
  var hasError = !!error;
220
- if (sortType === _SelectProps.sortTypeEnum.numeric) {
221
- options.sort(function (a, b) {
222
- return a.sortOrder.localeCompare(b.sortOrder, undefined, {
223
- numeric: true,
224
- sensitivity: "base"
250
+ var windowSize = (0, _useWindowSize.default)();
251
+
252
+ // When too many elements are selected from the list, the component can be longer than the screen, not very convenient
253
+ // We need a fix length unfortunately, for large screen, we use 100% of the multipleSelectWidth, for medium length, 75%
254
+ // But for very small width, we use the inner width of the browser minus 150px (completely arbitrary value), otherwise
255
+ // the drop-down is too large and hard to read
256
+ var multipleSelectWidthFactor = windowSize.innerWidth > 1200 ? 1 : 0.75;
257
+ var multipleWidthSpacing = windowSize.innerWidth > 750 ? multipleSelectWidth / 10 * multipleSelectWidthFactor : (windowSize.innerWidth - 150) / 10;
258
+ var classes = useStyles({
259
+ multiple: multiple,
260
+ autoWidth: autoWidth,
261
+ multipleWidthSpacing: multipleWidthSpacing
262
+ });
263
+ var buildOptionsItems = function buildOptionsItems() {
264
+ var allOptions = [].concat(options);
265
+ if (sortType === _SelectProps.sortTypeEnum.numeric) {
266
+ allOptions.sort(function (a, b) {
267
+ return a.sortOrder.localeCompare(b.sortOrder, undefined, {
268
+ numeric: true,
269
+ sensitivity: "base"
270
+ });
225
271
  });
226
- });
227
- } else if (sortType === _SelectProps.sortTypeEnum.default) {
228
- options.sort(function (a, b) {
229
- return a.sortOrder > b.sortOrder ? 1 : -1;
230
- });
231
- } else if (sortType === _SelectProps.sortTypeEnum.alphabetical) {
232
- options.sort(function (a, b) {
233
- if (a.value === selectEmptyValue) {
234
- return -1;
235
- }
236
- if (b.value === selectEmptyValue) {
237
- return 1;
272
+ } else if (sortType === _SelectProps.sortTypeEnum.default) {
273
+ allOptions.sort(function (a, b) {
274
+ return a.sortOrder > b.sortOrder ? 1 : -1;
275
+ });
276
+ } else if (sortType === _SelectProps.sortTypeEnum.alphabetical) {
277
+ allOptions.sort(function (a, b) {
278
+ if (a.value === selectEmptyValue) {
279
+ return -1;
280
+ }
281
+ if (b.value === selectEmptyValue) {
282
+ return 1;
283
+ }
284
+ return a.label.localeCompare(b.label);
285
+ });
286
+ }
287
+ if (showAllValue && showAllLabel) {
288
+ allOptions.unshift({
289
+ value: showAllValue,
290
+ label: showAllLabel
291
+ });
292
+ }
293
+ return allOptions.map(function (option) {
294
+ var clss = option != null && option.level ? classes["level" + option.level] : "";
295
+ var appliedClasses = (0, _classnames.default)(classes.baseItem, clss);
296
+ var labelClss = (0, _classnames.default)(_defineProperty(_defineProperty({}, classes.label, true), classes.emptyLabel, option.value === "" || option.value === selectEmptyValue));
297
+ var disabled = !!option.disabled;
298
+ var groupHeader = !!option.isGroupHeader;
299
+ if (groupHeader) {
300
+ return /*#__PURE__*/_react.default.createElement(_core.ListSubheader, {
301
+ key: option.value,
302
+ className: appliedClasses
303
+ }, option.label);
304
+ } else {
305
+ return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
306
+ key: option.value,
307
+ value: option.value,
308
+ className: appliedClasses,
309
+ disabled: disabled
310
+ }, /*#__PURE__*/_react.default.createElement(_TooltippedTypography.default, {
311
+ noWrap: true,
312
+ className: labelClss,
313
+ children: option.label,
314
+ titleValue: option.label
315
+ }));
238
316
  }
239
- return a.label.localeCompare(b.label);
240
317
  });
241
- }
242
- if (showAllValue && showAllLabel) {
243
- options.unshift({
244
- value: showAllValue,
245
- label: showAllLabel
246
- });
247
- }
318
+ };
248
319
  var handleChange = function handleChange(event) {
249
320
  update(event.target.value);
250
321
  };
251
322
  var defaultMenuProps = _objectSpread(_objectSpread({
252
323
  classes: {
253
324
  paper: (0, _classnames.default)(classes.selectPaper, selectProps == null ? void 0 : selectProps.getStyle(_SelectProps.default.ruleNames.paper))
254
- }
325
+ },
326
+ autoFocus: autoFocus
255
327
  }, MenuProps), positionOverride);
256
328
  var iconSelectMenuProps = _objectSpread(_objectSpread({
257
329
  classes: {
258
330
  paper: (0, _classnames.default)(classes.selectPaper, selectProps == null ? void 0 : selectProps.getStyle(_SelectProps.default.ruleNames.paper))
259
- }
331
+ },
332
+ autoFocus: autoFocus
260
333
  }, positionOverride), getIconButtonMenuProps(ref.current));
261
- var items = options == null ? void 0 : options.map(function (option) {
262
- var clss = option != null && option.level ? classes["level" + option.level] : "";
263
- var appliedClasses = (0, _classnames.default)(classes.baseItem, clss);
264
- var labelClss = (0, _classnames.default)(_defineProperty(_defineProperty({}, classes.label, true), classes.emptyLabel, option.value === "" || option.value === selectEmptyValue));
265
- var disabled = !!option.disabled;
266
- var groupHeader = !!option.isGroupHeader;
267
- if (groupHeader) {
268
- return /*#__PURE__*/_react.default.createElement(_core.ListSubheader, {
269
- key: option.value,
270
- className: appliedClasses
271
- }, option.label);
272
- } else {
273
- return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
274
- key: option.value,
275
- value: option.value,
276
- className: appliedClasses,
277
- disabled: disabled
278
- }, /*#__PURE__*/_react.default.createElement(_TooltippedTypography.default, {
279
- noWrap: true,
280
- className: labelClss,
281
- children: option.label,
282
- titleValue: option.label
283
- }));
284
- }
285
- });
286
- var defaultSelect = /*#__PURE__*/_react.default.createElement(_Select.default, {
334
+ var items = native ? null : buildOptionsItems();
335
+ var iconSelect = isIconSelect && /*#__PURE__*/_react.default.createElement(_Select.default, {
336
+ open: open,
287
337
  value: value,
338
+ ref: ref,
288
339
  onChange: handleChange,
289
- onClose: onClose,
290
340
  disableUnderline: true,
291
- IconComponent: SelectIcon,
292
- MenuProps: defaultMenuProps,
341
+ IconComponent: SelectIconButton,
342
+ MenuProps: iconSelectMenuProps,
293
343
  disabled: disabled,
294
344
  error: hasError,
295
345
  native: native,
296
346
  inputProps: inputProps,
297
347
  multiple: multiple,
298
- renderValue: multiple ? renderMultipleValues : undefined,
299
348
  classes: {
300
349
  icon: classes.icon,
301
350
  root: selectProps == null ? void 0 : selectProps.getStyle(_SelectProps.default.ruleNames.root),
351
+ select: classes.displayNone,
302
352
  disabled: classes.disabled
353
+ },
354
+ onClick: function onClick() {
355
+ return setOpen(!open);
303
356
  }
304
- }, native ? children : items);
305
- var iconSelect = /*#__PURE__*/_react.default.createElement(_Select.default, {
306
- open: open,
357
+ }, items != null ? items : children);
358
+
359
+ // Render the normal select is the icon one is NULL
360
+ var selectToRender = iconSelect || /*#__PURE__*/_react.default.createElement(_Select.default, {
307
361
  value: value,
308
- ref: ref,
309
362
  onChange: handleChange,
363
+ onClose: onClose,
310
364
  disableUnderline: true,
311
- IconComponent: SelectIconButton,
312
- MenuProps: iconSelectMenuProps,
365
+ IconComponent: SelectIcon,
366
+ autoWidth: autoWidth,
367
+ MenuProps: defaultMenuProps,
313
368
  disabled: disabled,
314
369
  error: hasError,
315
370
  native: native,
316
371
  inputProps: inputProps,
317
372
  multiple: multiple,
318
- renderValue: multiple ? renderMultipleValues : undefined,
373
+ renderValue: renderValue != null ? renderValue : multiple ? function (value) {
374
+ return renderMultipleValues(value, options);
375
+ } : undefined,
319
376
  classes: {
320
377
  icon: classes.icon,
321
378
  root: selectProps == null ? void 0 : selectProps.getStyle(_SelectProps.default.ruleNames.root),
322
- select: classes.displayNone,
323
379
  disabled: classes.disabled
324
- },
325
- onClick: function onClick() {
326
- return setOpen(!open);
327
380
  }
328
- }, native ? children : items);
329
- var select = isIconSelect ? iconSelect : defaultSelect;
330
- return error && /*#__PURE__*/_react.default.createElement("div", {
381
+ }, items != null ? items : children);
382
+ var selectToRenderWithError = hasError && /*#__PURE__*/_react.default.createElement("div", {
331
383
  className: classes.container
332
- }, select, /*#__PURE__*/_react.default.createElement("div", {
384
+ }, selectToRender, /*#__PURE__*/_react.default.createElement("div", {
333
385
  className: (0, _classnames.default)(classes.errorText)
334
- }, error)) || select;
386
+ }, error));
387
+ var selectControl = selectToRenderWithError || selectToRender;
388
+ return multiple === false ? selectControl : /*#__PURE__*/_react.default.createElement(_FormControl.default, {
389
+ className: classes.formControl
390
+ }, selectControl);
335
391
  };
336
- __signature__(Select, "useState{[open, setOpen](false)}\nuseRef{ref}\nuseStyles{classes}", function () {
337
- return [useStyles];
392
+ __signature__(Select, "useState{[open, setOpen](false)}\nuseRef{ref}\nuseWindowSize{windowSize}\nuseStyles{classes}", function () {
393
+ return [_useWindowSize.default, useStyles];
338
394
  });
339
- __signature__(Select, "useState{[open, setOpen](false)}\nuseRef{ref}\nuseStyles{classes}", function () {
340
- return [useStyles];
395
+ __signature__(Select, "useState{[open, setOpen](false)}\nuseRef{ref}\nuseWindowSize{windowSize}\nuseStyles{classes}", function () {
396
+ return [_useWindowSize.default, useStyles];
341
397
  });
342
398
  var _default = Select;
343
399
  var _default2 = _default;
@@ -45,7 +45,11 @@ var SelectProps = /*#__PURE__*/function (_ComponentProps) {
45
45
  _this.componentProps.set(_this.constructor.propNames.onClose, null);
46
46
  _this.componentProps.set(_this.constructor.propNames.native, null);
47
47
  _this.componentProps.set(_this.constructor.propNames.inputProps, null);
48
- _this.componentProps.set(_this.constructor.propNames.multiple, null);
48
+ _this.componentProps.set(_this.constructor.propNames.multiple, false);
49
+ _this.componentProps.set(_this.constructor.propNames.autoWidth, true);
50
+ _this.componentProps.set(_this.constructor.propNames.autoFocus, true);
51
+ _this.componentProps.set(_this.constructor.propNames.renderValue, null);
52
+ _this.componentProps.set(_this.constructor.propNames.multipleSelectWidth, 700);
49
53
  _this.componentClasses.set(_this.constructor.ruleNames.root, null);
50
54
  _this.componentClasses.set(_this.constructor.ruleNames.paper, null);
51
55
  _this._isSelectProps = true;
@@ -73,7 +77,11 @@ _defineProperty(SelectProps, "propNames", {
73
77
  onClose: "onClose",
74
78
  native: "native",
75
79
  inputProps: "inputProps",
76
- multiple: "multiple"
80
+ multiple: "multiple",
81
+ autoWidth: "autoWidth",
82
+ autoFocus: "autoFocus",
83
+ renderValue: "renderValue",
84
+ multipleSelectWidth: "multipleSelectWidth"
77
85
  });
78
86
  _defineProperty(SelectProps, "ruleNames", {
79
87
  root: "root",
@@ -65,7 +65,7 @@ var useStyles = exports.useStyles = (0, _styles.makeStyles)(function (theme) {
65
65
  track: {
66
66
  backgroundColor: theme.palette.grey.borders,
67
67
  opacity: "1 !important",
68
- borderRadius: "20px",
68
+ borderRadius: theme.spacing(2),
69
69
  position: "relative",
70
70
  "&:before, &:after": {
71
71
  display: "inline-block",
@@ -34,7 +34,6 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
34
34
  backgroundColor: theme.palette.grey.light,
35
35
  border: "1px solid ".concat(theme.palette.grey.borders),
36
36
  boxShadow: "0 2px 4px rgba(0,0,0,0.5)",
37
- width: theme.spacing(50),
38
37
  display: "flex"
39
38
  },
40
39
  scopeContainer: {
@@ -86,6 +85,7 @@ var ScopeSelector = function ScopeSelector(_ref) {
86
85
  })));
87
86
  var scopeSelector = /*#__PURE__*/_react.default.createElement(_Sidepanel.default, {
88
87
  className: classes.container,
88
+ widthSpacing: 50,
89
89
  in: show,
90
90
  timeout: 300
91
91
  }, /*#__PURE__*/_react.default.createElement(_ClickAwayListener.default, {
@@ -35,19 +35,6 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
35
35
  marginLeft: function marginLeft(props) {
36
36
  return props.isRootScope ? theme.spacing(1.2) : theme.spacing(3.2);
37
37
  }
38
- // to hide unnecessary border part
39
- // "& > div > div > :last-child": {
40
- // "&:after": {
41
- // content: "''",
42
- // backgroundColor: theme.palette.grey.light,
43
- // position: "absolute",
44
- // top: theme.spacing(1.2),
45
- // left: theme.spacing(-2.1),
46
- // height: "100%",
47
- // bottom: 0,
48
- // width: "1px",
49
- // },
50
- // }
51
38
  },
52
39
  rootIconContainer: {
53
40
  marginRight: 0,
@@ -102,42 +89,40 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
102
89
  };
103
90
  });
104
91
  var ScopeIcon = exports.ScopeIcon = function ScopeIcon(_ref) {
105
- var type = _ref.type;
92
+ var type = _ref.type,
93
+ scopeIconClass = _ref.scopeIconClass;
106
94
  var classes = useStyles();
107
95
  var theme = (0, _styles2.useTheme)();
108
- var globalIcon = /*#__PURE__*/_react.default.createElement(_Icon.default, {
109
- className: classes.scopeIcon,
110
- color: "primary",
111
- fontSize: "medium",
112
- id: "global-scope"
113
- });
114
- var virtualIcon = /*#__PURE__*/_react.default.createElement(_Icon.default, {
115
- className: classes.scopeIcon,
116
- themeColor: theme.palette.grey.dark,
117
- fontSize: "medium",
118
- id: "virtual-scope"
119
- });
120
- var salesIcon = /*#__PURE__*/_react.default.createElement(_Icon.default, {
121
- className: classes.scopeIcon,
122
- color: "primary",
123
- fontSize: "medium",
124
- id: "sales-scope"
125
- });
126
- var dependentIcon = /*#__PURE__*/_react.default.createElement(_Icon.default, {
127
- className: classes.scopeIcon,
128
- themeColor: theme.palette.success.main,
129
- fontSize: "medium",
130
- id: "dependent-scope"
131
- });
96
+ var iconClass = (0, _classnames.default)(classes.scopeIcon, scopeIconClass);
132
97
  switch (type) {
133
98
  case _constants.scopeTypes.global:
134
- return globalIcon;
99
+ return /*#__PURE__*/_react.default.createElement(_Icon.default, {
100
+ className: iconClass,
101
+ color: "primary",
102
+ fontSize: "medium",
103
+ id: "global-scope"
104
+ });
135
105
  case _constants.scopeTypes.virtual:
136
- return virtualIcon;
106
+ return /*#__PURE__*/_react.default.createElement(_Icon.default, {
107
+ className: iconClass,
108
+ themeColor: theme.palette.grey.dark,
109
+ fontSize: "medium",
110
+ id: "virtual-scope"
111
+ });
137
112
  case _constants.scopeTypes.sale:
138
- return salesIcon;
113
+ return /*#__PURE__*/_react.default.createElement(_Icon.default, {
114
+ className: iconClass,
115
+ color: "primary",
116
+ fontSize: "medium",
117
+ id: "sales-scope"
118
+ });
139
119
  case _constants.scopeTypes.dependant:
140
- return dependentIcon;
120
+ return /*#__PURE__*/_react.default.createElement(_Icon.default, {
121
+ className: iconClass,
122
+ themeColor: theme.palette.success.main,
123
+ fontSize: "medium",
124
+ id: "dependent-scope"
125
+ });
141
126
  default:
142
127
  return null;
143
128
  }
@@ -34,7 +34,7 @@ var useStyle = (0, _styles.makeStyles)(function (theme) {
34
34
  },
35
35
  "&::-webkit-scrollbar-thumb": {
36
36
  background: theme.palette.grey.borders,
37
- border: "5px transparent solid",
37
+ border: "".concat(theme.spacing(0.5), " transparent solid"),
38
38
  backgroundClip: "padding-box",
39
39
  borderRadius: theme.spacing(1.5)
40
40
  }
@@ -57,7 +57,7 @@ var commonTheme = {
57
57
  fontWeightBlack: 900,
58
58
  button: {
59
59
  fontFamily: '"Roboto Condensed", sans-serif',
60
- fontWeight: 500,
60
+ fontWeight: 400,
61
61
  fontSize: 13,
62
62
  lineHeight: 1.0,
63
63
  letterSpacing: "0.0em",
@@ -75,7 +75,7 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
75
75
  display: "flex",
76
76
  borderTop: "1px solid ".concat(theme.palette.grey.borders),
77
77
  flex: "0 1 100%",
78
- height: "calc(100% - 90px)",
78
+ height: "calc(100% - ".concat(theme.spacing(9), ")"),
79
79
  minHeight: 0,
80
80
  "div[class^='AppFrame__ViewPort'] > div&:nth-child(3)": {
81
81
  marginTop: function marginTop(props) {
@@ -94,9 +94,9 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
94
94
  display: "block",
95
95
  whiteSpace: "nowrap",
96
96
  minWidth: "max-content",
97
- padding: "15px 20px",
97
+ padding: theme.spacing(1.5, 2),
98
98
  fontWeight: "bold",
99
- fontSize: "13px",
99
+ fontSize: theme.spacing(1.3),
100
100
  textDecoration: "none",
101
101
  cursor: "pointer",
102
102
  color: theme.palette.text.primary,
@@ -185,10 +185,11 @@ __signature__(SegmentItem, "useStyles{classes}\nuseSelector{isHide}\nuseSelector
185
185
  return [useStyles, _reactRedux.useSelector, _reactRedux.useSelector];
186
186
  });
187
187
  var Wrapper = exports.Wrapper = function Wrapper(_ref3) {
188
- var children = _ref3.children;
188
+ var className = _ref3.className,
189
+ children = _ref3.children;
189
190
  var classes = useStyles();
190
191
  return /*#__PURE__*/_react.default.createElement("div", {
191
- className: classes.wrapper,
192
+ className: (0, _classnames.default)(classes.wrapper, className != null ? className : null),
192
193
  key: "Segments"
193
194
  }, children);
194
195
  };
@@ -199,10 +200,11 @@ __signature__(Wrapper, "useStyles{classes}", function () {
199
200
  return [useStyles];
200
201
  });
201
202
  var List = exports.List = function List(_ref4) {
202
- var children = _ref4.children;
203
+ var className = _ref4.className,
204
+ children = _ref4.children;
203
205
  var classes = useStyles();
204
206
  return /*#__PURE__*/_react.default.createElement("div", {
205
- className: classes.list
207
+ className: (0, _classnames.default)(classes.list, className != null ? className : null)
206
208
  }, children);
207
209
  };
208
210
  __signature__(List, "useStyles{classes}", function () {