dash-button-web 0.0.6 → 0.0.7
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.
- package/dist/cjs/dash-button.cjs.entry.js +28 -43
- package/dist/cjs/dash-button.cjs.entry.js.map +1 -1
- package/dist/cjs/{index-991e75df.js → index-065225eb.js} +5 -1
- package/dist/{esm/index-8310c457.js.map → cjs/index-065225eb.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/web-compnont.cjs.js +2 -2
- package/dist/collection/components/my-component/dash-button.css +40 -0
- package/dist/collection/components/my-component/dash-button.js +45 -42
- package/dist/collection/components/my-component/dash-button.js.map +1 -1
- package/dist/components/dash-button.js +30 -43
- package/dist/components/dash-button.js.map +1 -1
- package/dist/esm/dash-button.entry.js +28 -43
- package/dist/esm/dash-button.entry.js.map +1 -1
- package/dist/esm/{index-8310c457.js → index-2b1034cf.js} +5 -1
- package/dist/esm/index-2b1034cf.js.map +1 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/web-compnont.js +3 -3
- package/dist/types/components/my-component/dash-button.d.ts +2 -0
- package/dist/types/components.d.ts +2 -0
- package/dist/web-compnont/p-bdb5725e.js +3 -0
- package/dist/web-compnont/p-bdb5725e.js.map +1 -0
- package/dist/web-compnont/{p-392f1e3f.entry.js → p-e4d4f568.entry.js} +3 -3
- package/dist/web-compnont/p-e4d4f568.entry.js.map +1 -0
- package/dist/web-compnont/web-compnont.esm.js +1 -1
- package/dist/web-compnont/web-compnont.esm.js.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/index-991e75df.js.map +0 -1
- package/dist/web-compnont/p-392f1e3f.entry.js.map +0 -1
- package/dist/web-compnont/p-4bd42d49.js +0 -3
- package/dist/web-compnont/p-4bd42d49.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, h, g as getElement } from './index-
|
|
1
|
+
import { r as registerInstance, h, g as getElement } from './index-2b1034cf.js';
|
|
2
2
|
|
|
3
3
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
4
4
|
|
|
@@ -2473,7 +2473,7 @@ function Keycloak (config) {
|
|
|
2473
2473
|
}
|
|
2474
2474
|
}
|
|
2475
2475
|
|
|
2476
|
-
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}}";
|
|
2476
|
+
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)}}";
|
|
2477
2477
|
const DashButtonStyle0 = dashButtonCss;
|
|
2478
2478
|
|
|
2479
2479
|
const DashButtonComponent = class {
|
|
@@ -2490,6 +2490,7 @@ const DashButtonComponent = class {
|
|
|
2490
2490
|
this.portalUrl = "";
|
|
2491
2491
|
this.marketplaceUrl = "";
|
|
2492
2492
|
this.showUnauthorizedModal = false;
|
|
2493
|
+
this.postTextDelayDuration = undefined;
|
|
2493
2494
|
this.keycloak = new Keycloak({
|
|
2494
2495
|
url: this.keycloakUri,
|
|
2495
2496
|
realm: this.realm,
|
|
@@ -2499,9 +2500,24 @@ const DashButtonComponent = class {
|
|
|
2499
2500
|
this.givenName = "";
|
|
2500
2501
|
this.silentCheckSsoRedirectUri = window.location.origin + '/assets/verificar-sso.html';
|
|
2501
2502
|
this.appList = [];
|
|
2503
|
+
this.showPostLoginLoadingSpinner = false;
|
|
2502
2504
|
}
|
|
2503
2505
|
;
|
|
2504
2506
|
componentWillLoad() {
|
|
2507
|
+
//
|
|
2508
|
+
// User set post-text-delay-duration for displaying loading spinner
|
|
2509
|
+
//
|
|
2510
|
+
if (this.postTextDelayDuration > 0) {
|
|
2511
|
+
// Show loading spinner
|
|
2512
|
+
this.showPostLoginLoadingSpinner = true;
|
|
2513
|
+
// Removing a loading spinner after the delay period ending
|
|
2514
|
+
setTimeout(() => {
|
|
2515
|
+
this.showPostLoginLoadingSpinner = false;
|
|
2516
|
+
}, this.postTextDelayDuration);
|
|
2517
|
+
}
|
|
2518
|
+
//
|
|
2519
|
+
// Init Keycloak
|
|
2520
|
+
//
|
|
2505
2521
|
this.initKeycloak().then(() => {
|
|
2506
2522
|
// Check if the user is authenticated
|
|
2507
2523
|
if (this.isAuth) {
|
|
@@ -2545,43 +2561,6 @@ const DashButtonComponent = class {
|
|
|
2545
2561
|
});
|
|
2546
2562
|
}
|
|
2547
2563
|
});
|
|
2548
|
-
// // Get all application data associated with organization ID
|
|
2549
|
-
// const appIdList = this.appId.replace(/'/g, '').split(',');
|
|
2550
|
-
// var appListIds:Array<string> = []
|
|
2551
|
-
// if(this.appId) {
|
|
2552
|
-
// // const appList:Array<string> = JSON.parse(localStorage.getItem('keycloak')).idTokenParsed.APP_ID;
|
|
2553
|
-
// // Get app ID from marketplace (Compare product_id with app_id)
|
|
2554
|
-
// this.getAppList().then((response: Response) => response.json())
|
|
2555
|
-
// .then(response => {
|
|
2556
|
-
// // Save application data to a global array
|
|
2557
|
-
// if(this.appList.length <= 0 ) {
|
|
2558
|
-
// this.appList = response
|
|
2559
|
-
// }
|
|
2560
|
-
// // Save application IDs to a local array
|
|
2561
|
-
// appListIds.push(...this.appList.map(obj => obj['product_id']))
|
|
2562
|
-
// // Check if the user has permission to access the selected application
|
|
2563
|
-
// if(appIdList.filter(id => appListIds.includes(id)).length == 0) {
|
|
2564
|
-
// // Show modal
|
|
2565
|
-
// const appErrorModal = this.el.shadowRoot.querySelector('#appPermissionErrorModal');
|
|
2566
|
-
// appErrorModal.style.display = "block";
|
|
2567
|
-
// // If a redirect URL is provided, show the loading spinner
|
|
2568
|
-
// if (this.portalUrl) {
|
|
2569
|
-
// var countdownNumberEl = this.el.shadowRoot.getElementById('countdown-number');
|
|
2570
|
-
// var countdown = 6;
|
|
2571
|
-
// countdownNumberEl.textContent = countdown.toString();
|
|
2572
|
-
// setInterval(() => {
|
|
2573
|
-
// countdown = --countdown <= 0 ? 6 : countdown;
|
|
2574
|
-
// countdownNumberEl.textContent = countdown.toString();
|
|
2575
|
-
// // Once the countdown finishes, redirect to the provided URL
|
|
2576
|
-
// if(countdown == 1) {
|
|
2577
|
-
// // appErrorModal.style.display = "none";
|
|
2578
|
-
// window.location.replace(this.portalUrl.toString());
|
|
2579
|
-
// }
|
|
2580
|
-
// }, 1000);
|
|
2581
|
-
// }
|
|
2582
|
-
// }
|
|
2583
|
-
// })
|
|
2584
|
-
// }
|
|
2585
2564
|
}
|
|
2586
2565
|
async initKeycloak() {
|
|
2587
2566
|
// Remove the initiation time permission localstorage object
|
|
@@ -2627,9 +2606,15 @@ const DashButtonComponent = class {
|
|
|
2627
2606
|
appModal.style.display = "none";
|
|
2628
2607
|
}
|
|
2629
2608
|
render() {
|
|
2630
|
-
return h("div", { key: '
|
|
2609
|
+
return h("div", { key: '2d24aa9842755844cff0091432697b28dbe3719a' }, h("div", { key: '99991837185cd9d0cb6785828ce18ec59cdb6659' }, (() => {
|
|
2631
2610
|
if (this.isAuth && this.showPostLoginText) {
|
|
2632
|
-
|
|
2611
|
+
// User set post-text-delay-duration for displaying loading spinner
|
|
2612
|
+
if (this.showPostLoginLoadingSpinner) {
|
|
2613
|
+
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))));
|
|
2614
|
+
}
|
|
2615
|
+
else {
|
|
2616
|
+
return (h("a", { href: this.redirectUri, id: "login-btn", class: "button button-link" }, h("span", { class: "button-text button-text-full-width" }, "Go to Dashboard")));
|
|
2617
|
+
}
|
|
2633
2618
|
}
|
|
2634
2619
|
else if (this.isAuth) {
|
|
2635
2620
|
return (h("div", { id: "profile-btn", class: "dropdown" }, h("button", { type: "button", class: "button" }, h("span", { class: "button-profile" }, h("img", { src: "https://i.pravatar.cc/100?img=32", alt: "" })), h("span", { id: "given-name", class: "button-text" }, this.givenName), h("div", { class: "button-icon" }, h("span", { class: "gg-menu-grid-r" }))), h("div", { class: "dropdown-content" }, h("a", { onClick: this.showModal.bind(this), id: "applications-btn" }, "Applications"), h("a", { href: this.portalUrl, target: '_blank', id: "applications-btn" }, "Portal"), h("a", { href: this.marketplaceUrl, target: '_blank', id: "applications-btn" }, "Marketplace"), h("a", { onClick: this.logout.bind(this), id: "logout-btn" }, "Logout"))));
|
|
@@ -2637,9 +2622,9 @@ const DashButtonComponent = class {
|
|
|
2637
2622
|
else {
|
|
2638
2623
|
return (h("button", { onClick: this.login.bind(this), id: "login-btn", type: "button", class: "button" }, h("span", { class: "button-text" }, "Login")));
|
|
2639
2624
|
}
|
|
2640
|
-
})()), h("div", { key: '
|
|
2625
|
+
})()), h("div", { key: '38c4054577687e6af7222d5633b4191c8d63efab', id: "appListModal", class: "modal" }, h("div", { key: 'aabb2b68614c0897b88a907979419f584388f60a', class: "modal-content" }, h("span", { key: '42696988b0954589250e4a6f212bf00954d4e2d0', onClick: this.closeModal.bind(this), class: "close" }, "\u00D7"), h("h3", { key: '08eb82158bfe231595c79e131b161b3066553d33' }, "Applications"), h("div", { key: 'e838130cfa6cdf222cc7455fb1d4b01ab9105492', class: "modal-body" }, this.appList.length > 0 ? this.appList.map(app => {
|
|
2641
2626
|
return (h("a", { class: "external-app-link", target: '_blank', href: "https://" + app.shortname + "-zdzw" + this.portalUrl.replace(/(^\w+:|^)\/\//, '').replace('.portal-frontend-zdzw', '') }, h("div", { class: "modal-app" }, h("div", null, app.name))));
|
|
2642
|
-
}) : h("div", null, h("h3", { class: "gray-text" }, "Not installed application found."), " ", h("p", { class: "gray-text" }, "Please contact administration."))))), h("div", { key: '
|
|
2627
|
+
}) : h("div", null, h("h3", { class: "gray-text" }, "Not installed application found."), " ", h("p", { class: "gray-text" }, "Please contact administration."))))), h("div", { key: '6b350ae02d908c7272a87ca967080b5d64ec0590', id: "appPermissionErrorModal", class: "modal" }, h("div", { key: 'df481e3196372ab1477503bb53c9a149874cc020', class: "modal-content" }, h("img", { key: 'eb31969132393cef988ab6904634617cbd8a7627', src: "data:image/png;base64,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" }), h("h2", { key: 'dbc50750de599994e5623a6f8596aae96280ad45', class: "green-text margin-b" }, "You don't have permission to access this application."), h("h3", { key: '950f04d0e34e57b99a1cddb5cf2156755572020a', class: "green-text" }, "Please contact the administration."), (this.portalUrl && this.showUnauthorizedModal) ?
|
|
2643
2628
|
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" }))))
|
|
2644
2629
|
: h("div", null))));
|
|
2645
2630
|
}
|