dash-button-web 0.0.22 → 0.0.23-beta.1

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/cjs/app-globals-cd54EKuF.js +15 -0
  2. package/dist/cjs/dash-button.cjs.entry.js +2172 -2070
  3. package/dist/cjs/index-BfwSK14n.js +1507 -0
  4. package/dist/cjs/index.cjs.js +0 -2
  5. package/dist/cjs/loader.cjs.js +5 -7
  6. package/dist/cjs/web-compnont.cjs.js +15 -15
  7. package/dist/collection/collection-manifest.json +5 -3
  8. package/dist/collection/components/my-component/dash-button.js +135 -38
  9. package/dist/collection/global/app.js +7 -0
  10. package/dist/collection/index.js +0 -1
  11. package/dist/collection/services/config.js +2 -1
  12. package/dist/collection/services/menu.js +0 -1
  13. package/dist/components/dash-button.js +1 -4247
  14. package/dist/components/index.d.ts +2 -0
  15. package/dist/components/index.js +1 -3
  16. package/dist/esm/app-globals-B2hgy9FG.js +13 -0
  17. package/dist/esm/dash-button.entry.js +2172 -2068
  18. package/dist/esm/index-6_Ga3Eox.js +1499 -0
  19. package/dist/esm/index.js +0 -2
  20. package/dist/esm/loader.js +6 -6
  21. package/dist/esm/web-compnont.js +15 -14
  22. package/dist/types/components/my-component/dash-button.d.ts +3 -0
  23. package/dist/types/components.d.ts +75 -3
  24. package/dist/types/global/app.d.ts +2 -0
  25. package/dist/types/services/config.d.ts +2 -0
  26. package/dist/types/stencil-public-runtime.d.ts +268 -70
  27. package/dist/web-compnont/index.esm.js +0 -2
  28. package/dist/web-compnont/p-6_Ga3Eox.js +3 -0
  29. package/dist/web-compnont/p-7de50cbc.entry.js +1 -0
  30. package/dist/web-compnont/p-DiU1T8CW.js +1 -0
  31. package/dist/web-compnont/web-compnont.esm.js +1 -2
  32. package/loader/cdn.js +1 -3
  33. package/loader/index.cjs.js +1 -3
  34. package/loader/index.d.ts +4 -1
  35. package/loader/index.es2017.js +1 -3
  36. package/loader/index.js +1 -3
  37. package/package.json +3 -2
  38. package/readme.md +21 -0
  39. package/dist/cjs/dash-button.cjs.entry.js.map +0 -1
  40. package/dist/cjs/index-87d4993d.js +0 -1793
  41. package/dist/cjs/index-87d4993d.js.map +0 -1
  42. package/dist/cjs/index.cjs.js.map +0 -1
  43. package/dist/cjs/loader.cjs.js.map +0 -1
  44. package/dist/cjs/web-compnont.cjs.js.map +0 -1
  45. package/dist/collection/components/my-component/dash-button.e2e.js +0 -26
  46. package/dist/collection/components/my-component/dash-button.e2e.js.map +0 -1
  47. package/dist/collection/components/my-component/dash-button.js.map +0 -1
  48. package/dist/collection/components/my-component/dash-button.spec.js +0 -35
  49. package/dist/collection/components/my-component/dash-button.spec.js.map +0 -1
  50. package/dist/collection/index.js.map +0 -1
  51. package/dist/collection/services/config.js.map +0 -1
  52. package/dist/collection/services/menu.js.map +0 -1
  53. package/dist/components/dash-button.js.map +0 -1
  54. package/dist/components/index.js.map +0 -1
  55. package/dist/esm/dash-button.entry.js.map +0 -1
  56. package/dist/esm/index-e3df5eaf.js +0 -1766
  57. package/dist/esm/index-e3df5eaf.js.map +0 -1
  58. package/dist/esm/index.js.map +0 -1
  59. package/dist/esm/loader.js.map +0 -1
  60. package/dist/esm/polyfills/core-js.js +0 -11
  61. package/dist/esm/polyfills/dom.js +0 -79
  62. package/dist/esm/polyfills/es5-html-element.js +0 -1
  63. package/dist/esm/polyfills/index.js +0 -34
  64. package/dist/esm/polyfills/system.js +0 -6
  65. package/dist/esm/web-compnont.js.map +0 -1
  66. package/dist/web-compnont/index.esm.js.map +0 -1
  67. package/dist/web-compnont/p-ad318f06.entry.js +0 -10
  68. package/dist/web-compnont/p-ad318f06.entry.js.map +0 -1
  69. package/dist/web-compnont/p-c1ec12fe.js +0 -3
  70. package/dist/web-compnont/p-c1ec12fe.js.map +0 -1
  71. package/dist/web-compnont/web-compnont.esm.js.map +0 -1
  72. package/loader/package.json +0 -11
@@ -1,4 +1,2 @@
1
1
  'use strict';
2
2
 
3
-
4
- //# sourceMappingURL=index.cjs.js.map
@@ -1,15 +1,13 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
3
+ var index = require('./index-BfwSK14n.js');
4
+ var appGlobals = require('./app-globals-cd54EKuF.js');
4
5
 
