@villedemontreal/angular-ui 14.2.0 → 14.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/esm2020/lib/alert/alert.component.mjs +12 -5
  2. package/esm2020/lib/alert/index.mjs +2 -2
  3. package/esm2020/lib/alert/module.mjs +2 -2
  4. package/esm2020/lib/avatar/avatar.component.mjs +2 -2
  5. package/esm2020/lib/avatar/index.mjs +2 -2
  6. package/esm2020/lib/avatar/module.mjs +2 -2
  7. package/esm2020/lib/badge/badge.component.mjs +2 -2
  8. package/esm2020/lib/badge/index.mjs +2 -2
  9. package/esm2020/lib/badge/module.mjs +2 -2
  10. package/esm2020/lib/bao.module.mjs +2 -2
  11. package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +2 -2
  12. package/esm2020/lib/breadcrumb/index.mjs +2 -2
  13. package/esm2020/lib/breadcrumb/module.mjs +2 -2
  14. package/esm2020/lib/button/button.component.mjs +2 -2
  15. package/esm2020/lib/button/index.mjs +2 -2
  16. package/esm2020/lib/button/module.mjs +2 -2
  17. package/esm2020/lib/card/card.component.mjs +2 -2
  18. package/esm2020/lib/card/index.mjs +2 -2
  19. package/esm2020/lib/card/module.mjs +2 -2
  20. package/esm2020/lib/checkbox/checkbox-group.component.mjs +2 -2
  21. package/esm2020/lib/checkbox/checkbox.component.mjs +1 -1
  22. package/esm2020/lib/checkbox/index.mjs +2 -2
  23. package/esm2020/lib/checkbox/module.mjs +2 -2
  24. package/esm2020/lib/common-components/error-text/errorText.component.mjs +2 -2
  25. package/esm2020/lib/common-components/guiding-text/guidingText.component.mjs +2 -2
  26. package/esm2020/lib/common-components/index.mjs +2 -2
  27. package/esm2020/lib/common-components/label-text/labelText.component.mjs +2 -2
  28. package/esm2020/lib/common-components/module.mjs +2 -2
  29. package/esm2020/lib/common-components/title-text/titleText.component.mjs +2 -2
  30. package/esm2020/lib/core/breakpoints.mjs +2 -2
  31. package/esm2020/lib/core/colors.mjs +1 -1
  32. package/esm2020/lib/core/index.mjs +2 -2
  33. package/esm2020/lib/dropdown-menu/dropdown-menu.component.mjs +73 -51
  34. package/esm2020/lib/dropdown-menu/index.mjs +2 -2
  35. package/esm2020/lib/dropdown-menu/module.mjs +2 -2
  36. package/esm2020/lib/file/file-input.component.mjs +2 -2
  37. package/esm2020/lib/file/file-intl.mjs +2 -2
  38. package/esm2020/lib/file/file-preview.component.mjs +21 -14
  39. package/esm2020/lib/file/index.mjs +2 -2
  40. package/esm2020/lib/file/module.mjs +2 -2
  41. package/esm2020/lib/header-info/header-info.component.mjs +2 -2
  42. package/esm2020/lib/header-info/index.mjs +2 -2
  43. package/esm2020/lib/header-info/module.mjs +2 -2
  44. package/esm2020/lib/hyperlink/hyperlink.component.mjs +2 -2
  45. package/esm2020/lib/hyperlink/index.mjs +2 -2
  46. package/esm2020/lib/hyperlink/module.mjs +2 -2
  47. package/esm2020/lib/icon/bao-icon-registry.mjs +2 -2
  48. package/esm2020/lib/icon/icon.component.mjs +7 -5
  49. package/esm2020/lib/icon/icons-dictionary.mjs +2 -2
  50. package/esm2020/lib/icon/index.mjs +2 -2
  51. package/esm2020/lib/icon/module.mjs +2 -2
  52. package/esm2020/lib/list/index.mjs +2 -2
  53. package/esm2020/lib/list/list.component.mjs +4 -4
  54. package/esm2020/lib/list/module.mjs +2 -2
  55. package/esm2020/lib/modal/index.mjs +2 -2
  56. package/esm2020/lib/modal/modal-config.mjs +2 -2
  57. package/esm2020/lib/modal/modal-container.mjs +1 -1
  58. package/esm2020/lib/modal/modal-directives.mjs +2 -2
  59. package/esm2020/lib/modal/modal-ref.mjs +1 -1
  60. package/esm2020/lib/modal/modal.mjs +2 -2
  61. package/esm2020/lib/modal/module.mjs +2 -2
  62. package/esm2020/lib/radio/index.mjs +2 -2
  63. package/esm2020/lib/radio/module.mjs +2 -2
  64. package/esm2020/lib/radio/radio-group.component.mjs +2 -2
  65. package/esm2020/lib/radio/radio.component.mjs +1 -1
  66. package/esm2020/lib/shared/enum/display-mode.mjs +1 -1
  67. package/esm2020/lib/shared/index.mjs +2 -2
  68. package/esm2020/lib/snack-bar/index.mjs +2 -2
  69. package/esm2020/lib/snack-bar/module.mjs +2 -2
  70. package/esm2020/lib/snack-bar/simple-snack-bar.component.mjs +2 -2
  71. package/esm2020/lib/snack-bar/snack-bar-animations.mjs +2 -2
  72. package/esm2020/lib/snack-bar/snack-bar-config.mjs +1 -1
  73. package/esm2020/lib/snack-bar/snack-bar-container.mjs +1 -1
  74. package/esm2020/lib/snack-bar/snack-bar-ref.mjs +1 -1
  75. package/esm2020/lib/snack-bar/snack-bar.mjs +1 -1
  76. package/esm2020/lib/summary/index.mjs +2 -2
  77. package/esm2020/lib/summary/list-summary.component.mjs +2 -2
  78. package/esm2020/lib/summary/module.mjs +2 -2
  79. package/esm2020/lib/summary/summary.component.mjs +2 -2
  80. package/esm2020/lib/system-header/index.mjs +2 -2
  81. package/esm2020/lib/system-header/module.mjs +2 -2
  82. package/esm2020/lib/system-header/system-header.component.mjs +1 -1
  83. package/esm2020/lib/tabs/index.mjs +2 -2
  84. package/esm2020/lib/tabs/module.mjs +2 -2
  85. package/esm2020/lib/tabs/tabs.component.mjs +2 -2
  86. package/esm2020/lib/tag/index.mjs +2 -2
  87. package/esm2020/lib/tag/module.mjs +2 -2
  88. package/esm2020/lib/tag/tag.component.mjs +2 -2
  89. package/esm2020/public-api.mjs +2 -2
  90. package/fesm2015/villedemontreal-angular-ui.mjs +185 -147
  91. package/fesm2015/villedemontreal-angular-ui.mjs.map +1 -1
  92. package/fesm2020/villedemontreal-angular-ui.mjs +185 -147
  93. package/fesm2020/villedemontreal-angular-ui.mjs.map +1 -1
  94. package/lib/alert/alert.component.d.ts +3 -1
  95. package/lib/dropdown-menu/dropdown-menu.component.d.ts +2 -11
  96. package/lib/file/file-preview.component.d.ts +7 -6
  97. package/lib/icon/icon.component.d.ts +1 -0
  98. package/lib/list/list.component.d.ts +1 -1
  99. package/package.json +1 -1
