@spicainternational/ngx-sds-components 5.12.3 → 5.13.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/esm2020/public-api.mjs +2 -1
  2. package/esm2020/src/lib/app-switcher/app-switcher.component.mjs +7 -8
  3. package/esm2020/src/lib/navigation/navigation-user-profile/navigation-user-profile.component.mjs +6 -3
  4. package/esm2020/src/lib/navigation/navigation.module.mjs +13 -5
  5. package/esm2020/src/lib/navigation/product-home/product-home.component.mjs +37 -0
  6. package/esm2020/src/lib/navigation/public-api.mjs +2 -1
  7. package/esm2020/src/lib/side-bar/side-bar.component.mjs +90 -15
  8. package/esm2020/src/lib/static-value/public-api.mjs +3 -0
  9. package/esm2020/src/lib/static-value/spicainternational-ngx-sds-components-src-lib-static-value.mjs +5 -0
  10. package/esm2020/src/lib/static-value/static-value.component.mjs +25 -0
  11. package/esm2020/src/lib/static-value/static-value.module.mjs +30 -0
  12. package/fesm2015/spicainternational-ngx-sds-components-src-lib-app-switcher.mjs +7 -8
  13. package/fesm2015/spicainternational-ngx-sds-components-src-lib-app-switcher.mjs.map +1 -1
  14. package/fesm2015/spicainternational-ngx-sds-components-src-lib-navigation.mjs +51 -7
  15. package/fesm2015/spicainternational-ngx-sds-components-src-lib-navigation.mjs.map +1 -1
  16. package/fesm2015/spicainternational-ngx-sds-components-src-lib-side-bar.mjs +89 -14
  17. package/fesm2015/spicainternational-ngx-sds-components-src-lib-side-bar.mjs.map +1 -1
  18. package/fesm2015/spicainternational-ngx-sds-components-src-lib-static-value.mjs +59 -0
  19. package/fesm2015/spicainternational-ngx-sds-components-src-lib-static-value.mjs.map +1 -0
  20. package/fesm2015/spicainternational-ngx-sds-components.mjs +1 -0
  21. package/fesm2015/spicainternational-ngx-sds-components.mjs.map +1 -1
  22. package/fesm2020/spicainternational-ngx-sds-components-src-lib-app-switcher.mjs +7 -8
  23. package/fesm2020/spicainternational-ngx-sds-components-src-lib-app-switcher.mjs.map +1 -1
  24. package/fesm2020/spicainternational-ngx-sds-components-src-lib-navigation.mjs +51 -7
  25. package/fesm2020/spicainternational-ngx-sds-components-src-lib-navigation.mjs.map +1 -1
  26. package/fesm2020/spicainternational-ngx-sds-components-src-lib-side-bar.mjs +89 -14
  27. package/fesm2020/spicainternational-ngx-sds-components-src-lib-side-bar.mjs.map +1 -1
  28. package/fesm2020/spicainternational-ngx-sds-components-src-lib-static-value.mjs +59 -0
  29. package/fesm2020/spicainternational-ngx-sds-components-src-lib-static-value.mjs.map +1 -0
  30. package/fesm2020/spicainternational-ngx-sds-components.mjs +1 -0
  31. package/fesm2020/spicainternational-ngx-sds-components.mjs.map +1 -1
  32. package/package.json +9 -1
  33. package/public-api.d.ts +1 -0
  34. package/src/lib/navigation/navigation-user-profile/navigation-user-profile.component.d.ts +2 -1
  35. package/src/lib/navigation/navigation.module.d.ts +9 -7
  36. package/src/lib/navigation/product-home/product-home.component.d.ts +18 -0
  37. package/src/lib/navigation/public-api.d.ts +1 -0
  38. package/src/lib/side-bar/side-bar.component.d.ts +67 -9
  39. package/src/lib/static-value/package.json +10 -0
  40. package/src/lib/static-value/public-api.d.ts +2 -0
  41. package/src/lib/static-value/spicainternational-ngx-sds-components-src-lib-static-value.d.ts +5 -0
  42. package/src/lib/static-value/static-value.component.d.ts +12 -0
  43. package/src/lib/static-value/static-value.module.d.ts +9 -0
@@ -1,17 +1,88 @@
1
1
  import { Component, Input } from '@angular/core';
2
- import { faChevronRight } from '@fortawesome/pro-regular-svg-icons';
2
+ import { faAngleLeft } from '@fortawesome/pro-solid-svg-icons';
3
+ import { Subject } from 'rxjs';
3
4
  import * as i0 from "@angular/core";
4
5
  import * as i1 from "@fortawesome/angular-fontawesome";
5
6
  import * as i2 from "@angular/common";
