@equinor/echo-framework 0.7.5 → 0.7.8

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 (72) hide show
  1. package/dist/47deeba42768c5d1.svg +9 -0
  2. package/dist/components/contextualAppLinks/contextualAppLinks.context.d.ts +7 -0
  3. package/dist/components/contextualAppLinks/contextualAppLinks.d.ts +9 -0
  4. package/dist/components/contextualAppLinks/externalAppsMenu.d.ts +29 -0
  5. package/dist/components/contextualAppLinks/externalLinkButtons/allExternalLinks.d.ts +12 -0
  6. package/dist/components/contextualAppLinks/externalLinkButtons/externalLinkToMcApp.d.ts +12 -0
  7. package/dist/components/contextualAppLinks/externalLinkButtons/externalLinkToProCoSys.d.ts +15 -0
  8. package/dist/components/contextualAppLinks/externalLinkButtons/externalLinkToSafeX.d.ts +13 -0
  9. package/dist/components/contextualAppLinks/externalLinkButtons/externalLinkToSap.d.ts +15 -0
  10. package/dist/components/contextualAppLinks/externalLinkButtons/externalLinkToSemiDoc.d.ts +13 -0
  11. package/dist/components/contextualAppLinks/externalLinkButtons/externalLinkToStid.d.ts +14 -0
  12. package/dist/components/contextualAppLinks/externalLinkButtons/externalLinkToTr2000.d.ts +15 -0
  13. package/dist/components/contextualAppLinks/externalLinkButtons/index.d.ts +7 -0
  14. package/dist/components/contextualAppLinks/hooks/useContextualAppLinks.d.ts +18 -0
  15. package/dist/components/contextualAppLinks/hooks/useContextualAppLinks.test.d.ts +1 -0
  16. package/dist/components/contextualAppLinks/hooks/useContextualAppLinksContext.d.ts +4 -0
  17. package/dist/components/contextualAppLinks/hooks/useContextualAppLinksContext.test.d.ts +1 -0
  18. package/dist/components/contextualAppLinks/index.d.ts +13 -0
  19. package/dist/components/contextualAppLinks/internalAppLinks.d.ts +24 -0
  20. package/dist/components/contextualAppLinks/linkButton.d.ts +19 -0
  21. package/dist/components/externalLinkButton/externalLinkButton.d.ts +33 -0
  22. package/dist/components/index.d.ts +4 -1
  23. package/dist/components/realTimeData/components/IMSDropdown/RealTimeIMSDropdown.d.ts +2 -1
  24. package/dist/components/realTimeData/components/connectorForIMSTag/RealTimeConnectorForIMSTag.d.ts +2 -1
  25. package/dist/hooks/index.d.ts +2 -0
  26. package/dist/hooks/useSemi.d.ts +17 -0
  27. package/dist/hooks/useSemi.test.d.ts +1 -0
  28. package/dist/hooks/useTagDetails.d.ts +13 -0
  29. package/dist/hooks/useTagDetails.test.d.ts +1 -0
  30. package/dist/index.d.ts +10 -3
  31. package/dist/src/components/contextualAppLinks/contextualAppLinks.context.js +20 -0
  32. package/dist/src/components/contextualAppLinks/contextualAppLinks.js +47 -0
  33. package/dist/src/components/contextualAppLinks/externalAppsMenu.js +181 -0
  34. package/dist/src/components/contextualAppLinks/externalAppsMenu.module.css.js +16 -0
  35. package/dist/src/components/contextualAppLinks/externalLinkButtons/allExternalLinks.js +72 -0
  36. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToMcApp.js +38 -0
  37. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToProCoSys.js +50 -0
  38. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToSafeX.js +38 -0
  39. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToSap.js +61 -0
  40. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToSemiDoc.js +48 -0
  41. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToStid.js +40 -0
  42. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToTr2000.js +63 -0
  43. package/dist/src/components/contextualAppLinks/hooks/useContextualAppLinks.js +52 -0
  44. package/dist/src/components/contextualAppLinks/hooks/useContextualAppLinksContext.js +36 -0
  45. package/dist/src/components/contextualAppLinks/index.js +22 -0
  46. package/dist/src/components/contextualAppLinks/internalAppLinks.js +115 -0
  47. package/dist/src/components/contextualAppLinks/linkButton.js +57 -0
  48. package/dist/src/components/externalLinkButton/externalLinkButton.js +245 -0
  49. package/dist/src/components/externalLinkButton/externalLinkButton.module.css.js +22 -0
  50. package/dist/src/components/projectSelector/ProcosysProjectSelector.js +1 -1
  51. package/dist/src/components/realTimeData/RealTimePopoverButton.js +23 -7
  52. package/dist/src/components/realTimeData/components/IMSDropdown/RealTimeIMSDropdown.js +4 -2
  53. package/dist/src/components/realTimeData/components/connectorForIMSTag/RealTimeConnectorForIMSTag.js +3 -3
  54. package/dist/src/hooks/index.js +12 -0
  55. package/dist/src/hooks/useSemi.js +74 -0
  56. package/dist/src/hooks/useTagDetails.js +80 -0
  57. package/dist/src/icons/common/Evision.svg.js +68 -0
  58. package/dist/src/icons/common/Fusion.svg.js +107 -0
  59. package/dist/src/icons/common/McApp.svg.js +67 -0
  60. package/dist/src/icons/common/ProCoSysIcon.svg.js +68 -0
  61. package/dist/src/icons/common/SX-logo.png.js +7 -0
  62. package/dist/src/icons/common/SapLogo.svg.js +95 -0
  63. package/dist/src/icons/common/SemiIcon.svg.js +83 -0
  64. package/dist/src/icons/common/Stid.svg.js +65 -0
  65. package/dist/src/icons/common/TR2000.svg.js +72 -0
  66. package/dist/src/icons/common/Yammer.svg.js +65 -0
  67. package/dist/src/index.js +54 -8
  68. package/dist/src/types/extensions.js +10 -0
  69. package/dist/src/types/pingableSources.js +10 -0
  70. package/dist/types/extensions.d.ts +7 -0
  71. package/dist/types/pingableSources.d.ts +3 -0
  72. package/package.json +6 -7
