@equinor/echo-framework 0.9.12 → 0.9.13

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 (49) hide show
  1. package/dist/_virtual/index.js +9 -0
  2. package/dist/components/containers/layouts.d.ts +3 -5
  3. package/dist/components/panel/corePanelLeft.d.ts +4 -1
  4. package/dist/components/panel/corePanelRight.d.ts +4 -1
  5. package/dist/components/router/echoRoute.d.ts +2 -2
  6. package/dist/components/router/index.d.ts +0 -1
  7. package/dist/coreApplication/EchoBarComponent.d.ts +9 -0
  8. package/dist/coreApplication/EchoUserInterfaceContextProvider.d.ts +11 -0
  9. package/dist/coreApplication/index.d.ts +2 -0
  10. package/dist/hooks/index.d.ts +2 -0
  11. package/dist/hooks/useIsCompactLayout.d.ts +5 -0
  12. package/dist/hooks/useScreenOrientation.d.ts +5 -0
  13. package/dist/hooks/useScreenValues.d.ts +13 -0
  14. package/dist/hooks/useWindowSize.d.ts +9 -0
  15. package/dist/index.d.ts +8 -0
  16. package/dist/node_modules/@babel/runtime/helpers/esm/extends.js +2 -1
  17. package/dist/node_modules/@microsoft/signalr/dist/esm/Utils.js +1 -1
  18. package/dist/node_modules/classnames/index.js +67 -0
  19. package/dist/src/components/appLinks/AppLinks.js +1 -4
  20. package/dist/src/components/containers/layout.module.css.js +5 -1
  21. package/dist/src/components/containers/layouts.js +75 -36
  22. package/dist/src/components/footer/footer.module.css.js +1 -1
  23. package/dist/src/components/panel/corePanelLeft.js +6 -3
  24. package/dist/src/components/panel/corePanelLeft.module.css.js +3 -1
  25. package/dist/src/components/panel/corePanelRight.js +5 -2
  26. package/dist/src/components/panel/corePanelRight.module.css.js +1 -1
  27. package/dist/src/components/router/echoRoute.js +9 -3
  28. package/dist/src/components/router/routes.js +1 -4
  29. package/dist/src/components/toaster/toaster.js +1 -0
  30. package/dist/src/components/toaster/toaster.module.css.js +2 -1
  31. package/dist/src/coreApplication/EchoBarComponent.js +164 -0
  32. package/dist/src/coreApplication/EchoContent.js +21 -1
  33. package/dist/src/coreApplication/EchoContent.module.css.js +17 -0
  34. package/dist/src/coreApplication/EchoUserInterfaceContextProvider.js +66 -0
  35. package/dist/src/globalStyles.css.js +1 -1
  36. package/dist/src/hooks/index.js +6 -0
  37. package/dist/src/hooks/useIsCompactLayout.js +50 -0
  38. package/dist/src/hooks/useScreenOrientation.js +62 -0
  39. package/dist/src/hooks/useScreenValues.js +35 -0
  40. package/dist/src/hooks/useWindowSize.js +62 -0
  41. package/dist/src/index.js +47 -81
  42. package/dist/src/index2.js +205 -0
  43. package/dist/types/hookLibrary.d.ts +1 -0
  44. package/package.json +37 -37
  45. package/dist/components/appLinks/applinkUtils.d.ts +0 -2
  46. package/dist/components/appLinks/applinkUtils.test.d.ts +0 -1
  47. package/dist/components/router/useLayout.d.ts +0 -3
  48. package/dist/src/components/appLinks/applinkUtils.js +0 -19
  49. package/dist/src/components/router/useLayout.js +0 -32