5
- const index = require('./index-87d4993d.js');
6
-
7
- const defineCustomElements = (win, options) => {
6
+ const defineCustomElements = async (win, options) => {
8
7
  if (typeof window === 'undefined') return undefined;
9
- return index.bootstrapLazy([["dash-button.cjs",[[1,"dash-button",{"showPostLoginText":[4,"show-post-login-text"],"silentCheckSso":[4,"silent-check-sso"],"redirectUri":[1,"redirect-uri"],"authMethod":[1,"auth-method"],"portalApiUrl":[1,"portal-api-url"],"plmUrl":[1,"plm-url"],"showUnauthorizedModal":[4,"show-unauthorized-modal"],"primaryColor":[1,"primary-color"],"accentColor":[1,"accent-color"],"keycloak":[32],"isAuth":[32],"givenUserName":[32],"silentCheckSsoRedirectUri":[32],"appList":[32],"avatarSvg":[32],"isLoading":[32],"config":[32],"localMenuLinks":[32],"organizationUrl":[32],"isRestricted":[32]}]]]], options);
8
+ await appGlobals.globalScripts();
9
+ return index.bootstrapLazy([["dash-button.cjs",[[1,"dash-button",{"showPostLoginText":[4,"show-post-login-text"],"silentCheckSso":[4,"silent-check-sso"],"redirectUri":[1,"redirect-uri"],"authMethod":[1,"auth-method"],"portalApiUrl":[1,"portal-api-url"],"plmUrl":[1,"plm-url"],"showUnauthorizedModal":[4,"show-unauthorized-modal"],"primaryColor":[1,"primary-color"],"accentColor":[1,"accent-color"],"notificationPosition":[1,"notification-position"],"keycloak":[32],"isAuth":[32],"givenUserName":[32],"silentCheckSsoRedirectUri":[32],"appList":[32],"avatarSvg":[32],"isLoading":[32],"config":[32],"localMenuLinks":[32],"organizationUrl":[32],"isRestricted":[32]}]]]], options);
10
10
  };
11
11
 
12
12
  exports.setNonce = index.setNonce;
13
13
  exports.defineCustomElements = defineCustomElements;
14
-
15
- //# sourceMappingURL=loader.cjs.js.map
@@ -1,25 +1,25 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-87d4993d.js');
3
+ var index = require('./index-BfwSK14n.js');
4
+ var appGlobals = require('./app-globals-cd54EKuF.js');
6
5
 
6
+ var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
7
7
  /*
8
- Stencil Client Patch Browser v4.12.0 | MIT Licensed | https://stenciljs.com
8
+ Stencil Client Patch Browser v4.45.0 | MIT Licensed | https://stenciljs.com
9
9
  */
10
- const patchBrowser = () => {
11
- const importMeta = (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('web-compnont.cjs.js', document.baseURI).href));
12
- const opts = {};
13
- if (importMeta !== '') {
14
- opts.resourcesUrl = new URL('.', importMeta).href;
15
- }
16
- return index.promiseResolve(opts);
10
+
11
+ var patchBrowser = () => {
12
+ const importMeta = (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('web-compnont.cjs.js', document.baseURI).href));
13
+ const opts = {};
14
+ if (importMeta !== "") {
15
+ opts.resourcesUrl = new URL(".", importMeta).href;
16
+ }
17
+ return index.promiseResolve(opts);
17
18
  };
18
19
 
