dash-button-web 0.0.6 → 0.0.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 (30) hide show
  1. package/dist/cjs/dash-button.cjs.entry.js +38 -47
  2. package/dist/cjs/dash-button.cjs.entry.js.map +1 -1
  3. package/dist/cjs/{index-991e75df.js → index-065225eb.js} +5 -1
  4. package/dist/{esm/index-8310c457.js.map → cjs/index-065225eb.js.map} +1 -1
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/web-compnont.cjs.js +2 -2
  7. package/dist/collection/components/my-component/dash-button.css +40 -0
  8. package/dist/collection/components/my-component/dash-button.js +74 -47
  9. package/dist/collection/components/my-component/dash-button.js.map +1 -1
  10. package/dist/components/dash-button.js +41 -47
  11. package/dist/components/dash-button.js.map +1 -1
  12. package/dist/esm/dash-button.entry.js +38 -47
  13. package/dist/esm/dash-button.entry.js.map +1 -1
  14. package/dist/esm/{index-8310c457.js → index-2b1034cf.js} +5 -1
  15. package/dist/esm/index-2b1034cf.js.map +1 -0
  16. package/dist/esm/loader.js +3 -3
  17. package/dist/esm/web-compnont.js +3 -3
  18. package/dist/types/components/my-component/dash-button.d.ts +4 -1
  19. package/dist/types/components.d.ts +4 -0
  20. package/dist/web-compnont/{p-392f1e3f.entry.js → p-099f7d20.entry.js} +3 -3
  21. package/dist/web-compnont/p-099f7d20.entry.js.map +1 -0
  22. package/dist/web-compnont/p-bdb5725e.js +3 -0
  23. package/dist/web-compnont/p-bdb5725e.js.map +1 -0
  24. package/dist/web-compnont/web-compnont.esm.js +1 -1
  25. package/dist/web-compnont/web-compnont.esm.js.map +1 -1
  26. package/package.json +1 -1
  27. package/dist/cjs/index-991e75df.js.map +0 -1
  28. package/dist/web-compnont/p-392f1e3f.entry.js.map +0 -1
  29. package/dist/web-compnont/p-4bd42d49.js +0 -3
  30. package/dist/web-compnont/p-4bd42d49.js.map +0 -1
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-991e75df.js');
5
+ const index = require('./index-065225eb.js');
6
6
 
7
7
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
8
8
 
@@ -2477,7 +2477,7 @@ function Keycloak (config) {
2477
2477
  }
2478
2478
  }
2479
2479
 