@@ -0,0 +1,36 @@
1
+ 'use strict';
2
+
3
+ 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
+
5
+ Object.defineProperty(exports, '__esModule', {
6
+ value: true
7
+ });
8
+
9
+ var echoBase = require('@equinor/echo-base');
10
+
11
+ var React = require('react');
12
+
13
+ var contextualAppLinks_context = require('../contextualAppLinks.context.js');
14
+
15
+ function _interopDefaultLegacy(e) {
16
+ return e && _typeof(e) === 'object' && 'default' in e ? e : {
17
+ 'default': e
18
+ };
19
+ }
20
+
21
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
+
23
+ function useContextualAppLinksContext() {
24
+ var context = React__default["default"].useContext(contextualAppLinks_context.AppLinksContext);
25
+
26
+ if (!context) {
27
+ throw new echoBase.BaseError({
28
+ name: 'CompoundComponentOutsideContextError',
29
+ message: '[EchoFramework.useContextualAppLinksContext] ContextualAppLinks compound components cannot be rendered outside the ContextualAppLinks component'
30
+ });
31
+ }
32
+
33
+ return Object.assign({}, context);
34
+ }
35
+
36
+ exports.useContextualAppLinksContext = useContextualAppLinksContext;
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true
5
+ });
6
+
7
+ var contextualAppLinks = require('./contextualAppLinks.js');
8
+
9
+ var externalAppsMenu = require('./externalAppsMenu.js');
10
+
11
+ var allExternalLinks = require('./externalLinkButtons/allExternalLinks.js');
12
+
13
+ var internalAppLinks = require('./internalAppLinks.js');
14
+
15
+ var linkButton = require('./linkButton.js');
16
+
17
+ var ContextualAppLinks = contextualAppLinks["default"];
18
+ ContextualAppLinks.InternalApps = internalAppLinks.InternalAppLinks;
19
+ ContextualAppLinks.ExternalAppsMenu = externalAppsMenu.ExternalAppsMenu;
20
+ ContextualAppLinks.LinkButton = linkButton.LinkButton;
21
+ ContextualAppLinks.AllExternalApps = allExternalLinks.AllExternalLinks;
22
+ exports.ContextualAppLinks = ContextualAppLinks;
@@ -0,0 +1,115 @@
1
+ 'use strict';
2
+
3
+ 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
+
5
+ Object.defineProperty(exports, '__esModule', {
6
+ value: true
7
+ });
8
+
9
+ var _tslib = require('../../../_virtual/_tslib.js');
10
+
11
+ var EchoCore = require('@equinor/echo-core');
12
+
13
+ var EchoUtils = require('@equinor/echo-utils');
14
+
15
+ var React = require('react');
16
+
17
+ var useContextualAppLinks = require('./hooks/useContextualAppLinks.js');
18
+
19
+ var useContextualAppLinksContext = require('./hooks/useContextualAppLinksContext.js');
20
+
21
+ var linkButton = require('./linkButton.js');
22
+
23
+ function _interopDefaultLegacy(e) {
24
+ return e && _typeof(e) === 'object' && 'default' in e ? e : {
25
+ 'default': e
26
+ };
27
+ }
28
+
29
+ var EchoUtils__default = /*#__PURE__*/_interopDefaultLegacy(EchoUtils);
30
+
31
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
32
+ /**
33
+ * Wrapper component for internal, Echo application links. To be used inside ContextualAppLinks component.
34
+ * This component is extendable: renders any Echo app link component, which is registered in the EchoCore application state.
35
+ *
36
+ * @param {InternalAppLinksProps} props
37
+ * @param {React.ReactNode} props.children Optional. Passed children will be rendred after the app link extensions.
38
+ * @param {Object} props.options Optional prop: pass custom options to alter the components behaviour.
39
+ * @param {string[]} props.options.hiddenAppKeys List of registered, app link extenesion keys. Each registered component with a matched key will be hidden.
40
+ * @param {[key: string]: unknown} ...rest: All other props will be passed to registered app links extension components, and to the isVisible() => boolean function for those components
41
+ * @returns {React.FC<InternalAppLinksProps>} React component.
42
+ *
43
+ * @throws {BaseError} If used outside of ContextualAppLinks compound component - requires react context provided by it.
44
+ *
45
+ */
46
+
47
+
48
+ var InternalAppLinks = function InternalAppLinks(_a) {
49
+ var children = _a.children,
50
+ options = _a.options,
51
+ rest = _tslib.__rest(_a, ["children", "options"]);
52
+
53
+ var goToInternalLink = EchoCore.useInternalLink();
54
+ var isSmallScreen = EchoUtils__default["default"].Hooks.useIsSmallScreen();
55
+ var registeredInternalAppLinks = useContextualAppLinks.useContextualAppLinks({
56
+ onlyInternalLinks: true
57
+ });
58
+
59
+ var _useContextualAppLink = useContextualAppLinksContext.useContextualAppLinksContext(),
60
+ tag = _useContextualAppLink.tag,
61
+ instCode = _useContextualAppLink.instCode;
62
+
63
+ function navigateToInternalApp(event, appPath) {
64
+ goToInternalLink(appPath, {
65
+ params: "?instCode=".concat(instCode, "&tagNo=").concat(tag.tagNo, "&search=").concat(tag.tagNo, "&refresh=true")
66
+ });
67
+ event.stopPropagation();
68
+
69
+ if (isSmallScreen) {
70
+ EchoCore.setActivePanel('');
71
+ }
72
+ }
73
+
74
+ function renderNavIcon(extension) {
75
+ var hiddenAppKeys = (options === null || options === void 0 ? void 0 : options.hiddenAppKeys) || [];
76
+ var PreDefinedNavIconComponent = extension.component;
77
+
78
+ var _ref = extension.options || {},
79
+ label = _ref.label,
80
+ iconName = _ref.iconName,
81
+ appPath = _ref.appPath;
82
+
83
+ var isHiddenByProps = hiddenAppKeys.includes(extension.key);
84
+
85
+ if (PreDefinedNavIconComponent) {
86
+ return /*#__PURE__*/React__default["default"].createElement(PreDefinedNavIconComponent, Object.assign({
87
+ tag: tag,
88
+ instCode: instCode,
89
+ key: extension.key
90
+ }, rest));
91
+ }
92
+
93
+ if (iconName && !isHiddenByProps && (extension.isVisible && extension.isVisible(Object.assign({
94
+ tag: tag,
95
+ instCode: instCode
96
+ }, rest)) || !extension.isVisible)) {
97
+ return /*#__PURE__*/React__default["default"].createElement(linkButton.LinkButton, {
98
+ key: extension.key,
99
+ label: label,
100
+ onClick: function onClick(event) {
101
+ return navigateToInternalApp(event, appPath || '/');
102
+ },
103
+ iconName: iconName
104
+ });
105
+ }
106
+
107
+ return null;
108
+ }
109
+
110
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, registeredInternalAppLinks.map(function (internalAppLink) {
111
+ return renderNavIcon(internalAppLink);
112
+ }), children);
113
+ };
114
+
115
+ exports.InternalAppLinks = InternalAppLinks;
@@ -0,0 +1,57 @@
1
+ 'use strict';
2
+
3
+ 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
+
5
+ Object.defineProperty(exports, '__esModule', {
6
+ value: true
7
+ });
8
+
9
+ var echoComponents = require('@equinor/echo-components');
10
+
11
+ var edsCoreReact = require('@equinor/eds-core-react');
12
+
13
+ var React = require('react');
14
+
15
+ function _interopDefaultLegacy(e) {
16
+ return e && _typeof(e) === 'object' && 'default' in e ? e : {
17
+ 'default': e
18
+ };
19
+ }
20
+
21
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
+ /**
23
+ * Link button to be used in contextual app link component.
24
+ * Displays an EDS icon with a EDS tooltip. The tooltip will be rendered only if a 'label' is passed.
25
+ *
26
+ * @param {LinkButtonProps} props
27
+ * @param {label} props.label Optional: a label to show when the button is hovered over on.
28
+ * @param {string} props.iconName An EDS icon name to display.
29
+ * @param {OnClickHandler} props.onClick Click handler
30
+ * @returns {React.FC<LinkButtonProps>} React component.
31
+ */
32
+
33
+
34
+ var LinkButton = function LinkButton(_ref) {
35
+ var label = _ref.label,
36
+ iconName = _ref.iconName,
37
+ onClick = _ref.onClick;
38
+
39
+ function renderIconButton(iconNameToDisplay, clickHandler) {
40
+ return /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
41
+ className: "d-inline-block",
42
+ variant: "ghost_icon",
43
+ onClick: clickHandler
44
+ }, /*#__PURE__*/React__default["default"].createElement(echoComponents.Icon, {
45
+ title: iconNameToDisplay,
46
+ name: iconNameToDisplay,
47
+ color: echoComponents.themeConst.equiGreen1
48
+ }));
49
+ }
50
+
51
+ return label ? /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Tooltip, {
52
+ placement: "bottom",
53
+ title: label
54
+ }, renderIconButton(iconName, onClick)) : renderIconButton(iconName, onClick);
55
+ };
56
+
57
+ exports.LinkButton = LinkButton;
@@ -0,0 +1,245 @@
1
+ 'use strict';
2
+
3
+ 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
+
5
+ Object.defineProperty(exports, '__esModule', {
6
+ value: true
7
+ });
8
+
9
+ var _tslib = require('../../../_virtual/_tslib.js');
10
+
11
+ var echoComponents = require('@equinor/echo-components');
12
+
13
+ var EchoCore = require('@equinor/echo-core');
14
+
15
+ var edsCoreReact = require('@equinor/eds-core-react');
16
+
17
+ var React = require('react');
18
+
19
+ var Evision = require('../../icons/common/Evision.svg.js');
20
+
21
+ var Fusion = require('../../icons/common/Fusion.svg.js');
22
+
23
+ var McApp = require('../../icons/common/McApp.svg.js');
24
+
25
+ var ProCoSysIcon = require('../../icons/common/ProCoSysIcon.svg.js');
26
+
27
+ var SapLogo = require('../../icons/common/SapLogo.svg.js');
28
+
29
+ var SemiIcon = require('../../icons/common/SemiIcon.svg.js');
30
+
31
+ var Stid = require('../../icons/common/Stid.svg.js');
32
+
33
+ var SXLogo = require('../../icons/common/SX-logo.png.js');
34
+
35
+ var TR2000 = require('../../icons/common/TR2000.svg.js');
36
+
37
+ var Yammer = require('../../icons/common/Yammer.svg.js');
38
+
39
+ var externalLinkButton_module = require('./externalLinkButton.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 React__default = /*#__PURE__*/_interopDefaultLegacy(React);
48
+
49
+ var echopediaAnalyticsModule = EchoCore.analytics.createAnalyticsModule('ep');
50
+ exports.ExternalLinkButtonStyle = void 0;
51
+
52
+ (function (ExternalLinkButtonStyle) {
53
+ ExternalLinkButtonStyle["Rounded"] = "Rounded";
54
+ })(exports.ExternalLinkButtonStyle || (exports.ExternalLinkButtonStyle = {}));
55
+ /**
56
+ *
57
+ * @param {ExternalLinkButtonProps} props
58
+ * @param {string} props.buttonName If the button isn't in Rounded button style, this will be the button's label.
59
+ * @param {string} props.buttonIcon Name of the icon to render.
60
+ * @param {string} props.linkTo Link to open, if `getUrlToOpen` isn't passed.
61
+ * @param {boolean} props.hideText Optional. If set to `true`, will hide `buttonName`.
62
+ * @param {boolean} props.redirect Optional. If set to `true`, the app will not open in a new tab / window, but in the current one.
63
+ * @param {ExternalLinkButtonStyle} props.buttonStyle Optional.
64
+ * @param {() => Promise<string>} props.getUrlToOpen Optional. Function () => Promise<string>. Custom async function to be called to handle the navigation.
65
+ * @param {boolean} props.disabledColor Optional. If set to `true`, the button will show disabled color. (If not Rounded button style is used)
66
+ * @param {boolean} props.disabledButton Optional.
67
+ * @param {string} props.hoverText Optional. Applies only if Rounded button style is applied.
68
+ * @returns {React.FC<ExternalLinkButtonProps>} React component.
69
+ */
70
+
71
+
72
+ var ExternalLinkButton = function ExternalLinkButton(_ref) {
73
+ var buttonName = _ref.buttonName,
74
+ buttonIcon = _ref.buttonIcon,
75
+ linkTo = _ref.linkTo,
76
+ hideText = _ref.hideText,
77
+ redirect = _ref.redirect,
78
+ buttonStyle = _ref.buttonStyle,
79
+ getUrlToOpen = _ref.getUrlToOpen,
80
+ disabledColor = _ref.disabledColor,
81
+ disabledButton = _ref.disabledButton,
82
+ hoverText = _ref.hoverText;
83
+ var icon = null;
84
+
85
+ function goToLink(event) {
86
+ return _tslib.__awaiter(this, void 0, void 0, /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
87
+ var link;
88
+ return regeneratorRuntime.wrap(function _callee$(_context) {
89
+ while (1) {
90
+ switch (_context.prev = _context.next) {
91
+ case 0:
92
+ event.persist();
93
+ event.preventDefault();
94
+
95
+ if (!getUrlToOpen) {
96
+ _context.next = 8;
97
+ break;
98
+ }
99
+
100
+ _context.next = 5;
101
+ return getUrlToOpen();
102
+
103
+ case 5:
104
+ _context.t0 = _context.sent;
105
+ _context.next = 9;
106
+ break;
107
+
108
+ case 8:
109
+ _context.t0 = linkTo;
110
+
111
+ case 9:
112
+ link = _context.t0;
113
+ goToExternalLink(link, redirect);
114
+ event.stopPropagation();
115
+
116
+ case 12:
117
+ case "end":
118
+ return _context.stop();
119
+ }
120
+ }
121
+ }, _callee);
122
+ }));
123
+ }
124
+
125
+ function goToExternalLink(link, redirect) {
126
+ echopediaAnalyticsModule.trackEventBy('ExternalLink', 'Opened', {
127
+ linkTo: link
128
+ });
129
+
130
+ if (redirect) {
131
+ window.location.href = link;
132
+ } else {
133
+ window.open(link, '_blank');
134
+ }
135
+ }
136
+
137
+ switch (buttonIcon) {
138
+ case 'Fusion':
139
+ icon = /*#__PURE__*/React__default["default"].createElement(Fusion.ReactComponent, null);
140
+ break;
141
+
142
+ case 'TR2000':
143
+ icon = /*#__PURE__*/React__default["default"].createElement(TR2000.ReactComponent, null);
144
+ break;
145
+
146
+ case 'ProCoSys':
147
+ icon = /*#__PURE__*/React__default["default"].createElement(ProCoSysIcon.ReactComponent, null);
148
+ break;
149
+
150
+ case 'PermitVision':
151
+ icon = /*#__PURE__*/React__default["default"].createElement(Evision.ReactComponent, null);
152
+ break;
153
+
154
+ case 'Stid':
155
+ icon = /*#__PURE__*/React__default["default"].createElement(Stid.ReactComponent, {
156
+ className: externalLinkButton_module["default"].stidIcon
157
+ });
158
+ break;
159
+
160
+ case 'Yammer':
161
+ icon = /*#__PURE__*/React__default["default"].createElement(Yammer.ReactComponent, null);
162
+ break;
163
+
164
+ case '3DModel':
165
+ icon = /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Icon, {
166
+ color: disabledColor ? echoComponents.themeConst.disabledColor : echoComponents.themeConst.asBuilt,
167
+ name: 'rotate_3d',
168
+ title: "3DModel"
169
+ });
170
+ break;
171
+
172
+ case 'Tag':
173
+ icon = /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Icon, {
174
+ color: echoComponents.themeConst.asBuilt,
175
+ name: 'tag'
176
+ });
177
+ break;
178
+
179
+ case 'Launch':
180
+ icon = /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Icon, {
181
+ color: echoComponents.themeConst.asBuilt,
182
+ name: 'launch'
183
+ });
184
+ break;
185
+
186
+ case 'Media':
187
+ icon = /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Icon, {
188
+ color: echoComponents.themeConst.asBuilt,
189
+ name: 'movie_file'
190
+ });
191
+ break;
192
+
193
+ case 'McApp':
194
+ icon = /*#__PURE__*/React__default["default"].createElement(McApp.ReactComponent, null);
195
+ break;
196
+
197
+ case 'Sap':
198
+ icon = /*#__PURE__*/React__default["default"].createElement(SapLogo.ReactComponent, null);
199
+ break;
200
+
201
+ case 'Semi':
202
+ icon = /*#__PURE__*/React__default["default"].createElement(SemiIcon.ReactComponent, null);
203
+ break;
204
+
205
+ case 'SafeX':
206
+ icon = /*#__PURE__*/React__default["default"].createElement("img", {
207
+ src: SXLogo["default"],
208
+ className: externalLinkButton_module["default"].buttonIconAsImage,
209
+ alt: "SafeX"
210
+ });
211
+ break;
212
+
213
+ case 'GoToApp':
214
+ icon = /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Icon, {
215
+ color: echoComponents.themeConst.asBuilt,
216
+ name: 'exit_to_app'
217
+ });
218
+ break;
219
+
220
+ case 'Tr2000':
221
+ icon = /*#__PURE__*/React__default["default"].createElement(TR2000.ReactComponent, null);
222
+ break;
223
+ }
224
+
225
+ return buttonStyle === exports.ExternalLinkButtonStyle.Rounded ? /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Tooltip, {
226
+ placement: "bottom",
227
+ title: hoverText !== null && hoverText !== void 0 ? hoverText : buttonName
228
+ }, /*#__PURE__*/React__default["default"].createElement(edsCoreReact.Button, {
229
+ className: externalLinkButton_module["default"].echoButtonRounded,
230
+ variant: "ghost_icon",
231
+ onClick: function onClick(event) {
232
+ goToLink(event);
233
+ },
234
+ disabled: disabledButton
235
+ }, icon)) : /*#__PURE__*/React__default["default"].createElement("button", {
236
+ className: "".concat(externalLinkButton_module["default"].echoButton, " ").concat(disabledColor ? externalLinkButton_module["default"].echoButtonDisabled : ''),
237
+ onClick: function onClick(event) {
238
+ goToLink(event);
239
+ },
240
+ tabIndex: 0,
241
+ disabled: disabledButton
242
+ }, icon, !hideText && /*#__PURE__*/React__default["default"].createElement("span", null, buttonName));
243
+ };
244
+
245
+ exports["default"] = ExternalLinkButton;
@@ -0,0 +1,22 @@
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 = ".externalLinkButton-module_echoButton__J9As0{display:inline-block;padding:16px;position:relative;width:90px}.externalLinkButton-module_echoButtonDisabled__6kYFw{padding-bottom:0}.externalLinkButton-module_echoButtonRounded__moamZ{display:inline-block;position:relative}@media screen and (min-width:420px){.externalLinkButton-module_echoButtonDisabled__6kYFw,.externalLinkButton-module_echoButton__J9As0{width:96px}}.externalLinkButton-module_echoButton__J9As0 svg{display:inline-block;height:48px;margin:0 8px 8px;width:48px}.externalLinkButton-module_echoButtonRounded__moamZ svg{display:inline-block;height:24px;margin:0 8px;width:24px}.externalLinkButton-module_echoButton__J9As0 span{color:#007079;display:inline-block;font-size:14px;font-weight:500;line-height:16px;width:64px}.externalLinkButton-module_echoButton__J9As0:hover svg{fill:#004f55}.externalLinkButton-module_echoButton__J9As0:hover span{color:#004f55}.externalLinkButton-module_echoButtonDisabled__6kYFw span{color:var(--disabledColor)}.externalLinkButton-module_echoButtonDisabled__6kYFw:hover svg{fill:var(--disabledColor)}.externalLinkButton-module_echoButtonDisabled__6kYFw:hover span{color:var(--disabledColor)}.externalLinkButton-module_buttonIconAsImage__JL6p6{height:30px;justify-self:center;width:30px}.externalLinkButton-module_toolTip__ywPoc{background-color:#233746;border-radius:8px;box-shadow:0 0 4px rgba(0,0,0,.05),0 4px 4px rgba(0,0,0,.05);color:#fff;display:block;padding:8px 16px;position:absolute;z-index:1}.externalLinkButton-module_toolTipContainer__n1YIl{display:inline-flex;justify-content:center}.externalLinkButton-module_scrimContainer__zE8L->div{height:100%;width:100%}.externalLinkButton-module_dialogWrapper__IKpyE{height:100%;width:272px}.externalLinkButton-module_stidIcon__XoFaL{height:auto!important}";
10
+ var style = {
11
+ "echoButton": "externalLinkButton-module_echoButton__J9As0",
12
+ "echoButtonDisabled": "externalLinkButton-module_echoButtonDisabled__6kYFw",
13
+ "echoButtonRounded": "externalLinkButton-module_echoButtonRounded__moamZ",
14
+ "buttonIconAsImage": "externalLinkButton-module_buttonIconAsImage__JL6p6",
15
+ "toolTip": "externalLinkButton-module_toolTip__ywPoc",
16
+ "toolTipContainer": "externalLinkButton-module_toolTipContainer__n1YIl",
17
+ "scrimContainer": "externalLinkButton-module_scrimContainer__zE8L-",
18
+ "dialogWrapper": "externalLinkButton-module_dialogWrapper__IKpyE",
19
+ "stidIcon": "externalLinkButton-module_stidIcon__XoFaL"
20
+ };
21
+ styleInject_es["default"](css_248z);
22
+ exports["default"] = style;
@@ -54,7 +54,7 @@ var ProjectSelector = function ProjectSelector(_ref) {
54
54
  var variant = _ref.variant,
55
55
  maxCharacterCount = _ref.maxCharacterCount,
56
56
  isDisabled = _ref.isDisabled;
57
- var selectedProcosysProjectCode = EchoCore.useSelectedProcosysProject().toString();
57
+ var selectedProcosysProjectCode = EchoCore.useSelectedProcosysProject();
58
58
 
59
59
  var _EchoCore$useProcosys = EchoCore.useProcosysProjectsData(),
60
60
  procosysProjectsHasError = _EchoCore$useProcosys.procosysProjectsHasError,
@@ -75,7 +75,14 @@ function RealTimePopoverButton(_ref) {
75
75
  var _React$useState3 = React.useState([]),
76
76
  _React$useState4 = _slicedToArray(_React$useState3, 2),
77
77
  imsFields = _React$useState4[0],
78
- setImsFields = _React$useState4[1];
78
+ setImsFields = _React$useState4[1]; // used for getting current URL instCode param as we don't care about synced data.
79
+
80
+
81
+ var _React$useState5 = React.useState(function () {
82
+ return new URLSearchParams(window.location.search).get('instCode');
83
+ }),
84
+ _React$useState6 = _slicedToArray(_React$useState5, 1),
85
+ instCode = _React$useState6[0];
79
86
 
80
87
  EchoUtils__default["default"].Hooks.useEffectAsync(function (signal) {
81
88
  return _tslib.__awaiter(_this, void 0, void 0, /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
@@ -85,10 +92,18 @@ function RealTimePopoverButton(_ref) {
85
92
  while (1) {
86
93
  switch (_context.prev = _context.next) {
87
94
  case 0:
88
- _context.next = 2;
89
- return echoSearch.Search.Tags.getTagDetailsAsync(tagNo);
95
+ if (instCode) {
96
+ _context.next = 2;
97
+ break;
98
+ }
99
+
100
+ return _context.abrupt("return");
90
101
 
91
102
  case 2:
103
+ _context.next = 4;
104
+ return echoSearch.Search.Tags.getTagDetailsAsync(tagNo, instCode);
105
+
106
+ case 4:
92
107
  response = _context.sent;
93
108
 
94
109
  if (response.value) {
@@ -113,23 +128,24 @@ function RealTimePopoverButton(_ref) {
113
128
  }
114
129
  });
115
130
 
116
- case 5:
131
+ case 7:
117
132
  case "end":
118
133
  return _context.stop();
119
134
  }
120
135
  }
121
136
  }, _callee);
122
137
  }));