@@ -48,7 +48,7 @@ function baoColorToHex(baoColor) {
48
48
  }
49
49
 
50
50
  /*
51
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
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
  */
@@ -173,7 +173,7 @@ const ICONS_DCT = {
173
173
  };
174
174
 
175
175
  /*
176
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
176
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
177
177
  * Licensed under the MIT license.
178
178
  * See LICENSE file in the project root for full license information.
179
179
  */
@@ -214,7 +214,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
214
214
  } });
215
215
 
216
216
  /*
217
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
217
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
218
218
  * Licensed under the MIT license.
219
219
  * See LICENSE file in the project root for full license information.
220
220
  */
@@ -315,6 +315,7 @@ class BaoIconComponent {
315
315
  let svg = this.iconRegistry.getNamedSvgIcon(iconName);
316
316
  if (title) {
317
317
  svg = this.addTitleToSVG(svg, title);
318
+ this.removeTitleAttributeFromHost();
318
319
  }
319
320
  if (!title) {
320
321
  svg.setAttribute('aria-hidden', 'true');
@@ -331,6 +332,9 @@ class BaoIconComponent {
331
332
  svg.setAttribute('aria-labelledby', this._titleId);
332
333
  return svg;
333
334
  }
335
+ removeTitleAttributeFromHost() {
336
+ this.renderer.removeAttribute(this.elementRef.nativeElement, 'title');
337
+ }
334
338
  generateUniqueTitleId() {
335
339
  return this.title
336
340
  ? `${this.title
@@ -340,12 +344,10 @@ class BaoIconComponent {
340
344
  }
341
345
  }
342
346
  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: { attributes: { "role": "img" }, properties: { "class.bao-icon": "true", "class.notranslate": "true", "class.bao-icon-medium": "size === \"medium\"", "class.bao-icon-small": "size === \"small\"", "class.bao-icon-x-small": "size === \"x-small\"", "class.bao-icon-xx-small": "size === \"xx-small\"", "attr.data-bao-icon-type": "\"svg\"", "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 });
347
+ 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
348
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoIconComponent, decorators: [{
345
349
  type: Component,
346
350
  args: [{ template: '<ng-content></ng-content>', selector: 'bao-icon', exportAs: 'baoIcon', host: {
347
- role: 'img',
348
- // '[class]': "'bao-icon notranslate ' + svgIcon",
349
351
  '[class.bao-icon]': 'true',
350
352
  '[class.notranslate]': 'true',
351
353
  '[class.bao-icon-medium]': 'size === "medium"',
@@ -366,7 +368,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
366
368
  }] } });
367
369
 
368
370
  /*
369
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
371
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
370
372
  * Licensed under the MIT license.
371
373
  * See LICENSE file in the project root for full license information.
372
374
  */
@@ -462,7 +464,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
462
464
  }] } });
463
465
 
464
466
  /*
465
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
467
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
466
468
  * Licensed under the MIT license.
467
469
  * See LICENSE file in the project root for full license information.
468
470
  */
@@ -565,12 +567,15 @@ class BaoAlertComponent {
565
567
  */
566
568
  this.type = 'info';
567
569
  this.dismissible = false;
570
+ this.dismissibleButtonAriaLabel = 'Cacher le message';
568
571
  this.dismiss = new EventEmitter();
569
572
  }
570
573
  ngOnChanges(changes) {
571
574
  if (changes['type']) {
572
575
  this.iconType = this.alertTypeIcon(changes['type'].currentValue);
573
- this.iconTitle = this.alertTitleIcon(changes['type'].currentValue);
576
+ this.iconTitle =
577
+ this.alertTypeTitle ||
578
+ this.alertTitleIcon(changes['type'].currentValue);
574
579
  }
575
580
  }
576
581
  alertTypeIcon(value) {
@@ -598,7 +603,7 @@ class BaoAlertComponent {
598
603
  }
599
604
  }
600
605
  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=\"Cacher le message\"\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}.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}.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}.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}.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}.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 });
606
+ 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
607
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoAlertComponent, decorators: [{
603
608
  type: Component,
604
609
  args: [{ selector: 'bao-alert', encapsulation: ViewEncapsulation.None, host: {
@@ -609,17 +614,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
609
614
  '[class.bao-alert-info]': 'type === "info"',
610
615
  '[class.bao-alert-emergency]': 'type === "emergency"',
611
616
  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=\"Cacher le message\"\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}.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}.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}.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}.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}.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"] }]
617
+ }, 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
618
  }], propDecorators: { type: [{
614
619
  type: Input
615
620
  }], dismissible: [{
616
621
  type: Input
622
+ }], alertTypeTitle: [{
623
+ type: Input
624
+ }], dismissibleButtonAriaLabel: [{
625
+ type: Input
617
626
  }], dismiss: [{
618
627
  type: Output
619
628
  }] } });
620
629
 
621
630
  /*
622
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
631
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
623
632
  * Licensed under the MIT license.
624
633
  * See LICENSE file in the project root for full license information.
625
634
  */
@@ -639,7 +648,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
639
648
  }] });
640
649
 
641
650
  /*
642
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
651
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
643
652
  * Licensed under the MIT license.
644
653
  * See LICENSE file in the project root for full license information.
645
654
  */
@@ -659,7 +668,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
659
668
  }] });
660
669
 
661
670
  /*
662
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
671
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
663
672
  * Licensed under the MIT license.
664
673
  * See LICENSE file in the project root for full license information.
665
674
  */
@@ -694,13 +703,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
694
703
  }] });
695
704
 
696
705
  /*
697
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
706
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
698
707
  * Licensed under the MIT license.
699
708
  * See LICENSE file in the project root for full license information.
700
709
  */
701
710
 
702
711
  /*
703
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
712
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
704
713
  * Licensed under the MIT license.
705
714
  * See LICENSE file in the project root for full license information.
706
715
  */
@@ -733,7 +742,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
733
742
  }] } });
734
743
 
735
744
  /*
736
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
745
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
737
746
  * Licensed under the MIT license.
738
747
  * See LICENSE file in the project root for full license information.
739
748
  */
@@ -753,19 +762,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
753
762
  }] });
754
763
 
755
764
  /*
756
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
765
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
757
766
  * Licensed under the MIT license.
758
767
  * See LICENSE file in the project root for full license information.
759
768
  */
760
769
 
761
770
  /*
762
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
771
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
763
772
  * Licensed under the MIT license.
764
773
  * See LICENSE file in the project root for full license information.
765
774
  */
766
775
 
767
776
  /*
768
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
777
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
769
778
  * Licensed under the MIT license.
770
779
  * See LICENSE file in the project root for full license information.
771
780
  */
@@ -857,7 +866,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
857
866
  }] });
858
867
 
859
868
  /*
860
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
869
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
861
870
  * Licensed under the MIT license.
862
871
  * See LICENSE file in the project root for full license information.
863
872
  */
@@ -891,13 +900,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
891
900
  }] });
892
901
 
893
902
  /*
894
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
903
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
895
904
  * Licensed under the MIT license.
896
905
  * See LICENSE file in the project root for full license information.
897
906
  */
898
907
 
899
908
  /*
900
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
909
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
901
910
  * Licensed under the MIT license.
902
911
  * See LICENSE file in the project root for full license information.
903
912
  */
@@ -911,7 +920,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
911
920
  }] });
912
921
 
913
922
  /*
914
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
923
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
915
924
  * Licensed under the MIT license.
916
925
  * See LICENSE file in the project root for full license information.
917
926
  */
@@ -925,7 +934,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
925
934
  }] });
926
935
 
927
936
  /*
928
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
937
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
929
938
  * Licensed under the MIT license.
930
939
  * See LICENSE file in the project root for full license information.
931
940
  */
@@ -944,7 +953,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
944
953
  }] } });
945
954
 
946
955
  /*
947
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
956
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
948
957
  * Licensed under the MIT license.
949
958
  * See LICENSE file in the project root for full license information.
950
959
  */
@@ -958,7 +967,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
958
967
  }] });
959
968
 
960
969
  /*
961
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
970
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
962
971
  * Licensed under the MIT license.
963
972
  * See LICENSE file in the project root for full license information.
964
973
  */
@@ -989,7 +998,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
989
998
  }] });
990
999
 
991
1000
  /*
992
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1001
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
993
1002
  * Licensed under the MIT license.
994
1003
  * See LICENSE file in the project root for full license information.
995
1004
  */
@@ -1344,7 +1353,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
1344
1353
  }] });
1345
1354
 
1346
1355
  /*
1347
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1356
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1348
1357
  * Licensed under the MIT license.
1349
1358
  * See LICENSE file in the project root for full license information.
1350
1359
  */
@@ -1372,19 +1381,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
1372
1381
  }] });
1373
1382
 
1374
1383
  /*
1375
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1384
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1376
1385
  * Licensed under the MIT license.
1377
1386
  * See LICENSE file in the project root for full license information.
1378
1387
  */
1379
1388
 
1380
1389
  /*
1381
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1390
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1382
1391
  * Licensed under the MIT license.
1383
1392
  * See LICENSE file in the project root for full license information.
1384
1393
  */
1385
1394
 
1386
1395
  /*
1387
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1396
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1388
1397
  * Licensed under the MIT license.
1389
1398
  * See LICENSE file in the project root for full license information.
1390
1399
  */
@@ -1485,7 +1494,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
1485
1494
  }] });
1486
1495
 
1487
1496
  /*
1488
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1497
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1489
1498
  * Licensed under the MIT license.
1490
1499
  * See LICENSE file in the project root for full license information.
1491
1500
  */
@@ -1522,32 +1531,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
1522
1531
  }] });
1523
1532
 
1524
1533
  /*
1525
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1534
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1526
1535
  * Licensed under the MIT license.
1527
1536
  * See LICENSE file in the project root for full license information.
1528
1537
  */
1529
1538
 
1530
1539
  /*
1531
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1540
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1532
1541
  * Licensed under the MIT license.
1533
1542
  * See LICENSE file in the project root for full license information.
1534
1543
  */
1535
1544
 
1536
1545
  /*
1537
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1546
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1538
1547
  * Licensed under the MIT license.
1539
1548
  * See LICENSE file in the project root for full license information.
1540
1549
  */
1541
1550
  class BaoListItem {
1542
1551
  }
1543
1552
  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 });
1553
+ 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
1554
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoListItem, decorators: [{
1546
1555
  type: Component,
1547
1556
  args: [{ selector: 'bao-list-item, [bao-list-item]', encapsulation: ViewEncapsulation.None, host: {
1548
1557
  class: 'bao-list-item',
1549
1558
  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"] }]
1559
+ }, 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
1560
  }] });
1552
1561
  class BaoList {
1553
1562
  }
@@ -1605,7 +1614,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
1605
1614
  }] });
1606
1615
 
1607
1616
  /*
1608
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1617
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1609
1618
  * Licensed under the MIT license.
1610
1619
  * See LICENSE file in the project root for full license information.
1611
1620
  */
@@ -1639,13 +1648,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
1639
1648
  }] });
1640
1649
 
1641
1650
  /*
1642
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1651
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1643
1652
  * Licensed under the MIT license.
1644
1653
  * See LICENSE file in the project root for full license information.
1645
1654
  */
1646
1655
 
1647
1656
  /*
1648
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
1657
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
1649
1658
  * Licensed under the MIT license.
1650
1659
  * See LICENSE file in the project root for full license information.
1651
1660
  */
@@ -2173,7 +2182,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2173
2182
  }] });
2174
2183
 
2175
2184
  /*
2176
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2185
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2177
2186
  * Licensed under the MIT license.
2178
2187
  * See LICENSE file in the project root for full license information.
2179
2188
  */
@@ -2218,13 +2227,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2218
2227
  }] });
2219
2228
 
2220
2229
  /*
2221
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2230
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2222
2231
  * Licensed under the MIT license.
2223
2232
  * See LICENSE file in the project root for full license information.
2224
2233
  */
2225
2234
 
2226
2235
  /*
2227
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2236
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2228
2237
  * Licensed under the MIT license.
2229
2238
  * See LICENSE file in the project root for full license information.
2230
2239
  */
@@ -2297,7 +2306,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2297
2306
  }] } });
2298
2307
 
2299
2308
  /*
2300
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2309
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2301
2310
  * Licensed under the MIT license.
2302
2311
  * See LICENSE file in the project root for full license information.
2303
2312
  */
@@ -2317,13 +2326,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2317
2326
  }] });
2318
2327
 
2319
2328
  /*
2320
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2329
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2321
2330
  * Licensed under the MIT license.
2322
2331
  * See LICENSE file in the project root for full license information.
2323
2332
  */
2324
2333
 
2325
2334
  /*
2326
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2335
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2327
2336
  * Licensed under the MIT license.
2328
2337
  * See LICENSE file in the project root for full license information.
2329
2338
  */
@@ -2414,7 +2423,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2414
2423
  }] });
2415
2424
 
2416
2425
  /*
2417
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2426
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2418
2427
  * Licensed under the MIT license.
2419
2428
  * See LICENSE file in the project root for full license information.
2420
2429
  */
@@ -2442,7 +2451,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2442
2451
  }] });
2443
2452
 
2444
2453
  /*
2445
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2454
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2446
2455
  * Licensed under the MIT license.
2447
2456
  * See LICENSE file in the project root for full license information.
2448
2457
  */
@@ -2473,13 +2482,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2473
2482
  }] });
2474
2483
 
2475
2484
  /*
2476
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2485
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2477
2486
  * Licensed under the MIT license.
2478
2487
  * See LICENSE file in the project root for full license information.
2479
2488
  */
2480
2489
 
2481
2490
  /*
2482
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2491
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2483
2492
  * Licensed under the MIT license.
2484
2493
  * See LICENSE file in the project root for full license information.
2485
2494
  */
@@ -2579,7 +2588,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2579
2588
  }] } });
2580
2589
 
2581
2590
  /*
2582
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2591
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2583
2592
  * Licensed under the MIT license.
2584
2593
  * See LICENSE file in the project root for full license information.
2585
2594
  */
@@ -2599,13 +2608,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2599
2608
  }] });
2600
2609
 
2601
2610
  /*
2602
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2611
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2603
2612
  * Licensed under the MIT license.
2604
2613
  * See LICENSE file in the project root for full license information.
2605
2614
  */
2606
2615
 
2607
2616
  /*
2608
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2617
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2609
2618
  * Licensed under the MIT license.
2610
2619
  * See LICENSE file in the project root for full license information.
2611
2620
  */
@@ -2898,7 +2907,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2898
2907
  }] } });
2899
2908
 
2900
2909
  /*
2901
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2910
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2902
2911
  * Licensed under the MIT license.
2903
2912
  * See LICENSE file in the project root for full license information.
2904
2913
  */
@@ -2929,13 +2938,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
2929
2938
  }] });
2930
2939
 
2931
2940
  /*
2932
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2941
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2933
2942
  * Licensed under the MIT license.
2934
2943
  * See LICENSE file in the project root for full license information.
2935
2944
  */
2936
2945
 
2937
2946
  /*
2938
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
2947
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
2939
2948
  * Licensed under the MIT license.
2940
2949
  * See LICENSE file in the project root for full license information.
2941
2950
  */
@@ -3434,7 +3443,7 @@ function _closeModalVia(ref, interactionType, result) {
3434
3443
  }
3435
3444
 
3436
3445
  /*
3437
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
3446
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
3438
3447
  * Licensed under the MIT license.
3439
3448
  * See LICENSE file in the project root for full license information.
3440
3449
  */
@@ -3695,7 +3704,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
3695
3704
  } });
3696
3705
 
3697
3706
  /*
3698
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
3707
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
3699
3708
  * Licensed under the MIT license.
3700
3709
  * See LICENSE file in the project root for full license information.
3701
3710
  */
@@ -3776,7 +3785,7 @@ function getClosestDialog(element, openDialogs) {
3776
3785
  }
3777
3786
 
3778
3787
  /*
3779
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
3788
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
3780
3789
  * Licensed under the MIT license.
3781
3790
  * See LICENSE file in the project root for full license information.
3782
3791
  */
@@ -3797,7 +3806,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
3797
3806
  }] });
3798
3807
 
3799
3808
  /*
3800
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
3809
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
3801
3810
  * Licensed under the MIT license.
3802
3811
  * See LICENSE file in the project root for full license information.
3803
3812
  */
@@ -3870,7 +3879,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
3870
3879
  }] } });
3871
3880
 
3872
3881
  /*
3873
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
3882
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
3874
3883
  * Licensed under the MIT license.
3875
3884
  * See LICENSE file in the project root for full license information.
3876
3885
  */
@@ -3890,13 +3899,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
3890
3899
  }] });
3891
3900
 
3892
3901
  /*
3893
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
3902
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
3894
3903
  * Licensed under the MIT license.
3895
3904
  * See LICENSE file in the project root for full license information.
3896
3905
  */
3897
3906
 
3898
3907
  /*
3899
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
3908
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
3900
3909
  * Licensed under the MIT license.
3901
3910
  * See LICENSE file in the project root for full license information.
3902
3911
  */
@@ -4083,16 +4092,20 @@ class BaoDropdownMenuComponent {
4083
4092
  }
4084
4093
  upKeyEvent() {
4085
4094
  if (this.isOpen) {
4086
- const index = isNaN(this._activeItemIndex) ? 0 : this._activeItemIndex;
4095
+ const index = isNaN(this._activeItemIndex) ? -1 : this._activeItemIndex;
4087
4096
  const nextIndex = this.getNextActivableItemIndex(index, false);
4088
- this.focusNextItem(nextIndex);
4097
+ if (nextIndex > -1) {
4098
+ this.focusNextItem(nextIndex);
4099
+ }
4089
4100
  }
4090
4101
  }
4091
4102
  downKeyEvent() {
4092
4103
  if (this.isOpen) {
4093
- const index = isNaN(this._activeItemIndex) ? 0 : this._activeItemIndex;
4104
+ const index = isNaN(this._activeItemIndex) ? -1 : this._activeItemIndex;
4094
4105
  const nextIndex = this.getNextActivableItemIndex(index, true);
4095
- this.focusNextItem(nextIndex);
4106
+ if (nextIndex > -1) {
4107
+ this.focusNextItem(nextIndex);
4108
+ }
4096
4109
  }
4097
4110
  }
4098
4111
  /** Prevents focus to be lost when TAB has reached end of menu */
@@ -4103,6 +4116,16 @@ class BaoDropdownMenuComponent {
4103
4116
  }
4104
4117
  }
4105
4118
  }
4119
+ tabUpKeyEvent() {
4120
+ if (this.isOpen) {
4121
+ this._activeItemIndex = this._listItems.reduce((acc, element, index) => {
4122
+ if (element.nativeElement === document.activeElement) {
4123
+ acc = index;
4124
+ }
4125
+ return acc;
4126
+ }, -1);
4127
+ }
4128
+ }
4106
4129
  /** Prevents focus to be lost when SHIFT + TAB has reached beginning of menu */
4107
4130
  shiftTabKeyEvent() {
4108
4131
  if (this.isOpen) {
@@ -4118,16 +4141,16 @@ class BaoDropdownMenuComponent {
4118
4141
  ngAfterContentInit() {
4119
4142
  this._listItems.forEach((item) => item.itemClicked.subscribe(() => this.isClosedByKeyEvent.emit()));
4120
4143
  }
4121
- focusFirstItem() {
4122
- this._activeItemIndex = 0;
4123
- this._listItems.first.nativeElement.focus();
4124
- }
4125
4144
  open() {
4126
4145
  this.isOpen = true;
4127
4146
  }
4128
4147
  close() {
4129
4148
  this.isOpen = false;
4130
4149
  }
4150
+ focus() {
4151
+ this._activeItemIndex = -1;
4152
+ this._menuContent.nativeElement.focus();
4153
+ }
4131
4154
  /** Move the aria-current attribute to new active page */
4132
4155
  setNavigationAttribute(activePageElement) {
4133
4156
  const previousActivePage = this._listItems.find((item) => {
@@ -4151,40 +4174,55 @@ class BaoDropdownMenuComponent {
4151
4174
  * @param isBackward If recursive function is going backward looking for last activable item in list
4152
4175
  * @returns Index of the next item that will receive focus
4153
4176
  */
4154
- getNextActivableItemIndex(currentIndex, isDown, isBackward = false) {
4155
- if (!this._listItems.get(currentIndex).disabled) {
4156
- if (!this.canMove(currentIndex, isDown)) {
4157
- return currentIndex;
4177
+ getNextActivableItemIndex(currentIndex, isDown) {
4178
+ const init = [];
4179
+ // Get all the activable indexes
4180
+ const activableIndexes = this._listItems.reduce((acc, element, index) => {
4181
+ if (!element.disabled) {
4182
+ acc = [...acc, index];
4158
4183
  }
4159
- }
4160
- else {
4161
- if (!this.canMove(currentIndex, isDown)) {
4162
- const previousIndex = isDown ? currentIndex - 1 : currentIndex + 1;
4163
- return this.getNextActivableItemIndex(previousIndex, isDown, true);
4184
+ return acc;
4185
+ }, init);
4186
+ if (activableIndexes.length) {
4187
+ if (isDown) {
4188
+ // Select the first enabled element
4189
+ if (currentIndex === -1) {
4190
+ return activableIndexes[0];
4191
+ }
4192
+ // Select the only enabled element
4193
+ if (activableIndexes.length === 1) {
4194
+ return activableIndexes[0];
4195
+ }
4196
+ // Stay on the last enabled element
4197
+ if (currentIndex === activableIndexes[activableIndexes.length - 1]) {
4198
+ return currentIndex;
4199
+ }
4200
+ // Select the next enabled element
4201
+ return activableIndexes.find(index => index > currentIndex);
4164
4202
  }
4165
- }
4166
- const nextIndex = isDown ? currentIndex + 1 : currentIndex - 1;
4167
- if (this._listItems.get(nextIndex).disabled) {
4168
- if (isBackward) {
4169
- return currentIndex;
4203
+ const isUp = !isDown;
4204
+ if (isUp) {
4205
+ // Do nothing whenever nothing is selected
4206
+ if (currentIndex === -1) {
4207
+ return currentIndex;
4208
+ }
4209
+ // Select the only enabled element
4210
+ if (activableIndexes.length === 1) {
4211
+ return activableIndexes[0];
4212
+ }
4213
+ // Stay on the first enabled element
4214
+ if (currentIndex === activableIndexes[0]) {
4215
+ return currentIndex;
4216
+ }
4217
+ // Select the above enabled element
4218
+ return activableIndexes.reverse().find(index => index < currentIndex);
4170
4219
  }
4171
- return this.getNextActivableItemIndex(nextIndex, isDown);
4220
+ return -1;
4172
4221
  }
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
4222
  }
4185
4223
  }
4186
4224
  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 });
4225
+ 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
4226
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuComponent, decorators: [{
4189
4227
  type: Component,
4190
4228
  args: [{ selector: 'bao-dropdown-menu', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
@@ -4192,7 +4230,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
4192
4230
  '[class.bao-overlay-transparent-backdrop]': 'isOpen===false',
4193
4231
  '[class.bao-dropdown-menu-closed]': 'isOpen===false',
4194
4232
  '[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"] }]
4233
+ }, 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
4234
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { isOpenChange: [{
4197
4235
  type: Output
4198
4236
  }], isClosedByKeyEvent: [{
@@ -4212,6 +4250,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
4212
4250
  }], tabKeyEvent: [{
4213
4251
  type: HostListener,
4214
4252
  args: ['window:keydown.tab']
4253
+ }], tabUpKeyEvent: [{
4254
+ type: HostListener,
4255
+ args: ['window:keyup.tab']
4215
4256
  }], shiftTabKeyEvent: [{
4216
4257
  type: HostListener,
4217
4258
  args: ['window:keydown.shift.tab']
@@ -4236,14 +4277,6 @@ class BaoDropdownMenuTrigger {
4236
4277
  this.nativeElement.focus();
4237
4278
  }
4238
4279
  }
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
4280
  onClick() {
4248
4281
  this.toggleMenu();
4249
4282
  }
@@ -4252,7 +4285,7 @@ class BaoDropdownMenuTrigger {
4252
4285
  this.renderer.setAttribute(this.nativeElement, 'aria-controls', `bao-dropdown-menu-${dropdownMenuUniqueId}`);
4253
4286
  this.menu.isClosedByKeyEvent.subscribe(() => {
4254
4287
  this.closeMenu();
4255
- this.nativeElement.focus();
4288
+ setTimeout(() => this.nativeElement.focus(), 50);
4256
4289
  });
4257
4290
  }
4258
4291
  ngOnDestroy() {
@@ -4278,6 +4311,7 @@ class BaoDropdownMenuTrigger {
4278
4311
  overlayRef.attach(this.menu.menuPortal);
4279
4312
  this._isMenuOpen = true;
4280
4313
  this.menu.open();
4314
+ this.menu.focus();
4281
4315
  }
4282
4316
  createOverlay() {
4283
4317
  if (!this._overlayRef) {
@@ -4333,7 +4367,7 @@ class BaoDropdownMenuTrigger {
4333
4367
  }
4334
4368
  }
4335
4369
  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()", "window:keyup.enter": "enterKeyEvent($event)", "click": "onClick()" }, classAttribute: "bao-dropdown-menu-trigger" }, ngImport: i0 });
4370
+ 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
4371
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuTrigger, decorators: [{
4338
4372
  type: Directive,
4339
4373
  args: [{
@@ -4346,9 +4380,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
4346
4380
  }], escapeKeyEvent: [{
4347
4381
  type: HostListener,
4348
4382
  args: ['window:keyup.escape']
4349
- }], enterKeyEvent: [{
4350
- type: HostListener,
4351
- args: ['window:keyup.enter', ['$event']]
4352
4383
  }], onClick: [{
4353
4384
  type: HostListener,
4354
4385
  args: ['click']
@@ -4443,7 +4474,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
4443
4474
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
4444
4475
 
4445
4476
  /*
4446
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
4477
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
4447
4478
  * Licensed under the MIT license.
4448
4479
  * See LICENSE file in the project root for full license information.
4449
4480
  */
@@ -4483,13 +4514,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
4483
4514
  }] });
4484
4515
 
4485
4516
  /*
4486
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
4517
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
4487
4518
  * Licensed under the MIT license.
4488
4519
  * See LICENSE file in the project root for full license information.
4489
4520
  */
4490
4521
 
4491
4522
  /*
4492
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
4523
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
4493
4524
  * Licensed under the MIT license.
4494
4525
  * See LICENSE file in the project root for full license information.
4495
4526
  */
@@ -4509,13 +4540,18 @@ class BaoFilePreviewComponent {
4509
4540
  this.insertGenericIcon = false;
4510
4541
  this.thumbnailURL = '';
4511
4542
  }
4543
+ /**
4544
+ * Uploaded file to display in list.
4545
+ */
4546
+ set file(f) {
4547
+ this._file = f;
4548
+ this.setFileData();
4549
+ }
4512
4550
  get nativeElement() {
4513
4551
  return this.elementRef.nativeElement;
4514
4552
  }
4515
- get fileSize() {
4516
- return this.formatSize(this.file.size);
4517
- }
4518
- ngAfterContentInit() {
4553
+ setFileData() {
4554
+ this.formatSize(this._file.size);
4519
4555
  this.getThumbnail();
4520
4556
  this.setIcon();
4521
4557
  }
@@ -4530,8 +4566,8 @@ class BaoFilePreviewComponent {
4530
4566
  }
4531
4567
  }
4532
4568
  getThumbnail() {
4533
- if (this.file &&
4534
- (this.file.type === 'image/png' || this.file.type === 'image/jpeg')) {
4569
+ if (this._file &&
4570
+ (this._file.type === 'image/png' || this._file.type === 'image/jpeg')) {
4535
4571
  const reader = new FileReader();
4536
4572
  reader.onload = (event) => {
4537
4573
  this.thumbnailURL = event.target.result;
@@ -4539,31 +4575,33 @@ class BaoFilePreviewComponent {
4539
4575
  reader.onerror = () => {
4540
4576
  this.thumbnailURL = '';
4541
4577
  };
4542
- reader.readAsDataURL(this.file);
4578
+ reader.readAsDataURL(this._file);
4543
4579
  }
4544
4580
  }
4545
4581
  formatSize(size) {
4546
4582
  if (size >= KILO_THRESHOLD && size / KILO_THRESHOLD < KILO_THRESHOLD) {
4547
- return this.getSizeAndUnit(size, KILO_THRESHOLD, 'Ko');
4583
+ this.fileSize = this.getSizeAndUnit(size, KILO_THRESHOLD, 'Ko');
4584
+ return;
4548
4585
  }
4549
4586
  const sizeDividedByKoMultiplicator = size / KILO_THRESHOLD;
4550
4587
  if (sizeDividedByKoMultiplicator >= KILO_THRESHOLD) {
4551
4588
  const toFixed = sizeDividedByKoMultiplicator > 10 ? 0 : 1;
4552
- return this.getSizeAndUnit(size, MEGA_THRESHOLD, 'Mo', toFixed);
4589
+ this.fileSize = this.getSizeAndUnit(size, MEGA_THRESHOLD, 'Mo', toFixed);
4590
+ return;
4553
4591
  }
4554
- return `${size} octets`;
4592
+ this.fileSize = `${size} octets`;
4555
4593
  }
4556
4594
  getSizeAndUnit(size, multiplicator, unit, toFixed = 0) {
4557
4595
  return `${(size / multiplicator).toFixed(toFixed)} ${unit}`;
4558
4596
  }
4559
4597
  }
4560
4598
  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\">{{ 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 });
4599
+ 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
4600
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoFilePreviewComponent, decorators: [{
4563
4601
  type: Component,
4564
4602
  args: [{ selector: 'bao-file-preview, [bao-file-preview]', encapsulation: ViewEncapsulation.None, host: {
4565
4603
  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\">{{ 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"] }]
4604
+ }, 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
4605
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { file: [{
4568
4606
  type: Input
4569
4607
  }], isLoading: [{
@@ -4571,7 +4609,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
4571
4609
  }] } });
4572
4610
 
4573
4611
  /*
4574
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
4612
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
4575
4613
  * Licensed under the MIT license.
4576
4614
  * See LICENSE file in the project root for full license information.
4577
4615
  */
@@ -4633,7 +4671,7 @@ const BAO_FILE_INTL_PROVIDER = {
4633
4671
  };
4634
4672
 
4635
4673
  /*
4636
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
4674
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
4637
4675
  * Licensed under the MIT license.
4638
4676
  * See LICENSE file in the project root for full license information.
4639
4677
  */
@@ -4942,7 +4980,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
4942
4980
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
4943
4981
 
4944
4982
  /*
4945
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
4983
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
4946
4984
  * Licensed under the MIT license.
4947
4985
  * See LICENSE file in the project root for full license information.
4948
4986
  */
@@ -5105,7 +5143,7 @@ class BaoSnackBarRef {
5105
5143
  }
5106
5144
 
5107
5145
  /*
5108
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
5146
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
5109
5147
  * Licensed under the MIT license.
5110
5148
  * See LICENSE file in the project root for full license information.
5111
5149
  */
@@ -5195,7 +5233,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
5195
5233
  } });
5196
5234
 
5197
5235
  /*
5198
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
5236
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
5199
5237
  * Licensed under the MIT license.
5200
5238
  * See LICENSE file in the project root for full license information.
5201
5239
  */
@@ -5723,7 +5761,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
5723
5761
  } });
5724
5762
 
5725
5763
  /*
5726
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
5764
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
5727
5765
  * Licensed under the MIT license.
5728
5766
  * See LICENSE file in the project root for full license information.
5729
5767
  */
@@ -5764,7 +5802,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
5764
5802
  }] });
5765
5803
 
5766
5804
  /*
5767
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
5805
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
5768
5806
  * Licensed under the MIT license.
5769
5807
  * See LICENSE file in the project root for full license information.
5770
5808
  */
@@ -5777,7 +5815,7 @@ const Breakpoints = {
5777
5815
  };
5778
5816
 
5779
5817
  /*
5780
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
5818
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
5781
5819
  * Licensed under the MIT license.
5782
5820
  * See LICENSE file in the project root for full license information.
5783
5821
  */
@@ -5906,7 +5944,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
5906
5944
  }] } });
5907
5945
 
5908
5946
  /*
5909
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
5947
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
5910
5948
  * Licensed under the MIT license.
5911
5949
  * See LICENSE file in the project root for full license information.
5912
5950
  */
@@ -5934,13 +5972,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
5934
5972
  }] });
5935
5973
 
5936
5974
  /*
5937
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
5975
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
5938
5976
  * Licensed under the MIT license.
5939
5977
  * See LICENSE file in the project root for full license information.
5940
5978
  */
5941
5979
 
5942
5980
  /*
5943
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
5981
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
5944
5982
  * Licensed under the MIT license.
5945
5983
  * See LICENSE file in the project root for full license information.
5946
5984
  */
@@ -6039,7 +6077,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
6039
6077
  }] });
6040
6078
 
6041
6079
  /*
6042
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
6080
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
6043
6081
  * Licensed under the MIT license.
6044
6082
  * See LICENSE file in the project root for full license information.
6045
6083
  */
@@ -6064,7 +6102,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
6064
6102
  }] } });
6065
6103
 
6066
6104
  /*
6067
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
6105
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
6068
6106
  * Licensed under the MIT license.
6069
6107
  * See LICENSE file in the project root for full license information.
6070
6108
  */
@@ -6084,37 +6122,37 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImpor
6084
6122
  }] });
6085
6123
 
6086
6124
  /*
6087
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
6125
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
6088
6126
  * Licensed under the MIT license.
6089
6127
  * See LICENSE file in the project root for full license information.
6090
6128
  */
6091
6129
 
6092
6130
  /*
6093
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
6131
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
6094
6132
  * Licensed under the MIT license.
6095
6133
  * See LICENSE file in the project root for full license information.
6096
6134
  */
6097
6135
 
6098
6136
  /*
6099
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
6137
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
6100
6138
  * Licensed under the MIT license.
6101
6139
  * See LICENSE file in the project root for full license information.
6102
6140
  */
6103
6141
 
6104
6142
  /*
6105
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
6143
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
6106
6144
  * Licensed under the MIT license.
6107
6145
  * See LICENSE file in the project root for full license information.
6108
6146
  */
6109
6147
 
6110
6148
  /*
6111
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
6149
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
6112
6150
  * Licensed under the MIT license.
6113
6151
  * See LICENSE file in the project root for full license information.
6114
6152
  */
6115
6153
 
6116
6154
  /*
6117
- * Copyright (c) 2024 Ville de Montreal. All rights reserved.
6155
+ * Copyright (c) 2025 Ville de Montreal. All rights reserved.
6118
6156
  * Licensed under the MIT license.
6119
6157
  * See LICENSE file in the project root for full license information.
6120
6158
  */