@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,292 @@
|
|
|
1
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, Directive, EventEmitter, forwardRef, Inject, Input, Optional, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
3
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
4
|
+
import { BAO_RADIO_GROUP } from './radio-group.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/cdk/a11y";
|
|
7
|
+
import * as i2 from "@angular/cdk/collections";
|
|
8
|
+
import * as i3 from "./radio-group.component";
|
|
9
|
+
/**
|
|
10
|
+
* Unique ID for each radio button
|
|
11
|
+
*/
|
|
12
|
+
let radioNextUniqueId = 0;
|
|
13
|
+
export class BaoRadioButtonComponent {
|
|
14
|
+
constructor(radioGroup, elementRef, cdr, focusMonitor, radioDispatcher) {
|
|
15
|
+
this.elementRef = elementRef;
|
|
16
|
+
this.cdr = cdr;
|
|
17
|
+
this.focusMonitor = focusMonitor;
|
|
18
|
+
this.radioDispatcher = radioDispatcher;
|
|
19
|
+
this._checked = false;
|
|
20
|
+
this._disabled = false;
|
|
21
|
+
this._required = false;
|
|
22
|
+
this._value = null;
|
|
23
|
+
this._uniqueId = `bao-radio-button-${++radioNextUniqueId}`;
|
|
24
|
+
/**
|
|
25
|
+
* The radio button ID. It is set dynamically with an unique ID by default
|
|
26
|
+
*/
|
|
27
|
+
this.id = this._uniqueId;
|
|
28
|
+
/**
|
|
29
|
+
* The aria-label for web accessibility
|
|
30
|
+
*/
|
|
31
|
+
this.ariaLabel = null;
|
|
32
|
+
/**
|
|
33
|
+
* Whether the radio button has a border and is considered as a card.
|
|
34
|
+
*/
|
|
35
|
+
this.brandBorder = false;
|
|
36
|
+
/**
|
|
37
|
+
* Whether the radio button is inline.
|
|
38
|
+
*/
|
|
39
|
+
this.inline = false;
|
|
40
|
+
/**
|
|
41
|
+
* The name property of the radio button
|
|
42
|
+
*/
|
|
43
|
+
this.name = null;
|
|
44
|
+
/**
|
|
45
|
+
* The visible state of the label
|
|
46
|
+
*/
|
|
47
|
+
this.hiddenLabel = false;
|
|
48
|
+
/**
|
|
49
|
+
* Emitted boolean on change
|
|
50
|
+
*/
|
|
51
|
+
this.change = new EventEmitter();
|
|
52
|
+
/**
|
|
53
|
+
* The aria-describedby id for web accessibilty
|
|
54
|
+
*/
|
|
55
|
+
this.ariaDescribedby = null;
|
|
56
|
+
/**
|
|
57
|
+
* The aria-labeledby id for web accessibilty
|
|
58
|
+
*/
|
|
59
|
+
this.ariaLabelledby = null;
|
|
60
|
+
/** Unregister function for radioDispatcher */
|
|
61
|
+
this._removeUniqueSelectionListener = () => undefined;
|
|
62
|
+
this.radioGroup = radioGroup;
|
|
63
|
+
this._removeUniqueSelectionListener = radioDispatcher.listen((id, name) => {
|
|
64
|
+
if (id !== this.id && name === this.name) {
|
|
65
|
+
this.checked = false;
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Whether the radio button is checked. Default : false
|
|
71
|
+
*/
|
|
72
|
+
get checked() {
|
|
73
|
+
return this._checked;
|
|
74
|
+
}
|
|
75
|
+
set checked(value) {
|
|
76
|
+
const newCheckedState = coerceBooleanProperty(value);
|
|
77
|
+
if (this._checked !== newCheckedState) {
|
|
78
|
+
this._checked = newCheckedState;
|
|
79
|
+
if (newCheckedState &&
|
|
80
|
+
this.radioGroup &&
|
|
81
|
+
this.radioGroup.value !== this.value) {
|
|
82
|
+
this.radioGroup.selected = this;
|
|
83
|
+
}
|
|
84
|
+
else if (!newCheckedState &&
|
|
85
|
+
this.radioGroup &&
|
|
86
|
+
this.radioGroup.value === this.value) {
|
|
87
|
+
this.radioGroup.selected = null;
|
|
88
|
+
}
|
|
89
|
+
if (newCheckedState) {
|
|
90
|
+
this.radioDispatcher.notify(this.id, this.name);
|
|
91
|
+
}
|
|
92
|
+
this.cdr.markForCheck();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Define the radio button value. Default : null
|
|
97
|
+
*/
|
|
98
|
+
get value() {
|
|
99
|
+
return this._value;
|
|
100
|
+
}
|
|
101
|
+
set value(value) {
|
|
102
|
+
if (value !== this._value) {
|
|
103
|
+
this._value = value;
|
|
104
|
+
if (this.radioGroup) {
|
|
105
|
+
if (!this.checked) {
|
|
106
|
+
this.checked = this.radioGroup.value === value;
|
|
107
|
+
}
|
|
108
|
+
if (this.checked) {
|
|
109
|
+
this.radioGroup.selected = this;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Whether the radio button is disabled. Default : false
|
|
116
|
+
*/
|
|
117
|
+
get disabled() {
|
|
118
|
+
return this._disabled || (this.radioGroup && this.radioGroup.disabled);
|
|
119
|
+
}
|
|
120
|
+
set disabled(value) {
|
|
121
|
+
this.setDisabled(coerceBooleanProperty(value));
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Whether the radio button is required. Default : false
|
|
125
|
+
*/
|
|
126
|
+
get required() {
|
|
127
|
+
return this._required || (this.radioGroup && this.radioGroup.required);
|
|
128
|
+
}
|
|
129
|
+
set required(value) {
|
|
130
|
+
this._required = coerceBooleanProperty(value);
|
|
131
|
+
}
|
|
132
|
+
get nativeElement() {
|
|
133
|
+
return this.elementRef.nativeElement;
|
|
134
|
+
}
|
|
135
|
+
focus(options, origin) {
|
|
136
|
+
if (origin) {
|
|
137
|
+
this.focusMonitor.focusVia(this.inputElement, origin, options);
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
this.inputElement.nativeElement.focus(options);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Method called from the parent as one of the parent input has changed. Prevent change detection error.
|
|
145
|
+
*/
|
|
146
|
+
markForCheck() {
|
|
147
|
+
this.cdr.markForCheck();
|
|
148
|
+
}
|
|
149
|
+
ngOnInit() {
|
|
150
|
+
// Set all unique ids for the html elements
|
|
151
|
+
this.inputID = `${this.id}-input`;
|
|
152
|
+
this.ariaLabelledby = `${this.id}-arialabelledby`;
|
|
153
|
+
if (this.radioGroup) {
|
|
154
|
+
this.checked = this.radioGroup.value === this._value;
|
|
155
|
+
if (this.checked) {
|
|
156
|
+
this.radioGroup.selected = this;
|
|
157
|
+
}
|
|
158
|
+
this.name = this.radioGroup.name;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
ngAfterViewInit() {
|
|
162
|
+
this.focusMonitor
|
|
163
|
+
.monitor(this.inputElement, true)
|
|
164
|
+
.subscribe(focusOrigin => {
|
|
165
|
+
if (!focusOrigin && this.radioGroup) {
|
|
166
|
+
this.radioGroup.onGroupTouch();
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
this.setAriaDescribedByToDescription();
|
|
170
|
+
}
|
|
171
|
+
ngOnDestroy() {
|
|
172
|
+
this.focusMonitor.stopMonitoring(this.inputElement);
|
|
173
|
+
this._removeUniqueSelectionListener();
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Emit the new value from the selected radio-button and the parent
|
|
177
|
+
*/
|
|
178
|
+
onInputInteraction(event) {
|
|
179
|
+
event.stopPropagation();
|
|
180
|
+
if (!this.checked && !this.disabled) {
|
|
181
|
+
const groupValueChanged = this.radioGroup && this.value !== this.radioGroup.value;
|
|
182
|
+
this.checked = true;
|
|
183
|
+
this.emitChangeEvent();
|
|
184
|
+
if (this.radioGroup) {
|
|
185
|
+
this.radioGroup.onModelChange(this.value);
|
|
186
|
+
if (groupValueChanged) {
|
|
187
|
+
this.radioGroup.emitChangeEvent();
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
emitChangeEvent() {
|
|
193
|
+
this.change.emit(this.value);
|
|
194
|
+
}
|
|
195
|
+
setDisabled(value) {
|
|
196
|
+
if (this._disabled !== value) {
|
|
197
|
+
this._disabled = value;
|
|
198
|
+
this.cdr.markForCheck();
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Set the id property to bao-radio-button-description as a description to the input
|
|
203
|
+
*/
|
|
204
|
+
setAriaDescribedByToDescription() {
|
|
205
|
+
const childNodes = Array.from(this.nativeElement.childNodes);
|
|
206
|
+
const labelNode = childNodes.find(x => {
|
|
207
|
+
return x.nodeName === 'LABEL';
|
|
208
|
+
});
|
|
209
|
+
if (labelNode) {
|
|
210
|
+
const labelChildNodes = Array.from(labelNode.childNodes);
|
|
211
|
+
const descriptionNode = labelChildNodes.find(x => {
|
|
212
|
+
return x.nodeName === 'BAO-RADIO-BUTTON-DESCRIPTION';
|
|
213
|
+
});
|
|
214
|
+
if (descriptionNode) {
|
|
215
|
+
this.ariaDescribedby = `${this.id}-ariadescribedby`;
|
|
216
|
+
descriptionNode.setAttribute('id', this.ariaDescribedby);
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
this.ariaDescribedby = null;
|
|
220
|
+
}
|
|
221
|
+
this.cdr.detectChanges();
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
BaoRadioButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioButtonComponent, deps: [{ token: BAO_RADIO_GROUP, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i2.UniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component });
|
|
226
|
+
BaoRadioButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BaoRadioButtonComponent, selector: "bao-radio-button, [bao-radio-button]", inputs: { id: "id", ariaLabel: ["aria-label", "ariaLabel"], brandBorder: "brandBorder", inline: "inline", name: "name", checked: "checked", value: "value", disabled: "disabled", required: "required", hiddenLabel: "hiddenLabel" }, outputs: { change: "change" }, host: { properties: { "class.bao-radio-button-inline": "inline", "class.bao-radio-button-checked": "checked", "class.bao-radio-button-disabled": "disabled", "class.bao-radio-button-card": "brandBorder", "class.bao-radio-button-hidden-label": "hiddenLabel" }, classAttribute: "bao-radio-button" }, providers: [
|
|
227
|
+
{
|
|
228
|
+
provide: NG_VALUE_ACCESSOR,
|
|
229
|
+
useExisting: forwardRef(() => BaoRadioButtonComponent),
|
|
230
|
+
multi: true
|
|
231
|
+
}
|
|
232
|
+
], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<input\n #input\n type=\"radio\"\n [id]=\"inputID\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"onInputInteraction($event)\"\n role=\"radio\"\n/>\n<label class=\"bao-radio-button-content-container\" [attr.for]=\"inputID\">\n <div class=\"bao-radio-button-label\" [id]=\"ariaLabelledby\">\n <ng-content></ng-content>\n </div>\n <ng-content\n select=\"bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]\"\n ></ng-content>\n</label>\n", styles: [".bao-radio-button{display:block;font-size:1rem;line-height:1.5rem;min-height:1.5rem;padding-top:.5rem;padding-bottom:.5rem;padding-left:2rem;position:relative;z-index:1}.bao-radio-button input{box-sizing:border-box;left:0;opacity:0;overflow:visible;padding:0;position:absolute;z-index:-1}.bao-radio-button input:focus~.bao-radio-button-content-container:before{box-shadow:0 0 0 .1875rem #0079c480}.bao-radio-button label.bao-radio-button-content-container{color:#212529;font-weight:400;font-size:1rem;line-height:1.5rem;margin-bottom:0;position:relative;vertical-align:top}.bao-radio-button label.bao-radio-button-content-container:before{border-radius:50%;box-sizing:border-box;position:absolute;top:0;left:-2rem;display:block;margin:.125rem;width:1.25rem;height:1.25rem;pointer-events:none;content:\"\";background-color:#fff;border:#ced4da solid 1px;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.bao-radio-button label.bao-radio-button-content-container:after{box-sizing:border-box;background:no-repeat 50%/1.5rem;content:\"\";display:block;height:1.5rem;left:-2rem;margin:0;position:absolute;top:0;width:1.5rem}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-label{color:#212529;display:block}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-description{color:#637381;display:block;margin-top:.5rem}.bao-radio-button.bao-radio-button-inline{display:inline-flex;margin-right:1rem}.bao-radio-button.bao-radio-button-card{padding:0;margin-bottom:1rem}.bao-radio-button.bao-radio-button-card:last-of-type{margin-bottom:0}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container{display:flex;flex-direction:column;flex:1;justify-content:center;padding:1rem 1rem 1rem 3.5rem;position:relative;border:1px solid #ced4da;border-radius:.25rem;color:#637381;min-height:3.5rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:before{top:1rem;left:0;margin-left:1.125rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:after{top:1rem;left:0;margin-left:1rem}.bao-radio-button input:checked~.bao-radio-button-content-container:before{border-color:#097d6c;background-color:#097d6c}.bao-radio-button input:checked~.bao-radio-button-content-container:after{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3e%3ccircle cx='12' cy='12' r='4' fill='%23ffffff'/%3e%3c/svg%3e\")}.bao-radio-button input:disabled~.bao-radio-button-content-container{color:#637381}.bao-radio-button input:disabled~.bao-radio-button-content-container:before{border-color:#ced4da;background-color:#ced4da}.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-label,.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-description{color:#637381}.bao-radio-button.bao-radio-button-hidden-label .bao-radio-button-label{clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.bao-radio-button.bao-radio-button-hidden-label label.bao-radio-button-content-container .bao-radio-button-description{margin-top:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
233
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioButtonComponent, decorators: [{
|
|
234
|
+
type: Component,
|
|
235
|
+
args: [{ selector: 'bao-radio-button, [bao-radio-button]', providers: [
|
|
236
|
+
{
|
|
237
|
+
provide: NG_VALUE_ACCESSOR,
|
|
238
|
+
useExisting: forwardRef(() => BaoRadioButtonComponent),
|
|
239
|
+
multi: true
|
|
240
|
+
}
|
|
241
|
+
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
242
|
+
class: 'bao-radio-button',
|
|
243
|
+
'[class.bao-radio-button-inline]': 'inline',
|
|
244
|
+
'[class.bao-radio-button-checked]': 'checked',
|
|
245
|
+
'[class.bao-radio-button-disabled]': 'disabled',
|
|
246
|
+
'[class.bao-radio-button-card]': 'brandBorder',
|
|
247
|
+
'[class.bao-radio-button-hidden-label]': 'hiddenLabel'
|
|
248
|
+
}, template: "<input\n #input\n type=\"radio\"\n [id]=\"inputID\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"onInputInteraction($event)\"\n role=\"radio\"\n/>\n<label class=\"bao-radio-button-content-container\" [attr.for]=\"inputID\">\n <div class=\"bao-radio-button-label\" [id]=\"ariaLabelledby\">\n <ng-content></ng-content>\n </div>\n <ng-content\n select=\"bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]\"\n ></ng-content>\n</label>\n", styles: [".bao-radio-button{display:block;font-size:1rem;line-height:1.5rem;min-height:1.5rem;padding-top:.5rem;padding-bottom:.5rem;padding-left:2rem;position:relative;z-index:1}.bao-radio-button input{box-sizing:border-box;left:0;opacity:0;overflow:visible;padding:0;position:absolute;z-index:-1}.bao-radio-button input:focus~.bao-radio-button-content-container:before{box-shadow:0 0 0 .1875rem #0079c480}.bao-radio-button label.bao-radio-button-content-container{color:#212529;font-weight:400;font-size:1rem;line-height:1.5rem;margin-bottom:0;position:relative;vertical-align:top}.bao-radio-button label.bao-radio-button-content-container:before{border-radius:50%;box-sizing:border-box;position:absolute;top:0;left:-2rem;display:block;margin:.125rem;width:1.25rem;height:1.25rem;pointer-events:none;content:\"\";background-color:#fff;border:#ced4da solid 1px;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.bao-radio-button label.bao-radio-button-content-container:after{box-sizing:border-box;background:no-repeat 50%/1.5rem;content:\"\";display:block;height:1.5rem;left:-2rem;margin:0;position:absolute;top:0;width:1.5rem}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-label{color:#212529;display:block}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-description{color:#637381;display:block;margin-top:.5rem}.bao-radio-button.bao-radio-button-inline{display:inline-flex;margin-right:1rem}.bao-radio-button.bao-radio-button-card{padding:0;margin-bottom:1rem}.bao-radio-button.bao-radio-button-card:last-of-type{margin-bottom:0}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container{display:flex;flex-direction:column;flex:1;justify-content:center;padding:1rem 1rem 1rem 3.5rem;position:relative;border:1px solid #ced4da;border-radius:.25rem;color:#637381;min-height:3.5rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:before{top:1rem;left:0;margin-left:1.125rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:after{top:1rem;left:0;margin-left:1rem}.bao-radio-button input:checked~.bao-radio-button-content-container:before{border-color:#097d6c;background-color:#097d6c}.bao-radio-button input:checked~.bao-radio-button-content-container:after{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3e%3ccircle cx='12' cy='12' r='4' fill='%23ffffff'/%3e%3c/svg%3e\")}.bao-radio-button input:disabled~.bao-radio-button-content-container{color:#637381}.bao-radio-button input:disabled~.bao-radio-button-content-container:before{border-color:#ced4da;background-color:#ced4da}.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-label,.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-description{color:#637381}.bao-radio-button.bao-radio-button-hidden-label .bao-radio-button-label{clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.bao-radio-button.bao-radio-button-hidden-label label.bao-radio-button-content-container .bao-radio-button-description{margin-top:0}\n"] }]
|
|
249
|
+
}], ctorParameters: function () { return [{ type: i3.BaoRadioButtonGroupComponent, decorators: [{
|
|
250
|
+
type: Optional
|
|
251
|
+
}, {
|
|
252
|
+
type: Inject,
|
|
253
|
+
args: [BAO_RADIO_GROUP]
|
|
254
|
+
}] }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.FocusMonitor }, { type: i2.UniqueSelectionDispatcher }]; }, propDecorators: { id: [{
|
|
255
|
+
type: Input
|
|
256
|
+
}], ariaLabel: [{
|
|
257
|
+
type: Input,
|
|
258
|
+
args: ['aria-label']
|
|
259
|
+
}], brandBorder: [{
|
|
260
|
+
type: Input
|
|
261
|
+
}], inline: [{
|
|
262
|
+
type: Input
|
|
263
|
+
}], name: [{
|
|
264
|
+
type: Input
|
|
265
|
+
}], checked: [{
|
|
266
|
+
type: Input
|
|
267
|
+
}], value: [{
|
|
268
|
+
type: Input
|
|
269
|
+
}], disabled: [{
|
|
270
|
+
type: Input
|
|
271
|
+
}], required: [{
|
|
272
|
+
type: Input
|
|
273
|
+
}], hiddenLabel: [{
|
|
274
|
+
type: Input
|
|
275
|
+
}], change: [{
|
|
276
|
+
type: Output
|
|
277
|
+
}], inputElement: [{
|
|
278
|
+
type: ViewChild,
|
|
279
|
+
args: ['input', { static: false }]
|
|
280
|
+
}] } });
|
|
281
|
+
export class BaoRadioDescription {
|
|
282
|
+
}
|
|
283
|
+
BaoRadioDescription.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
284
|
+
BaoRadioDescription.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BaoRadioDescription, selector: "bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]", host: { classAttribute: "bao-radio-button-description" }, ngImport: i0 });
|
|
285
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioDescription, decorators: [{
|
|
286
|
+
type: Directive,
|
|
287
|
+
args: [{
|
|
288
|
+
selector: 'bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]',
|
|
289
|
+
host: { class: 'bao-radio-button-description' }
|
|
290
|
+
}]
|
|
291
|
+
}] });
|
|
292
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL3JhZGlvL3JhZGlvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9yYWRpby9yYWRpby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU5RCxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQ0wsZUFBZSxFQUVoQixNQUFNLHlCQUF5QixDQUFDOzs7OztBQUVqQzs7R0FFRztBQUNILElBQUksaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO0FBd0IxQixNQUFNLE9BQU8sdUJBQXVCO0lBa0psQyxZQUdFLFVBQXdDLEVBQ2hDLFVBQXNCLEVBQ3RCLEdBQXNCLEVBQ3RCLFlBQTBCLEVBQzFCLGVBQTBDO1FBSDFDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsb0JBQWUsR0FBZixlQUFlLENBQTJCO1FBdEo1QyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixXQUFNLEdBQWtCLElBQUksQ0FBQztRQUM3QixjQUFTLEdBQUcsb0JBQW9CLEVBQUUsaUJBQWlC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QUs7Z0JBS1UsTUFBTTtzQkFBckIsS0FBSztnQkFLVSxJQUFJO3NCQUFuQixLQUFLO2dCQU1GLE9BQU87c0JBRFYsS0FBSztnQkFpQ0YsS0FBSztzQkFEUixLQUFLO2dCQXNCRixRQUFRO3NCQURYLEtBQUs7Z0JBWUYsUUFBUTtzQkFEWCxLQUFLO2dCQVdVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBS29CLE1BQU07c0JBQS9CLE1BQU07Z0JBT0MsWUFBWTtzQkFEbkIsU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOztBQWtLdkMsTUFBTSxPQUFPLG1CQUFtQjs7Z0hBQW5CLG1CQUFtQjtvR0FBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBTC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUNOLDRGQUE0RjtvQkFDOUYsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLDhCQUE4QixFQUFFO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHsgRm9jdXNNb25pdG9yLCBGb2N1c09yaWdpbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBVbmlxdWVTZWxlY3Rpb25EaXNwYXRjaGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIEJBT19SQURJT19HUk9VUCxcbiAgQmFvUmFkaW9CdXR0b25Hcm91cENvbXBvbmVudFxufSBmcm9tICcuL3JhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5cbi8qKlxuICogVW5pcXVlIElEIGZvciBlYWNoIHJhZGlvIGJ1dHRvblxuICovXG5sZXQgcmFkaW9OZXh0VW5pcXVlSWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYW8tcmFkaW8tYnV0dG9uLCBbYmFvLXJhZGlvLWJ1dHRvbl0nLFxuICB0ZW1wbGF0ZVVybDogJ3JhZGlvLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmFkaW8uY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBCYW9SYWRpb0J1dHRvbkNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1yYWRpby1idXR0b24nLFxuICAgICdbY2xhc3MuYmFvLXJhZGlvLWJ1dHRvbi1pbmxpbmVdJzogJ2lubGluZScsXG4gICAgJ1tjbGFzcy5iYW8tcmFkaW8tYnV0dG9uLWNoZWNrZWRdJzogJ2NoZWNrZWQnLFxuICAgICdbY2xhc3MuYmFvLXJhZGlvLWJ1dHRvbi1kaXNhYmxlZF0nOiAnZGlzYWJsZWQnLFxuICAgICdbY2xhc3MuYmFvLXJhZGlvLWJ1dHRvbi1jYXJkXSc6ICdicmFuZEJvcmRlcicsXG4gICAgJ1tjbGFzcy5iYW8tcmFkaW8tYnV0dG9uLWhpZGRlbi1sYWJlbF0nOiAnaGlkZGVuTGFiZWwnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvUmFkaW9CdXR0b25Db21wb25lbnRcbiAgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkluaXQsIE9uRGVzdHJveVxue1xuICBwcml2YXRlIF9jaGVja2VkID0gZmFsc2U7XG4gIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2U7XG4gIHByaXZhdGUgX3JlcXVpcmVkID0gZmFsc2U7XG4gIHByaXZhdGUgX3ZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfdW5pcXVlSWQgPSBgYmFvLXJhZGlvLWJ1dHRvbi0keysrcmFkaW9OZXh0VW5pcXVlSWR9YDtcblxuICAvKipcbiAgICogVGhlIHJhZGlvIGJ1dHRvbiBJRC4gSXQgaXMgc2V0IGR5bmFtaWNhbGx5IHdpdGggYW4gdW5pcXVlIElEIGJ5IGRlZmF1bHRcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBpZDogc3RyaW5nID0gdGhpcy5fdW5pcXVlSWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBhcmlhLWxhYmVsIGZvciB3ZWIgYWNjZXNzaWJpbGl0eVxuICAgKi9cbiAgQElucHV0KCdhcmlhLWxhYmVsJykgcHVibGljIGFyaWFMYWJlbDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGJ1dHRvbiBoYXMgYSBib3JkZXIgYW5kIGlzIGNvbnNpZGVyZWQgYXMgYSBjYXJkLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGJyYW5kQm9yZGVyID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGJ1dHRvbiBpcyBpbmxpbmUuXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaW5saW5lID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIHByb3BlcnR5IG9mIHRoZSByYWRpbyBidXR0b25cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBuYW1lOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGlzIGNoZWNrZWQuIERlZmF1bHQgOiBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGNoZWNrZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2NoZWNrZWQ7XG4gIH1cbiAgc2V0IGNoZWNrZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBuZXdDaGVja2VkU3RhdGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIGlmICh0aGlzLl9jaGVja2VkICE9PSBuZXdDaGVja2VkU3RhdGUpIHtcbiAgICAgIHRoaXMuX2NoZWNrZWQgPSBuZXdDaGVja2VkU3RhdGU7XG4gICAgICBpZiAoXG4gICAgICAgIG5ld0NoZWNrZWRTdGF0ZSAmJlxuICAgICAgICB0aGlzLnJhZGlvR3JvdXAgJiZcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwLnZhbHVlICE9PSB0aGlzLnZhbHVlXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwLnNlbGVjdGVkID0gdGhpcztcbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICFuZXdDaGVja2VkU3RhdGUgJiZcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwICYmXG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC52YWx1ZSA9PT0gdGhpcy52YWx1ZVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC5zZWxlY3RlZCA9IG51bGw7XG4gICAgICB9XG5cbiAgICAgIGlmIChuZXdDaGVja2VkU3RhdGUpIHtcbiAgICAgICAgdGhpcy5yYWRpb0Rpc3BhdGNoZXIubm90aWZ5KHRoaXMuaWQsIHRoaXMubmFtZSk7XG4gICAgICB9XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIHRoZSByYWRpbyBidXR0b24gdmFsdWUuIERlZmF1bHQgOiBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cbiAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuX3ZhbHVlKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgICAgaWYgKHRoaXMucmFkaW9Hcm91cCkge1xuICAgICAgICBpZiAoIXRoaXMuY2hlY2tlZCkge1xuICAgICAgICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMucmFkaW9Hcm91cC52YWx1ZSA9PT0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuY2hlY2tlZCkge1xuICAgICAgICAgIHRoaXMucmFkaW9Hcm91cC5zZWxlY3RlZCA9IHRoaXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGlzIGRpc2FibGVkLiBEZWZhdWx0IDogZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQgfHwgKHRoaXMucmFkaW9Hcm91cCAmJiB0aGlzLnJhZGlvR3JvdXAuZGlzYWJsZWQpO1xuICB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuc2V0RGlzYWJsZWQoY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKSk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGlzIHJlcXVpcmVkLiBEZWZhdWx0IDogZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCByZXF1aXJlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcmVxdWlyZWQgfHwgKHRoaXMucmFkaW9Hcm91cCAmJiB0aGlzLnJhZGlvR3JvdXAucmVxdWlyZWQpO1xuICB9XG4gIHNldCByZXF1aXJlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlcXVpcmVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgdmlzaWJsZSBzdGF0ZSBvZiB0aGUgbGFiZWxcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBoaWRkZW5MYWJlbCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBFbWl0dGVkIGJvb2xlYW4gb24gY2hhbmdlXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIC8qKlxuICAgKiBSZWZlcmVuY2UgdG8gdGhlIGlucHV0IGh0bWwgZWxlbWVudFxuICAgKi9cbiAgQFZpZXdDaGlsZCgnaW5wdXQnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgcHJpdmF0ZSBpbnB1dEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgLyoqXG4gICAqIFRoZSByYWRpbyBidXR0b25zIGdyb3VwXG4gICAqL1xuICBwdWJsaWMgcmFkaW9Hcm91cDogQmFvUmFkaW9CdXR0b25Hcm91cENvbXBvbmVudDtcblxuICAvKipcbiAgICogVGhlIGFyaWEtZGVzY3JpYmVkYnkgaWQgZm9yIHdlYiBhY2Nlc3NpYmlsdHlcbiAgICovXG4gIHB1YmxpYyBhcmlhRGVzY3JpYmVkYnk6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgYXJpYS1sYWJlbGVkYnkgaWQgZm9yIHdlYiBhY2Nlc3NpYmlsdHlcbiAgICovXG4gIHB1YmxpYyBhcmlhTGFiZWxsZWRieTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgaW5wdXQgaHRtbCBlbGVtZW50XG4gICAqL1xuICBwdWJsaWMgaW5wdXRJRDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChCQU9fUkFESU9fR1JPVVApXG4gICAgcmFkaW9Hcm91cDogQmFvUmFkaW9CdXR0b25Hcm91cENvbXBvbmVudCxcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgcHJpdmF0ZSByYWRpb0Rpc3BhdGNoZXI6IFVuaXF1ZVNlbGVjdGlvbkRpc3BhdGNoZXJcbiAgKSB7XG4gICAgdGhpcy5yYWRpb0dyb3VwID0gcmFkaW9Hcm91cDtcbiAgICB0aGlzLl9yZW1vdmVVbmlxdWVTZWxlY3Rpb25MaXN0ZW5lciA9IHJhZGlvRGlzcGF0Y2hlci5saXN0ZW4oXG4gICAgICAoaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIGlmIChpZCAhPT0gdGhpcy5pZCAmJiBuYW1lID09PSB0aGlzLm5hbWUpIHtcbiAgICAgICAgICB0aGlzLmNoZWNrZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBnZXQgbmF0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIGZvY3VzKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMsIG9yaWdpbj86IEZvY3VzT3JpZ2luKTogdm9pZCB7XG4gICAgaWYgKG9yaWdpbikge1xuICAgICAgdGhpcy5mb2N1c01vbml0b3IuZm9jdXNWaWEodGhpcy5pbnB1dEVsZW1lbnQsIG9yaWdpbiwgb3B0aW9ucyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMob3B0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBjYWxsZWQgZnJvbSB0aGUgcGFyZW50IGFzIG9uZSBvZiB0aGUgcGFyZW50IGlucHV0IGhhcyBjaGFuZ2VkLiBQcmV2ZW50IGNoYW5nZSBkZXRlY3Rpb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgbWFya0ZvckNoZWNrKCkge1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIC8vIFNldCBhbGwgdW5pcXVlIGlkcyBmb3IgdGhlIGh0bWwgZWxlbWVudHNcbiAgICB0aGlzLmlucHV0SUQgPSBgJHt0aGlzLmlkfS1pbnB1dGA7XG4gICAgdGhpcy5hcmlhTGFiZWxsZWRieSA9IGAke3RoaXMuaWR9LWFyaWFsYWJlbGxlZGJ5YDtcblxuICAgIGlmICh0aGlzLnJhZGlvR3JvdXApIHtcbiAgICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMucmFkaW9Hcm91cC52YWx1ZSA9PT0gdGhpcy5fdmFsdWU7XG5cbiAgICAgIGlmICh0aGlzLmNoZWNrZWQpIHtcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwLnNlbGVjdGVkID0gdGhpcztcbiAgICAgIH1cblxuICAgICAgdGhpcy5uYW1lID0gdGhpcy5yYWRpb0dyb3VwLm5hbWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmZvY3VzTW9uaXRvclxuICAgICAgLm1vbml0b3IodGhpcy5pbnB1dEVsZW1lbnQsIHRydWUpXG4gICAgICAuc3Vic2NyaWJlKGZvY3VzT3JpZ2luID0+IHtcbiAgICAgICAgaWYgKCFmb2N1c09yaWdpbiAmJiB0aGlzLnJhZGlvR3JvdXApIHtcbiAgICAgICAgICB0aGlzLnJhZGlvR3JvdXAub25Hcm91cFRvdWNoKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgdGhpcy5zZXRBcmlhRGVzY3JpYmVkQnlUb0Rlc2NyaXB0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5mb2N1c01vbml0b3Iuc3RvcE1vbml0b3JpbmcodGhpcy5pbnB1dEVsZW1lbnQpO1xuICAgIHRoaXMuX3JlbW92ZVVuaXF1ZVNlbGVjdGlvbkxpc3RlbmVyKCk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdCB0aGUgbmV3IHZhbHVlIGZyb20gdGhlIHNlbGVjdGVkIHJhZGlvLWJ1dHRvbiBhbmQgdGhlIHBhcmVudFxuICAgKi9cbiAgcHVibGljIG9uSW5wdXRJbnRlcmFjdGlvbihldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBpZiAoIXRoaXMuY2hlY2tlZCAmJiAhdGhpcy5kaXNhYmxlZCkge1xuICAgICAgY29uc3QgZ3JvdXBWYWx1ZUNoYW5nZWQgPVxuICAgICAgICB0aGlzLnJhZGlvR3JvdXAgJiYgdGhpcy52YWx1ZSAhPT0gdGhpcy5yYWRpb0dyb3VwLnZhbHVlO1xuICAgICAgdGhpcy5jaGVja2VkID0gdHJ1ZTtcbiAgICAgIHRoaXMuZW1pdENoYW5nZUV2ZW50KCk7XG5cbiAgICAgIGlmICh0aGlzLnJhZGlvR3JvdXApIHtcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwLm9uTW9kZWxDaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICAgIGlmIChncm91cFZhbHVlQ2hhbmdlZCkge1xuICAgICAgICAgIHRoaXMucmFkaW9Hcm91cC5lbWl0Q2hhbmdlRXZlbnQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZW1pdENoYW5nZUV2ZW50KCk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIHNldERpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuX2Rpc2FibGVkICE9PSB2YWx1ZSkge1xuICAgICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGlkIHByb3BlcnR5IHRvIGJhby1yYWRpby1idXR0b24tZGVzY3JpcHRpb24gYXMgYSBkZXNjcmlwdGlvbiB0byB0aGUgaW5wdXRcbiAgICovXG4gIHByaXZhdGUgc2V0QXJpYURlc2NyaWJlZEJ5VG9EZXNjcmlwdGlvbigpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gQXJyYXkuZnJvbSh0aGlzLm5hdGl2ZUVsZW1lbnQuY2hpbGROb2Rlcyk7XG4gICAgY29uc3QgbGFiZWxOb2RlID0gY2hpbGROb2Rlcy5maW5kKHggPT4ge1xuICAgICAgcmV0dXJuIHgubm9kZU5hbWUgPT09ICdMQUJFTCc7XG4gICAgfSk7XG4gICAgaWYgKGxhYmVsTm9kZSkge1xuICAgICAgY29uc3QgbGFiZWxDaGlsZE5vZGVzID0gQXJyYXkuZnJvbShsYWJlbE5vZGUuY2hpbGROb2Rlcyk7XG4gICAgICBjb25zdCBkZXNjcmlwdGlvbk5vZGUgPSBsYWJlbENoaWxkTm9kZXMuZmluZCh4ID0+IHtcbiAgICAgICAgcmV0dXJuIHgubm9kZU5hbWUgPT09ICdCQU8tUkFESU8tQlVUVE9OLURFU0NSSVBUSU9OJztcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoZGVzY3JpcHRpb25Ob2RlKSB7XG4gICAgICAgIHRoaXMuYXJpYURlc2NyaWJlZGJ5ID0gYCR7dGhpcy5pZH0tYXJpYWRlc2NyaWJlZGJ5YDtcbiAgICAgICAgKGRlc2NyaXB0aW9uTm9kZSBhcyBIVE1MRWxlbWVudCkuc2V0QXR0cmlidXRlKFxuICAgICAgICAgICdpZCcsXG4gICAgICAgICAgdGhpcy5hcmlhRGVzY3JpYmVkYnlcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYXJpYURlc2NyaWJlZGJ5ID0gbnVsbDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBVbnJlZ2lzdGVyIGZ1bmN0aW9uIGZvciByYWRpb0Rpc3BhdGNoZXIgKi9cbiAgcHJpdmF0ZSBfcmVtb3ZlVW5pcXVlU2VsZWN0aW9uTGlzdGVuZXI6ICgpID0+IHZvaWQgPSAoKSA9PiB1bmRlZmluZWQ7XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnYmFvLXJhZGlvLWJ1dHRvbi1kZXNjcmlwdGlvbiwgW2Jhby1yYWRpby1idXR0b24tZGVzY3JpcHRpb25dLCAgW2Jhb1JhZGlvQnV0dG9uRGVzY3JpcHRpb25dJyxcbiAgaG9zdDogeyBjbGFzczogJ2Jhby1yYWRpby1idXR0b24tZGVzY3JpcHRpb24nIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvUmFkaW9EZXNjcmlwdGlvbiB7fVxuIiwiPGlucHV0XG4gICNpbnB1dFxuICB0eXBlPVwicmFkaW9cIlxuICBbaWRdPVwiaW5wdXRJRFwiXG4gIFtjaGVja2VkXT1cImNoZWNrZWRcIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICBbYXR0ci52YWx1ZV09XCJ2YWx1ZVwiXG4gIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZGJ5XCJcbiAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJhcmlhRGVzY3JpYmVkYnlcIlxuICAoY2hhbmdlKT1cIm9uSW5wdXRJbnRlcmFjdGlvbigkZXZlbnQpXCJcbiAgcm9sZT1cInJhZGlvXCJcbi8+XG48bGFiZWwgY2xhc3M9XCJiYW8tcmFkaW8tYnV0dG9uLWNvbnRlbnQtY29udGFpbmVyXCIgW2F0dHIuZm9yXT1cImlucHV0SURcIj5cbiAgPGRpdiBjbGFzcz1cImJhby1yYWRpby1idXR0b24tbGFiZWxcIiBbaWRdPVwiYXJpYUxhYmVsbGVkYnlcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuICA8bmctY29udGVudFxuICAgIHNlbGVjdD1cImJhby1yYWRpby1idXR0b24tZGVzY3JpcHRpb24sIFtiYW8tcmFkaW8tYnV0dG9uLWRlc2NyaXB0aW9uXSwgW2Jhb1JhZGlvQnV0dG9uRGVzY3JpcHRpb25dXCJcbiAgPjwvbmctY29udGVudD5cbjwvbGFiZWw+XG4iXX0=
|
|
@@ -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 './tag.component';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvdGFnL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5leHBvcnQgKiBmcm9tICcuL21vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3RhZy5jb21wb25lbnQnO1xuIl19
|
|
@@ -0,0 +1,24 @@
|
|
|
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 { BaoTagComponent } from './tag.component';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
const TAG_DIRECTIVES = [BaoTagComponent];
|
|
11
|
+
export class BaoTagModule {
|
|
12
|
+
}
|
|
13
|
+
BaoTagModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoTagModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
+
BaoTagModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoTagModule, declarations: [BaoTagComponent], imports: [CommonModule], exports: [BaoTagComponent] });
|
|
15
|
+
BaoTagModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoTagModule, imports: [[CommonModule]] });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoTagModule, decorators: [{
|
|
17
|
+
type: NgModule,
|
|
18
|
+
args: [{
|
|
19
|
+
imports: [CommonModule],
|
|
20
|
+
declarations: [TAG_DIRECTIVES],
|
|
21
|
+
exports: [TAG_DIRECTIVES]
|
|
22
|
+
}]
|
|
23
|
+
}] });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL3RhZy9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFbEQsTUFBTSxjQUFjLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztBQU96QyxNQUFNLE9BQU8sWUFBWTs7eUdBQVosWUFBWTswR0FBWixZQUFZLGlCQVBELGVBQWUsYUFHM0IsWUFBWSxhQUhBLGVBQWU7MEdBTzFCLFlBQVksWUFKZCxDQUFDLFlBQVksQ0FBQzsyRkFJWixZQUFZO2tCQUx4QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMsY0FBYyxDQUFDO29CQUM5QixPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhb1RhZ0NvbXBvbmVudCB9IGZyb20gJy4vdGFnLmNvbXBvbmVudCc7XG5cbmNvbnN0IFRBR19ESVJFQ1RJVkVTID0gW0Jhb1RhZ0NvbXBvbmVudF07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtUQUdfRElSRUNUSVZFU10sXG4gIGV4cG9ydHM6IFtUQUdfRElSRUNUSVZFU11cbn0pXG5leHBvcnQgY2xhc3MgQmFvVGFnTW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,75 @@
|
|
|
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, Input, ViewEncapsulation } from '@angular/core';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
const SPAN = 'span';
|
|
9
|
+
const SPAN_TEXT_PROPERTY = 'textContent';
|
|
10
|
+
const SCREEN_READER_CLASS_NAME = 'sr-only';
|
|
11
|
+
const BAO_ICON = 'bao-icon';
|
|
12
|
+
const HAS_ICON = 'has-icon';
|
|
13
|
+
export class BaoTagComponent {
|
|
14
|
+
constructor(renderer, elementRef) {
|
|
15
|
+
this.renderer = renderer;
|
|
16
|
+
this.elementRef = elementRef;
|
|
17
|
+
/**
|
|
18
|
+
* The color of the tag.
|
|
19
|
+
*/
|
|
20
|
+
this.type = 'neutral';
|
|
21
|
+
/**
|
|
22
|
+
* The shade of the tags color.
|
|
23
|
+
*/
|
|
24
|
+
this.variant = 'light';
|
|
25
|
+
/**
|
|
26
|
+
* The hidden text for screen readers.
|
|
27
|
+
*/
|
|
28
|
+
this.hiddenText = 'Étiquette';
|
|
29
|
+
}
|
|
30
|
+
get nativeElement() {
|
|
31
|
+
return this.elementRef.nativeElement;
|
|
32
|
+
}
|
|
33
|
+
ngAfterViewInit() {
|
|
34
|
+
this.addHiddenText();
|
|
35
|
+
this.addIconClass();
|
|
36
|
+
}
|
|
37
|
+
addHiddenText() {
|
|
38
|
+
const screenReaderSpan = this.renderer.createElement(SPAN);
|
|
39
|
+
this.renderer.setProperty(screenReaderSpan, SPAN_TEXT_PROPERTY, this.hiddenText);
|
|
40
|
+
this.renderer.addClass(screenReaderSpan, SCREEN_READER_CLASS_NAME);
|
|
41
|
+
const labelChild = Array.from(this.nativeElement.children).find(c => c.localName === SPAN);
|
|
42
|
+
this.renderer.insertBefore(this.nativeElement, screenReaderSpan, labelChild);
|
|
43
|
+
}
|
|
44
|
+
addIconClass() {
|
|
45
|
+
const children = Array.from(this.nativeElement.children);
|
|
46
|
+
if (children.some(c => c.localName === BAO_ICON)) {
|
|
47
|
+
this.renderer.addClass(this.nativeElement, HAS_ICON);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
BaoTagComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoTagComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
+
BaoTagComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BaoTagComponent, selector: "bao-tag, [bao-tag], [baoTag]", inputs: { type: "type", variant: "variant", hiddenText: "hiddenText" }, host: { properties: { "class.bao-tag-neutral-light": "type === \"neutral\" && variant === \"light\"", "class.bao-tag-neutral-strong": "type === \"neutral\" && variant === \"strong\"", "class.bao-tag-info-light": "type === \"info\" && variant === \"light\"", "class.bao-tag-info-strong": "type === \"info\" && variant === \"strong\"", "class.bao-tag-positive-light": "type === \"positive\" && variant === \"light\"", "class.bao-tag-positive-strong": "type === \"positive\" && variant === \"strong\"", "class.bao-tag-alert-light": "type === \"alert\" && variant === \"light\"", "class.bao-tag-alert-strong": "type === \"alert\" && variant === \"strong\"", "class.bao-tag-negative-light": "type === \"negative\" && variant === \"light\"", "class.bao-tag-negative-strong": "type === \"negative\" && variant === \"strong\"" }, classAttribute: "bao-tag" }, ngImport: i0, template: "<ng-content select=\"bao-icon\"></ng-content>\n<ng-content></ng-content>\n", styles: [".bao-tag{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:.125rem;line-height:1.5rem}.bao-tag.has-icon{padding-left:.25rem}.bao-tag.bao-tag-info-light{background-color:#e6f5f9;color:#004b7b}.bao-tag.bao-tag-info-strong{background-color:#0079c4;color:#fff}.bao-tag.bao-tag-positive-light{background-color:#e7f6f0;color:#025d29}.bao-tag.bao-tag-positive-strong{background-color:#0da566;color:#fff}.bao-tag.bao-tag-negative-light{background-color:#ffebe6;color:#851a00}.bao-tag.bao-tag-negative-strong{background-color:#d3310a;color:#fff}.bao-tag.bao-tag-alert-light{background-color:#fefae6;color:#6c4600}.bao-tag.bao-tag-alert-strong{background-color:#ffb833;color:#212529}.bao-tag.bao-tag-neutral-light{background-color:#dee2e6;color:#212529}.bao-tag.bao-tag-neutral-strong{background-color:#212529;color:#fff}.bao-tag>span{font-weight:700;font-size:.875rem;line-height:1.25rem}.bao-tag>.bao-icon{height:1rem;width:1rem;flex-shrink:0;margin-right:.25rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoTagComponent, decorators: [{
|
|
54
|
+
type: Component,
|
|
55
|
+
args: [{ selector: 'bao-tag, [bao-tag], [baoTag]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
56
|
+
class: 'bao-tag',
|
|
57
|
+
'[class.bao-tag-neutral-light]': 'type === "neutral" && variant === "light"',
|
|
58
|
+
'[class.bao-tag-neutral-strong]': 'type === "neutral" && variant === "strong"',
|
|
59
|
+
'[class.bao-tag-info-light]': 'type === "info" && variant === "light"',
|
|
60
|
+
'[class.bao-tag-info-strong]': 'type === "info" && variant === "strong"',
|
|
61
|
+
'[class.bao-tag-positive-light]': 'type === "positive" && variant === "light"',
|
|
62
|
+
'[class.bao-tag-positive-strong]': 'type === "positive" && variant === "strong"',
|
|
63
|
+
'[class.bao-tag-alert-light]': 'type === "alert" && variant === "light"',
|
|
64
|
+
'[class.bao-tag-alert-strong]': 'type === "alert" && variant === "strong"',
|
|
65
|
+
'[class.bao-tag-negative-light]': 'type === "negative" && variant === "light"',
|
|
66
|
+
'[class.bao-tag-negative-strong]': 'type === "negative" && variant === "strong"'
|
|
67
|
+
}, template: "<ng-content select=\"bao-icon\"></ng-content>\n<ng-content></ng-content>\n", styles: [".bao-tag{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:.125rem;line-height:1.5rem}.bao-tag.has-icon{padding-left:.25rem}.bao-tag.bao-tag-info-light{background-color:#e6f5f9;color:#004b7b}.bao-tag.bao-tag-info-strong{background-color:#0079c4;color:#fff}.bao-tag.bao-tag-positive-light{background-color:#e7f6f0;color:#025d29}.bao-tag.bao-tag-positive-strong{background-color:#0da566;color:#fff}.bao-tag.bao-tag-negative-light{background-color:#ffebe6;color:#851a00}.bao-tag.bao-tag-negative-strong{background-color:#d3310a;color:#fff}.bao-tag.bao-tag-alert-light{background-color:#fefae6;color:#6c4600}.bao-tag.bao-tag-alert-strong{background-color:#ffb833;color:#212529}.bao-tag.bao-tag-neutral-light{background-color:#dee2e6;color:#212529}.bao-tag.bao-tag-neutral-strong{background-color:#212529;color:#fff}.bao-tag>span{font-weight:700;font-size:.875rem;line-height:1.25rem}.bao-tag>.bao-icon{height:1rem;width:1rem;flex-shrink:0;margin-right:.25rem}\n"] }]
|
|
68
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { type: [{
|
|
69
|
+
type: Input
|
|
70
|
+
}], variant: [{
|
|
71
|
+
type: Input
|
|
72
|
+
}], hiddenText: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}] } });
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi90YWcvdGFnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi90YWcvdGFnLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxLQUFLLEVBRUwsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDOztBQUV2QixNQUFNLElBQUksR0FBRyxNQUFNLENBQUM7QUFDcEIsTUFBTSxrQkFBa0IsR0FBRyxhQUFhLENBQUM7QUFDekMsTUFBTSx3QkFBd0IsR0FBRyxTQUFTLENBQUM7QUFDM0MsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDO0FBQzVCLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQztBQTRCNUIsTUFBTSxPQUFPLGVBQWU7SUFpQjFCLFlBQW9CLFFBQW1CLEVBQVUsVUFBc0I7UUFBbkQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFoQnZFOztXQUVHO1FBQ2EsU0FBSSxHQUNsQixTQUFTLENBQUM7UUFFWjs7V0FFRztRQUNhLFlBQU8sR0FBdUIsT0FBTyxDQUFDO1FBRXREOztXQUVHO1FBQ2EsZUFBVSxHQUFHLFdBQVcsQ0FBQztJQUVpQyxDQUFDO0lBRTNFLElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7SUFDdkMsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU8sYUFBYTtRQUNuQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUN2QixnQkFBZ0IsRUFDaEIsa0JBQWtCLEVBQ2xCLElBQUksQ0FBQyxVQUFVLENBQ2hCLENBQUM7UUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQzdELENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQzFCLENBQUM7UUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FDeEIsSUFBSSxDQUFDLGFBQWEsRUFDbEIsZ0JBQWdCLEVBQ2hCLFVBQVUsQ0FDWCxDQUFDO0lBQ0osQ0FBQztJQUVPLFlBQVk7UUFDbEIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3pELElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLEtBQUssUUFBUSxDQUFDLEVBQUU7WUFDaEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztTQUN0RDtJQUNILENBQUM7OzRHQW5EVSxlQUFlO2dHQUFmLGVBQWUsKzlCQy9DNUIsNEVBRUE7MkZENkNhLGVBQWU7a0JBMUIzQixTQUFTOytCQUNFLDhCQUE4QixpQkFHekIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUsU0FBUzt3QkFDaEIsK0JBQStCLEVBQzdCLDJDQUEyQzt3QkFDN0MsZ0NBQWdDLEVBQzlCLDRDQUE0Qzt3QkFDOUMsNEJBQTRCLEVBQUUsd0NBQXdDO3dCQUN0RSw2QkFBNkIsRUFBRSx5Q0FBeUM7d0JBQ3hFLGdDQUFnQyxFQUM5Qiw0Q0FBNEM7d0JBQzlDLGlDQUFpQyxFQUMvQiw2Q0FBNkM7d0JBQy9DLDZCQUE2QixFQUFFLHlDQUF5Qzt3QkFDeEUsOEJBQThCLEVBQUUsMENBQTBDO3dCQUMxRSxnQ0FBZ0MsRUFDOUIsNENBQTRDO3dCQUM5QyxpQ0FBaUMsRUFDL0IsNkNBQTZDO3FCQUNoRDt5SEFNZSxJQUFJO3NCQUFuQixLQUFLO2dCQU1VLE9BQU87c0JBQXRCLEtBQUs7Z0JBS1UsVUFBVTtzQkFBekIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIFJlbmRlcmVyMixcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IFNQQU4gPSAnc3Bhbic7XG5jb25zdCBTUEFOX1RFWFRfUFJPUEVSVFkgPSAndGV4dENvbnRlbnQnO1xuY29uc3QgU0NSRUVOX1JFQURFUl9DTEFTU19OQU1FID0gJ3NyLW9ubHknO1xuY29uc3QgQkFPX0lDT04gPSAnYmFvLWljb24nO1xuY29uc3QgSEFTX0lDT04gPSAnaGFzLWljb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYW8tdGFnLCBbYmFvLXRhZ10sIFtiYW9UYWddJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RhZy5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYmFvLXRhZycsXG4gICAgJ1tjbGFzcy5iYW8tdGFnLW5ldXRyYWwtbGlnaHRdJzpcbiAgICAgICd0eXBlID09PSBcIm5ldXRyYWxcIiAmJiB2YXJpYW50ID09PSBcImxpZ2h0XCInLFxuICAgICdbY2xhc3MuYmFvLXRhZy1uZXV0cmFsLXN0cm9uZ10nOlxuICAgICAgJ3R5cGUgPT09IFwibmV1dHJhbFwiICYmIHZhcmlhbnQgPT09IFwic3Ryb25nXCInLFxuICAgICdbY2xhc3MuYmFvLXRhZy1pbmZvLWxpZ2h0XSc6ICd0eXBlID09PSBcImluZm9cIiAmJiB2YXJpYW50ID09PSBcImxpZ2h0XCInLFxuICAgICdbY2xhc3MuYmFvLXRhZy1pbmZvLXN0cm9uZ10nOiAndHlwZSA9PT0gXCJpbmZvXCIgJiYgdmFyaWFudCA9PT0gXCJzdHJvbmdcIicsXG4gICAgJ1tjbGFzcy5iYW8tdGFnLXBvc2l0aXZlLWxpZ2h0XSc6XG4gICAgICAndHlwZSA9PT0gXCJwb3NpdGl2ZVwiICYmIHZhcmlhbnQgPT09IFwibGlnaHRcIicsXG4gICAgJ1tjbGFzcy5iYW8tdGFnLXBvc2l0aXZlLXN0cm9uZ10nOlxuICAgICAgJ3R5cGUgPT09IFwicG9zaXRpdmVcIiAmJiB2YXJpYW50ID09PSBcInN0cm9uZ1wiJyxcbiAgICAnW2NsYXNzLmJhby10YWctYWxlcnQtbGlnaHRdJzogJ3R5cGUgPT09IFwiYWxlcnRcIiAmJiB2YXJpYW50ID09PSBcImxpZ2h0XCInLFxuICAgICdbY2xhc3MuYmFvLXRhZy1hbGVydC1zdHJvbmddJzogJ3R5cGUgPT09IFwiYWxlcnRcIiAmJiB2YXJpYW50ID09PSBcInN0cm9uZ1wiJyxcbiAgICAnW2NsYXNzLmJhby10YWctbmVnYXRpdmUtbGlnaHRdJzpcbiAgICAgICd0eXBlID09PSBcIm5lZ2F0aXZlXCIgJiYgdmFyaWFudCA9PT0gXCJsaWdodFwiJyxcbiAgICAnW2NsYXNzLmJhby10YWctbmVnYXRpdmUtc3Ryb25nXSc6XG4gICAgICAndHlwZSA9PT0gXCJuZWdhdGl2ZVwiICYmIHZhcmlhbnQgPT09IFwic3Ryb25nXCInXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvVGFnQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIC8qKlxuICAgKiBUaGUgY29sb3Igb2YgdGhlIHRhZy5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyB0eXBlOiAnbmV1dHJhbCcgfCAnaW5mbycgfCAncG9zaXRpdmUnIHwgJ2FsZXJ0JyB8ICduZWdhdGl2ZScgPVxuICAgICduZXV0cmFsJztcblxuICAvKipcbiAgICogVGhlIHNoYWRlIG9mIHRoZSB0YWdzIGNvbG9yLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHZhcmlhbnQ6ICdsaWdodCcgfCAnc3Ryb25nJyA9ICdsaWdodCc7XG5cbiAgLyoqXG4gICAqIFRoZSBoaWRkZW4gdGV4dCBmb3Igc2NyZWVuIHJlYWRlcnMuXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaGlkZGVuVGV4dCA9ICfDiXRpcXVldHRlJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICBnZXQgbmF0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmFkZEhpZGRlblRleHQoKTtcbiAgICB0aGlzLmFkZEljb25DbGFzcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRIaWRkZW5UZXh0KCkge1xuICAgIGNvbnN0IHNjcmVlblJlYWRlclNwYW4gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoU1BBTik7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eShcbiAgICAgIHNjcmVlblJlYWRlclNwYW4sXG4gICAgICBTUEFOX1RFWFRfUFJPUEVSVFksXG4gICAgICB0aGlzLmhpZGRlblRleHRcbiAgICApO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3Moc2NyZWVuUmVhZGVyU3BhbiwgU0NSRUVOX1JFQURFUl9DTEFTU19OQU1FKTtcbiAgICBjb25zdCBsYWJlbENoaWxkID0gQXJyYXkuZnJvbSh0aGlzLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4pLmZpbmQoXG4gICAgICBjID0+IGMubG9jYWxOYW1lID09PSBTUEFOXG4gICAgKTtcbiAgICB0aGlzLnJlbmRlcmVyLmluc2VydEJlZm9yZShcbiAgICAgIHRoaXMubmF0aXZlRWxlbWVudCxcbiAgICAgIHNjcmVlblJlYWRlclNwYW4sXG4gICAgICBsYWJlbENoaWxkXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkSWNvbkNsYXNzKCkge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gQXJyYXkuZnJvbSh0aGlzLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4pO1xuICAgIGlmIChjaGlsZHJlbi5zb21lKGMgPT4gYy5sb2NhbE5hbWUgPT09IEJBT19JQ09OKSkge1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLm5hdGl2ZUVsZW1lbnQsIEhBU19JQ09OKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cImJhby1pY29uXCI+PC9uZy1jb250ZW50PlxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
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 './lib/bao.module';
|
|
7
|
+
export * from './lib/button/index';
|
|
8
|
+
export * from './lib/icon/index';
|
|
9
|
+
export * from './lib/alert/index';
|
|
10
|
+
export * from './lib/breadcrumb/index';
|
|
11
|
+
export * from './lib/card/index';
|
|
12
|
+
export * from './lib/badge/index';
|
|
13
|
+
export * from './lib/tag/index';
|
|
14
|
+
export * from './lib/header-info/index';
|
|
15
|
+
export * from './lib/list/index';
|
|
16
|
+
export * from './lib/checkbox/index';
|
|
17
|
+
export * from './lib/radio/index';
|
|
18
|
+
export * from './lib/common-components/index';
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYmFvLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b24vaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaWNvbi9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hbGVydC9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9icmVhZGNydW1iL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NhcmQvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYmFkZ2UvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFnL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci1pbmZvL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpc3QvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hlY2tib3gvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmFkaW8vaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tbW9uLWNvbXBvbmVudHMvaW5kZXgnO1xuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlsbGVkZW1vbnRyZWFsLWFuZ3VsYXItdWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy92aWxsZWRlbW9udHJlYWwtYW5ndWxhci11aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|