@up_si_vale/sivale-componentes-angular 1.0.1 → 1.0.2
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/esm2022/lib/molecules/alert/alert.component.mjs +79 -0
- package/esm2022/lib/organisms/sidebar/sidebar-icon.component.mjs +91 -0
- package/esm2022/lib/organisms/sidebar/sidebar.component.mjs +115 -0
- package/esm2022/public-api.mjs +5 -1
- package/fesm2022/up_si_vale-sivale-componentes-angular.mjs +274 -2
- package/fesm2022/up_si_vale-sivale-componentes-angular.mjs.map +1 -1
- package/lib/molecules/alert/alert.component.d.ts +29 -0
- package/lib/organisms/sidebar/sidebar-icon.component.d.ts +8 -0
- package/lib/organisms/sidebar/sidebar.component.d.ts +47 -0
- package/package.json +10 -5
- package/public-api.d.ts +3 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
export class AlertComponent {
|
|
6
|
+
color = 'default';
|
|
7
|
+
size = 'floating';
|
|
8
|
+
alertTitle = '';
|
|
9
|
+
supportingText;
|
|
10
|
+
showIcon = true;
|
|
11
|
+
showActions = true;
|
|
12
|
+
actionVariant = 'link';
|
|
13
|
+
dismissLabel = 'Descartar';
|
|
14
|
+
primaryActionLabel = 'Ver cambios';
|
|
15
|
+
showClose = true;
|
|
16
|
+
closeAriaLabel = 'Cerrar';
|
|
17
|
+
dismiss = new EventEmitter();
|
|
18
|
+
primaryAction = new EventEmitter();
|
|
19
|
+
closed = new EventEmitter();
|
|
20
|
+
get alertClasses() {
|
|
21
|
+
return [
|
|
22
|
+
'sv-alert',
|
|
23
|
+
`sv-alert--${this.color}`,
|
|
24
|
+
this.size === 'full-width' ? 'sv-alert--full-width' : ''
|
|
25
|
+
].filter(Boolean).join(' ');
|
|
26
|
+
}
|
|
27
|
+
get actionClass() {
|
|
28
|
+
return this.actionVariant === 'button' ? 'sv-alert__btn' : 'sv-alert__action';
|
|
29
|
+
}
|
|
30
|
+
get primaryActionClass() {
|
|
31
|
+
return this.actionVariant === 'button'
|
|
32
|
+
? 'sv-alert__btn sv-alert__btn--primary'
|
|
33
|
+
: 'sv-alert__action sv-alert__action--primary';
|
|
34
|
+
}
|
|
35
|
+
handleDismiss() {
|
|
36
|
+
this.dismiss.emit();
|
|
37
|
+
}
|
|
38
|
+
handlePrimaryAction() {
|
|
39
|
+
this.primaryAction.emit();
|
|
40
|
+
}
|
|
41
|
+
handleClose() {
|
|
42
|
+
this.closed.emit();
|
|
43
|
+
}
|
|
44
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AlertComponent, isStandalone: true, selector: "app-alert", inputs: { color: "color", size: "size", alertTitle: "alertTitle", supportingText: "supportingText", showIcon: "showIcon", showActions: "showActions", actionVariant: "actionVariant", dismissLabel: "dismissLabel", primaryActionLabel: "primaryActionLabel", showClose: "showClose", closeAriaLabel: "closeAriaLabel" }, outputs: { dismiss: "dismiss", primaryAction: "primaryAction", closed: "closed" }, ngImport: i0, template: "<div [class]=\"alertClasses\" role=\"alert\">\n <div class=\"sv-alert__container\">\n <div class=\"sv-alert__icon\" *ngIf=\"showIcon\" aria-hidden=\"true\">\n <svg *ngIf=\"color === 'error'\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M7.86 2h8.28L22 7.86v8.28L16.14 22H7.86L2 16.14V7.86L7.86 2Z\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8v4M12 16h.01\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n <svg *ngIf=\"color === 'warning'\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0Z\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 9v4M12 17h.01\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n <svg *ngIf=\"color === 'success'\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M22 4 12 14.01l-3-3\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n <svg *ngIf=\"color !== 'error' && color !== 'warning' && color !== 'success'\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16v-4M12 8h.01\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </div>\n\n <div class=\"sv-alert__content\">\n <div class=\"sv-alert__body\">\n <p class=\"sv-alert__title\">{{ alertTitle }}</p>\n <p class=\"sv-alert__text\" *ngIf=\"supportingText\">{{ supportingText }}</p>\n </div>\n\n <div class=\"sv-alert__actions\" *ngIf=\"showActions\">\n <button type=\"button\" [class]=\"actionClass\" (click)=\"handleDismiss()\">{{ dismissLabel }}</button>\n <button type=\"button\" [class]=\"primaryActionClass\" (click)=\"handlePrimaryAction()\">{{ primaryActionLabel }}</button>\n </div>\n </div>\n\n <button\n type=\"button\"\n class=\"sv-alert__close\"\n *ngIf=\"showClose\"\n [attr.aria-label]=\"closeAriaLabel\"\n (click)=\"handleClose()\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18 6 6 18M6 6l12 12\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n </div>\n</div>\n", styles: [".sv-alert{--sv-alert-bg: #ffffff;--sv-alert-border: #d4d4d4;--sv-alert-icon-fg: #737373;--sv-alert-icon-bg: #ffffff;--sv-alert-title: #404040;--sv-alert-text: #525252;--sv-alert-link: #2b3c7f;--sv-alert-solid: #364b9f;position:relative;display:flex;flex-direction:column;align-items:center;width:100%;padding:32px;background-color:var(--sv-alert-bg);border:1px solid var(--sv-alert-border);border-radius:12px;box-shadow:0 1px 2px #0000000d;font-family:Roboto,sans-serif;box-sizing:border-box}.sv-alert *{box-sizing:border-box}.sv-alert__container{display:flex;align-items:flex-start;gap:32px;width:100%}.sv-alert__icon{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--sv-alert-border);border-radius:8px;background-color:var(--sv-alert-icon-bg);color:var(--sv-alert-icon-fg);box-shadow:0 1px 2px #0000000d,inset 0 0 0 1px #0000002e,inset 0 -2px #0000000d}.sv-alert__icon svg{width:20px;height:20px;display:block}.sv-alert__content{display:flex;flex:1 0 0;flex-direction:column;align-items:flex-start;gap:24px;min-width:0}.sv-alert__body{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:100%}.sv-alert__title{margin:0;padding-right:56px;width:100%;font-family:Roboto,sans-serif;font-weight:600;font-size:14px;line-height:20px;color:var(--sv-alert-title);word-break:break-word}.sv-alert__text{margin:0;width:100%;font-family:Roboto,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:var(--sv-alert-text);word-break:break-word}.sv-alert__actions{display:flex;align-items:center;gap:24px;flex-shrink:0}.sv-alert__action{padding:0;border:none;background:none;font-family:Roboto,sans-serif;font-weight:600;font-size:14px;line-height:20px;color:var(--sv-alert-text);white-space:nowrap;cursor:pointer;transition:opacity .2s ease-in-out}.sv-alert__action:hover{opacity:.7}.sv-alert__action:focus-visible{outline:2px solid var(--sv-alert-link);outline-offset:2px;border-radius:4px}.sv-alert__action--primary{color:var(--sv-alert-link)}.sv-alert__close{position:absolute;top:7px;right:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:none;color:var(--sv-alert-icon-fg);cursor:pointer;transition:background-color .2s ease-in-out}.sv-alert__close:hover{background-color:#0000000d}.sv-alert__close:focus-visible{outline:2px solid var(--sv-alert-link);outline-offset:-2px}.sv-alert__close svg{width:20px;height:20px;display:block}.sv-alert--brand{--sv-alert-bg: #f3f4f9;--sv-alert-border: #2b3c7f;--sv-alert-icon-fg: #364b9f;--sv-alert-icon-bg: #e5e8f3}.sv-alert--gray{--sv-alert-icon-fg: #737373;--sv-alert-icon-bg: #f5f5f5}.sv-alert--error{--sv-alert-bg: #fef2f2;--sv-alert-border: #dc2626;--sv-alert-icon-fg: #dc2626;--sv-alert-icon-bg: #fee2e2}.sv-alert--warning{--sv-alert-bg: #fefce8;--sv-alert-border: #ca8a04;--sv-alert-icon-fg: #ca8a04;--sv-alert-icon-bg: #fef9c3}.sv-alert--success{--sv-alert-bg: #f0fdf4;--sv-alert-border: #16a34a;--sv-alert-icon-fg: #16a34a;--sv-alert-icon-bg: #dcfce7}.sv-alert--brand .sv-alert__icon,.sv-alert--gray .sv-alert__icon,.sv-alert--error .sv-alert__icon,.sv-alert--warning .sv-alert__icon,.sv-alert--success .sv-alert__icon{border:none;border-radius:9999px;box-shadow:none}.sv-alert--full-width{padding:0;border:none;border-bottom:1px solid var(--sv-alert-border);border-radius:0;box-shadow:none}.sv-alert--full-width .sv-alert__container{align-items:center;gap:24px;max-width:1280px;padding:24px 32px}.sv-alert--full-width .sv-alert__content{flex-direction:row;align-items:center;gap:24px}.sv-alert--full-width .sv-alert__body{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:2px 12px;width:auto;flex:1 0 0;min-width:0}.sv-alert--full-width .sv-alert__title,.sv-alert--full-width .sv-alert__text{width:auto;padding-right:0}.sv-alert--full-width .sv-alert__close{position:static;align-self:center}.sv-alert__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;border:1px solid var(--sv-alert-solid);border-radius:8px;background-color:#fff;font-family:Roboto,sans-serif;font-weight:600;font-size:14px;line-height:20px;color:var(--sv-alert-title);white-space:nowrap;cursor:pointer;box-shadow:0 1px 2px #0000000d,inset 0 0 0 1px #0000002e,inset 0 -2px #0000000d;transition:filter .2s ease-in-out}.sv-alert__btn:hover{filter:brightness(.97)}.sv-alert__btn:focus-visible{outline:2px solid var(--sv-alert-solid);outline-offset:2px}.sv-alert__btn--primary{border-color:#ffffff1f;border-width:2px;background-color:var(--sv-alert-solid);color:#fff}@media (max-width: 768px){.sv-alert{padding:16px}.sv-alert__container{flex-direction:column;align-items:flex-start;gap:16px}.sv-alert__content{width:100%}.sv-alert__title{padding-right:40px}.sv-alert--full-width{padding:0}.sv-alert--full-width .sv-alert__container{flex-direction:column;align-items:flex-start;gap:32px;padding:32px 16px}.sv-alert--full-width .sv-alert__content{flex-direction:column;align-items:flex-start;gap:16px;width:100%}.sv-alert--full-width .sv-alert__body{flex-direction:column;gap:4px;width:100%}.sv-alert--full-width .sv-alert__actions:has(.sv-alert__btn){flex-direction:column-reverse;align-items:stretch;gap:12px;width:100%}.sv-alert--full-width .sv-alert__close{position:absolute;top:16px;right:8px}.sv-alert__btn{width:100%}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AlertComponent, decorators: [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'app-alert', standalone: true, imports: [CommonModule], template: "<div [class]=\"alertClasses\" role=\"alert\">\n <div class=\"sv-alert__container\">\n <div class=\"sv-alert__icon\" *ngIf=\"showIcon\" aria-hidden=\"true\">\n <svg *ngIf=\"color === 'error'\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M7.86 2h8.28L22 7.86v8.28L16.14 22H7.86L2 16.14V7.86L7.86 2Z\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8v4M12 16h.01\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n <svg *ngIf=\"color === 'warning'\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0Z\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 9v4M12 17h.01\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n <svg *ngIf=\"color === 'success'\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M22 4 12 14.01l-3-3\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n <svg *ngIf=\"color !== 'error' && color !== 'warning' && color !== 'success'\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16v-4M12 8h.01\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </div>\n\n <div class=\"sv-alert__content\">\n <div class=\"sv-alert__body\">\n <p class=\"sv-alert__title\">{{ alertTitle }}</p>\n <p class=\"sv-alert__text\" *ngIf=\"supportingText\">{{ supportingText }}</p>\n </div>\n\n <div class=\"sv-alert__actions\" *ngIf=\"showActions\">\n <button type=\"button\" [class]=\"actionClass\" (click)=\"handleDismiss()\">{{ dismissLabel }}</button>\n <button type=\"button\" [class]=\"primaryActionClass\" (click)=\"handlePrimaryAction()\">{{ primaryActionLabel }}</button>\n </div>\n </div>\n\n <button\n type=\"button\"\n class=\"sv-alert__close\"\n *ngIf=\"showClose\"\n [attr.aria-label]=\"closeAriaLabel\"\n (click)=\"handleClose()\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18 6 6 18M6 6l12 12\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n </div>\n</div>\n", styles: [".sv-alert{--sv-alert-bg: #ffffff;--sv-alert-border: #d4d4d4;--sv-alert-icon-fg: #737373;--sv-alert-icon-bg: #ffffff;--sv-alert-title: #404040;--sv-alert-text: #525252;--sv-alert-link: #2b3c7f;--sv-alert-solid: #364b9f;position:relative;display:flex;flex-direction:column;align-items:center;width:100%;padding:32px;background-color:var(--sv-alert-bg);border:1px solid var(--sv-alert-border);border-radius:12px;box-shadow:0 1px 2px #0000000d;font-family:Roboto,sans-serif;box-sizing:border-box}.sv-alert *{box-sizing:border-box}.sv-alert__container{display:flex;align-items:flex-start;gap:32px;width:100%}.sv-alert__icon{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--sv-alert-border);border-radius:8px;background-color:var(--sv-alert-icon-bg);color:var(--sv-alert-icon-fg);box-shadow:0 1px 2px #0000000d,inset 0 0 0 1px #0000002e,inset 0 -2px #0000000d}.sv-alert__icon svg{width:20px;height:20px;display:block}.sv-alert__content{display:flex;flex:1 0 0;flex-direction:column;align-items:flex-start;gap:24px;min-width:0}.sv-alert__body{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:100%}.sv-alert__title{margin:0;padding-right:56px;width:100%;font-family:Roboto,sans-serif;font-weight:600;font-size:14px;line-height:20px;color:var(--sv-alert-title);word-break:break-word}.sv-alert__text{margin:0;width:100%;font-family:Roboto,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:var(--sv-alert-text);word-break:break-word}.sv-alert__actions{display:flex;align-items:center;gap:24px;flex-shrink:0}.sv-alert__action{padding:0;border:none;background:none;font-family:Roboto,sans-serif;font-weight:600;font-size:14px;line-height:20px;color:var(--sv-alert-text);white-space:nowrap;cursor:pointer;transition:opacity .2s ease-in-out}.sv-alert__action:hover{opacity:.7}.sv-alert__action:focus-visible{outline:2px solid var(--sv-alert-link);outline-offset:2px;border-radius:4px}.sv-alert__action--primary{color:var(--sv-alert-link)}.sv-alert__close{position:absolute;top:7px;right:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:none;color:var(--sv-alert-icon-fg);cursor:pointer;transition:background-color .2s ease-in-out}.sv-alert__close:hover{background-color:#0000000d}.sv-alert__close:focus-visible{outline:2px solid var(--sv-alert-link);outline-offset:-2px}.sv-alert__close svg{width:20px;height:20px;display:block}.sv-alert--brand{--sv-alert-bg: #f3f4f9;--sv-alert-border: #2b3c7f;--sv-alert-icon-fg: #364b9f;--sv-alert-icon-bg: #e5e8f3}.sv-alert--gray{--sv-alert-icon-fg: #737373;--sv-alert-icon-bg: #f5f5f5}.sv-alert--error{--sv-alert-bg: #fef2f2;--sv-alert-border: #dc2626;--sv-alert-icon-fg: #dc2626;--sv-alert-icon-bg: #fee2e2}.sv-alert--warning{--sv-alert-bg: #fefce8;--sv-alert-border: #ca8a04;--sv-alert-icon-fg: #ca8a04;--sv-alert-icon-bg: #fef9c3}.sv-alert--success{--sv-alert-bg: #f0fdf4;--sv-alert-border: #16a34a;--sv-alert-icon-fg: #16a34a;--sv-alert-icon-bg: #dcfce7}.sv-alert--brand .sv-alert__icon,.sv-alert--gray .sv-alert__icon,.sv-alert--error .sv-alert__icon,.sv-alert--warning .sv-alert__icon,.sv-alert--success .sv-alert__icon{border:none;border-radius:9999px;box-shadow:none}.sv-alert--full-width{padding:0;border:none;border-bottom:1px solid var(--sv-alert-border);border-radius:0;box-shadow:none}.sv-alert--full-width .sv-alert__container{align-items:center;gap:24px;max-width:1280px;padding:24px 32px}.sv-alert--full-width .sv-alert__content{flex-direction:row;align-items:center;gap:24px}.sv-alert--full-width .sv-alert__body{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:2px 12px;width:auto;flex:1 0 0;min-width:0}.sv-alert--full-width .sv-alert__title,.sv-alert--full-width .sv-alert__text{width:auto;padding-right:0}.sv-alert--full-width .sv-alert__close{position:static;align-self:center}.sv-alert__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;border:1px solid var(--sv-alert-solid);border-radius:8px;background-color:#fff;font-family:Roboto,sans-serif;font-weight:600;font-size:14px;line-height:20px;color:var(--sv-alert-title);white-space:nowrap;cursor:pointer;box-shadow:0 1px 2px #0000000d,inset 0 0 0 1px #0000002e,inset 0 -2px #0000000d;transition:filter .2s ease-in-out}.sv-alert__btn:hover{filter:brightness(.97)}.sv-alert__btn:focus-visible{outline:2px solid var(--sv-alert-solid);outline-offset:2px}.sv-alert__btn--primary{border-color:#ffffff1f;border-width:2px;background-color:var(--sv-alert-solid);color:#fff}@media (max-width: 768px){.sv-alert{padding:16px}.sv-alert__container{flex-direction:column;align-items:flex-start;gap:16px}.sv-alert__content{width:100%}.sv-alert__title{padding-right:40px}.sv-alert--full-width{padding:0}.sv-alert--full-width .sv-alert__container{flex-direction:column;align-items:flex-start;gap:32px;padding:32px 16px}.sv-alert--full-width .sv-alert__content{flex-direction:column;align-items:flex-start;gap:16px;width:100%}.sv-alert--full-width .sv-alert__body{flex-direction:column;gap:4px;width:100%}.sv-alert--full-width .sv-alert__actions:has(.sv-alert__btn){flex-direction:column-reverse;align-items:stretch;gap:12px;width:100%}.sv-alert--full-width .sv-alert__close{position:absolute;top:16px;right:8px}.sv-alert__btn{width:100%}}\n"] }]
|
|
50
|
+
}], propDecorators: { color: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], size: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}], alertTitle: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}], supportingText: [{
|
|
57
|
+
type: Input
|
|
58
|
+
}], showIcon: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], showActions: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}], actionVariant: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}], dismissLabel: [{
|
|
65
|
+
type: Input
|
|
66
|
+
}], primaryActionLabel: [{
|
|
67
|
+
type: Input
|
|
68
|
+
}], showClose: [{
|
|
69
|
+
type: Input
|
|
70
|
+
}], closeAriaLabel: [{
|
|
71
|
+
type: Input
|
|
72
|
+
}], dismiss: [{
|
|
73
|
+
type: Output
|
|
74
|
+
}], primaryAction: [{
|
|
75
|
+
type: Output
|
|
76
|
+
}], closed: [{
|
|
77
|
+
type: Output
|
|
78
|
+
}] } });
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2xlY3VsZXMvYWxlcnQvYWxlcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2xlY3VsZXMvYWxlcnQvYWxlcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQWEvQyxNQUFNLE9BQU8sY0FBYztJQUNoQixLQUFLLEdBQWUsU0FBUyxDQUFDO0lBQzlCLElBQUksR0FBYyxVQUFVLENBQUM7SUFDN0IsVUFBVSxHQUFXLEVBQUUsQ0FBQztJQUN4QixjQUFjLENBQVU7SUFDeEIsUUFBUSxHQUFZLElBQUksQ0FBQztJQUN6QixXQUFXLEdBQVksSUFBSSxDQUFDO0lBQzVCLGFBQWEsR0FBdUIsTUFBTSxDQUFDO0lBQzNDLFlBQVksR0FBVyxXQUFXLENBQUM7SUFDbkMsa0JBQWtCLEdBQVcsYUFBYSxDQUFDO0lBQzNDLFNBQVMsR0FBWSxJQUFJLENBQUM7SUFDMUIsY0FBYyxHQUFXLFFBQVEsQ0FBQztJQUVqQyxPQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUNuQyxhQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUN6QyxNQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUU1QyxJQUFJLFlBQVk7UUFDZCxPQUFPO1lBQ0wsVUFBVTtZQUNWLGFBQWEsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUN6QixJQUFJLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDekQsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxhQUFhLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDO0lBQ2hGLENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLElBQUksQ0FBQyxhQUFhLEtBQUssUUFBUTtZQUNwQyxDQUFDLENBQUMsc0NBQXNDO1lBQ3hDLENBQUMsQ0FBQyw0Q0FBNEMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO3dHQTdDVSxjQUFjOzRGQUFkLGNBQWMsa2RDZDNCLHE5RkE2Q0EseTBLRG5DWSxZQUFZOzs0RkFJWCxjQUFjO2tCQVAxQixTQUFTOytCQUNFLFdBQVcsY0FDVCxJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUM7OEJBS2QsS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUVJLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuZXhwb3J0IHR5cGUgQWxlcnRDb2xvciA9ICdkZWZhdWx0JyB8ICdicmFuZCcgfCAnZ3JheScgfCAnZXJyb3InIHwgJ3dhcm5pbmcnIHwgJ3N1Y2Nlc3MnO1xuZXhwb3J0IHR5cGUgQWxlcnRTaXplID0gJ2Zsb2F0aW5nJyB8ICdmdWxsLXdpZHRoJztcbmV4cG9ydCB0eXBlIEFsZXJ0QWN0aW9uVmFyaWFudCA9ICdsaW5rJyB8ICdidXR0b24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYWxlcnQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWxlcnQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBbGVydENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNvbG9yOiBBbGVydENvbG9yID0gJ2RlZmF1bHQnO1xuICBASW5wdXQoKSBzaXplOiBBbGVydFNpemUgPSAnZmxvYXRpbmcnO1xuICBASW5wdXQoKSBhbGVydFRpdGxlOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgc3VwcG9ydGluZ1RleHQ/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNob3dJY29uOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd0FjdGlvbnM6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBhY3Rpb25WYXJpYW50OiBBbGVydEFjdGlvblZhcmlhbnQgPSAnbGluayc7XG4gIEBJbnB1dCgpIGRpc21pc3NMYWJlbDogc3RyaW5nID0gJ0Rlc2NhcnRhcic7XG4gIEBJbnB1dCgpIHByaW1hcnlBY3Rpb25MYWJlbDogc3RyaW5nID0gJ1ZlciBjYW1iaW9zJztcbiAgQElucHV0KCkgc2hvd0Nsb3NlOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgY2xvc2VBcmlhTGFiZWw6IHN0cmluZyA9ICdDZXJyYXInO1xuXG4gIEBPdXRwdXQoKSBkaXNtaXNzID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgcHJpbWFyeUFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBnZXQgYWxlcnRDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFtcbiAgICAgICdzdi1hbGVydCcsXG4gICAgICBgc3YtYWxlcnQtLSR7dGhpcy5jb2xvcn1gLFxuICAgICAgdGhpcy5zaXplID09PSAnZnVsbC13aWR0aCcgPyAnc3YtYWxlcnQtLWZ1bGwtd2lkdGgnIDogJydcbiAgICBdLmZpbHRlcihCb29sZWFuKS5qb2luKCcgJyk7XG4gIH1cblxuICBnZXQgYWN0aW9uQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpb25WYXJpYW50ID09PSAnYnV0dG9uJyA/ICdzdi1hbGVydF9fYnRuJyA6ICdzdi1hbGVydF9fYWN0aW9uJztcbiAgfVxuXG4gIGdldCBwcmltYXJ5QWN0aW9uQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpb25WYXJpYW50ID09PSAnYnV0dG9uJ1xuICAgICAgPyAnc3YtYWxlcnRfX2J0biBzdi1hbGVydF9fYnRuLS1wcmltYXJ5J1xuICAgICAgOiAnc3YtYWxlcnRfX2FjdGlvbiBzdi1hbGVydF9fYWN0aW9uLS1wcmltYXJ5JztcbiAgfVxuXG4gIGhhbmRsZURpc21pc3MoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNtaXNzLmVtaXQoKTtcbiAgfVxuXG4gIGhhbmRsZVByaW1hcnlBY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5wcmltYXJ5QWN0aW9uLmVtaXQoKTtcbiAgfVxuXG4gIGhhbmRsZUNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcbiAgfVxufVxuIiwiPGRpdiBbY2xhc3NdPVwiYWxlcnRDbGFzc2VzXCIgcm9sZT1cImFsZXJ0XCI+XG4gIDxkaXYgY2xhc3M9XCJzdi1hbGVydF9fY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cInN2LWFsZXJ0X19pY29uXCIgKm5nSWY9XCJzaG93SWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgPHN2ZyAqbmdJZj1cImNvbG9yID09PSAnZXJyb3InXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICA8cGF0aCBkPVwiTTcuODYgMmg4LjI4TDIyIDcuODZ2OC4yOEwxNi4xNCAyMkg3Ljg2TDIgMTYuMTRWNy44Nkw3Ljg2IDJaXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgICAgPHBhdGggZD1cIk0xMiA4djRNMTIgMTZoLjAxXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgIDwvc3ZnPlxuICAgICAgPHN2ZyAqbmdJZj1cImNvbG9yID09PSAnd2FybmluZydcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgIDxwYXRoIGQ9XCJNMTAuMjkgMy44NiAxLjgyIDE4YTIgMiAwIDAgMCAxLjcxIDNoMTYuOTRhMiAyIDAgMCAwIDEuNzEtM0wxMy43MSAzLjg2YTIgMiAwIDAgMC0zLjQyIDBaXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgICAgPHBhdGggZD1cIk0xMiA5djRNMTIgMTdoLjAxXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgIDwvc3ZnPlxuICAgICAgPHN2ZyAqbmdJZj1cImNvbG9yID09PSAnc3VjY2VzcydcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgIDxwYXRoIGQ9XCJNMjIgMTEuMDhWMTJhMTAgMTAgMCAxIDEtNS45My05LjE0XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgICAgPHBhdGggZD1cIk0yMiA0IDEyIDE0LjAxbC0zLTNcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxuICAgICAgPC9zdmc+XG4gICAgICA8c3ZnICpuZ0lmPVwiY29sb3IgIT09ICdlcnJvcicgJiYgY29sb3IgIT09ICd3YXJuaW5nJyAmJiBjb2xvciAhPT0gJ3N1Y2Nlc3MnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICA8cGF0aCBkPVwiTTEyIDIyYzUuNTIzIDAgMTAtNC40NzcgMTAtMTBTMTcuNTIzIDIgMTIgMiAyIDYuNDc3IDIgMTJzNC40NzcgMTAgMTAgMTBaXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgICAgPHBhdGggZD1cIk0xMiAxNnYtNE0xMiA4aC4wMVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XG4gICAgICA8L3N2Zz5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJzdi1hbGVydF9fY29udGVudFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInN2LWFsZXJ0X19ib2R5XCI+XG4gICAgICAgIDxwIGNsYXNzPVwic3YtYWxlcnRfX3RpdGxlXCI+e3sgYWxlcnRUaXRsZSB9fTwvcD5cbiAgICAgICAgPHAgY2xhc3M9XCJzdi1hbGVydF9fdGV4dFwiICpuZ0lmPVwic3VwcG9ydGluZ1RleHRcIj57eyBzdXBwb3J0aW5nVGV4dCB9fTwvcD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwic3YtYWxlcnRfX2FjdGlvbnNcIiAqbmdJZj1cInNob3dBY3Rpb25zXCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIFtjbGFzc109XCJhY3Rpb25DbGFzc1wiIChjbGljayk9XCJoYW5kbGVEaXNtaXNzKClcIj57eyBkaXNtaXNzTGFiZWwgfX08L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW2NsYXNzXT1cInByaW1hcnlBY3Rpb25DbGFzc1wiIChjbGljayk9XCJoYW5kbGVQcmltYXJ5QWN0aW9uKClcIj57eyBwcmltYXJ5QWN0aW9uTGFiZWwgfX08L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjbGFzcz1cInN2LWFsZXJ0X19jbG9zZVwiXG4gICAgICAqbmdJZj1cInNob3dDbG9zZVwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImNsb3NlQXJpYUxhYmVsXCJcbiAgICAgIChjbGljayk9XCJoYW5kbGVDbG9zZSgpXCI+XG4gICAgICA8c3ZnIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgPHBhdGggZD1cIk0xOCA2IDYgMThNNiA2bDEyIDEyXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { Component, Input, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
export class SidebarIconComponent {
|
|
6
|
+
name;
|
|
7
|
+
size = 24;
|
|
8
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidebarIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SidebarIconComponent, isStandalone: true, selector: "svu-sidebar-icon", inputs: { name: "name", size: "size" }, ngImport: i0, template: `
|
|
10
|
+
<ng-container [ngSwitch]="name">
|
|
11
|
+
<svg *ngSwitchCase="'dashboard'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
12
|
+
<path d="M8 17h8M11.018 2.764L4.235 8.039c-.453.353-.68.53-.843.75a2 2 0 00-.318.65C3 9.704 3 9.991 3 10.565V17.8c0 1.12 0 1.68.218 2.108a2 2 0 00.874.874C4.52 21 5.08 21 6.2 21h11.6c1.12 0 1.68 0 2.108-.218a2 2 0 00.874-.874C21 19.48 21 18.92 21 17.8v-7.235c0-.574 0-.861-.074-1.126a2 2 0 00-.318-.65c-.163-.22-.39-.397-.843-.75l-6.783-5.275c-.351-.273-.527-.41-.72-.462a1 1 0 00-.508 0c-.193.052-.369.189-.72.462z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
13
|
+
</svg>
|
|
14
|
+
|
|
15
|
+
<svg *ngSwitchCase="'file-users'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
16
|
+
<path d="M14 2.27V6.4c0 .56 0 .84.109 1.054a1 1 0 00.437.437C14.76 8 15.04 8 15.6 8h4.13M8 15h8M8 11h4M14 2H8.8c-1.68 0-2.52 0-3.162.327a3 3 0 00-1.311 1.311C4 4.28 4 5.12 4 6.8v10.4c0 1.68 0 2.52.327 3.162a3 3 0 001.311 1.311C6.28 22 7.12 22 8.8 22h6.4c1.68 0 2.52 0 3.162-.327a3 3 0 001.311-1.311C20 19.72 20 18.88 20 17.2V8l-6-6z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
17
|
+
</svg>
|
|
18
|
+
|
|
19
|
+
<svg *ngSwitchCase="'card'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
20
|
+
<path d="M22 10H2M22 11V8.2C22 7.08 22 6.52 21.782 6.092a2 2 0 00-.874-.874C20.48 5 19.92 5 18.8 5H5.2C4.08 5 3.52 5 3.092 5.218a2 2 0 00-.874.874C2 6.52 2 7.08 2 8.2V15.8c0 1.12 0 1.68.218 2.108a2 2 0 00.874.874C3.52 19 4.08 19 5.2 19H18.8c1.12 0 1.68 0 2.108-.218a2 2 0 00.874-.874C22 17.48 22 16.92 22 15.8V11z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
21
|
+
</svg>
|
|
22
|
+
|
|
23
|
+
<svg *ngSwitchCase="'logout'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
24
|
+
<path d="M16 17l5-5m0 0l-5-5m5 5H9m0-9H7.8c-1.68 0-2.52 0-3.162.327a3 3 0 00-1.311 1.311C3 5.28 3 6.12 3 7.8v8.4c0 1.68 0 2.52.327 3.162a3 3 0 001.311 1.311C5.28 21 6.12 21 7.8 21H9" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
25
|
+
</svg>
|
|
26
|
+
|
|
27
|
+
<svg *ngSwitchCase="'chevron-down'" [attr.width]="size" [attr.height]="size" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
28
|
+
<path d="M5 7.5l5 5 5-5" stroke="currentColor" stroke-width="1.667" stroke-linecap="round" stroke-linejoin="round"/>
|
|
29
|
+
</svg>
|
|
30
|
+
|
|
31
|
+
<svg *ngSwitchCase="'settings'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
32
|
+
<path d="M12 15a3 3 0 100-6 3 3 0 000 6z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
33
|
+
<path d="M19.622 10.395l-1.097-2.65L20 6l-2-2-1.735 1.483-2.707-1.113L12.935 2h-1.954l-.632 2.401-2.645 1.115L6 4 4 6l1.453 1.789-1.08 2.657L2 11v2l2.401.655L5.516 16.3 4 18l2 2 1.791-1.46 2.606 1.072L11 22h2l.604-2.387 2.651-1.098C16.697 18.831 18 20 18 20l2-2-1.484-1.75 1.098-2.652 2.386-.62V11l-2.378-.605z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
34
|
+
</svg>
|
|
35
|
+
|
|
36
|
+
<svg *ngSwitchCase="'user'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
37
|
+
<path d="M20 21v-2a4 4 0 00-4-4H8a4 4 0 00-4 4v2M12 11a4 4 0 100-8 4 4 0 000 8z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
38
|
+
</svg>
|
|
39
|
+
|
|
40
|
+
<svg *ngSwitchCase="'home'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
41
|
+
<path d="M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2V9z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
42
|
+
<path d="M9 22V12h6v10" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
43
|
+
</svg>
|
|
44
|
+
</ng-container>
|
|
45
|
+
`, isInline: true, styles: [":host{display:inline-flex;line-height:0;color:currentColor}svg{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidebarIconComponent, decorators: [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'svu-sidebar-icon', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
50
|
+
<ng-container [ngSwitch]="name">
|
|
51
|
+
<svg *ngSwitchCase="'dashboard'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
52
|
+
<path d="M8 17h8M11.018 2.764L4.235 8.039c-.453.353-.68.53-.843.75a2 2 0 00-.318.65C3 9.704 3 9.991 3 10.565V17.8c0 1.12 0 1.68.218 2.108a2 2 0 00.874.874C4.52 21 5.08 21 6.2 21h11.6c1.12 0 1.68 0 2.108-.218a2 2 0 00.874-.874C21 19.48 21 18.92 21 17.8v-7.235c0-.574 0-.861-.074-1.126a2 2 0 00-.318-.65c-.163-.22-.39-.397-.843-.75l-6.783-5.275c-.351-.273-.527-.41-.72-.462a1 1 0 00-.508 0c-.193.052-.369.189-.72.462z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
53
|
+
</svg>
|
|
54
|
+
|
|
55
|
+
<svg *ngSwitchCase="'file-users'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
56
|
+
<path d="M14 2.27V6.4c0 .56 0 .84.109 1.054a1 1 0 00.437.437C14.76 8 15.04 8 15.6 8h4.13M8 15h8M8 11h4M14 2H8.8c-1.68 0-2.52 0-3.162.327a3 3 0 00-1.311 1.311C4 4.28 4 5.12 4 6.8v10.4c0 1.68 0 2.52.327 3.162a3 3 0 001.311 1.311C6.28 22 7.12 22 8.8 22h6.4c1.68 0 2.52 0 3.162-.327a3 3 0 001.311-1.311C20 19.72 20 18.88 20 17.2V8l-6-6z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
57
|
+
</svg>
|
|
58
|
+
|
|
59
|
+
<svg *ngSwitchCase="'card'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
60
|
+
<path d="M22 10H2M22 11V8.2C22 7.08 22 6.52 21.782 6.092a2 2 0 00-.874-.874C20.48 5 19.92 5 18.8 5H5.2C4.08 5 3.52 5 3.092 5.218a2 2 0 00-.874.874C2 6.52 2 7.08 2 8.2V15.8c0 1.12 0 1.68.218 2.108a2 2 0 00.874.874C3.52 19 4.08 19 5.2 19H18.8c1.12 0 1.68 0 2.108-.218a2 2 0 00.874-.874C22 17.48 22 16.92 22 15.8V11z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
61
|
+
</svg>
|
|
62
|
+
|
|
63
|
+
<svg *ngSwitchCase="'logout'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
64
|
+
<path d="M16 17l5-5m0 0l-5-5m5 5H9m0-9H7.8c-1.68 0-2.52 0-3.162.327a3 3 0 00-1.311 1.311C3 5.28 3 6.12 3 7.8v8.4c0 1.68 0 2.52.327 3.162a3 3 0 001.311 1.311C5.28 21 6.12 21 7.8 21H9" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
65
|
+
</svg>
|
|
66
|
+
|
|
67
|
+
<svg *ngSwitchCase="'chevron-down'" [attr.width]="size" [attr.height]="size" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
68
|
+
<path d="M5 7.5l5 5 5-5" stroke="currentColor" stroke-width="1.667" stroke-linecap="round" stroke-linejoin="round"/>
|
|
69
|
+
</svg>
|
|
70
|
+
|
|
71
|
+
<svg *ngSwitchCase="'settings'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
72
|
+
<path d="M12 15a3 3 0 100-6 3 3 0 000 6z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
73
|
+
<path d="M19.622 10.395l-1.097-2.65L20 6l-2-2-1.735 1.483-2.707-1.113L12.935 2h-1.954l-.632 2.401-2.645 1.115L6 4 4 6l1.453 1.789-1.08 2.657L2 11v2l2.401.655L5.516 16.3 4 18l2 2 1.791-1.46 2.606 1.072L11 22h2l.604-2.387 2.651-1.098C16.697 18.831 18 20 18 20l2-2-1.484-1.75 1.098-2.652 2.386-.62V11l-2.378-.605z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
74
|
+
</svg>
|
|
75
|
+
|
|
76
|
+
<svg *ngSwitchCase="'user'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
77
|
+
<path d="M20 21v-2a4 4 0 00-4-4H8a4 4 0 00-4 4v2M12 11a4 4 0 100-8 4 4 0 000 8z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
78
|
+
</svg>
|
|
79
|
+
|
|
80
|
+
<svg *ngSwitchCase="'home'" [attr.width]="size" [attr.height]="size" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
81
|
+
<path d="M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2V9z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
82
|
+
<path d="M9 22V12h6v10" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
83
|
+
</svg>
|
|
84
|
+
</ng-container>
|
|
85
|
+
`, styles: [":host{display:inline-flex;line-height:0;color:currentColor}svg{display:block}\n"] }]
|
|
86
|
+
}], propDecorators: { name: [{
|
|
87
|
+
type: Input
|
|
88
|
+
}], size: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}] } });
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci1pY29uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvb3JnYW5pc21zL3NpZGViYXIvc2lkZWJhci1pY29uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQWlFL0MsTUFBTSxPQUFPLG9CQUFvQjtJQUN0QixJQUFJLENBQW1CO0lBQ3ZCLElBQUksR0FBRyxFQUFFLENBQUM7d0dBRlIsb0JBQW9COzRGQUFwQixvQkFBb0Isb0hBaERyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0NULHdKQXRDUyxZQUFZOzs0RkFrRFgsb0JBQW9CO2tCQXJEaEMsU0FBUzsrQkFDRSxrQkFBa0IsY0FDaEIsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDLG1CQUNOLHVCQUF1QixDQUFDLE1BQU0sWUFDckM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9DVDs4QkFhUSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmV4cG9ydCB0eXBlIFNpZGViYXJJY29uTmFtZSA9XG4gIHwgJ2Rhc2hib2FyZCdcbiAgfCAnZmlsZS11c2VycydcbiAgfCAnY2FyZCdcbiAgfCAnbG9nb3V0J1xuICB8ICdjaGV2cm9uLWRvd24nXG4gIHwgJ3NldHRpbmdzJ1xuICB8ICd1c2VyJ1xuICB8ICdob21lJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3Z1LXNpZGViYXItaWNvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJuYW1lXCI+XG4gICAgICA8c3ZnICpuZ1N3aXRjaENhc2U9XCInZGFzaGJvYXJkJ1wiIFthdHRyLndpZHRoXT1cInNpemVcIiBbYXR0ci5oZWlnaHRdPVwic2l6ZVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgPHBhdGggZD1cIk04IDE3aDhNMTEuMDE4IDIuNzY0TDQuMjM1IDguMDM5Yy0uNDUzLjM1My0uNjguNTMtLjg0My43NWEyIDIgMCAwMC0uMzE4LjY1QzMgOS43MDQgMyA5Ljk5MSAzIDEwLjU2NVYxNy44YzAgMS4xMiAwIDEuNjguMjE4IDIuMTA4YTIgMiAwIDAwLjg3NC44NzRDNC41MiAyMSA1LjA4IDIxIDYuMiAyMWgxMS42YzEuMTIgMCAxLjY4IDAgMi4xMDgtLjIxOGEyIDIgMCAwMC44NzQtLjg3NEMyMSAxOS40OCAyMSAxOC45MiAyMSAxNy44di03LjIzNWMwLS41NzQgMC0uODYxLS4wNzQtMS4xMjZhMiAyIDAgMDAtLjMxOC0uNjVjLS4xNjMtLjIyLS4zOS0uMzk3LS44NDMtLjc1bC02Ljc4My01LjI3NWMtLjM1MS0uMjczLS41MjctLjQxLS43Mi0uNDYyYTEgMSAwIDAwLS41MDggMGMtLjE5My4wNTItLjM2OS4xODktLjcyLjQ2MnpcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxuICAgICAgPC9zdmc+XG5cbiAgICAgIDxzdmcgKm5nU3dpdGNoQ2FzZT1cIidmaWxlLXVzZXJzJ1wiIFthdHRyLndpZHRoXT1cInNpemVcIiBbYXR0ci5oZWlnaHRdPVwic2l6ZVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgPHBhdGggZD1cIk0xNCAyLjI3VjYuNGMwIC41NiAwIC44NC4xMDkgMS4wNTRhMSAxIDAgMDAuNDM3LjQzN0MxNC43NiA4IDE1LjA0IDggMTUuNiA4aDQuMTNNOCAxNWg4TTggMTFoNE0xNCAySDguOGMtMS42OCAwLTIuNTIgMC0zLjE2Mi4zMjdhMyAzIDAgMDAtMS4zMTEgMS4zMTFDNCA0LjI4IDQgNS4xMiA0IDYuOHYxMC40YzAgMS42OCAwIDIuNTIuMzI3IDMuMTYyYTMgMyAwIDAwMS4zMTEgMS4zMTFDNi4yOCAyMiA3LjEyIDIyIDguOCAyMmg2LjRjMS42OCAwIDIuNTIgMCAzLjE2Mi0uMzI3YTMgMyAwIDAwMS4zMTEtMS4zMTFDMjAgMTkuNzIgMjAgMTguODggMjAgMTcuMlY4bC02LTZ6XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgIDwvc3ZnPlxuXG4gICAgICA8c3ZnICpuZ1N3aXRjaENhc2U9XCInY2FyZCdcIiBbYXR0ci53aWR0aF09XCJzaXplXCIgW2F0dHIuaGVpZ2h0XT1cInNpemVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgIDxwYXRoIGQ9XCJNMjIgMTBIMk0yMiAxMVY4LjJDMjIgNy4wOCAyMiA2LjUyIDIxLjc4MiA2LjA5MmEyIDIgMCAwMC0uODc0LS44NzRDMjAuNDggNSAxOS45MiA1IDE4LjggNUg1LjJDNC4wOCA1IDMuNTIgNSAzLjA5MiA1LjIxOGEyIDIgMCAwMC0uODc0Ljg3NEMyIDYuNTIgMiA3LjA4IDIgOC4yVjE1LjhjMCAxLjEyIDAgMS42OC4yMTggMi4xMDhhMiAyIDAgMDAuODc0Ljg3NEMzLjUyIDE5IDQuMDggMTkgNS4yIDE5SDE4LjhjMS4xMiAwIDEuNjggMCAyLjEwOC0uMjE4YTIgMiAwIDAwLjg3NC0uODc0QzIyIDE3LjQ4IDIyIDE2LjkyIDIyIDE1LjhWMTF6XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgIDwvc3ZnPlxuXG4gICAgICA8c3ZnICpuZ1N3aXRjaENhc2U9XCInbG9nb3V0J1wiIFthdHRyLndpZHRoXT1cInNpemVcIiBbYXR0ci5oZWlnaHRdPVwic2l6ZVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgPHBhdGggZD1cIk0xNiAxN2w1LTVtMCAwbC01LTVtNSA1SDltMC05SDcuOGMtMS42OCAwLTIuNTIgMC0zLjE2Mi4zMjdhMyAzIDAgMDAtMS4zMTEgMS4zMTFDMyA1LjI4IDMgNi4xMiAzIDcuOHY4LjRjMCAxLjY4IDAgMi41Mi4zMjcgMy4xNjJhMyAzIDAgMDAxLjMxMSAxLjMxMUM1LjI4IDIxIDYuMTIgMjEgNy44IDIxSDlcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxuICAgICAgPC9zdmc+XG5cbiAgICAgIDxzdmcgKm5nU3dpdGNoQ2FzZT1cIidjaGV2cm9uLWRvd24nXCIgW2F0dHIud2lkdGhdPVwic2l6ZVwiIFthdHRyLmhlaWdodF09XCJzaXplXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICA8cGF0aCBkPVwiTTUgNy41bDUgNSA1LTVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIxLjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgIDwvc3ZnPlxuXG4gICAgICA8c3ZnICpuZ1N3aXRjaENhc2U9XCInc2V0dGluZ3MnXCIgW2F0dHIud2lkdGhdPVwic2l6ZVwiIFthdHRyLmhlaWdodF09XCJzaXplXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICA8cGF0aCBkPVwiTTEyIDE1YTMgMyAwIDEwMC02IDMgMyAwIDAwMCA2elwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XG4gICAgICAgIDxwYXRoIGQ9XCJNMTkuNjIyIDEwLjM5NWwtMS4wOTctMi42NUwyMCA2bC0yLTItMS43MzUgMS40ODMtMi43MDctMS4xMTNMMTIuOTM1IDJoLTEuOTU0bC0uNjMyIDIuNDAxLTIuNjQ1IDEuMTE1TDYgNCA0IDZsMS40NTMgMS43ODktMS4wOCAyLjY1N0wyIDExdjJsMi40MDEuNjU1TDUuNTE2IDE2LjMgNCAxOGwyIDIgMS43OTEtMS40NiAyLjYwNiAxLjA3MkwxMSAyMmgybC42MDQtMi4zODcgMi42NTEtMS4wOThDMTYuNjk3IDE4LjgzMSAxOCAyMCAxOCAyMGwyLTItMS40ODQtMS43NSAxLjA5OC0yLjY1MiAyLjM4Ni0uNjJWMTFsLTIuMzc4LS42MDV6XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgIDwvc3ZnPlxuXG4gICAgICA8c3ZnICpuZ1N3aXRjaENhc2U9XCIndXNlcidcIiBbYXR0ci53aWR0aF09XCJzaXplXCIgW2F0dHIuaGVpZ2h0XT1cInNpemVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgIDxwYXRoIGQ9XCJNMjAgMjF2LTJhNCA0IDAgMDAtNC00SDhhNCA0IDAgMDAtNCA0djJNMTIgMTFhNCA0IDAgMTAwLTggNCA0IDAgMDAwIDh6XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgIDwvc3ZnPlxuXG4gICAgICA8c3ZnICpuZ1N3aXRjaENhc2U9XCInaG9tZSdcIiBbYXR0ci53aWR0aF09XCJzaXplXCIgW2F0dHIuaGVpZ2h0XT1cInNpemVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgIDxwYXRoIGQ9XCJNMyA5bDktNyA5IDd2MTFhMiAyIDAgMDEtMiAySDVhMiAyIDAgMDEtMi0yVjl6XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgICAgPHBhdGggZD1cIk05IDIyVjEyaDZ2MTBcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxuICAgICAgPC9zdmc+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIGAsXG4gIHN0eWxlczogW2BcbiAgICA6aG9zdCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gICAgc3ZnIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgU2lkZWJhckljb25Db21wb25lbnQge1xuICBASW5wdXQoKSBuYW1lITogU2lkZWJhckljb25OYW1lO1xuICBASW5wdXQoKSBzaXplID0gMjQ7XG59XG4iXX0=
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy, HostListener, ContentChild, TemplateRef } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { RouterLink, RouterLinkActive } from '@angular/router';
|
|
4
|
+
import { SidebarIconComponent } from './sidebar-icon.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
export class SidebarComponent {
|
|
8
|
+
hostRef;
|
|
9
|
+
/** Items del menú (datos-driven). Soporta children para sub-navegación. */
|
|
10
|
+
items = [];
|
|
11
|
+
/** Logo: si se pasa la URL se renderiza; alternativamente proyecta contenido con `[sidebarLogo]`. */
|
|
12
|
+
logoSrc;
|
|
13
|
+
logoAlt = 'Logo';
|
|
14
|
+
/** Footer hibrido: si se pasan los inputs se usa el footer por defecto.
|
|
15
|
+
* Para footer custom, proyectar con `[sidebarFooter]` (gana sobre los inputs). */
|
|
16
|
+
userName;
|
|
17
|
+
userEmail;
|
|
18
|
+
/** Si no se pasa, se usa la primera letra de userName. */
|
|
19
|
+
userInitial;
|
|
20
|
+
/** Mostrar/ocultar el botón de logout en el menú de cuenta. */
|
|
21
|
+
showLogout = true;
|
|
22
|
+
logoutLabel = 'Cerrar sesión';
|
|
23
|
+
/** Click en un item (incluye expandibles y hojas). */
|
|
24
|
+
itemClick = new EventEmitter();
|
|
25
|
+
logout = new EventEmitter();
|
|
26
|
+
logoTpl;
|
|
27
|
+
footerTpl;
|
|
28
|
+
expandedKeys = new Set();
|
|
29
|
+
accountMenuOpen = false;
|
|
30
|
+
subsetMatch = {
|
|
31
|
+
paths: 'subset',
|
|
32
|
+
queryParams: 'ignored',
|
|
33
|
+
fragment: 'ignored',
|
|
34
|
+
matrixParams: 'ignored'
|
|
35
|
+
};
|
|
36
|
+
exactMatch = {
|
|
37
|
+
paths: 'exact',
|
|
38
|
+
queryParams: 'ignored',
|
|
39
|
+
fragment: 'ignored',
|
|
40
|
+
matrixParams: 'ignored'
|
|
41
|
+
};
|
|
42
|
+
constructor(hostRef) {
|
|
43
|
+
this.hostRef = hostRef;
|
|
44
|
+
}
|
|
45
|
+
get computedInitial() {
|
|
46
|
+
if (this.userInitial)
|
|
47
|
+
return this.userInitial;
|
|
48
|
+
return (this.userName?.trim().charAt(0) || '').toUpperCase();
|
|
49
|
+
}
|
|
50
|
+
isExpanded(item) {
|
|
51
|
+
return this.expandedKeys.has(item.label);
|
|
52
|
+
}
|
|
53
|
+
onItemClick(item) {
|
|
54
|
+
if (item.children?.length) {
|
|
55
|
+
if (this.expandedKeys.has(item.label)) {
|
|
56
|
+
this.expandedKeys.delete(item.label);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
this.expandedKeys.add(item.label);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
this.itemClick.emit(item);
|
|
63
|
+
}
|
|
64
|
+
toggleAccountMenu() {
|
|
65
|
+
this.accountMenuOpen = !this.accountMenuOpen;
|
|
66
|
+
}
|
|
67
|
+
onLogoutClick() {
|
|
68
|
+
this.accountMenuOpen = false;
|
|
69
|
+
this.logout.emit();
|
|
70
|
+
}
|
|
71
|
+
onDocumentClick(event) {
|
|
72
|
+
if (!this.accountMenuOpen)
|
|
73
|
+
return;
|
|
74
|
+
const footer = this.hostRef.nativeElement.querySelector('.svu-sidebar__footer');
|
|
75
|
+
if (footer && !footer.contains(event.target)) {
|
|
76
|
+
this.accountMenuOpen = false;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidebarComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
80
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SidebarComponent, isStandalone: true, selector: "svu-sidebar", inputs: { items: "items", logoSrc: "logoSrc", logoAlt: "logoAlt", userName: "userName", userEmail: "userEmail", userInitial: "userInitial", showLogout: "showLogout", logoutLabel: "logoutLabel" }, outputs: { itemClick: "itemClick", logout: "logout" }, host: { listeners: { "document:click": "onDocumentClick($event)" } }, queries: [{ propertyName: "logoTpl", first: true, predicate: ["sidebarLogo"], descendants: true, read: TemplateRef }, { propertyName: "footerTpl", first: true, predicate: ["sidebarFooter"], descendants: true, read: TemplateRef }], ngImport: i0, template: "<aside class=\"svu-sidebar\">\n <div class=\"svu-sidebar__content\">\n <div class=\"svu-sidebar__top\">\n <!-- Logo: slot proyectable o input -->\n <div class=\"svu-sidebar__logo\">\n <ng-container *ngIf=\"logoTpl; else defaultLogo\" [ngTemplateOutlet]=\"logoTpl\"></ng-container>\n <ng-template #defaultLogo>\n <img *ngIf=\"logoSrc\" [src]=\"logoSrc\" [alt]=\"logoAlt\" class=\"svu-sidebar__logo-img\" />\n </ng-template>\n </div>\n\n <!-- Navigation -->\n <nav class=\"svu-sidebar__nav\">\n <ng-container *ngFor=\"let item of items\">\n <!-- Item con children (expandible) -->\n <ng-container *ngIf=\"item.children?.length; else leafItem\">\n <div\n class=\"svu-sidebar__nav-item\"\n [class.svu-sidebar__nav-item--active]=\"parentActive.isActive\"\n (click)=\"onItemClick(item)\"\n [routerLink]=\"item.route || null\"\n routerLinkActive\n #parentActive=\"routerLinkActive\"\n [routerLinkActiveOptions]=\"subsetMatch\">\n <div class=\"svu-sidebar__nav-item-content\">\n <svu-sidebar-icon *ngIf=\"item.icon\" [name]=\"item.icon\" class=\"svu-sidebar__nav-icon\"></svu-sidebar-icon>\n <span class=\"svu-sidebar__nav-text\">{{ item.label }}</span>\n </div>\n <svu-sidebar-icon\n name=\"chevron-down\"\n [size]=\"20\"\n class=\"svu-sidebar__nav-chevron\"\n [class.svu-sidebar__nav-chevron--open]=\"isExpanded(item)\">\n </svu-sidebar-icon>\n </div>\n\n <div class=\"svu-sidebar__subnav\" *ngIf=\"isExpanded(item)\">\n <a\n *ngFor=\"let child of item.children\"\n class=\"svu-sidebar__subnav-item\"\n [routerLink]=\"child.route\"\n routerLinkActive=\"svu-sidebar__subnav-item--active\"\n [routerLinkActiveOptions]=\"child.exact ? exactMatch : subsetMatch\"\n (click)=\"onItemClick(child)\">\n {{ child.label }}\n </a>\n </div>\n </ng-container>\n\n <!-- Item simple (hoja) -->\n <ng-template #leafItem>\n <a\n class=\"svu-sidebar__nav-item\"\n [routerLink]=\"item.route\"\n routerLinkActive=\"svu-sidebar__nav-item--active\"\n [routerLinkActiveOptions]=\"item.exact ? exactMatch : subsetMatch\"\n (click)=\"onItemClick(item)\">\n <div class=\"svu-sidebar__nav-item-content\">\n <svu-sidebar-icon *ngIf=\"item.icon\" [name]=\"item.icon\" class=\"svu-sidebar__nav-icon\"></svu-sidebar-icon>\n <span class=\"svu-sidebar__nav-text\">{{ item.label }}</span>\n </div>\n </a>\n </ng-template>\n </ng-container>\n </nav>\n </div>\n\n <!-- Footer: slot custom o default (user + logout) -->\n <div class=\"svu-sidebar__footer\">\n <div class=\"svu-sidebar__divider\"></div>\n\n <ng-container *ngIf=\"footerTpl; else defaultFooter\" [ngTemplateOutlet]=\"footerTpl\"></ng-container>\n\n <ng-template #defaultFooter>\n <div class=\"svu-sidebar__account-wrapper\" *ngIf=\"userName\">\n <div class=\"svu-sidebar__account\" (click)=\"toggleAccountMenu()\">\n <div class=\"svu-sidebar__avatar\">\n <span class=\"svu-sidebar__avatar-text\">{{ computedInitial }}</span>\n </div>\n <div class=\"svu-sidebar__user-info\">\n <span class=\"svu-sidebar__user-name\">{{ userName }}</span>\n <span class=\"svu-sidebar__user-email\" *ngIf=\"userEmail\">{{ userEmail }}</span>\n </div>\n </div>\n\n <div *ngIf=\"accountMenuOpen && showLogout\" class=\"svu-sidebar__account-menu\">\n <button type=\"button\" class=\"svu-sidebar__account-menu-item\" (click)=\"onLogoutClick()\">\n <svu-sidebar-icon name=\"logout\" [size]=\"20\"></svu-sidebar-icon>\n <span>{{ logoutLabel }}</span>\n </button>\n </div>\n </div>\n </ng-template>\n </div>\n </div>\n\n <div class=\"svu-sidebar__border\"></div>\n</aside>\n", styles: [".svu-sidebar{display:flex;width:312px;height:100%;background:#fff;flex-shrink:0}.svu-sidebar__content{display:flex;flex-direction:column;justify-content:space-between;flex:1;height:100%;min-width:0}.svu-sidebar__border{width:1px;height:100%;background-color:#e9eaeb;flex-shrink:0}.svu-sidebar__top{display:flex;flex-direction:column;gap:24px;padding-top:32px}.svu-sidebar__logo{padding:0 20px 0 24px}.svu-sidebar__logo-img{height:48px;width:auto}.svu-sidebar__nav{display:flex;flex-direction:column;gap:4px;padding:0 16px}.svu-sidebar__nav-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:6px;cursor:pointer;transition:background-color .2s ease;text-decoration:none;color:inherit}.svu-sidebar__nav-item:hover,.svu-sidebar__nav-item--active{background-color:#fafafa}.svu-sidebar__nav-item--active .svu-sidebar__nav-text,.svu-sidebar__nav-item--active .svu-sidebar__nav-icon{color:#2e353a}.svu-sidebar__nav-item-content{display:flex;align-items:center;gap:12px}.svu-sidebar__nav-icon{flex-shrink:0;color:#585d61}.svu-sidebar__nav-text{font-family:Roboto,sans-serif;font-weight:600;font-size:16px;line-height:24px;color:#585d61}.svu-sidebar__nav-chevron{flex-shrink:0;color:#585d61;transition:transform .2s ease}.svu-sidebar__nav-chevron--open{transform:rotate(180deg)}.svu-sidebar__subnav{display:flex;flex-direction:column;gap:2px;padding-left:48px}.svu-sidebar__subnav-item{display:block;padding:6px 12px;border-radius:6px;font-family:Roboto,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#6d7275;text-decoration:none;cursor:pointer;transition:background-color .2s ease}.svu-sidebar__subnav-item:hover{background-color:#fafafa}.svu-sidebar__subnav-item--active{background-color:#fafafa;color:#2e353a;font-weight:600}.svu-sidebar__footer{display:flex;flex-direction:column;gap:24px;padding:0 16px 32px}.svu-sidebar__divider{height:1px;width:100%;background-color:#e9eaeb}.svu-sidebar__account-wrapper{position:relative}.svu-sidebar__account{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;cursor:pointer;transition:background-color .2s ease}.svu-sidebar__account:hover{background-color:#fafafa}.svu-sidebar__account-menu{position:absolute;bottom:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid #E9EAEB;border-radius:8px;box-shadow:0 4px 16px #0000001a;padding:4px;z-index:10}.svu-sidebar__account-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:none;border-radius:6px;font-family:Roboto,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#d92d20;cursor:pointer;transition:background-color .2s ease}.svu-sidebar__account-menu-item:hover{background-color:#fef3f2}.svu-sidebar__avatar{width:40px;height:40px;border-radius:50%;background-color:#364b9f;display:flex;align-items:center;justify-content:center;flex-shrink:0}.svu-sidebar__avatar-text{font-family:Roboto,sans-serif;font-weight:600;font-size:16px;color:#fff}.svu-sidebar__user-info{display:flex;flex-direction:column;min-width:0}.svu-sidebar__user-name{font-family:Roboto,sans-serif;font-weight:600;font-size:14px;line-height:20px;color:#2e353a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.svu-sidebar__user-email{font-family:Roboto,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#6d7275;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: SidebarIconComponent, selector: "svu-sidebar-icon", inputs: ["name", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
81
|
+
}
|
|
82
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidebarComponent, decorators: [{
|
|
83
|
+
type: Component,
|
|
84
|
+
args: [{ selector: 'svu-sidebar', standalone: true, imports: [CommonModule, RouterLink, RouterLinkActive, SidebarIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<aside class=\"svu-sidebar\">\n <div class=\"svu-sidebar__content\">\n <div class=\"svu-sidebar__top\">\n <!-- Logo: slot proyectable o input -->\n <div class=\"svu-sidebar__logo\">\n <ng-container *ngIf=\"logoTpl; else defaultLogo\" [ngTemplateOutlet]=\"logoTpl\"></ng-container>\n <ng-template #defaultLogo>\n <img *ngIf=\"logoSrc\" [src]=\"logoSrc\" [alt]=\"logoAlt\" class=\"svu-sidebar__logo-img\" />\n </ng-template>\n </div>\n\n <!-- Navigation -->\n <nav class=\"svu-sidebar__nav\">\n <ng-container *ngFor=\"let item of items\">\n <!-- Item con children (expandible) -->\n <ng-container *ngIf=\"item.children?.length; else leafItem\">\n <div\n class=\"svu-sidebar__nav-item\"\n [class.svu-sidebar__nav-item--active]=\"parentActive.isActive\"\n (click)=\"onItemClick(item)\"\n [routerLink]=\"item.route || null\"\n routerLinkActive\n #parentActive=\"routerLinkActive\"\n [routerLinkActiveOptions]=\"subsetMatch\">\n <div class=\"svu-sidebar__nav-item-content\">\n <svu-sidebar-icon *ngIf=\"item.icon\" [name]=\"item.icon\" class=\"svu-sidebar__nav-icon\"></svu-sidebar-icon>\n <span class=\"svu-sidebar__nav-text\">{{ item.label }}</span>\n </div>\n <svu-sidebar-icon\n name=\"chevron-down\"\n [size]=\"20\"\n class=\"svu-sidebar__nav-chevron\"\n [class.svu-sidebar__nav-chevron--open]=\"isExpanded(item)\">\n </svu-sidebar-icon>\n </div>\n\n <div class=\"svu-sidebar__subnav\" *ngIf=\"isExpanded(item)\">\n <a\n *ngFor=\"let child of item.children\"\n class=\"svu-sidebar__subnav-item\"\n [routerLink]=\"child.route\"\n routerLinkActive=\"svu-sidebar__subnav-item--active\"\n [routerLinkActiveOptions]=\"child.exact ? exactMatch : subsetMatch\"\n (click)=\"onItemClick(child)\">\n {{ child.label }}\n </a>\n </div>\n </ng-container>\n\n <!-- Item simple (hoja) -->\n <ng-template #leafItem>\n <a\n class=\"svu-sidebar__nav-item\"\n [routerLink]=\"item.route\"\n routerLinkActive=\"svu-sidebar__nav-item--active\"\n [routerLinkActiveOptions]=\"item.exact ? exactMatch : subsetMatch\"\n (click)=\"onItemClick(item)\">\n <div class=\"svu-sidebar__nav-item-content\">\n <svu-sidebar-icon *ngIf=\"item.icon\" [name]=\"item.icon\" class=\"svu-sidebar__nav-icon\"></svu-sidebar-icon>\n <span class=\"svu-sidebar__nav-text\">{{ item.label }}</span>\n </div>\n </a>\n </ng-template>\n </ng-container>\n </nav>\n </div>\n\n <!-- Footer: slot custom o default (user + logout) -->\n <div class=\"svu-sidebar__footer\">\n <div class=\"svu-sidebar__divider\"></div>\n\n <ng-container *ngIf=\"footerTpl; else defaultFooter\" [ngTemplateOutlet]=\"footerTpl\"></ng-container>\n\n <ng-template #defaultFooter>\n <div class=\"svu-sidebar__account-wrapper\" *ngIf=\"userName\">\n <div class=\"svu-sidebar__account\" (click)=\"toggleAccountMenu()\">\n <div class=\"svu-sidebar__avatar\">\n <span class=\"svu-sidebar__avatar-text\">{{ computedInitial }}</span>\n </div>\n <div class=\"svu-sidebar__user-info\">\n <span class=\"svu-sidebar__user-name\">{{ userName }}</span>\n <span class=\"svu-sidebar__user-email\" *ngIf=\"userEmail\">{{ userEmail }}</span>\n </div>\n </div>\n\n <div *ngIf=\"accountMenuOpen && showLogout\" class=\"svu-sidebar__account-menu\">\n <button type=\"button\" class=\"svu-sidebar__account-menu-item\" (click)=\"onLogoutClick()\">\n <svu-sidebar-icon name=\"logout\" [size]=\"20\"></svu-sidebar-icon>\n <span>{{ logoutLabel }}</span>\n </button>\n </div>\n </div>\n </ng-template>\n </div>\n </div>\n\n <div class=\"svu-sidebar__border\"></div>\n</aside>\n", styles: [".svu-sidebar{display:flex;width:312px;height:100%;background:#fff;flex-shrink:0}.svu-sidebar__content{display:flex;flex-direction:column;justify-content:space-between;flex:1;height:100%;min-width:0}.svu-sidebar__border{width:1px;height:100%;background-color:#e9eaeb;flex-shrink:0}.svu-sidebar__top{display:flex;flex-direction:column;gap:24px;padding-top:32px}.svu-sidebar__logo{padding:0 20px 0 24px}.svu-sidebar__logo-img{height:48px;width:auto}.svu-sidebar__nav{display:flex;flex-direction:column;gap:4px;padding:0 16px}.svu-sidebar__nav-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:6px;cursor:pointer;transition:background-color .2s ease;text-decoration:none;color:inherit}.svu-sidebar__nav-item:hover,.svu-sidebar__nav-item--active{background-color:#fafafa}.svu-sidebar__nav-item--active .svu-sidebar__nav-text,.svu-sidebar__nav-item--active .svu-sidebar__nav-icon{color:#2e353a}.svu-sidebar__nav-item-content{display:flex;align-items:center;gap:12px}.svu-sidebar__nav-icon{flex-shrink:0;color:#585d61}.svu-sidebar__nav-text{font-family:Roboto,sans-serif;font-weight:600;font-size:16px;line-height:24px;color:#585d61}.svu-sidebar__nav-chevron{flex-shrink:0;color:#585d61;transition:transform .2s ease}.svu-sidebar__nav-chevron--open{transform:rotate(180deg)}.svu-sidebar__subnav{display:flex;flex-direction:column;gap:2px;padding-left:48px}.svu-sidebar__subnav-item{display:block;padding:6px 12px;border-radius:6px;font-family:Roboto,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#6d7275;text-decoration:none;cursor:pointer;transition:background-color .2s ease}.svu-sidebar__subnav-item:hover{background-color:#fafafa}.svu-sidebar__subnav-item--active{background-color:#fafafa;color:#2e353a;font-weight:600}.svu-sidebar__footer{display:flex;flex-direction:column;gap:24px;padding:0 16px 32px}.svu-sidebar__divider{height:1px;width:100%;background-color:#e9eaeb}.svu-sidebar__account-wrapper{position:relative}.svu-sidebar__account{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;cursor:pointer;transition:background-color .2s ease}.svu-sidebar__account:hover{background-color:#fafafa}.svu-sidebar__account-menu{position:absolute;bottom:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid #E9EAEB;border-radius:8px;box-shadow:0 4px 16px #0000001a;padding:4px;z-index:10}.svu-sidebar__account-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:none;border-radius:6px;font-family:Roboto,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#d92d20;cursor:pointer;transition:background-color .2s ease}.svu-sidebar__account-menu-item:hover{background-color:#fef3f2}.svu-sidebar__avatar{width:40px;height:40px;border-radius:50%;background-color:#364b9f;display:flex;align-items:center;justify-content:center;flex-shrink:0}.svu-sidebar__avatar-text{font-family:Roboto,sans-serif;font-weight:600;font-size:16px;color:#fff}.svu-sidebar__user-info{display:flex;flex-direction:column;min-width:0}.svu-sidebar__user-name{font-family:Roboto,sans-serif;font-weight:600;font-size:14px;line-height:20px;color:#2e353a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.svu-sidebar__user-email{font-family:Roboto,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#6d7275;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"] }]
|
|
85
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { items: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], logoSrc: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], logoAlt: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}], userName: [{
|
|
92
|
+
type: Input
|
|
93
|
+
}], userEmail: [{
|
|
94
|
+
type: Input
|
|
95
|
+
}], userInitial: [{
|
|
96
|
+
type: Input
|
|
97
|
+
}], showLogout: [{
|
|
98
|
+
type: Input
|
|
99
|
+
}], logoutLabel: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}], itemClick: [{
|
|
102
|
+
type: Output
|
|
103
|
+
}], logout: [{
|
|
104
|
+
type: Output
|
|
105
|
+
}], logoTpl: [{
|
|
106
|
+
type: ContentChild,
|
|
107
|
+
args: ['sidebarLogo', { read: TemplateRef }]
|
|
108
|
+
}], footerTpl: [{
|
|
109
|
+
type: ContentChild,
|
|
110
|
+
args: ['sidebarFooter', { read: TemplateRef }]
|
|
111
|
+
}], onDocumentClick: [{
|
|
112
|
+
type: HostListener,
|
|
113
|
+
args: ['document:click', ['$event']]
|
|
114
|
+
}] } });
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL29yZ2FuaXNtcy9zaWRlYmFyL3NpZGViYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9vcmdhbmlzbXMvc2lkZWJhci9zaWRlYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osdUJBQXVCLEVBRXZCLFlBQVksRUFDWixZQUFZLEVBQ1osV0FBVyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUF3QixNQUFNLGlCQUFpQixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBbUIsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBbUJqRixNQUFNLE9BQU8sZ0JBQWdCO0lBMENQO0lBekNwQiwyRUFBMkU7SUFDbEUsS0FBSyxHQUFrQixFQUFFLENBQUM7SUFFbkMscUdBQXFHO0lBQzVGLE9BQU8sQ0FBVTtJQUNqQixPQUFPLEdBQUcsTUFBTSxDQUFDO0lBRTFCO3VGQUNtRjtJQUMxRSxRQUFRLENBQVU7SUFDbEIsU0FBUyxDQUFVO0lBQzVCLDBEQUEwRDtJQUNqRCxXQUFXLENBQVU7SUFDOUIsK0RBQStEO0lBQ3RELFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDbEIsV0FBVyxHQUFHLGVBQWUsQ0FBQztJQUV2QyxzREFBc0Q7SUFDNUMsU0FBUyxHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7SUFDNUMsTUFBTSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7SUFFUSxPQUFPLENBQXdCO0lBQzdCLFNBQVMsQ0FBd0I7SUFFdkYsWUFBWSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7SUFDakMsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUVmLFdBQVcsR0FBeUI7UUFDM0MsS0FBSyxFQUFFLFFBQVE7UUFDZixXQUFXLEVBQUUsU0FBUztRQUN0QixRQUFRLEVBQUUsU0FBUztRQUNuQixZQUFZLEVBQUUsU0FBUztLQUN4QixDQUFDO0lBRU8sVUFBVSxHQUF5QjtRQUMxQyxLQUFLLEVBQUUsT0FBTztRQUNkLFdBQVcsRUFBRSxTQUFTO1FBQ3RCLFFBQVEsRUFBRSxTQUFTO1FBQ25CLFlBQVksRUFBRSxTQUFTO0tBQ3hCLENBQUM7SUFFRixZQUFvQixPQUFnQztRQUFoQyxZQUFPLEdBQVAsT0FBTyxDQUF5QjtJQUFHLENBQUM7SUFFeEQsSUFBSSxlQUFlO1FBQ2pCLElBQUksSUFBSSxDQUFDLFdBQVc7WUFBRSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDOUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFRCxVQUFVLENBQUMsSUFBaUI7UUFDMUIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFpQjtRQUMzQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDMUIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDdEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEMsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDL0MsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFHRCxlQUFlLENBQUMsS0FBWTtRQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWU7WUFBRSxPQUFPO1FBQ2xDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ2hGLElBQUksTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBYyxDQUFDLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQzt3R0FoRlUsZ0JBQWdCOzRGQUFoQixnQkFBZ0IsdWRBc0JVLFdBQVcscUdBQ1QsV0FBVyw2QkN2RHBELGt4SUFrR0EsNDRHRHZFWSxZQUFZLHVhQUFFLFVBQVUsb09BQUUsZ0JBQWdCLDhNQUFFLG9CQUFvQjs7NEZBSy9ELGdCQUFnQjtrQkFSNUIsU0FBUzsrQkFDRSxhQUFhLGNBQ1gsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsQ0FBQyxtQkFDMUQsdUJBQXVCLENBQUMsTUFBTTsrRUFNdEMsS0FBSztzQkFBYixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBSUcsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdJLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUU2QyxPQUFPO3NCQUExRCxZQUFZO3VCQUFDLGFBQWEsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBQ0ksU0FBUztzQkFBOUQsWUFBWTt1QkFBQyxlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQW1EcEQsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIENvbnRlbnRDaGlsZCxcbiAgVGVtcGxhdGVSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUm91dGVyTGluaywgUm91dGVyTGlua0FjdGl2ZSwgSXNBY3RpdmVNYXRjaE9wdGlvbnMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU2lkZWJhckljb25Db21wb25lbnQsIFNpZGViYXJJY29uTmFtZSB9IGZyb20gJy4vc2lkZWJhci1pY29uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lkZWJhckl0ZW0ge1xuICBsYWJlbDogc3RyaW5nO1xuICBpY29uPzogU2lkZWJhckljb25OYW1lO1xuICByb3V0ZT86IHN0cmluZztcbiAgLyoqIFN1YnNldCBtYXRjaCBwYXJhIHF1ZSBlbCBwYWRyZSBzZSBtYXJxdWUgYWN0aXZvIGF1bnF1ZSBsYSBydXRhIGhpamEgbm8gZXN0w6kgZXhhY3RhLiAqL1xuICBleGFjdD86IGJvb2xlYW47XG4gIGNoaWxkcmVuPzogU2lkZWJhckl0ZW1bXTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3Z1LXNpZGViYXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSb3V0ZXJMaW5rLCBSb3V0ZXJMaW5rQWN0aXZlLCBTaWRlYmFySWNvbkNvbXBvbmVudF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZWJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NpZGViYXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTaWRlYmFyQ29tcG9uZW50IHtcbiAgLyoqIEl0ZW1zIGRlbCBtZW7DuiAoZGF0b3MtZHJpdmVuKS4gU29wb3J0YSBjaGlsZHJlbiBwYXJhIHN1Yi1uYXZlZ2FjacOzbi4gKi9cbiAgQElucHV0KCkgaXRlbXM6IFNpZGViYXJJdGVtW10gPSBbXTtcblxuICAvKiogTG9nbzogc2kgc2UgcGFzYSBsYSBVUkwgc2UgcmVuZGVyaXphOyBhbHRlcm5hdGl2YW1lbnRlIHByb3llY3RhIGNvbnRlbmlkbyBjb24gYFtzaWRlYmFyTG9nb11gLiAqL1xuICBASW5wdXQoKSBsb2dvU3JjPzogc3RyaW5nO1xuICBASW5wdXQoKSBsb2dvQWx0ID0gJ0xvZ28nO1xuXG4gIC8qKiBGb290ZXIgaGlicmlkbzogc2kgc2UgcGFzYW4gbG9zIGlucHV0cyBzZSB1c2EgZWwgZm9vdGVyIHBvciBkZWZlY3RvLlxuICAgKiAgUGFyYSBmb290ZXIgY3VzdG9tLCBwcm95ZWN0YXIgY29uIGBbc2lkZWJhckZvb3Rlcl1gIChnYW5hIHNvYnJlIGxvcyBpbnB1dHMpLiAqL1xuICBASW5wdXQoKSB1c2VyTmFtZT86IHN0cmluZztcbiAgQElucHV0KCkgdXNlckVtYWlsPzogc3RyaW5nO1xuICAvKiogU2kgbm8gc2UgcGFzYSwgc2UgdXNhIGxhIHByaW1lcmEgbGV0cmEgZGUgdXNlck5hbWUuICovXG4gIEBJbnB1dCgpIHVzZXJJbml0aWFsPzogc3RyaW5nO1xuICAvKiogTW9zdHJhci9vY3VsdGFyIGVsIGJvdMOzbiBkZSBsb2dvdXQgZW4gZWwgbWVuw7ogZGUgY3VlbnRhLiAqL1xuICBASW5wdXQoKSBzaG93TG9nb3V0ID0gdHJ1ZTtcbiAgQElucHV0KCkgbG9nb3V0TGFiZWwgPSAnQ2VycmFyIHNlc2nDs24nO1xuXG4gIC8qKiBDbGljayBlbiB1biBpdGVtIChpbmNsdXllIGV4cGFuZGlibGVzIHkgaG9qYXMpLiAqL1xuICBAT3V0cHV0KCkgaXRlbUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxTaWRlYmFySXRlbT4oKTtcbiAgQE91dHB1dCgpIGxvZ291dCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAQ29udGVudENoaWxkKCdzaWRlYmFyTG9nbycsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgbG9nb1RwbD86IFRlbXBsYXRlUmVmPHVua25vd24+O1xuICBAQ29udGVudENoaWxkKCdzaWRlYmFyRm9vdGVyJywgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KSBmb290ZXJUcGw/OiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBleHBhbmRlZEtleXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgYWNjb3VudE1lbnVPcGVuID0gZmFsc2U7XG5cbiAgcmVhZG9ubHkgc3Vic2V0TWF0Y2g6IElzQWN0aXZlTWF0Y2hPcHRpb25zID0ge1xuICAgIHBhdGhzOiAnc3Vic2V0JyxcbiAgICBxdWVyeVBhcmFtczogJ2lnbm9yZWQnLFxuICAgIGZyYWdtZW50OiAnaWdub3JlZCcsXG4gICAgbWF0cml4UGFyYW1zOiAnaWdub3JlZCdcbiAgfTtcblxuICByZWFkb25seSBleGFjdE1hdGNoOiBJc0FjdGl2ZU1hdGNoT3B0aW9ucyA9IHtcbiAgICBwYXRoczogJ2V4YWN0JyxcbiAgICBxdWVyeVBhcmFtczogJ2lnbm9yZWQnLFxuICAgIGZyYWdtZW50OiAnaWdub3JlZCcsXG4gICAgbWF0cml4UGFyYW1zOiAnaWdub3JlZCdcbiAgfTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGhvc3RSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7fVxuXG4gIGdldCBjb21wdXRlZEluaXRpYWwoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy51c2VySW5pdGlhbCkgcmV0dXJuIHRoaXMudXNlckluaXRpYWw7XG4gICAgcmV0dXJuICh0aGlzLnVzZXJOYW1lPy50cmltKCkuY2hhckF0KDApIHx8ICcnKS50b1VwcGVyQ2FzZSgpO1xuICB9XG5cbiAgaXNFeHBhbmRlZChpdGVtOiBTaWRlYmFySXRlbSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmV4cGFuZGVkS2V5cy5oYXMoaXRlbS5sYWJlbCk7XG4gIH1cblxuICBvbkl0ZW1DbGljayhpdGVtOiBTaWRlYmFySXRlbSk6IHZvaWQge1xuICAgIGlmIChpdGVtLmNoaWxkcmVuPy5sZW5ndGgpIHtcbiAgICAgIGlmICh0aGlzLmV4cGFuZGVkS2V5cy5oYXMoaXRlbS5sYWJlbCkpIHtcbiAgICAgICAgdGhpcy5leHBhbmRlZEtleXMuZGVsZXRlKGl0ZW0ubGFiZWwpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5leHBhbmRlZEtleXMuYWRkKGl0ZW0ubGFiZWwpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLml0ZW1DbGljay5lbWl0KGl0ZW0pO1xuICB9XG5cbiAgdG9nZ2xlQWNjb3VudE1lbnUoKTogdm9pZCB7XG4gICAgdGhpcy5hY2NvdW50TWVudU9wZW4gPSAhdGhpcy5hY2NvdW50TWVudU9wZW47XG4gIH1cblxuICBvbkxvZ291dENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuYWNjb3VudE1lbnVPcGVuID0gZmFsc2U7XG4gICAgdGhpcy5sb2dvdXQuZW1pdCgpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCddKVxuICBvbkRvY3VtZW50Q2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmFjY291bnRNZW51T3BlbikgcmV0dXJuO1xuICAgIGNvbnN0IGZvb3RlciA9IHRoaXMuaG9zdFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zdnUtc2lkZWJhcl9fZm9vdGVyJyk7XG4gICAgaWYgKGZvb3RlciAmJiAhZm9vdGVyLmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSkge1xuICAgICAgdGhpcy5hY2NvdW50TWVudU9wZW4gPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cbiIsIjxhc2lkZSBjbGFzcz1cInN2dS1zaWRlYmFyXCI+XG4gIDxkaXYgY2xhc3M9XCJzdnUtc2lkZWJhcl9fY29udGVudFwiPlxuICAgIDxkaXYgY2xhc3M9XCJzdnUtc2lkZWJhcl9fdG9wXCI+XG4gICAgICA8IS0tIExvZ286IHNsb3QgcHJveWVjdGFibGUgbyBpbnB1dCAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdnUtc2lkZWJhcl9fbG9nb1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9nb1RwbDsgZWxzZSBkZWZhdWx0TG9nb1wiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxvZ29UcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0TG9nbz5cbiAgICAgICAgICA8aW1nICpuZ0lmPVwibG9nb1NyY1wiIFtzcmNdPVwibG9nb1NyY1wiIFthbHRdPVwibG9nb0FsdFwiIGNsYXNzPVwic3Z1LXNpZGViYXJfX2xvZ28taW1nXCIgLz5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tIE5hdmlnYXRpb24gLS0+XG4gICAgICA8bmF2IGNsYXNzPVwic3Z1LXNpZGViYXJfX25hdlwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zXCI+XG4gICAgICAgICAgPCEtLSBJdGVtIGNvbiBjaGlsZHJlbiAoZXhwYW5kaWJsZSkgLS0+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0uY2hpbGRyZW4/Lmxlbmd0aDsgZWxzZSBsZWFmSXRlbVwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cInN2dS1zaWRlYmFyX19uYXYtaXRlbVwiXG4gICAgICAgICAgICAgIFtjbGFzcy5zdnUtc2lkZWJhcl9fbmF2LWl0ZW0tLWFjdGl2ZV09XCJwYXJlbnRBY3RpdmUuaXNBY3RpdmVcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25JdGVtQ2xpY2soaXRlbSlcIlxuICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJpdGVtLnJvdXRlIHx8IG51bGxcIlxuICAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlXG4gICAgICAgICAgICAgICNwYXJlbnRBY3RpdmU9XCJyb3V0ZXJMaW5rQWN0aXZlXCJcbiAgICAgICAgICAgICAgW3JvdXRlckxpbmtBY3RpdmVPcHRpb25zXT1cInN1YnNldE1hdGNoXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdnUtc2lkZWJhcl9fbmF2LWl0ZW0tY29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxzdnUtc2lkZWJhci1pY29uICpuZ0lmPVwiaXRlbS5pY29uXCIgW25hbWVdPVwiaXRlbS5pY29uXCIgY2xhc3M9XCJzdnUtc2lkZWJhcl9fbmF2LWljb25cIj48L3N2dS1zaWRlYmFyLWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdnUtc2lkZWJhcl9fbmF2LXRleHRcIj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPHN2dS1zaWRlYmFyLWljb25cbiAgICAgICAgICAgICAgICBuYW1lPVwiY2hldnJvbi1kb3duXCJcbiAgICAgICAgICAgICAgICBbc2l6ZV09XCIyMFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzdnUtc2lkZWJhcl9fbmF2LWNoZXZyb25cIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5zdnUtc2lkZWJhcl9fbmF2LWNoZXZyb24tLW9wZW5dPVwiaXNFeHBhbmRlZChpdGVtKVwiPlxuICAgICAgICAgICAgICA8L3N2dS1zaWRlYmFyLWljb24+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN2dS1zaWRlYmFyX19zdWJuYXZcIiAqbmdJZj1cImlzRXhwYW5kZWQoaXRlbSlcIj5cbiAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgY2hpbGQgb2YgaXRlbS5jaGlsZHJlblwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzdnUtc2lkZWJhcl9fc3VibmF2LWl0ZW1cIlxuICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cImNoaWxkLnJvdXRlXCJcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwic3Z1LXNpZGViYXJfX3N1Ym5hdi1pdGVtLS1hY3RpdmVcIlxuICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rQWN0aXZlT3B0aW9uc109XCJjaGlsZC5leGFjdCA/IGV4YWN0TWF0Y2ggOiBzdWJzZXRNYXRjaFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKGNoaWxkKVwiPlxuICAgICAgICAgICAgICAgIHt7IGNoaWxkLmxhYmVsIH19XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgPCEtLSBJdGVtIHNpbXBsZSAoaG9qYSkgLS0+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNsZWFmSXRlbT5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgIGNsYXNzPVwic3Z1LXNpZGViYXJfX25hdi1pdGVtXCJcbiAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiaXRlbS5yb3V0ZVwiXG4gICAgICAgICAgICAgIHJvdXRlckxpbmtBY3RpdmU9XCJzdnUtc2lkZWJhcl9fbmF2LWl0ZW0tLWFjdGl2ZVwiXG4gICAgICAgICAgICAgIFtyb3V0ZXJMaW5rQWN0aXZlT3B0aW9uc109XCJpdGVtLmV4YWN0ID8gZXhhY3RNYXRjaCA6IHN1YnNldE1hdGNoXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKGl0ZW0pXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdnUtc2lkZWJhcl9fbmF2LWl0ZW0tY29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxzdnUtc2lkZWJhci1pY29uICpuZ0lmPVwiaXRlbS5pY29uXCIgW25hbWVdPVwiaXRlbS5pY29uXCIgY2xhc3M9XCJzdnUtc2lkZWJhcl9fbmF2LWljb25cIj48L3N2dS1zaWRlYmFyLWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdnUtc2lkZWJhcl9fbmF2LXRleHRcIj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmF2PlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBGb290ZXI6IHNsb3QgY3VzdG9tIG8gZGVmYXVsdCAodXNlciArIGxvZ291dCkgLS0+XG4gICAgPGRpdiBjbGFzcz1cInN2dS1zaWRlYmFyX19mb290ZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdnUtc2lkZWJhcl9fZGl2aWRlclwiPjwvZGl2PlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9vdGVyVHBsOyBlbHNlIGRlZmF1bHRGb290ZXJcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJUcGxcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Rm9vdGVyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic3Z1LXNpZGViYXJfX2FjY291bnQtd3JhcHBlclwiICpuZ0lmPVwidXNlck5hbWVcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Z1LXNpZGViYXJfX2FjY291bnRcIiAoY2xpY2spPVwidG9nZ2xlQWNjb3VudE1lbnUoKVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN2dS1zaWRlYmFyX19hdmF0YXJcIj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdnUtc2lkZWJhcl9fYXZhdGFyLXRleHRcIj57eyBjb21wdXRlZEluaXRpYWwgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdnUtc2lkZWJhcl9fdXNlci1pbmZvXCI+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Z1LXNpZGViYXJfX3VzZXItbmFtZVwiPnt7IHVzZXJOYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2dS1zaWRlYmFyX191c2VyLWVtYWlsXCIgKm5nSWY9XCJ1c2VyRW1haWxcIj57eyB1c2VyRW1haWwgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJhY2NvdW50TWVudU9wZW4gJiYgc2hvd0xvZ291dFwiIGNsYXNzPVwic3Z1LXNpZGViYXJfX2FjY291bnQtbWVudVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJzdnUtc2lkZWJhcl9fYWNjb3VudC1tZW51LWl0ZW1cIiAoY2xpY2spPVwib25Mb2dvdXRDbGljaygpXCI+XG4gICAgICAgICAgICAgIDxzdnUtc2lkZWJhci1pY29uIG5hbWU9XCJsb2dvdXRcIiBbc2l6ZV09XCIyMFwiPjwvc3Z1LXNpZGViYXItaWNvbj5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgbG9nb3V0TGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwic3Z1LXNpZGViYXJfX2JvcmRlclwiPjwvZGl2PlxuPC9hc2lkZT5cbiJdfQ==
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -23,6 +23,9 @@ export * from './lib/atoms/checkbox/checkbox.component';
|
|
|
23
23
|
export * from './lib/atoms/radio/radio.component';
|
|
24
24
|
export * from './lib/atoms/date-picker/date-picker.component';
|
|
25
25
|
export * from './lib/atoms/loader/loader.component';
|
|
26
|
+
// Organisms
|
|
27
|
+
export * from './lib/organisms/sidebar/sidebar-icon.component';
|
|
28
|
+
export * from './lib/organisms/sidebar/sidebar.component';
|
|
26
29
|
// Molecules
|
|
27
30
|
export * from './lib/molecules/option/option.component';
|
|
28
31
|
export * from './lib/molecules/select/select.component';
|
|
@@ -30,4 +33,5 @@ export * from './lib/molecules/multiselect/multiselect.component';
|
|
|
30
33
|
export * from './lib/molecules/phone-input/phone-input.component';
|
|
31
34
|
export * from './lib/molecules/copy-input/copy-input.component';
|
|
32
35
|
export * from './lib/molecules/snackbar/snackbar.component';
|
|
33
|
-
|
|
36
|
+
export * from './lib/molecules/alert/alert.component';
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsU0FBUztBQUNULGNBQWMsbUNBQW1DLENBQUM7QUFFbEQsU0FBUztBQUNULGNBQWMsOEJBQThCLENBQUM7QUFFN0MsV0FBVztBQUNYLGNBQWMsaUNBQWlDLENBQUM7QUFFaEQsYUFBYTtBQUNiLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsb0NBQW9DLENBQUM7QUFFbkQsUUFBUTtBQUNSLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMscUNBQXFDLENBQUM7QUFFcEQsWUFBWTtBQUNaLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRCxZQUFZO0FBQ1osY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgQHVwX3NpX3ZhbGUvc2l2YWxlLWNvbXBvbmVudGVzLWFuZ3VsYXJcbiAqL1xuXG4vLyBUb2tlbnNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucy9hc3NldC1iYXNlLXVybC50b2tlbic7XG5cbi8vIE1vZGVsc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NuYWNrYmFyLm1vZGVscyc7XG5cbi8vIFNlcnZpY2VzXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9zbmFja2Jhci5zZXJ2aWNlJztcblxuLy8gRGlyZWN0aXZlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9hc3NldC1zb3VyY2UuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvaWNvbi1zb3VyY2UuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvb25seS1udW1iZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvb25seS1sZXR0ZXJzLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3JmYy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9uby1sZWFkaW5nLXNwYWNlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3Rvb2x0aXAuZGlyZWN0aXZlJztcblxuLy8gQXRvbXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F0b21zL2lucHV0L2lucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdG9tcy90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXRvbXMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F0b21zL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdG9tcy9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXRvbXMvbG9hZGVyL2xvYWRlci5jb21wb25lbnQnO1xuXG4vLyBPcmdhbmlzbXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL29yZ2FuaXNtcy9zaWRlYmFyL3NpZGViYXItaWNvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvb3JnYW5pc21zL3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQnO1xuXG4vLyBNb2xlY3VsZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vbGVjdWxlcy9vcHRpb24vb3B0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2xlY3VsZXMvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9sZWN1bGVzL211bHRpc2VsZWN0L211bHRpc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2xlY3VsZXMvcGhvbmUtaW5wdXQvcGhvbmUtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vbGVjdWxlcy9jb3B5LWlucHV0L2NvcHktaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vbGVjdWxlcy9zbmFja2Jhci9zbmFja2Jhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9sZWN1bGVzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudCc7XG4iXX0=
|