2480
- const dashButtonCss = ".button{display:flex;height:50px;padding:0;background:#3e7671;border:none;outline:none;border-radius:5px;overflow:hidden;font-size:16px;font-weight:500;cursor:pointer;min-width:220px;max-width:220px}.button:hover{background:#008168}.button:active{background:#3e7671}.button-text{display:block;margin:auto;padding:0 24px;color:#fff;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;width:80px}.button-icon{margin:auto;padding:10px}.button-profile{display:inline-flex;align-items:center;color:#fff}.button-profile img{height:50px}.button-text-full-width{width:auto!important}.button-link{text-decoration:none!important}.gg-menu-grid-r{color:#fff;box-sizing:border-box;position:relative;display:block;transform:scale(var(--ggs,1));width:16px;height:16px}.gg-menu-grid-r::before{content:\"\";display:block;box-sizing:border-box;position:absolute;width:4px;height:4px;background:currentColor;box-shadow:0 6px 0,\n 6px 6px 0,\n 12px 6px 0,\n 6px 12px 0,\n 12px 12px 0,\n 6px 0 0,\n 12px 0 0,\n 0 12px 0}.dropdown{position:relative;display:inline-block}.dropdown-content{display:none;position:absolute;right:0;background-color:#f9f9f9;min-width:180px;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);z-index:1;border-radius:5px}.dropdown-content a{color:#71797E;padding:16px 20px;text-decoration:none;display:block;cursor:pointer}.dropdown-content a:hover{background-color:#f1f1f1;color:#000;opacity:0.7}.dropdown:hover .dropdown-content{display:block}.modal{display:none;position:fixed;z-index:1;padding-top:100px;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgb(0,0,0);background-color:rgba(0,0,0,0.4);text-align:center}.modal-content{background-color:#fefefe;margin:auto;padding:20px;border:1px solid #888;width:40%}.modal-body{max-height:50vh;overflow-y:auto}.close{color:#aaaaaa;float:right;font-size:28px;font-weight:bold}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer}.modal-app{background-color:#c3e9bc;padding:15px;margin:10px;border-radius:5px}.external-app-link{text-decoration:none;color:#000}.gray-text{color:#606060}.green-text{color:#3e7671}#countdown{position:relative;margin:auto;margin-top:30px;height:40px;width:40px;text-align:center}#countdown-number{color:#2e2e2e;display:inline-block;line-height:40px}svg{position:absolute;top:0;right:0;width:40px;height:40px;transform:rotateY(-180deg) rotateZ(-90deg)}svg circle{stroke-dasharray:113px;stroke-dashoffset:0px;stroke-linecap:round;stroke-width:4px;stroke:#008168;fill:none;animation:countdown 6s linear infinite forwards}@keyframes countdown{from{stroke-dashoffset:0px}to{stroke-dashoffset:113px}}";
2480
+ const dashButtonCss = ".button{display:flex;height:50px;padding:0;background:#3e7671;border:none;outline:none;border-radius:5px;overflow:hidden;font-size:16px;font-weight:500;cursor:pointer;min-width:220px;max-width:220px}.button:hover{background:#008168}.button:active{background:#3e7671}.button-text{display:block;margin:auto;padding:0 24px;color:#fff;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;width:80px}.button-icon{margin:auto;padding:10px}.button-profile{display:inline-flex;align-items:center;color:#fff}.button-profile img{height:50px}.button-text-full-width{width:auto!important}.button-link{text-decoration:none!important}.gg-menu-grid-r{color:#fff;box-sizing:border-box;position:relative;display:block;transform:scale(var(--ggs,1));width:16px;height:16px}.gg-menu-grid-r::before{content:\"\";display:block;box-sizing:border-box;position:absolute;width:4px;height:4px;background:currentColor;box-shadow:0 6px 0,\n 6px 6px 0,\n 12px 6px 0,\n 6px 12px 0,\n 12px 12px 0,\n 6px 0 0,\n 12px 0 0,\n 0 12px 0}.dropdown{position:relative;display:inline-block}.dropdown-content{display:none;position:absolute;right:0;background-color:#f9f9f9;min-width:180px;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);z-index:1;border-radius:5px}.dropdown-content a{color:#71797E;padding:16px 20px;text-decoration:none;display:block;cursor:pointer}.dropdown-content a:hover{background-color:#f1f1f1;color:#000;opacity:0.7}.dropdown:hover .dropdown-content{display:block}.modal{display:none;position:fixed;z-index:1;padding-top:100px;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgb(0,0,0);background-color:rgba(0,0,0,0.4);text-align:center}.modal-content{background-color:#fefefe;margin:auto;padding:20px;border:1px solid #888;width:40%}.modal-body{max-height:50vh;overflow-y:auto}.close{color:#aaaaaa;float:right;font-size:28px;font-weight:bold}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer}.modal-app{background-color:#c3e9bc;padding:15px;margin:10px;border-radius:5px}.external-app-link{text-decoration:none;color:#000}.gray-text{color:#606060}.green-text{color:#3e7671}#countdown{position:relative;margin:auto;margin-top:30px;height:40px;width:40px;text-align:center}#countdown-number{color:#2e2e2e;display:inline-block;line-height:40px}svg{position:absolute;top:0;right:0;width:40px;height:40px;transform:rotateY(-180deg) rotateZ(-90deg)}svg circle{stroke-dasharray:113px;stroke-dashoffset:0px;stroke-linecap:round;stroke-width:4px;stroke:#008168;fill:none;animation:countdown 6s linear infinite forwards}@keyframes countdown{from{stroke-dashoffset:0px}to{stroke-dashoffset:113px}}.lds-ring{color:#fff}.lds-ring{display:flex;justify-content:center;align-items:center;margin:auto;position:relative}.lds-ring div{box-sizing:border-box;display:block;position:absolute;width:30px;height:30px;margin:3px;border:3px solid currentColor;border-radius:50%;animation:lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;border-color:currentColor transparent transparent transparent}.lds-ring div:nth-child(1){animation-delay:-0.45s}.lds-ring div:nth-child(2){animation-delay:-0.3s}.lds-ring div:nth-child(3){animation-delay:-0.15s}@keyframes lds-ring{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}";
2481
2481
  const DashButtonStyle0 = dashButtonCss;