123
- }, [tagNo]);
138
+ }, [tagNo, instCode]);
124
139
 
125
- if (!isVisible) {
140
+ if (!isVisible || !instCode) {
126
141
  return null;
127
142
  }
128
143
 
129
144
  return /*#__PURE__*/React__default["default"].createElement(RealTimeContextButton.RealTimeContextButton, {
130
145
  onOpen: onOpen
131
146
  }, /*#__PURE__*/React__default["default"].createElement(RealTimeIMSDropdown.RealTimeIMSDropdown, {
132
- imsFields: imsFields
147
+ imsFields: imsFields,
148
+ instCode: instCode
133
149
  }));
134
150
  }
135
151
 
@@ -35,7 +35,8 @@ function _interopDefaultLegacy(e) {
35
35
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
36
36
 
37
37
  function RealTimeIMSDropdown(_ref) {
38
- var imsFields = _ref.imsFields;
38
+ var imsFields = _ref.imsFields,
39
+ instCode = _ref.instCode;
39
40
 
40
41
  var _a;
41
42
 
@@ -74,7 +75,8 @@ function RealTimeIMSDropdown(_ref) {
74
75
  },
75
76
  selectedOption: (_a = selected === null || selected === void 0 ? void 0 : selected.description) !== null && _a !== void 0 ? _a : ''
76
77
  }), selected && /*#__PURE__*/React__default["default"].createElement(RealTimeConnectorForIMSTag.RealTimeConnectorForIMSTag, {
77
- ims: selected.value
78
+ ims: selected.value,
79
+ instCode: instCode
78
80
  }));