19
- patchBrowser().then(options => {
20
- return index.bootstrapLazy([["dash-button.cjs",[[1,"dash-button",{"showPostLoginText":[4,"show-post-login-text"],"silentCheckSso":[4,"silent-check-sso"],"redirectUri":[1,"redirect-uri"],"authMethod":[1,"auth-method"],"portalApiUrl":[1,"portal-api-url"],"plmUrl":[1,"plm-url"],"showUnauthorizedModal":[4,"show-unauthorized-modal"],"primaryColor":[1,"primary-color"],"accentColor":[1,"accent-color"],"keycloak":[32],"isAuth":[32],"givenUserName":[32],"silentCheckSsoRedirectUri":[32],"appList":[32],"avatarSvg":[32],"isLoading":[32],"config":[32],"localMenuLinks":[32],"organizationUrl":[32],"isRestricted":[32]}]]]], options);
20
+ patchBrowser().then(async (options) => {
21
+ await appGlobals.globalScripts();
22
+ return index.bootstrapLazy([["dash-button.cjs",[[1,"dash-button",{"showPostLoginText":[4,"show-post-login-text"],"silentCheckSso":[4,"silent-check-sso"],"redirectUri":[1,"redirect-uri"],"authMethod":[1,"auth-method"],"portalApiUrl":[1,"portal-api-url"],"plmUrl":[1,"plm-url"],"showUnauthorizedModal":[4,"show-unauthorized-modal"],"primaryColor":[1,"primary-color"],"accentColor":[1,"accent-color"],"notificationPosition":[1,"notification-position"],"keycloak":[32],"isAuth":[32],"givenUserName":[32],"silentCheckSsoRedirectUri":[32],"appList":[32],"avatarSvg":[32],"isLoading":[32],"config":[32],"localMenuLinks":[32],"organizationUrl":[32],"isRestricted":[32]}]]]], options);
21
23
  });
22
24
 
23
25
  exports.setNonce = index.setNonce;
24
-
25
- //# sourceMappingURL=web-compnont.cjs.js.map
@@ -2,11 +2,13 @@
2
2
  "entries": [
3
3
  "components/my-component/dash-button.js"
4
4
  ],
5
+ "mixins": [],
5
6
  "compiler": {
6
7
  "name": "@stencil/core",
7
- "version": "4.12.0",
8
- "typescriptVersion": "5.3.3"
8
+ "version": "4.45.0",
9
+ "typescriptVersion": "5.8.3"
9
10
  },
10
11
  "collections": [],
11
- "bundles": []
12
+ "bundles": [],
13
+ "global": "global/app.js"
12
14
  }
@@ -7,13 +7,13 @@ export class DashButtonComponent {
7
7
  constructor() {
8
8
  this.showPostLoginText = false;
9
9
  this.silentCheckSso = false;
10
- this.redirectUri = undefined;
11
10
  this.authMethod = "check-sso";
12
11
  this.portalApiUrl = "";
13
12
  this.plmUrl = "https://productlicensemanager-zdzw.cloud.zdzw-project.com";
14
13
  this.showUnauthorizedModal = false;
15
14
  this.primaryColor = "";
16
15
  this.accentColor = "";
16
+ this.notificationPosition = "left";
17
17
  this.keycloak = null;
18
18
  this.isAuth = false;
19
19
  this.givenUserName = "";
@@ -21,11 +21,41 @@ export class DashButtonComponent {
21
21
  this.appList = [];
22
22
  this.avatarSvg = toSvg("init-avatar", 40);
23
23
  this.isLoading = false;
24
- this.config = undefined;
25
- this.localMenuLinks = undefined;
26
- this.organizationUrl = undefined;
27
24
  this.isRestricted = false;
28
25
  }
26
+ componentDidLoad() {
27
+ console.log("New version!!!");
28
+ // Add a click listener to this specific component instance
29
+ this.el.addEventListener('click', (event) => {
30
+ const path = event.composedPath();
31
+ // Ensure this click originated from inside the notification module
32
+ const isInsideNotification = path.some((target) => target && target.tagName === 'NOTIFICATION-COMPONENT');
33
+ // If the click is outside the notification module (e.g., somewhere else in dash-button), exit early
34
+ if (!isInsideNotification) {
35
+ return;
36
+ }
37
+ // 2. Identify the specific link element inside the path array
38
+ const clickedLink = path.find((target) => target && (target.tagName === 'A' || (typeof target.hasAttribute === 'function' && target.hasAttribute('href'))));
39
+ if (clickedLink) {
40
+ const destinationUrl = clickedLink.getAttribute('href');
41
+ if (destinationUrl) {
42
+ // Prevent the default behavior ONLY for the notification component links
43
+ event.preventDefault();
44
+ event.stopPropagation();
45
+ // Check if the link contains the unique class name
46
+ const isHomeIconLink = clickedLink.classList.contains('button-link');
47
+ if (isHomeIconLink) {
48
+ console.log('Notification module home link intercepted. Opening in new tab:', destinationUrl);
49
+ window.open(destinationUrl, '_blank', 'noopener,noreferrer');
50
+ }
51
+ else {
52
+ console.log('Notification module standard link intercepted. Navigating in current view:', destinationUrl);
53
+ window.location.href = destinationUrl;
54
+ }
55
+ }
56
+ }
57
+ });
58
+ }
29
59
  async componentWillLoad() {
30
60
  var _a, _b, _c, _d;
31
61
  // Fetch config from API
@@ -68,16 +98,17 @@ export class DashButtonComponent {
68
98
  onLoad: this.authMethod,
69
99
  checkLoginIframe: false,
70
100
  silentCheckSsoRedirectUri: this.silentCheckSso ? this.silentCheckSsoRedirectUri : '',
71
- }).then(res => {
101
+ }).then((res) => {
102
+ var _a, _b, _c;
72
103
  if (res) {
73
104
  this.isAuth = true;
74
105
  localStorage.setItem("keycloak", JSON.stringify(this.keycloak));
75
106
  // document.cookie = "DASH_BTN=" + JSON.parse(localStorage.getItem('keycloak')).token;
76
- document.cookie = this.config.cookieName + "=" + JSON.parse(localStorage.getItem('keycloak')).token;
107
+ document.cookie = this.config.cookieName + "=" + JSON.parse((_a = localStorage.getItem('keycloak')) !== null && _a !== void 0 ? _a : '{}').token;
77
108
  // Set userName
78
- this.givenUserName = JSON.parse(localStorage.getItem('keycloak')).idTokenParsed.preferred_username;
109
+ this.givenUserName = JSON.parse((_b = localStorage.getItem('keycloak')) !== null && _b !== void 0 ? _b : '{}').idTokenParsed.preferred_username;
79
110
  // Set user avatar
80
- this.avatarSvg = toSvg(JSON.parse(localStorage.getItem('keycloak')).idTokenParsed.sub, 40);
111
+ this.avatarSvg = toSvg(JSON.parse((_c = localStorage.getItem('keycloak')) !== null && _c !== void 0 ? _c : '{}').idTokenParsed.sub, 40);
81
112
  }
82
113
  });
83
114
  }
@@ -108,27 +139,44 @@ export class DashButtonComponent {
108
139
  }
109
140
  }
110
141
  }
