@villedemontreal/angular-ui 14.2.0 → 14.3.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/esm2020/lib/alert/alert.component.mjs +12 -5
- package/esm2020/lib/alert/index.mjs +2 -2
- package/esm2020/lib/alert/module.mjs +2 -2
- package/esm2020/lib/avatar/avatar.component.mjs +2 -2
- package/esm2020/lib/avatar/index.mjs +2 -2
- package/esm2020/lib/avatar/module.mjs +2 -2
- package/esm2020/lib/badge/badge.component.mjs +2 -2
- package/esm2020/lib/badge/index.mjs +2 -2
- package/esm2020/lib/badge/module.mjs +2 -2
- package/esm2020/lib/bao.module.mjs +2 -2
- package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +2 -2
- package/esm2020/lib/breadcrumb/index.mjs +2 -2
- package/esm2020/lib/breadcrumb/module.mjs +2 -2
- package/esm2020/lib/button/button.component.mjs +2 -2
- package/esm2020/lib/button/index.mjs +2 -2
- package/esm2020/lib/button/module.mjs +2 -2
- package/esm2020/lib/card/card.component.mjs +2 -2
- package/esm2020/lib/card/index.mjs +2 -2
- package/esm2020/lib/card/module.mjs +2 -2
- package/esm2020/lib/checkbox/checkbox-group.component.mjs +2 -2
- package/esm2020/lib/checkbox/checkbox.component.mjs +1 -1
- package/esm2020/lib/checkbox/index.mjs +2 -2
- package/esm2020/lib/checkbox/module.mjs +2 -2
- package/esm2020/lib/common-components/error-text/errorText.component.mjs +2 -2
- package/esm2020/lib/common-components/guiding-text/guidingText.component.mjs +2 -2
- package/esm2020/lib/common-components/index.mjs +2 -2
- package/esm2020/lib/common-components/label-text/labelText.component.mjs +2 -2
- package/esm2020/lib/common-components/module.mjs +2 -2
- package/esm2020/lib/common-components/title-text/titleText.component.mjs +2 -2
- package/esm2020/lib/core/breakpoints.mjs +2 -2
- package/esm2020/lib/core/colors.mjs +1 -1
- package/esm2020/lib/core/index.mjs +2 -2
- package/esm2020/lib/dropdown-menu/dropdown-menu.component.mjs +73 -51
- package/esm2020/lib/dropdown-menu/index.mjs +2 -2
- package/esm2020/lib/dropdown-menu/module.mjs +2 -2
- package/esm2020/lib/file/file-input.component.mjs +2 -2
- package/esm2020/lib/file/file-intl.mjs +2 -2
- package/esm2020/lib/file/file-preview.component.mjs +24 -14
- package/esm2020/lib/file/index.mjs +2 -2
- package/esm2020/lib/file/module.mjs +2 -2
- package/esm2020/lib/header-info/header-info.component.mjs +2 -2
- package/esm2020/lib/header-info/index.mjs +2 -2
- package/esm2020/lib/header-info/module.mjs +2 -2
- package/esm2020/lib/hyperlink/hyperlink.component.mjs +2 -2
- package/esm2020/lib/hyperlink/index.mjs +2 -2
- package/esm2020/lib/hyperlink/module.mjs +2 -2
- package/esm2020/lib/icon/bao-icon-registry.mjs +7 -4
- package/esm2020/lib/icon/icon.component.mjs +7 -5
- package/esm2020/lib/icon/icons-dictionary.mjs +6 -3
- package/esm2020/lib/icon/index.mjs +2 -2
- package/esm2020/lib/icon/module.mjs +2 -2
- package/esm2020/lib/list/index.mjs +2 -2
- package/esm2020/lib/list/list.component.mjs +4 -4
- package/esm2020/lib/list/module.mjs +2 -2
- package/esm2020/lib/modal/index.mjs +2 -2
- package/esm2020/lib/modal/modal-config.mjs +2 -2
- package/esm2020/lib/modal/modal-container.mjs +1 -1
- package/esm2020/lib/modal/modal-directives.mjs +2 -2
- package/esm2020/lib/modal/modal-ref.mjs +1 -1
- package/esm2020/lib/modal/modal.mjs +2 -2
- package/esm2020/lib/modal/module.mjs +2 -2
- package/esm2020/lib/radio/index.mjs +2 -2
- package/esm2020/lib/radio/module.mjs +2 -2
- package/esm2020/lib/radio/radio-group.component.mjs +2 -2
- package/esm2020/lib/radio/radio.component.mjs +1 -1
- package/esm2020/lib/shared/enum/display-mode.mjs +1 -1
- package/esm2020/lib/shared/index.mjs +2 -2
- package/esm2020/lib/snack-bar/index.mjs +2 -2
- package/esm2020/lib/snack-bar/module.mjs +2 -2
- package/esm2020/lib/snack-bar/simple-snack-bar.component.mjs +2 -2
- package/esm2020/lib/snack-bar/snack-bar-animations.mjs +2 -2
- package/esm2020/lib/snack-bar/snack-bar-config.mjs +1 -1
- package/esm2020/lib/snack-bar/snack-bar-container.mjs +1 -1
- package/esm2020/lib/snack-bar/snack-bar-ref.mjs +1 -1
- package/esm2020/lib/snack-bar/snack-bar.mjs +1 -1
- package/esm2020/lib/summary/index.mjs +2 -2
- package/esm2020/lib/summary/list-summary.component.mjs +2 -2
- package/esm2020/lib/summary/module.mjs +2 -2
- package/esm2020/lib/summary/summary.component.mjs +2 -2
- package/esm2020/lib/system-header/index.mjs +2 -2
- package/esm2020/lib/system-header/module.mjs +2 -2
- package/esm2020/lib/system-header/system-header.component.mjs +1 -1
- package/esm2020/lib/tabs/index.mjs +2 -2
- package/esm2020/lib/tabs/module.mjs +2 -2
- package/esm2020/lib/tabs/tabs.component.mjs +2 -2
- package/esm2020/lib/tag/index.mjs +2 -2
- package/esm2020/lib/tag/module.mjs +2 -2
- package/esm2020/lib/tag/tag.component.mjs +2 -2
- package/esm2020/public-api.mjs +2 -2
- package/fesm2015/villedemontreal-angular-ui.mjs +196 -149
- package/fesm2015/villedemontreal-angular-ui.mjs.map +1 -1
- package/fesm2020/villedemontreal-angular-ui.mjs +196 -149
- package/fesm2020/villedemontreal-angular-ui.mjs.map +1 -1
- package/lib/alert/alert.component.d.ts +3 -1
- package/lib/dropdown-menu/dropdown-menu.component.d.ts +2 -11
- package/lib/file/file-preview.component.d.ts +8 -6
- package/lib/icon/icon.component.d.ts +1 -0
- package/lib/icon/icons-dictionary.d.ts +1 -0
- package/lib/list/list.component.d.ts +1 -1
- package/package.json +1 -1
|
@@ -48,7 +48,7 @@ function baoColorToHex(baoColor) {
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
/*
|
|
51
|
-
* Copyright (c)
|
|
51
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
52
52
|
* Licensed under the MIT license.
|
|
53
53
|
* See LICENSE file in the project root for full license information.
|
|
54
54
|
*/
|
|
@@ -169,11 +169,14 @@ const ICONS_DCT = {
|
|
|
169
169
|
'icon-x-circle': "<path fill-rule='evenodd' d='M10.586 12L7.757 9.172a1 1 0 011.415-1.415L12 10.586l2.828-2.829a1 1 0 011.415 1.415L13.414 12l2.829 2.828a1 1 0 01-1.415 1.415L12 13.414l-2.828 2.829a1 1 0 11-1.415-1.415L10.586 12zm10.956 5.477a1 1 0 01-1.734-.997A8.953 8.953 0 0021 12a9 9 0 10-9 9 8.953 8.953 0 004.484-1.195 1 1 0 01.998 1.733A10.953 10.953 0 0112 23C5.925 23 1 18.075 1 12S5.925 1 12 1s11 4.925 11 11c0 1.948-.508 3.824-1.458 5.477z'/>",
|
|
170
170
|
'icon-x': "<path fill-rule='evenodd' d='M12 13.414l-5.293 5.293a1 1 0 11-1.414-1.414L10.586 12 5.293 6.707a1 1 0 011.414-1.414l12 12a1 1 0 01-1.414 1.414L12 13.414zm5.293-8.121a1 1 0 011.414 1.414l-3 3a1 1 0 11-1.414-1.414l3-3z'/>",
|
|
171
171
|
'icon-spinner': "<path d='M24 12C24 14.3734 23.2962 16.6935 21.9776 18.6668C20.6591 20.6402 18.7849 22.1783 16.5922 23.0866C14.3995 23.9948 11.9867 24.2324 9.65892 23.7694C7.33114 23.3064 5.19295 22.1635 3.51472 20.4853C1.83649 18.8071 0.693599 16.6689 0.230577 14.3411C-0.232446 12.0133 0.00519403 9.60051 0.913446 7.4078C1.8217 5.21509 3.35977 3.34094 5.33316 2.02236C7.30655 0.703788 9.62662 -2.83022e-08 12 0L12 3C10.22 3 8.47991 3.52784 6.99987 4.51677C5.51983 5.50571 4.36627 6.91131 3.68508 8.55585C3.0039 10.2004 2.82567 12.01 3.17293 13.7558C3.5202 15.5016 4.37737 17.1053 5.63604 18.364C6.89471 19.6226 8.49836 20.4798 10.2442 20.8271C11.99 21.1743 13.7996 20.9961 15.4442 20.3149C17.0887 19.6337 18.4943 18.4802 19.4832 17.0001C20.4722 15.5201 21 13.78 21 12H24Z'/>",
|
|
172
|
-
'icon-emergency': "<path fill-rule='evenodd' clip-rule='evenodd' d='M11.067 7.87a.957.957 0 011.914 0v4.786a.957.957 0 11-1.914 0V7.87zM12.024 15.527a.958.958 0 10.001 1.916.958.958 0 00-.001-1.916z M9.878 1.879a3 3 0 014.243 0l8 7.999a3 3 0 010 4.242l-7.999 8.001a3 3 0 01-4.242 0l-8.001-7.999a3 3 0 010-4.242l7.999-8.001zm2.829 1.414a1 1 0 00-1.415 0l-8 8a1 1 0 00.001 1.415l8 8a1 1 0 001.415 0l8-8.002a1 1 0 000-1.414l-8.001-8z'/>"
|
|
172
|
+
'icon-emergency': "<path fill-rule='evenodd' clip-rule='evenodd' d='M11.067 7.87a.957.957 0 011.914 0v4.786a.957.957 0 11-1.914 0V7.87zM12.024 15.527a.958.958 0 10.001 1.916.958.958 0 00-.001-1.916z M9.878 1.879a3 3 0 014.243 0l8 7.999a3 3 0 010 4.242l-7.999 8.001a3 3 0 01-4.242 0l-8.001-7.999a3 3 0 010-4.242l7.999-8.001zm2.829 1.414a1 1 0 00-1.415 0l-8 8a1 1 0 00.001 1.415l8 8a1 1 0 001.415 0l8-8.002a1 1 0 000-1.414l-8.001-8z'/>",
|
|
173
|
+
'icon-error-octagon': "<path fill-rule='evenodd' clip-rule='evenodd' d='M34.9 27C35.3971 27 35.8 26.597 35.8 26.1C35.8 25.6029 35.3971 25.2 34.9 25.2C34.4029 25.2 34 25.6029 34 26.1C34 26.597 34.4029 27 34.9 27Z' /><path fill-rule='evenodd' clip-rule='evenodd' d='M13.493 13.4928C13.8835 13.1023 14.5167 13.1023 14.9072 13.4928L26.5072 25.0928C26.8977 25.4834 26.8977 26.1165 26.5072 26.5071C26.1167 26.8976 25.4835 26.8976 25.093 26.5071L13.493 14.9071C13.1024 14.5165 13.1024 13.8834 13.493 13.4928Z' /><path fill-rule='evenodd' clip-rule='evenodd' d='M26.5072 13.4928C26.8977 13.8834 26.8977 14.5165 26.5072 14.9071L14.8072 26.6071C14.4167 26.9976 13.7835 26.9976 13.393 26.6071C13.0025 26.2165 13.0025 25.5834 13.393 25.1928L25.093 13.4928C25.4835 13.1023 26.1167 13.1023 26.5072 13.4928Z' /><path fill-rule='evenodd' clip-rule='evenodd' d='M12.7929 3.59294C12.9805 3.40541 13.2348 3.30005 13.5 3.30005H26.5C26.7653 3.30005 27.0196 3.40541 27.2072 3.59294L36.4072 12.7929C36.5947 12.9805 36.7001 13.2348 36.7001 13.5V23.5C36.7001 24.0523 36.2523 24.5 35.7001 24.5C35.1478 24.5 34.7001 24.0523 34.7001 23.5V13.9143L26.0858 5.30005H13.9143L5.30005 13.9143V26.0858L13.9143 34.7001H26.0858L32.8929 27.8929C33.2835 27.5024 33.9166 27.5024 34.3072 27.8929C34.6977 28.2835 34.6977 28.9166 34.3072 29.3072L27.2072 36.4072C27.0196 36.5947 26.7653 36.7001 26.5 36.7001H13.5C13.2348 36.7001 12.9805 36.5947 12.7929 36.4072L3.59294 27.2072C3.40541 27.0196 3.30005 26.7653 3.30005 26.5V13.5C3.30005 13.2348 3.40541 12.9805 3.59294 12.7929L12.7929 3.59294Z'/>"
|
|
173
174
|
};
|
|
175
|
+
/* 40x40 illlustrative icons - https://zeroheight.com/575tugn0n/v/0/p/39c76f-icones-illustratives/t/page-39c76f-32902091-13 */
|
|
176
|
+
const ILLUSTRATIVE_ICONS = ['icon-error-octagon'];
|
|
174
177
|
|
|
175
178
|
/*
|
|
176
|
-
* Copyright (c)
|
|
179
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
177
180
|
* Licensed under the MIT license.
|
|
178
181
|
* See LICENSE file in the project root for full license information.
|
|
179
182
|
*/
|
|
@@ -192,7 +195,10 @@ class BaoIconDictionary {
|
|
|
192
195
|
}
|
|
193
196
|
getRawIconStringFromIconName(iconName) {
|
|
194
197
|
const iconSvgPath = ICONS_DCT[iconName] || '';
|
|
195
|
-
|
|
198
|
+
const iconSvgPrefix = ILLUSTRATIVE_ICONS.includes(iconName)
|
|
199
|
+
? SVG_PREFIX.replace('0 0 24 24', '0 0 40 40')
|
|
200
|
+
: SVG_PREFIX;
|
|
201
|
+
return `${iconSvgPrefix}${iconSvgPath}${SVG_SUFFIX}`;
|
|
196
202
|
}
|
|
197
203
|
svgElementFromString(svgString) {
|
|
198
204
|
const div = this.document.createElement('DIV');
|
|
@@ -214,7 +220,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
214
220
|
} });
|
|
215
221
|
|
|
216
222
|
/*
|
|
217
|
-
* Copyright (c)
|
|
223
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
218
224
|
* Licensed under the MIT license.
|
|
219
225
|
* See LICENSE file in the project root for full license information.
|
|
220
226
|
*/
|
|
@@ -315,6 +321,7 @@ class BaoIconComponent {
|
|
|
315
321
|
let svg = this.iconRegistry.getNamedSvgIcon(iconName);
|
|
316
322
|
if (title) {
|
|
317
323
|
svg = this.addTitleToSVG(svg, title);
|
|
324
|
+
this.removeTitleAttributeFromHost();
|
|
318
325
|
}
|
|
319
326
|
if (!title) {
|
|
320
327
|
svg.setAttribute('aria-hidden', 'true');
|
|
@@ -331,6 +338,9 @@ class BaoIconComponent {
|
|
|
331
338
|
svg.setAttribute('aria-labelledby', this._titleId);
|
|
332
339
|
return svg;
|
|
333
340
|
}
|
|
341
|
+
removeTitleAttributeFromHost() {
|
|
342
|
+
this.renderer.removeAttribute(this.elementRef.nativeElement, 'title');
|
|
343
|
+
}
|
|
334
344
|
generateUniqueTitleId() {
|
|
335
345
|
return this.title
|
|
336
346
|
? `${this.title
|
|
@@ -340,12 +350,10 @@ class BaoIconComponent {
|
|
|
340
350
|
}
|
|
341
351
|
}
|
|
342
352
|
BaoIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoIconComponent, deps: [{ token: i0.ElementRef }, { token: BaoIconDictionary }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
343
|
-
BaoIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoIconComponent, selector: "bao-icon", inputs: { color: "color", size: "size", svgIcon: "svgIcon", title: "title" }, host: {
|
|
353
|
+
BaoIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoIconComponent, selector: "bao-icon", inputs: { color: "color", size: "size", svgIcon: "svgIcon", title: "title" }, host: { 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\"", "style.color": "hexColor" } }, exportAs: ["baoIcon"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: ["bao-icon{background-repeat:no-repeat;display:inline-block;fill:currentColor;line-height:normal}bao-icon svg{height:100%;width:100%}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:.5rem}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 });
|
|
344
354
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoIconComponent, decorators: [{
|
|
345
355
|
type: Component,
|
|
346
356
|
args: [{ template: '<ng-content></ng-content>', selector: 'bao-icon', exportAs: 'baoIcon', host: {
|
|
347
|
-
role: 'img',
|
|
348
|
-
// '[class]': "'bao-icon notranslate ' + svgIcon",
|
|
349
357
|
'[class.bao-icon]': 'true',
|
|
350
358
|
'[class.notranslate]': 'true',
|
|
351
359
|
'[class.bao-icon-medium]': 'size === "medium"',
|
|
@@ -366,7 +374,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
366
374
|
}] } });
|
|
367
375
|
|
|
368
376
|
/*
|
|
369
|
-
* Copyright (c)
|
|
377
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
370
378
|
* Licensed under the MIT license.
|
|
371
379
|
* See LICENSE file in the project root for full license information.
|
|
372
380
|
*/
|
|
@@ -462,7 +470,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
462
470
|
}] } });
|
|
463
471
|
|
|
464
472
|
/*
|
|
465
|
-
* Copyright (c)
|
|
473
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
466
474
|
* Licensed under the MIT license.
|
|
467
475
|
* See LICENSE file in the project root for full license information.
|
|
468
476
|
*/
|
|
@@ -565,12 +573,15 @@ class BaoAlertComponent {
|
|
|
565
573
|
*/
|
|
566
574
|
this.type = 'info';
|
|
567
575
|
this.dismissible = false;
|
|
576
|
+
this.dismissibleButtonAriaLabel = 'Cacher le message';
|
|
568
577
|
this.dismiss = new EventEmitter();
|
|
569
578
|
}
|
|
570
579
|
ngOnChanges(changes) {
|
|
571
580
|
if (changes['type']) {
|
|
572
581
|
this.iconType = this.alertTypeIcon(changes['type'].currentValue);
|
|
573
|
-
this.iconTitle =
|
|
582
|
+
this.iconTitle =
|
|
583
|
+
this.alertTypeTitle ||
|
|
584
|
+
this.alertTitleIcon(changes['type'].currentValue);
|
|
574
585
|
}
|
|
575
586
|
}
|
|
576
587
|
alertTypeIcon(value) {
|
|
@@ -598,7 +609,7 @@ class BaoAlertComponent {
|
|
|
598
609
|
}
|
|
599
610
|
}
|
|
600
611
|
BaoAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
601
|
-
BaoAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoAlertComponent, selector: "bao-alert", inputs: { type: "type", dismissible: "dismissible" }, outputs: { dismiss: "dismiss" }, host: { attributes: { "role": "alert" }, properties: { "class.bao-alert-success": "type === \"success\"", "class.bao-alert-danger": "type === \"danger\"", "class.bao-alert-warning": "type === \"warning\"", "class.bao-alert-info": "type === \"info\"", "class.bao-alert-emergency": "type === \"emergency\"" }, classAttribute: "bao-alert bao-alert-with-icon bao-alert-dismissible fade show" }, usesOnChanges: true, ngImport: i0, template: "<bao-icon [svgIcon]=\"iconType\" [title]=\"iconTitle\"></bao-icon>\n<div class=\"bao-alert-content-container\">\n <ng-content></ng-content>\n</div>\n<button\n bao-button\n *ngIf=\"dismissible\"\n type=\"utility\"\n level=\"tertiary\"\n data-dismiss=\"alert\"\n role=\"button\"\n aria-label=\"
|
|
612
|
+
BaoAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoAlertComponent, selector: "bao-alert", inputs: { type: "type", dismissible: "dismissible", alertTypeTitle: "alertTypeTitle", dismissibleButtonAriaLabel: "dismissibleButtonAriaLabel" }, outputs: { dismiss: "dismiss" }, host: { attributes: { "role": "alert" }, properties: { "class.bao-alert-success": "type === \"success\"", "class.bao-alert-danger": "type === \"danger\"", "class.bao-alert-warning": "type === \"warning\"", "class.bao-alert-info": "type === \"info\"", "class.bao-alert-emergency": "type === \"emergency\"" }, classAttribute: "bao-alert bao-alert-with-icon bao-alert-dismissible fade show" }, usesOnChanges: true, ngImport: i0, template: "<bao-icon [svgIcon]=\"iconType\" [title]=\"iconTitle\"></bao-icon>\n<div class=\"bao-alert-content-container\">\n <ng-content></ng-content>\n</div>\n<button\n bao-button\n *ngIf=\"dismissible\"\n type=\"utility\"\n level=\"tertiary\"\n data-dismiss=\"alert\"\n role=\"button\"\n [attr.aria-label]=\"dismissibleButtonAriaLabel\"\n (click)=\"onDismissClicked()\"\n>\n <bao-icon svgIcon=\"icon-x\"></bao-icon>\n</button>\n", styles: [".bao-alert{font-weight:400;font-size:1rem;line-height:1.5rem;display:flex;padding:1rem;margin-bottom:1rem;border-radius:0rem}.bao-alert .bao-alert-content-container{margin:0 .5rem 0 1rem;display:flex;flex-direction:column}.bao-alert .bao-alert-title{font-weight:700;padding-bottom:.5rem}.bao-alert a{font-weight:700}.bao-alert.bao-alert-dismissible .bao-button[data-dismiss=alert]{background-color:#fff0;border-radius:0rem;height:2.5rem;width:2.5rem;margin-left:auto;margin-right:-.5rem;margin-top:-.5rem}.bao-alert.bao-alert-dismissible .bao-button[data-dismiss=alert]:hover,.bao-alert.bao-alert-dismissible .bao-button[data-dismiss=alert]:focus{opacity:.75}.bao-alert .bao-alert-actions .bao-button{margin:1rem 1rem 0 0}.bao-alert-info{background-color:#e6f5f9;border-left:.125rem solid #0079c4;border-top:none;border-right:none;border-bottom:none;color:#004b7b}.bao-alert-info .bao-alert-title,.bao-alert-info a{color:#004b7b}.bao-alert-info a:hover,.bao-alert-info a:focus{background-color:#f2fafc}.bao-alert-info .bao-icon svg{fill:#004b7b;width:auto}.bao-alert-info .bao-button.bao-button-primary{background-color:#004b7b;border-color:#004b7b}.bao-alert-info .bao-button.bao-button-primary:hover,.bao-alert-info .bao-button.bao-button-primary:focus{background-color:#002c48;border-color:#002c48}.bao-alert-info .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #004b7b4d}.bao-alert-info .bao-button.bao-button-secondary{background-color:#e6f5f9;color:#004b7b}.bao-alert-info .bao-button.bao-button-secondary:hover,.bao-alert-info .bao-button.bao-button-secondary:focus{background-color:#e6f5f9;border-color:#004b7b}.bao-alert-info .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #004b7b4d}.bao-alert-info .bao-button.bao-button-tertiary{background-color:#e6f5f9;color:#004b7b}.bao-alert-info .bao-button.bao-button-tertiary:hover,.bao-alert-info .bao-button.bao-button-tertiary:focus{background-color:#e6f5f9}.bao-alert-info .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #004b7b4d}.bao-alert-success{background-color:#e7f6f0;border-left:.125rem solid #0da566;border-top:none;border-right:none;border-bottom:none;color:#025d29}.bao-alert-success .bao-alert-title,.bao-alert-success a{color:#025d29}.bao-alert-success a:hover,.bao-alert-success a:focus{background-color:#f2faf7}.bao-alert-success .bao-icon svg{fill:#025d29;width:auto}.bao-alert-success .bao-button.bao-button-primary{background-color:#025d29;border-color:#025d29}.bao-alert-success .bao-button.bao-button-primary:hover,.bao-alert-success .bao-button.bao-button-primary:focus{background-color:#012b13;border-color:#012b13}.bao-alert-success .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #025d294d}.bao-alert-success .bao-button.bao-button-secondary{background-color:#e7f6f0;color:#025d29}.bao-alert-success .bao-button.bao-button-secondary:hover,.bao-alert-success .bao-button.bao-button-secondary:focus{background-color:#e7f6f0;border-color:#025d29}.bao-alert-success .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #025d294d}.bao-alert-success .bao-button.bao-button-tertiary{background-color:#e7f6f0;color:#025d29}.bao-alert-success .bao-button.bao-button-tertiary:hover,.bao-alert-success .bao-button.bao-button-tertiary:focus{background-color:#e7f6f0}.bao-alert-success .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #025d294d}.bao-alert-warning{background-color:#fefae6;border-left:.125rem solid #ffb833;border-top:none;border-right:none;border-bottom:none;color:#6c4600}.bao-alert-warning .bao-alert-title,.bao-alert-warning a{color:#6c4600}.bao-alert-warning a:hover,.bao-alert-warning a:focus{background-color:#fffdf5}.bao-alert-warning .bao-icon svg{fill:#6c4600;width:auto}.bao-alert-warning .bao-button.bao-button-primary{background-color:#6c4600;border-color:#6c4600}.bao-alert-warning .bao-button.bao-button-primary:hover,.bao-alert-warning .bao-button.bao-button-primary:focus{background-color:#392500;border-color:#392500}.bao-alert-warning .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #6c46004d}.bao-alert-warning .bao-button.bao-button-secondary{background-color:#fefae6;color:#6c4600}.bao-alert-warning .bao-button.bao-button-secondary:hover,.bao-alert-warning .bao-button.bao-button-secondary:focus{background-color:#fefae6;border-color:#6c4600}.bao-alert-warning .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #6c46004d}.bao-alert-warning .bao-button.bao-button-tertiary{background-color:#fefae6;color:#6c4600}.bao-alert-warning .bao-button.bao-button-tertiary:hover,.bao-alert-warning .bao-button.bao-button-tertiary:focus{background-color:#fefae6}.bao-alert-warning .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #6c46004d}.bao-alert-danger{background-color:#ffebe6;border-left:.125rem solid #d3310a;border-top:none;border-right:none;border-bottom:none;color:#851a00}.bao-alert-danger .bao-alert-title,.bao-alert-danger a{color:#851a00}.bao-alert-danger a:hover,.bao-alert-danger a:focus{background-color:#fff7f5}.bao-alert-danger .bao-icon svg{fill:#851a00;width:auto}.bao-alert-danger .bao-button.bao-button-primary{background-color:#851a00;border-color:#851a00}.bao-alert-danger .bao-button.bao-button-primary:hover,.bao-alert-danger .bao-button.bao-button-primary:focus{background-color:#521000;border-color:#521000}.bao-alert-danger .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-danger .bao-button.bao-button-secondary{background-color:#ffebe6;color:#851a00}.bao-alert-danger .bao-button.bao-button-secondary:hover,.bao-alert-danger .bao-button.bao-button-secondary:focus{background-color:#ffebe6;border-color:#851a00}.bao-alert-danger .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-danger .bao-button.bao-button-tertiary{background-color:#ffebe6;color:#851a00}.bao-alert-danger .bao-button.bao-button-tertiary:hover,.bao-alert-danger .bao-button.bao-button-tertiary:focus{background-color:#ffebe6}.bao-alert-danger .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-emergency{background-color:#ffebe6;border-left:.125rem solid #d3310a;border-top:none;border-right:none;border-bottom:none;color:#851a00}.bao-alert-emergency .bao-alert-title,.bao-alert-emergency a{color:#851a00}.bao-alert-emergency a:hover,.bao-alert-emergency a:focus{background-color:#fff7f5}.bao-alert-emergency .bao-icon svg{fill:#851a00;width:auto}.bao-alert-emergency .bao-button.bao-button-primary{background-color:#851a00;border-color:#851a00}.bao-alert-emergency .bao-button.bao-button-primary:hover,.bao-alert-emergency .bao-button.bao-button-primary:focus{background-color:#521000;border-color:#521000}.bao-alert-emergency .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-emergency .bao-button.bao-button-secondary{background-color:#ffebe6;color:#851a00}.bao-alert-emergency .bao-button.bao-button-secondary:hover,.bao-alert-emergency .bao-button.bao-button-secondary:focus{background-color:#ffebe6;border-color:#851a00}.bao-alert-emergency .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-emergency .bao-button.bao-button-tertiary{background-color:#ffebe6;color:#851a00}.bao-alert-emergency .bao-button.bao-button-tertiary:hover,.bao-alert-emergency .bao-button.bao-button-tertiary:focus{background-color:#ffebe6}.bao-alert-emergency .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #851a004d}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: BaoIconComponent, selector: "bao-icon", inputs: ["color", "size", "svgIcon", "title"], exportAs: ["baoIcon"] }, { kind: "component", type: BaoButtonComponent, selector: "button[bao-button]", inputs: ["displayType", "level", "size", "loading", "reversed", "loadingSpinnerAriaLabel", "fullWidth"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
602
613
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoAlertComponent, decorators: [{
|
|
603
614
|
type: Component,
|
|
604
615
|
args: [{ selector: 'bao-alert', encapsulation: ViewEncapsulation.None, host: {
|
|
@@ -609,17 +620,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
609
620
|
'[class.bao-alert-info]': 'type === "info"',
|
|
610
621
|
'[class.bao-alert-emergency]': 'type === "emergency"',
|
|
611
622
|
role: 'alert'
|
|
612
|
-
}, template: "<bao-icon [svgIcon]=\"iconType\" [title]=\"iconTitle\"></bao-icon>\n<div class=\"bao-alert-content-container\">\n <ng-content></ng-content>\n</div>\n<button\n bao-button\n *ngIf=\"dismissible\"\n type=\"utility\"\n level=\"tertiary\"\n data-dismiss=\"alert\"\n role=\"button\"\n aria-label=\"
|
|
623
|
+
}, template: "<bao-icon [svgIcon]=\"iconType\" [title]=\"iconTitle\"></bao-icon>\n<div class=\"bao-alert-content-container\">\n <ng-content></ng-content>\n</div>\n<button\n bao-button\n *ngIf=\"dismissible\"\n type=\"utility\"\n level=\"tertiary\"\n data-dismiss=\"alert\"\n role=\"button\"\n [attr.aria-label]=\"dismissibleButtonAriaLabel\"\n (click)=\"onDismissClicked()\"\n>\n <bao-icon svgIcon=\"icon-x\"></bao-icon>\n</button>\n", styles: [".bao-alert{font-weight:400;font-size:1rem;line-height:1.5rem;display:flex;padding:1rem;margin-bottom:1rem;border-radius:0rem}.bao-alert .bao-alert-content-container{margin:0 .5rem 0 1rem;display:flex;flex-direction:column}.bao-alert .bao-alert-title{font-weight:700;padding-bottom:.5rem}.bao-alert a{font-weight:700}.bao-alert.bao-alert-dismissible .bao-button[data-dismiss=alert]{background-color:#fff0;border-radius:0rem;height:2.5rem;width:2.5rem;margin-left:auto;margin-right:-.5rem;margin-top:-.5rem}.bao-alert.bao-alert-dismissible .bao-button[data-dismiss=alert]:hover,.bao-alert.bao-alert-dismissible .bao-button[data-dismiss=alert]:focus{opacity:.75}.bao-alert .bao-alert-actions .bao-button{margin:1rem 1rem 0 0}.bao-alert-info{background-color:#e6f5f9;border-left:.125rem solid #0079c4;border-top:none;border-right:none;border-bottom:none;color:#004b7b}.bao-alert-info .bao-alert-title,.bao-alert-info a{color:#004b7b}.bao-alert-info a:hover,.bao-alert-info a:focus{background-color:#f2fafc}.bao-alert-info .bao-icon svg{fill:#004b7b;width:auto}.bao-alert-info .bao-button.bao-button-primary{background-color:#004b7b;border-color:#004b7b}.bao-alert-info .bao-button.bao-button-primary:hover,.bao-alert-info .bao-button.bao-button-primary:focus{background-color:#002c48;border-color:#002c48}.bao-alert-info .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #004b7b4d}.bao-alert-info .bao-button.bao-button-secondary{background-color:#e6f5f9;color:#004b7b}.bao-alert-info .bao-button.bao-button-secondary:hover,.bao-alert-info .bao-button.bao-button-secondary:focus{background-color:#e6f5f9;border-color:#004b7b}.bao-alert-info .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #004b7b4d}.bao-alert-info .bao-button.bao-button-tertiary{background-color:#e6f5f9;color:#004b7b}.bao-alert-info .bao-button.bao-button-tertiary:hover,.bao-alert-info .bao-button.bao-button-tertiary:focus{background-color:#e6f5f9}.bao-alert-info .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #004b7b4d}.bao-alert-success{background-color:#e7f6f0;border-left:.125rem solid #0da566;border-top:none;border-right:none;border-bottom:none;color:#025d29}.bao-alert-success .bao-alert-title,.bao-alert-success a{color:#025d29}.bao-alert-success a:hover,.bao-alert-success a:focus{background-color:#f2faf7}.bao-alert-success .bao-icon svg{fill:#025d29;width:auto}.bao-alert-success .bao-button.bao-button-primary{background-color:#025d29;border-color:#025d29}.bao-alert-success .bao-button.bao-button-primary:hover,.bao-alert-success .bao-button.bao-button-primary:focus{background-color:#012b13;border-color:#012b13}.bao-alert-success .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #025d294d}.bao-alert-success .bao-button.bao-button-secondary{background-color:#e7f6f0;color:#025d29}.bao-alert-success .bao-button.bao-button-secondary:hover,.bao-alert-success .bao-button.bao-button-secondary:focus{background-color:#e7f6f0;border-color:#025d29}.bao-alert-success .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #025d294d}.bao-alert-success .bao-button.bao-button-tertiary{background-color:#e7f6f0;color:#025d29}.bao-alert-success .bao-button.bao-button-tertiary:hover,.bao-alert-success .bao-button.bao-button-tertiary:focus{background-color:#e7f6f0}.bao-alert-success .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #025d294d}.bao-alert-warning{background-color:#fefae6;border-left:.125rem solid #ffb833;border-top:none;border-right:none;border-bottom:none;color:#6c4600}.bao-alert-warning .bao-alert-title,.bao-alert-warning a{color:#6c4600}.bao-alert-warning a:hover,.bao-alert-warning a:focus{background-color:#fffdf5}.bao-alert-warning .bao-icon svg{fill:#6c4600;width:auto}.bao-alert-warning .bao-button.bao-button-primary{background-color:#6c4600;border-color:#6c4600}.bao-alert-warning .bao-button.bao-button-primary:hover,.bao-alert-warning .bao-button.bao-button-primary:focus{background-color:#392500;border-color:#392500}.bao-alert-warning .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #6c46004d}.bao-alert-warning .bao-button.bao-button-secondary{background-color:#fefae6;color:#6c4600}.bao-alert-warning .bao-button.bao-button-secondary:hover,.bao-alert-warning .bao-button.bao-button-secondary:focus{background-color:#fefae6;border-color:#6c4600}.bao-alert-warning .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #6c46004d}.bao-alert-warning .bao-button.bao-button-tertiary{background-color:#fefae6;color:#6c4600}.bao-alert-warning .bao-button.bao-button-tertiary:hover,.bao-alert-warning .bao-button.bao-button-tertiary:focus{background-color:#fefae6}.bao-alert-warning .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #6c46004d}.bao-alert-danger{background-color:#ffebe6;border-left:.125rem solid #d3310a;border-top:none;border-right:none;border-bottom:none;color:#851a00}.bao-alert-danger .bao-alert-title,.bao-alert-danger a{color:#851a00}.bao-alert-danger a:hover,.bao-alert-danger a:focus{background-color:#fff7f5}.bao-alert-danger .bao-icon svg{fill:#851a00;width:auto}.bao-alert-danger .bao-button.bao-button-primary{background-color:#851a00;border-color:#851a00}.bao-alert-danger .bao-button.bao-button-primary:hover,.bao-alert-danger .bao-button.bao-button-primary:focus{background-color:#521000;border-color:#521000}.bao-alert-danger .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-danger .bao-button.bao-button-secondary{background-color:#ffebe6;color:#851a00}.bao-alert-danger .bao-button.bao-button-secondary:hover,.bao-alert-danger .bao-button.bao-button-secondary:focus{background-color:#ffebe6;border-color:#851a00}.bao-alert-danger .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-danger .bao-button.bao-button-tertiary{background-color:#ffebe6;color:#851a00}.bao-alert-danger .bao-button.bao-button-tertiary:hover,.bao-alert-danger .bao-button.bao-button-tertiary:focus{background-color:#ffebe6}.bao-alert-danger .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-emergency{background-color:#ffebe6;border-left:.125rem solid #d3310a;border-top:none;border-right:none;border-bottom:none;color:#851a00}.bao-alert-emergency .bao-alert-title,.bao-alert-emergency a{color:#851a00}.bao-alert-emergency a:hover,.bao-alert-emergency a:focus{background-color:#fff7f5}.bao-alert-emergency .bao-icon svg{fill:#851a00;width:auto}.bao-alert-emergency .bao-button.bao-button-primary{background-color:#851a00;border-color:#851a00}.bao-alert-emergency .bao-button.bao-button-primary:hover,.bao-alert-emergency .bao-button.bao-button-primary:focus{background-color:#521000;border-color:#521000}.bao-alert-emergency .bao-button.bao-button-primary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-emergency .bao-button.bao-button-secondary{background-color:#ffebe6;color:#851a00}.bao-alert-emergency .bao-button.bao-button-secondary:hover,.bao-alert-emergency .bao-button.bao-button-secondary:focus{background-color:#ffebe6;border-color:#851a00}.bao-alert-emergency .bao-button.bao-button-secondary:focus{box-shadow:0 0 0 .1875rem #851a004d}.bao-alert-emergency .bao-button.bao-button-tertiary{background-color:#ffebe6;color:#851a00}.bao-alert-emergency .bao-button.bao-button-tertiary:hover,.bao-alert-emergency .bao-button.bao-button-tertiary:focus{background-color:#ffebe6}.bao-alert-emergency .bao-button.bao-button-tertiary:focus{box-shadow:0 0 0 .1875rem #851a004d}\n"] }]
|
|
613
624
|
}], propDecorators: { type: [{
|
|
614
625
|
type: Input
|
|
615
626
|
}], dismissible: [{
|
|
616
627
|
type: Input
|
|
628
|
+
}], alertTypeTitle: [{
|
|
629
|
+
type: Input
|
|
630
|
+
}], dismissibleButtonAriaLabel: [{
|
|
631
|
+
type: Input
|
|
617
632
|
}], dismiss: [{
|
|
618
633
|
type: Output
|
|
619
634
|
}] } });
|
|
620
635
|
|
|
621
636
|
/*
|
|
622
|
-
* Copyright (c)
|
|
637
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
623
638
|
* Licensed under the MIT license.
|
|
624
639
|
* See LICENSE file in the project root for full license information.
|
|
625
640
|
*/
|
|
@@ -639,7 +654,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
639
654
|
}] });
|
|
640
655
|
|
|
641
656
|
/*
|
|
642
|
-
* Copyright (c)
|
|
657
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
643
658
|
* Licensed under the MIT license.
|
|
644
659
|
* See LICENSE file in the project root for full license information.
|
|
645
660
|
*/
|
|
@@ -659,7 +674,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
659
674
|
}] });
|
|
660
675
|
|
|
661
676
|
/*
|
|
662
|
-
* Copyright (c)
|
|
677
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
663
678
|
* Licensed under the MIT license.
|
|
664
679
|
* See LICENSE file in the project root for full license information.
|
|
665
680
|
*/
|
|
@@ -694,13 +709,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
694
709
|
}] });
|
|
695
710
|
|
|
696
711
|
/*
|
|
697
|
-
* Copyright (c)
|
|
712
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
698
713
|
* Licensed under the MIT license.
|
|
699
714
|
* See LICENSE file in the project root for full license information.
|
|
700
715
|
*/
|
|
701
716
|
|
|
702
717
|
/*
|
|
703
|
-
* Copyright (c)
|
|
718
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
704
719
|
* Licensed under the MIT license.
|
|
705
720
|
* See LICENSE file in the project root for full license information.
|
|
706
721
|
*/
|
|
@@ -733,7 +748,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
733
748
|
}] } });
|
|
734
749
|
|
|
735
750
|
/*
|
|
736
|
-
* Copyright (c)
|
|
751
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
737
752
|
* Licensed under the MIT license.
|
|
738
753
|
* See LICENSE file in the project root for full license information.
|
|
739
754
|
*/
|
|
@@ -753,19 +768,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
753
768
|
}] });
|
|
754
769
|
|
|
755
770
|
/*
|
|
756
|
-
* Copyright (c)
|
|
771
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
757
772
|
* Licensed under the MIT license.
|
|
758
773
|
* See LICENSE file in the project root for full license information.
|
|
759
774
|
*/
|
|
760
775
|
|
|
761
776
|
/*
|
|
762
|
-
* Copyright (c)
|
|
777
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
763
778
|
* Licensed under the MIT license.
|
|
764
779
|
* See LICENSE file in the project root for full license information.
|
|
765
780
|
*/
|
|
766
781
|
|
|
767
782
|
/*
|
|
768
|
-
* Copyright (c)
|
|
783
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
769
784
|
* Licensed under the MIT license.
|
|
770
785
|
* See LICENSE file in the project root for full license information.
|
|
771
786
|
*/
|
|
@@ -857,7 +872,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
857
872
|
}] });
|
|
858
873
|
|
|
859
874
|
/*
|
|
860
|
-
* Copyright (c)
|
|
875
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
861
876
|
* Licensed under the MIT license.
|
|
862
877
|
* See LICENSE file in the project root for full license information.
|
|
863
878
|
*/
|
|
@@ -891,13 +906,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
891
906
|
}] });
|
|
892
907
|
|
|
893
908
|
/*
|
|
894
|
-
* Copyright (c)
|
|
909
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
895
910
|
* Licensed under the MIT license.
|
|
896
911
|
* See LICENSE file in the project root for full license information.
|
|
897
912
|
*/
|
|
898
913
|
|
|
899
914
|
/*
|
|
900
|
-
* Copyright (c)
|
|
915
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
901
916
|
* Licensed under the MIT license.
|
|
902
917
|
* See LICENSE file in the project root for full license information.
|
|
903
918
|
*/
|
|
@@ -911,7 +926,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
911
926
|
}] });
|
|
912
927
|
|
|
913
928
|
/*
|
|
914
|
-
* Copyright (c)
|
|
929
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
915
930
|
* Licensed under the MIT license.
|
|
916
931
|
* See LICENSE file in the project root for full license information.
|
|
917
932
|
*/
|
|
@@ -925,7 +940,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
925
940
|
}] });
|
|
926
941
|
|
|
927
942
|
/*
|
|
928
|
-
* Copyright (c)
|
|
943
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
929
944
|
* Licensed under the MIT license.
|
|
930
945
|
* See LICENSE file in the project root for full license information.
|
|
931
946
|
*/
|
|
@@ -944,7 +959,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
944
959
|
}] } });
|
|
945
960
|
|
|
946
961
|
/*
|
|
947
|
-
* Copyright (c)
|
|
962
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
948
963
|
* Licensed under the MIT license.
|
|
949
964
|
* See LICENSE file in the project root for full license information.
|
|
950
965
|
*/
|
|
@@ -958,7 +973,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
958
973
|
}] });
|
|
959
974
|
|
|
960
975
|
/*
|
|
961
|
-
* Copyright (c)
|
|
976
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
962
977
|
* Licensed under the MIT license.
|
|
963
978
|
* See LICENSE file in the project root for full license information.
|
|
964
979
|
*/
|
|
@@ -989,7 +1004,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
989
1004
|
}] });
|
|
990
1005
|
|
|
991
1006
|
/*
|
|
992
|
-
* Copyright (c)
|
|
1007
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
993
1008
|
* Licensed under the MIT license.
|
|
994
1009
|
* See LICENSE file in the project root for full license information.
|
|
995
1010
|
*/
|
|
@@ -1344,7 +1359,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
1344
1359
|
}] });
|
|
1345
1360
|
|
|
1346
1361
|
/*
|
|
1347
|
-
* Copyright (c)
|
|
1362
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1348
1363
|
* Licensed under the MIT license.
|
|
1349
1364
|
* See LICENSE file in the project root for full license information.
|
|
1350
1365
|
*/
|
|
@@ -1372,19 +1387,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
1372
1387
|
}] });
|
|
1373
1388
|
|
|
1374
1389
|
/*
|
|
1375
|
-
* Copyright (c)
|
|
1390
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1376
1391
|
* Licensed under the MIT license.
|
|
1377
1392
|
* See LICENSE file in the project root for full license information.
|
|
1378
1393
|
*/
|
|
1379
1394
|
|
|
1380
1395
|
/*
|
|
1381
|
-
* Copyright (c)
|
|
1396
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1382
1397
|
* Licensed under the MIT license.
|
|
1383
1398
|
* See LICENSE file in the project root for full license information.
|
|
1384
1399
|
*/
|
|
1385
1400
|
|
|
1386
1401
|
/*
|
|
1387
|
-
* Copyright (c)
|
|
1402
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1388
1403
|
* Licensed under the MIT license.
|
|
1389
1404
|
* See LICENSE file in the project root for full license information.
|
|
1390
1405
|
*/
|
|
@@ -1485,7 +1500,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
1485
1500
|
}] });
|
|
1486
1501
|
|
|
1487
1502
|
/*
|
|
1488
|
-
* Copyright (c)
|
|
1503
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1489
1504
|
* Licensed under the MIT license.
|
|
1490
1505
|
* See LICENSE file in the project root for full license information.
|
|
1491
1506
|
*/
|
|
@@ -1522,32 +1537,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
1522
1537
|
}] });
|
|
1523
1538
|
|
|
1524
1539
|
/*
|
|
1525
|
-
* Copyright (c)
|
|
1540
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1526
1541
|
* Licensed under the MIT license.
|
|
1527
1542
|
* See LICENSE file in the project root for full license information.
|
|
1528
1543
|
*/
|
|
1529
1544
|
|
|
1530
1545
|
/*
|
|
1531
|
-
* Copyright (c)
|
|
1546
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1532
1547
|
* Licensed under the MIT license.
|
|
1533
1548
|
* See LICENSE file in the project root for full license information.
|
|
1534
1549
|
*/
|
|
1535
1550
|
|
|
1536
1551
|
/*
|
|
1537
|
-
* Copyright (c)
|
|
1552
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1538
1553
|
* Licensed under the MIT license.
|
|
1539
1554
|
* See LICENSE file in the project root for full license information.
|
|
1540
1555
|
*/
|
|
1541
1556
|
class BaoListItem {
|
|
1542
1557
|
}
|
|
1543
1558
|
BaoListItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoListItem, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1544
|
-
BaoListItem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoListItem, selector: "bao-list-item, [bao-list-item]", host: { attributes: { "role": "listitem" }, classAttribute: "bao-list-item" }, ngImport: i0, template: "<div class=\"bao-list-item-header\">\n <ng-content select=\"baoIconItemType, [baoIconItemType]\"></ng-content>\n</div>\n<div class=\"bao-list-item-content\">\n <div class=\"bao-list-item-text\">\n <ng-content></ng-content>\n </div>\n <div class=\"bao-list-item-tag\">\n <ng-content\n select=\"bao-tag, [bao-tag], baoIconTag, [baoIconTag]\"\n ></ng-content>\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: 576px){.bao-container{max-width:576px}}@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-list{padding:0;margin:0}.bao-list>.bao-list-item:last-child{border-radius:.125rem;box-shadow:inset 0 .0625rem #ced4da,inset 0 -.0625rem #ced4da}.bao-list>a.bao-list-item{border-bottom:none}.bao-list>a.bao-list-item:focus{box-shadow:0 0 0 .1875rem #98bcde;background-color:#f8f9fa}.bao-list>a.bao-list-item:focus .bao-list-item-title{color:#097d6c}.bao-list>a.bao-list-item:hover{background-color:#f8f9fa}.bao-list>a.bao-list-item:hover .bao-list-item-text,.bao-list>a.bao-list-item:hover .bao-list-item-title{color:#097d6c}.bao-list .bao-list-item{display:flex;padding:1rem;background-color:#fff0;border-radius:.125rem .125rem 0rem 0rem;box-shadow:inset 0 .0625rem #ced4da}.bao-list .bao-list-item>.bao-list-item-header{align-self:flex-start;color:#adb2bd;line-height:0}.bao-list .bao-list-item>.bao-list-item-header .bao-icon{margin-right:1em}.bao-list .bao-list-item>.bao-list-item-content{display:flex;flex-grow:2}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content{flex-direction:column}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content{flex-direction:row;justify-content:space-between}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text{display:flex;flex-direction:column;color:#212529;font-weight:700;font-size:1rem;line-height:1.5rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-title{font-weight:700;font-size:1rem;line-height:1.5rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>ul.bao-list-item-description{padding:0;margin:0}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>ul.bao-list-item-description{display:inline-flex;flex-wrap:wrap}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description{color:#637381;margin-right:0 1rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*{font-weight:400;font-size:.875rem;line-height:1.25rem;list-style-type:none}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description{display:block}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*{margin-bottom:.25rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*:last-child{margin-bottom:0}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li{display:inline-flex;align-items:center;margin-bottom:0}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li:before{content:url(\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ADB5BD' fill-rule='evenodd'><circle cx='12' cy='12' r='2'/></svg>\");height:1rem;width:1rem;margin:0 .25rem;flex-shrink:0}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li:first-child:before{content:none}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag{line-height:0}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag>*{margin:.5rem 0 0}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag>*{margin:0 0 0 1rem}}\n"], encapsulation: i0.ViewEncapsulation.None });
|
|
1559
|
+
BaoListItem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoListItem, selector: "bao-list-item, [bao-list-item]", host: { attributes: { "role": "listitem" }, classAttribute: "bao-list-item" }, ngImport: i0, template: "<div class=\"bao-list-item-header\">\n <ng-content select=\"baoIconItemType, [baoIconItemType]\"></ng-content>\n</div>\n<div class=\"bao-list-item-content\">\n <div class=\"bao-list-item-text\">\n <ng-content></ng-content>\n </div>\n <div class=\"bao-list-item-tag\">\n <ng-content\n select=\"bao-tag, [bao-tag], baoIconTag, [baoIconTag]\"\n ></ng-content>\n </div>\n</div>\n<div class=\"bao-list-item-actions\">\n <ng-content\n select=\"bao-button, [bao-button], bao-dropdown-menu, [bao-dropdown-menu]\"\n >\n </ng-content>\n</div>\n", styles: [".bao-container{padding-right:16px;padding-left:16px;margin-right:auto;margin-left:auto;width:100%}@media (min-width: 576px){.bao-container{max-width:576px}}@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-list{padding:0;margin:0}.bao-list>.bao-list-item:last-child{border-radius:.125rem;box-shadow:inset 0 .0625rem #ced4da,inset 0 -.0625rem #ced4da}.bao-list>a.bao-list-item{border-bottom:none}.bao-list>a.bao-list-item:focus{box-shadow:0 0 0 .1875rem #98bcde;background-color:#f8f9fa}.bao-list>a.bao-list-item:focus .bao-list-item-title{color:#097d6c}.bao-list>a.bao-list-item:hover{background-color:#f8f9fa}.bao-list>a.bao-list-item:hover .bao-list-item-text,.bao-list>a.bao-list-item:hover .bao-list-item-title{color:#097d6c}.bao-list .bao-list-item{display:flex;padding:1rem;background-color:#fff0;border-radius:.125rem .125rem 0rem 0rem;box-shadow:inset 0 .0625rem #ced4da}.bao-list .bao-list-item>.bao-list-item-header{align-self:flex-start;color:#adb2bd;line-height:0}.bao-list .bao-list-item>.bao-list-item-header .bao-icon{margin-right:1em}.bao-list .bao-list-item>.bao-list-item-content{display:flex;flex-grow:2}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content{flex-direction:column}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content{flex-direction:row;justify-content:space-between}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text{display:flex;flex-direction:column;color:#212529;font-weight:700;font-size:1rem;line-height:1.5rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-title{font-weight:700;font-size:1rem;line-height:1.5rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>ul.bao-list-item-description{padding:0;margin:0}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>ul.bao-list-item-description{display:inline-flex;flex-wrap:wrap}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description{color:#637381;margin-right:0 1rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*{font-weight:400;font-size:.875rem;line-height:1.25rem;list-style-type:none}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description{display:block}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*{margin-bottom:.25rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*:last-child{margin-bottom:0}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li{display:inline-flex;align-items:center;margin-bottom:0}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li:before{content:url(\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ADB5BD' fill-rule='evenodd'><circle cx='12' cy='12' r='2'/></svg>\");height:1rem;width:1rem;margin:0 .25rem;flex-shrink:0}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li:first-child:before{content:none}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag{line-height:0}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag>*{margin:.5rem 0 0}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag>*{margin:0 0 0 1rem}}.bao-list .bao-list-item>.bao-list-item-actions .bao-button{margin-left:2rem;margin-top:-.5rem}\n"], encapsulation: i0.ViewEncapsulation.None });
|
|
1545
1560
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoListItem, decorators: [{
|
|
1546
1561
|
type: Component,
|
|
1547
1562
|
args: [{ selector: 'bao-list-item, [bao-list-item]', encapsulation: ViewEncapsulation.None, host: {
|
|
1548
1563
|
class: 'bao-list-item',
|
|
1549
1564
|
role: 'listitem'
|
|
1550
|
-
}, template: "<div class=\"bao-list-item-header\">\n <ng-content select=\"baoIconItemType, [baoIconItemType]\"></ng-content>\n</div>\n<div class=\"bao-list-item-content\">\n <div class=\"bao-list-item-text\">\n <ng-content></ng-content>\n </div>\n <div class=\"bao-list-item-tag\">\n <ng-content\n select=\"bao-tag, [bao-tag], baoIconTag, [baoIconTag]\"\n ></ng-content>\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: 576px){.bao-container{max-width:576px}}@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-list{padding:0;margin:0}.bao-list>.bao-list-item:last-child{border-radius:.125rem;box-shadow:inset 0 .0625rem #ced4da,inset 0 -.0625rem #ced4da}.bao-list>a.bao-list-item{border-bottom:none}.bao-list>a.bao-list-item:focus{box-shadow:0 0 0 .1875rem #98bcde;background-color:#f8f9fa}.bao-list>a.bao-list-item:focus .bao-list-item-title{color:#097d6c}.bao-list>a.bao-list-item:hover{background-color:#f8f9fa}.bao-list>a.bao-list-item:hover .bao-list-item-text,.bao-list>a.bao-list-item:hover .bao-list-item-title{color:#097d6c}.bao-list .bao-list-item{display:flex;padding:1rem;background-color:#fff0;border-radius:.125rem .125rem 0rem 0rem;box-shadow:inset 0 .0625rem #ced4da}.bao-list .bao-list-item>.bao-list-item-header{align-self:flex-start;color:#adb2bd;line-height:0}.bao-list .bao-list-item>.bao-list-item-header .bao-icon{margin-right:1em}.bao-list .bao-list-item>.bao-list-item-content{display:flex;flex-grow:2}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content{flex-direction:column}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content{flex-direction:row;justify-content:space-between}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text{display:flex;flex-direction:column;color:#212529;font-weight:700;font-size:1rem;line-height:1.5rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-title{font-weight:700;font-size:1rem;line-height:1.5rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>ul.bao-list-item-description{padding:0;margin:0}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>ul.bao-list-item-description{display:inline-flex;flex-wrap:wrap}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description{color:#637381;margin-right:0 1rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*{font-weight:400;font-size:.875rem;line-height:1.25rem;list-style-type:none}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description{display:block}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*{margin-bottom:.25rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*:last-child{margin-bottom:0}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li{display:inline-flex;align-items:center;margin-bottom:0}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li:before{content:url(\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ADB5BD' fill-rule='evenodd'><circle cx='12' cy='12' r='2'/></svg>\");height:1rem;width:1rem;margin:0 .25rem;flex-shrink:0}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li:first-child:before{content:none}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag{line-height:0}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag>*{margin:.5rem 0 0}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag>*{margin:0 0 0 1rem}}\n"] }]
|
|
1565
|
+
}, template: "<div class=\"bao-list-item-header\">\n <ng-content select=\"baoIconItemType, [baoIconItemType]\"></ng-content>\n</div>\n<div class=\"bao-list-item-content\">\n <div class=\"bao-list-item-text\">\n <ng-content></ng-content>\n </div>\n <div class=\"bao-list-item-tag\">\n <ng-content\n select=\"bao-tag, [bao-tag], baoIconTag, [baoIconTag]\"\n ></ng-content>\n </div>\n</div>\n<div class=\"bao-list-item-actions\">\n <ng-content\n select=\"bao-button, [bao-button], bao-dropdown-menu, [bao-dropdown-menu]\"\n >\n </ng-content>\n</div>\n", styles: [".bao-container{padding-right:16px;padding-left:16px;margin-right:auto;margin-left:auto;width:100%}@media (min-width: 576px){.bao-container{max-width:576px}}@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-list{padding:0;margin:0}.bao-list>.bao-list-item:last-child{border-radius:.125rem;box-shadow:inset 0 .0625rem #ced4da,inset 0 -.0625rem #ced4da}.bao-list>a.bao-list-item{border-bottom:none}.bao-list>a.bao-list-item:focus{box-shadow:0 0 0 .1875rem #98bcde;background-color:#f8f9fa}.bao-list>a.bao-list-item:focus .bao-list-item-title{color:#097d6c}.bao-list>a.bao-list-item:hover{background-color:#f8f9fa}.bao-list>a.bao-list-item:hover .bao-list-item-text,.bao-list>a.bao-list-item:hover .bao-list-item-title{color:#097d6c}.bao-list .bao-list-item{display:flex;padding:1rem;background-color:#fff0;border-radius:.125rem .125rem 0rem 0rem;box-shadow:inset 0 .0625rem #ced4da}.bao-list .bao-list-item>.bao-list-item-header{align-self:flex-start;color:#adb2bd;line-height:0}.bao-list .bao-list-item>.bao-list-item-header .bao-icon{margin-right:1em}.bao-list .bao-list-item>.bao-list-item-content{display:flex;flex-grow:2}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content{flex-direction:column}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content{flex-direction:row;justify-content:space-between}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text{display:flex;flex-direction:column;color:#212529;font-weight:700;font-size:1rem;line-height:1.5rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-title{font-weight:700;font-size:1rem;line-height:1.5rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>ul.bao-list-item-description{padding:0;margin:0}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>ul.bao-list-item-description{display:inline-flex;flex-wrap:wrap}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description{color:#637381;margin-right:0 1rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*{font-weight:400;font-size:.875rem;line-height:1.25rem;list-style-type:none}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description{display:block}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*{margin-bottom:.25rem}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>*:last-child{margin-bottom:0}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li{display:inline-flex;align-items:center;margin-bottom:0}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li:before{content:url(\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ADB5BD' fill-rule='evenodd'><circle cx='12' cy='12' r='2'/></svg>\");height:1rem;width:1rem;margin:0 .25rem;flex-shrink:0}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-text>.bao-list-item-description>li:first-child:before{content:none}}.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag{line-height:0}@media (min-width: 0){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag>*{margin:.5rem 0 0}}@media (min-width: 768px){.bao-list .bao-list-item>.bao-list-item-content>.bao-list-item-tag>*{margin:0 0 0 1rem}}.bao-list .bao-list-item>.bao-list-item-actions .bao-button{margin-left:2rem;margin-top:-.5rem}\n"] }]
|
|
1551
1566
|
}] });
|
|
1552
1567
|
class BaoList {
|
|
1553
1568
|
}
|
|
@@ -1605,7 +1620,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
1605
1620
|
}] });
|
|
1606
1621
|
|
|
1607
1622
|
/*
|
|
1608
|
-
* Copyright (c)
|
|
1623
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1609
1624
|
* Licensed under the MIT license.
|
|
1610
1625
|
* See LICENSE file in the project root for full license information.
|
|
1611
1626
|
*/
|
|
@@ -1639,13 +1654,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
1639
1654
|
}] });
|
|
1640
1655
|
|
|
1641
1656
|
/*
|
|
1642
|
-
* Copyright (c)
|
|
1657
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1643
1658
|
* Licensed under the MIT license.
|
|
1644
1659
|
* See LICENSE file in the project root for full license information.
|
|
1645
1660
|
*/
|
|
1646
1661
|
|
|
1647
1662
|
/*
|
|
1648
|
-
* Copyright (c)
|
|
1663
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
1649
1664
|
* Licensed under the MIT license.
|
|
1650
1665
|
* See LICENSE file in the project root for full license information.
|
|
1651
1666
|
*/
|
|
@@ -2173,7 +2188,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2173
2188
|
}] });
|
|
2174
2189
|
|
|
2175
2190
|
/*
|
|
2176
|
-
* Copyright (c)
|
|
2191
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2177
2192
|
* Licensed under the MIT license.
|
|
2178
2193
|
* See LICENSE file in the project root for full license information.
|
|
2179
2194
|
*/
|
|
@@ -2218,13 +2233,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2218
2233
|
}] });
|
|
2219
2234
|
|
|
2220
2235
|
/*
|
|
2221
|
-
* Copyright (c)
|
|
2236
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2222
2237
|
* Licensed under the MIT license.
|
|
2223
2238
|
* See LICENSE file in the project root for full license information.
|
|
2224
2239
|
*/
|
|
2225
2240
|
|
|
2226
2241
|
/*
|
|
2227
|
-
* Copyright (c)
|
|
2242
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2228
2243
|
* Licensed under the MIT license.
|
|
2229
2244
|
* See LICENSE file in the project root for full license information.
|
|
2230
2245
|
*/
|
|
@@ -2297,7 +2312,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2297
2312
|
}] } });
|
|
2298
2313
|
|
|
2299
2314
|
/*
|
|
2300
|
-
* Copyright (c)
|
|
2315
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2301
2316
|
* Licensed under the MIT license.
|
|
2302
2317
|
* See LICENSE file in the project root for full license information.
|
|
2303
2318
|
*/
|
|
@@ -2317,13 +2332,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2317
2332
|
}] });
|
|
2318
2333
|
|
|
2319
2334
|
/*
|
|
2320
|
-
* Copyright (c)
|
|
2335
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2321
2336
|
* Licensed under the MIT license.
|
|
2322
2337
|
* See LICENSE file in the project root for full license information.
|
|
2323
2338
|
*/
|
|
2324
2339
|
|
|
2325
2340
|
/*
|
|
2326
|
-
* Copyright (c)
|
|
2341
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2327
2342
|
* Licensed under the MIT license.
|
|
2328
2343
|
* See LICENSE file in the project root for full license information.
|
|
2329
2344
|
*/
|
|
@@ -2414,7 +2429,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2414
2429
|
}] });
|
|
2415
2430
|
|
|
2416
2431
|
/*
|
|
2417
|
-
* Copyright (c)
|
|
2432
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2418
2433
|
* Licensed under the MIT license.
|
|
2419
2434
|
* See LICENSE file in the project root for full license information.
|
|
2420
2435
|
*/
|
|
@@ -2442,7 +2457,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2442
2457
|
}] });
|
|
2443
2458
|
|
|
2444
2459
|
/*
|
|
2445
|
-
* Copyright (c)
|
|
2460
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2446
2461
|
* Licensed under the MIT license.
|
|
2447
2462
|
* See LICENSE file in the project root for full license information.
|
|
2448
2463
|
*/
|
|
@@ -2473,13 +2488,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2473
2488
|
}] });
|
|
2474
2489
|
|
|
2475
2490
|
/*
|
|
2476
|
-
* Copyright (c)
|
|
2491
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2477
2492
|
* Licensed under the MIT license.
|
|
2478
2493
|
* See LICENSE file in the project root for full license information.
|
|
2479
2494
|
*/
|
|
2480
2495
|
|
|
2481
2496
|
/*
|
|
2482
|
-
* Copyright (c)
|
|
2497
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2483
2498
|
* Licensed under the MIT license.
|
|
2484
2499
|
* See LICENSE file in the project root for full license information.
|
|
2485
2500
|
*/
|
|
@@ -2579,7 +2594,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2579
2594
|
}] } });
|
|
2580
2595
|
|
|
2581
2596
|
/*
|
|
2582
|
-
* Copyright (c)
|
|
2597
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2583
2598
|
* Licensed under the MIT license.
|
|
2584
2599
|
* See LICENSE file in the project root for full license information.
|
|
2585
2600
|
*/
|
|
@@ -2599,13 +2614,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2599
2614
|
}] });
|
|
2600
2615
|
|
|
2601
2616
|
/*
|
|
2602
|
-
* Copyright (c)
|
|
2617
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2603
2618
|
* Licensed under the MIT license.
|
|
2604
2619
|
* See LICENSE file in the project root for full license information.
|
|
2605
2620
|
*/
|
|
2606
2621
|
|
|
2607
2622
|
/*
|
|
2608
|
-
* Copyright (c)
|
|
2623
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2609
2624
|
* Licensed under the MIT license.
|
|
2610
2625
|
* See LICENSE file in the project root for full license information.
|
|
2611
2626
|
*/
|
|
@@ -2898,7 +2913,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2898
2913
|
}] } });
|
|
2899
2914
|
|
|
2900
2915
|
/*
|
|
2901
|
-
* Copyright (c)
|
|
2916
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2902
2917
|
* Licensed under the MIT license.
|
|
2903
2918
|
* See LICENSE file in the project root for full license information.
|
|
2904
2919
|
*/
|
|
@@ -2929,13 +2944,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
2929
2944
|
}] });
|
|
2930
2945
|
|
|
2931
2946
|
/*
|
|
2932
|
-
* Copyright (c)
|
|
2947
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2933
2948
|
* Licensed under the MIT license.
|
|
2934
2949
|
* See LICENSE file in the project root for full license information.
|
|
2935
2950
|
*/
|
|
2936
2951
|
|
|
2937
2952
|
/*
|
|
2938
|
-
* Copyright (c)
|
|
2953
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
2939
2954
|
* Licensed under the MIT license.
|
|
2940
2955
|
* See LICENSE file in the project root for full license information.
|
|
2941
2956
|
*/
|
|
@@ -3434,7 +3449,7 @@ function _closeModalVia(ref, interactionType, result) {
|
|
|
3434
3449
|
}
|
|
3435
3450
|
|
|
3436
3451
|
/*
|
|
3437
|
-
* Copyright (c)
|
|
3452
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
3438
3453
|
* Licensed under the MIT license.
|
|
3439
3454
|
* See LICENSE file in the project root for full license information.
|
|
3440
3455
|
*/
|
|
@@ -3695,7 +3710,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
3695
3710
|
} });
|
|
3696
3711
|
|
|
3697
3712
|
/*
|
|
3698
|
-
* Copyright (c)
|
|
3713
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
3699
3714
|
* Licensed under the MIT license.
|
|
3700
3715
|
* See LICENSE file in the project root for full license information.
|
|
3701
3716
|
*/
|
|
@@ -3776,7 +3791,7 @@ function getClosestDialog(element, openDialogs) {
|
|
|
3776
3791
|
}
|
|
3777
3792
|
|
|
3778
3793
|
/*
|
|
3779
|
-
* Copyright (c)
|
|
3794
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
3780
3795
|
* Licensed under the MIT license.
|
|
3781
3796
|
* See LICENSE file in the project root for full license information.
|
|
3782
3797
|
*/
|
|
@@ -3797,7 +3812,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
3797
3812
|
}] });
|
|
3798
3813
|
|
|
3799
3814
|
/*
|
|
3800
|
-
* Copyright (c)
|
|
3815
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
3801
3816
|
* Licensed under the MIT license.
|
|
3802
3817
|
* See LICENSE file in the project root for full license information.
|
|
3803
3818
|
*/
|
|
@@ -3870,7 +3885,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
3870
3885
|
}] } });
|
|
3871
3886
|
|
|
3872
3887
|
/*
|
|
3873
|
-
* Copyright (c)
|
|
3888
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
3874
3889
|
* Licensed under the MIT license.
|
|
3875
3890
|
* See LICENSE file in the project root for full license information.
|
|
3876
3891
|
*/
|
|
@@ -3890,13 +3905,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
3890
3905
|
}] });
|
|
3891
3906
|
|
|
3892
3907
|
/*
|
|
3893
|
-
* Copyright (c)
|
|
3908
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
3894
3909
|
* Licensed under the MIT license.
|
|
3895
3910
|
* See LICENSE file in the project root for full license information.
|
|
3896
3911
|
*/
|
|
3897
3912
|
|
|
3898
3913
|
/*
|
|
3899
|
-
* Copyright (c)
|
|
3914
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
3900
3915
|
* Licensed under the MIT license.
|
|
3901
3916
|
* See LICENSE file in the project root for full license information.
|
|
3902
3917
|
*/
|
|
@@ -4083,16 +4098,20 @@ class BaoDropdownMenuComponent {
|
|
|
4083
4098
|
}
|
|
4084
4099
|
upKeyEvent() {
|
|
4085
4100
|
if (this.isOpen) {
|
|
4086
|
-
const index = isNaN(this._activeItemIndex) ?
|
|
4101
|
+
const index = isNaN(this._activeItemIndex) ? -1 : this._activeItemIndex;
|
|
4087
4102
|
const nextIndex = this.getNextActivableItemIndex(index, false);
|
|
4088
|
-
|
|
4103
|
+
if (nextIndex > -1) {
|
|
4104
|
+
this.focusNextItem(nextIndex);
|
|
4105
|
+
}
|
|
4089
4106
|
}
|
|
4090
4107
|
}
|
|
4091
4108
|
downKeyEvent() {
|
|
4092
4109
|
if (this.isOpen) {
|
|
4093
|
-
const index = isNaN(this._activeItemIndex) ?
|
|
4110
|
+
const index = isNaN(this._activeItemIndex) ? -1 : this._activeItemIndex;
|
|
4094
4111
|
const nextIndex = this.getNextActivableItemIndex(index, true);
|
|
4095
|
-
|
|
4112
|
+
if (nextIndex > -1) {
|
|
4113
|
+
this.focusNextItem(nextIndex);
|
|
4114
|
+
}
|
|
4096
4115
|
}
|
|
4097
4116
|
}
|
|
4098
4117
|
/** Prevents focus to be lost when TAB has reached end of menu */
|
|
@@ -4103,6 +4122,16 @@ class BaoDropdownMenuComponent {
|
|
|
4103
4122
|
}
|
|
4104
4123
|
}
|
|
4105
4124
|
}
|
|
4125
|
+
tabUpKeyEvent() {
|
|
4126
|
+
if (this.isOpen) {
|
|
4127
|
+
this._activeItemIndex = this._listItems.reduce((acc, element, index) => {
|
|
4128
|
+
if (element.nativeElement === document.activeElement) {
|
|
4129
|
+
acc = index;
|
|
4130
|
+
}
|
|
4131
|
+
return acc;
|
|
4132
|
+
}, -1);
|
|
4133
|
+
}
|
|
4134
|
+
}
|
|
4106
4135
|
/** Prevents focus to be lost when SHIFT + TAB has reached beginning of menu */
|
|
4107
4136
|
shiftTabKeyEvent() {
|
|
4108
4137
|
if (this.isOpen) {
|
|
@@ -4118,16 +4147,16 @@ class BaoDropdownMenuComponent {
|
|
|
4118
4147
|
ngAfterContentInit() {
|
|
4119
4148
|
this._listItems.forEach((item) => item.itemClicked.subscribe(() => this.isClosedByKeyEvent.emit()));
|
|
4120
4149
|
}
|
|
4121
|
-
focusFirstItem() {
|
|
4122
|
-
this._activeItemIndex = 0;
|
|
4123
|
-
this._listItems.first.nativeElement.focus();
|
|
4124
|
-
}
|
|
4125
4150
|
open() {
|
|
4126
4151
|
this.isOpen = true;
|
|
4127
4152
|
}
|
|
4128
4153
|
close() {
|
|
4129
4154
|
this.isOpen = false;
|
|
4130
4155
|
}
|
|
4156
|
+
focus() {
|
|
4157
|
+
this._activeItemIndex = -1;
|
|
4158
|
+
this._menuContent.nativeElement.focus();
|
|
4159
|
+
}
|
|
4131
4160
|
/** Move the aria-current attribute to new active page */
|
|
4132
4161
|
setNavigationAttribute(activePageElement) {
|
|
4133
4162
|
const previousActivePage = this._listItems.find((item) => {
|
|
@@ -4151,40 +4180,55 @@ class BaoDropdownMenuComponent {
|
|
|
4151
4180
|
* @param isBackward If recursive function is going backward looking for last activable item in list
|
|
4152
4181
|
* @returns Index of the next item that will receive focus
|
|
4153
4182
|
*/
|
|
4154
|
-
getNextActivableItemIndex(currentIndex, isDown
|
|
4155
|
-
|
|
4156
|
-
|
|
4157
|
-
|
|
4183
|
+
getNextActivableItemIndex(currentIndex, isDown) {
|
|
4184
|
+
const init = [];
|
|
4185
|
+
// Get all the activable indexes
|
|
4186
|
+
const activableIndexes = this._listItems.reduce((acc, element, index) => {
|
|
4187
|
+
if (!element.disabled) {
|
|
4188
|
+
acc = [...acc, index];
|
|
4158
4189
|
}
|
|
4159
|
-
|
|
4160
|
-
|
|
4161
|
-
|
|
4162
|
-
|
|
4163
|
-
|
|
4190
|
+
return acc;
|
|
4191
|
+
}, init);
|
|
4192
|
+
if (activableIndexes.length) {
|
|
4193
|
+
if (isDown) {
|
|
4194
|
+
// Select the first enabled element
|
|
4195
|
+
if (currentIndex === -1) {
|
|
4196
|
+
return activableIndexes[0];
|
|
4197
|
+
}
|
|
4198
|
+
// Select the only enabled element
|
|
4199
|
+
if (activableIndexes.length === 1) {
|
|
4200
|
+
return activableIndexes[0];
|
|
4201
|
+
}
|
|
4202
|
+
// Stay on the last enabled element
|
|
4203
|
+
if (currentIndex === activableIndexes[activableIndexes.length - 1]) {
|
|
4204
|
+
return currentIndex;
|
|
4205
|
+
}
|
|
4206
|
+
// Select the next enabled element
|
|
4207
|
+
return activableIndexes.find(index => index > currentIndex);
|
|
4164
4208
|
}
|
|
4165
|
-
|
|
4166
|
-
|
|
4167
|
-
|
|
4168
|
-
|
|
4169
|
-
|
|
4209
|
+
const isUp = !isDown;
|
|
4210
|
+
if (isUp) {
|
|
4211
|
+
// Do nothing whenever nothing is selected
|
|
4212
|
+
if (currentIndex === -1) {
|
|
4213
|
+
return currentIndex;
|
|
4214
|
+
}
|
|
4215
|
+
// Select the only enabled element
|
|
4216
|
+
if (activableIndexes.length === 1) {
|
|
4217
|
+
return activableIndexes[0];
|
|
4218
|
+
}
|
|
4219
|
+
// Stay on the first enabled element
|
|
4220
|
+
if (currentIndex === activableIndexes[0]) {
|
|
4221
|
+
return currentIndex;
|
|
4222
|
+
}
|
|
4223
|
+
// Select the above enabled element
|
|
4224
|
+
return activableIndexes.reverse().find(index => index < currentIndex);
|
|
4170
4225
|
}
|
|
4171
|
-
return
|
|
4226
|
+
return -1;
|
|
4172
4227
|
}
|
|
4173
|
-
return nextIndex;
|
|
4174
|
-
}
|
|
4175
|
-
/**
|
|
4176
|
-
* Finds if focus has reached end or beginning of list
|
|
4177
|
-
* @param currentIndex List item index which currently has focus
|
|
4178
|
-
* @param isDown Whether the navigation is going in the down direction or not
|
|
4179
|
-
* @returns Can focus move to next item or not
|
|
4180
|
-
*/
|
|
4181
|
-
canMove(currentIndex, isDown) {
|
|
4182
|
-
return !((currentIndex == 0 && !isDown) ||
|
|
4183
|
-
(currentIndex == this._listItems.length - 1 && isDown));
|
|
4184
4228
|
}
|
|
4185
4229
|
}
|
|
4186
4230
|
BaoDropdownMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
4187
|
-
BaoDropdownMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuComponent, selector: "bao-dropdown-menu", outputs: { isOpenChange: "isOpenChange", isClosedByKeyEvent: "isClosedByKeyEvent" }, host: { listeners: { "window:keyup.arrowup": "upKeyEvent()", "window:keyup.arrowdown": "downKeyEvent()", "window:keydown.tab": "tabKeyEvent()", "window:keydown.shift.tab": "shiftTabKeyEvent()" }, properties: { "class.bao-overlay-transparent-backdrop": "isOpen===false", "class.bao-dropdown-menu-closed": "isOpen===false", "attr.aria-expanded": "isOpen" }, classAttribute: "bao-dropdown-menu-container" }, queries: [{ propertyName: "_listItems", predicate: BaoDropdownMenuItem, descendants: true }], viewQueries: [{ propertyName: "_menuContent", first: true, predicate: ["menuContent"], descendants: true }], ngImport: i0, template: "<div #menuContent class=\"bao-dropdown-menu\" tabindex=\"-1\">\n <ng-content></ng-content>\n</div>\n", styles: [".bao-dropdown-menu-container.bao-dropdown-menu-closed{display:none}.bao-dropdown-menu{min-width:16rem;max-width:32rem;overflow-y:auto;background:#ffffff;box-shadow:0 .5rem 2rem #0000001a;border-radius:.25rem;padding-top:.5rem;padding-bottom:.5rem}.bao-dropdown-menu .bao-overlay-transparent-backdrop{background-color:#fff0;display:none}.bao-dropdown-menu ul{list-style-type:none;padding:0;margin:0}.bao-dropdown-menu h5{padding:.5rem 0 .5rem 1rem;margin:0}.bao-dropdown-menu .bao-dropdown-menu-item{display:flex;align-items:center;text-decoration:none;border-bottom:none;cursor:default}.bao-dropdown-menu .bao-dropdown-menu-item:hover{background-color:#f8f9fa}.bao-dropdown-menu .bao-dropdown-menu-item:active{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item:focus{box-shadow:inset 0 0 0 .25rem #98bcde}.bao-dropdown-menu .bao-dropdown-menu-item.active-link{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-right{padding-right:1.5rem}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-left{padding-left:1rem}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled{cursor:not-allowed;pointer-events:none}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:hover,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:active{background:#ffffff}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-label,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{color:#adb2bd}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content{display:flex;flex-direction:column;margin:.5rem 1rem;background-color:inherit}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-label{font-weight:400;font-size:1rem;line-height:1.5rem;color:#212529}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{font-weight:400;font-size:.875rem;line-height:1.25rem;color:#637381}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-icon{color:#adb2bd;flex-shrink:0}.bao-dropdown-menu .bao-dropdown-menu-divider hr{margin-top:.5rem;margin-bottom:.5rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
4231
|
+
BaoDropdownMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuComponent, selector: "bao-dropdown-menu", outputs: { isOpenChange: "isOpenChange", isClosedByKeyEvent: "isClosedByKeyEvent" }, host: { listeners: { "window:keyup.arrowup": "upKeyEvent()", "window:keyup.arrowdown": "downKeyEvent()", "window:keydown.tab": "tabKeyEvent()", "window:keyup.tab": "tabUpKeyEvent()", "window:keydown.shift.tab": "shiftTabKeyEvent()" }, properties: { "class.bao-overlay-transparent-backdrop": "isOpen===false", "class.bao-dropdown-menu-closed": "isOpen===false", "attr.aria-expanded": "isOpen" }, classAttribute: "bao-dropdown-menu-container" }, queries: [{ propertyName: "_listItems", predicate: BaoDropdownMenuItem, descendants: true }], viewQueries: [{ propertyName: "_menuContent", first: true, predicate: ["menuContent"], descendants: true }], ngImport: i0, template: "<div #menuContent class=\"bao-dropdown-menu\" tabindex=\"-1\">\n <ng-content></ng-content>\n</div>\n", styles: [".bao-dropdown-menu-container.bao-dropdown-menu-closed{display:none}.bao-dropdown-menu{min-width:16rem;max-width:32rem;overflow-y:auto;background:#ffffff;box-shadow:0 .5rem 2rem #0000001a;border-radius:.25rem;margin-top:.25rem;margin-bottom:.25rem;padding-top:.5rem;padding-bottom:.5rem}.bao-dropdown-menu:focus-visible{outline:none}.bao-dropdown-menu .bao-overlay-transparent-backdrop{background-color:#fff0;display:none}.bao-dropdown-menu ul{list-style-type:none;padding:0;margin:0}.bao-dropdown-menu h5{padding:.5rem 0 .5rem 1rem;margin:0}.bao-dropdown-menu .bao-dropdown-menu-item{display:flex;align-items:center;text-decoration:none;border-bottom:none;cursor:default}.bao-dropdown-menu .bao-dropdown-menu-item:hover{background-color:#f8f9fa}.bao-dropdown-menu .bao-dropdown-menu-item:active{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item:focus{box-shadow:inset 0 0 0 .25rem #98bcde}.bao-dropdown-menu .bao-dropdown-menu-item.active-link{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-right{padding-right:1.5rem}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-left{padding-left:1rem}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled{cursor:not-allowed;pointer-events:none}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:hover,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:active{background:#ffffff}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-label,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{color:#adb2bd}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content{display:flex;flex-direction:column;margin:.5rem 1rem;background-color:inherit}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-label{font-weight:400;font-size:1rem;line-height:1.5rem;color:#212529}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{font-weight:400;font-size:.875rem;line-height:1.25rem;color:#637381}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-icon{color:#adb2bd;flex-shrink:0}.bao-dropdown-menu .bao-dropdown-menu-divider hr{margin-top:.5rem;margin-bottom:.5rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
4188
4232
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuComponent, decorators: [{
|
|
4189
4233
|
type: Component,
|
|
4190
4234
|
args: [{ selector: 'bao-dropdown-menu', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
@@ -4192,7 +4236,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
4192
4236
|
'[class.bao-overlay-transparent-backdrop]': 'isOpen===false',
|
|
4193
4237
|
'[class.bao-dropdown-menu-closed]': 'isOpen===false',
|
|
4194
4238
|
'[attr.aria-expanded]': 'isOpen'
|
|
4195
|
-
}, template: "<div #menuContent class=\"bao-dropdown-menu\" tabindex=\"-1\">\n <ng-content></ng-content>\n</div>\n", styles: [".bao-dropdown-menu-container.bao-dropdown-menu-closed{display:none}.bao-dropdown-menu{min-width:16rem;max-width:32rem;overflow-y:auto;background:#ffffff;box-shadow:0 .5rem 2rem #0000001a;border-radius:.25rem;padding-top:.5rem;padding-bottom:.5rem}.bao-dropdown-menu .bao-overlay-transparent-backdrop{background-color:#fff0;display:none}.bao-dropdown-menu ul{list-style-type:none;padding:0;margin:0}.bao-dropdown-menu h5{padding:.5rem 0 .5rem 1rem;margin:0}.bao-dropdown-menu .bao-dropdown-menu-item{display:flex;align-items:center;text-decoration:none;border-bottom:none;cursor:default}.bao-dropdown-menu .bao-dropdown-menu-item:hover{background-color:#f8f9fa}.bao-dropdown-menu .bao-dropdown-menu-item:active{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item:focus{box-shadow:inset 0 0 0 .25rem #98bcde}.bao-dropdown-menu .bao-dropdown-menu-item.active-link{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-right{padding-right:1.5rem}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-left{padding-left:1rem}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled{cursor:not-allowed;pointer-events:none}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:hover,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:active{background:#ffffff}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-label,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{color:#adb2bd}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content{display:flex;flex-direction:column;margin:.5rem 1rem;background-color:inherit}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-label{font-weight:400;font-size:1rem;line-height:1.5rem;color:#212529}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{font-weight:400;font-size:.875rem;line-height:1.25rem;color:#637381}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-icon{color:#adb2bd;flex-shrink:0}.bao-dropdown-menu .bao-dropdown-menu-divider hr{margin-top:.5rem;margin-bottom:.5rem}\n"] }]
|
|
4239
|
+
}, template: "<div #menuContent class=\"bao-dropdown-menu\" tabindex=\"-1\">\n <ng-content></ng-content>\n</div>\n", styles: [".bao-dropdown-menu-container.bao-dropdown-menu-closed{display:none}.bao-dropdown-menu{min-width:16rem;max-width:32rem;overflow-y:auto;background:#ffffff;box-shadow:0 .5rem 2rem #0000001a;border-radius:.25rem;margin-top:.25rem;margin-bottom:.25rem;padding-top:.5rem;padding-bottom:.5rem}.bao-dropdown-menu:focus-visible{outline:none}.bao-dropdown-menu .bao-overlay-transparent-backdrop{background-color:#fff0;display:none}.bao-dropdown-menu ul{list-style-type:none;padding:0;margin:0}.bao-dropdown-menu h5{padding:.5rem 0 .5rem 1rem;margin:0}.bao-dropdown-menu .bao-dropdown-menu-item{display:flex;align-items:center;text-decoration:none;border-bottom:none;cursor:default}.bao-dropdown-menu .bao-dropdown-menu-item:hover{background-color:#f8f9fa}.bao-dropdown-menu .bao-dropdown-menu-item:active{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item:focus{box-shadow:inset 0 0 0 .25rem #98bcde}.bao-dropdown-menu .bao-dropdown-menu-item.active-link{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-right{padding-right:1.5rem}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-left{padding-left:1rem}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled{cursor:not-allowed;pointer-events:none}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:hover,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:active{background:#ffffff}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-label,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{color:#adb2bd}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content{display:flex;flex-direction:column;margin:.5rem 1rem;background-color:inherit}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-label{font-weight:400;font-size:1rem;line-height:1.5rem;color:#212529}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{font-weight:400;font-size:.875rem;line-height:1.25rem;color:#637381}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-icon{color:#adb2bd;flex-shrink:0}.bao-dropdown-menu .bao-dropdown-menu-divider hr{margin-top:.5rem;margin-bottom:.5rem}\n"] }]
|
|
4196
4240
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { isOpenChange: [{
|
|
4197
4241
|
type: Output
|
|
4198
4242
|
}], isClosedByKeyEvent: [{
|
|
@@ -4212,6 +4256,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
4212
4256
|
}], tabKeyEvent: [{
|
|
4213
4257
|
type: HostListener,
|
|
4214
4258
|
args: ['window:keydown.tab']
|
|
4259
|
+
}], tabUpKeyEvent: [{
|
|
4260
|
+
type: HostListener,
|
|
4261
|
+
args: ['window:keyup.tab']
|
|
4215
4262
|
}], shiftTabKeyEvent: [{
|
|
4216
4263
|
type: HostListener,
|
|
4217
4264
|
args: ['window:keydown.shift.tab']
|
|
@@ -4236,14 +4283,6 @@ class BaoDropdownMenuTrigger {
|
|
|
4236
4283
|
this.nativeElement.focus();
|
|
4237
4284
|
}
|
|
4238
4285
|
}
|
|
4239
|
-
/** Enter key event triggers click event which opens menu,
|
|
4240
|
-
* then focus is put on first item in the menu */
|
|
4241
|
-
enterKeyEvent(event) {
|
|
4242
|
-
if (this._isMenuOpen && document.activeElement === this.nativeElement) {
|
|
4243
|
-
event.stopImmediatePropagation();
|
|
4244
|
-
this.menu.focusFirstItem();
|
|
4245
|
-
}
|
|
4246
|
-
}
|
|
4247
4286
|
onClick() {
|
|
4248
4287
|
this.toggleMenu();
|
|
4249
4288
|
}
|
|
@@ -4252,7 +4291,7 @@ class BaoDropdownMenuTrigger {
|
|
|
4252
4291
|
this.renderer.setAttribute(this.nativeElement, 'aria-controls', `bao-dropdown-menu-${dropdownMenuUniqueId}`);
|
|
4253
4292
|
this.menu.isClosedByKeyEvent.subscribe(() => {
|
|
4254
4293
|
this.closeMenu();
|
|
4255
|
-
this.nativeElement.focus();
|
|
4294
|
+
setTimeout(() => this.nativeElement.focus(), 50);
|
|
4256
4295
|
});
|
|
4257
4296
|
}
|
|
4258
4297
|
ngOnDestroy() {
|
|
@@ -4278,6 +4317,7 @@ class BaoDropdownMenuTrigger {
|
|
|
4278
4317
|
overlayRef.attach(this.menu.menuPortal);
|
|
4279
4318
|
this._isMenuOpen = true;
|
|
4280
4319
|
this.menu.open();
|
|
4320
|
+
this.menu.focus();
|
|
4281
4321
|
}
|
|
4282
4322
|
createOverlay() {
|
|
4283
4323
|
if (!this._overlayRef) {
|
|
@@ -4333,7 +4373,7 @@ class BaoDropdownMenuTrigger {
|
|
|
4333
4373
|
}
|
|
4334
4374
|
}
|
|
4335
4375
|
BaoDropdownMenuTrigger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuTrigger, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1$4.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4336
|
-
BaoDropdownMenuTrigger.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuTrigger, selector: "bao-dropdown-menu-trigger, [bao-dropdown-menu-trigger], [baoDropdownMenuTriggerFor]", inputs: { menu: ["baoDropdownMenuTriggerFor", "menu"] }, host: { listeners: { "window:keyup.escape": "escapeKeyEvent()", "
|
|
4376
|
+
BaoDropdownMenuTrigger.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuTrigger, selector: "bao-dropdown-menu-trigger, [bao-dropdown-menu-trigger], [baoDropdownMenuTriggerFor]", inputs: { menu: ["baoDropdownMenuTriggerFor", "menu"] }, host: { listeners: { "window:keyup.escape": "escapeKeyEvent()", "click": "onClick()" }, classAttribute: "bao-dropdown-menu-trigger" }, ngImport: i0 });
|
|
4337
4377
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuTrigger, decorators: [{
|
|
4338
4378
|
type: Directive,
|
|
4339
4379
|
args: [{
|
|
@@ -4346,9 +4386,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
4346
4386
|
}], escapeKeyEvent: [{
|
|
4347
4387
|
type: HostListener,
|
|
4348
4388
|
args: ['window:keyup.escape']
|
|
4349
|
-
}], enterKeyEvent: [{
|
|
4350
|
-
type: HostListener,
|
|
4351
|
-
args: ['window:keyup.enter', ['$event']]
|
|
4352
4389
|
}], onClick: [{
|
|
4353
4390
|
type: HostListener,
|
|
4354
4391
|
args: ['click']
|
|
@@ -4443,7 +4480,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
4443
4480
|
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
|
|
4444
4481
|
|
|
4445
4482
|
/*
|
|
4446
|
-
* Copyright (c)
|
|
4483
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
4447
4484
|
* Licensed under the MIT license.
|
|
4448
4485
|
* See LICENSE file in the project root for full license information.
|
|
4449
4486
|
*/
|
|
@@ -4483,13 +4520,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
4483
4520
|
}] });
|
|
4484
4521
|
|
|
4485
4522
|
/*
|
|
4486
|
-
* Copyright (c)
|
|
4523
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
4487
4524
|
* Licensed under the MIT license.
|
|
4488
4525
|
* See LICENSE file in the project root for full license information.
|
|
4489
4526
|
*/
|
|
4490
4527
|
|
|
4491
4528
|
/*
|
|
4492
|
-
* Copyright (c)
|
|
4529
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
4493
4530
|
* Licensed under the MIT license.
|
|
4494
4531
|
* See LICENSE file in the project root for full license information.
|
|
4495
4532
|
*/
|
|
@@ -4509,13 +4546,21 @@ class BaoFilePreviewComponent {
|
|
|
4509
4546
|
this.insertGenericIcon = false;
|
|
4510
4547
|
this.thumbnailURL = '';
|
|
4511
4548
|
}
|
|
4549
|
+
get file() {
|
|
4550
|
+
return this._file;
|
|
4551
|
+
}
|
|
4552
|
+
/**
|
|
4553
|
+
* Uploaded file to display in list.
|
|
4554
|
+
*/
|
|
4555
|
+
set file(f) {
|
|
4556
|
+
this._file = f;
|
|
4557
|
+
this.setFileData();
|
|
4558
|
+
}
|
|
4512
4559
|
get nativeElement() {
|
|
4513
4560
|
return this.elementRef.nativeElement;
|
|
4514
4561
|
}
|
|
4515
|
-
|
|
4516
|
-
|
|
4517
|
-
}
|
|
4518
|
-
ngAfterContentInit() {
|
|
4562
|
+
setFileData() {
|
|
4563
|
+
this.formatSize(this._file.size);
|
|
4519
4564
|
this.getThumbnail();
|
|
4520
4565
|
this.setIcon();
|
|
4521
4566
|
}
|
|
@@ -4530,8 +4575,8 @@ class BaoFilePreviewComponent {
|
|
|
4530
4575
|
}
|
|
4531
4576
|
}
|
|
4532
4577
|
getThumbnail() {
|
|
4533
|
-
if (this.
|
|
4534
|
-
(this.
|
|
4578
|
+
if (this._file &&
|
|
4579
|
+
(this._file.type === 'image/png' || this._file.type === 'image/jpeg')) {
|
|
4535
4580
|
const reader = new FileReader();
|
|
4536
4581
|
reader.onload = (event) => {
|
|
4537
4582
|
this.thumbnailURL = event.target.result;
|
|
@@ -4539,31 +4584,33 @@ class BaoFilePreviewComponent {
|
|
|
4539
4584
|
reader.onerror = () => {
|
|
4540
4585
|
this.thumbnailURL = '';
|
|
4541
4586
|
};
|
|
4542
|
-
reader.readAsDataURL(this.
|
|
4587
|
+
reader.readAsDataURL(this._file);
|
|
4543
4588
|
}
|
|
4544
4589
|
}
|
|
4545
4590
|
formatSize(size) {
|
|
4546
4591
|
if (size >= KILO_THRESHOLD && size / KILO_THRESHOLD < KILO_THRESHOLD) {
|
|
4547
|
-
|
|
4592
|
+
this.fileSize = this.getSizeAndUnit(size, KILO_THRESHOLD, 'Ko');
|
|
4593
|
+
return;
|
|
4548
4594
|
}
|
|
4549
4595
|
const sizeDividedByKoMultiplicator = size / KILO_THRESHOLD;
|
|
4550
4596
|
if (sizeDividedByKoMultiplicator >= KILO_THRESHOLD) {
|
|
4551
4597
|
const toFixed = sizeDividedByKoMultiplicator > 10 ? 0 : 1;
|
|
4552
|
-
|
|
4598
|
+
this.fileSize = this.getSizeAndUnit(size, MEGA_THRESHOLD, 'Mo', toFixed);
|
|
4599
|
+
return;
|
|
4553
4600
|
}
|
|
4554
|
-
|
|
4601
|
+
this.fileSize = `${size} octets`;
|
|
4555
4602
|
}
|
|
4556
4603
|
getSizeAndUnit(size, multiplicator, unit, toFixed = 0) {
|
|
4557
4604
|
return `${(size / multiplicator).toFixed(toFixed)} ${unit}`;
|
|
4558
4605
|
}
|
|
4559
4606
|
}
|
|
4560
4607
|
BaoFilePreviewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoFilePreviewComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
4561
|
-
BaoFilePreviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoFilePreviewComponent, selector: "bao-file-preview, [bao-file-preview]", inputs: { file: "file", isLoading: "isLoading" }, host: { classAttribute: "bao-file-preview" }, ngImport: i0, template: "<div class=\"bao-file-info\">\n <ng-content select=\"bao-icon\"></ng-content>\n <bao-icon\n *ngIf=\"insertGenericIcon && !thumbnailURL\"\n class=\"bao-file-media\"\n svgIcon=\"icon-file\"\n >\n </bao-icon>\n <ng-container *ngIf=\"thumbnailURL && !isLoading\">\n <img\n class=\"bao-file-media\"\n [src]=\"thumbnailURL\"\n width=\"40px\"\n height=\"40px\"\n />\n </ng-container>\n <div class=\"bao-file-text\">\n <div class=\"bao-file-name\">{{
|
|
4608
|
+
BaoFilePreviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoFilePreviewComponent, selector: "bao-file-preview, [bao-file-preview]", inputs: { file: "file", isLoading: "isLoading" }, host: { classAttribute: "bao-file-preview" }, ngImport: i0, template: "<div class=\"bao-file-info\">\n <ng-content select=\"bao-icon\"></ng-content>\n <bao-icon\n *ngIf=\"insertGenericIcon && !thumbnailURL\"\n class=\"bao-file-media\"\n svgIcon=\"icon-file\"\n >\n </bao-icon>\n <ng-container *ngIf=\"thumbnailURL && !isLoading\">\n <img\n class=\"bao-file-media\"\n [src]=\"thumbnailURL\"\n width=\"40px\"\n height=\"40px\"\n />\n </ng-container>\n <div class=\"bao-file-text\">\n <div class=\"bao-file-name\">{{ _file.name }}</div>\n <div class=\"bao-file-size\">{{ fileSize }}</div>\n </div>\n</div>\n<ng-container *ngIf=\"!isLoading\">\n <ng-content select=\"button[bao-button]\"></ng-content>\n <ng-content select=\"baoDropdownTriggerFor\"></ng-content>\n</ng-container>\n<bao-icon\n *ngIf=\"isLoading\"\n class=\"loading-spinner\"\n svgIcon=\"icon-spinner\"\n title=\"chargement\"\n></bao-icon>\n", styles: [".bao-file-preview{display:flex;align-items:center;justify-content:space-between;padding-top:.625rem;padding-bottom:.625rem;list-style-type:none}.bao-file-preview>.bao-file-info{display:flex;align-items:center}.bao-file-preview>.bao-file-info>.bao-icon{color:#adb2bd;flex-shrink:0}.bao-file-preview>.bao-file-info>.bao-file-media{margin-right:1rem}.bao-file-preview>.bao-file-info>.bao-file-text{display:inline-flex;flex-direction:column;margin-right:1rem}.bao-file-preview>.bao-file-info>.bao-file-text>.bao-file-name{overflow:hidden;font-weight:700;font-size:.875rem;line-height:1.25rem;color:#212529}.bao-file-preview>.bao-file-info>.bao-file-text>.bao-file-size{font-weight:400;font-size:.75rem;line-height:1rem;color:#637381}.bao-file-preview .loading-spinner{color:#097d6c}.bao-file-preview .bao-dropdown-menu-container{position:absolute;margin-left:auto}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: BaoIconComponent, selector: "bao-icon", inputs: ["color", "size", "svgIcon", "title"], exportAs: ["baoIcon"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
4562
4609
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoFilePreviewComponent, decorators: [{
|
|
4563
4610
|
type: Component,
|
|
4564
4611
|
args: [{ selector: 'bao-file-preview, [bao-file-preview]', encapsulation: ViewEncapsulation.None, host: {
|
|
4565
4612
|
class: 'bao-file-preview'
|
|
4566
|
-
}, template: "<div class=\"bao-file-info\">\n <ng-content select=\"bao-icon\"></ng-content>\n <bao-icon\n *ngIf=\"insertGenericIcon && !thumbnailURL\"\n class=\"bao-file-media\"\n svgIcon=\"icon-file\"\n >\n </bao-icon>\n <ng-container *ngIf=\"thumbnailURL && !isLoading\">\n <img\n class=\"bao-file-media\"\n [src]=\"thumbnailURL\"\n width=\"40px\"\n height=\"40px\"\n />\n </ng-container>\n <div class=\"bao-file-text\">\n <div class=\"bao-file-name\">{{
|
|
4613
|
+
}, template: "<div class=\"bao-file-info\">\n <ng-content select=\"bao-icon\"></ng-content>\n <bao-icon\n *ngIf=\"insertGenericIcon && !thumbnailURL\"\n class=\"bao-file-media\"\n svgIcon=\"icon-file\"\n >\n </bao-icon>\n <ng-container *ngIf=\"thumbnailURL && !isLoading\">\n <img\n class=\"bao-file-media\"\n [src]=\"thumbnailURL\"\n width=\"40px\"\n height=\"40px\"\n />\n </ng-container>\n <div class=\"bao-file-text\">\n <div class=\"bao-file-name\">{{ _file.name }}</div>\n <div class=\"bao-file-size\">{{ fileSize }}</div>\n </div>\n</div>\n<ng-container *ngIf=\"!isLoading\">\n <ng-content select=\"button[bao-button]\"></ng-content>\n <ng-content select=\"baoDropdownTriggerFor\"></ng-content>\n</ng-container>\n<bao-icon\n *ngIf=\"isLoading\"\n class=\"loading-spinner\"\n svgIcon=\"icon-spinner\"\n title=\"chargement\"\n></bao-icon>\n", styles: [".bao-file-preview{display:flex;align-items:center;justify-content:space-between;padding-top:.625rem;padding-bottom:.625rem;list-style-type:none}.bao-file-preview>.bao-file-info{display:flex;align-items:center}.bao-file-preview>.bao-file-info>.bao-icon{color:#adb2bd;flex-shrink:0}.bao-file-preview>.bao-file-info>.bao-file-media{margin-right:1rem}.bao-file-preview>.bao-file-info>.bao-file-text{display:inline-flex;flex-direction:column;margin-right:1rem}.bao-file-preview>.bao-file-info>.bao-file-text>.bao-file-name{overflow:hidden;font-weight:700;font-size:.875rem;line-height:1.25rem;color:#212529}.bao-file-preview>.bao-file-info>.bao-file-text>.bao-file-size{font-weight:400;font-size:.75rem;line-height:1rem;color:#637381}.bao-file-preview .loading-spinner{color:#097d6c}.bao-file-preview .bao-dropdown-menu-container{position:absolute;margin-left:auto}\n"] }]
|
|
4567
4614
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { file: [{
|
|
4568
4615
|
type: Input
|
|
4569
4616
|
}], isLoading: [{
|
|
@@ -4571,7 +4618,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
4571
4618
|
}] } });
|
|
4572
4619
|
|
|
4573
4620
|
/*
|
|
4574
|
-
* Copyright (c)
|
|
4621
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
4575
4622
|
* Licensed under the MIT license.
|
|
4576
4623
|
* See LICENSE file in the project root for full license information.
|
|
4577
4624
|
*/
|
|
@@ -4633,7 +4680,7 @@ const BAO_FILE_INTL_PROVIDER = {
|
|
|
4633
4680
|
};
|
|
4634
4681
|
|
|
4635
4682
|
/*
|
|
4636
|
-
* Copyright (c)
|
|
4683
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
4637
4684
|
* Licensed under the MIT license.
|
|
4638
4685
|
* See LICENSE file in the project root for full license information.
|
|
4639
4686
|
*/
|
|
@@ -4942,7 +4989,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
4942
4989
|
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
|
|
4943
4990
|
|
|
4944
4991
|
/*
|
|
4945
|
-
* Copyright (c)
|
|
4992
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
4946
4993
|
* Licensed under the MIT license.
|
|
4947
4994
|
* See LICENSE file in the project root for full license information.
|
|
4948
4995
|
*/
|
|
@@ -5105,7 +5152,7 @@ class BaoSnackBarRef {
|
|
|
5105
5152
|
}
|
|
5106
5153
|
|
|
5107
5154
|
/*
|
|
5108
|
-
* Copyright (c)
|
|
5155
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
5109
5156
|
* Licensed under the MIT license.
|
|
5110
5157
|
* See LICENSE file in the project root for full license information.
|
|
5111
5158
|
*/
|
|
@@ -5195,7 +5242,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
5195
5242
|
} });
|
|
5196
5243
|
|
|
5197
5244
|
/*
|
|
5198
|
-
* Copyright (c)
|
|
5245
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
5199
5246
|
* Licensed under the MIT license.
|
|
5200
5247
|
* See LICENSE file in the project root for full license information.
|
|
5201
5248
|
*/
|
|
@@ -5723,7 +5770,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
5723
5770
|
} });
|
|
5724
5771
|
|
|
5725
5772
|
/*
|
|
5726
|
-
* Copyright (c)
|
|
5773
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
5727
5774
|
* Licensed under the MIT license.
|
|
5728
5775
|
* See LICENSE file in the project root for full license information.
|
|
5729
5776
|
*/
|
|
@@ -5764,7 +5811,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
5764
5811
|
}] });
|
|
5765
5812
|
|
|
5766
5813
|
/*
|
|
5767
|
-
* Copyright (c)
|
|
5814
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
5768
5815
|
* Licensed under the MIT license.
|
|
5769
5816
|
* See LICENSE file in the project root for full license information.
|
|
5770
5817
|
*/
|
|
@@ -5777,7 +5824,7 @@ const Breakpoints = {
|
|
|
5777
5824
|
};
|
|
5778
5825
|
|
|
5779
5826
|
/*
|
|
5780
|
-
* Copyright (c)
|
|
5827
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
5781
5828
|
* Licensed under the MIT license.
|
|
5782
5829
|
* See LICENSE file in the project root for full license information.
|
|
5783
5830
|
*/
|
|
@@ -5906,7 +5953,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
5906
5953
|
}] } });
|
|
5907
5954
|
|
|
5908
5955
|
/*
|
|
5909
|
-
* Copyright (c)
|
|
5956
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
5910
5957
|
* Licensed under the MIT license.
|
|
5911
5958
|
* See LICENSE file in the project root for full license information.
|
|
5912
5959
|
*/
|
|
@@ -5934,13 +5981,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
5934
5981
|
}] });
|
|
5935
5982
|
|
|
5936
5983
|
/*
|
|
5937
|
-
* Copyright (c)
|
|
5984
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
5938
5985
|
* Licensed under the MIT license.
|
|
5939
5986
|
* See LICENSE file in the project root for full license information.
|
|
5940
5987
|
*/
|
|
5941
5988
|
|
|
5942
5989
|
/*
|
|
5943
|
-
* Copyright (c)
|
|
5990
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
5944
5991
|
* Licensed under the MIT license.
|
|
5945
5992
|
* See LICENSE file in the project root for full license information.
|
|
5946
5993
|
*/
|
|
@@ -6039,7 +6086,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
6039
6086
|
}] });
|
|
6040
6087
|
|
|
6041
6088
|
/*
|
|
6042
|
-
* Copyright (c)
|
|
6089
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6043
6090
|
* Licensed under the MIT license.
|
|
6044
6091
|
* See LICENSE file in the project root for full license information.
|
|
6045
6092
|
*/
|
|
@@ -6064,7 +6111,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
6064
6111
|
}] } });
|
|
6065
6112
|
|
|
6066
6113
|
/*
|
|
6067
|
-
* Copyright (c)
|
|
6114
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6068
6115
|
* Licensed under the MIT license.
|
|
6069
6116
|
* See LICENSE file in the project root for full license information.
|
|
6070
6117
|
*/
|
|
@@ -6084,37 +6131,37 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
|
|
|
6084
6131
|
}] });
|
|
6085
6132
|
|
|
6086
6133
|
/*
|
|
6087
|
-
* Copyright (c)
|
|
6134
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6088
6135
|
* Licensed under the MIT license.
|
|
6089
6136
|
* See LICENSE file in the project root for full license information.
|
|
6090
6137
|
*/
|
|
6091
6138
|
|
|
6092
6139
|
/*
|
|
6093
|
-
* Copyright (c)
|
|
6140
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6094
6141
|
* Licensed under the MIT license.
|
|
6095
6142
|
* See LICENSE file in the project root for full license information.
|
|
6096
6143
|
*/
|
|
6097
6144
|
|
|
6098
6145
|
/*
|
|
6099
|
-
* Copyright (c)
|
|
6146
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6100
6147
|
* Licensed under the MIT license.
|
|
6101
6148
|
* See LICENSE file in the project root for full license information.
|
|
6102
6149
|
*/
|
|
6103
6150
|
|
|
6104
6151
|
/*
|
|
6105
|
-
* Copyright (c)
|
|
6152
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6106
6153
|
* Licensed under the MIT license.
|
|
6107
6154
|
* See LICENSE file in the project root for full license information.
|
|
6108
6155
|
*/
|
|
6109
6156
|
|
|
6110
6157
|
/*
|
|
6111
|
-
* Copyright (c)
|
|
6158
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6112
6159
|
* Licensed under the MIT license.
|
|
6113
6160
|
* See LICENSE file in the project root for full license information.
|
|
6114
6161
|
*/
|
|
6115
6162
|
|
|
6116
6163
|
/*
|
|
6117
|
-
* Copyright (c)
|
|
6164
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6118
6165
|
* Licensed under the MIT license.
|
|
6119
6166
|
* See LICENSE file in the project root for full license information.
|
|
6120
6167
|
*/
|