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
@@ -42,21 +42,21 @@ var ABOUT_NAME = exports.ABOUT_NAME = "__aboutBox";
42
42
  var getModalRoot = function getModalRoot() {
43
43
  return document.getElementById("modal");
44
44
  };
45
- var useStyles = (0, _styles.makeStyles)(function () {
45
+ var useStyles = (0, _styles.makeStyles)(function (theme) {
46
46
  return {
47
47
  aboutBox: function aboutBox(props) {
48
48
  return {
49
49
  boxSizing: "border-box",
50
50
  zIndex: 9999,
51
51
  position: "absolute",
52
- top: "calc(50% - 210px)",
53
- left: "calc(50% - 210px)",
54
- height: "420px",
55
- width: "420px",
56
- padding: "15px 20px",
52
+ top: "calc(50% - ".concat(theme.spacing(21), ")"),
53
+ left: "calc(50% - ".concat(theme.spacing(21), ")"),
54
+ height: theme.spacing(42),
55
+ width: theme.spacing(42),
56
+ padding: theme.spacing(1.5, 2),
57
57
  color: "#ffffff",
58
- fontSize: "13px",
59
- lineHeight: "16px",
58
+ fontSize: theme.spacing(1.3),
59
+ lineHeight: theme.spacing(1.6),
60
60
  background: "#0a0a07 url(".concat(props.bgImage, ")"),
61
61
  "&.enter-active": {
62
62
  opacity: 1,
@@ -74,8 +74,8 @@ var useStyles = (0, _styles.makeStyles)(function () {
74
74
  zIndex: 9999,
75
75
  position: "absolute",
76
76
  color: "#ffffff",
77
- top: "15px",
78
- right: "20px",
77
+ top: theme.spacing(1.5),
78
+ right: theme.spacing(2),
79
79
  margin: "0",
80
80
  cursor: "pointer",
81
81
  opacity: "1",
@@ -88,13 +88,13 @@ var useStyles = (0, _styles.makeStyles)(function () {
88
88
  textDecoration: "none"
89
89
  },
90
90
  aboutParagraph: {
91
- marginTop: "20px"
91
+ marginTop: theme.spacing(2)
92
92
  },
93
93
  longAboutParagraph: function longAboutParagraph(props) {
94
94
  var _props$lang;
95
95
  return {
96
- marginTop: "20px",
97
- fontSize: (_props$lang = props.lang) != null && _props$lang.toLowerCase().startsWith("fr") ? "10px" : undefined
96
+ marginTop: theme.spacing(2),
97
+ fontSize: (_props$lang = props.lang) != null && _props$lang.toLowerCase().startsWith("fr") ? theme.spacing(1) : undefined
98
98
  };
99
99
  }
100
100
  };
@@ -28,12 +28,12 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
28
28
  cursor: "pointer",
29
29
  boxSizing: "border-box",
30
30
  fontFamily: theme.typography.button.fontFamily,
31
- fontSize: "12px",
31
+ fontSize: theme.spacing(1.2),
32
32
  textTransform: "uppercase",
33
- height: "40px",
34
- minWidth: "180px",
35
- paddingTop: "14px",
36
- paddingRight: "14px",
33
+ height: theme.spacing(4),
34
+ minWidth: theme.spacing(18),
35
+ paddingTop: theme.spacing(1.4),
36
+ paddingRight: theme.spacing(1.4),
37
37
  color: props.open ? theme.palette.primary.light : theme.palette.text.disabled,
38
38
  "&:hover": {
39
39
  color: theme.palette.primary.light
@@ -42,8 +42,8 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
42
42
  },
43
43
  indicator: function indicator(props) {
44
44
  return {
45
- fontSize: "12px",
46
- padding: "0 11px",
45
+ fontSize: theme.spacing(1.2),
46
+ padding: theme.spacing(0, 1.1),
47
47
  color: props.open ? theme.palette.text.disabled : theme.palette.primary.light
48
48
  };
49
49
  }
@@ -65,15 +65,15 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
65
65
  return {
66
66
  overflow: "hidden",
67
67
  backgroundColor: "white",
68
- borderTopLeftRadius: "10px",
69
- height: "calc(100% - 40px)",
68
+ borderTopLeftRadius: theme.spacing(1),
69
+ height: "calc(100% - ".concat(theme.spacing(4), ")"),
70
70
  position: "absolute",
71
71
  bottom: 0,
72
72
  right: 0,
73
73
  display: "flex",
74
74
  flexDirection: "column",
75
75
  transition: "width 0.3s ease-out",
76
- width: props.toggleOpen ? "calc(100% - 200px)" : "calc(100% - 50px)"
76
+ width: props.toggleOpen ? "calc(100% - ".concat(theme.spacing(20), ")") : "calc(100% - ".concat(theme.spacing(5), ")")
77
77
  };
78
78
  }
79
79
  };
@@ -25,13 +25,13 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
25
25
  return {
26
26
  helpLink: {
27
27
  fontFamily: theme.typography.button.fontFamily,
28
- fontSize: "12px",
28
+ fontSize: theme.spacing(1.2),
29
29
  textTransform: "uppercase",
30
30
  color: theme.palette.grey.borders,
31
- width: "40px",
31
+ width: theme.spacing(4),
32
32
  cursor: "pointer",
33
- paddingTop: "14px",
34
- paddingRight: "10px",
33
+ paddingTop: theme.spacing(1.4),
34
+ paddingRight: theme.spacing(1),
35
35
  textDecoration: "none",
36
36
  "&:hover": {
37
37
  color: theme.palette.primary.light
@@ -36,8 +36,8 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
36
36
  return {
37
37
  display: "block",
38
38
  position: "relative",
39
- padding: "0 10px",
40
- marginBottom: "35px",
39
+ padding: theme.spacing(0, 1),
40
+ marginBottom: theme.spacing(3.5),
41
41
  textDecoration: "none",
42
42
  cursor: "pointer",
43
43
  color: props.active ? theme.palette.primary.light : theme.palette.text.hint,
@@ -50,10 +50,10 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
50
50
  var toastColor = (0, _toastHelper.getToastColor)(theme, props.alertType);
51
51
  return {
52
52
  borderRadius: "50%",
53
- border: "4px solid ".concat(toastColor),
53
+ border: "".concat(theme.spacing(0.4), " solid ").concat(toastColor),
54
54
  position: "absolute",
55
55
  top: 0,
56
- left: "27px",
56
+ left: theme.spacing(2.7),
57
57
  visibility: "hidden",
58
58
  "&.show": {
59
59
  visibility: "visible"
@@ -65,15 +65,15 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
65
65
  return {
66
66
  position: "absolute",
67
67
  zIndex: 10000,
68
- top: "calc(-10px - 0.7em)",
69
- left: "22px",
68
+ top: "calc(".concat(theme.spacing(-1), " - 0.7em)"),
69
+ left: theme.spacing(2.2),
70
70
  width: "max-content",
71
- borderRadius: "5px",
72
- padding: "10px 15px",
73
- boxShadow: "0 2px 4px 0 rgba(0, 0, 0, 0.5)",
71
+ borderRadius: theme.spacing(0.5),
72
+ padding: theme.spacing(1, 1.5),
73
+ boxShadow: "".concat(theme.spacing(0, 0.2, 0.4, 0), " rgba(0, 0, 0, 0.5)"),
74
74
  color: theme.palette.grey.light,
75
75
  backgroundColor: toastColor,
76
- fontSize: "11px",
76
+ fontSize: theme.spacing(1.1),
77
77
  fontWeight: "bold",
78
78
  lineHeight: 1.2,
79
79
  transition: "transform 200ms cubic-bezier(0.68, -0.55, 0.27, 1.55), opacity 100ms 50ms ease-out",
@@ -82,7 +82,7 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
82
82
  "&::before": {
83
83
  content: "",
84
84
  position: "absolute",
85
- top: "calc(10px + 0.2em)",
85
+ top: "calc(".concat(theme.spacing(1), " + 0.2em)"),
86
86
  left: "-0.9em",
87
87
  border: "solid transparent",
88
88
  borderWidth: "0.4em 0.9em 0.4em 0",
@@ -96,7 +96,7 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
96
96
  },
97
97
  menuIcon: function menuIcon(props) {
98
98
  return {
99
- fontSize: "24px",
99
+ fontSize: theme.spacing(2.4),
100
100
  verticalAlign: "middle",
101
101
  color: props.active ? theme.palette.primary.light : theme.palette.text.hint
102
102
  };
@@ -104,10 +104,10 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
104
104
  label: function label(props) {
105
105
  return {
106
106
  fontFamily: theme.typography.button.fontFamily,
107
- fontSize: "13px",
107
+ fontSize: theme.spacing(1.3),
108
108
  verticalAlign: "middle",
109
109
  textTransform: "uppercase",
110
- paddingLeft: "10px",
110
+ paddingLeft: theme.spacing(1),
111
111
  transition: "opacity 0.3s ease-out",
112
112
  opacity: props.showLabel ? 1 : 0
113
113
  };
@@ -50,19 +50,19 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
50
50
  backgroundColor: "#f7f7f7",
51
51
  borderLeft: "1px solid ".concat(theme.palette.grey.borders),
52
52
  borderTop: "1px solid ".concat(theme.palette.grey.borders),
53
- borderTopLeftRadius: "5px",
54
- top: "40px",
55
- boxShadow: "-3px 2px 5px 0px rgba(0, 0, 0, 0.2)",
53
+ borderTopLeftRadius: theme.spacing(0.5),
54
+ top: theme.spacing(4),
55
+ boxShadow: "".concat(theme.spacing(-0.3, 0.2, 0.5, 0), " rgba(0, 0, 0, 0.2)"),
56
56
  zIndex: 9998,
57
57
  transition: "right 400ms ease-out"
58
58
  },
59
59
  header: {
60
60
  flex: "0 0 auto",
61
61
  borderBottom: "1px solid ".concat(theme.palette.grey.borders),
62
- borderTopLeftRadius: "5px",
63
- padding: "15px 30px",
64
- height: "18px",
65
- fontSize: "15px",
62
+ borderTopLeftRadius: theme.spacing(0.5),
63
+ padding: theme.spacing(1.5, 3),
64
+ height: theme.spacing(1.8),
65
+ fontSize: theme.spacing(1.5),
66
66
  fontFamily: theme.typography.button.fontFamily,
67
67
  textTransform: "uppercase",
68
68
  color: theme.palette.primary.main,
@@ -72,8 +72,8 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
72
72
  flex: "1 1 auto",
73
73
  display: "flex",
74
74
  flexDirection: "column",
75
- padding: "20px 30px",
76
- fontSize: "12px"
75
+ padding: theme.spacing(2, 3),
76
+ fontSize: theme.spacing(1.2)
77
77
  },
78
78
  footer: {
79
79
  flex: "0 0 auto",
@@ -82,12 +82,12 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
82
82
  justifyContent: "flex-end",
83
83
  backgroundColor: "#ffffff",
84
84
  borderTop: "1px solid ".concat(theme.palette.grey.borders),
85
- paddingRight: "10px",
86
- height: "60px"
85
+ paddingRight: theme.spacing(1),
86
+ height: theme.spacing(6)
87
87
  },
88
88
  prefButton: {
89
- marginRight: "20px",
90
- minWidth: "110px"
89
+ marginRight: theme.spacing(2),
90
+ minWidth: theme.spacing(11)
91
91
  },
92
92
  wrapper: {
93
93
  display: "flex",
@@ -185,7 +185,7 @@ var Preferences = exports.Preferences = function Preferences() {
185
185
  applicationSelectProps = _usePreferenceSetup.applicationSelectProps;
186
186
  return /*#__PURE__*/_react.default.createElement(_Sidepanel.default, {
187
187
  in: show,
188
- width: "380px",
188
+ widthSpacing: 38,
189
189
  timeout: 400,
190
190
  className: classes.prefPanel
191
191
  }, /*#__PURE__*/_react.default.createElement(Wrapper, {
@@ -32,9 +32,9 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
32
32
  return {
33
33
  bar: {
34
34
  boxSizing: "border-box",
35
- paddingTop: "60px",
36
- height: "calc(100% - 40px)",
37
- width: "200px",
35
+ paddingTop: theme.spacing(6),
36
+ height: "calc(100% - ".concat(theme.spacing(4), ")"),
37
+ width: theme.spacing(20),
38
38
  display: "flex",
39
39
  flexDirection: "column",
40
40
  justifyContent: "flex-start",
@@ -42,9 +42,9 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
42
42
  },
43
43
  logoSvg: {
44
44
  flex: "0 0 auto",
45
- margin: "auto 12.5px 7px",
46
- height: "25px",
47
- width: "25px",
45
+ margin: "auto ".concat(theme.spacing(1.25, 0.7)),
46
+ height: theme.spacing(2.5),
47
+ width: theme.spacing(2.5),
48
48
  fillRule: "evenodd",
49
49
  clipRule: "evenodd",
50
50
  fill: "#666666"
@@ -48,7 +48,7 @@ var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoader
48
48
  var useStyles = (0, _styles.makeStyles)(function (theme) {
49
49
  return {
50
50
  wrapper: {
51
- height: "40px",
51
+ height: theme.spacing(4),
52
52
  color: theme.palette.text.hint,
53
53
  display: "flex",
54
54
  justifyContent: "space-between"
@@ -63,16 +63,16 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
63
63
  backgroundColor: "#000000",
64
64
  color: theme.palette.primary.light,
65
65
  fontFamily: theme.typography.button.fontFamily,
66
- fontSize: "14px",
66
+ fontSize: theme.spacing(1.4),
67
67
  textTransform: "uppercase",
68
- paddingRight: "20px",
69
- paddingLeft: "6px",
68
+ paddingRight: theme.spacing(2),
69
+ paddingLeft: theme.spacing(0.6),
70
70
  display: "flex",
71
71
  alignItems: "center"
72
72
  },
73
73
  appLogo: {
74
- height: "30px",
75
- marginRight: "10px"
74
+ height: theme.spacing(3),
75
+ marginRight: theme.spacing(1)
76
76
  },
77
77
  qaContainerColor: {
78
78
  backgroundColor: "#9F0F18",
@@ -26,7 +26,7 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
26
26
  drawer: {
27
27
  position: "absolute",
28
28
  zIndex: 19999,
29
- margin: "4px 0 0",
29
+ margin: theme.spacing(0.4, 0, 0),
30
30
  left: function left(props) {
31
31
  return props.alignRight ? "auto" : "0";
32
32
  },
@@ -47,19 +47,19 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
47
47
  color: theme.palette.text.primary,
48
48
  backgroundColor: "white",
49
49
  border: "1px solid ".concat(theme.palette.text.hint),
50
- borderRadius: "5px",
50
+ borderRadius: theme.spacing(0.5),
51
51
  listStyleType: "none",
52
- padding: "5px 0",
52
+ padding: theme.spacing(0.5, 0),
53
53
  margin: "0",
54
54
  fontFamily: "Open Sans, sans-serif",
55
- fontSize: "12px",
55
+ fontSize: theme.spacing(1.2),
56
56
  width: "max-content"
57
57
  },
58
58
  item: {
59
59
  boxSizing: "border-box",
60
- height: "30px",
61
- minWidth: "178px",
62
- padding: "9px 12px",
60
+ height: theme.spacing(3),
61
+ minWidth: theme.spacing(17.8),
62
+ padding: theme.spacing(0.9, 1.2),
63
63
  display: "flex",
64
64
  alignItems: "center",
65
65
  cursor: "pointer",
@@ -69,8 +69,8 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
69
69
  }
70
70
  },
71
71
  itemIcon: {
72
- paddingRight: "11px",
73
- fontSize: "17px"
72
+ paddingRight: theme.spacing(1.1),
73
+ fontSize: theme.spacing(1.7)
74
74
  }
75
75
  };
76
76
  });
@@ -26,13 +26,13 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
26
26
  flex: "0 1 auto",
27
27
  display: "flex",
28
28
  flexDirection: "column",
29
- marginTop: 20,
29
+ marginTop: theme.spacing(2),
30
30
  position: "relative"
31
31
  },
32
32
  label: {
33
- minHeight: 17,
33
+ minHeight: theme.spacing(1.7),
34
34
  color: theme.palette.text.hint,
35
- marginBottom: "10px"
35
+ marginBottom: theme.spacing(1)
36
36
  },
37
37
  invalidLabel: {
38
38
  color: theme.palette.error.main
@@ -41,7 +41,7 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
41
41
  textAlign: "center"
42
42
  },
43
43
  labelOnly: {
44
- marginBottom: "0px"
44
+ marginBottom: 0
45
45
  },
46
46
  requiredLabel: {
47
47
  "&::after": {
@@ -32,10 +32,10 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
32
32
  positionedButton: {
33
33
  width: "max-content",
34
34
  position: "relative",
35
- padding: "6px 14px !important",
35
+ padding: "".concat(theme.spacing(0.6, 1.4), " !important"),
36
36
  "&:hover": {
37
37
  borderColor: "#4fa1f0",
38
- boxShadow: "0 0 4px #4fa1f0",
38
+ boxShadow: "".concat(theme.spacing(0, 0, 0.4), " #4fa1f0"),
39
39
  outline: "none",
40
40
  backgroundColor: "#f7f7f7 !important"
41
41
  },
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.selectEventUpdater = exports.default = void 0;
4
+ exports.default = void 0;
5
5
  var _react = _interopRequireDefault(require("react"));
6
+ var _reactIntl = require("react-intl");
6
7
  var _Select = _interopRequireDefault(require("../../MaterialUI/Inputs/Select"));
7
- var _utils = require("../../../utils");
8
8
  var _SelectProps = _interopRequireDefault(require("../../MaterialUI/Inputs/SelectProps"));
9
- var _excluded = ["value", "options", "update"];
9
+ var _sharedMessages = _interopRequireDefault(require("../../../sharedMessages"));
10
+ var _excluded = ["value", "width", "options", "update", "addClearSelectAll", "multipleRenderValue"];
10
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
12
  (function () {
12
13
  var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
@@ -24,29 +25,81 @@ var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoader
24
25
  var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
25
26
  return a;
26
27
  };
27
- var selectEventUpdater = exports.selectEventUpdater = (0, _utils.memoize)(function (update) {
28
- return function (value) {
29
- return update(value);
30
- };
31
- });
28
+ var clearValue = "__#Clear#__";
29
+ var selectAllValue = "__#SelectAll#__";
32
30
  var MultiSelector = function MultiSelector(_ref) {
33
31
  var value = _ref.value,
32
+ _ref$width = _ref.width,
33
+ width = _ref$width === void 0 ? 700 : _ref$width,
34
34
  options = _ref.options,
35
35
  update = _ref.update,
36
+ addClearSelectAll = _ref.addClearSelectAll,
37
+ multipleRenderValue = _ref.multipleRenderValue,
36
38
  props = _objectWithoutProperties(_ref, _excluded);
39
+ var _useIntl = (0, _reactIntl.useIntl)(),
40
+ formatMessage = _useIntl.formatMessage;
41
+ var valueUpdater = function valueUpdater(value) {
42
+ if (value.indexOf(clearValue) >= 0) {
43
+ update([]);
44
+ } else if (value.indexOf(selectAllValue) >= 0) {
45
+ update(options.map(function (x) {
46
+ return x.value;
47
+ }));
48
+ } else {
49
+ update(value);
50
+ }
51
+ };
37
52
  var selectProps = new _SelectProps.default();
53
+ var selectionOptions = [];
54
+ if (addClearSelectAll) {
55
+ if (value.length > 0) {
56
+ selectionOptions.push({
57
+ label: formatMessage(_sharedMessages.default.clear),
58
+ value: clearValue
59
+ });
60
+ }
61
+ if (value.length !== options.length) {
62
+ selectionOptions.push({
63
+ label: formatMessage(_sharedMessages.default.selectAll),
64
+ value: selectAllValue
65
+ });
66
+ }
67
+ }
68
+ var allOptions = [].concat(selectionOptions, options);
38
69
  selectProps.set(_SelectProps.default.propNames.value, value);
39
70
  selectProps.set(_SelectProps.default.propNames.onClose, props.onBlur);
40
71
  selectProps.set(_SelectProps.default.propNames.disabled, props.disabled);
41
72
  selectProps.set(_SelectProps.default.propNames.multiple, true);
42
- selectProps.set(_SelectProps.default.propNames.update, selectEventUpdater(update));
73
+ selectProps.set(_SelectProps.default.propNames.multipleSelectWidth, width);
74
+ selectProps.set(_SelectProps.default.propNames.update, valueUpdater);
75
+ selectProps.set(_SelectProps.default.propNames.autoWidth, false);
76
+ selectProps.set(_SelectProps.default.propNames.autoFocus, false);
77
+ selectProps.set(_SelectProps.default.propNames.renderValue, multipleRenderValue ? function () {
78
+ return multipleRenderValue(value, options);
79
+ } : null);
80
+ selectProps.set(_SelectProps.default.propNames.positionOverride, {
81
+ anchorOrigin: {
82
+ vertical: "bottom",
83
+ horizontal: "left"
84
+ },
85
+ transformOrigin: {
86
+ vertical: "top",
87
+ horizontal: "left"
88
+ }
89
+ });
43
90
  var hasError = props.required && (!Array.isArray(value) || value.length === 0);
44
91
  selectProps.set(_SelectProps.default.propNames.error, hasError);
45
92
  return /*#__PURE__*/_react.default.createElement(_Select.default, {
46
- options: options,
93
+ options: allOptions,
47
94
  selectProps: selectProps
48
95
  });
49
96
  };
97
+ __signature__(MultiSelector, "useIntl{{ formatMessage }}", function () {
98
+ return [_reactIntl.useIntl];
99
+ });
100
+ __signature__(MultiSelector, "useIntl{{ formatMessage }}", function () {
101
+ return [_reactIntl.useIntl];
102
+ });
50
103
  var _default = MultiSelector;
51
104
  var _default2 = _default;
52
105
  var _default3 = exports.default = _default2;
@@ -56,7 +109,8 @@ var _default3 = exports.default = _default2;
56
109
  if (!reactHotLoader) {
57
110
  return;
58
111
  }
59
- reactHotLoader.register(selectEventUpdater, "selectEventUpdater", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
112
+ reactHotLoader.register(clearValue, "clearValue", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
113
+ reactHotLoader.register(selectAllValue, "selectAllValue", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
60
114
  reactHotLoader.register(MultiSelector, "MultiSelector", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
61
115
  reactHotLoader.register(_default, "default", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
62
116
  })();
@@ -71,7 +125,8 @@ var _default3 = exports.default = _default2;
71
125
  if (!reactHotLoader) {
72
126
  return;
73
127
  }
74
- reactHotLoader.register(selectEventUpdater, "selectEventUpdater", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
128
+ reactHotLoader.register(clearValue, "clearValue", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
129
+ reactHotLoader.register(selectAllValue, "selectAllValue", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
75
130
  reactHotLoader.register(MultiSelector, "MultiSelector", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
76
131
  reactHotLoader.register(_default2, "default", "/home/vsts/work/1/s/src/components/Form/Inputs/MultiSelector.js");
77
132
  })();
@@ -1,10 +1,9 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.selectEventUpdater = exports.default = void 0;
4
+ exports.default = void 0;
5
5
  var _react = _interopRequireDefault(require("react"));
6
6
  var _Select = _interopRequireDefault(require("../../MaterialUI/Inputs/Select"));
7
- var _utils = require("../../../utils");
8
7
  var _SelectProps = _interopRequireDefault(require("../../MaterialUI/Inputs/SelectProps"));
9
8
  var _excluded = ["value", "options", "update"];
10
9
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -24,11 +23,6 @@ var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoader
24
23
  var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
25
24
  return a;
26
25
  };
27
- var selectEventUpdater = exports.selectEventUpdater = (0, _utils.memoize)(function (update) {
28
- return function (value) {
29
- return update(value);
30
- };
31
- });
32
26
  var Selector = function Selector(_ref) {
33
27
  var value = _ref.value,
34
28
  options = _ref.options,
@@ -38,7 +32,18 @@ var Selector = function Selector(_ref) {
38
32
  selectProps.set(_SelectProps.default.propNames.value, value);
39
33
  selectProps.set(_SelectProps.default.propNames.onClose, props.onBlur);
40
34
  selectProps.set(_SelectProps.default.propNames.disabled, props.disabled);
41
- selectProps.set(_SelectProps.default.propNames.update, selectEventUpdater(update));
35
+ selectProps.set(_SelectProps.default.propNames.update, update);
36
+ selectProps.set(_SelectProps.default.propNames.autoWidth, false);
37
+ selectProps.set(_SelectProps.default.propNames.positionOverride, {
38
+ anchorOrigin: {
39
+ vertical: "bottom",
40
+ horizontal: "left"
41
+ },
42
+ transformOrigin: {
43
+ vertical: "top",
44
+ horizontal: "left"
45
+ }
46
+ });
42
47
  var hasError = props.required && !value ? true : false;
43
48
  selectProps.set(_SelectProps.default.propNames.error, hasError);
44
49
  return /*#__PURE__*/_react.default.createElement(_Select.default, {
@@ -55,7 +60,6 @@ var _default3 = exports.default = _default2;
55
60
  if (!reactHotLoader) {
56
61
  return;
57
62
  }
58
- reactHotLoader.register(selectEventUpdater, "selectEventUpdater", "/home/vsts/work/1/s/src/components/Form/Inputs/Selector.js");
59
63
  reactHotLoader.register(Selector, "Selector", "/home/vsts/work/1/s/src/components/Form/Inputs/Selector.js");
60
64
  reactHotLoader.register(_default, "default", "/home/vsts/work/1/s/src/components/Form/Inputs/Selector.js");
61
65
  })();
@@ -70,7 +74,6 @@ var _default3 = exports.default = _default2;
70
74
  if (!reactHotLoader) {
71
75
  return;
72
76
  }
73
- reactHotLoader.register(selectEventUpdater, "selectEventUpdater", "/home/vsts/work/1/s/src/components/Form/Inputs/Selector.js");
74
77
  reactHotLoader.register(Selector, "Selector", "/home/vsts/work/1/s/src/components/Form/Inputs/Selector.js");
75
78
  reactHotLoader.register(_default2, "default", "/home/vsts/work/1/s/src/components/Form/Inputs/Selector.js");
76
79
  })();