@@ -0,0 +1,164 @@
1
+ 'use strict';
2
+
3
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
+
5
+ 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."); }
6
+
7
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
+
9
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
+
11
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
+
13
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
+
15
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
16
+
17
+ Object.defineProperty(exports, '__esModule', {
18
+ value: true
19
+ });
20
+
21
+ var echoBase = require('@equinor/echo-base');
22
+
23
+ var echoComponents = require('@equinor/echo-components');
24
+
25
+ var EchoCore = require('@equinor/echo-core');
26
+
27
+ var EchoUtils = require('@equinor/echo-utils');
28
+
29
+ var edsCoreReact = require('@equinor/eds-core-react');
30
+
31
+ var React = require('react');
32
+
33
+ var reactRouterDom = require('react-router-dom');
34
+
35
+ var logo_ee = require('../icons/logo_ee.js');
36
+
37
+ var EchoContent_module = require('./EchoContent.module.css.js');
38
+
39
+ function _interopDefaultLegacy(e) {
40
+ return e && _typeof(e) === 'object' && 'default' in e ? e : {
41
+ 'default': e
42
+ };
43
+ }
44
+
45
+ var EchoUtils__default = /*#__PURE__*/_interopDefaultLegacy(EchoUtils);
46
+
47
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
48
+
49
+ var EchoBarComponent = function EchoBarComponent(_ref) {
50
+ var isBottomBarVisible = _ref.isBottomBarVisible,
51
+ activeAppMenuItem = _ref.activeAppMenuItem,
52
+ updateActiveAppMenuItem = _ref.updateActiveAppMenuItem;
53
+ var useStateSafe = EchoUtils__default["default"].Hooks.useStateSafe;
54
+
55
+ var _useStateSafe = useStateSafe(false),
56
+ _useStateSafe2 = _slicedToArray(_useStateSafe, 2),
57
+ isSyncing = _useStateSafe2[0],
58
+ setIsSyncing = _useStateSafe2[1];
59
+
60
+ var _EchoCore$usePanels = EchoCore.usePanels(),
61
+ setActivePanel = _EchoCore$usePanels.setActivePanel,
62
+ activePanel = _EchoCore$usePanels.activePanel;
63
+
64
+ var goToInternalLink = EchoCore.useInternalLink();
65
+
66
+ var _EchoCore$usePlantSet = EchoCore.usePlantSettings(),
67
+ selectedInstCode = _EchoCore$usePlantSet.instCode;
68
+
69
+ var history = reactRouterDom.useHistory();
70
+ React.useEffect(function () {
71
+ var unSubscribeSyncing = echoBase.eventHub.subscribe('isSyncing', function (syncing) {
72
+ setIsSyncing(syncing);
73
+ });
74
+ return function () {
75
+ unSubscribeSyncing();
76
+ };
77
+ });
78
+
79
+ var onClickButton = function onClickButton(key) {
80
+ setActivePanel('');
81
+
82
+ if (key === activeAppMenuItem) {
83
+ if (key === 'menu' || key === 'search') {
84
+ updateActiveAppMenuItem('');
85
+ setActivePanel('');
86
+ } else {
87
+ goToInternalLink("/");
88
+ }
89
+
90
+ updateActiveAppMenuItem('');
91
+ } else {
92
+ updateActiveAppMenuItem(key);
93
+
94
+ switch (key) {
95
+ case 'home':
96
+ return history.push("/?instCode=".concat(selectedInstCode));
97
+
98
+ case 'search':
99
+ return setActivePanel(EchoCore.ECHO_CORE_SEARCH);
100
+
101
+ case 'camera':
102
+ return goToInternalLink("newcamera");
103
+
104
+ case 'menu':
105
+ return setActivePanel(EchoCore.ECHO_CORE_MAIN);
106
+
107
+ default:
108
+ return null;
109
+ }
110
+ }
111
+
112
+ updateActiveAppMenuItem('');
113
+ };
114
+
115
+ var EchoIcon = logo_ee.icon;
116
+ return isBottomBarVisible ? /*#__PURE__*/React__default["default"].createElement(echoComponents.EchoBottomBar, {
117
+ style: {
118
+ zIndex: 'var( --echo-framework-z-level-bottom-bar)'
119
+ }
120
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
121
+ className: "".concat(EchoContent_module["default"].barButtons)
122
+ }, /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
123
+ variant: "ghost_icon",
124
+ onClick: function onClick() {
125
+ return onClickButton('home');
126
+ }
127
+ }, /*#__PURE__*/React__default["default"].createElement(EchoIcon, null))), /*#__PURE__*/React__default["default"].createElement("div", {
128
+ className: "".concat(EchoContent_module["default"].barButtons, " ").concat(activeAppMenuItem === 'search' && activePanel === 'echoCoreSearch' ? EchoContent_module["default"].activeBottomBarButton : '')
129
+ }, /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
130
+ variant: "ghost_icon",
131
+ onClick: function onClick() {
132
+ return onClickButton('search');
133
+ }
134
+ }, /*#__PURE__*/React__default["default"].createElement(echoComponents.Icon, {
135
+ name: 'search',
136
+ color: echoComponents.themeConst.echoText
137
+ }))), /*#__PURE__*/React__default["default"].createElement("div", {
138
+ className: "".concat(EchoContent_module["default"].barButtons, " ").concat(activeAppMenuItem === 'camera' ? EchoContent_module["default"].activeBottomBarButton : '')
139
+ }, /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
140
+ variant: "ghost_icon",
141
+ onClick: function onClick() {
142
+ return onClickButton('camera');
143
+ }
144
+ }, /*#__PURE__*/React__default["default"].createElement(echoComponents.Icon, {
145
+ name: 'camera',
146
+ color: echoComponents.themeConst.echoText
147
+ }))), /*#__PURE__*/React__default["default"].createElement("div", {
148
+ className: "".concat(EchoContent_module["default"].barButtons, " ").concat(activeAppMenuItem === 'menu' && activePanel === 'echoCoreMain' ? EchoContent_module["default"].activeBottomBarButton : '')
149
+ }, /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
150
+ variant: "ghost_icon",
151
+ onClick: function onClick() {
152
+ return onClickButton('menu');
153
+ }
154
+ }, isSyncing ? /*#__PURE__*/React__default["default"].createElement(echoComponents.Icon, {
155
+ className: EchoContent_module["default"].spinningIcon,
156
+ color: echoComponents.themeConst.echoText,
157
+ name: 'sync'
158
+ }) : /*#__PURE__*/React__default["default"].createElement(echoComponents.Icon, {
159
+ name: 'menu',
160
+ color: echoComponents.themeConst.echoText
161
+ })))) : null;
162
+ };
163
+
164
+ exports.EchoBarComponent = EchoBarComponent;
@@ -14,6 +14,18 @@ var corePanelLeft = require('../components/panel/corePanelLeft.js');
14
14
 
