@villedemontreal/angular-ui 18.0.0 → 19.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/fesm2022/villedemontreal-angular-ui.mjs +421 -372
  2. package/fesm2022/villedemontreal-angular-ui.mjs.map +1 -1
  3. package/lib/dropdown-menu/dropdown-menu.component.d.ts +16 -9
  4. package/lib/modal/modal-container.d.ts +1 -1
  5. package/lib/modal/modal.d.ts +1 -1
  6. package/package.json +5 -7
  7. package/esm2022/lib/alert/alert.component.mjs +0 -169
  8. package/esm2022/lib/alert/index.mjs +0 -8
  9. package/esm2022/lib/alert/module.mjs +0 -41
  10. package/esm2022/lib/avatar/avatar.component.mjs +0 -102
  11. package/esm2022/lib/avatar/index.mjs +0 -8
  12. package/esm2022/lib/avatar/module.mjs +0 -24
  13. package/esm2022/lib/badge/badge.component.mjs +0 -27
  14. package/esm2022/lib/badge/index.mjs +0 -8
  15. package/esm2022/lib/badge/module.mjs +0 -24
  16. package/esm2022/lib/bao.module.mjs +0 -124
  17. package/esm2022/lib/breadcrumb/breadcrumb.component.mjs +0 -36
  18. package/esm2022/lib/breadcrumb/index.mjs +0 -8
  19. package/esm2022/lib/breadcrumb/module.mjs +0 -25
  20. package/esm2022/lib/button/button.component.mjs +0 -100
  21. package/esm2022/lib/button/index.mjs +0 -8
  22. package/esm2022/lib/button/module.mjs +0 -25
  23. package/esm2022/lib/card/card.component.mjs +0 -94
  24. package/esm2022/lib/card/index.mjs +0 -8
  25. package/esm2022/lib/card/module.mjs +0 -38
  26. package/esm2022/lib/checkbox/checkbox-group.component.mjs +0 -58
  27. package/esm2022/lib/checkbox/checkbox.component.mjs +0 -304
  28. package/esm2022/lib/checkbox/index.mjs +0 -9
  29. package/esm2022/lib/checkbox/module.mjs +0 -35
  30. package/esm2022/lib/common-components/error-text/errorText.component.mjs +0 -16
  31. package/esm2022/lib/common-components/guiding-text/guidingText.component.mjs +0 -16
  32. package/esm2022/lib/common-components/index.mjs +0 -11
  33. package/esm2022/lib/common-components/label-text/labelText.component.mjs +0 -22
  34. package/esm2022/lib/common-components/module.mjs +0 -38
  35. package/esm2022/lib/common-components/title-text/titleText.component.mjs +0 -16
  36. package/esm2022/lib/core/breakpoints.mjs +0 -13
  37. package/esm2022/lib/core/colors.mjs +0 -25
  38. package/esm2022/lib/core/index.mjs +0 -8
  39. package/esm2022/lib/dropdown-menu/dropdown-menu.component.mjs +0 -573
  40. package/esm2022/lib/dropdown-menu/index.mjs +0 -8
  41. package/esm2022/lib/dropdown-menu/module.mjs +0 -47
  42. package/esm2022/lib/file/file-input.component.mjs +0 -320
  43. package/esm2022/lib/file/file-intl.mjs +0 -65
  44. package/esm2022/lib/file/file-preview.component.mjs +0 -96
  45. package/esm2022/lib/file/index.mjs +0 -10
  46. package/esm2022/lib/file/module.mjs +0 -56
  47. package/esm2022/lib/header-info/header-info.component.mjs +0 -104
  48. package/esm2022/lib/header-info/index.mjs +0 -8
  49. package/esm2022/lib/header-info/module.mjs +0 -41
  50. package/esm2022/lib/hyperlink/hyperlink.component.mjs +0 -84
  51. package/esm2022/lib/hyperlink/index.mjs +0 -8
  52. package/esm2022/lib/hyperlink/module.mjs +0 -24
  53. package/esm2022/lib/icon/bao-icon-registry.mjs +0 -47
  54. package/esm2022/lib/icon/icon.component.mjs +0 -158
  55. package/esm2022/lib/icon/icons-dictionary.mjs +0 -129
  56. package/esm2022/lib/icon/index.mjs +0 -8
  57. package/esm2022/lib/icon/module.mjs +0 -24
  58. package/esm2022/lib/list/index.mjs +0 -8
  59. package/esm2022/lib/list/list.component.mjs +0 -73
  60. package/esm2022/lib/list/module.mjs +0 -38
  61. package/esm2022/lib/message-bar/index.mjs +0 -8
  62. package/esm2022/lib/message-bar/message-bar.component.mjs +0 -87
  63. package/esm2022/lib/message-bar/module.mjs +0 -26
  64. package/esm2022/lib/modal/index.mjs +0 -12
  65. package/esm2022/lib/modal/modal-config.mjs +0 -73
  66. package/esm2022/lib/modal/modal-container.mjs +0 -240
  67. package/esm2022/lib/modal/modal-directives.mjs +0 -84
  68. package/esm2022/lib/modal/modal-ref.mjs +0 -226
  69. package/esm2022/lib/modal/modal.mjs +0 -344
  70. package/esm2022/lib/modal/module.mjs +0 -29
  71. package/esm2022/lib/pagination/index.mjs +0 -8
  72. package/esm2022/lib/pagination/module.mjs +0 -25
  73. package/esm2022/lib/pagination/pagination.component.mjs +0 -217
  74. package/esm2022/lib/radio/index.mjs +0 -9
  75. package/esm2022/lib/radio/module.mjs +0 -54
  76. package/esm2022/lib/radio/radio-group.component.mjs +0 -247
  77. package/esm2022/lib/radio/radio.component.mjs +0 -291
  78. package/esm2022/lib/shared/enum/display-mode.mjs +0 -2
  79. package/esm2022/lib/shared/index.mjs +0 -7
  80. package/esm2022/lib/snack-bar/index.mjs +0 -12
  81. package/esm2022/lib/snack-bar/module.mjs +0 -51
  82. package/esm2022/lib/snack-bar/simple-snack-bar.component.mjs +0 -92
  83. package/esm2022/lib/snack-bar/snack-bar-animations.mjs +0 -28
  84. package/esm2022/lib/snack-bar/snack-bar-config.mjs +0 -37
  85. package/esm2022/lib/snack-bar/snack-bar-container.mjs +0 -277
  86. package/esm2022/lib/snack-bar/snack-bar-ref.mjs +0 -75
  87. package/esm2022/lib/snack-bar/snack-bar.mjs +0 -251
  88. package/esm2022/lib/summary/index.mjs +0 -9
  89. package/esm2022/lib/summary/list-summary.component.mjs +0 -30
  90. package/esm2022/lib/summary/module.mjs +0 -37
  91. package/esm2022/lib/summary/summary.component.mjs +0 -93
  92. package/esm2022/lib/system-header/index.mjs +0 -8
  93. package/esm2022/lib/system-header/module.mjs +0 -33
  94. package/esm2022/lib/system-header/system-header.component.mjs +0 -130
  95. package/esm2022/lib/tabs/index.mjs +0 -8
  96. package/esm2022/lib/tabs/module.mjs +0 -35
  97. package/esm2022/lib/tabs/tabs.component.mjs +0 -295
  98. package/esm2022/lib/tag/index.mjs +0 -8
  99. package/esm2022/lib/tag/module.mjs +0 -24
  100. package/esm2022/lib/tag/tag.component.mjs +0 -75
  101. package/esm2022/public-api.mjs +0 -31
  102. package/esm2022/villedemontreal-angular-ui.mjs +0 -5