142
+ // First, check global links
143
+ // Then, check the token's organization URL
144
+ // Finally, check against dashbutton configuration: allowedGlobalDomain and whitelistedUrls
111
145
  validateAppAccessByUrl() {
112
- var _a, _b, _c, _d;
113
- const currentUrl = window.location.href;
114
- const currentOrigin = window.location.origin;
146
+ var _a, _b, _c, _d, _e, _f;
147
+ const normalizeUrl = (url) => url.replace(/\/+$/, '');
148
+ const currentUrl = normalizeUrl(window.location.href);
149
+ const currentOrigin = normalizeUrl(window.location.origin);
115
150
  const globalLinks = ((_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.menu) === null || _b === void 0 ? void 0 : _b.global) === null || _c === void 0 ? void 0 : _c.links) || [];
116
- // Check Global Links
151
+ const allowedGlobalDomain = ((_d = this.config) === null || _d === void 0 ? void 0 : _d.allowedGlobalDomain) || '';
152
+ const whitelistedUrls = ((_e = this.config) === null || _e === void 0 ? void 0 : _e.whitelistedUrls) || '';
153
+ // First, check global links
117
154
  const matchGlobal = globalLinks.some(link => {
118
155
  try {
119
- const linkOrigin = new URL(link.url).origin;
156
+ const linkOrigin = normalizeUrl(new URL(link.url).origin);
120
157
  return currentOrigin === linkOrigin;
121
158
  }
122
159
  catch (_a) {
123
160
  return false;
124
161
  }
125
162
  });
126
- // Check Token organizationUrl
127
- const tokenParsed = (_d = this.keycloak) === null || _d === void 0 ? void 0 : _d.tokenParsed;
163
+ // Then check the token organization URL
164
+ const tokenParsed = (_f = this.keycloak) === null || _f === void 0 ? void 0 : _f.tokenParsed;
128
165
  const allowedOrg = tokenParsed === null || tokenParsed === void 0 ? void 0 : tokenParsed.organizationUrl;
129
- const matchOrganization = allowedOrg && currentUrl.includes(allowedOrg);
130
- // global and org url validations
131
- const isAllowed = matchGlobal || matchOrganization;
166
+ const matchOrganization = allowedOrg && currentUrl.includes(normalizeUrl(allowedOrg));
167
+ // Check allowedGlobalDomain (single domain)
168
+ const matchAllowedDomain = allowedGlobalDomain &&
169
+ currentOrigin.includes(normalizeUrl(allowedGlobalDomain));
170
+ // Check whitelistedUrls (comma-separated string)
171
+ const whitelistedArray = whitelistedUrls
172
+ ? whitelistedUrls.split(',').map(url => normalizeUrl(url.trim()))
173
+ : [];
174
+ const matchWhitelisted = whitelistedArray.some(url => currentUrl.includes(url));
175
+ // Final validation
176
+ const isAllowed = matchGlobal ||
177
+ matchOrganization ||
178
+ matchAllowedDomain ||
179
+ matchWhitelisted;
132
180
  this.isRestricted = !isAllowed;
133
181
  }
