@villedemontreal/angular-ui 16.1.1 → 16.2.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.
- package/esm2022/lib/bao.module.mjs +8 -9
- package/esm2022/lib/icon/icons-dictionary.mjs +3 -2
- package/esm2022/lib/pagination/index.mjs +8 -0
- package/esm2022/lib/pagination/module.mjs +25 -0
- package/esm2022/lib/pagination/pagination.component.mjs +211 -0
- package/esm2022/public-api.mjs +17 -16
- package/fesm2022/villedemontreal-angular-ui.mjs +294 -63
- package/fesm2022/villedemontreal-angular-ui.mjs.map +1 -1
- package/lib/bao.module.d.ts +2 -1
- package/lib/pagination/index.d.ts +2 -0
- package/lib/pagination/module.d.ts +10 -0
- package/lib/pagination/pagination.component.d.ts +106 -0
- package/package.json +1 -1
- package/public-api.d.ts +16 -15
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { SecurityContext, Injectable, Inject, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, NgModule, Directive, EventEmitter, Output, CUSTOM_ELEMENTS_SCHEMA, ViewChild, forwardRef, HostListener, ContentChildren, Optional, SkipSelf, ViewChildren, InjectionToken, Injector, TemplateRef, inject, ContentChild } from '@angular/core';
|
|
3
1
|
import * as i1$1 from '@angular/common';
|
|
4
2
|
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { SecurityContext, Injectable, Inject, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, NgModule, Directive, EventEmitter, Output, CUSTOM_ELEMENTS_SCHEMA, ViewChild, forwardRef, HostListener, ContentChildren, Optional, SkipSelf, ViewChildren, InjectionToken, Injector, TemplateRef, inject, ContentChild } from '@angular/core';
|
|
5
5
|
import * as i1 from '@angular/platform-browser';
|
|
6
6
|
import * as i1$2 from '@angular/cdk/observers';
|
|
7
7
|
import { ObserversModule } from '@angular/cdk/observers';
|
|
8
|
+
import * as i3$1 from '@angular/forms';
|
|
8
9
|
import { NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
9
10
|
import * as i1$3 from '@angular/cdk/a11y';
|
|
10
11
|
import * as i1$4 from '@angular/cdk/overlay';
|
|
@@ -169,7 +170,8 @@ const ICONS_DCT = {
|
|
|
169
170
|
'icon-x': "<path fill-rule='evenodd' d='M12 13.414l-5.293 5.293a1 1 0 11-1.414-1.414L10.586 12 5.293 6.707a1 1 0 011.414-1.414l12 12a1 1 0 01-1.414 1.414L12 13.414zm5.293-8.121a1 1 0 011.414 1.414l-3 3a1 1 0 11-1.414-1.414l3-3z'/>",
|
|
170
171
|
'icon-spinner': "<path d='M24 12C24 14.3734 23.2962 16.6935 21.9776 18.6668C20.6591 20.6402 18.7849 22.1783 16.5922 23.0866C14.3995 23.9948 11.9867 24.2324 9.65892 23.7694C7.33114 23.3064 5.19295 22.1635 3.51472 20.4853C1.83649 18.8071 0.693599 16.6689 0.230577 14.3411C-0.232446 12.0133 0.00519403 9.60051 0.913446 7.4078C1.8217 5.21509 3.35977 3.34094 5.33316 2.02236C7.30655 0.703788 9.62662 -2.83022e-08 12 0L12 3C10.22 3 8.47991 3.52784 6.99987 4.51677C5.51983 5.50571 4.36627 6.91131 3.68508 8.55585C3.0039 10.2004 2.82567 12.01 3.17293 13.7558C3.5202 15.5016 4.37737 17.1053 5.63604 18.364C6.89471 19.6226 8.49836 20.4798 10.2442 20.8271C11.99 21.1743 13.7996 20.9961 15.4442 20.3149C17.0887 19.6337 18.4943 18.4802 19.4832 17.0001C20.4722 15.5201 21 13.78 21 12H24Z'/>",
|
|
171
172
|
'icon-emergency': "<path fill-rule='evenodd' clip-rule='evenodd' d='M11.067 7.87a.957.957 0 011.914 0v4.786a.957.957 0 11-1.914 0V7.87zM12.024 15.527a.958.958 0 10.001 1.916.958.958 0 00-.001-1.916z M9.878 1.879a3 3 0 014.243 0l8 7.999a3 3 0 010 4.242l-7.999 8.001a3 3 0 01-4.242 0l-8.001-7.999a3 3 0 010-4.242l7.999-8.001zm2.829 1.414a1 1 0 00-1.415 0l-8 8a1 1 0 00.001 1.415l8 8a1 1 0 001.415 0l8-8.002a1 1 0 000-1.414l-8.001-8z'/>",
|
|
172
|
-
'icon-error-octagon': "<path fill-rule='evenodd' clip-rule='evenodd' d='M34.9 27C35.3971 27 35.8 26.597 35.8 26.1C35.8 25.6029 35.3971 25.2 34.9 25.2C34.4029 25.2 34 25.6029 34 26.1C34 26.597 34.4029 27 34.9 27Z' /><path fill-rule='evenodd' clip-rule='evenodd' d='M13.493 13.4928C13.8835 13.1023 14.5167 13.1023 14.9072 13.4928L26.5072 25.0928C26.8977 25.4834 26.8977 26.1165 26.5072 26.5071C26.1167 26.8976 25.4835 26.8976 25.093 26.5071L13.493 14.9071C13.1024 14.5165 13.1024 13.8834 13.493 13.4928Z' /><path fill-rule='evenodd' clip-rule='evenodd' d='M26.5072 13.4928C26.8977 13.8834 26.8977 14.5165 26.5072 14.9071L14.8072 26.6071C14.4167 26.9976 13.7835 26.9976 13.393 26.6071C13.0025 26.2165 13.0025 25.5834 13.393 25.1928L25.093 13.4928C25.4835 13.1023 26.1167 13.1023 26.5072 13.4928Z' /><path fill-rule='evenodd' clip-rule='evenodd' d='M12.7929 3.59294C12.9805 3.40541 13.2348 3.30005 13.5 3.30005H26.5C26.7653 3.30005 27.0196 3.40541 27.2072 3.59294L36.4072 12.7929C36.5947 12.9805 36.7001 13.2348 36.7001 13.5V23.5C36.7001 24.0523 36.2523 24.5 35.7001 24.5C35.1478 24.5 34.7001 24.0523 34.7001 23.5V13.9143L26.0858 5.30005H13.9143L5.30005 13.9143V26.0858L13.9143 34.7001H26.0858L32.8929 27.8929C33.2835 27.5024 33.9166 27.5024 34.3072 27.8929C34.6977 28.2835 34.6977 28.9166 34.3072 29.3072L27.2072 36.4072C27.0196 36.5947 26.7653 36.7001 26.5 36.7001H13.5C13.2348 36.7001 12.9805 36.5947 12.7929 36.4072L3.59294 27.2072C3.40541 27.0196 3.30005 26.7653 3.30005 26.5V13.5C3.30005 13.2348 3.40541 12.9805 3.59294 12.7929L12.7929 3.59294Z'/>"
|
|
173
|
+
'icon-error-octagon': "<path fill-rule='evenodd' clip-rule='evenodd' d='M34.9 27C35.3971 27 35.8 26.597 35.8 26.1C35.8 25.6029 35.3971 25.2 34.9 25.2C34.4029 25.2 34 25.6029 34 26.1C34 26.597 34.4029 27 34.9 27Z' /><path fill-rule='evenodd' clip-rule='evenodd' d='M13.493 13.4928C13.8835 13.1023 14.5167 13.1023 14.9072 13.4928L26.5072 25.0928C26.8977 25.4834 26.8977 26.1165 26.5072 26.5071C26.1167 26.8976 25.4835 26.8976 25.093 26.5071L13.493 14.9071C13.1024 14.5165 13.1024 13.8834 13.493 13.4928Z' /><path fill-rule='evenodd' clip-rule='evenodd' d='M26.5072 13.4928C26.8977 13.8834 26.8977 14.5165 26.5072 14.9071L14.8072 26.6071C14.4167 26.9976 13.7835 26.9976 13.393 26.6071C13.0025 26.2165 13.0025 25.5834 13.393 25.1928L25.093 13.4928C25.4835 13.1023 26.1167 13.1023 26.5072 13.4928Z' /><path fill-rule='evenodd' clip-rule='evenodd' d='M12.7929 3.59294C12.9805 3.40541 13.2348 3.30005 13.5 3.30005H26.5C26.7653 3.30005 27.0196 3.40541 27.2072 3.59294L36.4072 12.7929C36.5947 12.9805 36.7001 13.2348 36.7001 13.5V23.5C36.7001 24.0523 36.2523 24.5 35.7001 24.5C35.1478 24.5 34.7001 24.0523 34.7001 23.5V13.9143L26.0858 5.30005H13.9143L5.30005 13.9143V26.0858L13.9143 34.7001H26.0858L32.8929 27.8929C33.2835 27.5024 33.9166 27.5024 34.3072 27.8929C34.6977 28.2835 34.6977 28.9166 34.3072 29.3072L27.2072 36.4072C27.0196 36.5947 26.7653 36.7001 26.5 36.7001H13.5C13.2348 36.7001 12.9805 36.5947 12.7929 36.4072L3.59294 27.2072C3.40541 27.0196 3.30005 26.7653 3.30005 26.5V13.5C3.30005 13.2348 3.40541 12.9805 3.59294 12.7929L12.7929 3.59294Z'/>",
|
|
174
|
+
'icon-slash': "<path fill-rule='evenodd' d='M12 1C5.92487 1 1 5.92487 1 12C1 18.0751 5.92487 23 12 23C18.0751 23 23 18.0751 23 12C23 5.92487 18.0751 1 12 1ZM6.38231 4.9681C7.92199 3.73647 9.87499 3 12 3C16.9706 3 21 7.02944 21 12C21 14.125 20.2635 16.078 19.0319 17.6177L6.38231 4.9681ZM4.9681 6.38231C3.73647 7.92199 3 9.87499 3 12C3 16.9706 7.02944 21 12 21C14.125 21 16.078 20.2635 17.6177 19.0319L4.9681 6.38231Z'/>"
|
|
173
175
|
};
|
|
174
176
|
/* 40x40 illlustrative icons - https://zeroheight.com/575tugn0n/v/0/p/39c76f-icones-illustratives/t/page-39c76f-32902091-13 */
|
|
175
177
|
const ILLUSTRATIVE_ICONS = ['icon-error-octagon'];
|
|
@@ -837,6 +839,57 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
837
839
|
* See LICENSE file in the project root for full license information.
|
|
838
840
|
*/
|
|
839
841
|
|
|
842
|
+
/*
|
|
843
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
844
|
+
* Licensed under the MIT license.
|
|
845
|
+
* See LICENSE file in the project root for full license information.
|
|
846
|
+
*/
|
|
847
|
+
class BaoBadgeComponent {
|
|
848
|
+
constructor() {
|
|
849
|
+
this.type = '';
|
|
850
|
+
}
|
|
851
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
852
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BaoBadgeComponent, selector: "bao-badge", inputs: { type: "type" }, host: { properties: { "class.positive": "type === \"success\"", "class.negative": "type === \"danger\"", "class.warning": "type === \"warning\"", "class.informative": "type === \"info\"" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block;border:.0625rem solid transparent;color:#fff;padding:0 .4375rem;border-radius:10rem;min-width:1.5rem;font-size:.875rem;font-weight:700;line-height:1.25rem;text-align:center;white-space:nowrap;overflow:hidden;vertical-align:baseline}:host.informative{background-color:#0079c4}:host.positive{background-color:#0da566}:host.warning{background-color:#ffb833;color:#000}:host.negative{background-color:#d3310a}\n"] }); }
|
|
853
|
+
}
|
|
854
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeComponent, decorators: [{
|
|
855
|
+
type: Component,
|
|
856
|
+
args: [{ selector: 'bao-badge', host: {
|
|
857
|
+
class: '',
|
|
858
|
+
'[class.positive]': 'type === "success"',
|
|
859
|
+
'[class.negative]': 'type === "danger"',
|
|
860
|
+
'[class.warning]': 'type === "warning"',
|
|
861
|
+
'[class.informative]': 'type === "info"'
|
|
862
|
+
}, template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block;border:.0625rem solid transparent;color:#fff;padding:0 .4375rem;border-radius:10rem;min-width:1.5rem;font-size:.875rem;font-weight:700;line-height:1.25rem;text-align:center;white-space:nowrap;overflow:hidden;vertical-align:baseline}:host.informative{background-color:#0079c4}:host.positive{background-color:#0da566}:host.warning{background-color:#ffb833;color:#000}:host.negative{background-color:#d3310a}\n"] }]
|
|
863
|
+
}], propDecorators: { type: [{
|
|
864
|
+
type: Input
|
|
865
|
+
}] } });
|
|
866
|
+
|
|
867
|
+
/*
|
|
868
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
869
|
+
* Licensed under the MIT license.
|
|
870
|
+
* See LICENSE file in the project root for full license information.
|
|
871
|
+
*/
|
|
872
|
+
const BADGE_DIRECTIVES = [BaoBadgeComponent];
|
|
873
|
+
class BaoBadgeModule {
|
|
874
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
875
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeModule, declarations: [BaoBadgeComponent], imports: [CommonModule], exports: [BaoBadgeComponent] }); }
|
|
876
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeModule, imports: [CommonModule] }); }
|
|
877
|
+
}
|
|
878
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeModule, decorators: [{
|
|
879
|
+
type: NgModule,
|
|
880
|
+
args: [{
|
|
881
|
+
imports: [CommonModule],
|
|
882
|
+
declarations: [BADGE_DIRECTIVES],
|
|
883
|
+
exports: [BADGE_DIRECTIVES]
|
|
884
|
+
}]
|
|
885
|
+
}] });
|
|
886
|
+
|
|
887
|
+
/*
|
|
888
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
889
|
+
* Licensed under the MIT license.
|
|
890
|
+
* See LICENSE file in the project root for full license information.
|
|
891
|
+
*/
|
|
892
|
+
|
|
840
893
|
/*
|
|
841
894
|
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
842
895
|
* Licensed under the MIT license.
|
|
@@ -3977,6 +4030,237 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
3977
4030
|
}]
|
|
3978
4031
|
}] });
|
|
3979
4032
|
|
|
4033
|
+
/*
|
|
4034
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
4035
|
+
* Licensed under the MIT license.
|
|
4036
|
+
* See LICENSE file in the project root for full license information.
|
|
4037
|
+
*/
|
|
4038
|
+
class BaoPaginationComponent {
|
|
4039
|
+
constructor(cdr) {
|
|
4040
|
+
this.cdr = cdr;
|
|
4041
|
+
/**
|
|
4042
|
+
* The number of items per page as selected.
|
|
4043
|
+
*/
|
|
4044
|
+
this.itemsPerPage = 10;
|
|
4045
|
+
/**
|
|
4046
|
+
* The current page number.
|
|
4047
|
+
*/
|
|
4048
|
+
this.currentPage = 1;
|
|
4049
|
+
/**
|
|
4050
|
+
* The different page size options.
|
|
4051
|
+
*/
|
|
4052
|
+
this.pageSizeOptions = [10, 25, 50, 100];
|
|
4053
|
+
/**
|
|
4054
|
+
* The label for the type of items that are displayed on the page
|
|
4055
|
+
*/
|
|
4056
|
+
this.itemLabel = 'items';
|
|
4057
|
+
/**
|
|
4058
|
+
* If selector for number of items per page should be displayed or not
|
|
4059
|
+
*/
|
|
4060
|
+
this.showItemsPerPageSelector = true;
|
|
4061
|
+
/**
|
|
4062
|
+
* EventEmitter that triggers when there is a page change and emits page number (index adjusted)
|
|
4063
|
+
*/
|
|
4064
|
+
this.pageChanged = new EventEmitter();
|
|
4065
|
+
/**
|
|
4066
|
+
* EventEmitter that triggers when the number of items per page is changed.
|
|
4067
|
+
*/
|
|
4068
|
+
this.itemsPerPageChanged = new EventEmitter();
|
|
4069
|
+
/**
|
|
4070
|
+
* Max number of pages to display
|
|
4071
|
+
*/
|
|
4072
|
+
this._maxPages = 5;
|
|
4073
|
+
this.displayedPages = [];
|
|
4074
|
+
}
|
|
4075
|
+
get totalPages() {
|
|
4076
|
+
return this._totalPages;
|
|
4077
|
+
}
|
|
4078
|
+
set totalPages(value) {
|
|
4079
|
+
this._totalPages = value;
|
|
4080
|
+
}
|
|
4081
|
+
get startItem() {
|
|
4082
|
+
return this._startItem;
|
|
4083
|
+
}
|
|
4084
|
+
set startItem(value) {
|
|
4085
|
+
this._startItem = value;
|
|
4086
|
+
}
|
|
4087
|
+
get endItem() {
|
|
4088
|
+
return this._endItem;
|
|
4089
|
+
}
|
|
4090
|
+
set endItem(value) {
|
|
4091
|
+
this._endItem = value;
|
|
4092
|
+
}
|
|
4093
|
+
get rangeLabel() {
|
|
4094
|
+
return `${this.startItem} à ${this.endItem} sur ${this.totalItems} ${this.itemLabel}`;
|
|
4095
|
+
}
|
|
4096
|
+
/**
|
|
4097
|
+
* Flag that indicates if a previous page exists for the current list
|
|
4098
|
+
*/
|
|
4099
|
+
get hasPrevious() {
|
|
4100
|
+
return this.currentPage !== 1;
|
|
4101
|
+
}
|
|
4102
|
+
/**
|
|
4103
|
+
* Flag that indicates if a next page exists for the current list
|
|
4104
|
+
*/
|
|
4105
|
+
get hasNext() {
|
|
4106
|
+
return this.currentPage < this.totalPages;
|
|
4107
|
+
}
|
|
4108
|
+
ngOnInit() {
|
|
4109
|
+
this.startItem = this.updateStartItem();
|
|
4110
|
+
this.endItem = this.updateEndItem();
|
|
4111
|
+
this.totalPages = this.updateTotalPages();
|
|
4112
|
+
this.displayedPages = this.buildPageNumbers();
|
|
4113
|
+
this.cdr.detectChanges();
|
|
4114
|
+
}
|
|
4115
|
+
/**
|
|
4116
|
+
* Update list of displayed pages when current page is changed.
|
|
4117
|
+
*/
|
|
4118
|
+
ngOnChanges(changes) {
|
|
4119
|
+
if (changes.hasOwnProperty('currentPage')) {
|
|
4120
|
+
this.displayedPages = this.buildPageNumbers();
|
|
4121
|
+
}
|
|
4122
|
+
}
|
|
4123
|
+
/**
|
|
4124
|
+
* Navigate to specific page
|
|
4125
|
+
*/
|
|
4126
|
+
goTo(page) {
|
|
4127
|
+
this.currentPage = page;
|
|
4128
|
+
this.startItem = this.updateStartItem();
|
|
4129
|
+
this.endItem = this.updateEndItem();
|
|
4130
|
+
this.displayedPages = this.buildPageNumbers();
|
|
4131
|
+
this.pageChanged.emit(page - 1);
|
|
4132
|
+
}
|
|
4133
|
+
/**
|
|
4134
|
+
* Navigate to previous page
|
|
4135
|
+
*/
|
|
4136
|
+
handlePreviousClick() {
|
|
4137
|
+
if (this.hasPrevious) {
|
|
4138
|
+
this.goTo(this.currentPage - 1);
|
|
4139
|
+
}
|
|
4140
|
+
}
|
|
4141
|
+
/**
|
|
4142
|
+
* Navigate to next page
|
|
4143
|
+
*/
|
|
4144
|
+
handleNextClick() {
|
|
4145
|
+
if (this.hasNext) {
|
|
4146
|
+
this.goTo(this.currentPage + 1);
|
|
4147
|
+
}
|
|
4148
|
+
}
|
|
4149
|
+
/**
|
|
4150
|
+
* Update all required variables whenever the number of items displayed per page is changed.
|
|
4151
|
+
* @param value New amount of items per page
|
|
4152
|
+
*/
|
|
4153
|
+
handlePageSizeChange(value) {
|
|
4154
|
+
this.currentPage =
|
|
4155
|
+
this.currentPage > this.totalPages ? this.totalPages : this.currentPage;
|
|
4156
|
+
this.startItem = this.updateStartItem();
|
|
4157
|
+
this.endItem = this.updateEndItem();
|
|
4158
|
+
this.totalPages = this.updateTotalPages();
|
|
4159
|
+
this.displayedPages = this.buildPageNumbers();
|
|
4160
|
+
this.itemsPerPageChanged.emit(value);
|
|
4161
|
+
}
|
|
4162
|
+
updateTotalPages() {
|
|
4163
|
+
return Math.ceil(this.totalItems / this.itemsPerPage);
|
|
4164
|
+
}
|
|
4165
|
+
updateStartItem() {
|
|
4166
|
+
return Math.min((this.currentPage - 1) * this.itemsPerPage + 1, Math.floor(this.totalItems / 10) * 10);
|
|
4167
|
+
}
|
|
4168
|
+
updateEndItem() {
|
|
4169
|
+
return Math.min(this.startItem + Number(this.itemsPerPage) - 1, this.totalItems);
|
|
4170
|
+
}
|
|
4171
|
+
/**
|
|
4172
|
+
* Generate series of page numbers to display. The list always starts with page 1
|
|
4173
|
+
* and ends with last page.
|
|
4174
|
+
* Adds negative numbers for ellipsis.
|
|
4175
|
+
*/
|
|
4176
|
+
buildPageNumbers() {
|
|
4177
|
+
const pages = [];
|
|
4178
|
+
// If total pages are 5 or less, include all pages
|
|
4179
|
+
if (this.totalPages <= this._maxPages) {
|
|
4180
|
+
for (let i = 1; i <= this.totalPages; i++) {
|
|
4181
|
+
pages.push(i);
|
|
4182
|
+
}
|
|
4183
|
+
}
|
|
4184
|
+
else {
|
|
4185
|
+
pages.push(1);
|
|
4186
|
+
// Determine middle pages
|
|
4187
|
+
let middlePages = [];
|
|
4188
|
+
if (this.currentPage <= 3) {
|
|
4189
|
+
middlePages = [2, 3, 4, -1];
|
|
4190
|
+
}
|
|
4191
|
+
else if (this.currentPage >= this.totalPages - 2) {
|
|
4192
|
+
middlePages = [
|
|
4193
|
+
-1,
|
|
4194
|
+
this.totalPages - 3,
|
|
4195
|
+
this.totalPages - 2,
|
|
4196
|
+
this.totalPages - 1
|
|
4197
|
+
];
|
|
4198
|
+
}
|
|
4199
|
+
else {
|
|
4200
|
+
middlePages = [
|
|
4201
|
+
-1,
|
|
4202
|
+
this.currentPage - 1,
|
|
4203
|
+
this.currentPage,
|
|
4204
|
+
this.currentPage + 1,
|
|
4205
|
+
-1
|
|
4206
|
+
];
|
|
4207
|
+
}
|
|
4208
|
+
pages.push(...middlePages);
|
|
4209
|
+
pages.push(this.totalPages);
|
|
4210
|
+
}
|
|
4211
|
+
return pages;
|
|
4212
|
+
}
|
|
4213
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoPaginationComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4214
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BaoPaginationComponent, selector: "bao-pagination", inputs: { totalItems: "totalItems", itemsPerPage: "itemsPerPage", currentPage: "currentPage", pageSizeOptions: "pageSizeOptions", itemLabel: "itemLabel", showItemsPerPageSelector: "showItemsPerPageSelector" }, outputs: { pageChanged: "pageChanged", itemsPerPageChanged: "itemsPerPageChanged" }, host: { classAttribute: "bao-pagination" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"items-diplayed-controls\">\n <span class=\"range-display\">\n {{ rangeLabel }}\n </span>\n <div *ngIf=\"showItemsPerPageSelector\" class=\"items-per-page\">\n <label for=\"items-per-page-select\" class=\"select-label\"\n >Items par page\n </label>\n <select\n [(ngModel)]=\"itemsPerPage\"\n (ngModelChange)=\"handlePageSizeChange($event)\"\n name=\"items-per-page\"\n id=\"items-per-page-select\"\n class=\"dropdown-select\"\n >\n <option *ngFor=\"let size of pageSizeOptions\" [value]=\"size\">\n {{ size }}\n </option>\n </select>\n </div>\n</div>\n<nav aria-label=\"Pagination\" class=\"page-controls\">\n <ul>\n <li\n class=\"page-item\"\n [ngClass]=\"{ disabled: !hasPrevious }\"\n [attr.aria-disabled]=\"!hasPrevious ? 'true' : null\"\n >\n <a\n class=\"page-link\"\n (click)=\"$event.preventDefault(); handlePreviousClick()\"\n (keydown.enter)=\"$event.preventDefault(); handlePreviousClick()\"\n (keydown.space)=\"$event.preventDefault(); handlePreviousClick()\"\n tabindex=\"0\"\n >\n <bao-icon title=\"Page pr\u00E9c\u00E9dente\" svgIcon=\"icon-chevron-left\"></bao-icon\n ></a>\n </li>\n <li\n class=\"page-item\"\n *ngFor=\"let page of displayedPages\"\n [ngClass]=\"{ active: page === currentPage }\"\n [attr.aria-current]=\"page === currentPage ? 'page' : null\"\n >\n <ng-container *ngIf=\"page > 0; else ellipsis\">\n <span class=\"sr-only\">{{ page }}</span>\n <a\n class=\"page-link\"\n (click)=\"$event.preventDefault(); goTo(page)\"\n (keydown.enter)=\"$event.preventDefault(); goTo(page)\"\n (keydown.space)=\"$event.preventDefault(); goTo(page)\"\n tabindex=\"0\"\n >{{ page }}</a\n >\n </ng-container>\n <ng-template #ellipsis>\n <span class=\"page-link ellipsis\" aria-hidden=\"true\">...</span>\n </ng-template>\n </li>\n\n <li\n class=\"page-item\"\n [ngClass]=\"{ disabled: !hasNext }\"\n [attr.aria-disabled]=\"!hasNext ? 'true' : null\"\n >\n <a\n class=\"page-link\"\n (click)=\"$event.preventDefault(); handleNextClick()\"\n (keydown.enter)=\"$event.preventDefault(); handleNextClick()\"\n (keydown.space)=\"$event.preventDefault(); handleNextClick()\"\n tabindex=\"0\"\n >\n <bao-icon title=\"Page suivante\" svgIcon=\"icon-chevron-right\"></bao-icon\n ></a>\n </li>\n </ul>\n</nav>\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-pagination{display:flex;flex-direction:column;justify-content:center}@media (min-width: 768px){.bao-pagination{justify-content:flex-start}}.bao-pagination>.items-diplayed-controls{display:flex;flex-direction:column;justify-content:center;align-self:center}@media (min-width: 768px){.bao-pagination>.items-diplayed-controls{flex-direction:row;justify-content:space-between;align-self:auto;margin-bottom:1rem}}.bao-pagination>.items-diplayed-controls .range-display{font-weight:700;font-size:.875rem;line-height:1.25rem;margin-bottom:1rem}@media (min-width: 768px){.bao-pagination>.items-diplayed-controls .range-display{margin-bottom:0rem}}.bao-pagination>.items-diplayed-controls>.items-per-page{display:flex;align-items:baseline;margin-bottom:2rem}@media (min-width: 768px){.bao-pagination>.items-diplayed-controls>.items-per-page{margin-bottom:0rem}}.bao-pagination>.items-diplayed-controls>.items-per-page>.select-label{font-weight:700;font-size:.875rem;line-height:1.25rem;color:#637381;margin-right:1rem}.bao-pagination>.items-diplayed-controls>.items-per-page>.dropdown-select{background-color:#fff;border-radius:.25rem;border-color:#ced4da;border-style:solid;border-width:thin;padding:.4375rem 2.4375rem .4375rem .4375rem;font-weight:400;font-size:1rem;line-height:1.5rem;color:#212529;-webkit-appearance:none;appearance:none;background:#ffffff url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3e%3cpath fill='%23adb2bd' d='M12 12.586l3.293-3.293a1 1 0 011.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L12 12.586z'/%3e%3c/svg%3e\") right .4375rem center/24px 24px no-repeat}.bao-pagination .page-controls{align-self:center}.bao-pagination .page-controls>ul{display:flex;padding-left:0;margin-bottom:0}.bao-pagination .page-controls>ul>.page-item.disabled>.page-link>.bao-icon{color:#adb2bd}.bao-pagination .page-controls>ul>.page-item>.page-link{border-style:none}.bao-pagination .page-controls>ul>.page-item.active>.page-link{background-color:#eefaf8;border:1px solid #097d6c;border-radius:.25rem}.bao-pagination .page-controls>ul>.page-item>.page-link{font-size:.875rem}.bao-pagination .page-controls>ul>.page-item>.page-link:focus{box-shadow:inset 0 0 0 2px #0079c4}.bao-pagination .page-controls>ul>.page-item>.ellipsis{font-weight:700}.bao-pagination .page-controls>ul>.page-item>.ellipsis:hover{background-color:#fff}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { 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: "directive", type: i3$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
4215
|
+
}
|
|
4216
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoPaginationComponent, decorators: [{
|
|
4217
|
+
type: Component,
|
|
4218
|
+
args: [{ selector: 'bao-pagination', encapsulation: ViewEncapsulation.None, host: {
|
|
4219
|
+
class: 'bao-pagination'
|
|
4220
|
+
}, template: "<div class=\"items-diplayed-controls\">\n <span class=\"range-display\">\n {{ rangeLabel }}\n </span>\n <div *ngIf=\"showItemsPerPageSelector\" class=\"items-per-page\">\n <label for=\"items-per-page-select\" class=\"select-label\"\n >Items par page\n </label>\n <select\n [(ngModel)]=\"itemsPerPage\"\n (ngModelChange)=\"handlePageSizeChange($event)\"\n name=\"items-per-page\"\n id=\"items-per-page-select\"\n class=\"dropdown-select\"\n >\n <option *ngFor=\"let size of pageSizeOptions\" [value]=\"size\">\n {{ size }}\n </option>\n </select>\n </div>\n</div>\n<nav aria-label=\"Pagination\" class=\"page-controls\">\n <ul>\n <li\n class=\"page-item\"\n [ngClass]=\"{ disabled: !hasPrevious }\"\n [attr.aria-disabled]=\"!hasPrevious ? 'true' : null\"\n >\n <a\n class=\"page-link\"\n (click)=\"$event.preventDefault(); handlePreviousClick()\"\n (keydown.enter)=\"$event.preventDefault(); handlePreviousClick()\"\n (keydown.space)=\"$event.preventDefault(); handlePreviousClick()\"\n tabindex=\"0\"\n >\n <bao-icon title=\"Page pr\u00E9c\u00E9dente\" svgIcon=\"icon-chevron-left\"></bao-icon\n ></a>\n </li>\n <li\n class=\"page-item\"\n *ngFor=\"let page of displayedPages\"\n [ngClass]=\"{ active: page === currentPage }\"\n [attr.aria-current]=\"page === currentPage ? 'page' : null\"\n >\n <ng-container *ngIf=\"page > 0; else ellipsis\">\n <span class=\"sr-only\">{{ page }}</span>\n <a\n class=\"page-link\"\n (click)=\"$event.preventDefault(); goTo(page)\"\n (keydown.enter)=\"$event.preventDefault(); goTo(page)\"\n (keydown.space)=\"$event.preventDefault(); goTo(page)\"\n tabindex=\"0\"\n >{{ page }}</a\n >\n </ng-container>\n <ng-template #ellipsis>\n <span class=\"page-link ellipsis\" aria-hidden=\"true\">...</span>\n </ng-template>\n </li>\n\n <li\n class=\"page-item\"\n [ngClass]=\"{ disabled: !hasNext }\"\n [attr.aria-disabled]=\"!hasNext ? 'true' : null\"\n >\n <a\n class=\"page-link\"\n (click)=\"$event.preventDefault(); handleNextClick()\"\n (keydown.enter)=\"$event.preventDefault(); handleNextClick()\"\n (keydown.space)=\"$event.preventDefault(); handleNextClick()\"\n tabindex=\"0\"\n >\n <bao-icon title=\"Page suivante\" svgIcon=\"icon-chevron-right\"></bao-icon\n ></a>\n </li>\n </ul>\n</nav>\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-pagination{display:flex;flex-direction:column;justify-content:center}@media (min-width: 768px){.bao-pagination{justify-content:flex-start}}.bao-pagination>.items-diplayed-controls{display:flex;flex-direction:column;justify-content:center;align-self:center}@media (min-width: 768px){.bao-pagination>.items-diplayed-controls{flex-direction:row;justify-content:space-between;align-self:auto;margin-bottom:1rem}}.bao-pagination>.items-diplayed-controls .range-display{font-weight:700;font-size:.875rem;line-height:1.25rem;margin-bottom:1rem}@media (min-width: 768px){.bao-pagination>.items-diplayed-controls .range-display{margin-bottom:0rem}}.bao-pagination>.items-diplayed-controls>.items-per-page{display:flex;align-items:baseline;margin-bottom:2rem}@media (min-width: 768px){.bao-pagination>.items-diplayed-controls>.items-per-page{margin-bottom:0rem}}.bao-pagination>.items-diplayed-controls>.items-per-page>.select-label{font-weight:700;font-size:.875rem;line-height:1.25rem;color:#637381;margin-right:1rem}.bao-pagination>.items-diplayed-controls>.items-per-page>.dropdown-select{background-color:#fff;border-radius:.25rem;border-color:#ced4da;border-style:solid;border-width:thin;padding:.4375rem 2.4375rem .4375rem .4375rem;font-weight:400;font-size:1rem;line-height:1.5rem;color:#212529;-webkit-appearance:none;appearance:none;background:#ffffff url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3e%3cpath fill='%23adb2bd' d='M12 12.586l3.293-3.293a1 1 0 011.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L12 12.586z'/%3e%3c/svg%3e\") right .4375rem center/24px 24px no-repeat}.bao-pagination .page-controls{align-self:center}.bao-pagination .page-controls>ul{display:flex;padding-left:0;margin-bottom:0}.bao-pagination .page-controls>ul>.page-item.disabled>.page-link>.bao-icon{color:#adb2bd}.bao-pagination .page-controls>ul>.page-item>.page-link{border-style:none}.bao-pagination .page-controls>ul>.page-item.active>.page-link{background-color:#eefaf8;border:1px solid #097d6c;border-radius:.25rem}.bao-pagination .page-controls>ul>.page-item>.page-link{font-size:.875rem}.bao-pagination .page-controls>ul>.page-item>.page-link:focus{box-shadow:inset 0 0 0 2px #0079c4}.bao-pagination .page-controls>ul>.page-item>.ellipsis{font-weight:700}.bao-pagination .page-controls>ul>.page-item>.ellipsis:hover{background-color:#fff}\n"] }]
|
|
4221
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { totalItems: [{
|
|
4222
|
+
type: Input
|
|
4223
|
+
}], itemsPerPage: [{
|
|
4224
|
+
type: Input
|
|
4225
|
+
}], currentPage: [{
|
|
4226
|
+
type: Input
|
|
4227
|
+
}], pageSizeOptions: [{
|
|
4228
|
+
type: Input
|
|
4229
|
+
}], itemLabel: [{
|
|
4230
|
+
type: Input
|
|
4231
|
+
}], showItemsPerPageSelector: [{
|
|
4232
|
+
type: Input
|
|
4233
|
+
}], pageChanged: [{
|
|
4234
|
+
type: Output
|
|
4235
|
+
}], itemsPerPageChanged: [{
|
|
4236
|
+
type: Output
|
|
4237
|
+
}] } });
|
|
4238
|
+
|
|
4239
|
+
/*
|
|
4240
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
4241
|
+
* Licensed under the MIT license.
|
|
4242
|
+
* See LICENSE file in the project root for full license information.
|
|
4243
|
+
*/
|
|
4244
|
+
class BaoPaginationModule {
|
|
4245
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoPaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
4246
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: BaoPaginationModule, declarations: [BaoPaginationComponent], imports: [CommonModule, BaoIconModule, FormsModule], exports: [BaoPaginationComponent] }); }
|
|
4247
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoPaginationModule, imports: [CommonModule, BaoIconModule, FormsModule] }); }
|
|
4248
|
+
}
|
|
4249
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoPaginationModule, decorators: [{
|
|
4250
|
+
type: NgModule,
|
|
4251
|
+
args: [{
|
|
4252
|
+
imports: [CommonModule, BaoIconModule, FormsModule],
|
|
4253
|
+
declarations: [BaoPaginationComponent],
|
|
4254
|
+
exports: [BaoPaginationComponent]
|
|
4255
|
+
}]
|
|
4256
|
+
}] });
|
|
4257
|
+
|
|
4258
|
+
/*
|
|
4259
|
+
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
4260
|
+
* Licensed under the MIT license.
|
|
4261
|
+
* See LICENSE file in the project root for full license information.
|
|
4262
|
+
*/
|
|
4263
|
+
|
|
3980
4264
|
/*
|
|
3981
4265
|
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
3982
4266
|
* Licensed under the MIT license.
|
|
@@ -6117,9 +6401,8 @@ class BaoModule {
|
|
|
6117
6401
|
BaoFileModule,
|
|
6118
6402
|
BaoSnackBarModule,
|
|
6119
6403
|
BaoSystemHeaderModule,
|
|
6120
|
-
BaoMessageBarModule
|
|
6121
|
-
|
|
6122
|
-
] }); }
|
|
6404
|
+
BaoMessageBarModule,
|
|
6405
|
+
BaoPaginationModule] }); }
|
|
6123
6406
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoModule, imports: [BaoIconModule,
|
|
6124
6407
|
BaoButtonModule,
|
|
6125
6408
|
BaoAlertModule,
|
|
@@ -6145,9 +6428,8 @@ class BaoModule {
|
|
|
6145
6428
|
BaoFileModule,
|
|
6146
6429
|
BaoSnackBarModule,
|
|
6147
6430
|
BaoSystemHeaderModule,
|
|
6148
|
-
BaoMessageBarModule
|
|
6149
|
-
|
|
6150
|
-
] }); }
|
|
6431
|
+
BaoMessageBarModule,
|
|
6432
|
+
BaoPaginationModule] }); }
|
|
6151
6433
|
}
|
|
6152
6434
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoModule, decorators: [{
|
|
6153
6435
|
type: NgModule,
|
|
@@ -6181,63 +6463,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
6181
6463
|
BaoFileModule,
|
|
6182
6464
|
BaoSnackBarModule,
|
|
6183
6465
|
BaoSystemHeaderModule,
|
|
6184
|
-
BaoMessageBarModule
|
|
6185
|
-
|
|
6466
|
+
BaoMessageBarModule,
|
|
6467
|
+
BaoPaginationModule
|
|
6186
6468
|
]
|
|
6187
6469
|
}]
|
|
6188
6470
|
}] });
|
|
6189
6471
|
|
|
6190
|
-
/*
|
|
6191
|
-
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6192
|
-
* Licensed under the MIT license.
|
|
6193
|
-
* See LICENSE file in the project root for full license information.
|
|
6194
|
-
*/
|
|
6195
|
-
class BaoBadgeComponent {
|
|
6196
|
-
constructor() {
|
|
6197
|
-
this.type = '';
|
|
6198
|
-
}
|
|
6199
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6200
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BaoBadgeComponent, selector: "bao-badge", inputs: { type: "type" }, host: { properties: { "class.positive": "type === \"success\"", "class.negative": "type === \"danger\"", "class.warning": "type === \"warning\"", "class.informative": "type === \"info\"" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block;border:.0625rem solid transparent;color:#fff;padding:0 .4375rem;border-radius:10rem;min-width:1.5rem;font-size:.875rem;font-weight:700;line-height:1.25rem;text-align:center;white-space:nowrap;overflow:hidden;vertical-align:baseline}:host.informative{background-color:#0079c4}:host.positive{background-color:#0da566}:host.warning{background-color:#ffb833;color:#000}:host.negative{background-color:#d3310a}\n"] }); }
|
|
6201
|
-
}
|
|
6202
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeComponent, decorators: [{
|
|
6203
|
-
type: Component,
|
|
6204
|
-
args: [{ selector: 'bao-badge', host: {
|
|
6205
|
-
class: '',
|
|
6206
|
-
'[class.positive]': 'type === "success"',
|
|
6207
|
-
'[class.negative]': 'type === "danger"',
|
|
6208
|
-
'[class.warning]': 'type === "warning"',
|
|
6209
|
-
'[class.informative]': 'type === "info"'
|
|
6210
|
-
}, template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block;border:.0625rem solid transparent;color:#fff;padding:0 .4375rem;border-radius:10rem;min-width:1.5rem;font-size:.875rem;font-weight:700;line-height:1.25rem;text-align:center;white-space:nowrap;overflow:hidden;vertical-align:baseline}:host.informative{background-color:#0079c4}:host.positive{background-color:#0da566}:host.warning{background-color:#ffb833;color:#000}:host.negative{background-color:#d3310a}\n"] }]
|
|
6211
|
-
}], propDecorators: { type: [{
|
|
6212
|
-
type: Input
|
|
6213
|
-
}] } });
|
|
6214
|
-
|
|
6215
|
-
/*
|
|
6216
|
-
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6217
|
-
* Licensed under the MIT license.
|
|
6218
|
-
* See LICENSE file in the project root for full license information.
|
|
6219
|
-
*/
|
|
6220
|
-
const BADGE_DIRECTIVES = [BaoBadgeComponent];
|
|
6221
|
-
class BaoBadgeModule {
|
|
6222
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6223
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeModule, declarations: [BaoBadgeComponent], imports: [CommonModule], exports: [BaoBadgeComponent] }); }
|
|
6224
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeModule, imports: [CommonModule] }); }
|
|
6225
|
-
}
|
|
6226
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BaoBadgeModule, decorators: [{
|
|
6227
|
-
type: NgModule,
|
|
6228
|
-
args: [{
|
|
6229
|
-
imports: [CommonModule],
|
|
6230
|
-
declarations: [BADGE_DIRECTIVES],
|
|
6231
|
-
exports: [BADGE_DIRECTIVES]
|
|
6232
|
-
}]
|
|
6233
|
-
}] });
|
|
6234
|
-
|
|
6235
|
-
/*
|
|
6236
|
-
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6237
|
-
* Licensed under the MIT license.
|
|
6238
|
-
* See LICENSE file in the project root for full license information.
|
|
6239
|
-
*/
|
|
6240
|
-
|
|
6241
6472
|
/*
|
|
6242
6473
|
* Copyright (c) 2025 Ville de Montreal. All rights reserved.
|
|
6243
6474
|
* Licensed under the MIT license.
|
|
@@ -6272,5 +6503,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
6272
6503
|
* Generated bundle index. Do not edit.
|
|
6273
6504
|
*/
|
|
6274
6505
|
|
|
6275
|
-
export { BAO_FILE_INTL_PROVIDER, BAO_FILE_INTL_PROVIDER_FACTORY, BAO_MODAL_DATA, BAO_RADIO_GROUP, BAO_SNACK_BAR_DATA, BAO_SNACK_BAR_DEFAULT_OPTIONS, BaoAlertActions, BaoAlertComponent, BaoAlertContent, BaoAlertLink, BaoAlertModule, BaoAlertTitle, BaoAvatarComponent, BaoAvatarContent, BaoAvatarModule, BaoBackNavigationComponent, BaoBackNavigationInsert, BaoBadgeComponent, BaoBadgeModule, BaoBreadcrumbComponent, BaoBreadcrumbModule, BaoButtonComponent, BaoButtonModule, BaoCardComponent, BaoCardContent, BaoCardHeader, BaoCardModule, BaoCardTextInterface, BaoCardTitle, BaoCheckBoxDescription, BaoCheckboxComponent, BaoCheckboxGroupComponent, BaoCheckboxModule, BaoCommonComponentsModule, BaoDropdownMenuComponent, BaoDropdownMenuDivider, BaoDropdownMenuItem, BaoDropdownMenuItemDescription, BaoDropdownMenuItemLabel, BaoDropdownMenuModule, BaoDropdownMenuSection, BaoDropdownMenuTrigger, BaoErrorTextComponent, BaoFileDropDirective, BaoFileDropzoneIntructions, BaoFileInputComponent, BaoFileIntl, BaoFileIntlEnglish, BaoFileModule, BaoFilePreviewComponent, BaoGuidingTextComponent, BaoHeaderInfoComponent, BaoHeaderInfoContent, BaoHeaderInfoModule, BaoHeaderInfoSubtitle, BaoHeaderInfoSurtitle, BaoHeaderInfoTitle, BaoHeaderInfoTitleGroupComponent, BaoHyperlinkComponent, BaoHyperlinkModule, BaoIconComponent, BaoIconModule, BaoLabelTextComponent, BaoList, BaoListItem, BaoListItemDescription, BaoListItemTitle, BaoListModule, BaoListSummary, BaoListSummaryItem, BaoMessageBarComponent, BaoMessageBarContent, BaoMessageBarModule, BaoModal, BaoModalBase, BaoModalClose, BaoModalContainer, BaoModalInitialConfig, BaoModalModule, BaoModalRef, BaoModule, BaoNavList, BaoRadioButtonComponent, BaoRadioButtonGroupComponent, BaoRadioDescription, BaoRadioModule, BaoSimpleSnackBarComponent, BaoSnackBarConfig, BaoSnackBarContainerComponent, BaoSnackBarModule, BaoSnackBarRef, BaoSnackBarService, BaoSummaryComponent, BaoSummaryDescription, BaoSummaryModule, BaoSystemHeaderComponent, BaoSystemHeaderModule, BaoTabHeader, BaoTabPanel, BaoTablistComponent, BaoTabsContainer, BaoTabsModule, BaoTagComponent, BaoTagModule, BaoTitleTextComponent, _BaoModalContainerBase, _closeModalVia, baoFactory, eModalDesktopWidthSize, eModalMobileWidthSize, throwBaoModalContentAlreadyAttachedError };
|
|
6506
|
+
export { BAO_FILE_INTL_PROVIDER, BAO_FILE_INTL_PROVIDER_FACTORY, BAO_MODAL_DATA, BAO_RADIO_GROUP, BAO_SNACK_BAR_DATA, BAO_SNACK_BAR_DEFAULT_OPTIONS, BaoAlertActions, BaoAlertComponent, BaoAlertContent, BaoAlertLink, BaoAlertModule, BaoAlertTitle, BaoAvatarComponent, BaoAvatarContent, BaoAvatarModule, BaoBackNavigationComponent, BaoBackNavigationInsert, BaoBadgeComponent, BaoBadgeModule, BaoBreadcrumbComponent, BaoBreadcrumbModule, BaoButtonComponent, BaoButtonModule, BaoCardComponent, BaoCardContent, BaoCardHeader, BaoCardModule, BaoCardTextInterface, BaoCardTitle, BaoCheckBoxDescription, BaoCheckboxComponent, BaoCheckboxGroupComponent, BaoCheckboxModule, BaoCommonComponentsModule, BaoDropdownMenuComponent, BaoDropdownMenuDivider, BaoDropdownMenuItem, BaoDropdownMenuItemDescription, BaoDropdownMenuItemLabel, BaoDropdownMenuModule, BaoDropdownMenuSection, BaoDropdownMenuTrigger, BaoErrorTextComponent, BaoFileDropDirective, BaoFileDropzoneIntructions, BaoFileInputComponent, BaoFileIntl, BaoFileIntlEnglish, BaoFileModule, BaoFilePreviewComponent, BaoGuidingTextComponent, BaoHeaderInfoComponent, BaoHeaderInfoContent, BaoHeaderInfoModule, BaoHeaderInfoSubtitle, BaoHeaderInfoSurtitle, BaoHeaderInfoTitle, BaoHeaderInfoTitleGroupComponent, BaoHyperlinkComponent, BaoHyperlinkModule, BaoIconComponent, BaoIconModule, BaoLabelTextComponent, BaoList, BaoListItem, BaoListItemDescription, BaoListItemTitle, BaoListModule, BaoListSummary, BaoListSummaryItem, BaoMessageBarComponent, BaoMessageBarContent, BaoMessageBarModule, BaoModal, BaoModalBase, BaoModalClose, BaoModalContainer, BaoModalInitialConfig, BaoModalModule, BaoModalRef, BaoModule, BaoNavList, BaoPaginationComponent, BaoPaginationModule, BaoRadioButtonComponent, BaoRadioButtonGroupComponent, BaoRadioDescription, BaoRadioModule, BaoSimpleSnackBarComponent, BaoSnackBarConfig, BaoSnackBarContainerComponent, BaoSnackBarModule, BaoSnackBarRef, BaoSnackBarService, BaoSummaryComponent, BaoSummaryDescription, BaoSummaryModule, BaoSystemHeaderComponent, BaoSystemHeaderModule, BaoTabHeader, BaoTabPanel, BaoTablistComponent, BaoTabsContainer, BaoTabsModule, BaoTagComponent, BaoTagModule, BaoTitleTextComponent, _BaoModalContainerBase, _closeModalVia, baoFactory, eModalDesktopWidthSize, eModalMobileWidthSize, throwBaoModalContentAlreadyAttachedError };
|
|
6276
6507
|
//# sourceMappingURL=villedemontreal-angular-ui.mjs.map
|