@opengeoweb/shared 2.1.4 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.umd.js CHANGED
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('@mui/material'), require('@mui/styles/makeStyles'), require('@mui/icons-material'), require('react-hook-form'), require('@opengeoweb/form-fields'), require('react-draggable'), require('re-resizable'), require('@opengeoweb/theme'), require('lodash'), require('@mui/styles/withStyles'), require('@mui/styles/createStyles')) :
3
- typeof define === 'function' && define.amd ? define(['exports', 'react', '@mui/material', '@mui/styles/makeStyles', '@mui/icons-material', 'react-hook-form', '@opengeoweb/form-fields', 'react-draggable', 're-resizable', '@opengeoweb/theme', 'lodash', '@mui/styles/withStyles', '@mui/styles/createStyles'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Shared = {}, global.React, global.material, global.makeStyles, global.iconsMaterial, global.reactHookForm, global.formFields, global.Draggable, global.reResizable, global.theme, global.lodash, global.withStyles, global.createStyles));
5
- })(this, (function (exports, React, material, makeStyles, iconsMaterial, reactHookForm, formFields, Draggable, reResizable, theme, lodash, withStyles, createStyles) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('@mui/material'), require('@mui/styles/makeStyles'), require('@mui/icons-material'), require('react-hook-form'), require('@opengeoweb/form-fields'), require('react-draggable'), require('re-resizable'), require('@opengeoweb/theme'), require('lodash'), require('@mui/styles/withStyles'), require('@mui/styles/createStyles'), require('@mui/icons-material/MoreVert')) :
3
+ typeof define === 'function' && define.amd ? define(['exports', 'react', '@mui/material', '@mui/styles/makeStyles', '@mui/icons-material', 'react-hook-form', '@opengeoweb/form-fields', 'react-draggable', 're-resizable', '@opengeoweb/theme', 'lodash', '@mui/styles/withStyles', '@mui/styles/createStyles', '@mui/icons-material/MoreVert'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Shared = {}, global.React, global.material, global.makeStyles, global.iconsMaterial, global.reactHookForm, global.formFields, global.Draggable, global.reResizable, global.theme, global.lodash, global.withStyles, global.createStyles, global.MoreVertIcon));
5
+ })(this, (function (exports, React, material, makeStyles, iconsMaterial, reactHookForm, formFields, Draggable, reResizable, theme, lodash, withStyles, createStyles, MoreVertIcon) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -30,6 +30,7 @@
30
30
  var Draggable__default = /*#__PURE__*/_interopDefaultLegacy(Draggable);
31
31
  var withStyles__default = /*#__PURE__*/_interopDefaultLegacy(withStyles);
32
32
  var createStyles__default = /*#__PURE__*/_interopDefaultLegacy(createStyles);
33
+ var MoreVertIcon__default = /*#__PURE__*/_interopDefaultLegacy(MoreVertIcon);
33
34
 
34
35
  /*! *****************************************************************************
35
36
  Copyright (c) Microsoft Corporation.
@@ -159,7 +160,7 @@
159
160
  }, content));
160
161
  };
161
162
 
162
- var useStyles$e = makeStyles__default["default"](function () {
163
+ var useStyles$b = makeStyles__default["default"](function () {
163
164
  return {
164
165
  dialogHeader: {
165
166
  zIndex: 1,
@@ -188,7 +189,7 @@
188
189
  content = _e === void 0 ? null : _e,
189
190
  other = __rest(_a, ["open", "title", "description", "confirmLabel", "cancelLabel", "onSubmit", "onClose", "content"]);
190
191
 
191
- var classes = useStyles$e();
192
+ var classes = useStyles$b();
192
193
 
193
194
  other.catchOnCancel;
194
195
  var rest = __rest(other, ["catchOnCancel"]); // remove unwanted props
@@ -501,7 +502,7 @@
501
502
  * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
502
503
  * Copyright 2021 - Finnish Meteorological Institute (FMI)
503
504
  * */
504
- var useStyles$d = makeStyles__default["default"](function () {
505
+ var useStyles$a = makeStyles__default["default"](function () {
505
506
  return {
506
507
  title: {
507
508
  fontSize: '14px',
@@ -571,7 +572,7 @@
571
572
  info = _c === void 0 ? '' : _c,
572
573
  _d = _a.dataTestId,
573
574
  dataTestId = _d === void 0 ? 'alert-banner' : _d;
574
- var classes = useStyles$d();
575
+ var classes = useStyles$a();
575
576
  return /*#__PURE__*/React__namespace.createElement(material.Alert, {
576
577
  "data-testid": dataTestId,
577
578
  severity: severity,
@@ -599,7 +600,7 @@
599
600
  * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
600
601
  * Copyright 2021 - Finnish Meteorological Institute (FMI)
601
602
  * */
602
- var useStyles$c = makeStyles__default["default"](function () {
603
+ var useStyles$9 = makeStyles__default["default"](function () {
603
604
  return {
604
605
  wrapper: {
605
606
  height: '100vh',
@@ -616,7 +617,7 @@
616
617
  var AppLayout = function AppLayout(_a) {
617
618
  var header = _a.header,
618
619
  children = _a.children;
619
- var classes = useStyles$c();
620
+ var classes = useStyles$9();
620
621
  return /*#__PURE__*/React__default["default"].createElement("div", {
621
622
  className: classes.wrapper
622
623
  }, header, /*#__PURE__*/React__default["default"].createElement("main", {
@@ -642,7 +643,7 @@
642
643
  * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
643
644
  * Copyright 2021 - Finnish Meteorological Institute (FMI)
644
645
  * */
645
- var useStyles$b = makeStyles__default["default"](function (theme) {
646
+ var useStyles$8 = makeStyles__default["default"](function (theme) {
646
647
  var _a;
647
648
 
648
649
  return {
@@ -679,7 +680,7 @@
679
680
  userMenu = _a.userMenu,
680
681
  _b = _a.title,
681
682
  title = _b === void 0 ? 'GeoWeb' : _b;
682
- var classes = useStyles$b();
683
+ var classes = useStyles$8();
683
684
  return /*#__PURE__*/React__default["default"].createElement("header", {
684
685
  className: classes.header
685
686
  }, /*#__PURE__*/React__default["default"].createElement(material.Grid, {
@@ -763,38 +764,29 @@
763
764
  * Copyright 2021 - Finnish Meteorological Institute (FMI)
764
765
  * */
765
766
 
766
- var useStyles$a = function useStyles(isRightAligned) {
767
- return makeStyles__default["default"](function () {
768
- return {
769
- icon: __assign(__assign({
770
- width: 20,
771
- height: 20,
772
- top: -10,
773
- position: 'relative'
774
- }, isRightAligned ? {
775
- left: -10
776
- } : {
777
- left: 10,
778
- transform: 'rotate(90deg)'
779
- }), {
780
- zIndex: 1
781
- })
782
- };
783
- });
784
- };
785
-
786
767
  var ResizeHandle = function ResizeHandle(_a) {
787
768
  var isRightAligned = _a.isRightAligned;
788
769
  var theme = material.useTheme();
789
- var styles = useStyles$a(isRightAligned)();
790
770
  return /*#__PURE__*/React__default["default"].createElement(material.SvgIcon, {
791
- className: styles.icon,
771
+ sx: __assign(__assign({
772
+ width: 20,
773
+ height: 20,
774
+ top: -10,
775
+ position: 'relative'
776
+ }, isRightAligned ? {
777
+ left: -10
778
+ } : {
779
+ left: 10,
780
+ transform: 'rotate(90deg)'
781
+ }), {
782
+ zIndex: 1
783
+ }),
792
784
  "data-testid": "resizeHandle"
793
785
  }, /*#__PURE__*/React__default["default"].createElement("rect", {
794
786
  fill: "#ffffff"
795
787
  }), /*#__PURE__*/React__default["default"].createElement("path", {
796
788
  d: "M19.687 18.037v1h-6v-1h6zm3.5-3.5v1h-13v-1h13z",
797
- fill: "" + theme.palette.geowebColors.greys.accessible,
789
+ fill: "" + theme.palette.geowebColors.buttons.flat["default"].color,
798
790
  transform: "rotate(-45 16.687 16.787)"
799
791
  }));
800
792
  };
@@ -962,7 +954,7 @@
962
954
  * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
963
955
  * Copyright 2021 - Finnish Meteorological Institute (FMI)
964
956
  * */
965
- var useStyles$9 = makeStyles__default["default"](function (theme) {
957
+ var useStyles$7 = makeStyles__default["default"](function (theme) {
966
958
  return {
967
959
  container: {
968
960
  position: 'absolute',
@@ -1010,7 +1002,7 @@
1010
1002
  } : _d,
1011
1003
  children = _a.children,
1012
1004
  initials = _a.initials;
1013
- var classes = useStyles$9();
1005
+ var classes = useStyles$7();
1014
1006
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(material.IconButton, {
1015
1007
  "data-testid": "userButton",
1016
1008
  onClick: onToggle,
@@ -1052,7 +1044,9 @@
1052
1044
  isDark = _a.isDark,
1053
1045
  toggleTheme = _a.toggleTheme;
1054
1046
 
1055
- return /*#__PURE__*/React__default["default"].createElement(material.MenuItem, null, /*#__PURE__*/React__default["default"].createElement(material.Grid, {
1047
+ return /*#__PURE__*/React__default["default"].createElement(material.MenuItem, {
1048
+ divider: true
1049
+ }, /*#__PURE__*/React__default["default"].createElement(material.Grid, {
1056
1050
  container: true
1057
1051
  }, /*#__PURE__*/React__default["default"].createElement(material.Grid, {
1058
1052
  item: true
@@ -1091,7 +1085,7 @@
1091
1085
  * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
1092
1086
  * Copyright 2021 - Finnish Meteorological Institute (FMI)
1093
1087
  * */
1094
- var useStyles$8 = makeStyles__default["default"](function (theme) {
1088
+ var useStyles$6 = makeStyles__default["default"](function (theme) {
1095
1089
  return {
1096
1090
  footer: {
1097
1091
  boxShadow: theme.shadows[1],
@@ -1104,7 +1098,7 @@
1104
1098
  }); // drag handles will be handled by DraggableResizable/Resizable
1105
1099
 
1106
1100
  var ToolFooter = function ToolFooter() {
1107
- var classes = useStyles$8();
1101
+ var classes = useStyles$6();
1108
1102
  return /*#__PURE__*/React__default["default"].createElement("footer", {
1109
1103
  className: classes.footer
1110
1104
  });
@@ -1142,7 +1136,7 @@
1142
1136
  return {
1143
1137
  fontSize: 16,
1144
1138
  fontWeight: 500,
1145
- padding: 4
1139
+ padding: '4px'
1146
1140
  };
1147
1141
  }
1148
1142
 
@@ -1151,7 +1145,7 @@
1151
1145
  return {
1152
1146
  fontSize: 20,
1153
1147
  fontWeight: 400,
1154
- padding: 8
1148
+ padding: '8px'
1155
1149
  };
1156
1150
  }
1157
1151
 
@@ -1160,7 +1154,7 @@
1160
1154
  return {
1161
1155
  fontSize: 16,
1162
1156
  fontWeight: 500,
1163
- padding: 12
1157
+ padding: '12px'
1164
1158
  };
1165
1159
  }
1166
1160
 
@@ -1171,45 +1165,13 @@
1171
1165
  }
1172
1166
  };
1173
1167
 
1174
- var useStyles$7 = makeStyles__default["default"](function (theme) {
1175
- return {
1176
- header: {
1177
- boxShadow: theme.shadows[1],
1178
- background: theme.palette.geowebColors.background.surface,
1179
- padding: function padding(props) {
1180
- return props.styles.padding;
1181
- },
1182
- zIndex: 1,
1183
- cursor: function cursor(props) {
1184
- return props.isDraggable ? 'move' : null;
1185
- }
1186
- },
1187
- title: {
1188
- fontSize: function fontSize(props) {
1189
- return props.styles.fontSize;
1190
- },
1191
- fontWeight: function fontWeight(props) {
1192
- return props.styles.fontWeight;
1193
- }
1194
- },
1195
- iconClose: {
1196
- color: theme.palette.geowebColors.greys.accessible,
1197
- padding: 0
1198
- },
1199
- iconDrag: {
1200
- color: theme.palette.geowebColors.greys.accessible,
1201
- padding: 0,
1202
- pointerEvents: 'none'
1203
- },
1204
- iconDragHorizontal: {
1205
- color: theme.palette.geowebColors.greys.accessible,
1206
- padding: 0,
1207
- pointerEvents: 'none',
1208
- transform: 'rotate(90deg)',
1209
- height: 12
1210
- }
1211
- };
1212
- });
1168
+ var iconStyle = {
1169
+ color: 'geowebColors.greys.accessible',
1170
+ padding: 0,
1171
+ '&:hover': {
1172
+ background: 'action.hover'
1173
+ }
1174
+ };
1213
1175
 
1214
1176
  var ToolHeader = function ToolHeader(_a) {
1215
1177
  var size = _a.size,
@@ -1221,17 +1183,21 @@
1221
1183
  _d = _a.className,
1222
1184
  className = _d === void 0 ? '' : _d;
1223
1185
  var styles = getStyle(size);
1224
- var classes = useStyles$7({
1225
- styles: styles,
1226
- isDraggable: isDraggable
1227
- });
1228
1186
 
1229
1187
  var onClickClose = function onClickClose() {
1230
1188
  return onClose();
1231
1189
  };
1232
1190
 
1233
- return /*#__PURE__*/React__default["default"].createElement("header", {
1234
- className: classes.header + " " + className
1191
+ return /*#__PURE__*/React__default["default"].createElement(material.Box, {
1192
+ component: "header",
1193
+ className: className,
1194
+ sx: {
1195
+ boxShadow: 1,
1196
+ backgroundColor: 'geowebColors.background.surface',
1197
+ padding: styles.padding,
1198
+ zIndex: 1,
1199
+ cursor: isDraggable ? 'move' : null
1200
+ }
1235
1201
  }, /*#__PURE__*/React__default["default"].createElement(material.Grid, {
1236
1202
  container: true,
1237
1203
  alignItems: "center"
@@ -1243,9 +1209,11 @@
1243
1209
  justifyContent: "flex-start"
1244
1210
  }, isDraggable && size !== 'xxs' && /*#__PURE__*/React__default["default"].createElement(material.IconButton, {
1245
1211
  "data-testid": "dragBtn",
1246
- className: classes.iconDrag,
1247
1212
  disableRipple: true,
1248
- size: "large"
1213
+ size: "large",
1214
+ sx: __assign(__assign({}, iconStyle), {
1215
+ pointerEvents: 'none'
1216
+ })
1249
1217
  }, /*#__PURE__*/React__default["default"].createElement(iconsMaterial.DragIndicator, null)))), /*#__PURE__*/React__default["default"].createElement(material.Grid, {
1250
1218
  item: true,
1251
1219
  xs: 10
@@ -1255,12 +1223,19 @@
1255
1223
  alignItems: "center"
1256
1224
  }, title && /*#__PURE__*/React__default["default"].createElement(material.Typography, {
1257
1225
  variant: "h2",
1258
- className: classes.title
1226
+ sx: {
1227
+ fontSize: styles.fontSize,
1228
+ fontWeight: styles.fontWeight
1229
+ }
1259
1230
  }, title), size === 'xxs' && /*#__PURE__*/React__default["default"].createElement(material.IconButton, {
1260
1231
  "data-testid": "dragBtn-xxs",
1261
- className: classes.iconDragHorizontal,
1262
1232
  disableRipple: true,
1263
- size: "small"
1233
+ size: "small",
1234
+ sx: __assign(__assign({}, iconStyle), {
1235
+ pointerEvents: 'none',
1236
+ transform: 'rotate(90deg)',
1237
+ height: 12
1238
+ })
1264
1239
  }, /*#__PURE__*/React__default["default"].createElement(iconsMaterial.DragIndicator, null)))), /*#__PURE__*/React__default["default"].createElement(material.Grid, {
1265
1240
  item: true,
1266
1241
  xs: 1,
@@ -1268,9 +1243,9 @@
1268
1243
  justifyContent: "flex-end"
1269
1244
  }, onClose && /*#__PURE__*/React__default["default"].createElement(material.IconButton, {
1270
1245
  "data-testid": "closeBtn",
1271
- className: classes.iconClose,
1272
1246
  onClick: onClickClose,
1273
- size: "large"
1247
+ size: "large",
1248
+ sx: iconStyle
1274
1249
  }, /*#__PURE__*/React__default["default"].createElement(iconsMaterial.Close, null)))));
1275
1250
  };
1276
1251
 
@@ -1290,7 +1265,7 @@
1290
1265
  * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
1291
1266
  * Copyright 2021 - Finnish Meteorological Institute (FMI)
1292
1267
  * */
1293
- var useStyles$6 = makeStyles__default["default"](function () {
1268
+ var useStyles$5 = makeStyles__default["default"](function () {
1294
1269
  return {
1295
1270
  container: {
1296
1271
  overflow: 'hidden',
@@ -1330,7 +1305,7 @@
1330
1305
  headerClassName = _h === void 0 ? '' : _h,
1331
1306
  props = __rest(_a, ["title", "size", "children", "onClose", "isResizable", "isDraggable", "maxHeight", "elevation", "headerClassName"]);
1332
1307
 
1333
- var classes = useStyles$6();
1308
+ var classes = useStyles$5();
1334
1309
  return /*#__PURE__*/React__default["default"].createElement(material.Paper, __assign({
1335
1310
  elevation: elevation,
1336
1311
  className: classes.container
@@ -1532,7 +1507,7 @@
1532
1507
  * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
1533
1508
  * Copyright 2021 - Finnish Meteorological Institute (FMI)
1534
1509
  * */
1535
- var useStyles$5 = makeStyles__default["default"](function (theme) {
1510
+ var useStyles$4 = makeStyles__default["default"](function (theme) {
1536
1511
  return {
1537
1512
  icon: {
1538
1513
  backgroundColor: theme.palette.geowebColors.textInputField["default"].rgba,
@@ -1572,7 +1547,7 @@
1572
1547
  var _b = _a.type,
1573
1548
  type = _b === void 0 ? 'text' : _b,
1574
1549
  children = _a.children;
1575
- var classes = useStyles$5();
1550
+ var classes = useStyles$4();
1576
1551
 
1577
1552
  if (type === 'divider') {
1578
1553
  return /*#__PURE__*/React__default["default"].createElement(material.Typography, {
@@ -1622,7 +1597,7 @@
1622
1597
  * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
1623
1598
  * Copyright 2021 - Finnish Meteorological Institute (FMI)
1624
1599
  * */
1625
- var useStyles$4 = makeStyles__default["default"](function (theme) {
1600
+ var useStyles$3 = makeStyles__default["default"](function (theme) {
1626
1601
  return {
1627
1602
  icon: {
1628
1603
  fill: theme.palette.geowebColors.typographyAndIcons.text
@@ -1630,7 +1605,7 @@
1630
1605
  };
1631
1606
  });
1632
1607
  var OptionIcon = function OptionIcon() {
1633
- var classes = useStyles$4();
1608
+ var classes = useStyles$3();
1634
1609
  return /*#__PURE__*/React__default["default"].createElement(material.SvgIcon, {
1635
1610
  viewBox: "0 0 12 11",
1636
1611
  style: {
@@ -1653,7 +1628,7 @@
1653
1628
  }))));
1654
1629
  };
1655
1630
  var CommandIcon = function CommandIcon() {
1656
- var classes = useStyles$4();
1631
+ var classes = useStyles$3();
1657
1632
  return /*#__PURE__*/React__default["default"].createElement(material.SvgIcon, {
1658
1633
  viewBox: "0 0 12 12",
1659
1634
  style: {
@@ -1676,7 +1651,7 @@
1676
1651
  }))));
1677
1652
  };
1678
1653
  var ArrowLeftIcon = function ArrowLeftIcon() {
1679
- var classes = useStyles$4();
1654
+ var classes = useStyles$3();
1680
1655
  return /*#__PURE__*/React__default["default"].createElement(material.SvgIcon, {
1681
1656
  viewBox: "0 0 12 6",
1682
1657
  style: {
@@ -1700,7 +1675,7 @@
1700
1675
  }))));
1701
1676
  };
1702
1677
  var ArrowRightIcon = function ArrowRightIcon() {
1703
- var classes = useStyles$4();
1678
+ var classes = useStyles$3();
1704
1679
  return /*#__PURE__*/React__default["default"].createElement(material.SvgIcon, {
1705
1680
  viewBox: "0 0 12 6",
1706
1681
  style: {
@@ -1724,7 +1699,7 @@
1724
1699
  }))));
1725
1700
  };
1726
1701
  var ArrowDownIcon = function ArrowDownIcon() {
1727
- var classes = useStyles$4();
1702
+ var classes = useStyles$3();
1728
1703
  return /*#__PURE__*/React__default["default"].createElement(material.SvgIcon, {
1729
1704
  viewBox: "0 0 6 12",
1730
1705
  style: {
@@ -1747,7 +1722,7 @@
1747
1722
  }))));
1748
1723
  };
1749
1724
  var ArrowUpIcon = function ArrowUpIcon() {
1750
- var classes = useStyles$4();
1725
+ var classes = useStyles$3();
1751
1726
  return /*#__PURE__*/React__default["default"].createElement(material.SvgIcon, {
1752
1727
  viewBox: "0 0 6 11",
1753
1728
  style: {
@@ -1881,6 +1856,14 @@
1881
1856
  }, "+"), /*#__PURE__*/React__default["default"].createElement(ShortCutSegment, {
1882
1857
  type: "icon"
1883
1858
  }, /*#__PURE__*/React__default["default"].createElement(ArrowLeftIcon, null)))
1859
+ }, {
1860
+ title: 'Change layer manager values by scrolling',
1861
+ description: /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(ShortCutSegment, {
1862
+ type: "icon"
1863
+ }, "Ctrl"), /*#__PURE__*/React__default["default"].createElement(ShortCutSegment, null, " + Mouse scroll")),
1864
+ descriptionMac: /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(ShortCutSegment, {
1865
+ type: "icon"
1866
+ }, /*#__PURE__*/React__default["default"].createElement(CommandIcon, null)), /*#__PURE__*/React__default["default"].createElement(ShortCutSegment, null, " + Mouse scroll"))
1884
1867
  }];
1885
1868
  var getShortcutList = function getShortcutList(shortcutList, platform) {
1886
1869
  if (platform === void 0) {
@@ -1901,7 +1884,7 @@
1901
1884
  });
1902
1885
  });
1903
1886
  };
1904
- var useStyles$3 = makeStyles__default["default"](function () {
1887
+ var useStyles$2 = makeStyles__default["default"](function () {
1905
1888
  return {
1906
1889
  row: {
1907
1890
  minHeight: 56
@@ -1921,7 +1904,7 @@
1921
1904
  var ShortcutList = function ShortcutList(_a) {
1922
1905
  var _b = _a.platform,
1923
1906
  platform = _b === void 0 ? 'windows' : _b;
1924
- var classes = useStyles$3();
1907
+ var classes = useStyles$2();
1925
1908
  var rows = getShortcutList(shortcuts, platform);
1926
1909
  return /*#__PURE__*/React__default["default"].createElement(material.List, {
1927
1910
  "data-testid": "list-" + platform
@@ -1958,20 +1941,16 @@
1958
1941
  }, value === index && children);
1959
1942
  };
1960
1943
 
1961
- var useStyles$2 = makeStyles__default["default"](function () {
1962
- return {
1963
- container: {
1964
- margin: '0px 20px'
1965
- },
1966
- tab: {
1967
- fontSize: 12
1968
- }
1969
- };
1970
- });
1944
+ var styles = {
1945
+ container: {
1946
+ margin: '0px 20px'
1947
+ },
1948
+ tab: {
1949
+ fontSize: 12
1950
+ }
1951
+ };
1971
1952
 
1972
1953
  var CheatSheet = function CheatSheet() {
1973
- var classes = useStyles$2();
1974
-
1975
1954
  var _a = __read(React__default["default"].useState(0), 2),
1976
1955
  activeTab = _a[0],
1977
1956
  onChangeActiveTab = _a[1];
@@ -1980,17 +1959,17 @@
1980
1959
  onChangeActiveTab(newValue);
1981
1960
  };
1982
1961
 
1983
- return /*#__PURE__*/React__default["default"].createElement("div", {
1984
- className: classes.container
1962
+ return /*#__PURE__*/React__default["default"].createElement(material.Box, {
1963
+ sx: styles.container
1985
1964
  }, /*#__PURE__*/React__default["default"].createElement(material.Tabs, {
1986
1965
  value: activeTab,
1987
1966
  onChange: onChangeTab,
1988
1967
  "aria-label": "platform"
1989
1968
  }, /*#__PURE__*/React__default["default"].createElement(material.Tab, {
1990
- className: classes.tab,
1969
+ sx: styles.tab,
1991
1970
  label: "Windows"
1992
1971
  }), /*#__PURE__*/React__default["default"].createElement(material.Tab, {
1993
- className: classes.tab,
1972
+ sx: styles.tab,
1994
1973
  label: "Mac"
1995
1974
  })), /*#__PURE__*/React__default["default"].createElement(TabPanel, {
1996
1975
  value: activeTab,
@@ -2028,7 +2007,8 @@
2028
2007
 
2029
2008
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(material.MenuItem, {
2030
2009
  "data-testid": "cheatsheet-btn",
2031
- onClick: onOpen
2010
+ onClick: onOpen,
2011
+ divider: true
2032
2012
  }, /*#__PURE__*/React__default["default"].createElement(material.Grid, {
2033
2013
  container: true
2034
2014
  }, /*#__PURE__*/React__default["default"].createElement(material.Grid, {
@@ -2266,7 +2246,7 @@
2266
2246
  alignItems: 'center',
2267
2247
  boxShadow: '0 1px 3px 0 rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 0 2px 0 rgba(0, 0, 0, 0.14)',
2268
2248
  width: '100%',
2269
- backgroundColor: '#ffffff',
2249
+ backgroundColor: theme.palette.geowebColors.background.surface,
2270
2250
  zIndex: props.zIndex + 10
2271
2251
  };
2272
2252
  },
@@ -2315,6 +2295,176 @@
2315
2295
  }, children)));
2316
2296
  };
2317
2297
 
2298
+ /* *
2299
+ * Licensed under the Apache License, Version 2.0 (the "License");
2300
+ * you may not use this file except in compliance with the License.
2301
+ * You may obtain a copy of the License at
2302
+ *
2303
+ * http://www.apache.org/licenses/LICENSE-2.0
2304
+ *
2305
+ * Unless required by applicable law or agreed to in writing, software
2306
+ * distributed under the License is distributed on an "AS IS" BASIS,
2307
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2308
+ * See the License for the specific language governing permissions and
2309
+ * limitations under the License.
2310
+ *
2311
+ * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
2312
+ * Copyright 2021 - Finnish Meteorological Institute (FMI)
2313
+ * */
2314
+
2315
+ var CustomToggleButton = function CustomToggleButton(_a) {
2316
+ var _b = _a.variant,
2317
+ variant = _b === void 0 ? 'primary' : _b,
2318
+ _c = _a.value,
2319
+ value = _c === void 0 ? 0 : _c,
2320
+ props = __rest(_a, ["variant", "value"]);
2321
+
2322
+ return /*#__PURE__*/React__namespace.createElement(material.ToggleButton, __assign({
2323
+ className: variant,
2324
+ value: value
2325
+ }, props));
2326
+ };
2327
+
2328
+ /* *
2329
+ * Licensed under the Apache License, Version 2.0 (the "License");
2330
+ * you may not use this file except in compliance with the License.
2331
+ * You may obtain a copy of the License at
2332
+ *
2333
+ * http://www.apache.org/licenses/LICENSE-2.0
2334
+ *
2335
+ * Unless required by applicable law or agreed to in writing, software
2336
+ * distributed under the License is distributed on an "AS IS" BASIS,
2337
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2338
+ * See the License for the specific language governing permissions and
2339
+ * limitations under the License.
2340
+ *
2341
+ * Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
2342
+ * Copyright 2021 - Finnish Meteorological Institute (FMI)
2343
+ * */
2344
+ var ToolButton = function ToolButton(_a) {
2345
+ var active = _a.active,
2346
+ _b = _a.width,
2347
+ width = _b === void 0 ? '24px' : _b,
2348
+ _c = _a.height,
2349
+ height = _c === void 0 ? '24px' : _c,
2350
+ children = _a.children,
2351
+ _d = _a.value,
2352
+ value = _d === void 0 ? 0 : _d,
2353
+ _e = _a.sx,
2354
+ sx = _e === void 0 ? {} : _e,
2355
+ props = __rest(_a, ["active", "width", "height", "children", "value", "sx"]);
2356
+
2357
+ return /*#__PURE__*/React__namespace.createElement(CustomToggleButton, __assign({
2358
+ variant: "tool",
2359
+ disableRipple: true,
2360
+ selected: active,
2361
+ value: value,
2362
+ sx: __assign({
2363
+ width: width + "!important",
2364
+ height: height + "!important",
2365
+ textTransform: 'none!important',
2366
+ padding: '11px!important'
2367
+ }, sx)
2368
+ }, props), children);
2369
+ };
2370
+
2371
+ var getPosition = function getPosition(menuPosition) {
2372
+ switch (menuPosition) {
2373
+ case 'bottom':
2374
+ return {
2375
+ anchorOrigin: {
2376
+ vertical: 'bottom',
2377
+ horizontal: 'center'
2378
+ },
2379
+ transformOrigin: {
2380
+ vertical: 'top',
2381
+ horizontal: 'center'
2382
+ }
2383
+ };
2384
+
2385
+ default:
2386
+ case 'left':
2387
+ return {
2388
+ anchorOrigin: {
2389
+ vertical: 'center',
2390
+ horizontal: 'left'
2391
+ },
2392
+ transformOrigin: {
2393
+ vertical: 'center',
2394
+ horizontal: 'right'
2395
+ }
2396
+ };
2397
+ }
2398
+ };
2399
+
2400
+ var ToggleMenu = function ToggleMenu(_a) {
2401
+ var _b = _a.buttonTestId,
2402
+ buttonTestId = _b === void 0 ? 'toggleMenuButton' : _b,
2403
+ _c = _a.menuPosition,
2404
+ menuPosition = _c === void 0 ? 'left' : _c,
2405
+ menuItems = _a.menuItems,
2406
+ children = _a.children,
2407
+ buttonSx = _a.buttonSx,
2408
+ _d = _a.tooltipTitle,
2409
+ tooltipTitle = _d === void 0 ? '' : _d;
2410
+
2411
+ var _e = __read(React__namespace.useState(null), 2),
2412
+ anchorEl = _e[0],
2413
+ setAnchorEl = _e[1];
2414
+
2415
+ var isOpen = Boolean(anchorEl);
2416
+
2417
+ var _f = getPosition(menuPosition),
2418
+ anchorOrigin = _f.anchorOrigin,
2419
+ transformOrigin = _f.transformOrigin;
2420
+
2421
+ var handleClick = function handleClick(event) {
2422
+ setAnchorEl(event.currentTarget);
2423
+ };
2424
+
2425
+ var handleClose = function handleClose() {
2426
+ setAnchorEl(null);
2427
+ };
2428
+
2429
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(ToolButton, {
2430
+ active: isOpen,
2431
+ sx: buttonSx,
2432
+ onClick: handleClick,
2433
+ "data-testid": buttonTestId
2434
+ }, /*#__PURE__*/React__namespace.createElement(material.Tooltip, {
2435
+ placement: "top",
2436
+ title: tooltipTitle
2437
+ }, /*#__PURE__*/React__namespace.createElement(MoreVertIcon__default["default"], null))), /*#__PURE__*/React__namespace.createElement(material.Menu, {
2438
+ anchorEl: anchorEl,
2439
+ open: isOpen,
2440
+ onClose: handleClose,
2441
+ anchorOrigin: anchorOrigin,
2442
+ transformOrigin: transformOrigin,
2443
+ BackdropProps: {
2444
+ style: {
2445
+ opacity: 0,
2446
+ transition: 'none'
2447
+ }
2448
+ },
2449
+ MenuListProps: children && {
2450
+ style: {
2451
+ padding: '0px'
2452
+ }
2453
+ }
2454
+ }, menuItems && menuItems.map(function (menuItem) {
2455
+ var text = menuItem.text,
2456
+ icon = menuItem.icon,
2457
+ action = menuItem.action;
2458
+ return /*#__PURE__*/React__namespace.createElement(material.MenuItem, {
2459
+ key: text,
2460
+ onClick: function onClick() {
2461
+ action();
2462
+ handleClose();
2463
+ }
2464
+ }, icon && /*#__PURE__*/React__namespace.createElement(material.ListItemIcon, null, icon), /*#__PURE__*/React__namespace.createElement(material.Typography, null, text));
2465
+ }), children));
2466
+ };
2467
+
2318
2468
  /* *
2319
2469
  * Licensed under the Apache License, Version 2.0 (the "License");
2320
2470
  * you may not use this file except in compliance with the License.
@@ -2355,12 +2505,15 @@
2355
2505
  exports.ConfirmationDialog = ConfirmationDialog;
2356
2506
  exports.ConfirmationServiceProvider = ConfirmationServiceProvider;
2357
2507
  exports.CustomSlider = CustomSlider;
2508
+ exports.CustomToggleButton = CustomToggleButton;
2358
2509
  exports.Draggable = DraggableComponent$1;
2359
2510
  exports.DraggableDialog = DraggableDialog;
2360
2511
  exports.ErrorBoundary = ErrorBoundary;
2361
2512
  exports.HIDDEN_INPUT_HELPER_IS_DRAFT = HIDDEN_INPUT_HELPER_IS_DRAFT;
2362
2513
  exports.Resizable = ResizeComponent;
2363
2514
  exports.StatusTag = StatusTag;
2515
+ exports.ToggleMenu = ToggleMenu;
2516
+ exports.ToolButton = ToolButton;
2364
2517
  exports.ToolContainer = ToolContainer;
2365
2518
  exports.ToolContainerDraggable = DraggableComponent;
2366
2519
  exports.ToolFooter = ToolFooter;