134
182
  login() {
@@ -148,10 +196,20 @@ export class DashButtonComponent {
148
196
  const appModal = this.el.shadowRoot.querySelector('#appListModal');
149
197
  appModal.style.display = "none";
150
198
  }
199
+ renderNotificationComponent() {
200
+ var _a;
201
+ const token = (_a = this.keycloak) === null || _a === void 0 ? void 0 : _a.idTokenParsed;
202
+ const owner = (token === null || token === void 0 ? void 0 : token.preferred_username) || (token === null || token === void 0 ? void 0 : token.sub) || '';
203
+ const orgUrlRaw = (token === null || token === void 0 ? void 0 : token.organizationUrl) || '';
204
+ const orgHost = orgUrlRaw
205
+ ? new URL(orgUrlRaw.startsWith('http') ? orgUrlRaw : `https://${orgUrlRaw}`).hostname
206
+ : '';
207
+ return orgHost && owner ? (h("notification-component", { owner: owner, "max-records": 10, "display-type": "icon", "notification-url": `https://notifications.${orgHost}/notifications-api`, "socket-connect": true, "socket-url": `wss://repository.${orgHost}/socket`, "list-url": `https://notifications.${orgHost}/notifications` })) : null;
208
+ }
151
209
  render() {
152
210
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
153
- return h("div", { key: 'd186318626a3fbd1d011d3532559901d1c36859e' }, h("div", { key: 'a5887ec423aabb35ca7988169cfa7a9f0bd588e6' }, (() => {
154
- var _a, _b, _c, _d, _e, _f;
211
+ return h("div", { key: 'a2d1650d96fcbbfa5128da4315e70dc0c2682dfd' }, h("div", { key: '975ab012c618442f627f00a9ee29773c08d55824' }, (() => {
212
+ var _a, _b, _c, _d, _e, _f, _g, _h;
155
213
  // GLOBAL LOADING SPINNER
156
214
  if (this.isLoading) {
157
215
  return (h("a", { id: "login-btn", class: "button button-link" }, h("div", { class: "lds-ring" }, h("div", null), h("div", null), h("div", null), h("div", null))));
@@ -163,21 +221,23 @@ export class DashButtonComponent {
163
221
  return (h("a", { style: { background: this.primaryColor != undefined ? this.primaryColor : "" }, href: this.redirectUri, id: "login-btn", class: "button button-link" }, h("span", { style: { color: this.accentColor != undefined ? this.accentColor : "" }, class: "button-text button-text-full-width" }, "Go to Dashboard")));
164
222
  }
165
223
  else if (this.isAuth) {
166
- return (h("div", { id: "profile-btn", class: "dropdown" }, h("button", { style: { background: this.primaryColor != undefined ? this.primaryColor : "" }, type: "button", class: "button" }, h("span", { class: "button-profile" }, JSON.parse(localStorage.getItem('keycloak')).idTokenParsed.imageUrl ?
224
+ return (h("div", { class: "profile-actions", style: { display: "inline-flex", alignItems: "center", gap: "15px" } }, this.notificationPosition !== "right" && this.renderNotificationComponent(), h("div", { id: "profile-btn", class: "dropdown" }, h("button", { style: { background: this.primaryColor != undefined ? this.primaryColor : "" }, type: "button", class: "button" }, h("span", { class: "button-profile" }, JSON.parse((_g = localStorage.getItem('keycloak')) !== null && _g !== void 0 ? _g : '{}').idTokenParsed.imageUrl ?
167
225
  h("img", { class: "profile-image", src: "https://s-damith.github.io/test-avatar/images/e24da9c5-0b1f-46fa-82cd-7c711c77b5c7.png" })
168
226
  :
169
- h("div", { innerHTML: this.avatarSvg })), h("span", { style: { color: this.accentColor != undefined ? this.accentColor : "" }, id: "given-name", class: "button-text" }, this.givenUserName), h("div", { class: "button-icon" }, (this.config.menuViewType == "grid") ? h("i", { class: "fa-solid fa-grip-vertical" }) : h("i", { class: "fa-solid fa-bars" }))), h("div", { class: "dropdown-content" }, h("div", { class: "dropdown-user-profile" }, h("div", { class: "username" }, "@", this.givenUserName), h("div", { class: "first-last-name" }, JSON.parse(localStorage.getItem('keycloak')).idTokenParsed.name)), (this.config.menuViewType == "grid") ? (h("div", null, h("div", { class: "grid-view-menu" }, this.config.menu.global.links.map(item => {
227
+ h("div", { innerHTML: this.avatarSvg })), h("span", { style: { color: this.accentColor != undefined ? this.accentColor : "" }, id: "given-name", class: "button-text" }, this.givenUserName), h("div", { class: "button-icon" }, (this.config.menuViewType == "grid") ? h("i", { class: "fa-solid fa-grip-vertical" }) : h("i", { class: "fa-solid fa-bars" }))), h("div", { class: "dropdown-content" }, h("div", { class: "dropdown-user-profile" }, h("div", { class: "username" }, "@", this.givenUserName), h("div", { class: "first-last-name" }, JSON.parse((_h = localStorage.getItem('keycloak')) !== null && _h !== void 0 ? _h : '{}').idTokenParsed.name)), (this.config.menuViewType == "grid") ? (h("div", null, h("div", { class: "grid-view-menu" }, this.config.menu.global.links.map(item => {
170
228
  return (h("a", { href: item.url, target: '_blank', class: "grid-view-link" }, h("i", { class: item.icon + " fa-2x" }), h("div", { class: "grid-view-link-text" }, item.name)));
171
- })), this.config.menu.global.links.length != 0 && h("hr", { class: "solid" }), h("div", { class: "grid-view-menu", style: this.config.menu.global.links.length == 0 && { "margin-bottom": "12px" } }, h("a", { onClick: this.showModal.bind(this), class: "grid-view-link" }, h("i", { class: "fa-regular fa-window-restore fa-2x" }), h("div", { class: "grid-view-link-text" }, "Modules")), h("a", { href: this.config.defaultLink.url, target: '_blank', class: "grid-view-link" }, h("i", { class: "fa-solid fa-globe fa-2x" }), h("div", { class: "grid-view-link-text" }, this.config.defaultLink.name)), h("a", { onClick: this.logout.bind(this), class: "grid-view-link" }, h("i", { class: "fa-solid fa-right-from-bracket fa-2x" }), h("div", { class: "grid-view-link-text" }, "Logout"))))) : (
229
+ })), this.config.menu.global.links.length != 0 && h("hr", { class: "solid" }), h("div", { class: "grid-view-menu", style: this.config.menu.global.links.length === 0
230
+ ? { marginBottom: '12px' }
231
+ : undefined }, h("a", { onClick: this.showModal.bind(this), class: "grid-view-link" }, h("i", { class: "fa-regular fa-window-restore fa-2x" }), h("div", { class: "grid-view-link-text" }, "Modules")), h("a", { href: this.config.defaultLink.url, target: '_blank', class: "grid-view-link" }, h("i", { class: "fa-solid fa-globe fa-2x" }), h("div", { class: "grid-view-link-text" }, this.config.defaultLink.name)), h("a", { onClick: this.logout.bind(this), class: "grid-view-link" }, h("i", { class: "fa-solid fa-right-from-bracket fa-2x" }), h("div", { class: "grid-view-link-text" }, "Logout"))))) : (
172
232
  // List View
173
233
  h("div", { class: "dropdown-content-link" }, this.config.menu.global.links.map(item => {
174
234
  return (h("a", { href: item.url, target: '_blank', id: "applications-btn" }, h("i", { class: item.icon + " menu-bar-icons" }), item.name));
175
- }), h("a", { onClick: this.showModal.bind(this), id: "applications-btn" }, h("i", { class: "fa-regular fa-window-restore menu-bar-icons" }), "Modules"), h("a", { href: this.config.defaultLink.url, target: '_blank', id: "applications-btn" }, h("i", { class: "fa-solid fa-globe menu-bar-icons" }), this.config.defaultLink.name), h("a", { onClick: this.logout.bind(this), id: "logout-btn" }, h("i", { class: "fa-solid fa-right-from-bracket menu-bar-icons" }), "Logout"))))));
235
+ }), h("a", { onClick: this.showModal.bind(this), id: "applications-btn" }, h("i", { class: "fa-regular fa-window-restore menu-bar-icons" }), "Modules"), h("a", { href: this.config.defaultLink.url, target: '_blank', id: "applications-btn" }, h("i", { class: "fa-solid fa-globe menu-bar-icons" }), this.config.defaultLink.name), h("a", { onClick: this.logout.bind(this), id: "logout-btn" }, h("i", { class: "fa-solid fa-right-from-bracket menu-bar-icons" }), "Logout"))))), this.notificationPosition === "right" && this.renderNotificationComponent()));
176
236
  }
177
237
  else {
178
238
  return (h("button", { style: { background: this.primaryColor != undefined ? this.primaryColor : "" }, onClick: this.login.bind(this), id: "login-btn", type: "button", class: "button" }, h("span", { style: { color: this.accentColor != undefined ? this.accentColor : "" }, class: "button-text" }, "Login")));
179
239
  }
180
- })()), h("div", { key: '1ad6675f4e190df28410c54f7ad9f097578e0403', id: "appListModal", class: "modal" }, h("div", { key: '655f51c1d18372eca86610750d1ac3c8e1eeeefa', class: "modal-content" }, h("span", { key: 'bb850ddc02afdbbc04b5fbc6258d6ab2b1e92bfb', onClick: this.closeModal.bind(this), class: "close" }, "\u00D7"), h("div", { key: '4fdec67f888e554e1c8a3328ae2b55fb1a0fea4d', class: "box" }, h("input", { type: "radio", class: "tab-toggle", name: "tab-toggle", id: "tab1", checked: true }), h("ul", { key: '4317ec4e90f682b549aea49971d12426aaa5c0ef', class: "tab-list" }, h("li", { class: "tab-item" }, h("label", { class: "tab-trigger", htmlFor: "tab1" }, h("i", { class: "fa-solid fa-table-list menu-bar-icons" }), " ", this.config.menu.local.name))), h("div", { key: '8f1b8e0ec034d45a9c04776b90afcbd3cd9fea3e', class: "tab-container" }, h("div", { key: 'e59e81838b0c2fa419314503ab0c2d56143496cb', class: "tab-content" }, h("div", { key: 'f393c5497bfeddae25469d2d4475f9aacdf13629', class: "modal-body" }, !((_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.menu) === null || _b === void 0 ? void 0 : _b.local) === null || _c === void 0 ? void 0 : _c.enableCustomLocalMenu) ? (
240
+ })()), h("div", { key: '3a9e8bd2730ba8d71f1e8416bab4d745a68dda9a', id: "appListModal", class: "modal" }, h("div", { key: '8f85ebe690af26900e003755e68fa5cd1401b502', class: "modal-content" }, h("span", { key: '445d67c3803859bbec76177291fd71389ccf5917', onClick: this.closeModal.bind(this), class: "close" }, "\u00D7"), h("div", { key: '0a0df9bb6fc5258568fb9363353f58486a30f744', class: "box" }, h("input", { key: 'eec587753688b1ac0bd1a3b87975f0b9692d7719', type: "radio", class: "tab-toggle", name: "tab-toggle", id: "tab1", checked: true }), h("ul", { key: '4db9fff924d2f38e3e42b83bd96fe2589dc2c701', class: "tab-list" }, h("li", { key: '99e9a21d90012e521aa10d21194f44013dbd5931', class: "tab-item" }, h("label", { key: 'c4fadd0b70b3e944860056a37e9d5f52b7c625b5', class: "tab-trigger", htmlFor: "tab1" }, h("i", { key: '5252821523386c869725b0e13bf662ec03f24d81', class: "fa-solid fa-table-list menu-bar-icons" }), " ", this.config.menu.local.name))), h("div", { key: '2da9e2383580f6d5130883051c4b0d1cba1354a7', class: "tab-container" }, h("div", { key: 'a51f2e9b923836b63b9ff2453d08dc3ee93213e6', class: "tab-content" }, h("div", { key: '9c7146fa59070eace7bcb1b76fb2b59468e23b5c', class: "modal-body" }, !((_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.menu) === null || _b === void 0 ? void 0 : _b.local) === null || _c === void 0 ? void 0 : _c.enableCustomLocalMenu) ? (
181
241
  // <div>{this.localMenuLinks}</div>
182
242
  (_d = this.localMenuLinks) === null || _d === void 0 ? void 0 : _d.map((app, index) => {
183
243
  const isDisabled = !app.url;
@@ -185,7 +245,7 @@ export class DashButtonComponent {
185
245
  })) : ((_e = this.config.menu.local.links) === null || _e === void 0 ? void 0 : _e.map((app, index) => (h("a", { key: index, class: "external-app-link", target: "_blank", rel: "noopener noreferrer", href: app.url }, h("div", { class: "modal-app" }, h("div", null, app.name)))))), !this.organizationUrl ? (h("div", null, h("h3", { class: "gray-text" }, "Organization Domain URL not set"), h("p", { class: "gray-text" }, "Please set your Organization Domain URL on the Portal profile page."))) : (((!((_h = (_g = (_f = this.config) === null || _f === void 0 ? void 0 : _f.menu) === null || _g === void 0 ? void 0 : _g.local) === null || _h === void 0 ? void 0 : _h.enableCustomLocalMenu) &&
186
246
  ((_k = (_j = this.localMenuLinks) === null || _j === void 0 ? void 0 : _j.length) !== null && _k !== void 0 ? _k : 0) === 0) ||
187
247
  (((_o = (_m = (_l = this.config) === null || _l === void 0 ? void 0 : _l.menu) === null || _m === void 0 ? void 0 : _m.local) === null || _o === void 0 ? void 0 : _o.enableCustomLocalMenu) &&
188
- ((_t = (_s = (_r = (_q = (_p = this.config) === null || _p === void 0 ? void 0 : _p.menu) === null || _q === void 0 ? void 0 : _q.local) === null || _r === void 0 ? void 0 : _r.links) === null || _s === void 0 ? void 0 : _s.length) !== null && _t !== void 0 ? _t : 0) === 0)) && (h("div", null, h("h3", { class: "gray-text" }, "No installed ", ((_w = (_v = (_u = this.config) === null || _u === void 0 ? void 0 : _u.menu) === null || _v === void 0 ? void 0 : _v.local) === null || _w === void 0 ? void 0 : _w.name) || "menu", " found."), h("p", { class: "gray-text" }, "Please contact administration.")))))))))), h("div", { key: 'c47c1a2e57cbd3d42fcb19d559343a7104e092c0', id: "appPermissionErrorModal", class: "modal" }, h("div", { key: 'cd8a0b1837afc3089bda1bd4d9e7ec0c2a7c3f45', class: "modal-content" }, h("img", { key: 'e21aa2b61cbedff394e4cbbc6993fd06b3c3906e', src: "data:image/png;base64,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" }), h("h2", { key: '0ea76a87518b2a0c2a171bc0f40cb4767f6683e9', class: "green-text margin-b" }, "You don't have permission to access this application."), h("h3", { key: '1dc9d8f8f2ef3a34bf8cb887679c574a59fe5a75', class: "green-text" }, "Please contact the administration."), (this.config.defaultLink.url && this.showUnauthorizedModal) ?
248
+ ((_t = (_s = (_r = (_q = (_p = this.config) === null || _p === void 0 ? void 0 : _p.menu) === null || _q === void 0 ? void 0 : _q.local) === null || _r === void 0 ? void 0 : _r.links) === null || _s === void 0 ? void 0 : _s.length) !== null && _t !== void 0 ? _t : 0) === 0)) && (h("div", null, h("h3", { class: "gray-text" }, "No installed ", ((_w = (_v = (_u = this.config) === null || _u === void 0 ? void 0 : _u.menu) === null || _v === void 0 ? void 0 : _v.local) === null || _w === void 0 ? void 0 : _w.name) || "menu", " found."), h("p", { class: "gray-text" }, "Please contact administration.")))))))))), h("div", { key: '2a36c585f0f83380bc08b30141df91c1532b4a28', id: "appPermissionErrorModal", class: "modal" }, h("div", { key: '8fbbb80e22591c105c5010689d2f91909652ed8c', class: "modal-content" }, h("img", { key: '1621c2b97802968da0e6429e1b1571eb4080ef68', src: "data:image/png;base64,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" }), h("h2", { key: 'f9a6ba63c8d9ca116ad61a1eae25fca676b88767', class: "green-text margin-b" }, "You don't have permission to access this application."), h("h3", { key: '12783289a6b8ef86c096457555f3371cbbde39dc', class: "green-text" }, "Please contact the administration."), (this.config.defaultLink.url && this.showUnauthorizedModal) ?
189
249
  h("div", null, h("h4", { class: "gray-text" }, "You will be automatically redirected to the portal."), h("div", { id: "countdown" }, h("div", { id: "countdown-number" }), h("svg", null, h("circle", { r: "18", cx: "20", cy: "20" }))))
190
250
  : h("div", null))));