15
15
  var corePanelRight = require('../components/panel/corePanelRight.js');
16
16
 
17
+ require('react-router-dom');
18
+
19
+ require('@equinor/echo-utils');
20
+
21
+ var useScreenValues = require('../hooks/useScreenValues.js');
22
+
23
+ require('@equinor/echo-base');
24
+
25
+ require('@equinor/echo-search');
26
+
27
+ require('../services/echopediaAnalyticsModule/echopediaAnalyticsModule.js');
28
+
17
29
  function _interopDefaultLegacy(e) {
18
30
  return e && _typeof(e) === 'object' && 'default' in e ? e : {
19
31
  'default': e
@@ -26,7 +38,15 @@ var EchoContent = function EchoContent(_ref) {
26
38
  var children = _ref.children,
27
39
  isLeftAndRightPanelHidden = _ref.isLeftAndRightPanelHidden,
28
40
  Legend = _ref.Legend;
29
- return /*#__PURE__*/React__default["default"].createElement(EchoCore.ModuleContextProvider, null, !isLeftAndRightPanelHidden && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(corePanelLeft["default"], null), /*#__PURE__*/React__default["default"].createElement(corePanelRight["default"], null)), children, Legend && /*#__PURE__*/React__default["default"].createElement(Legend, null));
41
+
42
+ var _useScreenValues$useS = useScreenValues.useScreenValues(),
43
+ isScreenMobileSize = _useScreenValues$useS.isScreenMobileSize;
44
+
45
+ return /*#__PURE__*/React__default["default"].createElement(EchoCore.ModuleContextProvider, null, !isLeftAndRightPanelHidden && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(corePanelLeft["default"], {
46
+ isToggleButtonVisible: !isScreenMobileSize
47
+ }), /*#__PURE__*/React__default["default"].createElement(corePanelRight["default"], {
48
+ isToggleButtonVisible: !isScreenMobileSize
49
+ })), children, Legend && /*#__PURE__*/React__default["default"].createElement(Legend, null));
30
50
  };
