@villedemontreal/angular-ui 2.0.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.
- package/README.md +25 -0
- package/esm2020/lib/alert/alert.component.mjs +164 -0
- package/esm2020/lib/alert/index.mjs +8 -0
- package/esm2020/lib/alert/module.mjs +41 -0
- package/esm2020/lib/badge/badge.component.mjs +27 -0
- package/esm2020/lib/badge/index.mjs +8 -0
- package/esm2020/lib/badge/module.mjs +24 -0
- package/esm2020/lib/bao.module.mjs +87 -0
- package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +36 -0
- package/esm2020/lib/breadcrumb/index.mjs +8 -0
- package/esm2020/lib/breadcrumb/module.mjs +25 -0
- package/esm2020/lib/button/button.component.mjs +100 -0
- package/esm2020/lib/button/index.mjs +8 -0
- package/esm2020/lib/button/module.mjs +25 -0
- package/esm2020/lib/card/card.component.mjs +94 -0
- package/esm2020/lib/card/index.mjs +8 -0
- package/esm2020/lib/card/module.mjs +38 -0
- package/esm2020/lib/checkbox/checkbox-group.component.mjs +59 -0
- package/esm2020/lib/checkbox/checkbox.component.mjs +305 -0
- package/esm2020/lib/checkbox/index.mjs +9 -0
- package/esm2020/lib/checkbox/module.mjs +35 -0
- package/esm2020/lib/common-components/error-text/errorText.component.mjs +16 -0
- package/esm2020/lib/common-components/guiding-text/guidingText.component.mjs +16 -0
- package/esm2020/lib/common-components/index.mjs +10 -0
- package/esm2020/lib/common-components/legend-text/legendText.component.mjs +22 -0
- package/esm2020/lib/common-components/module.mjs +32 -0
- package/esm2020/lib/core/colors.mjs +42 -0
- package/esm2020/lib/header-info/header-info.component.mjs +104 -0
- package/esm2020/lib/header-info/index.mjs +8 -0
- package/esm2020/lib/header-info/module.mjs +41 -0
- package/esm2020/lib/icon/bao-icon-registry.mjs +44 -0
- package/esm2020/lib/icon/icon.component.mjs +160 -0
- package/esm2020/lib/icon/icons-dictionary.mjs +123 -0
- package/esm2020/lib/icon/index.mjs +8 -0
- package/esm2020/lib/icon/module.mjs +24 -0
- package/esm2020/lib/list/index.mjs +8 -0
- package/esm2020/lib/list/list.component.mjs +73 -0
- package/esm2020/lib/list/module.mjs +38 -0
- package/esm2020/lib/radio/index.mjs +9 -0
- package/esm2020/lib/radio/module.mjs +56 -0
- package/esm2020/lib/radio/radio-group.component.mjs +250 -0
- package/esm2020/lib/radio/radio.component.mjs +292 -0
- package/esm2020/lib/tag/index.mjs +8 -0
- package/esm2020/lib/tag/module.mjs +24 -0
- package/esm2020/lib/tag/tag.component.mjs +75 -0
- package/esm2020/public-api.mjs +19 -0
- package/esm2020/villedemontreal-angular-ui.mjs +5 -0
- package/fesm2015/villedemontreal-angular-ui.mjs +2461 -0
- package/fesm2015/villedemontreal-angular-ui.mjs.map +1 -0
- package/fesm2020/villedemontreal-angular-ui.mjs +2455 -0
- package/fesm2020/villedemontreal-angular-ui.mjs.map +1 -0
- package/global.scss +6 -0
- package/lib/alert/alert.component.d.ts +77 -0
- package/lib/alert/index.d.ts +2 -0
- package/lib/alert/module.d.ts +10 -0
- package/lib/badge/badge.component.d.ts +6 -0
- package/lib/badge/index.d.ts +2 -0
- package/lib/badge/module.d.ts +8 -0
- package/lib/bao.module.d.ts +17 -0
- package/lib/breadcrumb/breadcrumb.component.d.ts +12 -0
- package/lib/breadcrumb/index.d.ts +2 -0
- package/lib/breadcrumb/module.d.ts +9 -0
- package/lib/button/button.component.d.ts +47 -0
- package/lib/button/index.d.ts +2 -0
- package/lib/button/module.d.ts +9 -0
- package/lib/card/card.component.d.ts +44 -0
- package/lib/card/index.d.ts +2 -0
- package/lib/card/module.d.ts +8 -0
- package/lib/checkbox/checkbox-group.component.d.ts +25 -0
- package/lib/checkbox/checkbox.component.d.ts +152 -0
- package/lib/checkbox/index.d.ts +3 -0
- package/lib/checkbox/module.d.ts +11 -0
- package/lib/common-components/error-text/errorText.component.d.ts +5 -0
- package/lib/common-components/guiding-text/guidingText.component.d.ts +5 -0
- package/lib/common-components/index.d.ts +4 -0
- package/lib/common-components/legend-text/legendText.component.d.ts +6 -0
- package/lib/common-components/module.d.ts +10 -0
- package/lib/core/colors.d.ts +12 -0
- package/lib/header-info/header-info.component.d.ts +39 -0
- package/lib/header-info/index.d.ts +2 -0
- package/lib/header-info/module.d.ts +8 -0
- package/lib/icon/bao-icon-registry.d.ts +12 -0
- package/lib/icon/icon.component.d.ts +43 -0
- package/lib/icon/icons-dictionary.d.ts +3 -0
- package/lib/icon/index.d.ts +2 -0
- package/lib/icon/module.d.ts +8 -0
- package/lib/list/index.d.ts +2 -0
- package/lib/list/list.component.d.ts +21 -0
- package/lib/list/module.d.ts +8 -0
- package/lib/radio/index.d.ts +3 -0
- package/lib/radio/module.d.ts +13 -0
- package/lib/radio/radio-group.component.d.ts +110 -0
- package/lib/radio/radio.component.d.ts +112 -0
- package/lib/tag/index.d.ts +2 -0
- package/lib/tag/module.d.ts +8 -0
- package/lib/tag/tag.component.d.ts +25 -0
- package/package.json +33 -0
- package/public-api.d.ts +13 -0
- package/villedemontreal-angular-ui.d.ts +5 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2022 Ville de Montreal. All rights reserved.
|
|
3
|
+
* Licensed under the MIT license.
|
|
4
|
+
* See LICENSE file in the project root for full license information.
|
|
5
|
+
*/
|
|
6
|
+
import { ChangeDetectionStrategy, Component, Directive, Input, ViewEncapsulation } from '@angular/core';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/common";
|
|
9
|
+
/**
|
|
10
|
+
* A basic content container component that adds the styles of a BAO header-info
|
|
11
|
+
*
|
|
12
|
+
* While this component can be used alone, it also provides a number
|
|
13
|
+
* of preset styles for common header-info sections, including:
|
|
14
|
+
* - bao-header-info-title-group
|
|
15
|
+
* - bao-header-info-content
|
|
16
|
+
* - bao-header-info-title
|
|
17
|
+
* - bao-header-info-surtitle
|
|
18
|
+
* - bao-header-info-subtitle
|
|
19
|
+
*/
|
|
20
|
+
export class BaoHeaderInfoComponent {
|
|
21
|
+
constructor() {
|
|
22
|
+
this.notch = '';
|
|
23
|
+
this.imageUrl = '';
|
|
24
|
+
this.brandBorder = false;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
BaoHeaderInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
+
BaoHeaderInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BaoHeaderInfoComponent, selector: "bao-header-info", inputs: { notch: "notch", imageUrl: "imageUrl", brandBorder: "brandBorder" }, host: { properties: { "class.document-heading-left-notch": "notch === \"left\"" }, classAttribute: "bao-document-heading" }, ngImport: i0, template: "<div *ngIf=\"imageUrl\" class=\"document-heading-image-container\">\n <div\n [ngStyle]=\"{\n 'background-image': 'url(\\'' + imageUrl + '\\')'}\"\n class=\"document-heading-background\"\n ></div>\n</div>\n\n<div class=\"bao-container document-heading-header-container\">\n <div class=\"bao-row document-heading-header\">\n <div class=\"bao-col-12 bao-col-lg-7\">\n <ng-content select=\"bao-header-info-title-group\"></ng-content>\n <div class=\"bao-header-content\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"brandBorder\" class=\"brand-border-bottom\"></div>\n </div>\n </div>\n <div *ngIf=\"notch\" class=\"document-heading-wrapper notch\">\n <div class=\"document-heading-content-wrapper\">\n <div class=\"document-heading-content\"></div>\n </div>\n </div>\n</div>\n", styles: [".bao-container{padding-right:16px;padding-left:16px;margin-right:auto;margin-left:auto;width:100%}@media (min-width: 768px){.bao-container{max-width:768px}}@media (min-width: 992px){.bao-container{max-width:992px}}@media (min-width: 1200px){.bao-container{max-width:1200px}}.bao-row{display:flex;flex-wrap:wrap;margin-right:-16px;margin-left:-16px}.bao-col-12,.bao-col-lg-7{position:relative;width:100%;padding-right:1rem;padding-left:1rem}@media (min-width: 992px){.bao-col-lg-7{flex:0 0 58.33333%;max-width:58.33333%}}.bao-header-info-title-group,.bao-header-info-content,.document-heading-subtitle,.document-heading-surtitle{display:block}.document-heading-header-container{position:relative!important}.bao-document-heading{display:block;padding:2rem 0;position:relative;width:100%}.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2rem;line-height:2.5rem;margin-bottom:0}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1rem;line-height:1.5rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1rem;line-height:1.5rem;color:#000}.bao-document-heading .bao-header-info-title-group>*:not(:first-child){margin-top:1rem}.bao-document-heading .bao-header-content:not(:empty){margin-top:2rem}.bao-document-heading .brand-border-bottom{margin-top:2rem}.bao-document-heading .document-heading-background{background-color:#f8f9fa;background-position:center center;background-repeat:no-repeat;background-size:cover;height:100%;overflow:hidden;position:absolute;top:0;width:100%;z-index:0}.bao-document-heading .document-heading-content{background-color:#fff;height:2rem;padding-left:1rem;padding-right:1rem;position:relative;bottom:-2rem}@media (min-width: 768px){.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2.5rem;line-height:3.5rem}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1.25rem;line-height:1.75rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1.25rem;line-height:1.75rem;color:#000}}@media (min-width: 992px){.bao-document-heading{padding-top:4rem;padding-bottom:4rem}.bao-document-heading .document-heading-content{bottom:-4rem;height:3.5rem;margin:auto}.bao-document-heading.document-heading-left-notch .document-heading-content{max-width:66.66667%;margin:0}.bao-document-heading.document-heading-left-notch .document-heading-content:before{content:\"\";background:#ffffff;width:1000px;height:100%;position:absolute;left:-1000px}.bao-document-heading.document-heading-left-notch .document-heading-content:after{content:\"\";background:#ffffff;width:1rem;height:100%;position:absolute}}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{ selector: 'bao-header-info', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
32
|
+
class: 'bao-document-heading',
|
|
33
|
+
'[class.document-heading-left-notch]': 'notch === "left"'
|
|
34
|
+
}, template: "<div *ngIf=\"imageUrl\" class=\"document-heading-image-container\">\n <div\n [ngStyle]=\"{\n 'background-image': 'url(\\'' + imageUrl + '\\')'}\"\n class=\"document-heading-background\"\n ></div>\n</div>\n\n<div class=\"bao-container document-heading-header-container\">\n <div class=\"bao-row document-heading-header\">\n <div class=\"bao-col-12 bao-col-lg-7\">\n <ng-content select=\"bao-header-info-title-group\"></ng-content>\n <div class=\"bao-header-content\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"brandBorder\" class=\"brand-border-bottom\"></div>\n </div>\n </div>\n <div *ngIf=\"notch\" class=\"document-heading-wrapper notch\">\n <div class=\"document-heading-content-wrapper\">\n <div class=\"document-heading-content\"></div>\n </div>\n </div>\n</div>\n", styles: [".bao-container{padding-right:16px;padding-left:16px;margin-right:auto;margin-left:auto;width:100%}@media (min-width: 768px){.bao-container{max-width:768px}}@media (min-width: 992px){.bao-container{max-width:992px}}@media (min-width: 1200px){.bao-container{max-width:1200px}}.bao-row{display:flex;flex-wrap:wrap;margin-right:-16px;margin-left:-16px}.bao-col-12,.bao-col-lg-7{position:relative;width:100%;padding-right:1rem;padding-left:1rem}@media (min-width: 992px){.bao-col-lg-7{flex:0 0 58.33333%;max-width:58.33333%}}.bao-header-info-title-group,.bao-header-info-content,.document-heading-subtitle,.document-heading-surtitle{display:block}.document-heading-header-container{position:relative!important}.bao-document-heading{display:block;padding:2rem 0;position:relative;width:100%}.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2rem;line-height:2.5rem;margin-bottom:0}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1rem;line-height:1.5rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1rem;line-height:1.5rem;color:#000}.bao-document-heading .bao-header-info-title-group>*:not(:first-child){margin-top:1rem}.bao-document-heading .bao-header-content:not(:empty){margin-top:2rem}.bao-document-heading .brand-border-bottom{margin-top:2rem}.bao-document-heading .document-heading-background{background-color:#f8f9fa;background-position:center center;background-repeat:no-repeat;background-size:cover;height:100%;overflow:hidden;position:absolute;top:0;width:100%;z-index:0}.bao-document-heading .document-heading-content{background-color:#fff;height:2rem;padding-left:1rem;padding-right:1rem;position:relative;bottom:-2rem}@media (min-width: 768px){.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2.5rem;line-height:3.5rem}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1.25rem;line-height:1.75rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1.25rem;line-height:1.75rem;color:#000}}@media (min-width: 992px){.bao-document-heading{padding-top:4rem;padding-bottom:4rem}.bao-document-heading .document-heading-content{bottom:-4rem;height:3.5rem;margin:auto}.bao-document-heading.document-heading-left-notch .document-heading-content{max-width:66.66667%;margin:0}.bao-document-heading.document-heading-left-notch .document-heading-content:before{content:\"\";background:#ffffff;width:1000px;height:100%;position:absolute;left:-1000px}.bao-document-heading.document-heading-left-notch .document-heading-content:after{content:\"\";background:#ffffff;width:1rem;height:100%;position:absolute}}\n"] }]
|
|
35
|
+
}], propDecorators: { notch: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], imageUrl: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], brandBorder: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}] } });
|
|
42
|
+
export class BaoHeaderInfoTitleGroupComponent {
|
|
43
|
+
}
|
|
44
|
+
BaoHeaderInfoTitleGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoTitleGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
+
BaoHeaderInfoTitleGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BaoHeaderInfoTitleGroupComponent, selector: "bao-header-info-title-group", host: { classAttribute: "bao-header-info-title-group" }, ngImport: i0, template: "<ng-content></ng-content>\n<ng-content\n select=\"bao-header-surtitle, [bao-header-surtitle], [baoHeaderSurtitle], \n bao-header-title, [bao-header-title], [baoHeaderTitle],\n bao-header-subtitle, [bao-header-subtitle], [baoHeaderSubtitle]\"\n></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoTitleGroupComponent, decorators: [{
|
|
47
|
+
type: Component,
|
|
48
|
+
args: [{ selector: 'bao-header-info-title-group', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
49
|
+
class: 'bao-header-info-title-group'
|
|
50
|
+
}, template: "<ng-content></ng-content>\n<ng-content\n select=\"bao-header-surtitle, [bao-header-surtitle], [baoHeaderSurtitle], \n bao-header-title, [bao-header-title], [baoHeaderTitle],\n bao-header-subtitle, [bao-header-subtitle], [baoHeaderSubtitle]\"\n></ng-content>\n" }]
|
|
51
|
+
}] });
|
|
52
|
+
export class BaoHeaderInfoContent {
|
|
53
|
+
}
|
|
54
|
+
BaoHeaderInfoContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
55
|
+
BaoHeaderInfoContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BaoHeaderInfoContent, selector: "bao-header-info-content", host: { classAttribute: "bao-header-info-content" }, ngImport: i0 });
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoContent, decorators: [{
|
|
57
|
+
type: Directive,
|
|
58
|
+
args: [{
|
|
59
|
+
selector: 'bao-header-info-content',
|
|
60
|
+
host: {
|
|
61
|
+
class: 'bao-header-info-content'
|
|
62
|
+
}
|
|
63
|
+
}]
|
|
64
|
+
}] });
|
|
65
|
+
export class BaoHeaderInfoSurtitle {
|
|
66
|
+
}
|
|
67
|
+
BaoHeaderInfoSurtitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoSurtitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
68
|
+
BaoHeaderInfoSurtitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BaoHeaderInfoSurtitle, selector: "bao-header-info-surtitle, [bao-header-info-surtitle], [baoHeaderInfoSurtitle]", host: { classAttribute: "document-heading-surtitle" }, ngImport: i0 });
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoSurtitle, decorators: [{
|
|
70
|
+
type: Directive,
|
|
71
|
+
args: [{
|
|
72
|
+
selector: 'bao-header-info-surtitle, [bao-header-info-surtitle], [baoHeaderInfoSurtitle]',
|
|
73
|
+
host: {
|
|
74
|
+
class: 'document-heading-surtitle'
|
|
75
|
+
}
|
|
76
|
+
}]
|
|
77
|
+
}] });
|
|
78
|
+
export class BaoHeaderInfoSubtitle {
|
|
79
|
+
}
|
|
80
|
+
BaoHeaderInfoSubtitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoSubtitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
81
|
+
BaoHeaderInfoSubtitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BaoHeaderInfoSubtitle, selector: "bao-header-info-subtitle, [bao-header-info-subtitle], [baoHeaderInfoSubtitle]", host: { classAttribute: "document-heading-subtitle" }, ngImport: i0 });
|
|
82
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoSubtitle, decorators: [{
|
|
83
|
+
type: Directive,
|
|
84
|
+
args: [{
|
|
85
|
+
selector: 'bao-header-info-subtitle, [bao-header-info-subtitle], [baoHeaderInfoSubtitle]',
|
|
86
|
+
host: {
|
|
87
|
+
class: 'document-heading-subtitle'
|
|
88
|
+
}
|
|
89
|
+
}]
|
|
90
|
+
}] });
|
|
91
|
+
export class BaoHeaderInfoTitle {
|
|
92
|
+
}
|
|
93
|
+
BaoHeaderInfoTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
94
|
+
BaoHeaderInfoTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BaoHeaderInfoTitle, selector: "bao-header-info-title, [bao-header-info-title], [baoHeaderInfoTitle]", host: { classAttribute: "document-heading-title" }, ngImport: i0 });
|
|
95
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoTitle, decorators: [{
|
|
96
|
+
type: Directive,
|
|
97
|
+
args: [{
|
|
98
|
+
selector: 'bao-header-info-title, [bao-header-info-title], [baoHeaderInfoTitle]',
|
|
99
|
+
host: {
|
|
100
|
+
class: 'document-heading-title'
|
|
101
|
+
}
|
|
102
|
+
}]
|
|
103
|
+
}] });
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL2hlYWRlci1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9oZWFkZXItaW5mby9oZWFkZXItaW5mby5odG1sIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL2hlYWRlci1pbmZvLXRpdGxlLWdyb3VwLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7QUFFdkI7Ozs7Ozs7Ozs7R0FVRztBQVlILE1BQU0sT0FBTyxzQkFBc0I7SUFYbkM7UUFZa0IsVUFBSyxHQUEyQixFQUFFLENBQUM7UUFDbkMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGdCQUFXLEdBQUcsS0FBSyxDQUFDO0tBQ3JDOzttSEFKWSxzQkFBc0I7dUdBQXRCLHNCQUFzQixrUUNuQ25DLDIwQkF3QkE7MkZEV2Esc0JBQXNCO2tCQVhsQyxTQUFTOytCQUNFLGlCQUFpQixpQkFHWixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxzQkFBc0I7d0JBQzdCLHFDQUFxQyxFQUFFLGtCQUFrQjtxQkFDMUQ7OEJBR2UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7O0FBWVIsTUFBTSxPQUFPLGdDQUFnQzs7NkhBQWhDLGdDQUFnQztpSEFBaEMsZ0NBQWdDLDRIRWxEN0Msd1FBTUE7MkZGNENhLGdDQUFnQztrQkFUNUMsU0FBUzsrQkFDRSw2QkFBNkIsaUJBRXhCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osS0FBSyxFQUFFLDZCQUE2QjtxQkFDckM7O0FBVUgsTUFBTSxPQUFPLG9CQUFvQjs7aUhBQXBCLG9CQUFvQjtxR0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBTmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSx5QkFBeUI7cUJBQ2pDO2lCQUNGOztBQVVELE1BQU0sT0FBTyxxQkFBcUI7O2tIQUFyQixxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQVBqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFDTiwrRUFBK0U7b0JBQ2pGLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsMkJBQTJCO3FCQUNuQztpQkFDRjs7QUFVRCxNQUFNLE9BQU8scUJBQXFCOztrSEFBckIscUJBQXFCO3NHQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFQakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQ04sK0VBQStFO29CQUNqRixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLDJCQUEyQjtxQkFDbkM7aUJBQ0Y7O0FBVUQsTUFBTSxPQUFPLGtCQUFrQjs7K0dBQWxCLGtCQUFrQjttR0FBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBUDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUNOLHNFQUFzRTtvQkFDeEUsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSx3QkFBd0I7cUJBQ2hDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBBIGJhc2ljIGNvbnRlbnQgY29udGFpbmVyIGNvbXBvbmVudCB0aGF0IGFkZHMgdGhlIHN0eWxlcyBvZiBhIEJBTyBoZWFkZXItaW5mb1xuICpcbiAqIFdoaWxlIHRoaXMgY29tcG9uZW50IGNhbiBiZSB1c2VkIGFsb25lLCBpdCBhbHNvIHByb3ZpZGVzIGEgbnVtYmVyXG4gKiBvZiBwcmVzZXQgc3R5bGVzIGZvciBjb21tb24gaGVhZGVyLWluZm8gc2VjdGlvbnMsIGluY2x1ZGluZzpcbiAqIC0gYmFvLWhlYWRlci1pbmZvLXRpdGxlLWdyb3VwXG4gKiAtIGJhby1oZWFkZXItaW5mby1jb250ZW50XG4gKiAtIGJhby1oZWFkZXItaW5mby10aXRsZVxuICogLSBiYW8taGVhZGVyLWluZm8tc3VydGl0bGVcbiAqIC0gYmFvLWhlYWRlci1pbmZvLXN1YnRpdGxlXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Jhby1oZWFkZXItaW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnaGVhZGVyLWluZm8uaHRtbCcsXG4gIHN0eWxlVXJsczogWydoZWFkZXItaW5mby5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tZG9jdW1lbnQtaGVhZGluZycsXG4gICAgJ1tjbGFzcy5kb2N1bWVudC1oZWFkaW5nLWxlZnQtbm90Y2hdJzogJ25vdGNoID09PSBcImxlZnRcIidcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIG5vdGNoOiAnJyB8ICdsZWZ0JyB8ICdjZW50ZXInID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbWFnZVVybCA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgYnJhbmRCb3JkZXIgPSBmYWxzZTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLWhlYWRlci1pbmZvLXRpdGxlLWdyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICdoZWFkZXItaW5mby10aXRsZS1ncm91cC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1oZWFkZXItaW5mby10aXRsZS1ncm91cCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvVGl0bGVHcm91cENvbXBvbmVudCB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdiYW8taGVhZGVyLWluZm8tY29udGVudCcsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1oZWFkZXItaW5mby1jb250ZW50J1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0hlYWRlckluZm9Db250ZW50IHt9XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnYmFvLWhlYWRlci1pbmZvLXN1cnRpdGxlLCBbYmFvLWhlYWRlci1pbmZvLXN1cnRpdGxlXSwgW2Jhb0hlYWRlckluZm9TdXJ0aXRsZV0nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdkb2N1bWVudC1oZWFkaW5nLXN1cnRpdGxlJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0hlYWRlckluZm9TdXJ0aXRsZSB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1oZWFkZXItaW5mby1zdWJ0aXRsZSwgW2Jhby1oZWFkZXItaW5mby1zdWJ0aXRsZV0sIFtiYW9IZWFkZXJJbmZvU3VidGl0bGVdJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZG9jdW1lbnQtaGVhZGluZy1zdWJ0aXRsZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvU3VidGl0bGUge31cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOlxuICAgICdiYW8taGVhZGVyLWluZm8tdGl0bGUsIFtiYW8taGVhZGVyLWluZm8tdGl0bGVdLCBbYmFvSGVhZGVySW5mb1RpdGxlXScsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2RvY3VtZW50LWhlYWRpbmctdGl0bGUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvSGVhZGVySW5mb1RpdGxlIHt9XG4iLCI8ZGl2ICpuZ0lmPVwiaW1hZ2VVcmxcIiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctaW1hZ2UtY29udGFpbmVyXCI+XG4gIDxkaXZcbiAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAnYmFja2dyb3VuZC1pbWFnZSc6ICd1cmwoXFwnJyArIGltYWdlVXJsICsgJ1xcJyknfVwiXG4gICAgY2xhc3M9XCJkb2N1bWVudC1oZWFkaW5nLWJhY2tncm91bmRcIlxuICA+PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImJhby1jb250YWluZXIgZG9jdW1lbnQtaGVhZGluZy1oZWFkZXItY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJiYW8tcm93IGRvY3VtZW50LWhlYWRpbmctaGVhZGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImJhby1jb2wtMTIgYmFvLWNvbC1sZy03XCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJiYW8taGVhZGVyLWluZm8tdGl0bGUtZ3JvdXBcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGNsYXNzPVwiYmFvLWhlYWRlci1jb250ZW50XCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImJyYW5kQm9yZGVyXCIgY2xhc3M9XCJicmFuZC1ib3JkZXItYm90dG9tXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibm90Y2hcIiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctd3JhcHBlciBub3RjaFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkb2N1bWVudC1oZWFkaW5nLWNvbnRlbnQtd3JhcHBlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctY29udGVudFwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPG5nLWNvbnRlbnRcbiAgc2VsZWN0PVwiYmFvLWhlYWRlci1zdXJ0aXRsZSwgW2Jhby1oZWFkZXItc3VydGl0bGVdLCBbYmFvSGVhZGVyU3VydGl0bGVdLCBcbiAgYmFvLWhlYWRlci10aXRsZSwgW2Jhby1oZWFkZXItdGl0bGVdLCBbYmFvSGVhZGVyVGl0bGVdLFxuICBiYW8taGVhZGVyLXN1YnRpdGxlLCBbYmFvLWhlYWRlci1zdWJ0aXRsZV0sIFtiYW9IZWFkZXJTdWJ0aXRsZV1cIlxuPjwvbmctY29udGVudD5cbiJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2022 Ville de Montreal. All rights reserved.
|
|
3
|
+
* Licensed under the MIT license.
|
|
4
|
+
* See LICENSE file in the project root for full license information.
|
|
5
|
+
*/
|
|
6
|
+
export * from './module';
|
|
7
|
+
export * from './header-info.component';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvaGVhZGVyLWluZm8vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vaGVhZGVyLWluZm8uY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2022 Ville de Montreal. All rights reserved.
|
|
3
|
+
* Licensed under the MIT license.
|
|
4
|
+
* See LICENSE file in the project root for full license information.
|
|
5
|
+
*/
|
|
6
|
+
import { CommonModule } from '@angular/common';
|
|
7
|
+
import { NgModule } from '@angular/core';
|
|
8
|
+
import { BaoHeaderInfoComponent, BaoHeaderInfoContent, BaoHeaderInfoSubtitle, BaoHeaderInfoSurtitle, BaoHeaderInfoTitle, BaoHeaderInfoTitleGroupComponent } from './header-info.component';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
const DIRECTIVES = [
|
|
11
|
+
BaoHeaderInfoComponent,
|
|
12
|
+
BaoHeaderInfoContent,
|
|
13
|
+
BaoHeaderInfoTitleGroupComponent,
|
|
14
|
+
BaoHeaderInfoSubtitle,
|
|
15
|
+
BaoHeaderInfoSurtitle,
|
|
16
|
+
BaoHeaderInfoTitle
|
|
17
|
+
];
|
|
18
|
+
export class BaoHeaderInfoModule {
|
|
19
|
+
}
|
|
20
|
+
BaoHeaderInfoModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
21
|
+
BaoHeaderInfoModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoModule, declarations: [BaoHeaderInfoComponent,
|
|
22
|
+
BaoHeaderInfoContent,
|
|
23
|
+
BaoHeaderInfoTitleGroupComponent,
|
|
24
|
+
BaoHeaderInfoSubtitle,
|
|
25
|
+
BaoHeaderInfoSurtitle,
|
|
26
|
+
BaoHeaderInfoTitle], imports: [CommonModule], exports: [BaoHeaderInfoComponent,
|
|
27
|
+
BaoHeaderInfoContent,
|
|
28
|
+
BaoHeaderInfoTitleGroupComponent,
|
|
29
|
+
BaoHeaderInfoSubtitle,
|
|
30
|
+
BaoHeaderInfoSurtitle,
|
|
31
|
+
BaoHeaderInfoTitle] });
|
|
32
|
+
BaoHeaderInfoModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoModule, imports: [[CommonModule]] });
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoHeaderInfoModule, decorators: [{
|
|
34
|
+
type: NgModule,
|
|
35
|
+
args: [{
|
|
36
|
+
imports: [CommonModule],
|
|
37
|
+
declarations: DIRECTIVES,
|
|
38
|
+
exports: DIRECTIVES
|
|
39
|
+
}]
|
|
40
|
+
}] });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLHNCQUFzQixFQUN0QixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQixrQkFBa0IsRUFDbEIsZ0NBQWdDLEVBQ2pDLE1BQU0seUJBQXlCLENBQUM7O0FBRWpDLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLHNCQUFzQjtJQUN0QixvQkFBb0I7SUFDcEIsZ0NBQWdDO0lBQ2hDLHFCQUFxQjtJQUNyQixxQkFBcUI7SUFDckIsa0JBQWtCO0NBQ25CLENBQUM7QUFPRixNQUFNLE9BQU8sbUJBQW1COztnSEFBbkIsbUJBQW1CO2lIQUFuQixtQkFBbUIsaUJBYjlCLHNCQUFzQjtRQUN0QixvQkFBb0I7UUFDcEIsZ0NBQWdDO1FBQ2hDLHFCQUFxQjtRQUNyQixxQkFBcUI7UUFDckIsa0JBQWtCLGFBSVIsWUFBWSxhQVR0QixzQkFBc0I7UUFDdEIsb0JBQW9CO1FBQ3BCLGdDQUFnQztRQUNoQyxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLGtCQUFrQjtpSEFRUCxtQkFBbUIsWUFKckIsQ0FBQyxZQUFZLENBQUM7MkZBSVosbUJBQW1CO2tCQUwvQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLFVBQVU7b0JBQ3hCLE9BQU8sRUFBRSxVQUFVO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCYW9IZWFkZXJJbmZvQ29tcG9uZW50LFxuICBCYW9IZWFkZXJJbmZvQ29udGVudCxcbiAgQmFvSGVhZGVySW5mb1N1YnRpdGxlLFxuICBCYW9IZWFkZXJJbmZvU3VydGl0bGUsXG4gIEJhb0hlYWRlckluZm9UaXRsZSxcbiAgQmFvSGVhZGVySW5mb1RpdGxlR3JvdXBDb21wb25lbnRcbn0gZnJvbSAnLi9oZWFkZXItaW5mby5jb21wb25lbnQnO1xuXG5jb25zdCBESVJFQ1RJVkVTID0gW1xuICBCYW9IZWFkZXJJbmZvQ29tcG9uZW50LFxuICBCYW9IZWFkZXJJbmZvQ29udGVudCxcbiAgQmFvSGVhZGVySW5mb1RpdGxlR3JvdXBDb21wb25lbnQsXG4gIEJhb0hlYWRlckluZm9TdWJ0aXRsZSxcbiAgQmFvSGVhZGVySW5mb1N1cnRpdGxlLFxuICBCYW9IZWFkZXJJbmZvVGl0bGVcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IERJUkVDVElWRVMsXG4gIGV4cG9ydHM6IERJUkVDVElWRVNcbn0pXG5leHBvcnQgY2xhc3MgQmFvSGVhZGVySW5mb01vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2022 Ville de Montreal. All rights reserved.
|
|
3
|
+
* Licensed under the MIT license.
|
|
4
|
+
* See LICENSE file in the project root for full license information.
|
|
5
|
+
*/
|
|
6
|
+
import { DOCUMENT } from '@angular/common';
|
|
7
|
+
import { Inject, Injectable, SecurityContext } from '@angular/core';
|
|
8
|
+
import { ICONS_DCT } from './icons-dictionary';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@angular/platform-browser";
|
|
11
|
+
const SVG_PREFIX = `<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" role="img">`;
|
|
12
|
+
const SVG_SUFFIX = `</svg>`;
|
|
13
|
+
export class BaoIconDictionary {
|
|
14
|
+
constructor(document, domSanitizer) {
|
|
15
|
+
this.document = document;
|
|
16
|
+
this.domSanitizer = domSanitizer;
|
|
17
|
+
}
|
|
18
|
+
getNamedSvgIcon(iconName) {
|
|
19
|
+
const rawIconString = this.getRawIconStringFromIconName(iconName);
|
|
20
|
+
const literal = this.domSanitizer.bypassSecurityTrustHtml(rawIconString);
|
|
21
|
+
const svgString = this.domSanitizer.sanitize(SecurityContext.HTML, literal);
|
|
22
|
+
return this.svgElementFromString(svgString || '');
|
|
23
|
+
}
|
|
24
|
+
getRawIconStringFromIconName(iconName) {
|
|
25
|
+
const iconSvgPath = ICONS_DCT[iconName] || '';
|
|
26
|
+
return `${SVG_PREFIX}${iconSvgPath}${SVG_SUFFIX}`;
|
|
27
|
+
}
|
|
28
|
+
svgElementFromString(svgString) {
|
|
29
|
+
const div = this.document.createElement('DIV');
|
|
30
|
+
div.innerHTML = svgString;
|
|
31
|
+
const svg = div.querySelector('svg');
|
|
32
|
+
return svg;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
BaoIconDictionary.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoIconDictionary, deps: [{ token: DOCUMENT }, { token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
36
|
+
BaoIconDictionary.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoIconDictionary, providedIn: 'root' });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoIconDictionary, decorators: [{
|
|
38
|
+
type: Injectable,
|
|
39
|
+
args: [{ providedIn: 'root' }]
|
|
40
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
41
|
+
type: Inject,
|
|
42
|
+
args: [DOCUMENT]
|
|
43
|
+
}] }, { type: i1.DomSanitizer }]; } });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFvLWljb24tcmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvaWNvbi9iYW8taWNvbi1yZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7OztBQUUvQyxNQUFNLFVBQVUsR0FBRyxpTkFBaU4sQ0FBQztBQUNyTyxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUM7QUFHNUIsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixZQUM0QixRQUFhLEVBQy9CLFlBQTBCO1FBRFIsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQUMvQixpQkFBWSxHQUFaLFlBQVksQ0FBYztJQUNqQyxDQUFDO0lBRUcsZUFBZSxDQUFDLFFBQWdCO1FBQ3JDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3pFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDNUUsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTyw0QkFBNEIsQ0FBQyxRQUFnQjtRQUNuRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzlDLE9BQU8sR0FBRyxVQUFVLEdBQUcsV0FBVyxHQUFHLFVBQVUsRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxTQUFpQjtRQUM1QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQyxHQUFHLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMxQixNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBZSxDQUFDO1FBQ25ELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQzs7OEdBdkJVLGlCQUFpQixrQkFFbEIsUUFBUTtrSEFGUCxpQkFBaUIsY0FESixNQUFNOzJGQUNuQixpQkFBaUI7a0JBRDdCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFHN0IsTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIFNlY3VyaXR5Q29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBJQ09OU19EQ1QgfSBmcm9tICcuL2ljb25zLWRpY3Rpb25hcnknO1xuXG5jb25zdCBTVkdfUFJFRklYID0gYDw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGluZz1cIlVURi04XCI/PjwhRE9DVFlQRSBzdmcgUFVCTElDIFwiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU5cIiBcImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZFwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiByb2xlPVwiaW1nXCI+YDtcbmNvbnN0IFNWR19TVUZGSVggPSBgPC9zdmc+YDtcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBCYW9JY29uRGljdGlvbmFyeSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IGFueSxcbiAgICBwcml2YXRlIGRvbVNhbml0aXplcjogRG9tU2FuaXRpemVyXG4gICkge31cblxuICBwdWJsaWMgZ2V0TmFtZWRTdmdJY29uKGljb25OYW1lOiBzdHJpbmcpOiBTVkdFbGVtZW50IHtcbiAgICBjb25zdCByYXdJY29uU3RyaW5nID0gdGhpcy5nZXRSYXdJY29uU3RyaW5nRnJvbUljb25OYW1lKGljb25OYW1lKTtcbiAgICBjb25zdCBsaXRlcmFsID0gdGhpcy5kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwocmF3SWNvblN0cmluZyk7XG4gICAgY29uc3Qgc3ZnU3RyaW5nID0gdGhpcy5kb21TYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIGxpdGVyYWwpO1xuICAgIHJldHVybiB0aGlzLnN2Z0VsZW1lbnRGcm9tU3RyaW5nKHN2Z1N0cmluZyB8fCAnJyk7XG4gIH1cblxuICBwcml2YXRlIGdldFJhd0ljb25TdHJpbmdGcm9tSWNvbk5hbWUoaWNvbk5hbWU6IHN0cmluZykge1xuICAgIGNvbnN0IGljb25TdmdQYXRoID0gSUNPTlNfRENUW2ljb25OYW1lXSB8fCAnJztcbiAgICByZXR1cm4gYCR7U1ZHX1BSRUZJWH0ke2ljb25TdmdQYXRofSR7U1ZHX1NVRkZJWH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBzdmdFbGVtZW50RnJvbVN0cmluZyhzdmdTdHJpbmc6IHN0cmluZyk6IFNWR0VsZW1lbnQge1xuICAgIGNvbnN0IGRpdiA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnRElWJyk7XG4gICAgZGl2LmlubmVySFRNTCA9IHN2Z1N0cmluZztcbiAgICBjb25zdCBzdmcgPSBkaXYucXVlcnlTZWxlY3Rvcignc3ZnJykgYXMgU1ZHRWxlbWVudDtcbiAgICByZXR1cm4gc3ZnO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2022 Ville de Montreal. All rights reserved.
|
|
3
|
+
* Licensed under the MIT license.
|
|
4
|
+
* See LICENSE file in the project root for full license information.
|
|
5
|
+
*/
|
|
6
|
+
import { Attribute, ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
|
|
7
|
+
import { baoColorToHex } from '../core/colors';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "./bao-icon-registry";
|
|
10
|
+
const SVG_NAMESPACE = 'http://www.w3.org/2000/svg';
|
|
11
|
+
const TITLE = 'title';
|
|
12
|
+
/**
|
|
13
|
+
* Component to display an icon. It can be used in the following ways:
|
|
14
|
+
*
|
|
15
|
+
* - Specify the svgIcon input to load an SVG icon from a preset list of icons.
|
|
16
|
+
* Examples:
|
|
17
|
+
* `<bao-icon svgIcon="heart"></bao-icon>`
|
|
18
|
+
*/
|
|
19
|
+
export class BaoIconComponent {
|
|
20
|
+
constructor(elementRef, iconRegistry, renderer, ariaHidden) {
|
|
21
|
+
this.elementRef = elementRef;
|
|
22
|
+
this.iconRegistry = iconRegistry;
|
|
23
|
+
this.renderer = renderer;
|
|
24
|
+
/**
|
|
25
|
+
* The size of the icon
|
|
26
|
+
*/
|
|
27
|
+
this.size = 'x-small';
|
|
28
|
+
// If the user has not explicitly set aria-hidden, mark the icon as hidden, as this is
|
|
29
|
+
// the right thing to do for the majority of icon use-cases.
|
|
30
|
+
if (!ariaHidden) {
|
|
31
|
+
this.elementRef.nativeElement.setAttribute('aria-hidden', 'true');
|
|
32
|
+
}
|
|
33
|
+
this._titleId = '';
|
|
34
|
+
this._title = '';
|
|
35
|
+
this._svgIcon = '';
|
|
36
|
+
}
|
|
37
|
+
/** Name of the icon in the SVG icon set. */
|
|
38
|
+
get svgIcon() {
|
|
39
|
+
return this._svgIcon;
|
|
40
|
+
}
|
|
41
|
+
set svgIcon(value) {
|
|
42
|
+
if (value !== this._svgIcon) {
|
|
43
|
+
if (value) {
|
|
44
|
+
this.updateSvgIcon(value, this.title);
|
|
45
|
+
}
|
|
46
|
+
else if (this._svgIcon) {
|
|
47
|
+
this.clearSvgElement();
|
|
48
|
+
}
|
|
49
|
+
this._svgIcon = value;
|
|
50
|
+
this.renderer.addClass(this.elementRef.nativeElement, `bao-${this._svgIcon}`);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
get hexColor() {
|
|
54
|
+
if (this.color) {
|
|
55
|
+
return baoColorToHex(this.color);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
/** Title that will be used as an aria-label for the icon */
|
|
59
|
+
get title() {
|
|
60
|
+
return this._title;
|
|
61
|
+
}
|
|
62
|
+
set title(value) {
|
|
63
|
+
if (value !== this._title) {
|
|
64
|
+
this._title = value;
|
|
65
|
+
this._titleId = this.generateUniqueTitleId();
|
|
66
|
+
this.updateSvgIcon(this.svgIcon, value);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
get titleId() {
|
|
70
|
+
return this._titleId;
|
|
71
|
+
}
|
|
72
|
+
ngOnDestroy() {
|
|
73
|
+
if (this._elementsWithExternalReferences) {
|
|
74
|
+
this._elementsWithExternalReferences.clear();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
setSvgElement(svg) {
|
|
78
|
+
this.clearSvgElement();
|
|
79
|
+
// Workaround for IE11 and Edge ignoring `style` tags inside dynamically-created SVGs.
|
|
80
|
+
// See: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/10898469/
|
|
81
|
+
// Do this before inserting the element into the DOM, in order to avoid a style recalculation.
|
|
82
|
+
const styleTags = svg.querySelectorAll('style');
|
|
83
|
+
// eslint-disable-next-line @typescript-eslint/prefer-for-of
|
|
84
|
+
for (let i = 0; i < styleTags.length; i++) {
|
|
85
|
+
styleTags[i].textContent += ' ';
|
|
86
|
+
}
|
|
87
|
+
this.elementRef.nativeElement.appendChild(svg);
|
|
88
|
+
}
|
|
89
|
+
clearSvgElement() {
|
|
90
|
+
const layoutElement = this.elementRef.nativeElement;
|
|
91
|
+
let childCount = layoutElement.childNodes.length;
|
|
92
|
+
if (this._elementsWithExternalReferences) {
|
|
93
|
+
this._elementsWithExternalReferences.clear();
|
|
94
|
+
}
|
|
95
|
+
// Remove existing non-element child nodes and SVGs, and add the new SVG element. Note that
|
|
96
|
+
// we can't use innerHTML, because IE will throw if the element has a data binding.
|
|
97
|
+
while (childCount--) {
|
|
98
|
+
const child = layoutElement.childNodes[childCount];
|
|
99
|
+
// 1 corresponds to Node.ELEMENT_NODE. We remove all non-element nodes in order to get rid
|
|
100
|
+
// of any loose text nodes, as well as any SVG elements in order to remove any old icons.
|
|
101
|
+
if (child.nodeType !== 1 || child.nodeName.toLowerCase() === 'svg') {
|
|
102
|
+
layoutElement.removeChild(child);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// Sets a new SVG icon with a particular name.
|
|
107
|
+
updateSvgIcon(iconName, title) {
|
|
108
|
+
if (iconName) {
|
|
109
|
+
let svg = this.iconRegistry.getNamedSvgIcon(iconName);
|
|
110
|
+
if (title) {
|
|
111
|
+
svg = this.addTitleToSVG(svg, title);
|
|
112
|
+
}
|
|
113
|
+
this.setSvgElement(svg);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
addTitleToSVG(svg, title) {
|
|
117
|
+
const titleNode = this.renderer.createElement(TITLE, SVG_NAMESPACE);
|
|
118
|
+
titleNode.id = this._titleId;
|
|
119
|
+
const titleText = this.renderer.createText(title);
|
|
120
|
+
this.renderer.appendChild(titleNode, titleText);
|
|
121
|
+
this.renderer.appendChild(svg, titleNode);
|
|
122
|
+
return svg;
|
|
123
|
+
}
|
|
124
|
+
generateUniqueTitleId() {
|
|
125
|
+
return this.title
|
|
126
|
+
? `${this.title}-${Math.random() * 10000000000000000}`
|
|
127
|
+
: '';
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
BaoIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoIconComponent, deps: [{ token: i0.ElementRef }, { token: i1.BaoIconDictionary }, { token: i0.Renderer2 }, { token: 'aria-hidden', attribute: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
131
|
+
BaoIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BaoIconComponent, selector: "bao-icon", inputs: { svgIcon: "svgIcon", color: "color", title: "title", size: "size" }, host: { attributes: { "role": "img" }, properties: { "class.bao-icon": "true", "class.notranslate": "true", "class.bao-icon-medium": "size === \"medium\"", "class.bao-icon-small": "size === \"small\"", "class.bao-icon-x-small": "size === \"x-small\"", "class.bao-icon-xx-small": "size === \"xx-small\"", "attr.data-bao-icon-type": "\"svg\"", "attr.aria-labelledby": "titleId", "attr.aria-hidden": "!title", "style.color": "hexColor" } }, exportAs: ["baoIcon"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: ["bao-icon{background-repeat:no-repeat;display:inline-flex;align-items:center;fill:currentColor;line-height:normal}bao-icon.bao-icon-medium{height:2.5rem;width:2.5rem}bao-icon.bao-icon-small{height:2rem;width:2rem;line-height:1.75rem}bao-icon.bao-icon-x-small{height:1.5rem;width:1.5rem;line-height:1.15rem}bao-icon.bao-icon-xx-small{height:1rem;width:1rem;line-height:.85rem}bao-icon.bao-icon-spinner{animation:spin .75s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoIconComponent, decorators: [{
|
|
133
|
+
type: Component,
|
|
134
|
+
args: [{ template: '<ng-content></ng-content>', selector: 'bao-icon', exportAs: 'baoIcon', host: {
|
|
135
|
+
role: 'img',
|
|
136
|
+
// '[class]': "'bao-icon notranslate ' + svgIcon",
|
|
137
|
+
'[class.bao-icon]': 'true',
|
|
138
|
+
'[class.notranslate]': 'true',
|
|
139
|
+
'[class.bao-icon-medium]': 'size === "medium"',
|
|
140
|
+
'[class.bao-icon-small]': 'size === "small"',
|
|
141
|
+
'[class.bao-icon-x-small]': 'size === "x-small"',
|
|
142
|
+
'[class.bao-icon-xx-small]': 'size === "xx-small"',
|
|
143
|
+
'[attr.data-bao-icon-type]': '"svg"',
|
|
144
|
+
'[attr.aria-labelledby]': 'titleId',
|
|
145
|
+
'[attr.aria-hidden]': '!title',
|
|
146
|
+
'[style.color]': 'hexColor'
|
|
147
|
+
}, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["bao-icon{background-repeat:no-repeat;display:inline-flex;align-items:center;fill:currentColor;line-height:normal}bao-icon.bao-icon-medium{height:2.5rem;width:2.5rem}bao-icon.bao-icon-small{height:2rem;width:2rem;line-height:1.75rem}bao-icon.bao-icon-x-small{height:1.5rem;width:1.5rem;line-height:1.15rem}bao-icon.bao-icon-xx-small{height:1rem;width:1rem;line-height:.85rem}bao-icon.bao-icon-spinner{animation:spin .75s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"] }]
|
|
148
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.BaoIconDictionary }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
|
149
|
+
type: Attribute,
|
|
150
|
+
args: ['aria-hidden']
|
|
151
|
+
}] }]; }, propDecorators: { svgIcon: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], color: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], title: [{
|
|
156
|
+
type: Input
|
|
157
|
+
}], size: [{
|
|
158
|
+
type: Input
|
|
159
|
+
}] } });
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvaWNvbi9pY29uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULEtBQUssRUFHTCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFhLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHMUQsTUFBTSxhQUFhLEdBQUcsNEJBQTRCLENBQUM7QUFDbkQsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDO0FBRXRCOzs7Ozs7R0FNRztBQXVCSCxNQUFNLE9BQU8sZ0JBQWdCO0lBNkQzQixZQUNVLFVBQW1DLEVBQ25DLFlBQTZCLEVBQzdCLFFBQW1CLEVBQ0QsVUFBa0I7UUFIcEMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsaUJBQVksR0FBWixZQUFZLENBQWlCO1FBQzdCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFsQjdCOztXQUVHO1FBQ2EsU0FBSSxHQUFnRCxTQUFTLENBQUM7UUFrQjVFLHNGQUFzRjtRQUN0Riw0REFBNEQ7UUFDNUQsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDbkU7UUFDRCxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBMUVELDRDQUE0QztJQUM1QyxJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUNE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QUFTLFFBRWI7d0JBQ0osSUFBSSxFQUFFLEtBQUs7d0JBQ1gsa0RBQWtEO3dCQUNsRCxrQkFBa0IsRUFBRSxNQUFNO3dCQUMxQixxQkFBcUIsRUFBRSxNQUFNO3dCQUM3Qix5QkFBeUIsRUFBRSxtQkFBbUI7d0JBQzlDLHdCQUF3QixFQUFFLGtCQUFrQjt3QkFDNUMsMEJBQTBCLEVBQUUsb0JBQW9CO3dCQUNoRCwyQkFBMkIsRUFBRSxxQkFBcUI7d0JBQ2xELDJCQUEyQixFQUFFLE9BQU87d0JBQ3BDLHdCQUF3QixFQUFFLFNBQVM7d0JBQ25DLG9CQUFvQixFQUFFLFFBQVE7d0JBQzlCLGVBQWUsRUFBRSxVQUFVO3FCQUM1QixpQkFDYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNOzswQkFtRTVDLFNBQVM7MkJBQUMsYUFBYTs0Q0E5RHRCLE9BQU87c0JBRFYsS0FBSztnQkFvQlUsS0FBSztzQkFBcEIsS0FBSztnQkFVRixLQUFLO3NCQURSLEtBQUs7Z0JBa0JVLElBQUk7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmltcG9ydCB7XG4gIEF0dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUmVuZGVyZXIyLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhb0NvbG9ycywgYmFvQ29sb3JUb0hleCB9IGZyb20gJy4uL2NvcmUvY29sb3JzJztcbmltcG9ydCB7IEJhb0ljb25EaWN0aW9uYXJ5IGFzIEJhb0ljb25SZWdpc3RyeSB9IGZyb20gJy4vYmFvLWljb24tcmVnaXN0cnknO1xuXG5jb25zdCBTVkdfTkFNRVNQQUNFID0gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJztcbmNvbnN0IFRJVExFID0gJ3RpdGxlJztcblxuLyoqXG4gKiBDb21wb25lbnQgdG8gZGlzcGxheSBhbiBpY29uLiBJdCBjYW4gYmUgdXNlZCBpbiB0aGUgZm9sbG93aW5nIHdheXM6XG4gKlxuICogLSBTcGVjaWZ5IHRoZSBzdmdJY29uIGlucHV0IHRvIGxvYWQgYW4gU1ZHIGljb24gZnJvbSBhIHByZXNldCBsaXN0IG9mIGljb25zLlxuICogICBFeGFtcGxlczpcbiAqICAgICBgPGJhby1pY29uIHN2Z0ljb249XCJoZWFydFwiPjwvYmFvLWljb24+YFxuICovXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc2VsZWN0b3I6ICdiYW8taWNvbicsXG4gIGV4cG9ydEFzOiAnYmFvSWNvbicsXG4gIHN0eWxlVXJsczogWycuL2ljb24uY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgIC8vICdbY2xhc3NdJzogXCInYmFvLWljb24gbm90cmFuc2xhdGUgJyArIHN2Z0ljb25cIixcbiAgICAnW2NsYXNzLmJhby1pY29uXSc6ICd0cnVlJyxcbiAgICAnW2NsYXNzLm5vdHJhbnNsYXRlXSc6ICd0cnVlJyxcbiAgICAnW2NsYXNzLmJhby1pY29uLW1lZGl1bV0nOiAnc2l6ZSA9PT0gXCJtZWRpdW1cIicsXG4gICAgJ1tjbGFzcy5iYW8taWNvbi1zbWFsbF0nOiAnc2l6ZSA9PT0gXCJzbWFsbFwiJyxcbiAgICAnW2NsYXNzLmJhby1pY29uLXgtc21hbGxdJzogJ3NpemUgPT09IFwieC1zbWFsbFwiJyxcbiAgICAnW2NsYXNzLmJhby1pY29uLXh4LXNtYWxsXSc6ICdzaXplID09PSBcInh4LXNtYWxsXCInLFxuICAgICdbYXR0ci5kYXRhLWJhby1pY29uLXR5cGVdJzogJ1wic3ZnXCInLFxuICAgICdbYXR0ci5hcmlhLWxhYmVsbGVkYnldJzogJ3RpdGxlSWQnLFxuICAgICdbYXR0ci5hcmlhLWhpZGRlbl0nOiAnIXRpdGxlJyxcbiAgICAnW3N0eWxlLmNvbG9yXSc6ICdoZXhDb2xvcidcbiAgfSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQmFvSWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIC8qKiBOYW1lIG9mIHRoZSBpY29uIGluIHRoZSBTVkcgaWNvbiBzZXQuICovXG4gIEBJbnB1dCgpXG4gIGdldCBzdmdJY29uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3N2Z0ljb247XG4gIH1cbiAgc2V0IHN2Z0ljb24odmFsdWU6IHN0cmluZykge1xuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5fc3ZnSWNvbikge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHRoaXMudXBkYXRlU3ZnSWNvbih2YWx1ZSwgdGhpcy50aXRsZSk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuX3N2Z0ljb24pIHtcbiAgICAgICAgdGhpcy5jbGVhclN2Z0VsZW1lbnQoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX3N2Z0ljb24gPSB2YWx1ZTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoXG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICBgYmFvLSR7dGhpcy5fc3ZnSWNvbn1gXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBUaGUgY29sb3Igb2YgdGhlIGljb24sIGlmIG5vdCBzcGVjaWZpZWQgdGhlIGljb24ncyBwYXJlbnQgY3VycmVudCB0ZXh0IGNvbG9yIHdpbGwgYmUgdXNlZCAqL1xuICBASW5wdXQoKSBwdWJsaWMgY29sb3I6IEJhb0NvbG9ycztcblxuICBnZXQgaGV4Q29sb3IoKTogc3RyaW5nIHwgdm9pZCB7XG4gICAgaWYgKHRoaXMuY29sb3IpIHtcbiAgICAgIHJldHVybiBiYW9Db2xvclRvSGV4KHRoaXMuY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBUaXRsZSB0aGF0IHdpbGwgYmUgdXNlZCBhcyBhbiBhcmlhLWxhYmVsIGZvciB0aGUgaWNvbiAqL1xuICBASW5wdXQoKVxuICBnZXQgdGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdGl0bGU7XG4gIH1cbiAgc2V0IHRpdGxlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuX3RpdGxlKSB7XG4gICAgICB0aGlzLl90aXRsZSA9IHZhbHVlO1xuICAgICAgdGhpcy5fdGl0bGVJZCA9IHRoaXMuZ2VuZXJhdGVVbmlxdWVUaXRsZUlkKCk7XG4gICAgICB0aGlzLnVwZGF0ZVN2Z0ljb24odGhpcy5zdmdJY29uLCB2YWx1ZSk7XG4gICAgfVxuICB9XG4gIGdldCB0aXRsZUlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RpdGxlSWQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHNpemUgb2YgdGhlIGljb25cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnbWVkaXVtJyB8ICdzbWFsbCcgfCAneC1zbWFsbCcgfCAneHgtc21hbGwnID0gJ3gtc21hbGwnO1xuXG4gIHByaXZhdGUgX3N2Z0ljb246IHN0cmluZztcbiAgcHJpdmF0ZSBfdGl0bGU6IHN0cmluZztcbiAgcHJpdmF0ZSBfdGl0bGVJZDogc3RyaW5nO1xuXG4gIC8vIEtlZXBzIHRyYWNrIG9mIHRoZSBlbGVtZW50cyBhbmQgYXR0cmlidXRlcyB0aGF0IHdlJ3ZlIHByZWZpeGVkIHdpdGggdGhlIGN1cnJlbnQgcGF0aC5cbiAgcHJpdmF0ZSBfZWxlbWVudHNXaXRoRXh0ZXJuYWxSZWZlcmVuY2VzPzogTWFwPFxuICAgIEVsZW1lbnQsXG4gICAgeyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfVtdXG4gID47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIGljb25SZWdpc3RyeTogQmFvSWNvblJlZ2lzdHJ5LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBAQXR0cmlidXRlKCdhcmlhLWhpZGRlbicpIGFyaWFIaWRkZW46IHN0cmluZ1xuICApIHtcbiAgICAvLyBJZiB0aGUgdXNlciBoYXMgbm90IGV4cGxpY2l0bHkgc2V0IGFyaWEtaGlkZGVuLCBtYXJrIHRoZSBpY29uIGFzIGhpZGRlbiwgYXMgdGhpcyBpc1xuICAgIC8vIHRoZSByaWdodCB0aGluZyB0byBkbyBmb3IgdGhlIG1ham9yaXR5IG9mIGljb24gdXNlLWNhc2VzLlxuICAgIGlmICghYXJpYUhpZGRlbikge1xuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWhpZGRlbicsICd0cnVlJyk7XG4gICAgfVxuICAgIHRoaXMuX3RpdGxlSWQgPSAnJztcbiAgICB0aGlzLl90aXRsZSA9ICcnO1xuICAgIHRoaXMuX3N2Z0ljb24gPSAnJztcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5fZWxlbWVudHNXaXRoRXh0ZXJuYWxSZWZlcmVuY2VzKSB7XG4gICAgICB0aGlzLl9lbGVtZW50c1dpdGhFeHRlcm5hbFJlZmVyZW5jZXMuY2xlYXIoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldFN2Z0VsZW1lbnQoc3ZnOiBTVkdFbGVtZW50KSB7XG4gICAgdGhpcy5jbGVhclN2Z0VsZW1lbnQoKTtcbiAgICAvLyBXb3JrYXJvdW5kIGZvciBJRTExIGFuZCBFZGdlIGlnbm9yaW5nIGBzdHlsZWAgdGFncyBpbnNpZGUgZHluYW1pY2FsbHktY3JlYXRlZCBTVkdzLlxuICAgIC8vIFNlZTogaHR0cHM6Ly9kZXZlbG9wZXIubWljcm9zb2Z0LmNvbS9lbi11cy9taWNyb3NvZnQtZWRnZS9wbGF0Zm9ybS9pc3N1ZXMvMTA4OTg0NjkvXG4gICAgLy8gRG8gdGhpcyBiZWZvcmUgaW5zZXJ0aW5nIHRoZSBlbGVtZW50IGludG8gdGhlIERPTSwgaW4gb3JkZXIgdG8gYXZvaWQgYSBzdHlsZSByZWNhbGN1bGF0aW9uLlxuICAgIGNvbnN0IHN0eWxlVGFncyA9IHN2Zy5xdWVyeVNlbGVjdG9yQWxsKCdzdHlsZScpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLWZvci1vZlxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3R5bGVUYWdzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBzdHlsZVRhZ3NbaV0udGV4dENvbnRlbnQgKz0gJyAnO1xuICAgIH1cbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hcHBlbmRDaGlsZChzdmcpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhclN2Z0VsZW1lbnQoKSB7XG4gICAgY29uc3QgbGF5b3V0RWxlbWVudDogSFRNTEVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBsZXQgY2hpbGRDb3VudCA9IGxheW91dEVsZW1lbnQuY2hpbGROb2Rlcy5sZW5ndGg7XG5cbiAgICBpZiAodGhpcy5fZWxlbWVudHNXaXRoRXh0ZXJuYWxSZWZlcmVuY2VzKSB7XG4gICAgICB0aGlzLl9lbGVtZW50c1dpdGhFeHRlcm5hbFJlZmVyZW5jZXMuY2xlYXIoKTtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZXhpc3Rpbmcgbm9uLWVsZW1lbnQgY2hpbGQgbm9kZXMgYW5kIFNWR3MsIGFuZCBhZGQgdGhlIG5ldyBTVkcgZWxlbWVudC4gTm90ZSB0aGF0XG4gICAgLy8gd2UgY2FuJ3QgdXNlIGlubmVySFRNTCwgYmVjYXVzZSBJRSB3aWxsIHRocm93IGlmIHRoZSBlbGVtZW50IGhhcyBhIGRhdGEgYmluZGluZy5cbiAgICB3aGlsZSAoY2hpbGRDb3VudC0tKSB7XG4gICAgICBjb25zdCBjaGlsZCA9IGxheW91dEVsZW1lbnQuY2hpbGROb2Rlc1tjaGlsZENvdW50XTtcblxuICAgICAgLy8gMSBjb3JyZXNwb25kcyB0byBOb2RlLkVMRU1FTlRfTk9ERS4gV2UgcmVtb3ZlIGFsbCBub24tZWxlbWVudCBub2RlcyBpbiBvcmRlciB0byBnZXQgcmlkXG4gICAgICAvLyBvZiBhbnkgbG9vc2UgdGV4dCBub2RlcywgYXMgd2VsbCBhcyBhbnkgU1ZHIGVsZW1lbnRzIGluIG9yZGVyIHRvIHJlbW92ZSBhbnkgb2xkIGljb25zLlxuICAgICAgaWYgKGNoaWxkLm5vZGVUeXBlICE9PSAxIHx8IGNoaWxkLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdzdmcnKSB7XG4gICAgICAgIGxheW91dEVsZW1lbnQucmVtb3ZlQ2hpbGQoY2hpbGQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNldHMgYSBuZXcgU1ZHIGljb24gd2l0aCBhIHBhcnRpY3VsYXIgbmFtZS5cbiAgcHJpdmF0ZSB1cGRhdGVTdmdJY29uKFxuICAgIGljb25OYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICAgdGl0bGU6IHN0cmluZyB8IHVuZGVmaW5lZFxuICApIHtcbiAgICBpZiAoaWNvbk5hbWUpIHtcbiAgICAgIGxldCBzdmcgPSB0aGlzLmljb25SZWdpc3RyeS5nZXROYW1lZFN2Z0ljb24oaWNvbk5hbWUpO1xuICAgICAgaWYgKHRpdGxlKSB7XG4gICAgICAgIHN2ZyA9IHRoaXMuYWRkVGl0bGVUb1NWRyhzdmcsIHRpdGxlKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc2V0U3ZnRWxlbWVudChzdmcpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYWRkVGl0bGVUb1NWRyhzdmc6IFNWR0VsZW1lbnQsIHRpdGxlOiBzdHJpbmcpIHtcbiAgICBjb25zdCB0aXRsZU5vZGUgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoVElUTEUsIFNWR19OQU1FU1BBQ0UpO1xuICAgIHRpdGxlTm9kZS5pZCA9IHRoaXMuX3RpdGxlSWQ7XG4gICAgY29uc3QgdGl0bGVUZXh0ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVUZXh0KHRpdGxlKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRpdGxlTm9kZSwgdGl0bGVUZXh0KTtcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHN2ZywgdGl0bGVOb2RlKTtcbiAgICByZXR1cm4gc3ZnO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZVVuaXF1ZVRpdGxlSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50aXRsZVxuICAgICAgPyBgJHt0aGlzLnRpdGxlfS0ke01hdGgucmFuZG9tKCkgKiAxMDAwMDAwMDAwMDAwMDAwMH1gXG4gICAgICA6ICcnO1xuICB9XG59XG4iXX0=
|