191
251
  }
@@ -217,8 +277,10 @@ export class DashButtonComponent {
217
277
  "tags": [],
218
278
  "text": ""
219
279
  },
220
- "attribute": "show-post-login-text",
280
+ "getter": false,
281
+ "setter": false,
221
282
  "reflect": false,
283
+ "attribute": "show-post-login-text",
222
284
  "defaultValue": "false"
223
285
  },
224
286
  "silentCheckSso": {
@@ -235,8 +297,10 @@ export class DashButtonComponent {
235
297
  "tags": [],
236
298
  "text": ""
237
299
  },
238
- "attribute": "silent-check-sso",
300
+ "getter": false,
301
+ "setter": false,
239
302
  "reflect": false,
303
+ "attribute": "silent-check-sso",
240
304
  "defaultValue": "false"
241
305
  },
242
306
  "redirectUri": {
@@ -247,14 +311,16 @@ export class DashButtonComponent {
247
311
  "resolved": "string",
248
312
  "references": {}
249
313
  },
250
- "required": false,
314
+ "required": true,
251
315
  "optional": false,
252
316
  "docs": {
253
317
  "tags": [],
254
318
  "text": ""
255
319
  },
256
- "attribute": "redirect-uri",
257
- "reflect": false
320
+ "getter": false,
321
+ "setter": false,
322
+ "reflect": false,
323
+ "attribute": "redirect-uri"
258
324
  },