79
81
  }
80
82
 
@@ -28,7 +28,7 @@ var IMSConnector_module = require('./IMSConnector.module.css.js');
28
28
 
29
29
  require('@equinor/echo-utils');
30
30
 
31
- var EchoCore = require('@equinor/echo-core');
31
+ require('@equinor/echo-core');
32
32
 
33
33
  require('../../../../services/api/api-manager.js');
34
34
 
@@ -43,8 +43,8 @@ function _interopDefaultLegacy(e) {
43
43
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
44
44
 
45
45
  function RealTimeConnectorForIMSTag(_ref) {
46
- var ims = _ref.ims;
47
- var instCode = EchoCore.useInstCode();
46
+ var ims = _ref.ims,
47
+ instCode = _ref.instCode;
48
48
 
49
49
  var _useRealTimeHub$useRe = useRealTimeHub.useRealTimeHub(ims, instCode),
50
50
  metadata = _useRealTimeHub$useRe.metadata,
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true
5
+ });
6
+
7
+ var useEchoHistory = require('./useEchoHistory.js');
8
+
9
+ var useTagDetails = require('./useTagDetails.js');
10
+
11
+ exports.useEchoHistory = useEchoHistory.useEchoHistory;
12
+ exports.useTagDetails = useTagDetails.useTagDetails;