31
51
 
32
52
  exports.EchoContent = EchoContent;
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true
5
+ });
6
+
7
+ var styleInject_es = require('../../node_modules/style-inject/dist/style-inject.es.js');
8
+
9
+ var css_248z = ".EchoContent-module_barButtons__F8xrV{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.EchoContent-module_activeBottomBarButton__MQAdf{background-color:var(--equiGreen3);border-top:2px solid var(--equiGreen1)}@media screen and (max-width:1078px) and (orientation:landscape){.EchoContent-module_activeBottomBarButton__MQAdf{border-right:2px solid var(--equiGreen1);border-top:0}}@keyframes EchoContent-module_spinAnimation__gNXNq{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.EchoContent-module_spinningIcon__am10d{animation:EchoContent-module_spinAnimation__gNXNq 1.5s linear infinite reverse}";
10
+ var style = {
11
+ "barButtons": "EchoContent-module_barButtons__F8xrV",
12
+ "activeBottomBarButton": "EchoContent-module_activeBottomBarButton__MQAdf",
13
+ "spinningIcon": "EchoContent-module_spinningIcon__am10d",
14
+ "spinAnimation": "EchoContent-module_spinAnimation__gNXNq"
15
+ };
16
+ styleInject_es["default"](css_248z);
17
+ exports["default"] = style;
@@ -0,0 +1,66 @@
1
+ 'use strict';
2
+
3
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
+
5
+ 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."); }
6
+
7
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
+
9
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
+
11
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
+
13
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
+
15
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
16
+
17
+ Object.defineProperty(exports, '__esModule', {
18
+ value: true
19
+ });
20
+
21
+ var React = require('react');
22
+
23
+ function _interopDefaultLegacy(e) {
24
+ return e && _typeof(e) === 'object' && 'default' in e ? e : {
25
+ 'default': e
26
+ };
27
+ }
28
+
29
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
30
+
31
+ var EchoUiContext = /*#__PURE__*/React__default["default"].createContext({
32
+ activeAppMenuItem: '',
33
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars -- need to match interface
34
+ updateActiveAppMenuItem: function updateActiveAppMenuItem(newActiveAppMenuItem) {
35
+ throw new Error('Echo UI Context not initialized');
36
+ }
37
+ });
38
+
39
+ var useEchoUiContext = function useEchoUiContext() {
40
+ return React__default["default"].useContext(EchoUiContext);
41
+ };
42
+
43
+ var EchoUiContextProvider = function EchoUiContextProvider(_ref) {
44
+ var children = _ref.children;
45
+
46
+ var _React__default$defau = React__default["default"].useState(''),
47
+ _React__default$defau2 = _slicedToArray(_React__default$defau, 2),
48
+ activeAppMenuItem = _React__default$defau2[0],
49
+ setActiveAppMenuItem = _React__default$defau2[1];
50
+
51
+ var updateActiveAppMenuItem = React__default["default"].useCallback(function (newActiveAppMenuItem) {
52
+ return setActiveAppMenuItem(newActiveAppMenuItem);
53
+ }, []);
54
+ var value = React__default["default"].useMemo(function () {
55
+ return {
56
+ activeAppMenuItem: activeAppMenuItem,
57
+ updateActiveAppMenuItem: updateActiveAppMenuItem
58
+ };
59
+ }, [activeAppMenuItem, updateActiveAppMenuItem]);
60
+ return /*#__PURE__*/React__default["default"].createElement(EchoUiContext.Provider, {
61
+ value: value
62
+ }, children);
63
+ };
64
+
65
+ exports.EchoUiContextProvider = EchoUiContextProvider;
66
+ exports.useEchoUiContext = useEchoUiContext;
@@ -2,5 +2,5 @@
2
2
 