259
325
  "authMethod": {
260
326
  "type": "string",
@@ -270,8 +336,10 @@ export class DashButtonComponent {
270
336
  "tags": [],
271
337
  "text": ""
272
338
  },
273
- "attribute": "auth-method",
339
+ "getter": false,
340
+ "setter": false,
274
341
  "reflect": false,
342
+ "attribute": "auth-method",
275
343
  "defaultValue": "\"check-sso\""
276
344
  },
277
345
  "portalApiUrl": {
@@ -288,8 +356,10 @@ export class DashButtonComponent {
288
356
  "tags": [],
289
357
  "text": ""
290
358
  },
291
- "attribute": "portal-api-url",
359
+ "getter": false,
360
+ "setter": false,
292
361
  "reflect": false,
362
+ "attribute": "portal-api-url",
293
363
  "defaultValue": "\"\""
294
364
  },
295
365
  "plmUrl": {
@@ -306,8 +376,10 @@ export class DashButtonComponent {
306
376
  "tags": [],
307
377
  "text": ""
308
378
  },
309
- "attribute": "plm-url",
379
+ "getter": false,
380
+ "setter": false,
310
381
  "reflect": false,
382
+ "attribute": "plm-url",
311
383
  "defaultValue": "\"https://productlicensemanager-zdzw.cloud.zdzw-project.com\""
312
384
  },