7
+ // import { faSidebar } from '@fortawesome/pro-light-svg-icons';
8
+ // import { IconDefinition, faSidebar, faChevronRight, faGripVertical, faGripLinesVertical, faChevronLeft, faArrowRightFromBracket } from '@fortawesome/pro-regular-svg-icons';
6
9
  export class SdsSideBarComponent {
7
10
  constructor() {
8
- this.showSideBar = false;
9
- this.product = '';
10
- this.isMainSideBar = false;
11
- this.showSideBarToggleButton = false;
12
- this.caretIcon = faChevronRight;
11
+ /**
12
+ * Define when the hide panel button is shown.
13
+ * Default is 'auto' which will only show the button when the users hovers over the panel.
14
+ * 'always' will always show the button.
15
+ *
16
+ * @type {('always' | 'auto')}
17
+ * @memberof SdsSideBarComponent
18
+ */
19
+ this.showCloseButton = 'auto';
20
+ /**
21
+ * Pull out mode will show the side bar as user hovers over the left side of the screen
22
+ * When side bar is in pull out mode it will be rendered over the main contents.
23
+ *
24
+ * @type {boolean}
25
+ * @memberof SdsSideBarComponent
26
+ */
27
+ this.enablePullOutMode = false;
28
+ /**
29
+ * Define the width of the side bar in rem.
30
+ *
31
+ * @type {number}
32
+ * @memberof SdsSideBarComponent
33
+ */
34
+ this.widthRem = 14;
35
+ /**
36
+ * Product name defines the color scheme of the side bar.
37
+ * Default is 'all-hours'.
38
+ * Options: 'all-hours', 'door-cloud', 'my-hours', 'time-and-space'
39
+ *
40
+ * @type {string}
41
+ * @memberof SdsSideBarComponent
42
+ */
43
+ this.product = 'all-hours';
44
+ /**
45
+ * Define the width of the screen that triggers hiding of the side bar.
46
+ * Note that the width is checked at the component creation and not when the screen is resized.
47
+ * If user resizes the screen he must manually hide the side bar.
48
+ *
49
+ * @type {(number | undefined)}
50
+ * @memberof SdsSideBarComponent
51
+ */
52
+ this.autoHideScreenWidth = 992;
53
+ this.showSideBar = true;
54
+ this.pullOutSideBar = false;
55
+ this.caretIcon = faAngleLeft;
56
+ this.autoHideActive = false;
57
+ this.screenWidth = 0;
58
+ this.componentInitialized = false;
59
+ this._checkAutoHide$ = new Subject();
60
+ this._checkAutoHide$.subscribe(() => {
61
+ console.log('check autohide');
62
+ if (this.componentInitialized && this.autoHideScreenWidth) {
63
+ console.log('this.autoHideScreenWidthRem', this.autoHideScreenWidth);
64
+ this.autoHideActive = this.screenWidth < this.autoHideScreenWidth;
65
+ console.log('hideSideBar', this.autoHideActive);
66
+ if (this.autoHideActive) {
67
+ this.showSideBar = false;
68
+ }
69
+ }
70
+ });
71
+ }
72
+ ngOnDestroy() {
73
+ this._checkAutoHide$.unsubscribe();
74
+ }
75
+ ngOnChanges(changes) {
76
+ if (changes['autoHideScreenWidthRem']) {
77
+ this._checkAutoHide$.next();
78
+ }
79
+ }
80
+ ngOnInit() {
81
+ this.componentInitialized = true;
82
+ this.screenWidth = window.innerWidth;
83
+ console.log('screenWidth', this.screenWidth);
84
+ this._checkAutoHide$.next();
13
85
  }
14
- ngOnInit() { }
15
86
  toggleSideBar(state) {
16
87
  if (state !== undefined) {
17
88
  this.showSideBar = state;
@@ -22,19 +93,23 @@ export class SdsSideBarComponent {
22
93
  }
23
94
  }
24
95
  SdsSideBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsSideBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
25
- SdsSideBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsSideBarComponent, selector: "sds-side-bar", inputs: { product: "product", isMainSideBar: "isMainSideBar", showSideBarToggleButton: "showSideBarToggleButton", hideSideBarText: "hideSideBarText", showSideBarText: "showSideBarText" }, ngImport: i0, template: "<aside\r\n class=\"sds-side-bar \"\r\n [class]=\"(product ? 'product-' + product : null)\"\r\n [class.sds-main-side-bar] = \"isMainSideBar\"\r\n [class.hide-sidebar]=\"!showSideBar\"\r\n>\r\n <div class=\"d-flex flex-column h-100\">\r\n <div class=\"d-flex flex-column flex-grow-0 w-100 h-100\">\r\n <div\r\n *ngIf=\"showSideBarToggleButton\"\r\n class=\"toggle-side-bar-button position-absolute d-md-none rounded-circle toggleSideBar d-flex justify-content-center justify-content-center align-items-center\"\r\n [class.open]=\"showSideBar\"\r\n [title]=\"showSideBar ? hideSideBarText : showSideBarText\"\r\n (click)=\"toggleSideBar()\"\r\n >\r\n <div class=\"toggle-side-bar-icon\">\r\n <fa-icon [icon]=\"caretIcon\"></fa-icon>\r\n </div> \r\n </div>\r\n\r\n <ng-content></ng-content> \r\n </div>\r\n </div>\r\n</aside>\r\n", styles: [".toggle-side-bar-button{transition:transform .2s linear}.toggle-side-bar-button.open .toggle-side-bar-icon{transform:rotate(-180deg)}\n"], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
96
+ SdsSideBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsSideBarComponent, selector: "sds-side-bar", inputs: { showCloseButton: "showCloseButton", enablePullOutMode: "enablePullOutMode", widthRem: "widthRem", product: "product", autoHideScreenWidth: "autoHideScreenWidth", closeButtonHint: "closeButtonHint", openButtonHint: "openButtonHint" }, usesOnChanges: true, ngImport: i0, template: "<div \r\n class=\"vh-100 position-relative sds-side-bar-container\"\r\n [class.sds-side-bar-open]=\"showSideBar\" \r\n >\r\n\r\n <!-- CLOSE SIDEBAR -->\r\n <div \r\n *ngIf=\"!pullOutSideBar && (true || showSideBar)\"\r\n class=\"sds-side-bar-button-container close-side-bar-button\"\r\n [class.hidden]=\"!showSideBar\"\r\n [class.always-show]=\"showSideBar && showCloseButton === 'always'\"\r\n >\r\n \r\n <button\r\n class=\"btn btn-outline-primary shadow-sm\"\r\n [title]=\"closeButtonHint\"\r\n (click)=\"toggleSideBar()\"\r\n >\r\n <fa-icon \r\n [icon]=\"caretIcon\" \r\n size=\"xs\"\r\n >\r\n </fa-icon>\r\n\r\n <div class=\"hot-spot\"></div>\r\n\r\n </button>\r\n </div>\r\n\r\n <!-- OPEN SIDEBAR -->\r\n <div \r\n *ngIf=\"!pullOutSideBar && (true || !showSideBar)\" \r\n class=\"sds-side-bar-button-container open-side-bar-button\"\r\n [class.hidden]=\"showSideBar\"\r\n >\r\n \r\n <button\r\n class=\"btn btn-outline-primary shadow-sm\"\r\n [title]=\"openButtonHint\"\r\n (click)=\"toggleSideBar()\"\r\n >\r\n <fa-icon \r\n [icon]=\"caretIcon\"\r\n [rotate]=\"180\"\r\n size=\"xs\"\r\n >\r\n </fa-icon>\r\n\r\n <div class=\"hot-spot\"></div>\r\n\r\n </button>\r\n </div>\r\n\r\n <aside\r\n class=\"sds-side-bar h-100 border-end\"\r\n [class]=\"(product ? 'product-' + product : null)\"\r\n [class.shadow]=\"pullOutSideBar\"\r\n [class.sds-side-bar-open]=\"showSideBar\"\r\n [style.width.rem]=\"(showSideBar || pullOutSideBar) ? widthRem : enablePullOutMode ? 0.75 : 0\"\r\n \r\n (mouseleave)=\"pullOutSideBar = false\"\r\n >\r\n <div \r\n *ngIf=\"enablePullOutMode && !showSideBar && !pullOutSideBar\"\r\n class=\"sds-side-bar-pull-out h-100 position-absolute\" \r\n style=\"width: 0.75rem;\"\r\n (mouseenter)=\"pullOutSideBar = true\"\r\n >\r\n </div>\r\n\r\n <div class=\"d-flex flex-column flex-grow-0 h-100\" \r\n [style.width.rem]=\"widthRem\">\r\n\r\n <ng-content></ng-content> \r\n </div>\r\n\r\n </aside>\r\n</div>", styles: [".sds-side-bar{transition:.3s;overflow-x:hidden;position:absolute;z-index:10}.sds-side-bar.sds-side-bar-open{position:relative}.sds-side-bar:has(.sds-side-bar-pull-out:hover){width:var(--sds-side-bar-width)!important}.sds-side-bar .sds-side-bar-pull-out{background-color:#f8f9fa}.sds-side-bar-container .sds-side-bar-button-container{position:absolute;z-index:11;height:2.2rem;width:2.2rem;top:.85rem;border-radius:50%;background-color:#fff}.sds-side-bar-container .sds-side-bar-button-container.always-show{visibility:visible;opacity:1}.sds-side-bar-container button{height:2.2rem;width:2.2rem;display:flex;align-items:center;justify-content:center;border:1px solid #CED4DA;border-radius:50%;color:#375d75!important;line-height:1rem}.sds-side-bar-container button:hover{color:#f8f9fa!important}.sds-side-bar-container button .hot-spot{position:absolute;inset:-1rem}.sds-side-bar-container .open-side-bar-button{top:.85rem;right:-2.3rem;transition:visibility 0ms linear .18s;transition:opacity 0ms linear .18s;visibility:visible;opacity:1}.sds-side-bar-container .open-side-bar-button.hidden{visibility:hidden;opacity:0}.sds-side-bar-container:hover .close-side-bar-button:not(.hidden){visibility:visible;opacity:1}.sds-side-bar-container .close-side-bar-button{right:-1.1rem;visibility:hidden;transition:visibility 0s linear;transition:opacity .3s ease-in;opacity:0}:host{display:block}\n"], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
26
97
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsSideBarComponent, decorators: [{
27
98
  type: Component,
28
- args: [{ selector: 'sds-side-bar', template: "<aside\r\n class=\"sds-side-bar \"\r\n [class]=\"(product ? 'product-' + product : null)\"\r\n [class.sds-main-side-bar] = \"isMainSideBar\"\r\n [class.hide-sidebar]=\"!showSideBar\"\r\n>\r\n <div class=\"d-flex flex-column h-100\">\r\n <div class=\"d-flex flex-column flex-grow-0 w-100 h-100\">\r\n <div\r\n *ngIf=\"showSideBarToggleButton\"\r\n class=\"toggle-side-bar-button position-absolute d-md-none rounded-circle toggleSideBar d-flex justify-content-center justify-content-center align-items-center\"\r\n [class.open]=\"showSideBar\"\r\n [title]=\"showSideBar ? hideSideBarText : showSideBarText\"\r\n (click)=\"toggleSideBar()\"\r\n >\r\n <div class=\"toggle-side-bar-icon\">\r\n <fa-icon [icon]=\"caretIcon\"></fa-icon>\r\n </div> \r\n </div>\r\n\r\n <ng-content></ng-content> \r\n </div>\r\n </div>\r\n</aside>\r\n", styles: [".toggle-side-bar-button{transition:transform .2s linear}.toggle-side-bar-button.open .toggle-side-bar-icon{transform:rotate(-180deg)}\n"] }]
29
- }], ctorParameters: function () { return []; }, propDecorators: { product: [{
99
+ args: [{ selector: 'sds-side-bar', template: "<div \r\n class=\"vh-100 position-relative sds-side-bar-container\"\r\n [class.sds-side-bar-open]=\"showSideBar\" \r\n >\r\n\r\n <!-- CLOSE SIDEBAR -->\r\n <div \r\n *ngIf=\"!pullOutSideBar && (true || showSideBar)\"\r\n class=\"sds-side-bar-button-container close-side-bar-button\"\r\n [class.hidden]=\"!showSideBar\"\r\n [class.always-show]=\"showSideBar && showCloseButton === 'always'\"\r\n >\r\n \r\n <button\r\n class=\"btn btn-outline-primary shadow-sm\"\r\n [title]=\"closeButtonHint\"\r\n (click)=\"toggleSideBar()\"\r\n >\r\n <fa-icon \r\n [icon]=\"caretIcon\" \r\n size=\"xs\"\r\n >\r\n </fa-icon>\r\n\r\n <div class=\"hot-spot\"></div>\r\n\r\n </button>\r\n </div>\r\n\r\n <!-- OPEN SIDEBAR -->\r\n <div \r\n *ngIf=\"!pullOutSideBar && (true || !showSideBar)\" \r\n class=\"sds-side-bar-button-container open-side-bar-button\"\r\n [class.hidden]=\"showSideBar\"\r\n >\r\n \r\n <button\r\n class=\"btn btn-outline-primary shadow-sm\"\r\n [title]=\"openButtonHint\"\r\n (click)=\"toggleSideBar()\"\r\n >\r\n <fa-icon \r\n [icon]=\"caretIcon\"\r\n [rotate]=\"180\"\r\n size=\"xs\"\r\n >\r\n </fa-icon>\r\n\r\n <div class=\"hot-spot\"></div>\r\n\r\n </button>\r\n </div>\r\n\r\n <aside\r\n class=\"sds-side-bar h-100 border-end\"\r\n [class]=\"(product ? 'product-' + product : null)\"\r\n [class.shadow]=\"pullOutSideBar\"\r\n [class.sds-side-bar-open]=\"showSideBar\"\r\n [style.width.rem]=\"(showSideBar || pullOutSideBar) ? widthRem : enablePullOutMode ? 0.75 : 0\"\r\n \r\n (mouseleave)=\"pullOutSideBar = false\"\r\n >\r\n <div \r\n *ngIf=\"enablePullOutMode && !showSideBar && !pullOutSideBar\"\r\n class=\"sds-side-bar-pull-out h-100 position-absolute\" \r\n style=\"width: 0.75rem;\"\r\n (mouseenter)=\"pullOutSideBar = true\"\r\n >\r\n </div>\r\n\r\n <div class=\"d-flex flex-column flex-grow-0 h-100\" \r\n [style.width.rem]=\"widthRem\">\r\n\r\n <ng-content></ng-content> \r\n </div>\r\n\r\n </aside>\r\n</div>", styles: [".sds-side-bar{transition:.3s;overflow-x:hidden;position:absolute;z-index:10}.sds-side-bar.sds-side-bar-open{position:relative}.sds-side-bar:has(.sds-side-bar-pull-out:hover){width:var(--sds-side-bar-width)!important}.sds-side-bar .sds-side-bar-pull-out{background-color:#f8f9fa}.sds-side-bar-container .sds-side-bar-button-container{position:absolute;z-index:11;height:2.2rem;width:2.2rem;top:.85rem;border-radius:50%;background-color:#fff}.sds-side-bar-container .sds-side-bar-button-container.always-show{visibility:visible;opacity:1}.sds-side-bar-container button{height:2.2rem;width:2.2rem;display:flex;align-items:center;justify-content:center;border:1px solid #CED4DA;border-radius:50%;color:#375d75!important;line-height:1rem}.sds-side-bar-container button:hover{color:#f8f9fa!important}.sds-side-bar-container button .hot-spot{position:absolute;inset:-1rem}.sds-side-bar-container .open-side-bar-button{top:.85rem;right:-2.3rem;transition:visibility 0ms linear .18s;transition:opacity 0ms linear .18s;visibility:visible;opacity:1}.sds-side-bar-container .open-side-bar-button.hidden{visibility:hidden;opacity:0}.sds-side-bar-container:hover .close-side-bar-button:not(.hidden){visibility:visible;opacity:1}.sds-side-bar-container .close-side-bar-button{right:-1.1rem;visibility:hidden;transition:visibility 0s linear;transition:opacity .3s ease-in;opacity:0}:host{display:block}\n"] }]
100
+ }], ctorParameters: function () { return []; }, propDecorators: { showCloseButton: [{
101
+ type: Input
102
+ }], enablePullOutMode: [{
103
+ type: Input
104
+ }], widthRem: [{
30
105
  type: Input
31
- }], isMainSideBar: [{
106
+ }], product: [{
32
107
  type: Input
33
- }], showSideBarToggleButton: [{
108
+ }], autoHideScreenWidth: [{
34
109
  type: Input
35
- }], hideSideBarText: [{
110
+ }], closeButtonHint: [{
36
111
  type: Input
37
- }], showSideBarText: [{
112
+ }], openButtonHint: [{
38
113
  type: Input
39
114
  }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFrQixjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQU9wRixNQUFNLE9BQU8sbUJBQW1CO0lBYzVCO1FBWk8sZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFbEIsWUFBTyxHQUFVLEVBQUUsQ0FBQztRQUNwQixrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUMvQiw0QkFBdUIsR0FBWSxLQUFLLENBQUM7UUFNM0MsY0FBUyxHQUFtQixjQUFjLENBQUM7SUFFbkMsQ0FBQztJQUVoQixRQUFRLEtBQVUsQ0FBQztJQUVaLGFBQWEsQ0FBQyxLQUFlO1FBQ2hDLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztTQUM1QjthQUFNO1lBQ0gsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7U0FDeEM7SUFDTCxDQUFDOztnSEF4QlEsbUJBQW1CO29HQUFuQixtQkFBbUIsZ1BDUmhDLHFoQ0F3QkE7MkZEaEJhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDSSxjQUFjOzBFQVFmLE9BQU87c0JBQWYsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFFVSxlQUFlO3NCQUE5QixLQUFLO2dCQUNVLGVBQWU7c0JBQTlCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSWNvbkRlZmluaXRpb24sIGZhQ2hldnJvblJpZ2h0IH0gZnJvbSAnQGZvcnRhd2Vzb21lL3Byby1yZWd1bGFyLXN2Zy1pY29ucyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnc2RzLXNpZGUtYmFyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9zaWRlLWJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9zaWRlLWJhci5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RzU2lkZUJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gICAgcHVibGljIHNob3dTaWRlQmFyID0gZmFsc2U7XHJcblxyXG4gICAgQElucHV0KCkgcHJvZHVjdDpzdHJpbmcgPSAnJztcclxuICAgIEBJbnB1dCgpIGlzTWFpblNpZGVCYXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIHNob3dTaWRlQmFyVG9nZ2xlQnV0dG9uOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgQElucHV0KCkgcHVibGljIGhpZGVTaWRlQmFyVGV4dD86IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93U2lkZUJhclRleHQ/OiBzdHJpbmc7XHJcblxyXG5cclxuICAgIHB1YmxpYyBjYXJldEljb246IEljb25EZWZpbml0aW9uID0gZmFDaGV2cm9uUmlnaHQ7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge31cclxuXHJcbiAgICBwdWJsaWMgdG9nZ2xlU2lkZUJhcihzdGF0ZT86IGJvb2xlYW4pIHtcclxuICAgICAgICBpZiAoc3RhdGUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICB0aGlzLnNob3dTaWRlQmFyID0gc3RhdGU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5zaG93U2lkZUJhciA9ICF0aGlzLnNob3dTaWRlQmFyO1xyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcbn1cclxuIiwiPGFzaWRlXHJcbiAgICBjbGFzcz1cInNkcy1zaWRlLWJhciBcIlxyXG4gICAgW2NsYXNzXT1cIihwcm9kdWN0ID8gJ3Byb2R1Y3QtJyArIHByb2R1Y3QgOiBudWxsKVwiXHJcbiAgICBbY2xhc3Muc2RzLW1haW4tc2lkZS1iYXJdID0gXCJpc01haW5TaWRlQmFyXCJcclxuICAgIFtjbGFzcy5oaWRlLXNpZGViYXJdPVwiIXNob3dTaWRlQmFyXCJcclxuPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBoLTEwMFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gZmxleC1ncm93LTAgdy0xMDAgaC0xMDBcIj5cclxuICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzaG93U2lkZUJhclRvZ2dsZUJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRvZ2dsZS1zaWRlLWJhci1idXR0b24gcG9zaXRpb24tYWJzb2x1dGUgZC1tZC1ub25lIHJvdW5kZWQtY2lyY2xlIHRvZ2dsZVNpZGVCYXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgW2NsYXNzLm9wZW5dPVwic2hvd1NpZGVCYXJcIlxyXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cInNob3dTaWRlQmFyID8gaGlkZVNpZGVCYXJUZXh0IDogc2hvd1NpZGVCYXJUZXh0XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVTaWRlQmFyKClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9nZ2xlLXNpZGUtYmFyLWljb25cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJjYXJldEljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gICAgXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PiAgICAgICAgICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2FzaWRlPlxyXG4iXX0=
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQStDLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBa0IsV0FBVyxFQUFrQixNQUFNLGtDQUFrQyxDQUFDO0FBQy9GLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFDL0IsZ0VBQWdFO0FBQ2hFLCtLQUErSztBQU8vSyxNQUFNLE9BQU8sbUJBQW1CO0lBNEU1QjtRQTFFQTs7Ozs7OztXQU9HO1FBQ2Esb0JBQWUsR0FBc0IsTUFBTSxDQUFDO1FBRTVEOzs7Ozs7V0FNRztRQUNhLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQUVuRDs7Ozs7V0FLRztRQUNhLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFFdEM7Ozs7Ozs7V0FPRztRQUNNLFlBQU8sR0FBK0QsV0FBVyxDQUFDO1FBRTNGOzs7Ozs7O1dBT0c7UUFDYSx3QkFBbUIsR0FBdUIsR0FBRyxDQUFDO1FBbUJ2RCxnQkFBVyxHQUFHLElBQUksQ0FBQztRQUNuQixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixjQUFTLEdBQW1CLFdBQVcsQ0FBQztRQUN4QyxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUUvQixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4Qix5QkFBb0IsR0FBWSxLQUFLLENBQUM7UUFFdEMsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBSTFDLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNoQyxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDOUIsSUFBSSxJQUFJLENBQUMsb0JBQW9CLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO2dCQUN2RCxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2dCQUVyRSxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO2dCQUVsRSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBRWhELElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtvQkFDckIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7aUJBQzVCO2FBQ0o7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksT0FBTyxDQUFDLHdCQUF3QixDQUFDLEVBQUU7WUFDbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUMvQjtJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQztRQUNqQyxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVNLGFBQWEsQ0FBQyxLQUFlO1FBQ2hDLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztTQUM1QjthQUFNO1lBQ0gsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7U0FDeEM7SUFDTCxDQUFDOztnSEFwSFEsbUJBQW1CO29HQUFuQixtQkFBbUIsNlRDWGhDLHE4RUE2RU07MkZEbEVPLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDSSxjQUFjOzBFQWNSLGVBQWU7c0JBQTlCLEtBQUs7Z0JBU1UsaUJBQWlCO3NCQUFoQyxLQUFLO2dCQVFVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBVUcsT0FBTztzQkFBZixLQUFLO2dCQVVVLG1CQUFtQjtzQkFBbEMsS0FBSztnQkFRVSxlQUFlO3NCQUE5QixLQUFLO2dCQVFVLGNBQWM7c0JBQTdCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEljb25EZWZpbml0aW9uLCBmYUFuZ2xlTGVmdCwgZmFDaGV2cm9uUmlnaHQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvcHJvLXNvbGlkLXN2Zy1pY29ucyc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuLy8gaW1wb3J0IHsgZmFTaWRlYmFyIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3Byby1saWdodC1zdmctaWNvbnMnO1xyXG4vLyBpbXBvcnQgeyBJY29uRGVmaW5pdGlvbiwgZmFTaWRlYmFyLCBmYUNoZXZyb25SaWdodCwgZmFHcmlwVmVydGljYWwsIGZhR3JpcExpbmVzVmVydGljYWwsIGZhQ2hldnJvbkxlZnQsIGZhQXJyb3dSaWdodEZyb21CcmFja2V0IH0gZnJvbSAnQGZvcnRhd2Vzb21lL3Byby1yZWd1bGFyLXN2Zy1pY29ucyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnc2RzLXNpZGUtYmFyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9zaWRlLWJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9zaWRlLWJhci5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RzU2lkZUJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGVmaW5lIHdoZW4gdGhlIGhpZGUgcGFuZWwgYnV0dG9uIGlzIHNob3duLiAgXHJcbiAgICAgKiBEZWZhdWx0IGlzICdhdXRvJyB3aGljaCB3aWxsIG9ubHkgc2hvdyB0aGUgYnV0dG9uIHdoZW4gdGhlIHVzZXJzIGhvdmVycyBvdmVyIHRoZSBwYW5lbC5cclxuICAgICAqICdhbHdheXMnIHdpbGwgYWx3YXlzIHNob3cgdGhlIGJ1dHRvbi5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7KCdhbHdheXMnIHwgJ2F1dG8nKX1cclxuICAgICAqIEBtZW1iZXJvZiBTZHNTaWRlQmFyQ29tcG9uZW50XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93Q2xvc2VCdXR0b246ICdhbHdheXMnIHwgJ2F1dG8nID0gJ2F1dG8nO1xyXG4gICAgXHJcbiAgICAvKipcclxuICAgICAqIFB1bGwgb3V0IG1vZGUgd2lsbCBzaG93IHRoZSBzaWRlIGJhciBhcyB1c2VyIGhvdmVycyBvdmVyIHRoZSBsZWZ0IHNpZGUgb2YgdGhlIHNjcmVlblxyXG4gICAgICogV2hlbiBzaWRlIGJhciBpcyBpbiBwdWxsIG91dCBtb2RlIGl0IHdpbGwgYmUgcmVuZGVyZWQgb3ZlciB0aGUgbWFpbiBjb250ZW50cy5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBTZHNTaWRlQmFyQ29tcG9uZW50XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBlbmFibGVQdWxsT3V0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGVmaW5lIHRoZSB3aWR0aCBvZiB0aGUgc2lkZSBiYXIgaW4gcmVtLlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtudW1iZXJ9XHJcbiAgICAgKiBAbWVtYmVyb2YgU2RzU2lkZUJhckNvbXBvbmVudFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgd2lkdGhSZW06IG51bWJlciA9IDE0O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogUHJvZHVjdCBuYW1lIGRlZmluZXMgdGhlIGNvbG9yIHNjaGVtZSBvZiB0aGUgc2lkZSBiYXIuXHJcbiAgICAgKiBEZWZhdWx0IGlzICdhbGwtaG91cnMnLlxyXG4gICAgICogT3B0aW9uczogJ2FsbC1ob3VycycsICdkb29yLWNsb3VkJywgJ215LWhvdXJzJywgJ3RpbWUtYW5kLXNwYWNlJ1xyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtzdHJpbmd9XHJcbiAgICAgKiBAbWVtYmVyb2YgU2RzU2lkZUJhckNvbXBvbmVudFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwcm9kdWN0OiAnYWxsLWhvdXJzJyB8ICdkb29yLWNsb3VkJyB8ICdteS1ob3VycycgfCAndGltZS1hbmQtc3BhY2UnID0gJ2FsbC1ob3Vycyc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBEZWZpbmUgdGhlIHdpZHRoIG9mIHRoZSBzY3JlZW4gdGhhdCB0cmlnZ2VycyBoaWRpbmcgb2YgdGhlIHNpZGUgYmFyLlxyXG4gICAgICogTm90ZSB0aGF0IHRoZSB3aWR0aCBpcyBjaGVja2VkIGF0IHRoZSBjb21wb25lbnQgY3JlYXRpb24gYW5kIG5vdCB3aGVuIHRoZSBzY3JlZW4gaXMgcmVzaXplZC5cclxuICAgICAqIElmIHVzZXIgcmVzaXplcyB0aGUgc2NyZWVuIGhlIG11c3QgbWFudWFsbHkgaGlkZSB0aGUgc2lkZSBiYXIuXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUgeyhudW1iZXIgfCB1bmRlZmluZWQpfVxyXG4gICAgICogQG1lbWJlcm9mIFNkc1NpZGVCYXJDb21wb25lbnRcclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIGF1dG9IaWRlU2NyZWVuV2lkdGg6IG51bWJlciB8IHVuZGVmaW5lZCA9IDk5MjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIERlZmluZSB0aGUgaGludCBvZiB0aGUgaGlkZSBidXR0b24uXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge3N0cmluZ31cclxuICAgICAqIEBtZW1iZXJvZiBTZHNTaWRlQmFyQ29tcG9uZW50XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBjbG9zZUJ1dHRvbkhpbnQ/OiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBEZWZpbmUgdGhlIGhpbnQgb2YgdGhlIHNob3cgYnV0dG9uLlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtzdHJpbmd9XHJcbiAgICAgKiBAbWVtYmVyb2YgU2RzU2lkZUJhckNvbXBvbmVudFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgb3BlbkJ1dHRvbkhpbnQ/OiBzdHJpbmc7XHJcblxyXG5cclxuICAgIHB1YmxpYyBzaG93U2lkZUJhciA9IHRydWU7XHJcbiAgICBwdWJsaWMgcHVsbE91dFNpZGVCYXIgPSBmYWxzZTsgICAgXHJcbiAgICBwdWJsaWMgY2FyZXRJY29uOiBJY29uRGVmaW5pdGlvbiA9IGZhQW5nbGVMZWZ0O1xyXG4gICAgcHVibGljIGF1dG9IaWRlQWN0aXZlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgcHJpdmF0ZSBzY3JlZW5XaWR0aDogbnVtYmVyID0gMDtcclxuICAgIHByaXZhdGUgY29tcG9uZW50SW5pdGlhbGl6ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBwcml2YXRlIF9jaGVja0F1dG9IaWRlJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcblxyXG4gICAgICAgIHRoaXMuX2NoZWNrQXV0b0hpZGUkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdjaGVjayBhdXRvaGlkZScpO1xyXG4gICAgICAgICAgICBpZiAodGhpcy5jb21wb25lbnRJbml0aWFsaXplZCAmJiB0aGlzLmF1dG9IaWRlU2NyZWVuV2lkdGgpIHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCd0aGlzLmF1dG9IaWRlU2NyZWVuV2lkdGhSZW0nLCB0aGlzLmF1dG9IaWRlU2NyZWVuV2lkdGgpO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuYXV0b0hpZGVBY3RpdmUgPSB0aGlzLnNjcmVlbldpZHRoIDwgdGhpcy5hdXRvSGlkZVNjcmVlbldpZHRoO1xyXG5cclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdoaWRlU2lkZUJhcicsIHRoaXMuYXV0b0hpZGVBY3RpdmUpO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmF1dG9IaWRlQWN0aXZlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93U2lkZUJhciA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9jaGVja0F1dG9IaWRlJC51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBpZiAoY2hhbmdlc1snYXV0b0hpZGVTY3JlZW5XaWR0aFJlbSddKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NoZWNrQXV0b0hpZGUkLm5leHQoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7ICBcclxuICAgICAgICB0aGlzLmNvbXBvbmVudEluaXRpYWxpemVkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7IFxyXG4gICAgICAgIGNvbnNvbGUubG9nKCdzY3JlZW5XaWR0aCcsIHRoaXMuc2NyZWVuV2lkdGgpO1xyXG4gICAgICAgIHRoaXMuX2NoZWNrQXV0b0hpZGUkLm5leHQoKTtcclxuICAgIH0gIFxyXG5cclxuICAgIHB1YmxpYyB0b2dnbGVTaWRlQmFyKHN0YXRlPzogYm9vbGVhbikge1xyXG4gICAgICAgIGlmIChzdGF0ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2hvd1NpZGVCYXIgPSBzdGF0ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnNob3dTaWRlQmFyID0gIXRoaXMuc2hvd1NpZGVCYXI7XHJcbiAgICAgICAgfVxyXG4gICAgfSAgICBcclxufVxyXG4iLCI8ZGl2IFxyXG4gICAgY2xhc3M9XCJ2aC0xMDAgcG9zaXRpb24tcmVsYXRpdmUgc2RzLXNpZGUtYmFyLWNvbnRhaW5lclwiXHJcbiAgICBbY2xhc3Muc2RzLXNpZGUtYmFyLW9wZW5dPVwic2hvd1NpZGVCYXJcIiAgIFxyXG4gICAgPlxyXG5cclxuICAgIDwhLS0gQ0xPU0UgU0lERUJBUiAtLT5cclxuICAgIDxkaXYgXHJcbiAgICAgICAgKm5nSWY9XCIhcHVsbE91dFNpZGVCYXIgJiYgKHRydWUgfHwgc2hvd1NpZGVCYXIpXCJcclxuICAgICAgICBjbGFzcz1cInNkcy1zaWRlLWJhci1idXR0b24tY29udGFpbmVyIGNsb3NlLXNpZGUtYmFyLWJ1dHRvblwiXHJcbiAgICAgICAgW2NsYXNzLmhpZGRlbl09XCIhc2hvd1NpZGVCYXJcIlxyXG4gICAgICAgIFtjbGFzcy5hbHdheXMtc2hvd109XCJzaG93U2lkZUJhciAmJiBzaG93Q2xvc2VCdXR0b24gPT09ICdhbHdheXMnXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1wcmltYXJ5IHNoYWRvdy1zbVwiXHJcbiAgICAgICAgICAgIFt0aXRsZV09XCJjbG9zZUJ1dHRvbkhpbnRcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlU2lkZUJhcigpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICAgIDxmYS1pY29uIFxyXG4gICAgICAgICAgICAgICAgW2ljb25dPVwiY2FyZXRJY29uXCIgIFxyXG4gICAgICAgICAgICAgICAgc2l6ZT1cInhzXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgPC9mYS1pY29uPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhvdC1zcG90XCI+PC9kaXY+XHJcblxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPCEtLSBPUEVOIFNJREVCQVIgLS0+XHJcbiAgICA8ZGl2IFxyXG4gICAgICAgICpuZ0lmPVwiIXB1bGxPdXRTaWRlQmFyICYmICh0cnVlIHx8ICFzaG93U2lkZUJhcilcIiAgICBcclxuICAgICAgICBjbGFzcz1cInNkcy1zaWRlLWJhci1idXR0b24tY29udGFpbmVyIG9wZW4tc2lkZS1iYXItYnV0dG9uXCJcclxuICAgICAgICBbY2xhc3MuaGlkZGVuXT1cInNob3dTaWRlQmFyXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1wcmltYXJ5IHNoYWRvdy1zbVwiXHJcbiAgICAgICAgICAgIFt0aXRsZV09XCJvcGVuQnV0dG9uSGludFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVTaWRlQmFyKClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgICAgPGZhLWljb24gXHJcbiAgICAgICAgICAgICAgICBbaWNvbl09XCJjYXJldEljb25cIlxyXG4gICAgICAgICAgICAgICAgW3JvdGF0ZV09XCIxODBcIlxyXG4gICAgICAgICAgICAgICAgc2l6ZT1cInhzXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgPC9mYS1pY29uPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhvdC1zcG90XCI+PC9kaXY+XHJcblxyXG4gICAgICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxhc2lkZVxyXG4gICAgICAgIGNsYXNzPVwic2RzLXNpZGUtYmFyIGgtMTAwIGJvcmRlci1lbmRcIlxyXG4gICAgICAgIFtjbGFzc109XCIocHJvZHVjdCA/ICdwcm9kdWN0LScgKyBwcm9kdWN0IDogbnVsbClcIlxyXG4gICAgICAgIFtjbGFzcy5zaGFkb3ddPVwicHVsbE91dFNpZGVCYXJcIlxyXG4gICAgICAgIFtjbGFzcy5zZHMtc2lkZS1iYXItb3Blbl09XCJzaG93U2lkZUJhclwiXHJcbiAgICAgICAgW3N0eWxlLndpZHRoLnJlbV09XCIoc2hvd1NpZGVCYXIgfHwgcHVsbE91dFNpZGVCYXIpID8gd2lkdGhSZW0gOiBlbmFibGVQdWxsT3V0TW9kZSA/IDAuNzUgOiAwXCJcclxuICAgICAgICBcclxuICAgICAgICAobW91c2VsZWF2ZSk9XCJwdWxsT3V0U2lkZUJhciA9IGZhbHNlXCJcclxuICAgID5cclxuICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICAqbmdJZj1cImVuYWJsZVB1bGxPdXRNb2RlICYmICAhc2hvd1NpZGVCYXIgJiYgIXB1bGxPdXRTaWRlQmFyXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJzZHMtc2lkZS1iYXItcHVsbC1vdXQgaC0xMDAgcG9zaXRpb24tYWJzb2x1dGVcIiBcclxuICAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogMC43NXJlbTtcIlxyXG4gICAgICAgICAgICAobW91c2VlbnRlcik9XCJwdWxsT3V0U2lkZUJhciA9IHRydWVcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gZmxleC1ncm93LTAgaC0xMDBcIiBcclxuICAgICAgICAgICAgW3N0eWxlLndpZHRoLnJlbV09XCJ3aWR0aFJlbVwiPlxyXG5cclxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PiAgICAgICAgICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2FzaWRlPlxyXG48L2Rpdj4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './static-value.module';
2
+ export * from './static-value.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL3N0YXRpYy12YWx1ZS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3RhdGljLXZhbHVlLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3RhdGljLXZhbHVlLmNvbXBvbmVudCc7Il19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BpY2FpbnRlcm5hdGlvbmFsLW5neC1zZHMtY29tcG9uZW50cy1zcmMtbGliLXN0YXRpYy12YWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL3N0YXRpYy12YWx1ZS9zcGljYWludGVybmF0aW9uYWwtbmd4LXNkcy1jb21wb25lbnRzLXNyYy1saWItc3RhdGljLXZhbHVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,25 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@fortawesome/angular-fontawesome";
4
+ import * as i2 from "@angular/common";
5
+ export class SdsStaticValueComponent {
6
+ constructor() {
7
+ this.label = '';
8
+ this.showColon = true;
9
+ }
10
+ ngOnInit() {
11
+ }
12
+ }
13
+ SdsStaticValueComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsStaticValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
+ SdsStaticValueComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsStaticValueComponent, selector: "sds-static-value", inputs: { icon: "icon", label: "label", showColon: "showColon" }, ngImport: i0, template: "<div class=\"d-flex gap-1 align-items-center\">\r\n <fa-icon *ngIf=\"icon\" [fixedWidth]=\"true\" [icon]=\"icon\"></fa-icon>\r\n <div *ngIf=\"label || showColon\">\r\n <span>{{label}}</span>\r\n <span *ngIf=\"showColon\">:</span>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", styles: [""], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsStaticValueComponent, decorators: [{
16
+ type: Component,
17
+ args: [{ selector: 'sds-static-value', template: "<div class=\"d-flex gap-1 align-items-center\">\r\n <fa-icon *ngIf=\"icon\" [fixedWidth]=\"true\" [icon]=\"icon\"></fa-icon>\r\n <div *ngIf=\"label || showColon\">\r\n <span>{{label}}</span>\r\n <span *ngIf=\"showColon\">:</span>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", styles: [""] }]
18
+ }], ctorParameters: function () { return []; }, propDecorators: { icon: [{
19
+ type: Input
20
+ }], label: [{
21
+ type: Input
22
+ }], showColon: [{
23
+ type: Input
24
+ }] } });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXZhbHVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL3N0YXRpYy12YWx1ZS9zdGF0aWMtdmFsdWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvc3RhdGljLXZhbHVlL3N0YXRpYy12YWx1ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7OztBQVF6RCxNQUFNLE9BQU8sdUJBQXVCO0lBUWhDO1FBTGdCLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsY0FBUyxHQUFZLElBQUksQ0FBQztJQUkxQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOztvSEFYUSx1QkFBdUI7d0dBQXZCLHVCQUF1QiwwSENScEMsb1RBT007MkZEQ08sdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQjswRUFNVixJQUFJO3NCQUFuQixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsU0FBUztzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJY29uUHJvcCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3Nkcy1zdGF0aWMtdmFsdWUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdGF0aWMtdmFsdWUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N0YXRpYy12YWx1ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZHNTdGF0aWNWYWx1ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gICAgQElucHV0KCkgcHVibGljIGljb246IEljb25Qcm9wIHwgdW5kZWZpbmVkO1xyXG4gICAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmcgPSAnJztcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93Q29sb246IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuXHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMSBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgIDxmYS1pY29uICpuZ0lmPVwiaWNvblwiIFtmaXhlZFdpZHRoXT1cInRydWVcIiBbaWNvbl09XCJpY29uXCI+PC9mYS1pY29uPlxyXG4gICAgPGRpdiAqbmdJZj1cImxhYmVsIHx8IHNob3dDb2xvblwiPlxyXG4gICAgICAgIDxzcGFuPnt7bGFiZWx9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cInNob3dDb2xvblwiPjo8L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuPC9kaXY+Il19
@@ -0,0 +1,30 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { SdsStaticValueComponent } from './static-value.component';
4
+ import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
5
+ import * as i0 from "@angular/core";
6
+ export class SdsStaticValueModule {
7
+ }
8
+ SdsStaticValueModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsStaticValueModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ SdsStaticValueModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsStaticValueModule, declarations: [SdsStaticValueComponent], imports: [CommonModule,
10
+ FontAwesomeModule], exports: [SdsStaticValueComponent] });
11
+ SdsStaticValueModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsStaticValueModule, imports: [[
12
+ CommonModule,
13
+ FontAwesomeModule
14
+ ]] });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsStaticValueModule, decorators: [{
16
+ type: NgModule,
17
+ args: [{
18
+ declarations: [
19
+ SdsStaticValueComponent
20
+ ],
21
+ imports: [
22
+ CommonModule,
23
+ FontAwesomeModule
24
+ ],
25
+ exports: [
26
+ SdsStaticValueComponent
27
+ ]
28
+ }]
29
+ }] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXZhbHVlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL3N0YXRpYy12YWx1ZS9zdGF0aWMtdmFsdWUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQWNyRSxNQUFNLE9BQU8sb0JBQW9COztpSEFBcEIsb0JBQW9CO2tIQUFwQixvQkFBb0IsaUJBVnpCLHVCQUF1QixhQUd2QixZQUFZO1FBQ1osaUJBQWlCLGFBR2pCLHVCQUF1QjtrSEFHbEIsb0JBQW9CLFlBUnBCO1lBQ0wsWUFBWTtZQUNaLGlCQUFpQjtTQUNwQjsyRkFLUSxvQkFBb0I7a0JBWmhDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFO3dCQUNWLHVCQUF1QjtxQkFDMUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osaUJBQWlCO3FCQUNwQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsdUJBQXVCO3FCQUMxQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFNkc1N0YXRpY1ZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi9zdGF0aWMtdmFsdWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9udEF3ZXNvbWVNb2R1bGUgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgU2RzU3RhdGljVmFsdWVDb21wb25lbnRcclxuICAgIF0sXHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ29tbW9uTW9kdWxlLCBcclxuICAgICAgICBGb250QXdlc29tZU1vZHVsZVxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtcclxuICAgICAgICBTZHNTdGF0aWNWYWx1ZUNvbXBvbmVudFxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RzU3RhdGljVmFsdWVNb2R1bGUge31cclxuIl19
@@ -1,14 +1,13 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { EventEmitter, Component, ChangeDetectionStrategy, ViewChild, Input, Output, NgModule } from '@angular/core';
3
- import * as i4 from '@angular/common';
3
+ import * as i3 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { faGrid } from '@fortawesome/pro-solid-svg-icons';
6
- import * as i1 from '@fortawesome/angular-fontawesome';
7
- import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
8
- import * as i2 from 'devextreme-angular/ui/popover';
6
+ import * as i1 from 'devextreme-angular/ui/popover';
9
7
  import { DxPopoverModule } from 'devextreme-angular/ui/popover';