2482
2482
 
2483
2483
  const DashButtonComponent = class {
@@ -2492,8 +2492,10 @@ const DashButtonComponent = class {
2492
2492
  this.clientId = "";
2493
2493
  this.appId = "";
2494
2494
  this.portalUrl = "";
2495
- this.marketplaceUrl = "";
2495
+ this.marketplaceUrl = "https://marketplace-zdzw.cloud.zdzw-project.com";
2496
+ this.plmUrl = "https://productlicensemanager-zdzw.cloud.zdzw-project.com";
2496
2497
  this.showUnauthorizedModal = false;
2498
+ this.postTextDelayDuration = undefined;
2497
2499
  this.keycloak = new Keycloak({
2498
2500
  url: this.keycloakUri,
2499
2501
  realm: this.realm,
@@ -2503,13 +2505,29 @@ const DashButtonComponent = class {
2503
2505
  this.givenName = "";
2504
2506
  this.silentCheckSsoRedirectUri = window.location.origin + '/assets/verificar-sso.html';
2505
2507
  this.appList = [];
2508
+ this.showPostLoginLoadingSpinner = false;
2506
2509
  }
2507
2510
  ;
2508
2511
  componentWillLoad() {
2512
+ //
2513
+ // User set post-text-delay-duration for displaying loading spinner
2514
+ //
2515
+ if (this.postTextDelayDuration > 0) {
2516
+ // Show loading spinner
2517
+ this.showPostLoginLoadingSpinner = true;
2518
+ // Removing a loading spinner after the delay period ending
2519
+ setTimeout(() => {
2520
+ this.showPostLoginLoadingSpinner = false;
2521
+ }, this.postTextDelayDuration);
2522
+ }
2523
+ //
2524
+ // Init Keycloak
2525
+ //
2509
2526
  this.initKeycloak().then(() => {
2510
2527
  // Check if the user is authenticated
2511
2528
  if (this.isAuth) {
2512
- this.getAppList().then(res => {
2529
+ const _token = JSON.parse(localStorage.getItem('keycloak')).token;
2530
+ this.getAppList(_token).then(res => {
2513
2531
  this.appList = res;
2514
2532
  // If the user has set an app ID, check if they have permission to access
2515
2533
  if (this.appId) {
@@ -2549,43 +2567,6 @@ const DashButtonComponent = class {
2549
2567
  });
2550
2568
  }
2551
2569
  });
2552
- // // Get all application data associated with organization ID
2553
- // const appIdList = this.appId.replace(/'/g, '').split(',');
2554
- // var appListIds:Array<string> = []
2555
- // if(this.appId) {
2556
- // // const appList:Array<string> = JSON.parse(localStorage.getItem('keycloak')).idTokenParsed.APP_ID;
2557
- // // Get app ID from marketplace (Compare product_id with app_id)
2558
- // this.getAppList().then((response: Response) => response.json())
2559
- // .then(response => {
2560
- // // Save application data to a global array
2561
- // if(this.appList.length <= 0 ) {
2562
- // this.appList = response
2563
- // }
2564
- // // Save application IDs to a local array
2565
- // appListIds.push(...this.appList.map(obj => obj['product_id']))
2566
- // // Check if the user has permission to access the selected application
2567
- // if(appIdList.filter(id => appListIds.includes(id)).length == 0) {
2568
- // // Show modal
2569
- // const appErrorModal = this.el.shadowRoot.querySelector('#appPermissionErrorModal');
2570
- // appErrorModal.style.display = "block";
2571
- // // If a redirect URL is provided, show the loading spinner
2572
- // if (this.portalUrl) {
2573
- // var countdownNumberEl = this.el.shadowRoot.getElementById('countdown-number');
2574
- // var countdown = 6;
2575
- // countdownNumberEl.textContent = countdown.toString();
2576
- // setInterval(() => {
2577
- // countdown = --countdown <= 0 ? 6 : countdown;
2578
- // countdownNumberEl.textContent = countdown.toString();
2579
- // // Once the countdown finishes, redirect to the provided URL
2580
- // if(countdown == 1) {
2581
- // // appErrorModal.style.display = "none";
2582
- // window.location.replace(this.portalUrl.toString());
2583
- // }
2584
- // }, 1000);
2585
- // }
2586
- // }
2587
- // })
2588
- // }
2589
2570
  }
2590
2571
  async initKeycloak() {
2591
2572
  // Remove the initiation time permission localstorage object
@@ -2603,14 +2584,18 @@ const DashButtonComponent = class {
2603
2584
  }
2604
2585
  });
2605
2586
  }
2606
- async getAppList() {
2587
+ async getAppList(token) {
2607
2588
  // const token = await JSON.parse(localStorage.getItem('keycloak')).token;
2608
2589
  // const response = await fetch(this.marketplaceUrl + '/api/v1/product/nameAndShortName', {
2609
2590
  // headers: new Headers({
2610
2591
  // 'Authorization': 'Bearer ' + token,
2611
2592
  // }),
2612
2593
  // })
2613
- const response = await fetch(this.marketplaceUrl + '/api/v1/product/nameAndShortName');
2594
+ const response = await fetch(this.plmUrl + '/api/v1/product/nameAndShortNameOrg', {
2595
+ headers: new Headers({
2596
+ 'Authorization': 'Bearer ' + token,
2597
+ }),
2598
+ });
2614
2599
  const jsonObj = await response.json();
2615
2600
  return jsonObj;
2616
2601
  }
@@ -2631,9 +2616,15 @@ const DashButtonComponent = class {
2631
2616
  appModal.style.display = "none";
2632
2617
  }
2633
2618
  render() {
2634
- return index.h("div", { key: '45d3cee1eb5857f688bf82eccfa5fcf31ec0e649' }, index.h("div", { key: '2e0fbfe2fd3e969f03d31eba64732407abc9319f' }, (() => {
2619
+ return index.h("div", { key: '7843bbee4940a6a252e61442f8d77d467ee769c2' }, index.h("div", { key: 'd0940bd721a4eab5533cb7b136fabe8353cbb535' }, (() => {
2635
2620
  if (this.isAuth && this.showPostLoginText) {
2636
- return (index.h("a", { href: this.redirectUri, id: "login-btn", class: "button button-link" }, index.h("span", { class: "button-text button-text-full-width" }, "Go to Dashboard")));
2621
+ // User set post-text-delay-duration for displaying loading spinner
2622
+ if (this.showPostLoginLoadingSpinner) {
2623
+ return (index.h("a", { id: "login-btn", class: "button button-link" }, index.h("div", { class: "lds-ring" }, index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null))));
2624
+ }
2625
+ else {
2626
+ return (index.h("a", { href: this.redirectUri, id: "login-btn", class: "button button-link" }, index.h("span", { class: "button-text button-text-full-width" }, "Go to Dashboard")));
2627
+ }
2637
2628
  }
2638
2629
  else if (this.isAuth) {
2639
2630
  return (index.h("div", { id: "profile-btn", class: "dropdown" }, index.h("button", { type: "button", class: "button" }, index.h("span", { class: "button-profile" }, index.h("img", { src: "https://i.pravatar.cc/100?img=32", alt: "" })), index.h("span", { id: "given-name", class: "button-text" }, this.givenName), index.h("div", { class: "button-icon" }, index.h("span", { class: "gg-menu-grid-r" }))), index.h("div", { class: "dropdown-content" }, index.h("a", { onClick: this.showModal.bind(this), id: "applications-btn" }, "Applications"), index.h("a", { href: this.portalUrl, target: '_blank', id: "applications-btn" }, "Portal"), index.h("a", { href: this.marketplaceUrl, target: '_blank', id: "applications-btn" }, "Marketplace"), index.h("a", { onClick: this.logout.bind(this), id: "logout-btn" }, "Logout"))));
@@ -2641,9 +2632,9 @@ const DashButtonComponent = class {
2641
2632
  else {
2642
2633
  return (index.h("button", { onClick: this.login.bind(this), id: "login-btn", type: "button", class: "button" }, index.h("span", { class: "button-text" }, "Login")));
2643
2634
  }
2644
- })()), index.h("div", { key: 'fc06bdd5f74a4b79a21f1ddab5629f6a898a261a', id: "appListModal", class: "modal" }, index.h("div", { key: '667fa5a708f790818d2694bb5a7c811a64fbbff3', class: "modal-content" }, index.h("span", { key: 'ec1df58c4d4ed0a3231e9fc9457cd596ca8e048b', onClick: this.closeModal.bind(this), class: "close" }, "\u00D7"), index.h("h3", { key: '2f9bae87a635e8904f5f0fe4ad8076a347370404' }, "Applications"), index.h("div", { key: '930a0de8699c574a7d9438ab0ac973830734327a', class: "modal-body" }, this.appList.length > 0 ? this.appList.map(app => {
2635
+ })()), index.h("div", { key: '2c2f55d80917b2dc2b7a9279f2f76bc3a7f2e202', id: "appListModal", class: "modal" }, index.h("div", { key: '90d14c23cdbb1a129ba99f00518cff0a0a65baeb', class: "modal-content" }, index.h("span", { key: '6879c9fdc1d9a4a7075616f96ff63d95f8eaaea7', onClick: this.closeModal.bind(this), class: "close" }, "\u00D7"), index.h("h3", { key: '06a0268e396c3aeda8cf90e93e3dde405743abcd' }, "Applications"), index.h("div", { key: '2f77c0e5d35acdb101cfe9caf2b6e26be241dae9', class: "modal-body" }, this.appList.length > 0 ? this.appList.map(app => {
2645
2636
  return (index.h("a", { class: "external-app-link", target: '_blank', href: "https://" + app.shortname + "-zdzw" + this.portalUrl.replace(/(^\w+:|^)\/\//, '').replace('.portal-frontend-zdzw', '') }, index.h("div", { class: "modal-app" }, index.h("div", null, app.name))));
2646
- }) : index.h("div", null, index.h("h3", { class: "gray-text" }, "Not installed application found."), " ", index.h("p", { class: "gray-text" }, "Please contact administration."))))), index.h("div", { key: 'c01ee35c13b76484278a3a6bc38917784aa1f4d0', id: "appPermissionErrorModal", class: "modal" }, index.h("div", { key: 'cb330533d75233c44a520851adfee2aad581f192', class: "modal-content" }, index.h("img", { key: 'b8ef10fdc78a54a35ae91b6798f3eeaa13b05cf6', src: "data:image/png;base64,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" }), index.h("h2", { key: '64db3526910c2eff61f8f59d445ba8fd2fe0cae1', class: "green-text margin-b" }, "You don't have permission to access this application."), index.h("h3", { key: '845136246b4bdaa80c71cb44d9e483ed11b8727f', class: "green-text" }, "Please contact the administration."), (this.portalUrl && this.showUnauthorizedModal) ?
2637
+ }) : index.h("div", null, index.h("h3", { class: "gray-text" }, "Not installed application found."), " ", index.h("p", { class: "gray-text" }, "Please contact administration."))))), index.h("div", { key: '0faa929f74523fdc8922e614c2724c9bf0e1d3c5', id: "appPermissionErrorModal", class: "modal" }, index.h("div", { key: 'e1781eab4a7c178fdc382398f966ee86bad972b6', class: "modal-content" }, index.h("img", { key: '486cd3878509f64c95c26e5e9ea75bb807e8b938', src: "data:image/png;base64,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" }), index.h("h2", { key: '36e08402d28c42466ec9634ed9f1ba0da06164f5', class: "green-text margin-b" }, "You don't have permission to access this application."), index.h("h3", { key: '2ef0a81a83ae10f1f2232c7d196ecab7ab7b4a65', class: "green-text" }, "Please contact the administration."), (this.portalUrl && this.showUnauthorizedModal) ?
2647
2638
  index.h("div", null, index.h("h4", { class: "gray-text" }, "You will be automatically redirected to the portal."), index.h("div", { id: "countdown" }, index.h("div", { id: "countdown-number" }), index.h("svg", null, index.h("circle", { r: "18", cx: "20", cy: "20" }))))
2648
2639
  : index.h("div", null))));
2649
2640
  }