@equinor/echo-framework 0.9.4 → 0.9.5

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 (47) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +6 -6
  3. package/dist/{063009f06499d102.svg → 47deeba42768c5d1.svg} +8 -8
  4. package/dist/_virtual/index.js +9 -0
  5. package/dist/components/containers/layouts.d.ts +3 -5
  6. package/dist/components/panel/corePanelLeft.d.ts +4 -1
  7. package/dist/components/panel/corePanelRight.d.ts +4 -1
  8. package/dist/components/router/echoRoute.d.ts +2 -2
  9. package/dist/components/router/index.d.ts +0 -1
  10. package/dist/coreApplication/EchoBarComponent.d.ts +12 -0
  11. package/dist/coreApplication/index.d.ts +1 -0
  12. package/dist/hooks/hookLibrary.d.ts +13 -2
  13. package/dist/hooks/index.d.ts +2 -0
  14. package/dist/hooks/useIsCompactLayout.d.ts +5 -0
  15. package/dist/hooks/useScreenOrientation.d.ts +5 -0
  16. package/dist/hooks/useScreenValues.d.ts +17 -0
  17. package/dist/hooks/useWindowSize.d.ts +9 -0
  18. package/dist/index.d.ts +14 -1
  19. package/dist/node_modules/classnames/index.js +67 -0
  20. package/dist/src/components/containers/layout.module.css.js +6 -2
  21. package/dist/src/components/containers/layouts.js +67 -36
  22. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToTr2000.js +2 -0
  23. package/dist/src/components/footer/footer.module.css.js +1 -1
  24. package/dist/src/components/panel/corePanelLeft.js +5 -2
  25. package/dist/src/components/panel/corePanelLeft.module.css.js +1 -1
  26. package/dist/src/components/panel/corePanelRight.js +5 -2
  27. package/dist/src/components/panel/corePanelRight.module.css.js +1 -1
  28. package/dist/src/components/router/echoRoute.js +9 -3
  29. package/dist/src/components/router/routes.js +1 -4
  30. package/dist/src/coreApplication/EchoBarComponent.js +182 -0
  31. package/dist/src/coreApplication/EchoContent.js +21 -1
  32. package/dist/src/coreApplication/EchoContent.module.css.js +17 -0
  33. package/dist/src/globalStyles.css.js +1 -1
  34. package/dist/src/hooks/hookLibrary.js +17 -0
  35. package/dist/src/hooks/index.js +6 -0
  36. package/dist/src/hooks/useIsCompactLayout.js +47 -0
  37. package/dist/src/hooks/useScreenOrientation.js +62 -0
  38. package/dist/src/hooks/useScreenValues.js +48 -0
  39. package/dist/src/hooks/useWindowSize.js +62 -0
  40. package/dist/src/icons/common/SemiIcon.svg.js +1 -1
  41. package/dist/src/icons/equinor-logo.js +9 -9
  42. package/dist/src/index.js +19 -8
  43. package/dist/src/index2.js +37 -26
  44. package/dist/types/hookLibrary.d.ts +5 -0
  45. package/package.json +118 -118
  46. package/dist/components/router/useLayout.d.ts +0 -3
  47. package/dist/src/components/router/useLayout.js +0 -32
@@ -1,13 +1,61 @@
1
1
  'use strict';
2
2
 
3
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4
+
3
5
  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); }
4
6
 
5
7
  Object.defineProperty(exports, '__esModule', {
6
8
  value: true
7
9
  });
8
10
 
11
+ var index = require('../../../node_modules/classnames/index.js');
12
+
9
13
  var React = require('react');
10
14
 