10
- import * as i3 from 'devextreme-angular/ui/scroll-view';
8
+ import * as i2 from 'devextreme-angular/ui/scroll-view';
11
9
  import { DxScrollViewModule } from 'devextreme-angular/ui/scroll-view';
10
+ import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
12
11
 
13
12
  class SdsAppSwitcherComponent {
14
13
  constructor() {
@@ -52,14 +51,14 @@ class SdsAppSwitcherComponent {
52
51
  this.productClick.emit(product);
53
52
  }
54
53
  onDropdownClicked() {
55
- this.showDropdown = true;
54
+ this.showDropdown = !this.showDropdown;
56
55
  }
57
56
  }
58
57
  SdsAppSwitcherComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsAppSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
59
- SdsAppSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsAppSwitcherComponent, selector: "sds-app-switcher", inputs: { productCode: "productCode", userProductCodes: "userProductCodes", tenantProducts: "tenantProducts", switchText: "switchText", discoverText: "discoverText" }, outputs: { productClick: "productClick" }, viewQueries: [{ propertyName: "popover", first: true, predicate: ["popover"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template #productTemplate let-product=\"product\">\r\n <div class=\"product-logo\">\r\n <img [src]=\"product.logoUri\" alt=\"{{ product.Name }}\">\r\n </div>\r\n <div class=\"product-title d-flex align-items-center\">\r\n {{product.name}}\r\n </div>\r\n <div class=\"product-description\">\r\n {{product.description}}\r\n </div>\r\n</ng-template>\r\n\r\n<div \r\n [id]=\"elementUUID\"\r\n class=\"btn-group app-switcher\">\r\n <button \r\n type=\"button\" \r\n class=\"btn btn-link rounded p-0 text-dark switcher-button\"\r\n aria-controls=\"dropdown-basic\"\r\n (click)=\"onDropdownClicked()\">\r\n <fa-icon \r\n [icon]=\"selectorIcon\" \r\n [fixedWidth]=\"true\">\r\n </fa-icon>\r\n </button>\r\n</div>\r\n\r\n<dx-popover\r\n #popover\r\n target=\"#{{elementUUID}}\"\r\n [(visible)]=\"showDropdown\"\r\n >\r\n <dx-scroll-view \r\n showScrollbar=\"always\">\r\n \r\n <div class=\"app-switcher-menu\">\r\n <ng-container *ngIf=\"showSkeleton\">\r\n <div class=\"header skeleton skeleton-height-1 w-50 \"></div>\r\n <div class=\"product mt-2 skeleton skeleton-height-2\"></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && activatedProducts.length > 0\">\r\n <h6 class=\"header\">{{ switchText }}</h6>\r\n <div *ngFor=\"let activatedProduct of activatedProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(activatedProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: activatedProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && discoverProducts.length > 0\">\r\n <h6 class=\"header\">{{ discoverText }}</h6>\r\n\r\n <div *ngFor=\"let discoverProduct of discoverProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(discoverProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: discoverProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </dx-scroll-view>\r\n</dx-popover>\r\n\r\n ", styles: [""], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { type: i2.DxPopoverComponent, selector: "dx-popover", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "elementAttr", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showEvent", "showTitle", "target", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "onTitleRendered", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showEventChange", "showTitleChange", "targetChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { type: i3.DxScrollViewComponent, selector: "dx-scroll-view", inputs: ["bounceEnabled", "direction", "disabled", "elementAttr", "height", "pulledDownText", "pullingDownText", "reachBottomText", "refreshingText", "rtlEnabled", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onPullDown", "onReachBottom", "onScroll", "onUpdated", "bounceEnabledChange", "directionChange", "disabledChange", "elementAttrChange", "heightChange", "pulledDownTextChange", "pullingDownTextChange", "reachBottomTextChange", "refreshingTextChange", "rtlEnabledChange", "scrollByContentChange", "scrollByThumbChange", "showScrollbarChange", "useNativeChange", "widthChange"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
58
+ SdsAppSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsAppSwitcherComponent, selector: "sds-app-switcher", inputs: { productCode: "productCode", userProductCodes: "userProductCodes", tenantProducts: "tenantProducts", switchText: "switchText", discoverText: "discoverText" }, outputs: { productClick: "productClick" }, viewQueries: [{ propertyName: "popover", first: true, predicate: ["popover"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template #productTemplate let-product=\"product\">\r\n <div class=\"product-logo\">\r\n <img [src]=\"product.logoUri\" alt=\"{{ product.Name }}\">\r\n </div>\r\n <div class=\"product-title d-flex align-items-center\">\r\n {{product.name}}\r\n </div>\r\n <div class=\"product-description\">\r\n {{product.description}}\r\n </div>\r\n</ng-template>\r\n\r\n<div \r\n [id]=\"elementUUID\"\r\n class=\"btn-group app-switcher\">\r\n <button \r\n type=\"button\" \r\n class=\"btn btn-link rounded p-0 text-dark switcher-button d-flex align-items-center justify-content-center\"\r\n aria-controls=\"dropdown-basic\"\r\n (click)=\"onDropdownClicked()\">\r\n \r\n <svg width=\"0.86rem\" height=\"0.86rem\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <!-- Row 1 -->\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0\" y=\"0\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.33rem\" y=\"0\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.66rem\" y=\"0\" fill=\"black\" />\r\n \r\n <!-- Row 2 -->\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0\" y=\"0.33rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.33rem\" y=\"0.33rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.66rem\" y=\"0.33rem\" fill=\"black\" />\r\n \r\n <!-- Row 3 -->\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0\" y=\"0.66rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.33rem\" y=\"0.66rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.66rem\" y=\"0.66rem\" fill=\"black\" />\r\n </svg>\r\n \r\n </button>\r\n</div>\r\n\r\n<dx-popover\r\n #popover\r\n target=\"#{{elementUUID}}\"\r\n [(visible)]=\"showDropdown\"\r\n [wrapperAttr]=\"{ class: 'sds-app-switcher-popover' }\"\r\n >\r\n <dx-scroll-view \r\n showScrollbar=\"always\">\r\n \r\n <div class=\"app-switcher-menu\">\r\n <ng-container *ngIf=\"showSkeleton\">\r\n <div class=\"header skeleton skeleton-height-1 w-50 \"></div>\r\n <div class=\"product mt-2 skeleton skeleton-height-2\"></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && activatedProducts.length > 0\">\r\n <h6 class=\"header\">{{ switchText }}</h6>\r\n <div *ngFor=\"let activatedProduct of activatedProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(activatedProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: activatedProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && discoverProducts.length > 0\">\r\n <h6 class=\"header\">{{ discoverText }}</h6>\r\n\r\n <div *ngFor=\"let discoverProduct of discoverProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(discoverProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: discoverProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </dx-scroll-view>\r\n</dx-popover>\r\n\r\n ", styles: [".switcher-button{width:1.5rem!important;height:1.5rem!important;border:none!important;border-radius:0!important}.switcher-button rect{fill:#375d75}::ng-deep .sds-app-switcher-popover .dx-popup-content{padding:.5rem;font-size:1rem}\n"], components: [{ type: i1.DxPopoverComponent, selector: "dx-popover", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "elementAttr", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showEvent", "showTitle", "target", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "onTitleRendered", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showEventChange", "showTitleChange", "targetChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { type: i2.DxScrollViewComponent, selector: "dx-scroll-view", inputs: ["bounceEnabled", "direction", "disabled", "elementAttr", "height", "pulledDownText", "pullingDownText", "reachBottomText", "refreshingText", "rtlEnabled", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onPullDown", "onReachBottom", "onScroll", "onUpdated", "bounceEnabledChange", "directionChange", "disabledChange", "elementAttrChange", "heightChange", "pulledDownTextChange", "pullingDownTextChange", "reachBottomTextChange", "refreshingTextChange", "rtlEnabledChange", "scrollByContentChange", "scrollByThumbChange", "showScrollbarChange", "useNativeChange", "widthChange"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
60
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsAppSwitcherComponent, decorators: [{
61
60
  type: Component,
62
- args: [{ selector: 'sds-app-switcher', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #productTemplate let-product=\"product\">\r\n <div class=\"product-logo\">\r\n <img [src]=\"product.logoUri\" alt=\"{{ product.Name }}\">\r\n </div>\r\n <div class=\"product-title d-flex align-items-center\">\r\n {{product.name}}\r\n </div>\r\n <div class=\"product-description\">\r\n {{product.description}}\r\n </div>\r\n</ng-template>\r\n\r\n<div \r\n [id]=\"elementUUID\"\r\n class=\"btn-group app-switcher\">\r\n <button \r\n type=\"button\" \r\n class=\"btn btn-link rounded p-0 text-dark switcher-button\"\r\n aria-controls=\"dropdown-basic\"\r\n (click)=\"onDropdownClicked()\">\r\n <fa-icon \r\n [icon]=\"selectorIcon\" \r\n [fixedWidth]=\"true\">\r\n </fa-icon>\r\n </button>\r\n</div>\r\n\r\n<dx-popover\r\n #popover\r\n target=\"#{{elementUUID}}\"\r\n [(visible)]=\"showDropdown\"\r\n >\r\n <dx-scroll-view \r\n showScrollbar=\"always\">\r\n \r\n <div class=\"app-switcher-menu\">\r\n <ng-container *ngIf=\"showSkeleton\">\r\n <div class=\"header skeleton skeleton-height-1 w-50 \"></div>\r\n <div class=\"product mt-2 skeleton skeleton-height-2\"></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && activatedProducts.length > 0\">\r\n <h6 class=\"header\">{{ switchText }}</h6>\r\n <div *ngFor=\"let activatedProduct of activatedProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(activatedProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: activatedProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && discoverProducts.length > 0\">\r\n <h6 class=\"header\">{{ discoverText }}</h6>\r\n\r\n <div *ngFor=\"let discoverProduct of discoverProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(discoverProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: discoverProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </dx-scroll-view>\r\n</dx-popover>\r\n\r\n ", styles: [""] }]
61
+ args: [{ selector: 'sds-app-switcher', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #productTemplate let-product=\"product\">\r\n <div class=\"product-logo\">\r\n <img [src]=\"product.logoUri\" alt=\"{{ product.Name }}\">\r\n </div>\r\n <div class=\"product-title d-flex align-items-center\">\r\n {{product.name}}\r\n </div>\r\n <div class=\"product-description\">\r\n {{product.description}}\r\n </div>\r\n</ng-template>\r\n\r\n<div \r\n [id]=\"elementUUID\"\r\n class=\"btn-group app-switcher\">\r\n <button \r\n type=\"button\" \r\n class=\"btn btn-link rounded p-0 text-dark switcher-button d-flex align-items-center justify-content-center\"\r\n aria-controls=\"dropdown-basic\"\r\n (click)=\"onDropdownClicked()\">\r\n \r\n <svg width=\"0.86rem\" height=\"0.86rem\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <!-- Row 1 -->\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0\" y=\"0\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.33rem\" y=\"0\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.66rem\" y=\"0\" fill=\"black\" />\r\n \r\n <!-- Row 2 -->\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0\" y=\"0.33rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.33rem\" y=\"0.33rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.66rem\" y=\"0.33rem\" fill=\"black\" />\r\n \r\n <!-- Row 3 -->\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0\" y=\"0.66rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.33rem\" y=\"0.66rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.66rem\" y=\"0.66rem\" fill=\"black\" />\r\n </svg>\r\n \r\n </button>\r\n</div>\r\n\r\n<dx-popover\r\n #popover\r\n target=\"#{{elementUUID}}\"\r\n [(visible)]=\"showDropdown\"\r\n [wrapperAttr]=\"{ class: 'sds-app-switcher-popover' }\"\r\n >\r\n <dx-scroll-view \r\n showScrollbar=\"always\">\r\n \r\n <div class=\"app-switcher-menu\">\r\n <ng-container *ngIf=\"showSkeleton\">\r\n <div class=\"header skeleton skeleton-height-1 w-50 \"></div>\r\n <div class=\"product mt-2 skeleton skeleton-height-2\"></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && activatedProducts.length > 0\">\r\n <h6 class=\"header\">{{ switchText }}</h6>\r\n <div *ngFor=\"let activatedProduct of activatedProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(activatedProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: activatedProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && discoverProducts.length > 0\">\r\n <h6 class=\"header\">{{ discoverText }}</h6>\r\n\r\n <div *ngFor=\"let discoverProduct of discoverProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(discoverProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: discoverProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </dx-scroll-view>\r\n</dx-popover>\r\n\r\n ", styles: [".switcher-button{width:1.5rem!important;height:1.5rem!important;border:none!important;border-radius:0!important}.switcher-button rect{fill:#375d75}::ng-deep .sds-app-switcher-popover .dx-popup-content{padding:.5rem;font-size:1rem}\n"] }]
63
62
  }], ctorParameters: function () { return []; }, propDecorators: { popover: [{
64
63
  type: ViewChild,
65
64
  args: ['popover', { static: false }]
@@ -1 +1 @@
1
- {"version":3,"file":"spicainternational-ngx-sds-components-src-lib-app-switcher.mjs","sources":["../../../projects/ngx-sds-components/src/lib/app-switcher/app-switcher.component.ts","../../../projects/ngx-sds-components/src/lib/app-switcher/app-switcher.component.html","../../../projects/ngx-sds-components/src/lib/app-switcher/app-switcher.module.ts","../../../projects/ngx-sds-components/src/lib/app-switcher/spicainternational-ngx-sds-components-src-lib-app-switcher.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { faGrid } from '@fortawesome/pro-solid-svg-icons';\r\nimport { DxPopoverComponent } from 'devextreme-angular';\r\n\r\nimport { ProductModel } from './app-switcher.model';\r\n\r\n@Component({\r\n selector: 'sds-app-switcher',\r\n templateUrl: './app-switcher.component.html',\r\n styleUrls: ['./app-switcher.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdsAppSwitcherComponent implements OnInit, OnChanges {\r\n @ViewChild('popover', {static: false}) private popover?: DxPopoverComponent;\r\n \r\n @Input() public productCode: Number | undefined;\r\n @Input() public userProductCodes: Number[] | undefined;\r\n @Input() public tenantProducts: ProductModel[] | undefined;\r\n\r\n @Input() public switchText: string = '';\r\n @Input() public discoverText: string = '';\r\n\r\n @Output() public productClick: EventEmitter<ProductModel> = new EventEmitter();\r\n\r\n\r\n public activatedProducts: ProductModel[];\r\n public discoverProducts: ProductModel[];\r\n \r\n public showSkeleton: boolean;\r\n public selectorIcon = faGrid;\r\n\r\n public elementUUID = 'sds-as-' + crypto.randomUUID();\r\n public showDropdown = false;\r\n \r\n constructor() {\r\n this.showSkeleton = true;\r\n this.activatedProducts = new Array<ProductModel>();\r\n this.discoverProducts = new Array<ProductModel>(); \r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['userProductCodes'] || changes['tenantProducts'] || changes['productCode']) {\r\n if (this.userProductCodes !== undefined && this.tenantProducts !== undefined && this.productCode !== undefined) {\r\n this.activatedProducts = [];\r\n this.discoverProducts = [];\r\n\r\n this.tenantProducts.forEach(product => {\r\n if ((this.userProductCodes as Number[]).includes(product.code)) {\r\n // exclude current product from the list\r\n if (product.code != this.productCode) {\r\n this.activatedProducts.push(product);\r\n }\r\n } else {\r\n this.discoverProducts.push(product);\r\n }\r\n });\r\n this.showSkeleton = false;\r\n } else {\r\n this.showSkeleton = true;\r\n }\r\n this.popover?.instance.repaint();\r\n }\r\n }\r\n\r\n public emitProductClick(product: ProductModel): void {\r\n this.productClick.emit(product);\r\n }\r\n\r\n public onDropdownClicked(){\r\n this.showDropdown = true;\r\n }\r\n\r\n}\r\n","<ng-template #productTemplate let-product=\"product\">\r\n <div class=\"product-logo\">\r\n <img [src]=\"product.logoUri\" alt=\"{{ product.Name }}\">\r\n </div>\r\n <div class=\"product-title d-flex align-items-center\">\r\n {{product.name}}\r\n </div>\r\n <div class=\"product-description\">\r\n {{product.description}}\r\n </div>\r\n</ng-template>\r\n\r\n<div \r\n [id]=\"elementUUID\"\r\n class=\"btn-group app-switcher\">\r\n <button \r\n type=\"button\" \r\n class=\"btn btn-link rounded p-0 text-dark switcher-button\"\r\n aria-controls=\"dropdown-basic\"\r\n (click)=\"onDropdownClicked()\">\r\n <fa-icon \r\n [icon]=\"selectorIcon\" \r\n [fixedWidth]=\"true\">\r\n </fa-icon>\r\n </button>\r\n</div>\r\n\r\n<dx-popover\r\n #popover\r\n target=\"#{{elementUUID}}\"\r\n [(visible)]=\"showDropdown\"\r\n >\r\n <dx-scroll-view \r\n showScrollbar=\"always\">\r\n \r\n <div class=\"app-switcher-menu\">\r\n <ng-container *ngIf=\"showSkeleton\">\r\n <div class=\"header skeleton skeleton-height-1 w-50 \"></div>\r\n <div class=\"product mt-2 skeleton skeleton-height-2\"></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && activatedProducts.length > 0\">\r\n <h6 class=\"header\">{{ switchText }}</h6>\r\n <div *ngFor=\"let activatedProduct of activatedProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(activatedProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: activatedProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && discoverProducts.length > 0\">\r\n <h6 class=\"header\">{{ discoverText }}</h6>\r\n\r\n <div *ngFor=\"let discoverProduct of discoverProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(discoverProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: discoverProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </dx-scroll-view>\r\n</dx-popover>\r\n\r\n ","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdsAppSwitcherComponent } from './app-switcher.component';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { DxPopoverModule } from 'devextreme-angular/ui/popover';\r\nimport { DxScrollViewModule } from 'devextreme-angular/ui/scroll-view';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n SdsAppSwitcherComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FontAwesomeModule,\r\n DxPopoverModule,\r\n DxScrollViewModule\r\n ],\r\n exports: [\r\n SdsAppSwitcherComponent\r\n ]\r\n})\r\nexport class SdsAppSwitcherModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spicainternational-ngx-sds-components-src-lib-app-switcher.mjs","sources":["../../../projects/ngx-sds-components/src/lib/app-switcher/app-switcher.component.ts","../../../projects/ngx-sds-components/src/lib/app-switcher/app-switcher.component.html","../../../projects/ngx-sds-components/src/lib/app-switcher/app-switcher.module.ts","../../../projects/ngx-sds-components/src/lib/app-switcher/spicainternational-ngx-sds-components-src-lib-app-switcher.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { faGrid } from '@fortawesome/pro-solid-svg-icons';\r\nimport { DxPopoverComponent } from 'devextreme-angular';\r\n\r\nimport { ProductModel } from './app-switcher.model';\r\n\r\n@Component({\r\n selector: 'sds-app-switcher',\r\n templateUrl: './app-switcher.component.html',\r\n styleUrls: ['./app-switcher.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdsAppSwitcherComponent implements OnInit, OnChanges {\r\n @ViewChild('popover', {static: false}) private popover?: DxPopoverComponent;\r\n \r\n @Input() public productCode: Number | undefined;\r\n @Input() public userProductCodes: Number[] | undefined;\r\n @Input() public tenantProducts: ProductModel[] | undefined;\r\n\r\n @Input() public switchText: string = '';\r\n @Input() public discoverText: string = '';\r\n\r\n @Output() public productClick: EventEmitter<ProductModel> = new EventEmitter();\r\n\r\n\r\n public activatedProducts: ProductModel[];\r\n public discoverProducts: ProductModel[];\r\n \r\n public showSkeleton: boolean;\r\n public selectorIcon = faGrid;\r\n\r\n public elementUUID = 'sds-as-' + crypto.randomUUID();\r\n public showDropdown = false;\r\n \r\n constructor() {\r\n this.showSkeleton = true;\r\n this.activatedProducts = new Array<ProductModel>();\r\n this.discoverProducts = new Array<ProductModel>(); \r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['userProductCodes'] || changes['tenantProducts'] || changes['productCode']) {\r\n if (this.userProductCodes !== undefined && this.tenantProducts !== undefined && this.productCode !== undefined) {\r\n this.activatedProducts = [];\r\n this.discoverProducts = [];\r\n\r\n this.tenantProducts.forEach(product => {\r\n if ((this.userProductCodes as Number[]).includes(product.code)) {\r\n // exclude current product from the list\r\n if (product.code != this.productCode) {\r\n this.activatedProducts.push(product);\r\n }\r\n } else {\r\n this.discoverProducts.push(product);\r\n }\r\n });\r\n this.showSkeleton = false;\r\n } else {\r\n this.showSkeleton = true;\r\n }\r\n this.popover?.instance.repaint();\r\n }\r\n }\r\n\r\n public emitProductClick(product: ProductModel): void {\r\n this.productClick.emit(product);\r\n }\r\n\r\n public onDropdownClicked(){\r\n this.showDropdown = !this.showDropdown;\r\n }\r\n\r\n}\r\n","<ng-template #productTemplate let-product=\"product\">\r\n <div class=\"product-logo\">\r\n <img [src]=\"product.logoUri\" alt=\"{{ product.Name }}\">\r\n </div>\r\n <div class=\"product-title d-flex align-items-center\">\r\n {{product.name}}\r\n </div>\r\n <div class=\"product-description\">\r\n {{product.description}}\r\n </div>\r\n</ng-template>\r\n\r\n<div \r\n [id]=\"elementUUID\"\r\n class=\"btn-group app-switcher\">\r\n <button \r\n type=\"button\" \r\n class=\"btn btn-link rounded p-0 text-dark switcher-button d-flex align-items-center justify-content-center\"\r\n aria-controls=\"dropdown-basic\"\r\n (click)=\"onDropdownClicked()\">\r\n \r\n <svg width=\"0.86rem\" height=\"0.86rem\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <!-- Row 1 -->\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0\" y=\"0\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.33rem\" y=\"0\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.66rem\" y=\"0\" fill=\"black\" />\r\n \r\n <!-- Row 2 -->\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0\" y=\"0.33rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.33rem\" y=\"0.33rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.66rem\" y=\"0.33rem\" fill=\"black\" />\r\n \r\n <!-- Row 3 -->\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0\" y=\"0.66rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.33rem\" y=\"0.66rem\" fill=\"black\" />\r\n <rect width=\"0.2rem\" height=\"0.2rem\" x=\"0.66rem\" y=\"0.66rem\" fill=\"black\" />\r\n </svg>\r\n \r\n </button>\r\n</div>\r\n\r\n<dx-popover\r\n #popover\r\n target=\"#{{elementUUID}}\"\r\n [(visible)]=\"showDropdown\"\r\n [wrapperAttr]=\"{ class: 'sds-app-switcher-popover' }\"\r\n >\r\n <dx-scroll-view \r\n showScrollbar=\"always\">\r\n \r\n <div class=\"app-switcher-menu\">\r\n <ng-container *ngIf=\"showSkeleton\">\r\n <div class=\"header skeleton skeleton-height-1 w-50 \"></div>\r\n <div class=\"product mt-2 skeleton skeleton-height-2\"></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && activatedProducts.length > 0\">\r\n <h6 class=\"header\">{{ switchText }}</h6>\r\n <div *ngFor=\"let activatedProduct of activatedProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(activatedProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: activatedProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeleton && discoverProducts.length > 0\">\r\n <h6 class=\"header\">{{ discoverText }}</h6>\r\n\r\n <div *ngFor=\"let discoverProduct of discoverProducts\" \r\n class=\"product\"\r\n (click)=\"emitProductClick(discoverProduct)\">\r\n <ng-container \r\n [ngTemplateOutlet]=\"productTemplate\"\r\n [ngTemplateOutletContext]=\"{ product: discoverProduct }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </dx-scroll-view>\r\n</dx-popover>\r\n\r\n ","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdsAppSwitcherComponent } from './app-switcher.component';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { DxPopoverModule } from 'devextreme-angular/ui/popover';\r\nimport { DxScrollViewModule } from 'devextreme-angular/ui/scroll-view';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n SdsAppSwitcherComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FontAwesomeModule,\r\n DxPopoverModule,\r\n DxScrollViewModule\r\n ],\r\n exports: [\r\n SdsAppSwitcherComponent\r\n ]\r\n})\r\nexport class SdsAppSwitcherModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}