3
3
  var styleInject_es = require('../node_modules/style-inject/dist/style-inject.es.js');
4
4
 
5
- var css_248z = ":root{--echo-framework-z-level-panel:500;--echo-framework-z-level-scrim:1450}[class^=Scrim__StyledScrim]{z-index:var(--echo-framework-z-level-scrim)!important}";
5
+ var css_248z = ":root{--echo-framework-z-level-panel-left:500;--echo-framework-z-level-panel-main:550;--echo-framework-z-level-bottom-bar:1500;--echo-framework-z-level-scrim:1450}[class^=Scrim__StyledScrim]{z-index:var(--echo-framework-z-level-scrim)!important}";
6
6
  styleInject_es["default"](css_248z);
@@ -6,7 +6,13 @@ Object.defineProperty(exports, '__esModule', {
6
6
 
7
7
  var useEchoHistory = require('./useEchoHistory.js');
8
8
 
9
+ var useScreenOrientation = require('./useScreenOrientation.js');
10
+
11
+ var useScreenValues = require('./useScreenValues.js');
12
+
9
13
  var useTagDetails = require('./useTagDetails.js');
10
14
 
11
15
  exports.useEchoHistory = useEchoHistory.useEchoHistory;
16
+ exports.useScreenOrientation = useScreenOrientation.useScreenOrientation;
17
+ exports.useScreenValues = useScreenValues.useScreenValues;
12
18
  exports.useTagDetails = useTagDetails.useTagDetails;
@@ -0,0 +1,50 @@
1
+ 'use strict';
2
+
3
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
+
5
+ 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."); }
6
+
7
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
+
9
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
+
11
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
+
13
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
+
15
+ Object.defineProperty(exports, '__esModule', {
16
+ value: true
17
+ });
18
+
19
+ var React = require('react');
20
+
21
+ var useWindowSize = require('./useWindowSize.js');
22
+ /**
23
+ * Hook for checking if the current size of the browser window is mobile size.
24
+ * @returns {boolean} If the current screen is below threshold or not.
25
+ */
26
+
27
+
28
+ function useIsCompactLayout(isLandscape) {
29
+ var windowSize = useWindowSize.useWindowSize();
30
+
31
+ var _React$useState = React.useState(false),
32
+ _React$useState2 = _slicedToArray(_React$useState, 2),
33
+ isMobileWidth = _React$useState2[0],
34
+ setIsMobileWidth = _React$useState2[1]; //This calculation is connected to the viewport metatag in index.html
35
+
36
+
37
+ var scaledClientWidth = windowSize.width * 0.86;
38
+ var roundedClientWidth = Math.ceil(scaledClientWidth);
39
+ var smallScreenPortrait = roundedClientWidth < 768 && !isLandscape;
40
+ var smallScreenLandscape = roundedClientWidth < 928 && isLandscape;
41
+ var isCurrentSizeSmall = smallScreenLandscape || smallScreenPortrait;
42
+
43
+ if (isMobileWidth !== isCurrentSizeSmall) {
44
+ setIsMobileWidth(isCurrentSizeSmall);
45
+ }
46
+
47
+ return isMobileWidth;
48
+ }
49
+
50
+ exports.useIsCompactLayout = useIsCompactLayout;
@@ -0,0 +1,62 @@
1
+ 'use strict';
2
+
3
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
+
5
+ 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."); }
6
+
7
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
+
9
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
+
11
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
+
13
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
+
15
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
16
+
17
+ Object.defineProperty(exports, '__esModule', {
18
+ value: true
19
+ });
20
+
21
+ var EchoUtils = require('@equinor/echo-utils');
22
+
23
+ var React = require('react');
24
+
25
+ function _interopDefaultLegacy(e) {
26
+ return e && _typeof(e) === 'object' && 'default' in e ? e : {
27
+ 'default': e
28
+ };
29
+ }
30
+
31
+ var EchoUtils__default = /*#__PURE__*/_interopDefaultLegacy(EchoUtils);
32
+ /**
33
+ * @returns {ScreenOrientation}
34
+ */
35
+
36
+
37
+ function useScreenOrientation() {
38
+ var useStateSafe = EchoUtils__default["default"].Hooks.useStateSafe;
39
+
40
+ var _useStateSafe = useStateSafe(undefined),
41
+ _useStateSafe2 = _slicedToArray(_useStateSafe, 2),
42
+ orientation = _useStateSafe2[0],
43
+ setOrientation = _useStateSafe2[1];
44
+
45
+ var updateOrientation = React.useCallback(function () {
46
+ if (document.documentElement.clientWidth > document.documentElement.clientHeight) {
47
+ setOrientation('landscape');
48
+ } else {
49
+ setOrientation('portrait');
50
+ }
51
+ }, [setOrientation]);
52
+ React.useEffect(function () {
53
+ updateOrientation();
54
+ window.addEventListener('resize', updateOrientation);
55
+ return function () {
56
+ window.removeEventListener('resize', updateOrientation);
57
+ };
58
+ }, [updateOrientation]);
59
+ return orientation;
60
+ }
61
+
62
+ exports.useScreenOrientation = useScreenOrientation;
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true
5
+ });
6
+
7
+ require('@equinor/echo-core');
8
+
9
+ require('react');
10
+
11
+ require('react-router-dom');
12
+
13
+ var useScreenOrientation = require('./useScreenOrientation.js');
14
+
15
+ var useIsCompactLayout = require('./useIsCompactLayout.js');
16
+
17
+ require('@equinor/echo-utils');
18
+
19
+ require('@equinor/echo-base');
20
+
21
+ require('@equinor/echo-search');
22
+
23
+ require('../services/echopediaAnalyticsModule/echopediaAnalyticsModule.js');
24
+
25
+ function useScreenValues() {
26
+ var screenOrientation = useScreenOrientation.useScreenOrientation();
27
+ var isLandscape = screenOrientation === 'landscape';
28
+ var isScreenMobileSize = useIsCompactLayout.useIsCompactLayout(isLandscape);
29
+ return {
30
+ isScreenMobileSize: isScreenMobileSize,
31
+ screenOrientation: screenOrientation
32
+ };
33
+ }
34
+
35
+ exports.useScreenValues = useScreenValues;
@@ -0,0 +1,62 @@
1
+ 'use strict';
2
+
3
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
+
5
+ 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."); }
6
+
7
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
+
9
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
+
11
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
+
13
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
+
15
+ Object.defineProperty(exports, '__esModule', {
16
+ value: true
17
+ });
18
+
19
+ var React = require('react'); // useWindowSize from usehooks.com
20
+
21
+ /**
22
+ * Get the current size of the browser window.
23
+ * @returns {width?: number; height?: number} Width and height of the current browser size.
24
+
25
+ */
26
+
27
+
28
+ function useWindowSize() {
29
+ // Initialize state with undefined width/height so server and client renders match
30
+ // Learn more here: https://joshwcomeau.com/react/the-perils-of-rehydration/
31
+ var _React$useState = React.useState({
32
+ width: 0,
33
+ height: 0
34
+ }),
35
+ _React$useState2 = _slicedToArray(_React$useState, 2),
36
+ windowSize = _React$useState2[0],
37
+ setWindowSize = _React$useState2[1];
38
+
39
+ React.useEffect(function () {
40
+ // Handler to call on window resize
41
+ function handleResize() {
42
+ // Set window width/height to state
43
+ setWindowSize({
44
+ width: document.documentElement.clientWidth,
45
+ height: document.documentElement.clientHeight
46
+ });
47
+ } // Add event listener
48
+
49
+
50
+ window.addEventListener('resize', handleResize); // Call handler right away so state gets updated with initial window size
51
+
52
+ handleResize(); // Remove event listener on cleanup
53
+
54
+ return function () {
55
+ return window.removeEventListener('resize', handleResize);
56
+ };
57
+ }, []); // Empty array ensures that effect is only run on mount
58
+
59
+ return windowSize;
60
+ }
61
+
62
+ exports.useWindowSize = useWindowSize;