313
385
  "showUnauthorizedModal": {
@@ -324,8 +396,10 @@ export class DashButtonComponent {
324
396
  "tags": [],
325
397
  "text": ""
326
398
  },
327
- "attribute": "show-unauthorized-modal",
399
+ "getter": false,
400
+ "setter": false,
328
401
  "reflect": false,
402
+ "attribute": "show-unauthorized-modal",
329
403
  "defaultValue": "false"
330
404
  },
331
405
  "primaryColor": {
@@ -342,8 +416,10 @@ export class DashButtonComponent {
342
416
  "tags": [],
343
417
  "text": ""
344
418
  },
345
- "attribute": "primary-color",
419
+ "getter": false,
420
+ "setter": false,
346
421
  "reflect": false,
422
+ "attribute": "primary-color",
347
423
  "defaultValue": "\"\""
348
424
  },
349
425
  "accentColor": {
@@ -360,9 +436,31 @@ export class DashButtonComponent {
360
436
  "tags": [],
361
437
  "text": ""
362
438
  },
363
- "attribute": "accent-color",
439
+ "getter": false,
440
+ "setter": false,
364
441
  "reflect": false,
442
+ "attribute": "accent-color",
365
443
  "defaultValue": "\"\""
444
+ },
445
+ "notificationPosition": {
446
+ "type": "string",
447
+ "mutable": false,
448
+ "complexType": {
449
+ "original": "\"left\" | \"right\"",
450
+ "resolved": "\"left\" | \"right\"",
451
+ "references": {}
452
+ },
453
+ "required": false,
454
+ "optional": false,
455
+ "docs": {
456
+ "tags": [],
457
+ "text": ""
458
+ },
459
+ "getter": false,
460
+ "setter": false,
461
+ "reflect": false,
462
+ "attribute": "notification-position",
463
+ "defaultValue": "\"left\""
366
464
  }
367
465
  };
368
466
  }
@@ -383,4 +481,3 @@ export class DashButtonComponent {
383
481
  }
384
482
  static get elementRef() { return "el"; }
385
483
  }
386
- //# sourceMappingURL=dash-button.js.map
@@ -0,0 +1,7 @@
1
+ import { setAssetPath } from "@stencil/core";
2
+ export default async () => {
3
+ if (typeof window !== 'undefined') {
4
+ // Ensures asset paths map cleanly
5
+ setAssetPath(window.location.origin + '/assets/ice-notification-component/');
6
+ }
7
+ };
@@ -1,2 +1 @@
1
1
  export * from './components';
2
- //# sourceMappingURL=index.js.map
@@ -22,6 +22,8 @@ const DEFAULT_CONFIG = {
22
22
  isLoading: true,
23
23
  duration: 800
24
24
  },
25
+ allowedGlobalDomain: '',
26
+ whitelistedUrls: ''
25
27
  };
26
28
  // Fetch config from API
27
29
  class ConfigService {
@@ -56,4 +58,3 @@ class ConfigService {
56
58
  }
57
59
  }
58
60
  export const configService = ConfigService.getInstance();
59
- //# sourceMappingURL=config.js.map
@@ -76,4 +76,3 @@ class MenuService {
76
76
  }
77
77
  }
78
78
  export const menuService = new MenuService();
79
- //# sourceMappingURL=menu.js.map