@@ -1,96 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- import { Component, Input, ViewEncapsulation } from '@angular/core';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common";
9
- import * as i2 from "../icon/icon.component";
10
- const KILO_THRESHOLD = 1000;
11
- const MEGA_THRESHOLD = 1000000;
12
- export class BaoFilePreviewComponent {
13
- get file() {
14
- return this._file;
15
- }
16
- /**
17
- * Uploaded file to display in list.
18
- */
19
- set file(f) {
20
- this._file = f;
21
- this.setFileData();
22
- }
23
- constructor(elementRef, renderer) {
24
- this.elementRef = elementRef;
25
- this.renderer = renderer;
26
- /**
27
- * Is file loading
28
- */
29
- this.isLoading = false;
30
- /**
31
- * True if projected content has no icon and file does not have a thumbnail.
32
- */
33
- this.insertGenericIcon = false;
34
- this.thumbnailURL = '';
35
- }
36
- get nativeElement() {
37
- return this.elementRef.nativeElement;
38
- }
39
- setFileData() {
40
- this.formatSize(this._file.size);
41
- this.getThumbnail();
42
- this.setIcon();
43
- }
44
- setIcon() {
45
- // If no icon is in the projected content, generic icon is added
46
- const contentIcon = Array.from(this.nativeElement.children.item(0).children).find((el) => el.localName === 'bao-icon');
47
- if (!contentIcon) {
48
- this.insertGenericIcon = true;
49
- }
50
- else {
51
- this.renderer.addClass(contentIcon, 'bao-file-media');
52
- }
53
- }
54
- getThumbnail() {
55
- if (this._file &&
56
- (this._file.type === 'image/png' || this._file.type === 'image/jpeg')) {
57
- const reader = new FileReader();
58
- reader.onload = (event) => {
59
- this.thumbnailURL = event.target.result;
60
- };
61
- reader.onerror = () => {
62
- this.thumbnailURL = '';
63
- };
64
- reader.readAsDataURL(this._file);
65
- }
66
- }
67
- formatSize(size) {
68
- if (size >= KILO_THRESHOLD && size / KILO_THRESHOLD < KILO_THRESHOLD) {
69
- this.fileSize = this.getSizeAndUnit(size, KILO_THRESHOLD, 'Ko');
70
- return;
71
- }
72
- const sizeDividedByKoMultiplicator = size / KILO_THRESHOLD;
73
- if (sizeDividedByKoMultiplicator >= KILO_THRESHOLD) {
74
- const toFixed = sizeDividedByKoMultiplicator > 10 ? 0 : 1;
75
- this.fileSize = this.getSizeAndUnit(size, MEGA_THRESHOLD, 'Mo', toFixed);
76
- return;
77
- }
78
- this.fileSize = `${size} octets`;
79
- }
80
- getSizeAndUnit(size, multiplicator, unit, toFixed = 0) {
81
- return `${(size / multiplicator).toFixed(toFixed)} ${unit}`;
82
- }
83
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoFilePreviewComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
84
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", 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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.BaoIconComponent, selector: "bao-icon", inputs: ["color", "size", "svgIcon", "title"], exportAs: ["baoIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
85
- }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoFilePreviewComponent, decorators: [{
87
- type: Component,
88
- args: [{ selector: 'bao-file-preview, [bao-file-preview]', encapsulation: ViewEncapsulation.None, host: {
89
- class: 'bao-file-preview'
90
- }, 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"] }]
91
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { file: [{
92
- type: Input
93
- }], isLoading: [{
94
- type: Input
95
- }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9maWxlL2ZpbGUtcHJldmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvZmlsZS9maWxlLXByZXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUVMLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQzs7OztBQUV2QixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUM7QUFDNUIsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDO0FBVy9CLE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRDs7T0FFRztJQUNILElBQWEsSUFBSSxDQUFDLENBQU87UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQWdCRCxZQUNVLFVBQW1DLEVBQ25DLFFBQW1CO1FBRG5CLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBQ25DLGFBQVEsR0FBUixRQUFRLENBQVc7UUFoQjdCOztXQUVHO1FBQ2EsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQzs7V0FFRztRQUNJLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUUxQixpQkFBWSxHQUFHLEVBQUUsQ0FBQztJQU90QixDQUFDO0lBRUosSUFBWSxhQUFhO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7SUFDdkMsQ0FBQztJQUVPLFdBQVc7UUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVPLE9BQU87UUFDYixnRUFBZ0U7UUFDaEUsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FDNUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FDN0MsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFlLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEtBQUssVUFBVSxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFDaEMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN4RCxDQUFDO0lBQ0gsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFDRSxJQUFJLENBQUMsS0FBSztZQUNWLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxFQUNyRSxDQUFDO1lBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNoQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7Z0JBQzdCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7WUFDMUMsQ0FBQyxDQUFDO1lBRUYsTUFBTSxDQUFDLE9BQU8sR0FBRyxHQUFHLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1lBQ3pCLENBQUMsQ0FBQztZQUNGLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25DLENBQUM7SUFDSCxDQUFDO0lBRU8sVUFBVSxDQUFDLElBQVk7UUFDN0IsSUFBSSxJQUFJLElBQUksY0FBYyxJQUFJLElBQUksR0FBRyxjQUFjLEdBQUcsY0FBYyxFQUFFLENBQUM7WUFDckUsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDaEUsT0FBTztRQUNULENBQUM7UUFDRCxNQUFNLDRCQUE0QixHQUFHLElBQUksR0FBRyxjQUFjLENBQUM7UUFDM0QsSUFBSSw0QkFBNEIsSUFBSSxjQUFjLEVBQUUsQ0FBQztZQUNuRCxNQUFNLE9BQU8sR0FBRyw0QkFBNEIsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztZQUN6RSxPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxJQUFJLFNBQVMsQ0FBQztJQUNuQyxDQUFDO0lBRU8sY0FBYyxDQUNwQixJQUFZLEVBQ1osYUFBcUIsRUFDckIsSUFBWSxFQUNaLE9BQU8sR0FBRyxDQUFDO1FBRVgsT0FBTyxHQUFHLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUM5RCxDQUFDOytHQTNGVSx1QkFBdUI7bUdBQXZCLHVCQUF1Qiw0S0MxQnBDLHczQkErQkE7OzRGRExhLHVCQUF1QjtrQkFUbkMsU0FBUzsrQkFDRSxzQ0FBc0MsaUJBR2pDLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0osS0FBSyxFQUFFLGtCQUFrQjtxQkFDMUI7dUdBU1ksSUFBSTtzQkFBaEIsS0FBSztnQkFRVSxTQUFTO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyNiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5cbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIFJlbmRlcmVyMixcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IEtJTE9fVEhSRVNIT0xEID0gMTAwMDtcbmNvbnN0IE1FR0FfVEhSRVNIT0xEID0gMTAwMDAwMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLWZpbGUtcHJldmlldywgW2Jhby1maWxlLXByZXZpZXddJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtcHJldmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtcHJldmlldy5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tZmlsZS1wcmV2aWV3J1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0ZpbGVQcmV2aWV3Q29tcG9uZW50IHtcbiAgcHVibGljIGdldCBmaWxlKCk6IEZpbGUge1xuICAgIHJldHVybiB0aGlzLl9maWxlO1xuICB9XG4gIC8qKlxuICAgKiBVcGxvYWRlZCBmaWxlIHRvIGRpc3BsYXkgaW4gbGlzdC5cbiAgICovXG4gIEBJbnB1dCgpIHNldCBmaWxlKGY6IEZpbGUpIHtcbiAgICB0aGlzLl9maWxlID0gZjtcbiAgICB0aGlzLnNldEZpbGVEYXRhKCk7XG4gIH1cblxuICAvKipcbiAgICogSXMgZmlsZSBsb2FkaW5nXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaXNMb2FkaW5nID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRydWUgaWYgcHJvamVjdGVkIGNvbnRlbnQgaGFzIG5vIGljb24gYW5kIGZpbGUgZG9lcyBub3QgaGF2ZSBhIHRodW1ibmFpbC5cbiAgICovXG4gIHB1YmxpYyBpbnNlcnRHZW5lcmljSWNvbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyB0aHVtYm5haWxVUkwgPSAnJztcbiAgcHJvdGVjdGVkIF9maWxlOiBGaWxlO1xuICBwcm90ZWN0ZWQgZmlsZVNpemU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgcHJpdmF0ZSBnZXQgbmF0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRGaWxlRGF0YSgpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm1hdFNpemUodGhpcy5fZmlsZS5zaXplKTtcbiAgICB0aGlzLmdldFRodW1ibmFpbCgpO1xuICAgIHRoaXMuc2V0SWNvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRJY29uKCkge1xuICAgIC8vIElmIG5vIGljb24gaXMgaW4gdGhlIHByb2plY3RlZCBjb250ZW50LCBnZW5lcmljIGljb24gaXMgYWRkZWRcbiAgICBjb25zdCBjb250ZW50SWNvbiA9IEFycmF5LmZyb20oXG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4uaXRlbSgwKS5jaGlsZHJlblxuICAgICkuZmluZCgoZWw6IEhUTUxFbGVtZW50KSA9PiBlbC5sb2NhbE5hbWUgPT09ICdiYW8taWNvbicpO1xuICAgIGlmICghY29udGVudEljb24pIHtcbiAgICAgIHRoaXMuaW5zZXJ0R2VuZXJpY0ljb24gPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGNvbnRlbnRJY29uLCAnYmFvLWZpbGUtbWVkaWEnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFRodW1ibmFpbCgpIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLl9maWxlICYmXG4gICAgICAodGhpcy5fZmlsZS50eXBlID09PSAnaW1hZ2UvcG5nJyB8fCB0aGlzLl9maWxlLnR5cGUgPT09ICdpbWFnZS9qcGVnJylcbiAgICApIHtcbiAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICByZWFkZXIub25sb2FkID0gKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy50aHVtYm5haWxVUkwgPSBldmVudC50YXJnZXQucmVzdWx0O1xuICAgICAgfTtcblxuICAgICAgcmVhZGVyLm9uZXJyb3IgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMudGh1bWJuYWlsVVJMID0gJyc7XG4gICAgICB9O1xuICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwodGhpcy5fZmlsZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRTaXplKHNpemU6IG51bWJlcik6IHZvaWQge1xuICAgIGlmIChzaXplID49IEtJTE9fVEhSRVNIT0xEICYmIHNpemUgLyBLSUxPX1RIUkVTSE9MRCA8IEtJTE9fVEhSRVNIT0xEKSB7XG4gICAgICB0aGlzLmZpbGVTaXplID0gdGhpcy5nZXRTaXplQW5kVW5pdChzaXplLCBLSUxPX1RIUkVTSE9MRCwgJ0tvJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHNpemVEaXZpZGVkQnlLb011bHRpcGxpY2F0b3IgPSBzaXplIC8gS0lMT19USFJFU0hPTEQ7XG4gICAgaWYgKHNpemVEaXZpZGVkQnlLb011bHRpcGxpY2F0b3IgPj0gS0lMT19USFJFU0hPTEQpIHtcbiAgICAgIGNvbnN0IHRvRml4ZWQgPSBzaXplRGl2aWRlZEJ5S29NdWx0aXBsaWNhdG9yID4gMTAgPyAwIDogMTtcbiAgICAgIHRoaXMuZmlsZVNpemUgPSB0aGlzLmdldFNpemVBbmRVbml0KHNpemUsIE1FR0FfVEhSRVNIT0xELCAnTW8nLCB0b0ZpeGVkKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5maWxlU2l6ZSA9IGAke3NpemV9IG9jdGV0c2A7XG4gIH1cblxuICBwcml2YXRlIGdldFNpemVBbmRVbml0KFxuICAgIHNpemU6IG51bWJlcixcbiAgICBtdWx0aXBsaWNhdG9yOiBudW1iZXIsXG4gICAgdW5pdDogc3RyaW5nLFxuICAgIHRvRml4ZWQgPSAwXG4gICk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAkeyhzaXplIC8gbXVsdGlwbGljYXRvcikudG9GaXhlZCh0b0ZpeGVkKX0gJHt1bml0fWA7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJiYW8tZmlsZS1pbmZvXCI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImJhby1pY29uXCI+PC9uZy1jb250ZW50PlxuICA8YmFvLWljb25cbiAgICAqbmdJZj1cImluc2VydEdlbmVyaWNJY29uICYmICF0aHVtYm5haWxVUkxcIlxuICAgIGNsYXNzPVwiYmFvLWZpbGUtbWVkaWFcIlxuICAgIHN2Z0ljb249XCJpY29uLWZpbGVcIlxuICA+XG4gIDwvYmFvLWljb24+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0aHVtYm5haWxVUkwgJiYgIWlzTG9hZGluZ1wiPlxuICAgIDxpbWdcbiAgICAgIGNsYXNzPVwiYmFvLWZpbGUtbWVkaWFcIlxuICAgICAgW3NyY109XCJ0aHVtYm5haWxVUkxcIlxuICAgICAgd2lkdGg9XCI0MHB4XCJcbiAgICAgIGhlaWdodD1cIjQwcHhcIlxuICAgIC8+XG4gIDwvbmctY29udGFpbmVyPlxuICA8ZGl2IGNsYXNzPVwiYmFvLWZpbGUtdGV4dFwiPlxuICAgIDxkaXYgY2xhc3M9XCJiYW8tZmlsZS1uYW1lXCI+e3sgX2ZpbGUubmFtZSB9fTwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJiYW8tZmlsZS1zaXplXCI+e3sgZmlsZVNpemUgfX08L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMb2FkaW5nXCI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImJ1dHRvbltiYW8tYnV0dG9uXVwiPjwvbmctY29udGVudD5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYmFvRHJvcGRvd25UcmlnZ2VyRm9yXCI+PC9uZy1jb250ZW50PlxuPC9uZy1jb250YWluZXI+XG48YmFvLWljb25cbiAgKm5nSWY9XCJpc0xvYWRpbmdcIlxuICBjbGFzcz1cImxvYWRpbmctc3Bpbm5lclwiXG4gIHN2Z0ljb249XCJpY29uLXNwaW5uZXJcIlxuICB0aXRsZT1cImNoYXJnZW1lbnRcIlxuPjwvYmFvLWljb24+XG4iXX0=
@@ -1,10 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- export * from './module';
7
- export * from './file-input.component';
8
- export * from './file-preview.component';
9
- export * from './file-intl';
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvZmlsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyNiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5leHBvcnQgKiBmcm9tICcuL21vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZS1wcmV2aWV3LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtaW50bCc7XG4iXX0=
@@ -1,56 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- import { CommonModule } from '@angular/common';
7
- import { NgModule } from '@angular/core';
8
- import { BaoFileInputComponent, BaoFileDropDirective, BaoFileDropzoneIntructions } from './file-input.component';
9
- import { BaoFilePreviewComponent } from './file-preview.component';
10
- import { BAO_FILE_INTL_PROVIDER } from './file-intl';
11
- import { BaoButtonModule } from '../button';
12
- import { BaoIconModule } from '../icon';
13
- import { BaoDropdownMenuModule } from '../dropdown-menu';
14
- import { BaoCommonComponentsModule } from '../common-components';
15
- import * as i0 from "@angular/core";
16
- const FILE_DIRECTIVES = [
17
- BaoFileInputComponent,
18
- BaoFileDropzoneIntructions,
19
- BaoFileDropDirective,
20
- BaoFilePreviewComponent
21
- ];
22
- export class BaoFileModule {
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: BaoFileModule, declarations: [BaoFileInputComponent,
25
- BaoFileDropzoneIntructions,
26
- BaoFileDropDirective,
27
- BaoFilePreviewComponent], imports: [CommonModule,
28
- BaoDropdownMenuModule,
29
- BaoCommonComponentsModule,
30
- BaoIconModule,
31
- BaoButtonModule], exports: [BaoFileInputComponent,
32
- BaoFileDropzoneIntructions,
33
- BaoFileDropDirective,
34
- BaoFilePreviewComponent] }); }
35
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoFileModule, providers: [BAO_FILE_INTL_PROVIDER], imports: [CommonModule,
36
- BaoDropdownMenuModule,
37
- BaoCommonComponentsModule,
38
- BaoIconModule,
39
- BaoButtonModule] }); }
40
- }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoFileModule, decorators: [{
42
- type: NgModule,
43
- args: [{
44
- imports: [
45
- CommonModule,
46
- BaoDropdownMenuModule,
47
- BaoCommonComponentsModule,
48
- BaoIconModule,
49
- BaoButtonModule
50
- ],
51
- declarations: [FILE_DIRECTIVES],
52
- exports: [FILE_DIRECTIVES],
53
- providers: [BAO_FILE_INTL_PROVIDER]
54
- }]
55
- }] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2ZpbGUvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLG9CQUFvQixFQUNwQiwwQkFBMEIsRUFDM0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM1QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUVqRSxNQUFNLGVBQWUsR0FBRztJQUN0QixxQkFBcUI7SUFDckIsMEJBQTBCO0lBQzFCLG9CQUFvQjtJQUNwQix1QkFBdUI7Q0FDeEIsQ0FBQztBQWNGLE1BQU0sT0FBTyxhQUFhOytHQUFiLGFBQWE7Z0hBQWIsYUFBYSxpQkFsQnhCLHFCQUFxQjtZQUNyQiwwQkFBMEI7WUFDMUIsb0JBQW9CO1lBQ3BCLHVCQUF1QixhQUtyQixZQUFZO1lBQ1oscUJBQXFCO1lBQ3JCLHlCQUF5QjtZQUN6QixhQUFhO1lBQ2IsZUFBZSxhQVpqQixxQkFBcUI7WUFDckIsMEJBQTBCO1lBQzFCLG9CQUFvQjtZQUNwQix1QkFBdUI7Z0hBZVosYUFBYSxhQUZiLENBQUMsc0JBQXNCLENBQUMsWUFSakMsWUFBWTtZQUNaLHFCQUFxQjtZQUNyQix5QkFBeUI7WUFDekIsYUFBYTtZQUNiLGVBQWU7OzRGQU1OLGFBQWE7a0JBWnpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1oscUJBQXFCO3dCQUNyQix5QkFBeUI7d0JBQ3pCLGFBQWE7d0JBQ2IsZUFBZTtxQkFDaEI7b0JBQ0QsWUFBWSxFQUFFLENBQUMsZUFBZSxDQUFDO29CQUMvQixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7b0JBQzFCLFNBQVMsRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNwQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjYgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCYW9GaWxlSW5wdXRDb21wb25lbnQsXG4gIEJhb0ZpbGVEcm9wRGlyZWN0aXZlLFxuICBCYW9GaWxlRHJvcHpvbmVJbnRydWN0aW9uc1xufSBmcm9tICcuL2ZpbGUtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEJhb0ZpbGVQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXByZXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEJBT19GSUxFX0lOVExfUFJPVklERVIgfSBmcm9tICcuL2ZpbGUtaW50bCc7XG5pbXBvcnQgeyBCYW9CdXR0b25Nb2R1bGUgfSBmcm9tICcuLi9idXR0b24nO1xuaW1wb3J0IHsgQmFvSWNvbk1vZHVsZSB9IGZyb20gJy4uL2ljb24nO1xuaW1wb3J0IHsgQmFvRHJvcGRvd25NZW51TW9kdWxlIH0gZnJvbSAnLi4vZHJvcGRvd24tbWVudSc7XG5pbXBvcnQgeyBCYW9Db21tb25Db21wb25lbnRzTW9kdWxlIH0gZnJvbSAnLi4vY29tbW9uLWNvbXBvbmVudHMnO1xuXG5jb25zdCBGSUxFX0RJUkVDVElWRVMgPSBbXG4gIEJhb0ZpbGVJbnB1dENvbXBvbmVudCxcbiAgQmFvRmlsZURyb3B6b25lSW50cnVjdGlvbnMsXG4gIEJhb0ZpbGVEcm9wRGlyZWN0aXZlLFxuICBCYW9GaWxlUHJldmlld0NvbXBvbmVudFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCYW9Ecm9wZG93bk1lbnVNb2R1bGUsXG4gICAgQmFvQ29tbW9uQ29tcG9uZW50c01vZHVsZSxcbiAgICBCYW9JY29uTW9kdWxlLFxuICAgIEJhb0J1dHRvbk1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtGSUxFX0RJUkVDVElWRVNdLFxuICBleHBvcnRzOiBbRklMRV9ESVJFQ1RJVkVTXSxcbiAgcHJvdmlkZXJzOiBbQkFPX0ZJTEVfSU5UTF9QUk9WSURFUl1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRmlsZU1vZHVsZSB7fVxuIl19
@@ -1,104 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- import { ChangeDetectionStrategy, Component, Directive, Input, ViewEncapsulation } from '@angular/core';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common";
9
- /**
10
- * A basic content container component that adds the styles of a BAO header-info
11
- *
12
- * While this component can be used alone, it also provides a number
13
- * of preset styles for common header-info sections, including:
14
- * - bao-header-info-title-group
15
- * - bao-header-info-content
16
- * - bao-header-info-title
17
- * - bao-header-info-surtitle
18
- * - bao-header-info-subtitle
19
- */
20
- export class BaoHeaderInfoComponent {
21
- constructor() {
22
- this.notch = '';
23
- this.imageUrl = '';
24
- this.brandBorder = false;
25
- }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: BaoHeaderInfoComponent, selector: "bao-header-info", inputs: { notch: "notch", imageUrl: "imageUrl", brandBorder: "brandBorder" }, host: { properties: { "class.document-heading-left-notch": "notch === \"left\"" }, classAttribute: "bao-document-heading" }, ngImport: i0, template: "<div *ngIf=\"imageUrl\" class=\"document-heading-image-container\">\n <div\n [ngStyle]=\"{\n 'background-image': 'url(\\'' + imageUrl + '\\')'}\"\n class=\"document-heading-background\"\n ></div>\n</div>\n\n<div class=\"bao-container document-heading-header-container\">\n <div class=\"bao-row document-heading-header\">\n <div class=\"bao-col-12 bao-col-lg-7\">\n <ng-content select=\"bao-header-info-title-group\"></ng-content>\n <div class=\"bao-header-content\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"brandBorder\" class=\"brand-border-bottom\"></div>\n </div>\n </div>\n <div *ngIf=\"notch\" class=\"document-heading-wrapper notch\">\n <div class=\"document-heading-content-wrapper\">\n <div class=\"document-heading-content\"></div>\n </div>\n </div>\n</div>\n", styles: [".bao-container{padding-right:16px;padding-left:16px;margin-right:auto;margin-left:auto;width:100%}@media (min-width: 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-header-info-title-group,.bao-header-info-content,.document-heading-subtitle,.document-heading-surtitle{display:block}.document-heading-header-container{position:relative!important}.bao-document-heading{display:block;padding:2rem 0;position:relative;width:100%}.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2rem;line-height:2.5rem;margin-bottom:0}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1rem;line-height:1.5rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1rem;line-height:1.5rem;color:#000}.bao-document-heading .bao-header-info-title-group>*:not(:first-child){margin-top:1rem}.bao-document-heading .bao-header-content:not(:empty){margin-top:2rem}.bao-document-heading .brand-border-bottom{margin-top:2rem}.bao-document-heading .document-heading-background{background-color:#f8f9fa;background-position:center center;background-repeat:no-repeat;background-size:cover;height:100%;overflow:hidden;position:absolute;top:0;width:100%;z-index:0}.bao-document-heading .document-heading-content{background-color:#fff;height:2rem;padding-left:1rem;padding-right:1rem;position:relative;bottom:-2rem}@media (min-width: 768px){.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2.5rem;line-height:3.5rem}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1.25rem;line-height:1.75rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1.25rem;line-height:1.75rem;color:#000}}@media (min-width: 992px){.bao-document-heading{padding-top:4rem;padding-bottom:4rem}.bao-document-heading .document-heading-content{bottom:-4rem;height:3.5rem;margin:auto}.bao-document-heading.document-heading-left-notch .document-heading-content{max-width:66.66667%;margin:0}.bao-document-heading.document-heading-left-notch .document-heading-content:before{content:\"\";background:#fff;width:1000px;height:100%;position:absolute;left:-1000px}.bao-document-heading.document-heading-left-notch .document-heading-content:after{content:\"\";background:#fff;width:1rem;height:100%;position:absolute}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
28
- }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoComponent, decorators: [{
30
- type: Component,
31
- args: [{ selector: 'bao-header-info', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
32
- class: 'bao-document-heading',
33
- '[class.document-heading-left-notch]': 'notch === "left"'
34
- }, template: "<div *ngIf=\"imageUrl\" class=\"document-heading-image-container\">\n <div\n [ngStyle]=\"{\n 'background-image': 'url(\\'' + imageUrl + '\\')'}\"\n class=\"document-heading-background\"\n ></div>\n</div>\n\n<div class=\"bao-container document-heading-header-container\">\n <div class=\"bao-row document-heading-header\">\n <div class=\"bao-col-12 bao-col-lg-7\">\n <ng-content select=\"bao-header-info-title-group\"></ng-content>\n <div class=\"bao-header-content\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"brandBorder\" class=\"brand-border-bottom\"></div>\n </div>\n </div>\n <div *ngIf=\"notch\" class=\"document-heading-wrapper notch\">\n <div class=\"document-heading-content-wrapper\">\n <div class=\"document-heading-content\"></div>\n </div>\n </div>\n</div>\n", styles: [".bao-container{padding-right:16px;padding-left:16px;margin-right:auto;margin-left:auto;width:100%}@media (min-width: 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-header-info-title-group,.bao-header-info-content,.document-heading-subtitle,.document-heading-surtitle{display:block}.document-heading-header-container{position:relative!important}.bao-document-heading{display:block;padding:2rem 0;position:relative;width:100%}.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2rem;line-height:2.5rem;margin-bottom:0}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1rem;line-height:1.5rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1rem;line-height:1.5rem;color:#000}.bao-document-heading .bao-header-info-title-group>*:not(:first-child){margin-top:1rem}.bao-document-heading .bao-header-content:not(:empty){margin-top:2rem}.bao-document-heading .brand-border-bottom{margin-top:2rem}.bao-document-heading .document-heading-background{background-color:#f8f9fa;background-position:center center;background-repeat:no-repeat;background-size:cover;height:100%;overflow:hidden;position:absolute;top:0;width:100%;z-index:0}.bao-document-heading .document-heading-content{background-color:#fff;height:2rem;padding-left:1rem;padding-right:1rem;position:relative;bottom:-2rem}@media (min-width: 768px){.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2.5rem;line-height:3.5rem}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1.25rem;line-height:1.75rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1.25rem;line-height:1.75rem;color:#000}}@media (min-width: 992px){.bao-document-heading{padding-top:4rem;padding-bottom:4rem}.bao-document-heading .document-heading-content{bottom:-4rem;height:3.5rem;margin:auto}.bao-document-heading.document-heading-left-notch .document-heading-content{max-width:66.66667%;margin:0}.bao-document-heading.document-heading-left-notch .document-heading-content:before{content:\"\";background:#fff;width:1000px;height:100%;position:absolute;left:-1000px}.bao-document-heading.document-heading-left-notch .document-heading-content:after{content:\"\";background:#fff;width:1rem;height:100%;position:absolute}}\n"] }]
35
- }], propDecorators: { notch: [{
36
- type: Input
37
- }], imageUrl: [{
38
- type: Input
39
- }], brandBorder: [{
40
- type: Input
41
- }] } });
42
- export class BaoHeaderInfoTitleGroupComponent {
43
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoTitleGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: BaoHeaderInfoTitleGroupComponent, selector: "bao-header-info-title-group", host: { classAttribute: "bao-header-info-title-group" }, ngImport: i0, template: "<ng-content></ng-content>\n<ng-content\n select=\"bao-header-surtitle, [bao-header-surtitle], [baoHeaderSurtitle], \n bao-header-title, [bao-header-title], [baoHeaderTitle],\n bao-header-subtitle, [bao-header-subtitle], [baoHeaderSubtitle]\"\n></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
45
- }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoTitleGroupComponent, decorators: [{
47
- type: Component,
48
- args: [{ selector: 'bao-header-info-title-group', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
49
- class: 'bao-header-info-title-group'
50
- }, template: "<ng-content></ng-content>\n<ng-content\n select=\"bao-header-surtitle, [bao-header-surtitle], [baoHeaderSurtitle], \n bao-header-title, [bao-header-title], [baoHeaderTitle],\n bao-header-subtitle, [bao-header-subtitle], [baoHeaderSubtitle]\"\n></ng-content>\n" }]
51
- }] });
52
- export class BaoHeaderInfoContent {
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
54
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: BaoHeaderInfoContent, selector: "bao-header-info-content", host: { classAttribute: "bao-header-info-content" }, ngImport: i0 }); }
55
- }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoContent, decorators: [{
57
- type: Directive,
58
- args: [{
59
- selector: 'bao-header-info-content',
60
- host: {
61
- class: 'bao-header-info-content'
62
- }
63
- }]
64
- }] });
65
- export class BaoHeaderInfoSurtitle {
66
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoSurtitle, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
67
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: BaoHeaderInfoSurtitle, selector: "bao-header-info-surtitle, [bao-header-info-surtitle], [baoHeaderInfoSurtitle]", host: { classAttribute: "document-heading-surtitle" }, ngImport: i0 }); }
68
- }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoSurtitle, decorators: [{
70
- type: Directive,
71
- args: [{
72
- selector: 'bao-header-info-surtitle, [bao-header-info-surtitle], [baoHeaderInfoSurtitle]',
73
- host: {
74
- class: 'document-heading-surtitle'
75
- }
76
- }]
77
- }] });
78
- export class BaoHeaderInfoSubtitle {
79
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoSubtitle, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
80
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: BaoHeaderInfoSubtitle, selector: "bao-header-info-subtitle, [bao-header-info-subtitle], [baoHeaderInfoSubtitle]", host: { classAttribute: "document-heading-subtitle" }, ngImport: i0 }); }
81
- }
82
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoSubtitle, decorators: [{
83
- type: Directive,
84
- args: [{
85
- selector: 'bao-header-info-subtitle, [bao-header-info-subtitle], [baoHeaderInfoSubtitle]',
86
- host: {
87
- class: 'document-heading-subtitle'
88
- }
89
- }]
90
- }] });
91
- export class BaoHeaderInfoTitle {
92
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
93
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: BaoHeaderInfoTitle, selector: "bao-header-info-title, [bao-header-info-title], [baoHeaderInfoTitle]", host: { classAttribute: "document-heading-title" }, ngImport: i0 }); }
94
- }
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoTitle, decorators: [{
96
- type: Directive,
97
- args: [{
98
- selector: 'bao-header-info-title, [bao-header-info-title], [baoHeaderInfoTitle]',
99
- host: {
100
- class: 'document-heading-title'
101
- }
102
- }]
103
- }] });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL2hlYWRlci1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9oZWFkZXItaW5mby9oZWFkZXItaW5mby5odG1sIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL2hlYWRlci1pbmZvLXRpdGxlLWdyb3VwLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7QUFFdkI7Ozs7Ozs7Ozs7R0FVRztBQVlILE1BQU0sT0FBTyxzQkFBc0I7SUFYbkM7UUFZa0IsVUFBSyxHQUEyQixFQUFFLENBQUM7UUFDbkMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGdCQUFXLEdBQUcsS0FBSyxDQUFDO0tBQ3JDOytHQUpZLHNCQUFzQjttR0FBdEIsc0JBQXNCLGtRQ25DbkMsMjBCQXdCQTs7NEZEV2Esc0JBQXNCO2tCQVhsQyxTQUFTOytCQUNFLGlCQUFpQixpQkFHWixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxzQkFBc0I7d0JBQzdCLHFDQUFxQyxFQUFFLGtCQUFrQjtxQkFDMUQ7OEJBR2UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7O0FBWVIsTUFBTSxPQUFPLGdDQUFnQzsrR0FBaEMsZ0NBQWdDO21HQUFoQyxnQ0FBZ0MsNEhFbEQ3Qyx3UUFNQTs7NEZGNENhLGdDQUFnQztrQkFUNUMsU0FBUzsrQkFDRSw2QkFBNkIsaUJBRXhCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osS0FBSyxFQUFFLDZCQUE2QjtxQkFDckM7O0FBVUgsTUFBTSxPQUFPLG9CQUFvQjsrR0FBcEIsb0JBQW9CO21HQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBTmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSx5QkFBeUI7cUJBQ2pDO2lCQUNGOztBQVVELE1BQU0sT0FBTyxxQkFBcUI7K0dBQXJCLHFCQUFxQjttR0FBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQVBqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFDTiwrRUFBK0U7b0JBQ2pGLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsMkJBQTJCO3FCQUNuQztpQkFDRjs7QUFVRCxNQUFNLE9BQU8scUJBQXFCOytHQUFyQixxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFQakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQ04sK0VBQStFO29CQUNqRixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLDJCQUEyQjtxQkFDbkM7aUJBQ0Y7O0FBVUQsTUFBTSxPQUFPLGtCQUFrQjsrR0FBbEIsa0JBQWtCO21HQUFsQixrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBUDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUNOLHNFQUFzRTtvQkFDeEUsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSx3QkFBd0I7cUJBQ2hDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyNiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBBIGJhc2ljIGNvbnRlbnQgY29udGFpbmVyIGNvbXBvbmVudCB0aGF0IGFkZHMgdGhlIHN0eWxlcyBvZiBhIEJBTyBoZWFkZXItaW5mb1xuICpcbiAqIFdoaWxlIHRoaXMgY29tcG9uZW50IGNhbiBiZSB1c2VkIGFsb25lLCBpdCBhbHNvIHByb3ZpZGVzIGEgbnVtYmVyXG4gKiBvZiBwcmVzZXQgc3R5bGVzIGZvciBjb21tb24gaGVhZGVyLWluZm8gc2VjdGlvbnMsIGluY2x1ZGluZzpcbiAqIC0gYmFvLWhlYWRlci1pbmZvLXRpdGxlLWdyb3VwXG4gKiAtIGJhby1oZWFkZXItaW5mby1jb250ZW50XG4gKiAtIGJhby1oZWFkZXItaW5mby10aXRsZVxuICogLSBiYW8taGVhZGVyLWluZm8tc3VydGl0bGVcbiAqIC0gYmFvLWhlYWRlci1pbmZvLXN1YnRpdGxlXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Jhby1oZWFkZXItaW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnaGVhZGVyLWluZm8uaHRtbCcsXG4gIHN0eWxlVXJsczogWydoZWFkZXItaW5mby5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tZG9jdW1lbnQtaGVhZGluZycsXG4gICAgJ1tjbGFzcy5kb2N1bWVudC1oZWFkaW5nLWxlZnQtbm90Y2hdJzogJ25vdGNoID09PSBcImxlZnRcIidcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIG5vdGNoOiAnJyB8ICdsZWZ0JyB8ICdjZW50ZXInID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbWFnZVVybCA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgYnJhbmRCb3JkZXIgPSBmYWxzZTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLWhlYWRlci1pbmZvLXRpdGxlLWdyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICdoZWFkZXItaW5mby10aXRsZS1ncm91cC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1oZWFkZXItaW5mby10aXRsZS1ncm91cCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvVGl0bGVHcm91cENvbXBvbmVudCB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdiYW8taGVhZGVyLWluZm8tY29udGVudCcsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1oZWFkZXItaW5mby1jb250ZW50J1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0hlYWRlckluZm9Db250ZW50IHt9XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnYmFvLWhlYWRlci1pbmZvLXN1cnRpdGxlLCBbYmFvLWhlYWRlci1pbmZvLXN1cnRpdGxlXSwgW2Jhb0hlYWRlckluZm9TdXJ0aXRsZV0nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdkb2N1bWVudC1oZWFkaW5nLXN1cnRpdGxlJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0hlYWRlckluZm9TdXJ0aXRsZSB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1oZWFkZXItaW5mby1zdWJ0aXRsZSwgW2Jhby1oZWFkZXItaW5mby1zdWJ0aXRsZV0sIFtiYW9IZWFkZXJJbmZvU3VidGl0bGVdJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZG9jdW1lbnQtaGVhZGluZy1zdWJ0aXRsZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvU3VidGl0bGUge31cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOlxuICAgICdiYW8taGVhZGVyLWluZm8tdGl0bGUsIFtiYW8taGVhZGVyLWluZm8tdGl0bGVdLCBbYmFvSGVhZGVySW5mb1RpdGxlXScsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2RvY3VtZW50LWhlYWRpbmctdGl0bGUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvSGVhZGVySW5mb1RpdGxlIHt9XG4iLCI8ZGl2ICpuZ0lmPVwiaW1hZ2VVcmxcIiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctaW1hZ2UtY29udGFpbmVyXCI+XG4gIDxkaXZcbiAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAnYmFja2dyb3VuZC1pbWFnZSc6ICd1cmwoXFwnJyArIGltYWdlVXJsICsgJ1xcJyknfVwiXG4gICAgY2xhc3M9XCJkb2N1bWVudC1oZWFkaW5nLWJhY2tncm91bmRcIlxuICA+PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImJhby1jb250YWluZXIgZG9jdW1lbnQtaGVhZGluZy1oZWFkZXItY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJiYW8tcm93IGRvY3VtZW50LWhlYWRpbmctaGVhZGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImJhby1jb2wtMTIgYmFvLWNvbC1sZy03XCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJiYW8taGVhZGVyLWluZm8tdGl0bGUtZ3JvdXBcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGNsYXNzPVwiYmFvLWhlYWRlci1jb250ZW50XCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImJyYW5kQm9yZGVyXCIgY2xhc3M9XCJicmFuZC1ib3JkZXItYm90dG9tXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibm90Y2hcIiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctd3JhcHBlciBub3RjaFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkb2N1bWVudC1oZWFkaW5nLWNvbnRlbnQtd3JhcHBlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctY29udGVudFwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPG5nLWNvbnRlbnRcbiAgc2VsZWN0PVwiYmFvLWhlYWRlci1zdXJ0aXRsZSwgW2Jhby1oZWFkZXItc3VydGl0bGVdLCBbYmFvSGVhZGVyU3VydGl0bGVdLCBcbiAgYmFvLWhlYWRlci10aXRsZSwgW2Jhby1oZWFkZXItdGl0bGVdLCBbYmFvSGVhZGVyVGl0bGVdLFxuICBiYW8taGVhZGVyLXN1YnRpdGxlLCBbYmFvLWhlYWRlci1zdWJ0aXRsZV0sIFtiYW9IZWFkZXJTdWJ0aXRsZV1cIlxuPjwvbmctY29udGVudD5cbiJdfQ==
@@ -1,8 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- export * from './module';
7
- export * from './header-info.component';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvaGVhZGVyLWluZm8vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDI2IFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vaGVhZGVyLWluZm8uY29tcG9uZW50JztcbiJdfQ==
@@ -1,41 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- import { CommonModule } from '@angular/common';
7
- import { NgModule } from '@angular/core';
8
- import { BaoHeaderInfoComponent, BaoHeaderInfoContent, BaoHeaderInfoSubtitle, BaoHeaderInfoSurtitle, BaoHeaderInfoTitle, BaoHeaderInfoTitleGroupComponent } from './header-info.component';
9
- import * as i0 from "@angular/core";
10
- const DIRECTIVES = [
11
- BaoHeaderInfoComponent,
12
- BaoHeaderInfoContent,
13
- BaoHeaderInfoTitleGroupComponent,
14
- BaoHeaderInfoSubtitle,
15
- BaoHeaderInfoSurtitle,
16
- BaoHeaderInfoTitle
17
- ];
18
- export class BaoHeaderInfoModule {
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
20
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoModule, declarations: [BaoHeaderInfoComponent,
21
- BaoHeaderInfoContent,
22
- BaoHeaderInfoTitleGroupComponent,
23
- BaoHeaderInfoSubtitle,
24
- BaoHeaderInfoSurtitle,
25
- BaoHeaderInfoTitle], imports: [CommonModule], exports: [BaoHeaderInfoComponent,
26
- BaoHeaderInfoContent,
27
- BaoHeaderInfoTitleGroupComponent,
28
- BaoHeaderInfoSubtitle,
29
- BaoHeaderInfoSurtitle,
30
- BaoHeaderInfoTitle] }); }
31
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoModule, imports: [CommonModule] }); }
32
- }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHeaderInfoModule, decorators: [{
34
- type: NgModule,
35
- args: [{
36
- imports: [CommonModule],
37
- declarations: DIRECTIVES,
38
- exports: DIRECTIVES
39
- }]
40
- }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLHNCQUFzQixFQUN0QixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQixrQkFBa0IsRUFDbEIsZ0NBQWdDLEVBQ2pDLE1BQU0seUJBQXlCLENBQUM7O0FBRWpDLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLHNCQUFzQjtJQUN0QixvQkFBb0I7SUFDcEIsZ0NBQWdDO0lBQ2hDLHFCQUFxQjtJQUNyQixxQkFBcUI7SUFDckIsa0JBQWtCO0NBQ25CLENBQUM7QUFPRixNQUFNLE9BQU8sbUJBQW1COytHQUFuQixtQkFBbUI7Z0hBQW5CLG1CQUFtQixpQkFiOUIsc0JBQXNCO1lBQ3RCLG9CQUFvQjtZQUNwQixnQ0FBZ0M7WUFDaEMscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixrQkFBa0IsYUFJUixZQUFZLGFBVHRCLHNCQUFzQjtZQUN0QixvQkFBb0I7WUFDcEIsZ0NBQWdDO1lBQ2hDLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsa0JBQWtCO2dIQVFQLG1CQUFtQixZQUpwQixZQUFZOzs0RkFJWCxtQkFBbUI7a0JBTC9CLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsVUFBVTtvQkFDeEIsT0FBTyxFQUFFLFVBQVU7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyNiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJhb0hlYWRlckluZm9Db21wb25lbnQsXG4gIEJhb0hlYWRlckluZm9Db250ZW50LFxuICBCYW9IZWFkZXJJbmZvU3VidGl0bGUsXG4gIEJhb0hlYWRlckluZm9TdXJ0aXRsZSxcbiAgQmFvSGVhZGVySW5mb1RpdGxlLFxuICBCYW9IZWFkZXJJbmZvVGl0bGVHcm91cENvbXBvbmVudFxufSBmcm9tICcuL2hlYWRlci1pbmZvLmNvbXBvbmVudCc7XG5cbmNvbnN0IERJUkVDVElWRVMgPSBbXG4gIEJhb0hlYWRlckluZm9Db21wb25lbnQsXG4gIEJhb0hlYWRlckluZm9Db250ZW50LFxuICBCYW9IZWFkZXJJbmZvVGl0bGVHcm91cENvbXBvbmVudCxcbiAgQmFvSGVhZGVySW5mb1N1YnRpdGxlLFxuICBCYW9IZWFkZXJJbmZvU3VydGl0bGUsXG4gIEJhb0hlYWRlckluZm9UaXRsZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogRElSRUNUSVZFUyxcbiAgZXhwb3J0czogRElSRUNUSVZFU1xufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvTW9kdWxlIHt9XG4iXX0=
@@ -1,84 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- import { Component, Input, ViewEncapsulation } from '@angular/core';
7
- import * as i0 from "@angular/core";
8
- const BAO_ICON = 'bao-icon';
9
- const LINK_ELEMENT = 'a';
10
- const HAS_LEFT_ICON = 'has-left-icon';
11
- const HAS_RIGHT_ICON = 'has-right-icon';
12
- const LIST_PARENT = 'bao-hyperlink-list-parent';
13
- export class BaoHyperlinkComponent {
14
- constructor(renderer, elementRef) {
15
- this.renderer = renderer;
16
- this.elementRef = elementRef;
17
- /**
18
- * Size of the link when it's in a list.
19
- */
20
- this.size = 'medium';
21
- }
22
- get nativeElement() {
23
- return this.elementRef.nativeElement;
24
- }
25
- ngAfterViewInit() {
26
- this.setIcon();
27
- this.addIconClass();
28
- this.addTabIndex();
29
- }
30
- addTabIndex() {
31
- if (!this.nativeElement)
32
- return;
33
- const anchorElement = Array.from(this.nativeElement.children).find(el => el.localName === 'a');
34
- if (!anchorElement)
35
- return;
36
- this.renderer.setAttribute(anchorElement, 'tabIndex', '0');
37
- }
38
- setIcon() {
39
- const parentName = this.nativeElement.parentElement.localName;
40
- if (parentName === 'ul') {
41
- this.renderer.addClass(this.nativeElement.parentElement, LIST_PARENT);
42
- }
43
- else {
44
- // Icon in inline hyperlink must always be positioned after label.
45
- const children = Array.from(this.nativeElement.children);
46
- const iconIndex = children.findIndex(c => c.localName === BAO_ICON);
47
- if (iconIndex > -1) {
48
- const labelIndex = children.findIndex(c => c.localName === LINK_ELEMENT);
49
- // Set icon's size to match text's lineHeight.
50
- const lineHeight = getComputedStyle(children[labelIndex])['lineHeight'];
51
- this.renderer.setStyle(children[iconIndex], 'height', lineHeight);
52
- this.renderer.setStyle(children[iconIndex], 'width', lineHeight);
53
- if (iconIndex < labelIndex) {
54
- const iconElement = children[iconIndex];
55
- this.renderer.removeChild(this.nativeElement, children[iconIndex]);
56
- this.renderer.appendChild(this.nativeElement, iconElement);
57
- }
58
- }
59
- }
60
- }
61
- addIconClass() {
62
- const children = Array.from(this.nativeElement.children);
63
- const iconIndex = children.findIndex(c => c.localName === BAO_ICON);
64
- if (iconIndex > -1) {
65
- const labelIndex = children.findIndex(c => c.localName === LINK_ELEMENT);
66
- const iconClass = iconIndex < labelIndex ? HAS_LEFT_ICON : HAS_RIGHT_ICON;
67
- this.renderer.addClass(this.nativeElement, iconClass);
68
- }
69
- }
70
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHyperlinkComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
71
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: BaoHyperlinkComponent, selector: "bao-hyperlink, [bao-hyperlink]", inputs: { size: "size" }, host: { properties: { "class.bao-hyperlink-medium": "size === \"medium\"", "class.bao-hyperlink-small": "size === \"small\"", "class.bao-hyperlink-extra-small": "size === \"extra-small\"" }, classAttribute: "bao-hyperlink" }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".bao-hyperlink:not(li){display:inline-flex;font-size:inherit;line-height:inherit}.bao-hyperlink:not(li)>a{box-shadow:inset 0 -1px #097d6c;text-decoration:none;border-bottom:none;font-size:inherit}li.bao-hyperlink{display:flex}li.bao-hyperlink>a{text-decoration:none;border-bottom:none}li.bao-hyperlink>a:hover{box-shadow:inset 0 -1px #097d6c}li.bao-hyperlink.bao-hyperlink-extra-small a{font-weight:700;font-size:.75rem;line-height:1rem}li.bao-hyperlink.bao-hyperlink-extra-small .bao-icon{height:1rem;width:1rem}li.bao-hyperlink.bao-hyperlink-small a{font-weight:700;font-size:.875rem;line-height:1.25rem}li.bao-hyperlink.bao-hyperlink-small .bao-icon{height:1.25rem;width:1.25rem}li.bao-hyperlink.bao-hyperlink-medium a{font-weight:700;font-size:1rem;line-height:1.5rem}li.bao-hyperlink.bao-hyperlink-medium .bao-icon{height:1.5rem;width:1.5rem}.bao-hyperlink{align-items:center}.bao-hyperlink>.bao-icon{color:#097d6c;flex-shrink:0}.bao-hyperlink.has-right-icon>.bao-icon{margin-left:.25rem}.bao-hyperlink.has-left-icon>.bao-icon{margin-right:.5rem}ul.bao-hyperlink-list-parent{list-style-type:none}\n"], encapsulation: i0.ViewEncapsulation.None }); }
72
- }
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHyperlinkComponent, decorators: [{
74
- type: Component,
75
- args: [{ selector: 'bao-hyperlink, [bao-hyperlink]', encapsulation: ViewEncapsulation.None, host: {
76
- class: 'bao-hyperlink',
77
- '[class.bao-hyperlink-medium]': 'size === "medium"',
78
- '[class.bao-hyperlink-small]': 'size === "small"',
79
- '[class.bao-hyperlink-extra-small]': 'size === "extra-small"'
80
- }, template: "<ng-content></ng-content>\n", styles: [".bao-hyperlink:not(li){display:inline-flex;font-size:inherit;line-height:inherit}.bao-hyperlink:not(li)>a{box-shadow:inset 0 -1px #097d6c;text-decoration:none;border-bottom:none;font-size:inherit}li.bao-hyperlink{display:flex}li.bao-hyperlink>a{text-decoration:none;border-bottom:none}li.bao-hyperlink>a:hover{box-shadow:inset 0 -1px #097d6c}li.bao-hyperlink.bao-hyperlink-extra-small a{font-weight:700;font-size:.75rem;line-height:1rem}li.bao-hyperlink.bao-hyperlink-extra-small .bao-icon{height:1rem;width:1rem}li.bao-hyperlink.bao-hyperlink-small a{font-weight:700;font-size:.875rem;line-height:1.25rem}li.bao-hyperlink.bao-hyperlink-small .bao-icon{height:1.25rem;width:1.25rem}li.bao-hyperlink.bao-hyperlink-medium a{font-weight:700;font-size:1rem;line-height:1.5rem}li.bao-hyperlink.bao-hyperlink-medium .bao-icon{height:1.5rem;width:1.5rem}.bao-hyperlink{align-items:center}.bao-hyperlink>.bao-icon{color:#097d6c;flex-shrink:0}.bao-hyperlink.has-right-icon>.bao-icon{margin-left:.25rem}.bao-hyperlink.has-left-icon>.bao-icon{margin-right:.5rem}ul.bao-hyperlink-list-parent{list-style-type:none}\n"] }]
81
- }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { size: [{
82
- type: Input
83
- }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHlwZXJsaW5rLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9oeXBlcmxpbmsvaHlwZXJsaW5rLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9oeXBlcmxpbmsvaHlwZXJsaW5rLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBRUwsU0FBUyxFQUVULEtBQUssRUFFTCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7O0FBRXZCLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQztBQUM1QixNQUFNLFlBQVksR0FBRyxHQUFHLENBQUM7QUFDekIsTUFBTSxhQUFhLEdBQUcsZUFBZSxDQUFDO0FBQ3RDLE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDO0FBQ3hDLE1BQU0sV0FBVyxHQUFHLDJCQUEyQixDQUFDO0FBY2hELE1BQU0sT0FBTyxxQkFBcUI7SUFNaEMsWUFDVSxRQUFtQixFQUNuQixVQUFtQztRQURuQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBUDdDOztXQUVHO1FBQ2EsU0FBSSxHQUF3QyxRQUFRLENBQUM7SUFLbEUsQ0FBQztJQUVKLElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7SUFDdkMsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWE7WUFBRSxPQUFPO1FBQ2hDLE1BQU0sYUFBYSxHQUFHLEtBQUss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QUFDOytHQS9EVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixrVUNqQ2xDLDZCQUNBOzs0RkRnQ2EscUJBQXFCO2tCQVpqQyxTQUFTOytCQUNFLGdDQUFnQyxpQkFHM0IsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixLQUFLLEVBQUUsZUFBZTt3QkFDdEIsOEJBQThCLEVBQUUsbUJBQW1CO3dCQUNuRCw2QkFBNkIsRUFBRSxrQkFBa0I7d0JBQ2pELG1DQUFtQyxFQUFFLHdCQUF3QjtxQkFDOUQ7dUdBTWUsSUFBSTtzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjYgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5jb25zdCBCQU9fSUNPTiA9ICdiYW8taWNvbic7XG5jb25zdCBMSU5LX0VMRU1FTlQgPSAnYSc7XG5jb25zdCBIQVNfTEVGVF9JQ09OID0gJ2hhcy1sZWZ0LWljb24nO1xuY29uc3QgSEFTX1JJR0hUX0lDT04gPSAnaGFzLXJpZ2h0LWljb24nO1xuY29uc3QgTElTVF9QQVJFTlQgPSAnYmFvLWh5cGVybGluay1saXN0LXBhcmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Jhby1oeXBlcmxpbmssIFtiYW8taHlwZXJsaW5rXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9oeXBlcmxpbmsuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oeXBlcmxpbmsuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYmFvLWh5cGVybGluaycsXG4gICAgJ1tjbGFzcy5iYW8taHlwZXJsaW5rLW1lZGl1bV0nOiAnc2l6ZSA9PT0gXCJtZWRpdW1cIicsXG4gICAgJ1tjbGFzcy5iYW8taHlwZXJsaW5rLXNtYWxsXSc6ICdzaXplID09PSBcInNtYWxsXCInLFxuICAgICdbY2xhc3MuYmFvLWh5cGVybGluay1leHRyYS1zbWFsbF0nOiAnc2l6ZSA9PT0gXCJleHRyYS1zbWFsbFwiJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0h5cGVybGlua0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAvKipcbiAgICogU2l6ZSBvZiB0aGUgbGluayB3aGVuIGl0J3MgaW4gYSBsaXN0LlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHNpemU/OiAnZXh0cmEtc21hbGwnIHwgJ3NtYWxsJyB8ICdtZWRpdW0nID0gJ21lZGl1bSc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7fVxuXG4gIGdldCBuYXRpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuc2V0SWNvbigpO1xuICAgIHRoaXMuYWRkSWNvbkNsYXNzKCk7XG4gICAgdGhpcy5hZGRUYWJJbmRleCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRUYWJJbmRleCgpIHtcbiAgICBpZiAoIXRoaXMubmF0aXZlRWxlbWVudCkgcmV0dXJuO1xuICAgIGNvbnN0IGFuY2hvckVsZW1lbnQgPSBBcnJheS5mcm9tKHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZHJlbikuZmluZChcbiAgICAgIGVsID0+IGVsLmxvY2FsTmFtZSA9PT0gJ2EnXG4gICAgKTtcbiAgICBpZiAoIWFuY2hvckVsZW1lbnQpIHJldHVybjtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShhbmNob3JFbGVtZW50LCAndGFiSW5kZXgnLCAnMCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRJY29uKCkge1xuICAgIGNvbnN0IHBhcmVudE5hbWUgPSB0aGlzLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5sb2NhbE5hbWU7XG4gICAgaWYgKHBhcmVudE5hbWUgPT09ICd1bCcpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQsIExJU1RfUEFSRU5UKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gSWNvbiBpbiBpbmxpbmUgaHlwZXJsaW5rIG11c3QgYWx3YXlzIGJlIHBvc2l0aW9uZWQgYWZ0ZXIgbGFiZWwuXG4gICAgICBjb25zdCBjaGlsZHJlbiA9IEFycmF5LmZyb20odGhpcy5uYXRpdmVFbGVtZW50LmNoaWxkcmVuKTtcbiAgICAgIGNvbnN0IGljb25JbmRleCA9IGNoaWxkcmVuLmZpbmRJbmRleChjID0+IGMubG9jYWxOYW1lID09PSBCQU9fSUNPTik7XG4gICAgICBpZiAoaWNvbkluZGV4ID4gLTEpIHtcbiAgICAgICAgY29uc3QgbGFiZWxJbmRleCA9IGNoaWxkcmVuLmZpbmRJbmRleChcbiAgICAgICAgICBjID0+IGMubG9jYWxOYW1lID09PSBMSU5LX0VMRU1FTlRcbiAgICAgICAgKTtcbiAgICAgICAgLy8gU2V0IGljb24ncyBzaXplIHRvIG1hdGNoIHRleHQncyBsaW5lSGVpZ2h0LlxuICAgICAgICBjb25zdCBsaW5lSGVpZ2h0ID0gZ2V0Q29tcHV0ZWRTdHlsZShjaGlsZHJlbltsYWJlbEluZGV4XSlbJ2xpbmVIZWlnaHQnXTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShjaGlsZHJlbltpY29uSW5kZXhdLCAnaGVpZ2h0JywgbGluZUhlaWdodCk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoY2hpbGRyZW5baWNvbkluZGV4XSwgJ3dpZHRoJywgbGluZUhlaWdodCk7XG4gICAgICAgIGlmIChpY29uSW5kZXggPCBsYWJlbEluZGV4KSB7XG4gICAgICAgICAgY29uc3QgaWNvbkVsZW1lbnQgPSBjaGlsZHJlbltpY29uSW5kZXhdO1xuICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5uYXRpdmVFbGVtZW50LCBjaGlsZHJlbltpY29uSW5kZXhdKTtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMubmF0aXZlRWxlbWVudCwgaWNvbkVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRJY29uQ2xhc3MoKSB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSBBcnJheS5mcm9tKHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZHJlbik7XG4gICAgY29uc3QgaWNvbkluZGV4ID0gY2hpbGRyZW4uZmluZEluZGV4KGMgPT4gYy5sb2NhbE5hbWUgPT09IEJBT19JQ09OKTtcbiAgICBpZiAoaWNvbkluZGV4ID4gLTEpIHtcbiAgICAgIGNvbnN0IGxhYmVsSW5kZXggPSBjaGlsZHJlbi5maW5kSW5kZXgoYyA9PiBjLmxvY2FsTmFtZSA9PT0gTElOS19FTEVNRU5UKTtcbiAgICAgIGNvbnN0IGljb25DbGFzcyA9IGljb25JbmRleCA8IGxhYmVsSW5kZXggPyBIQVNfTEVGVF9JQ09OIDogSEFTX1JJR0hUX0lDT047XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubmF0aXZlRWxlbWVudCwgaWNvbkNsYXNzKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
@@ -1,8 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- export * from './module';
7
- export * from './hyperlink.component';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvaHlwZXJsaW5rL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyNiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vaHlwZXJsaW5rLmNvbXBvbmVudCc7XG4iXX0=
@@ -1,24 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- import { CommonModule } from '@angular/common';
7
- import { NgModule } from '@angular/core';
8
- import { BaoHyperlinkComponent } from './hyperlink.component';
9
- import * as i0 from "@angular/core";
10
- const HYPERLINK_DIRECTIVES = [BaoHyperlinkComponent];
11
- export class BaoHyperlinkModule {
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHyperlinkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: BaoHyperlinkModule, declarations: [BaoHyperlinkComponent], imports: [CommonModule], exports: [BaoHyperlinkComponent] }); }
14
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHyperlinkModule, imports: [CommonModule] }); }
15
- }
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoHyperlinkModule, decorators: [{
17
- type: NgModule,
18
- args: [{
19
- imports: [CommonModule],
20
- declarations: [HYPERLINK_DIRECTIVES],
21
- exports: [HYPERLINK_DIRECTIVES]
22
- }]
23
- }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2h5cGVybGluay9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUU5RCxNQUFNLG9CQUFvQixHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQU9yRCxNQUFNLE9BQU8sa0JBQWtCOytHQUFsQixrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkFQRCxxQkFBcUIsYUFHdkMsWUFBWSxhQUhNLHFCQUFxQjtnSEFPdEMsa0JBQWtCLFlBSm5CLFlBQVk7OzRGQUlYLGtCQUFrQjtrQkFMOUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDI2IFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFvSHlwZXJsaW5rQ29tcG9uZW50IH0gZnJvbSAnLi9oeXBlcmxpbmsuY29tcG9uZW50JztcblxuY29uc3QgSFlQRVJMSU5LX0RJUkVDVElWRVMgPSBbQmFvSHlwZXJsaW5rQ29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW0hZUEVSTElOS19ESVJFQ1RJVkVTXSxcbiAgZXhwb3J0czogW0hZUEVSTElOS19ESVJFQ1RJVkVTXVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IeXBlcmxpbmtNb2R1bGUge31cbiJdfQ==
@@ -1,47 +0,0 @@
1
- /*
2
- * Copyright (c) 2026 Ville de Montreal. All rights reserved.
3
- * Licensed under the MIT license.
4
- * See LICENSE file in the project root for full license information.
5
- */
6
- import { DOCUMENT } from '@angular/common';
7
- import { Inject, Injectable, SecurityContext } from '@angular/core';
8
- import { ICONS_DCT, ILLUSTRATIVE_ICONS } from './icons-dictionary';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/platform-browser";
11
- const SVG_PREFIX = `<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" role="img">`;
12
- const SVG_SUFFIX = `</svg>`;
13
- export class BaoIconDictionary {
14
- constructor(document, domSanitizer) {
15
- this.document = document;
16
- this.domSanitizer = domSanitizer;
17
- }
18
- getNamedSvgIcon(iconName) {
19
- const rawIconString = this.getRawIconStringFromIconName(iconName);
20
- const literal = this.domSanitizer.bypassSecurityTrustHtml(rawIconString);
21
- const svgString = this.domSanitizer.sanitize(SecurityContext.HTML, literal);
22
- return this.svgElementFromString(svgString || '');
23
- }
24
- getRawIconStringFromIconName(iconName) {
25
- const iconSvgPath = ICONS_DCT[iconName] || '';
26
- const iconSvgPrefix = ILLUSTRATIVE_ICONS.includes(iconName)
27
- ? SVG_PREFIX.replace('0 0 24 24', '0 0 40 40')
28
- : SVG_PREFIX;
29
- return `${iconSvgPrefix}${iconSvgPath}${SVG_SUFFIX}`;
30
- }
31
- svgElementFromString(svgString) {
32
- const div = this.document.createElement('DIV');
33
- div.innerHTML = svgString;
34
- const svg = div.querySelector('svg');
35
- return svg;
36
- }
37
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoIconDictionary, deps: [{ token: DOCUMENT }, { token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Injectable }); }
38
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoIconDictionary, providedIn: 'root' }); }
39
- }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BaoIconDictionary, decorators: [{
41
- type: Injectable,
42
- args: [{ providedIn: 'root' }]
43
- }], ctorParameters: () => [{ type: undefined, decorators: [{
44
- type: Inject,
45
- args: [DOCUMENT]
46
- }] }, { type: i1.DomSanitizer }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFvLWljb24tcmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvaWNvbi9iYW8taWNvbi1yZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7OztBQUVuRSxNQUFNLFVBQVUsR0FBRyxpTkFBaU4sQ0FBQztBQUNyTyxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUM7QUFHNUIsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixZQUM0QixRQUFhLEVBQy9CLFlBQTBCO1FBRFIsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQUMvQixpQkFBWSxHQUFaLFlBQVksQ0FBYztJQUNqQyxDQUFDO0lBRUcsZUFBZSxDQUFDLFFBQWdCO1FBQ3JDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3pFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDNUUsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTyw0QkFBNEIsQ0FBQyxRQUFnQjtRQUNuRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzlDLE1BQU0sYUFBYSxHQUFHLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7WUFDekQsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQztZQUM5QyxDQUFDLENBQUMsVUFBVSxDQUFDO1FBQ2YsT0FBTyxHQUFHLGFBQWEsR0FBRyxXQUFXLEdBQUcsVUFBVSxFQUFFLENBQUM7SUFDdkQsQ0FBQztJQUVPLG9CQUFvQixDQUFDLFNBQWlCO1FBQzVDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzFCLE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFlLENBQUM7UUFDbkQsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOytHQTFCVSxpQkFBaUIsa0JBRWxCLFFBQVE7bUhBRlAsaUJBQWlCLGNBREosTUFBTTs7NEZBQ25CLGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7OzBCQUc3QixNQUFNOzJCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDI2IFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgU2VjdXJpdHlDb250ZXh0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IElDT05TX0RDVCwgSUxMVVNUUkFUSVZFX0lDT05TIH0gZnJvbSAnLi9pY29ucy1kaWN0aW9uYXJ5JztcblxuY29uc3QgU1ZHX1BSRUZJWCA9IGA8P3htbCB2ZXJzaW9uPVwiMS4wXCIgZW5jb2Rpbmc9XCJVVEYtOFwiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyBcIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOXCIgXCJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGRcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgcm9sZT1cImltZ1wiPmA7XG5jb25zdCBTVkdfU1VGRklYID0gYDwvc3ZnPmA7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQmFvSWNvbkRpY3Rpb25hcnkge1xuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBhbnksXG4gICAgcHJpdmF0ZSBkb21TYW5pdGl6ZXI6IERvbVNhbml0aXplclxuICApIHt9XG5cbiAgcHVibGljIGdldE5hbWVkU3ZnSWNvbihpY29uTmFtZTogc3RyaW5nKTogU1ZHRWxlbWVudCB7XG4gICAgY29uc3QgcmF3SWNvblN0cmluZyA9IHRoaXMuZ2V0UmF3SWNvblN0cmluZ0Zyb21JY29uTmFtZShpY29uTmFtZSk7XG4gICAgY29uc3QgbGl0ZXJhbCA9IHRoaXMuZG9tU2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKHJhd0ljb25TdHJpbmcpO1xuICAgIGNvbnN0IHN2Z1N0cmluZyA9IHRoaXMuZG9tU2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCBsaXRlcmFsKTtcbiAgICByZXR1cm4gdGhpcy5zdmdFbGVtZW50RnJvbVN0cmluZyhzdmdTdHJpbmcgfHwgJycpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSYXdJY29uU3RyaW5nRnJvbUljb25OYW1lKGljb25OYW1lOiBzdHJpbmcpIHtcbiAgICBjb25zdCBpY29uU3ZnUGF0aCA9IElDT05TX0RDVFtpY29uTmFtZV0gfHwgJyc7XG4gICAgY29uc3QgaWNvblN2Z1ByZWZpeCA9IElMTFVTVFJBVElWRV9JQ09OUy5pbmNsdWRlcyhpY29uTmFtZSlcbiAgICAgID8gU1ZHX1BSRUZJWC5yZXBsYWNlKCcwIDAgMjQgMjQnLCAnMCAwIDQwIDQwJylcbiAgICAgIDogU1ZHX1BSRUZJWDtcbiAgICByZXR1cm4gYCR7aWNvblN2Z1ByZWZpeH0ke2ljb25TdmdQYXRofSR7U1ZHX1NVRkZJWH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBzdmdFbGVtZW50RnJvbVN0cmluZyhzdmdTdHJpbmc6IHN0cmluZyk6IFNWR0VsZW1lbnQge1xuICAgIGNvbnN0IGRpdiA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnRElWJyk7XG4gICAgZGl2LmlubmVySFRNTCA9IHN2Z1N0cmluZztcbiAgICBjb25zdCBzdmcgPSBkaXYucXVlcnlTZWxlY3Rvcignc3ZnJykgYXMgU1ZHRWxlbWVudDtcbiAgICByZXR1cm4gc3ZnO1xuICB9XG59XG4iXX0=