15
+ var EchoBarComponent = require('../../coreApplication/EchoBarComponent.js');
16
+
17
+ require('@equinor/echo-core');
18
+
19
+ require('../panel/corePanelLeft.js');
20
+
21
+ require('../panel/corePanelRight.js');
22
+
23
+ require('react-router-dom');
24
+
25
+ require('@equinor/echo-utils');
26
+
27
+ var useScreenValues = require('../../hooks/useScreenValues.js');
28
+
29
+ require('@equinor/echo-base');
30
+
31
+ require('@equinor/echo-search');
32
+
33
+ require('../../services/echopediaAnalyticsModule/echopediaAnalyticsModule.js');
34
+
35
+ require('@equinor/echo-components');
36
+
37
+ require('@equinor/eds-core-react');
38
+
39
+ require('../pageMenu/accordionItem.module.css.js');
40
+
41
+ require('../appLinks/AppLinks.module.css.js');
42
+
43
+ require('../pageMenu/Navigation/applicationList.module.css.js');
44
+
45
+ require('../pageMenu/pageMenu.module.css.js');
46
+
47
+ require('../pageMenu/pageMenuDrawerItem.module.css.js');
48
+
49
+ require('../pageMenu/settings/settings.module.css.js');
50
+
51
+ require('../../services/api/api-manager.js');
52
+
53
+ require('../pageMenu/version/version.module.css.js');
54
+
55
+ require('../searchMenu/searchMenu.module.css.js');
56
+
57
+ require('../../coreApplication/EchoEventHandler.module.css.js');
58
+
11
59
  var layout_module = require('./layout.module.css.js');
12
60
 
13
61
  function _interopDefaultLegacy(e) {
@@ -18,45 +66,28 @@ function _interopDefaultLegacy(e) {
18
66
 
19
67
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
20
68
 
21
- var MainLayout = function MainLayout(_ref) {
22
- var children = _ref.children;
23
- return /*#__PURE__*/React__default["default"].createElement("div", {
24
- className: layout_module["default"].applicationWrapper
25
- }, /*#__PURE__*/React__default["default"].createElement("div", {
26
- className: layout_module["default"].mainLayoutWrapper
27
- }, children));
28
- };
69
+ var Layout = function Layout(_ref) {
70
+ var _index$default;
29
71
 
30
- var ColorLayout = function ColorLayout(_ref2) {
31
- var children = _ref2.children;
32
- return /*#__PURE__*/React__default["default"].createElement("div", {
33
- className: layout_module["default"].colorLayout
34
- }, children);
35
- };
72
+ var layoutKey = _ref.layoutKey,
73
+ children = _ref.children;
36
74
 
37
- var PdfViewerNative = function PdfViewerNative(_ref3) {
38
- var children = _ref3.children;
39
- return /*#__PURE__*/React__default["default"].createElement("div", {
40
- className: layout_module["default"].pdfViewerNative
41
- }, children);
42
- };
75
+ var _useScreenValues$useS = useScreenValues.useScreenValues(),
76
+ isWeb = _useScreenValues$useS.isWeb,
77
+ isScreenMobileSize = _useScreenValues$useS.isScreenMobileSize,
78
+ screenOrientationDevice = _useScreenValues$useS.screenOrientationDevice,
79
+ screenOrientationWeb = _useScreenValues$useS.screenOrientationWeb;
43
80
 
44
- var CameraLayout = function CameraLayout(_ref4) {
45
- var children = _ref4.children;
81
+ var ModuleLayoutClassNames = index["default"](layout_module["default"].deviceOrientation, (_index$default = {}, _defineProperty(_index$default, layout_module["default"].mainLayoutWrapper, layoutKey === 'main'), _defineProperty(_index$default, layout_module["default"].colorLayout, layoutKey === 'colorLayout'), _defineProperty(_index$default, layout_module["default"].pdfViewerNative, layoutKey === 'nativePdf'), _defineProperty(_index$default, layout_module["default"].cameraLayout, layoutKey === 'camera'), _defineProperty(_index$default, layout_module["default"].defaultLayout, layoutKey === undefined), _index$default));
46
82
  return /*#__PURE__*/React__default["default"].createElement("div", {
47
- style: {
48
- backgroundColor: 'transparent'
49
- }
50
- }, children);
51
- };
52
-
53
- var DefaultLayout = function DefaultLayout(_ref5) {
54
- var children = _ref5.children;
55
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, children);
83
+ className: layout_module["default"].echoContentContainer
84
+ }, (isWeb && screenOrientationWeb === 'landscape' || screenOrientationDevice.landscape) && /*#__PURE__*/React__default["default"].createElement(EchoBarComponent.EchoBarComponent, {
85
+ isBottomBarVisible: isScreenMobileSize
86
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
87
+ className: ModuleLayoutClassNames
88
+ }, children), (isWeb && screenOrientationWeb === 'portrait' || screenOrientationDevice.portrait) && /*#__PURE__*/React__default["default"].createElement(EchoBarComponent.EchoBarComponent, {
89
+ isBottomBarVisible: isScreenMobileSize
90
+ }));
56
91
  };
57
92
 
58
- exports.CameraLayout = CameraLayout;
59
- exports.ColorLayout = ColorLayout;
60
- exports.DefaultLayout = DefaultLayout;
61
- exports.MainLayout = MainLayout;
62
- exports.PdfViewerNative = PdfViewerNative;
93
+ exports.Layout = Layout;
@@ -26,6 +26,8 @@ var React = require('react');
26
26
 
27
27
  require('react-router-dom');
28
28
 
29
+ require('../../../hooks/hookLibrary.js');
30
+
29
31
  var useTagDetails = require('../../../hooks/useTagDetails.js');
30
32
 
31
33
  var externalLinkButton = require('../../externalLinkButton/externalLinkButton.js');
@@ -6,7 +6,7 @@ Object.defineProperty(exports, '__esModule', {
6
6
 
7
7
  var styleInject_es = require('../../../node_modules/style-inject/dist/style-inject.es.js');
8
8
 
9
- var css_248z = ".footer-module_echoFooter__6xy2c{background:#fff;bottom:0;display:flex;left:0;position:fixed}@media screen and (min-width:360px){.footer-module_echoFooter__6xy2c{height:33px}}@media screen and (min-width:640px){.footer-module_echoFooter__6xy2c{height:56px;width:100%}}p.footer-module_footerDisclaimer__sJJ5f{font-size:10px;width:100%}.footer-module_footerLogo__ttZmv{display:none;float:right;margin:0 0 12px;max-height:2.5rem;padding:12px 16px;width:74px}.footer-module_tosFooter__9mGDz{background:#fff;bottom:0;height:33px;left:0;position:fixed;width:100%}@media screen and (min-width:640px){p.footer-module_footerDisclaimer__sJJ5f{line-height:32px;margin:0;padding:12px 16px}.footer-module_footerLogo__ttZmv{display:block}.footer-module_tosFooter__9mGDz{height:56px}}";
9
+ var css_248z = ".footer-module_echoFooter__6xy2c{background:#fff;bottom:0;display:flex;left:0;position:fixed}@media screen and (max-width:767px) and (orientation:portrait){.footer-module_echoFooter__6xy2c{bottom:48px}}@media screen and (max-width:927px) and (orientation:landscape){.footer-module_echoFooter__6xy2c{left:48px}}@media screen and (min-width:360px){.footer-module_echoFooter__6xy2c{height:33px}}@media screen and (min-width:640px){.footer-module_echoFooter__6xy2c{height:56px;width:100%}}p.footer-module_footerDisclaimer__sJJ5f{font-size:10px;width:100%}.footer-module_footerLogo__ttZmv{display:none;float:right;margin:0 0 12px;max-height:2.5rem;padding:12px 16px;width:74px}.footer-module_tosFooter__9mGDz{background:#fff;bottom:0;height:33px;left:0;position:fixed;width:100%}@media screen and (min-width:640px){p.footer-module_footerDisclaimer__sJJ5f{line-height:32px;margin:0;padding:12px 16px}.footer-module_footerLogo__ttZmv{display:block}.footer-module_tosFooter__9mGDz{height:56px}}";
10
10
  var style = {
11
11
  "echoFooter": "footer-module_echoFooter__6xy2c",
12
12
  "footerDisclaimer": "footer-module_footerDisclaimer__sJJ5f",
@@ -40,7 +40,9 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
40
40
 
41
41
  edsIons.edsIcons();
42
42
 
43
- var CorePanelLeft = function CorePanelLeft() {
43
+ var CorePanelLeft = function CorePanelLeft(_ref) {
44
+ var isToggleButtonVisible = _ref.isToggleButtonVisible;
45
+
44
46
  var _a;
45
47
 
46
48
  var _EchoCore$usePanels = EchoCore.usePanels(),
@@ -72,7 +74,8 @@ var CorePanelLeft = function CorePanelLeft() {
72
74
  style: panelUI.panelButton
73
75
  }, panels.map(function (panel, i) {
74
76
  var Icon = panel.icon;
75
- return /*#__PURE__*/React__default["default"].createElement(panelButton["default"], {
77
+ var showPanel = isToggleButtonVisible || panel.key !== EchoCore.ECHO_CORE_SEARCH;
78
+ return showPanel && /*#__PURE__*/React__default["default"].createElement(panelButton["default"], {
76
79
  key: i,
77
80
  onClick: function onClick(e) {
78
81
  e.stopPropagation();
@@ -6,7 +6,7 @@ Object.defineProperty(exports, '__esModule', {
6
6
 
7
7
  var styleInject_es = require('../../../node_modules/style-inject/dist/style-inject.es.js');
8
8
 
9
- var css_248z = ".corePanelLeft-module_wrapper__d2Omx{height:100%;left:-550px;max-width:550px;position:fixed;top:0;transition:left .4s ease-in-out,width .4s ease-in-out;width:550px;z-index:2}@media screen and (max-width:550px){.corePanelLeft-module_wrapperClosed__Zd1CL{left:-75vw;max-width:75vw;width:75vw}.corePanelLeft-module_active__-A3TW{width:100%}}.corePanelLeft-module_active__-A3TW{left:0;z-index:var(--echo-framework-z-level-panel)}.corePanelLeft-module_drawer__Wdb3G{background-color:#fff;border-left:2px solid #f7f7f7;box-shadow:0 6px 4px #00000040;display:flex;flex-direction:column;height:100%;opacity:0;overflow-y:hidden;position:relative;transition:opacity .4s ease-in-out;width:auto}.corePanelLeft-module_active__-A3TW .corePanelLeft-module_drawer__Wdb3G{opacity:1}.corePanelLeft-module_buttonContainer__bs-Uu{display:flex;flex-direction:column;position:absolute;right:-70px;top:0}.corePanelLeft-module_button__SqyKk{margin-left:var(--medium);margin-top:var(--small)}";
9
+ var css_248z = ".corePanelLeft-module_wrapper__d2Omx{height:100%;left:-550px;max-width:550px;position:fixed;top:0;transition:all .4s ease-in-out;width:550px;z-index:2}@media screen and (max-width:550px){.corePanelLeft-module_wrapperClosed__Zd1CL{left:-75vw;max-width:75vw;width:75vw}.corePanelLeft-module_active__-A3TW{width:100%}}.corePanelLeft-module_active__-A3TW{left:0;z-index:var(--echo-framework-z-level-panel-left)}@media screen and (max-width:767px) and (orientation:portrait){.corePanelLeft-module_wrapper__d2Omx{height:calc(100% - 48px)}}@media screen and (max-width:927px) and (orientation:landscape){.corePanelLeft-module_active__-A3TW{left:48px}}.corePanelLeft-module_drawer__Wdb3G{background-color:#fff;border-left:2px solid #f7f7f7;box-shadow:0 6px 4px #00000040;display:flex;flex-direction:column;height:100%;opacity:0;overflow-y:hidden;position:relative;transition:opacity .4s ease-in-out;width:auto}.corePanelLeft-module_active__-A3TW .corePanelLeft-module_drawer__Wdb3G{opacity:1}.corePanelLeft-module_buttonContainer__bs-Uu{display:flex;flex-direction:column;position:absolute;right:-70px;top:0}@media screen and (max-width:927px) and (orientation:landscape){.corePanelLeft-module_buttonContainer__bs-Uu{right:-118px}}.corePanelLeft-module_button__SqyKk{margin-left:var(--medium);margin-top:var(--small)}";
10
10
  var style = {
11
11
  "wrapper": "corePanelLeft-module_wrapper__d2Omx",
12
12
  "wrapperClosed": "corePanelLeft-module_wrapperClosed__Zd1CL",
@@ -42,7 +42,9 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
42
42
 
43
43
  edsIons.edsIcons();
44
44
 
45
- var CorePanelRight = function CorePanelRight() {
45
+ var CorePanelRight = function CorePanelRight(_ref) {
46
+ var isToggleButtonVisible = _ref.isToggleButtonVisible;
47
+
46
48
  var _a;
47
49
 
48
50
  var _EchoCore$usePanels = EchoCore.usePanels('right'),
@@ -74,7 +76,8 @@ var CorePanelRight = function CorePanelRight() {
74
76
  style: panelUI.panelButton
75
77
  }, panels.map(function (panel, i) {
76
78
  var PanelIcon = panel.icon;
77
- return /*#__PURE__*/React__default["default"].createElement(panelButton["default"], {
79
+ var showPanel = isToggleButtonVisible || panel.key !== EchoCore.ECHO_CORE_MAIN;
80
+ return showPanel && /*#__PURE__*/React__default["default"].createElement(panelButton["default"], {
78
81
  key: i,
79
82
  label: panel.label,
80
83
  variant: panel.key === EchoCore.ECHO_CORE_MAIN ? panelButton.Variants.NotificationButton : panelButton.Variants.OpenCloseButton,
@@ -6,7 +6,7 @@ Object.defineProperty(exports, '__esModule', {
6
6
 
7
7
  var styleInject_es = require('../../../node_modules/style-inject/dist/style-inject.es.js');
8
8
 
9
- var css_248z = ".corePanelRight-module_wrapper__YN3Zr{height:100%;max-width:352px;position:fixed;right:-352px;top:0;transition:right .4s ease-in-out,width .4s ease-in-out;width:352px;z-index:2}@media screen and (max-width:500px){.corePanelRight-module_wrapper__YN3Zr{max-width:75vw;right:-75vw;width:75vw}}.corePanelRight-module_active__RIMQt{right:0;z-index:var(--echo-framework-z-level-panel)}.corePanelRight-module_drawer__1-ucH{background-color:#fff;border-left:2px solid #f7f7f7;box-shadow:0 6px 4px #00000040;display:flex;flex-direction:column;height:100%;opacity:0;overflow-y:auto;position:relative;transition:opacity .4s ease-in-out;width:auto}.corePanelRight-module_active__RIMQt .corePanelRight-module_drawer__1-ucH{opacity:1}.corePanelRight-module_buttonContainer__62imJ{display:flex;flex-direction:column;left:-90px;position:absolute;top:0}.corePanelRight-module_button__WBdfZ{margin-left:var(--medium);margin-top:var(--small)}";
9
+ var css_248z = ".corePanelRight-module_wrapper__YN3Zr{height:100%;max-width:550px;position:fixed;right:-352px;top:0;transition:all .4s ease-in-out;width:352px;z-index:2}.corePanelRight-module_active__RIMQt{right:0;z-index:var(--echo-framework-z-level-panel-main)}@media screen and (max-width:550px){.corePanelRight-module_active__RIMQt{width:100%}}@media screen and (max-width:767px) and (orientation:portrait){.corePanelRight-module_wrapper__YN3Zr{height:calc(100% - 48px)}}@media screen and (max-width:927px) and (orientation:landscape){.corePanelRight-module_wrapper__YN3Zr{left:-352px}.corePanelRight-module_active__RIMQt{left:48px;z-index:var(--echo-framework-z-level-panel-main)}}.corePanelRight-module_drawer__1-ucH{background-color:#fff;border-left:2px solid #f7f7f7;box-shadow:0 6px 4px #00000040;display:flex;flex-direction:column;height:100%;opacity:0;overflow-y:auto;position:relative;transition:opacity .4s ease-in-out;width:auto}.corePanelRight-module_active__RIMQt .corePanelRight-module_drawer__1-ucH{opacity:1}.corePanelRight-module_buttonContainer__62imJ{display:flex;flex-direction:column;left:-90px;position:absolute;top:0}.corePanelRight-module_button__WBdfZ{margin-left:var(--medium);margin-top:var(--small)}";
10
10
  var style = {
11
11
  "wrapper": "corePanelRight-module_wrapper__YN3Zr",
12
12
  "active": "corePanelRight-module_active__RIMQt",
@@ -12,6 +12,8 @@ var reactRouterDom = require('react-router-dom');
12
12
 
13
13
  var errorBoundary = require('../errorBoundary/errorBoundary.js');
14
14
 
15
+ var layouts = require('../containers/layouts.js');
16
+
15
17
  var echoWrapper = require('./echoWrapper.js');
16
18
 
17
19
  function _interopDefaultLegacy(e) {
@@ -23,17 +25,21 @@ function _interopDefaultLegacy(e) {
23
25
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
24
26
 
25
27
  var EchoRoute = function EchoRoute(_ref) {
26
- var Component = _ref.component,
27
- Layout = _ref.layout,
28
+ var key = _ref.key,
29
+ Component = _ref.component,
30
+ layoutKey = _ref.layoutKey,
28
31
  path = _ref.path,
29
32
  errorHandler = _ref.errorHandler,
30
33
  _ref$exactPath = _ref.exactPath,
31
34
  exactPath = _ref$exactPath === void 0 ? true : _ref$exactPath;
32
35
  return /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Route, {
36
+ key: key,
33
37
  exact: exactPath,
34
38
  path: path,
35
39
  render: function render(props) {
36
- return /*#__PURE__*/React__default["default"].createElement(Layout, null, /*#__PURE__*/React__default["default"].createElement(echoWrapper.EchoWrapper, {
40
+ return /*#__PURE__*/React__default["default"].createElement(layouts.Layout, {
41
+ layoutKey: layoutKey
42
+ }, /*#__PURE__*/React__default["default"].createElement(echoWrapper.EchoWrapper, {
37
43
  path: path
38
44
  }, /*#__PURE__*/React__default["default"].createElement(errorBoundary.ErrorBoundary, {
39
45
  onComponentDidCatch: errorHandler
@@ -12,8 +12,6 @@ var React = require('react');
12
12
 
13
13
  var echoRoute = require('./echoRoute.js');
14
14
 
15
- var useLayout = require('./useLayout.js');
16
-
17
15
  function _interopDefaultLegacy(e) {
18
16
  return e && _typeof(e) === 'object' && 'default' in e ? e : {
19
17
  'default': e
@@ -25,7 +23,6 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
25
23
  var EchoRoutes = function EchoRoutes(_ref) {
26
24
  var routeErrorHandler = _ref.routeErrorHandler;
27
25
  var routes = EchoCore.useRoutes();
28
- var getLayout = useLayout.useLayout();
29
26
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, routes.map(function (_ref2) {
30
27
  var path = _ref2.path,
31
28
  component = _ref2.component,
@@ -36,7 +33,7 @@ var EchoRoutes = function EchoRoutes(_ref) {
36
33
  key: key,
37
34
  path: path,
38
35
  component: component,
39
- layout: getLayout(layoutKey),
36
+ layoutKey: layoutKey,
40
37
  errorHandler: routeErrorHandler,
41
38
  exactPath: exactPath
42
39
  });
@@ -0,0 +1,182 @@
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 hookLibrary = require('../hooks/hookLibrary.js');
36
+
37
+ var logo_ee = require('../icons/logo_ee.js');
38
+
39
+ var EchoContent_module = require('./EchoContent.module.css.js');
40
+
41
+ function _interopDefaultLegacy(e) {
42
+ return e && _typeof(e) === 'object' && 'default' in e ? e : {
43
+ 'default': e
44
+ };
45
+ }
46
+
47
+ var EchoUtils__default = /*#__PURE__*/_interopDefaultLegacy(EchoUtils);
48
+
49
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
50
+
51
+ exports.BarButtonVariants = void 0;
52
+
53
+ (function (BarButtonVariants) {
54
+ BarButtonVariants["Home"] = "home";
55
+ BarButtonVariants["Search"] = "search";
56
+ BarButtonVariants["Camera"] = "camera";
57
+ BarButtonVariants["Menu"] = "menu";
58
+ })(exports.BarButtonVariants || (exports.BarButtonVariants = {}));
59
+
60
+ var EchoBarComponent = function EchoBarComponent(_ref) {
61
+ var isBottomBarVisible = _ref.isBottomBarVisible;
62
+ var useStateSafe = EchoUtils__default["default"].Hooks.useStateSafe;
63
+
64
+ var _React$useState = React.useState(''),
65
+ _React$useState2 = _slicedToArray(_React$useState, 2),
66
+ activeKey = _React$useState2[0],
67
+ setActiveKey = _React$useState2[1];
68
+
69
+ var _useStateSafe = useStateSafe(false),
70
+ _useStateSafe2 = _slicedToArray(_useStateSafe, 2),
71
+ isSyncing = _useStateSafe2[0],
72
+ setIsSyncing = _useStateSafe2[1];
73
+
74
+ var _EchoCore$usePanels = EchoCore.usePanels(),
75
+ setActivePanel = _EchoCore$usePanels.setActivePanel,
76
+ activePanel = _EchoCore$usePanels.activePanel;
77
+ /* Use this call once the new camera is ready */
78
+ // const goToInternalLink = useInternalLink();
79
+ // goToInternalLink(InternalApplicationLinks.OnlineCamera);
80
+
81
+
82
+ var goToCameraLink = hookLibrary.HookLibrary.useInternalLinkToScan();
83
+
84
+ var _EchoCore$usePlantSet = EchoCore.usePlantSettings(),
85
+ selectedInstCode = _EchoCore$usePlantSet.instCode;
86
+
87
+ var history = reactRouterDom.useHistory();
88
+ React.useEffect(function () {
89
+ var unSubscribeSyncing = echoBase.eventHub.subscribe('isSyncing', function (active) {
90
+ setIsSyncing(active);
91
+ });
92
+ return function () {
93
+ unSubscribeSyncing();
94
+ };
95
+ });
96
+
97
+ var onClickButton = function onClickButton(key) {
98
+ setActivePanel('');
99
+
100
+ if (key === activeKey) {
101
+ if (key === exports.BarButtonVariants.Menu || exports.BarButtonVariants.Search) {
102
+ setActivePanel('');
103
+ } else {
104
+ history.goBack();
105
+ }
106
+
107
+ setActiveKey('');
108
+ } else {
109
+ setActiveKey(key);
110
+
111
+ switch (key) {
112
+ case exports.BarButtonVariants.Home:
113
+ return history.push("/?instCode=".concat(selectedInstCode));
114
+
115
+ case exports.BarButtonVariants.Search:
116
+ return setActivePanel(EchoCore.ECHO_CORE_SEARCH);
117
+
118
+ case exports.BarButtonVariants.Camera:
119
+ return goToCameraLink();
120
+
121
+ case exports.BarButtonVariants.Menu:
122
+ return setActivePanel(EchoCore.ECHO_CORE_MAIN);
123
+
124
+ default:
125
+ return null;
126
+ }
127
+ }
128
+
129
+ setActiveKey('');
130
+ };
131
+
132
+ var EchoIcon = logo_ee.icon;
133
+ return isBottomBarVisible ? /*#__PURE__*/React__default["default"].createElement(echoComponents.EchoBottomBar, {
134
+ style: {
135
+ zIndex: 'var( --echo-framework-z-level-bottom-bar)'
136
+ }
137
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
138
+ className: "".concat(EchoContent_module["default"].barButtons)
139
+ }, /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
140
+ variant: "ghost_icon",
141
+ onClick: function onClick() {
142
+ return onClickButton(exports.BarButtonVariants.Home);
143
+ }
144
+ }, /*#__PURE__*/React__default["default"].createElement(EchoIcon, null))), /*#__PURE__*/React__default["default"].createElement("div", {
145
+ className: "".concat(EchoContent_module["default"].barButtons, " ").concat(activeKey === 'search' && activePanel === 'echoCoreSearch' ? EchoContent_module["default"].activeBottomBarButton : '')
146
+ }, /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
147
+ variant: "ghost_icon",
148
+ onClick: function onClick() {
149
+ return onClickButton(exports.BarButtonVariants.Search);
150
+ }
151
+ }, /*#__PURE__*/React__default["default"].createElement(echoComponents.Icon, {
152
+ name: 'search',
153
+ color: echoComponents.themeConst.echoText
154
+ }))), /*#__PURE__*/React__default["default"].createElement("div", {
155
+ className: "".concat(EchoContent_module["default"].barButtons, " ").concat(activeKey === 'camera' && EchoContent_module["default"].activeBottomBarButton)
156
+ }, /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
157
+ variant: "ghost_icon",
158
+ onClick: function onClick() {
159
+ return onClickButton(exports.BarButtonVariants.Camera);
160
+ }
161
+ }, /*#__PURE__*/React__default["default"].createElement(echoComponents.Icon, {
162
+ name: 'camera',
163
+ color: echoComponents.themeConst.echoText
164
+ }))), /*#__PURE__*/React__default["default"].createElement("div", {
165
+ className: "".concat(EchoContent_module["default"].barButtons, " ").concat(activeKey === 'menu' && activePanel === 'echoCoreMain' ? EchoContent_module["default"].activeBottomBarButton : '')
166
+ }, /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
167
+ variant: "ghost_icon",
168
+ onClick: function onClick() {
169
+ return onClickButton(exports.BarButtonVariants.Menu);
170
+ }
171
+ }, isSyncing ? /*#__PURE__*/React__default["default"].createElement(echoComponents.Icon, {
172
+ className: EchoContent_module["default"].spinningIcon,
173
+ color: echoComponents.themeConst.echoText,
174
+ name: 'sync'
175
+ }) : /*#__PURE__*/React__default["default"].createElement(echoComponents.Icon, {
176
+ name: 'menu',
177
+ color: echoComponents.themeConst.echoText
178
+ })))) : null;
179
+ };
180
+
181
+ exports.EchoBarComponent = EchoBarComponent;
182
+ exports["default"] = 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
@@ -25,7 +37,15 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
25
37
  var EchoContent = function EchoContent(_ref) {
26
38
  var children = _ref.children,
27
39
  Legend = _ref.Legend;
28
- return /*#__PURE__*/React__default["default"].createElement(EchoCore.ModuleContextProvider, 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));
40
+
41
+ var _useScreenValues$useS = useScreenValues.useScreenValues(),
42
+ isScreenMobileSize = _useScreenValues$useS.isScreenMobileSize;
43
+
44
+ return /*#__PURE__*/React__default["default"].createElement(EchoCore.ModuleContextProvider, null, /*#__PURE__*/React__default["default"].createElement(corePanelLeft["default"], {
45
+ isToggleButtonVisible: !isScreenMobileSize
46
+ }), /*#__PURE__*/React__default["default"].createElement(corePanelRight["default"], {
47
+ isToggleButtonVisible: !isScreenMobileSize
48
+ }), children, Legend && /*#__PURE__*/React__default["default"].createElement(Legend, null));
29
49
  };
30
50
 
31
51
  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:927px) 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;
@@ -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);
@@ -25,6 +25,8 @@ exports.RegisteredHookName = void 0;
25
25
  RegisteredHookName["useIsContextMenuInfoLoading"] = "useIsContextMenuInfoLoading";
26
26
  RegisteredHookName["useSetActiveCommPackNo"] = "useSetActiveCommPackNo";
27
27
  RegisteredHookName["useSetActiveMcPackNo"] = "useSetActiveMcPackNo";
28
+ RegisteredHookName["useDeviceOrientation"] = "useDeviceOrientation";
29
+ RegisteredHookName["useInternalLinkToScan"] = "useInternalLinkToScan";
28
30
  })(exports.RegisteredHookName || (exports.RegisteredHookName = {}));
29
31
 
30
32
  var HookLibrary = Object.freeze({
@@ -81,6 +83,21 @@ var HookLibrary = Object.freeze({
81
83
  */
82
84
  useSetActiveMcPackNo: function useSetActiveMcPackNo() {
83
85
  return EchoCore__default["default"].echoHookRegistry.getHookByName(exports.RegisteredHookName.useSetActiveMcPackNo)();
86
+ },
87
+
88
+ /**
89
+ * Hook for detecting device orientation from native devices.
90
+ * @returns {DeviceOrientation}
91
+ */
92
+ useDeviceOrientation: function useDeviceOrientation() {
93
+ return EchoCore__default["default"].echoHookRegistry.getHookByName(exports.RegisteredHookName.useDeviceOrientation)();
94
+ },
95
+
96
+ /**
97
+ * Hook for opening camera.
98
+ */
99
+ useInternalLinkToScan: function useInternalLinkToScan() {
100
+ return EchoCore__default["default"].echoHookRegistry.getHookByName(exports.RegisteredHookName.useInternalLinkToScan)();
84
101
  }
85
102
  });
86
103
  exports.HookLibrary = HookLibrary;
@@ -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,47 @@
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];
35
+
36
+ var smallScreenPortrait = !!windowSize.width && windowSize.width <= 768 && !isLandscape;
37
+ var smallScreenLandscape = !!windowSize.width && windowSize.width <= 928 && isLandscape;
38
+ var isCurrentSizeSmall = smallScreenLandscape || smallScreenPortrait;
39
+
40
+ if (isMobileWidth !== isCurrentSizeSmall) {
41
+ setIsMobileWidth(isCurrentSizeSmall);
42
+ }
43
+
44
+ return isMobileWidth;
45
+ }
46
+
47
+ exports.useIsCompactLayout = useIsCompactLayout;