@kirbydesign/designsystem 8.0.0 → 8.1.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/esm2020/button/button.component.mjs +2 -2
- package/esm2020/card/card.component.mjs +2 -2
- package/esm2020/form-field/form-field.module.mjs +5 -4
- package/esm2020/form-field/input/input.component.mjs +2 -2
- package/esm2020/form-field/textarea/textarea.component.mjs +3 -3
- package/esm2020/grid/breakpoint-helper.service.mjs +28 -0
- package/esm2020/grid/grid-card-configuration.mjs +8 -0
- package/esm2020/grid/grid.component.mjs +95 -0
- package/esm2020/grid/kirbydesign-designsystem-grid.mjs +5 -0
- package/esm2020/grid/public_api.mjs +4 -0
- package/esm2020/icon/kirby-icon-settings.mjs +5 -1
- package/esm2020/lib/components/index.mjs +1 -4
- package/esm2020/lib/components/segmented-control/segmented-control.component.mjs +3 -3
- package/esm2020/lib/index.mjs +3 -1
- package/esm2020/lib/kirby.module.mjs +13 -11
- package/esm2020/list/list-item/list-item.component.mjs +2 -2
- package/esm2020/list/list.component.mjs +2 -2
- package/esm2020/modal/experimental/footer/footer.component.mjs +2 -2
- package/esm2020/modal/experimental/kirby-modal.module.mjs +5 -5
- package/esm2020/modal/experimental/modal/modal.component.mjs +72 -0
- package/esm2020/modal/experimental/public_api.mjs +2 -2
- package/esm2020/modal/modal/footer/modal-footer.component.mjs +3 -3
- package/esm2020/page/page-footer/page-footer.component.mjs +2 -2
- package/esm2020/testing-jasmine/lib/mock-providers.mjs +3 -2
- package/esm2020/testing-jest/lib/mock-providers.mjs +3 -2
- package/esm2020/toast/config/toast-config.mjs +2 -0
- package/esm2020/toast/kirbydesign-designsystem-toast.mjs +5 -0
- package/esm2020/toast/public_api.mjs +4 -0
- package/esm2020/toast/services/indexs.mjs +3 -0
- package/esm2020/toast/services/toast.controller.mjs +22 -0
- package/esm2020/toast/services/toast.helper.mjs +39 -0
- package/fesm2015/kirbydesign-designsystem-button.mjs +2 -2
- package/fesm2015/kirbydesign-designsystem-button.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-card.mjs +2 -2
- package/fesm2015/kirbydesign-designsystem-card.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-form-field.mjs +7 -7
- package/fesm2015/kirbydesign-designsystem-form-field.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-grid.mjs +134 -0
- package/fesm2015/kirbydesign-designsystem-grid.mjs.map +1 -0
- package/fesm2015/kirbydesign-designsystem-icon.mjs +4 -0
- package/fesm2015/kirbydesign-designsystem-icon.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-list.mjs +4 -4
- package/fesm2015/kirbydesign-designsystem-list.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-modal-experimental.mjs +11 -11
- package/fesm2015/kirbydesign-designsystem-modal-experimental.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-modal.mjs +2 -2
- package/fesm2015/kirbydesign-designsystem-modal.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-page.mjs +2 -2
- package/fesm2015/kirbydesign-designsystem-page.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-testing-jasmine.mjs +2 -1
- package/fesm2015/kirbydesign-designsystem-testing-jasmine.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-testing-jest.mjs +2 -1
- package/fesm2015/kirbydesign-designsystem-testing-jest.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-toast.mjs +66 -0
- package/fesm2015/kirbydesign-designsystem-toast.mjs.map +1 -0
- package/fesm2015/kirbydesign-designsystem.mjs +24 -197
- package/fesm2015/kirbydesign-designsystem.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-button.mjs +2 -2
- package/fesm2020/kirbydesign-designsystem-button.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-card.mjs +2 -2
- package/fesm2020/kirbydesign-designsystem-card.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-form-field.mjs +7 -7
- package/fesm2020/kirbydesign-designsystem-form-field.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-grid.mjs +134 -0
- package/fesm2020/kirbydesign-designsystem-grid.mjs.map +1 -0
- package/fesm2020/kirbydesign-designsystem-icon.mjs +4 -0
- package/fesm2020/kirbydesign-designsystem-icon.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-list.mjs +4 -4
- package/fesm2020/kirbydesign-designsystem-list.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-modal-experimental.mjs +11 -11
- package/fesm2020/kirbydesign-designsystem-modal-experimental.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-modal.mjs +2 -2
- package/fesm2020/kirbydesign-designsystem-modal.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-page.mjs +2 -2
- package/fesm2020/kirbydesign-designsystem-page.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-testing-jasmine.mjs +2 -1
- package/fesm2020/kirbydesign-designsystem-testing-jasmine.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-testing-jest.mjs +2 -1
- package/fesm2020/kirbydesign-designsystem-testing-jest.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-toast.mjs +63 -0
- package/fesm2020/kirbydesign-designsystem-toast.mjs.map +1 -0
- package/fesm2020/kirbydesign-designsystem.mjs +24 -194
- package/fesm2020/kirbydesign-designsystem.mjs.map +1 -1
- package/form-field/form-field.module.d.ts +2 -1
- package/{lib/components/grid → grid}/breakpoint-helper.service.d.ts +0 -0
- package/{lib/components/grid → grid}/grid-card-configuration.d.ts +0 -0
- package/{lib/components/grid → grid}/grid.component.d.ts +1 -1
- package/grid/index.d.ts +5 -0
- package/grid/public_api.d.ts +3 -0
- package/icons/svg/air-balloon.svg +3 -0
- package/icons/svg/banknotes.svg +4 -0
- package/icons/svg/business.svg +3 -0
- package/icons/svg/piggybank.svg +3 -0
- package/lib/components/index.d.ts +0 -3
- package/lib/index.d.ts +2 -0
- package/lib/kirby.module.d.ts +26 -26
- package/modal/experimental/kirby-modal.module.d.ts +2 -2
- package/modal/experimental/{fullscreen/fullscreen.component.d.ts → modal/modal.component.d.ts} +3 -3
- package/modal/experimental/public_api.d.ts +1 -1
- package/package.json +18 -2
- package/testing-jasmine/lib/mock-providers.d.ts +2 -1
- package/testing-jest/lib/mock-providers.d.ts +2 -1
- package/{lib/components/toast → toast}/config/toast-config.d.ts +0 -0
- package/toast/index.d.ts +5 -0
- package/{lib/components/toast/index.d.ts → toast/public_api.d.ts} +1 -0
- package/toast/services/indexs.d.ts +2 -0
- package/{lib/components/toast → toast}/services/toast.controller.d.ts +0 -0
- package/{lib/components/toast → toast}/services/toast.helper.d.ts +0 -0
- package/esm2020/lib/components/grid/breakpoint-helper.service.mjs +0 -28
- package/esm2020/lib/components/grid/grid-card-configuration.mjs +0 -8
- package/esm2020/lib/components/grid/grid.component.mjs +0 -97
- package/esm2020/lib/components/toast/config/toast-config.mjs +0 -2
- package/esm2020/lib/components/toast/index.mjs +0 -3
- package/esm2020/lib/components/toast/services/toast.controller.mjs +0 -22
- package/esm2020/lib/components/toast/services/toast.helper.mjs +0 -39
- package/esm2020/modal/experimental/fullscreen/fullscreen.component.mjs +0 -72
|
@@ -1,19 +1,13 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { ChangeDetectorRef, ElementRef, NgZone, Component, ChangeDetectionStrategy,
|
|
3
|
-
import { fromEvent
|
|
4
|
-
import { ScssHelper } from '@kirbydesign/designsystem/helpers/scss';
|
|
5
|
-
export * from '@kirbydesign/designsystem/helpers/scss';
|
|
6
|
-
import * as i4 from '@angular/common';
|
|
7
|
-
import { CommonModule, DOCUMENT } from '@angular/common';
|
|
8
|
-
import * as i3 from '@kirbydesign/designsystem/shared';
|
|
9
|
-
import { ThemeColorDirective, ComponentLoaderDirective, ResizeObserverFactory, ResizeObserverService } from '@kirbydesign/designsystem/shared';
|
|
10
|
-
export * from '@kirbydesign/designsystem/shared';
|
|
2
|
+
import { ChangeDetectorRef, ElementRef, NgZone, Component, ChangeDetectionStrategy, NgModule, EventEmitter, Input, HostBinding, Output, ViewChild, Directive, HostListener, APP_INITIALIZER, InjectionToken, Optional, Inject } from '@angular/core';
|
|
3
|
+
import { fromEvent } from 'rxjs';
|
|
11
4
|
import * as i2 from '@ionic/angular';
|
|
12
5
|
import { IonicModule } from '@ionic/angular';
|
|
6
|
+
import * as i4 from '@angular/common';
|
|
7
|
+
import { CommonModule, DOCUMENT } from '@angular/common';
|
|
13
8
|
import * as i1 from '@kirbydesign/designsystem/icon';
|
|
14
9
|
import { IconModule } from '@kirbydesign/designsystem/icon';
|
|
15
10
|
export * from '@kirbydesign/designsystem/icon';
|
|
16
|
-
import { __awaiter } from 'tslib';
|
|
17
11
|
import * as i1$2 from '@kirbydesign/designsystem/types';
|
|
18
12
|
export * from '@kirbydesign/designsystem/types';
|
|
19
13
|
import * as i1$1 from '@kirbydesign/designsystem/modal';
|
|
@@ -45,7 +39,10 @@ import { FlagComponent } from '@kirbydesign/designsystem/flag';
|
|
|
45
39
|
export * from '@kirbydesign/designsystem/flag';
|
|
46
40
|
import { TextareaComponent, InputComponent, AffixDirective, DateInputDirective, FormFieldModule } from '@kirbydesign/designsystem/form-field';
|
|
47
41
|
export * from '@kirbydesign/designsystem/form-field';
|
|
42
|
+
import { GridComponent, BreakpointHelperService } from '@kirbydesign/designsystem/grid';
|
|
43
|
+
export * from '@kirbydesign/designsystem/grid';
|
|
48
44
|
export * from '@kirbydesign/designsystem/helpers';
|
|
45
|
+
export * from '@kirbydesign/designsystem/helpers/scss';
|
|
49
46
|
import { ItemModule } from '@kirbydesign/designsystem/item';
|
|
50
47
|
export * from '@kirbydesign/designsystem/item';
|
|
51
48
|
import { ItemGroupComponent } from '@kirbydesign/designsystem/item-group';
|
|
@@ -76,6 +73,8 @@ import { RouterOutletModule } from '@kirbydesign/designsystem/router-outlet';
|
|
|
76
73
|
export * from '@kirbydesign/designsystem/router-outlet';
|
|
77
74
|
import { SectionHeaderComponent } from '@kirbydesign/designsystem/section-header';
|
|
78
75
|
export * from '@kirbydesign/designsystem/section-header';
|
|
76
|
+
import { ThemeColorDirective, ComponentLoaderDirective, ResizeObserverFactory, ResizeObserverService } from '@kirbydesign/designsystem/shared';
|
|
77
|
+
export * from '@kirbydesign/designsystem/shared';
|
|
79
78
|
import { SlideModule } from '@kirbydesign/designsystem/slide';
|
|
80
79
|
export * from '@kirbydesign/designsystem/slide';
|
|
81
80
|
import { SlideButtonComponent } from '@kirbydesign/designsystem/slide-button';
|
|
@@ -84,6 +83,8 @@ import { SpinnerModule } from '@kirbydesign/designsystem/spinner';
|
|
|
84
83
|
export * from '@kirbydesign/designsystem/spinner';
|
|
85
84
|
import { TabsModule } from '@kirbydesign/designsystem/tabs';
|
|
86
85
|
export * from '@kirbydesign/designsystem/tabs';
|
|
86
|
+
import { ToastHelper, ToastController } from '@kirbydesign/designsystem/toast';
|
|
87
|
+
export * from '@kirbydesign/designsystem/toast';
|
|
87
88
|
import { ToggleComponent } from '@kirbydesign/designsystem/toggle';
|
|
88
89
|
export * from '@kirbydesign/designsystem/toggle';
|
|
89
90
|
import { ToggleButtonModule } from '@kirbydesign/designsystem/toggle-button';
|
|
@@ -171,129 +172,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
|
|
|
171
172
|
}]
|
|
172
173
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
173
174
|
|
|
174
|
-
class BreakpointHelperService {
|
|
175
|
-
constructor() {
|
|
176
|
-
this.orientationChangedSubject = new Subject();
|
|
177
|
-
this.init();
|
|
178
|
-
}
|
|
179
|
-
init() {
|
|
180
|
-
// TODO JEO: Implement Angular/CDK BreakpointObserver:
|
|
181
|
-
this.orientationChangedSubject.next();
|
|
182
|
-
}
|
|
183
|
-
observe() {
|
|
184
|
-
return this.orientationChangedSubject.asObservable();
|
|
185
|
-
}
|
|
186
|
-
ngOnDestroy() {
|
|
187
|
-
this.orientationChangedSubject.complete();
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
/** @nocollapse */ BreakpointHelperService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreakpointHelperService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
191
|
-
/** @nocollapse */ BreakpointHelperService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreakpointHelperService, providedIn: 'root' });
|
|
192
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreakpointHelperService, decorators: [{
|
|
193
|
-
type: Injectable,
|
|
194
|
-
args: [{
|
|
195
|
-
providedIn: 'root',
|
|
196
|
-
}]
|
|
197
|
-
}], ctorParameters: function () { return []; } });
|
|
198
|
-
|
|
199
|
-
const GRID_DEPRICATION_WARNING = 'Deprecation warning: The "kirby-grid" component will be removed in a future release of Kirby designsystem. Consider using kirby-grid, kirby-grid-item css-classes as an alternative solution. See grid docs at https://cookbook.kirby.design/#/home/showcase/grid';
|
|
200
|
-
class GridCard {
|
|
201
|
-
constructor(configuration, row, col, colSpan) {
|
|
202
|
-
this.configuration = configuration;
|
|
203
|
-
this.row = row;
|
|
204
|
-
this.col = col;
|
|
205
|
-
this.colSpan = colSpan;
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
class GridComponent {
|
|
209
|
-
constructor(breakpointHelper) {
|
|
210
|
-
this.breakpointHelper = breakpointHelper;
|
|
211
|
-
this.cards = [];
|
|
212
|
-
console.warn(GRID_DEPRICATION_WARNING);
|
|
213
|
-
}
|
|
214
|
-
set cardConfigurations(cardConfigurations) {
|
|
215
|
-
this.cardConfigs = cardConfigurations;
|
|
216
|
-
// TODO TRM/JEO Remove this when breakpoint observe something something...
|
|
217
|
-
this.configureGrid();
|
|
218
|
-
}
|
|
219
|
-
configureGrid() {
|
|
220
|
-
let calculatedMaxColumns = 0;
|
|
221
|
-
if (this.maxColumns === undefined) {
|
|
222
|
-
calculatedMaxColumns =
|
|
223
|
-
this.breakpointHelper.currentScreenWidth >= ScssHelper.BREAKPOINT_SCREEN_L ? 2 : 1;
|
|
224
|
-
}
|
|
225
|
-
else {
|
|
226
|
-
calculatedMaxColumns = this.maxColumns;
|
|
227
|
-
}
|
|
228
|
-
this.cards = [];
|
|
229
|
-
let columnCounter = 0;
|
|
230
|
-
let currentRow = 0;
|
|
231
|
-
let currentColumn = 0;
|
|
232
|
-
this.cardConfigs.forEach((card, index) => {
|
|
233
|
-
// Cards colspan is added to the column counter
|
|
234
|
-
columnCounter += card.preferredSize;
|
|
235
|
-
// If only maxColumns are set to 1, just add all cards with a colspan of 1
|
|
236
|
-
if (calculatedMaxColumns === 1) {
|
|
237
|
-
this.cards.push(new GridCard(card, currentRow, currentColumn, 1));
|
|
238
|
-
currentRow += 1;
|
|
239
|
-
return;
|
|
240
|
-
}
|
|
241
|
-
// If we are below maxColumns, then add the card to the array
|
|
242
|
-
if (columnCounter <= calculatedMaxColumns) {
|
|
243
|
-
this.cards.push(new GridCard(card, currentRow, currentColumn, card.preferredSize));
|
|
244
|
-
// Update currentColumn, so the next card will be placed correctly
|
|
245
|
-
currentColumn += card.preferredSize;
|
|
246
|
-
}
|
|
247
|
-
else {
|
|
248
|
-
// The new card didn't fit - Calculate remaining columns for previous card
|
|
249
|
-
const restColumns = calculatedMaxColumns - (columnCounter - card.preferredSize);
|
|
250
|
-
const prevCard = this.cards[index - 1];
|
|
251
|
-
// Add the restColumns to the previous cards colspan, to make it span out
|
|
252
|
-
prevCard.colSpan = restColumns + prevCard.colSpan;
|
|
253
|
-
// We are now on a new row
|
|
254
|
-
currentRow += 1;
|
|
255
|
-
currentColumn = 0;
|
|
256
|
-
this.cards.push(new GridCard(card, currentRow, currentColumn, card.preferredSize));
|
|
257
|
-
// Update currentColumn to match the size of the new card and reset columnCounter
|
|
258
|
-
currentColumn = card.preferredSize;
|
|
259
|
-
columnCounter = card.preferredSize;
|
|
260
|
-
}
|
|
261
|
-
// If we on the last card, make sure it spans all the rest of the columns
|
|
262
|
-
if (this.cardConfigs.length - 1 === index) {
|
|
263
|
-
const restColumns = calculatedMaxColumns - columnCounter;
|
|
264
|
-
const currentCard = this.cards[index];
|
|
265
|
-
currentCard.colSpan += restColumns;
|
|
266
|
-
}
|
|
267
|
-
});
|
|
268
|
-
}
|
|
269
|
-
ngOnDestroy() {
|
|
270
|
-
if (this.breakpointSubscription) {
|
|
271
|
-
this.breakpointSubscription.unsubscribe();
|
|
272
|
-
}
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
/** @nocollapse */ GridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridComponent, deps: [{ token: BreakpointHelperService }], target: i0.ɵɵFactoryTarget.Component });
|
|
276
|
-
/** @nocollapse */ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: GridComponent, selector: "kirby-grid", inputs: { maxColumns: "maxColumns", cardConfigurations: "cardConfigurations" }, host: { properties: { "attr.max-columns": "this.maxColumns" } }, ngImport: i0, template: "<ng-container *ngFor=\"let card of cards\">\n <ng-template\n [kirbyLoadComponent]=\"card.configuration\"\n [cssClass]=\"'grid-item--col-' + card.colSpan\"\n ></ng-template>\n</ng-container>\n", styles: [":host{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(var(--kirby-grid-item-min-height, auto),auto);gap:24px;max-width:var(--kirby-page-max-width);margin:0 auto}@media (min-width: 721px){:host[max-columns=\"1\"]{grid-template-columns:repeat(1,1fr)}:host[max-columns=\"2\"]{grid-template-columns:repeat(2,1fr)}:host[max-columns=\"3\"]{grid-template-columns:repeat(3,1fr)}:host[max-columns=\"4\"]{grid-template-columns:repeat(4,1fr)}:host[max-columns=\"5\"]{grid-template-columns:repeat(5,1fr)}:host[max-columns=\"6\"]{grid-template-columns:repeat(6,1fr)}:host[max-columns=\"7\"]{grid-template-columns:repeat(7,1fr)}:host[max-columns=\"8\"]{grid-template-columns:repeat(8,1fr)}:host[max-columns=\"9\"]{grid-template-columns:repeat(9,1fr)}:host[max-columns=\"10\"]{grid-template-columns:repeat(10,1fr)}}@media (min-width: 721px){::ng-deep .grid-item--col-1{grid-column:span 1}}@media (min-width: 721px){::ng-deep .grid-item--col-2{grid-column:span 2}}@media (min-width: 721px){::ng-deep .grid-item--col-3{grid-column:span 3}}@media (min-width: 721px){::ng-deep .grid-item--col-4{grid-column:span 4}}@media (min-width: 721px){::ng-deep .grid-item--col-5{grid-column:span 5}}@media (min-width: 721px){::ng-deep .grid-item--col-6{grid-column:span 6}}@media (min-width: 721px){::ng-deep .grid-item--col-7{grid-column:span 7}}@media (min-width: 721px){::ng-deep .grid-item--col-8{grid-column:span 8}}@media (min-width: 721px){::ng-deep .grid-item--col-9{grid-column:span 9}}@media (min-width: 721px){::ng-deep .grid-item--col-10{grid-column:span 10}}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.ComponentLoaderDirective, selector: "[kirbyLoadComponent]", inputs: ["kirbyLoadComponent", "cssClass"] }] });
|
|
277
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridComponent, decorators: [{
|
|
278
|
-
type: Component,
|
|
279
|
-
args: [{ selector: 'kirby-grid', template: "<ng-container *ngFor=\"let card of cards\">\n <ng-template\n [kirbyLoadComponent]=\"card.configuration\"\n [cssClass]=\"'grid-item--col-' + card.colSpan\"\n ></ng-template>\n</ng-container>\n", styles: [":host{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(var(--kirby-grid-item-min-height, auto),auto);gap:24px;max-width:var(--kirby-page-max-width);margin:0 auto}@media (min-width: 721px){:host[max-columns=\"1\"]{grid-template-columns:repeat(1,1fr)}:host[max-columns=\"2\"]{grid-template-columns:repeat(2,1fr)}:host[max-columns=\"3\"]{grid-template-columns:repeat(3,1fr)}:host[max-columns=\"4\"]{grid-template-columns:repeat(4,1fr)}:host[max-columns=\"5\"]{grid-template-columns:repeat(5,1fr)}:host[max-columns=\"6\"]{grid-template-columns:repeat(6,1fr)}:host[max-columns=\"7\"]{grid-template-columns:repeat(7,1fr)}:host[max-columns=\"8\"]{grid-template-columns:repeat(8,1fr)}:host[max-columns=\"9\"]{grid-template-columns:repeat(9,1fr)}:host[max-columns=\"10\"]{grid-template-columns:repeat(10,1fr)}}@media (min-width: 721px){::ng-deep .grid-item--col-1{grid-column:span 1}}@media (min-width: 721px){::ng-deep .grid-item--col-2{grid-column:span 2}}@media (min-width: 721px){::ng-deep .grid-item--col-3{grid-column:span 3}}@media (min-width: 721px){::ng-deep .grid-item--col-4{grid-column:span 4}}@media (min-width: 721px){::ng-deep .grid-item--col-5{grid-column:span 5}}@media (min-width: 721px){::ng-deep .grid-item--col-6{grid-column:span 6}}@media (min-width: 721px){::ng-deep .grid-item--col-7{grid-column:span 7}}@media (min-width: 721px){::ng-deep .grid-item--col-8{grid-column:span 8}}@media (min-width: 721px){::ng-deep .grid-item--col-9{grid-column:span 9}}@media (min-width: 721px){::ng-deep .grid-item--col-10{grid-column:span 10}}\n"] }]
|
|
280
|
-
}], ctorParameters: function () { return [{ type: BreakpointHelperService }]; }, propDecorators: { maxColumns: [{
|
|
281
|
-
type: HostBinding,
|
|
282
|
-
args: ['attr.max-columns']
|
|
283
|
-
}, {
|
|
284
|
-
type: Input
|
|
285
|
-
}], cardConfigurations: [{
|
|
286
|
-
type: Input
|
|
287
|
-
}] } });
|
|
288
|
-
|
|
289
|
-
class GridCardConfiguration {
|
|
290
|
-
constructor(component, data, preferredSize) {
|
|
291
|
-
this.component = component;
|
|
292
|
-
this.data = data;
|
|
293
|
-
this.preferredSize = preferredSize;
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
|
|
297
175
|
class KirbyBadgeModule {
|
|
298
176
|
}
|
|
299
177
|
/** @nocollapse */ KirbyBadgeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: KirbyBadgeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -393,10 +271,10 @@ class SegmentedControlComponent {
|
|
|
393
271
|
}
|
|
394
272
|
}
|
|
395
273
|
/** @nocollapse */ SegmentedControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SegmentedControlComponent, deps: [{ token: i1.IconRegistryService }], target: i0.ɵɵFactoryTarget.Component });
|
|
396
|
-
/** @nocollapse */ SegmentedControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: SegmentedControlComponent, isStandalone: true, selector: "kirby-segmented-control", inputs: { mode: "mode", items: "items", selectedIndex: "selectedIndex", value: "value", size: "size", disableChangeOnSwipe: "disableChangeOnSwipe" }, outputs: { selectedIndexChange: "selectedIndexChange", segmentSelect: "segmentSelect" }, host: { attributes: { "role": "group" }, properties: { "class": "this._modeCssClass", "class.sm": "this.isSmallSize" } }, ngImport: i0, template: "<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">{{ item.text }}</ion-segment-button>\n <div class=\"badge-container\" *ngIf=\"item.badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon\n *ngIf=\"item.badge.isCustomIcon; else defaultIconName\"\n [customName]=\"item.badge.icon\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </div>\n </ng-container>\n</ion-segment>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;--kirby-badge-elevation: 0 1px 24px 0 rgba(28, 28, 28, .04);--kirby-badge-position: absolute;--kirby-badge-top: -8px;--kirby-badge-right: 8px;--kirby-badge-z-index: 2}:host.sm ion-segment-button{min-height:32px;font-size:12px;--padding-start: 16px;--padding-end: 16px}@media (hover: hover) and (pointer: fine){:host.sm ion-segment-button{outline:none;border-radius:999px}:host.sm ion-segment-button:focus{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}:host.sm ion-segment-button:focus:not(:focus-visible){box-shadow:0 0 0 0 transparent}:host.sm ion-segment-button:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}:host.default-mode ion-segment{--background: var(--kirby-
|
|
274
|
+
/** @nocollapse */ SegmentedControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: SegmentedControlComponent, isStandalone: true, selector: "kirby-segmented-control", inputs: { mode: "mode", items: "items", selectedIndex: "selectedIndex", value: "value", size: "size", disableChangeOnSwipe: "disableChangeOnSwipe" }, outputs: { selectedIndexChange: "selectedIndexChange", segmentSelect: "segmentSelect" }, host: { attributes: { "role": "group" }, properties: { "class": "this._modeCssClass", "class.sm": "this.isSmallSize" } }, ngImport: i0, template: "<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">{{ item.text }}</ion-segment-button>\n <div class=\"badge-container\" *ngIf=\"item.badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon\n *ngIf=\"item.badge.isCustomIcon; else defaultIconName\"\n [customName]=\"item.badge.icon\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </div>\n </ng-container>\n</ion-segment>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;--kirby-badge-elevation: 0 1px 24px 0 rgba(28, 28, 28, .04);--kirby-badge-position: absolute;--kirby-badge-top: -8px;--kirby-badge-right: 8px;--kirby-badge-z-index: 2}:host.sm ion-segment-button{min-height:32px;font-size:12px;--padding-start: 16px;--padding-end: 16px}@media (hover: hover) and (pointer: fine){:host.sm ion-segment-button{outline:none;border-radius:999px}:host.sm ion-segment-button:focus{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}:host.sm ion-segment-button:focus:not(:focus-visible){box-shadow:0 0 0 0 transparent}:host.sm ion-segment-button:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}:host.default-mode ion-segment{--background: var(--kirby-inputs-background-color);box-shadow:var(--kirby-inputs-elevation);width:-moz-fit-content;width:fit-content;overflow:visible;contain:none}:host.chip-mode ion-segment{--background: none;border-radius:0;padding:4px;gap:8px}@media (pointer: coarse){:host.chip-mode ion-segment{scrollbar-width:none}:host.chip-mode ion-segment::-webkit-scrollbar{display:none}}:host.chip-mode ion-segment-button{--background: var(--kirby-inputs-background-color);--indicator-transition: none;flex:initial}:host.chip-mode ion-segment-button::part(indicator){padding-inline:0}:host.compact ion-segment{--background: transparent}:host.compact ion-segment-button{--background: transparent;--padding-start: 12px;--padding-end: 12px}ion-segment{border-radius:999px}ion-segment-button{position:relative;--border-radius: 999px;--border-style: none;--background: none;--color: var(--kirby-inputs-color);--indicator-color: var(--kirby-inputs-indicator-background-color);--color-checked: var(--kirby-inputs-indicator-color);--indicator-box-shadow: none;--indicator-transform: none;--padding-start: 24px;--padding-end: 24px;--margin-bottom: 0;--margin-end: 0;--margin-start: 0;--margin-top: 0;min-height:40px;min-width:-moz-fit-content;min-width:fit-content;font-weight:400;font-size:14px;text-transform:none;margin:0}@media (hover: hover) and (pointer: fine){ion-segment-button:focus-within::part(native){transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}ion-segment-button:after{content:\"\";position:absolute;min-height:44px;min-width:44px;width:100%;height:100%;transform:translate(-50%,-50%);left:50%;top:50%}ion-segment-button::part(native){border-radius:999px;overflow:hidden}ion-segment-button::part(native):after{transition:all 80ms linear 0ms}ion-segment-button::part(indicator){padding-inline:0}.badge-container{position:relative}\n"], dependencies: [{ kind: "ngmodule", type: IonicModule }, { kind: "component", type: i2.IonSegment, selector: "ion-segment", inputs: ["color", "disabled", "mode", "scrollable", "selectOnFocus", "swipeGesture", "value"] }, { kind: "component", type: i2.IonSegmentButton, selector: "ion-segment-button", inputs: ["disabled", "layout", "mode", "type", "value"] }, { kind: "directive", type: i2.SelectValueAccessor, selector: "ion-range, ion-select, ion-radio-group, ion-segment, ion-datetime" }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: i1.IconComponent, selector: "kirby-icon", inputs: ["size", "name", "customName"] }, { kind: "ngmodule", type: KirbyBadgeModule }, { kind: "component", type: KirbyBadge, selector: "kirby-badge", inputs: ["size", "text", "themeColor"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
397
275
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SegmentedControlComponent, decorators: [{
|
|
398
276
|
type: Component,
|
|
399
|
-
args: [{ standalone: true, imports: [IonicModule, IconModule, KirbyBadgeModule, CommonModule], selector: 'kirby-segmented-control', host: { role: 'group' }, template: "<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">{{ item.text }}</ion-segment-button>\n <div class=\"badge-container\" *ngIf=\"item.badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon\n *ngIf=\"item.badge.isCustomIcon; else defaultIconName\"\n [customName]=\"item.badge.icon\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </div>\n </ng-container>\n</ion-segment>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;--kirby-badge-elevation: 0 1px 24px 0 rgba(28, 28, 28, .04);--kirby-badge-position: absolute;--kirby-badge-top: -8px;--kirby-badge-right: 8px;--kirby-badge-z-index: 2}:host.sm ion-segment-button{min-height:32px;font-size:12px;--padding-start: 16px;--padding-end: 16px}@media (hover: hover) and (pointer: fine){:host.sm ion-segment-button{outline:none;border-radius:999px}:host.sm ion-segment-button:focus{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}:host.sm ion-segment-button:focus:not(:focus-visible){box-shadow:0 0 0 0 transparent}:host.sm ion-segment-button:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}:host.default-mode ion-segment{--background: var(--kirby-
|
|
277
|
+
args: [{ standalone: true, imports: [IonicModule, IconModule, KirbyBadgeModule, CommonModule], selector: 'kirby-segmented-control', host: { role: 'group' }, template: "<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">{{ item.text }}</ion-segment-button>\n <div class=\"badge-container\" *ngIf=\"item.badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon\n *ngIf=\"item.badge.isCustomIcon; else defaultIconName\"\n [customName]=\"item.badge.icon\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </div>\n </ng-container>\n</ion-segment>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;--kirby-badge-elevation: 0 1px 24px 0 rgba(28, 28, 28, .04);--kirby-badge-position: absolute;--kirby-badge-top: -8px;--kirby-badge-right: 8px;--kirby-badge-z-index: 2}:host.sm ion-segment-button{min-height:32px;font-size:12px;--padding-start: 16px;--padding-end: 16px}@media (hover: hover) and (pointer: fine){:host.sm ion-segment-button{outline:none;border-radius:999px}:host.sm ion-segment-button:focus{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}:host.sm ion-segment-button:focus:not(:focus-visible){box-shadow:0 0 0 0 transparent}:host.sm ion-segment-button:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}:host.default-mode ion-segment{--background: var(--kirby-inputs-background-color);box-shadow:var(--kirby-inputs-elevation);width:-moz-fit-content;width:fit-content;overflow:visible;contain:none}:host.chip-mode ion-segment{--background: none;border-radius:0;padding:4px;gap:8px}@media (pointer: coarse){:host.chip-mode ion-segment{scrollbar-width:none}:host.chip-mode ion-segment::-webkit-scrollbar{display:none}}:host.chip-mode ion-segment-button{--background: var(--kirby-inputs-background-color);--indicator-transition: none;flex:initial}:host.chip-mode ion-segment-button::part(indicator){padding-inline:0}:host.compact ion-segment{--background: transparent}:host.compact ion-segment-button{--background: transparent;--padding-start: 12px;--padding-end: 12px}ion-segment{border-radius:999px}ion-segment-button{position:relative;--border-radius: 999px;--border-style: none;--background: none;--color: var(--kirby-inputs-color);--indicator-color: var(--kirby-inputs-indicator-background-color);--color-checked: var(--kirby-inputs-indicator-color);--indicator-box-shadow: none;--indicator-transform: none;--padding-start: 24px;--padding-end: 24px;--margin-bottom: 0;--margin-end: 0;--margin-start: 0;--margin-top: 0;min-height:40px;min-width:-moz-fit-content;min-width:fit-content;font-weight:400;font-size:14px;text-transform:none;margin:0}@media (hover: hover) and (pointer: fine){ion-segment-button:focus-within::part(native){transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}ion-segment-button:after{content:\"\";position:absolute;min-height:44px;min-width:44px;width:100%;height:100%;transform:translate(-50%,-50%);left:50%;top:50%}ion-segment-button::part(native){border-radius:999px;overflow:hidden}ion-segment-button::part(native):after{transition:all 80ms linear 0ms}ion-segment-button::part(indicator){padding-inline:0}.badge-container{position:relative}\n"] }]
|
|
400
278
|
}], ctorParameters: function () { return [{ type: i1.IconRegistryService }]; }, propDecorators: { mode: [{
|
|
401
279
|
type: Input
|
|
402
280
|
}], _modeCssClass: [{
|
|
@@ -421,61 +299,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
|
|
|
421
299
|
type: Output
|
|
422
300
|
}] } });
|
|
423
301
|
|
|
424
|
-
class ToastHelper {
|
|
425
|
-
constructor(toastController) {
|
|
426
|
-
this.toastController = toastController;
|
|
427
|
-
}
|
|
428
|
-
showToast(config) {
|
|
429
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
430
|
-
const toast = yield this.toastController.create({
|
|
431
|
-
animated: config.animated,
|
|
432
|
-
message: config.message,
|
|
433
|
-
position: 'top',
|
|
434
|
-
duration: config.durationInMs ? config.durationInMs : ToastHelper.DURATION_IN_MS,
|
|
435
|
-
cssClass: this.getCssClass(config.messageType),
|
|
436
|
-
});
|
|
437
|
-
yield toast.present();
|
|
438
|
-
return {
|
|
439
|
-
dismiss: toast.dismiss.bind(toast),
|
|
440
|
-
onWillDismiss: toast.onWillDismiss(),
|
|
441
|
-
onDidDismiss: toast.onDidDismiss(),
|
|
442
|
-
};
|
|
443
|
-
});
|
|
444
|
-
}
|
|
445
|
-
getCssClass(messageType) {
|
|
446
|
-
let cssClass = ToastHelper.CSS_CLASS;
|
|
447
|
-
if (messageType) {
|
|
448
|
-
cssClass += ' ' + messageType;
|
|
449
|
-
}
|
|
450
|
-
return cssClass;
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
-
ToastHelper.CSS_CLASS = 'kirby-toast';
|
|
454
|
-
ToastHelper.DURATION_IN_MS = 4000;
|
|
455
|
-
/** @nocollapse */ ToastHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ToastHelper, deps: [{ token: i2.ToastController }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
456
|
-
/** @nocollapse */ ToastHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ToastHelper });
|
|
457
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ToastHelper, decorators: [{
|
|
458
|
-
type: Injectable
|
|
459
|
-
}], ctorParameters: function () { return [{ type: i2.ToastController }]; } });
|
|
460
|
-
|
|
461
|
-
class ToastController {
|
|
462
|
-
constructor(toastHelper) {
|
|
463
|
-
this.toastHelper = toastHelper;
|
|
464
|
-
}
|
|
465
|
-
showToast(config, onCloseToast) {
|
|
466
|
-
this.toastHelper.showToast(config).then((overlay) => {
|
|
467
|
-
if (onCloseToast) {
|
|
468
|
-
overlay.onDidDismiss.then(() => onCloseToast());
|
|
469
|
-
}
|
|
470
|
-
});
|
|
471
|
-
}
|
|
472
|
-
}
|
|
473
|
-
/** @nocollapse */ ToastController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ToastController, deps: [{ token: ToastHelper }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
474
|
-
/** @nocollapse */ ToastController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ToastController });
|
|
475
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ToastController, decorators: [{
|
|
476
|
-
type: Injectable
|
|
477
|
-
}], ctorParameters: function () { return [{ type: ToastHelper }]; } });
|
|
478
|
-
|
|
479
302
|
class PageLocalNavigationComponent {
|
|
480
303
|
constructor(window) {
|
|
481
304
|
this.window = window;
|
|
@@ -613,9 +436,10 @@ function customElementsInitializer() {
|
|
|
613
436
|
};
|
|
614
437
|
}
|
|
615
438
|
|
|
616
|
-
const exportedDeclarations = [
|
|
439
|
+
const exportedDeclarations = [ModalRouterLinkDirective];
|
|
617
440
|
const declarations = [...exportedDeclarations, KeyHandlerDirective];
|
|
618
441
|
const standaloneComponents = [
|
|
442
|
+
GridComponent,
|
|
619
443
|
ItemGroupComponent,
|
|
620
444
|
ModalCompactWrapperComponent,
|
|
621
445
|
TextareaComponent,
|
|
@@ -703,7 +527,7 @@ class KirbyModule {
|
|
|
703
527
|
}
|
|
704
528
|
}
|
|
705
529
|
/** @nocollapse */ KirbyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: KirbyModule, deps: [{ token: i1$1.ModalController }, { token: ConfigToken, optional: true }], target: i0.ɵɵFactoryTarget.NgModule });
|
|
706
|
-
/** @nocollapse */ KirbyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: KirbyModule, declarations: [
|
|
530
|
+
/** @nocollapse */ KirbyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: KirbyModule, declarations: [ModalRouterLinkDirective, KeyHandlerDirective], imports: [CommonModule, RouterModule, KirbyIonicModule, KirbyAppModule,
|
|
707
531
|
RouterOutletModule,
|
|
708
532
|
PageModule,
|
|
709
533
|
TabsModule,
|
|
@@ -721,7 +545,8 @@ class KirbyModule {
|
|
|
721
545
|
KirbyBadgeModule,
|
|
722
546
|
FormFieldModule,
|
|
723
547
|
SlideModule,
|
|
724
|
-
AccordionModule,
|
|
548
|
+
AccordionModule, GridComponent,
|
|
549
|
+
ItemGroupComponent,
|
|
725
550
|
ModalCompactWrapperComponent,
|
|
726
551
|
TextareaComponent,
|
|
727
552
|
InputComponent,
|
|
@@ -769,7 +594,8 @@ class KirbyModule {
|
|
|
769
594
|
KirbyBadgeModule,
|
|
770
595
|
FormFieldModule,
|
|
771
596
|
SlideModule,
|
|
772
|
-
AccordionModule,
|
|
597
|
+
AccordionModule, GridComponent,
|
|
598
|
+
ItemGroupComponent,
|
|
773
599
|
ModalCompactWrapperComponent,
|
|
774
600
|
TextareaComponent,
|
|
775
601
|
InputComponent,
|
|
@@ -799,7 +625,7 @@ class KirbyModule {
|
|
|
799
625
|
CalendarComponent,
|
|
800
626
|
ButtonComponent,
|
|
801
627
|
ComponentLoaderDirective,
|
|
802
|
-
FlagComponent,
|
|
628
|
+
FlagComponent, ModalRouterLinkDirective] });
|
|
803
629
|
/** @nocollapse */ KirbyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: KirbyModule, providers: providers, imports: [CommonModule, RouterModule, KirbyIonicModule, KirbyAppModule,
|
|
804
630
|
RouterOutletModule,
|
|
805
631
|
PageModule,
|
|
@@ -818,7 +644,8 @@ class KirbyModule {
|
|
|
818
644
|
KirbyBadgeModule,
|
|
819
645
|
FormFieldModule,
|
|
820
646
|
SlideModule,
|
|
821
|
-
AccordionModule,
|
|
647
|
+
AccordionModule, GridComponent,
|
|
648
|
+
ItemGroupComponent,
|
|
822
649
|
ModalCompactWrapperComponent,
|
|
823
650
|
TextareaComponent,
|
|
824
651
|
InputComponent,
|
|
@@ -902,5 +729,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
|
|
|
902
729
|
* Generated bundle index. Do not edit.
|
|
903
730
|
*/
|
|
904
731
|
|
|
905
|
-
export { KirbyBadge as BadgeComponent,
|
|
732
|
+
export { KirbyBadge as BadgeComponent, KeyHandlerDirective, KirbyBadgeModule, KirbyExperimentalModule, KirbyModule, ModalRouterLinkDirective, PageLocalNavigationComponent, SegmentedControlComponent, SegmentedControlMode };
|
|
906
733
|
//# sourceMappingURL=kirbydesign-designsystem.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kirbydesign-designsystem.mjs","sources":["../../../../libs/designsystem/src/lib/components/angular-component-lib/utils.ts","../../../../libs/designsystem/src/lib/components/web-component-proxies.component.ts","../../../../libs/designsystem/src/lib/components/grid/breakpoint-helper.service.ts","../../../../libs/designsystem/src/lib/components/grid/grid.component.ts","../../../../libs/designsystem/src/lib/components/grid/grid.component.html","../../../../libs/designsystem/src/lib/components/grid/grid-card-configuration.ts","../../../../libs/designsystem/src/lib/components/kirby-badge.module.ts","../../../../libs/designsystem/src/lib/components/segmented-control/segmented-control.component.ts","../../../../libs/designsystem/src/lib/components/segmented-control/segmented-control.component.html","../../../../libs/designsystem/src/lib/components/toast/services/toast.helper.ts","../../../../libs/designsystem/src/lib/components/toast/services/toast.controller.ts","../../../../libs/designsystem/src/lib/components/page-local-navigation/page-local-navigation.component.ts","../../../../libs/designsystem/src/lib/components/page-local-navigation/page-local-navigation.component.html","../../../../libs/designsystem/src/lib/directives/key-handler/key-handler.directive.ts","../../../../libs/designsystem/src/lib/directives/modal-router-link/modal-router-link.directive.ts","../../../../libs/designsystem/src/lib/custom-elements-initializer.ts","../../../../libs/designsystem/src/lib/kirby.module.ts","../../../../libs/designsystem/src/lib/kirby-experimental.module.ts","../../../../libs/designsystem/src/kirbydesign-designsystem.ts"],"sourcesContent":["import { fromEvent } from 'rxjs';\n\nexport const proxyInputs = (Cmp: any, inputs: string[]) => {\n const Prototype = Cmp.prototype;\n inputs.forEach((item) => {\n Object.defineProperty(Prototype, item, {\n get() {\n return this.el[item];\n },\n set(val: any) {\n this.z.runOutsideAngular(() => (this.el[item] = val));\n },\n });\n });\n};\n\nexport const proxyMethods = (Cmp: any, methods: string[]) => {\n const Prototype = Cmp.prototype;\n methods.forEach((methodName) => {\n Prototype[methodName] = function () {\n const args = arguments;\n return this.z.runOutsideAngular(() => this.el[methodName].apply(this.el, args));\n };\n });\n};\n\nexport const proxyOutputs = (instance: any, el: any, events: string[]) => {\n events.forEach((eventName) => (instance[eventName] = fromEvent(el, eventName)));\n};\n\n// tslint:disable-next-line: only-arrow-functions\nexport function ProxyCmp(opts: { inputs?: any; methods?: any }) {\n const decorator = function (cls: any) {\n if (opts.inputs) {\n proxyInputs(cls, opts.inputs);\n }\n if (opts.methods) {\n proxyMethods(cls, opts.methods);\n }\n return cls;\n };\n return decorator;\n}\n","/* tslint:disable */\n/* auto-generated angular directive proxies */\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nimport { Components } from '@kirbydesign/core';\n\n\nexport declare interface KirbyBadge extends Components.KirbyBadge {}\n@ProxyCmp({\n inputs: ['size', 'text', 'themeColor']\n})\n@Component({\n selector: 'kirby-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n inputs: ['size', 'text', 'themeColor']\n})\nexport class KirbyBadge {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class BreakpointHelperService implements OnDestroy {\n currentScreenWidth: 800;\n private orientationChangedSubject = new Subject<void>();\n\n constructor() {\n this.init();\n }\n\n private init() {\n // TODO JEO: Implement Angular/CDK BreakpointObserver:\n this.orientationChangedSubject.next();\n }\n\n observe(): Observable<void> {\n return this.orientationChangedSubject.asObservable();\n }\n\n ngOnDestroy() {\n this.orientationChangedSubject.complete();\n }\n}\n","import { Component, HostBinding, Input, OnDestroy } from '@angular/core';\nimport { ScssHelper } from '@kirbydesign/designsystem/helpers/scss';\nimport { Subscription } from 'rxjs';\n\nimport { BreakpointHelperService } from './breakpoint-helper.service';\nimport { GridCardConfiguration } from './grid-card-configuration';\n\nconst GRID_DEPRICATION_WARNING =\n 'Deprecation warning: The \"kirby-grid\" component will be removed in a future release of Kirby designsystem. Consider using kirby-grid, kirby-grid-item css-classes as an alternative solution. See grid docs at https://cookbook.kirby.design/#/home/showcase/grid';\n\nclass GridCard {\n configuration: GridCardConfiguration;\n row: number;\n col: number;\n colSpan: number;\n\n constructor(configuration: GridCardConfiguration, row: number, col: number, colSpan: number) {\n this.configuration = configuration;\n this.row = row;\n this.col = col;\n this.colSpan = colSpan;\n }\n}\n\n@Component({\n selector: 'kirby-grid',\n templateUrl: './grid.component.html',\n styleUrls: ['./grid.component.scss'],\n})\nexport class GridComponent implements OnDestroy {\n cardConfigs: GridCardConfiguration[];\n cards: GridCard[] = [];\n private breakpointSubscription: Subscription;\n\n @HostBinding('attr.max-columns')\n @Input()\n maxColumns: number;\n\n @Input()\n set cardConfigurations(cardConfigurations: GridCardConfiguration[]) {\n this.cardConfigs = cardConfigurations;\n // TODO TRM/JEO Remove this when breakpoint observe something something...\n this.configureGrid();\n }\n\n constructor(private breakpointHelper: BreakpointHelperService) {\n console.warn(GRID_DEPRICATION_WARNING);\n }\n\n configureGrid() {\n let calculatedMaxColumns = 0;\n if (this.maxColumns === undefined) {\n calculatedMaxColumns =\n this.breakpointHelper.currentScreenWidth >= ScssHelper.BREAKPOINT_SCREEN_L ? 2 : 1;\n } else {\n calculatedMaxColumns = this.maxColumns;\n }\n this.cards = [];\n let columnCounter = 0;\n let currentRow = 0;\n let currentColumn = 0;\n\n this.cardConfigs.forEach((card, index) => {\n // Cards colspan is added to the column counter\n columnCounter += card.preferredSize;\n // If only maxColumns are set to 1, just add all cards with a colspan of 1\n if (calculatedMaxColumns === 1) {\n this.cards.push(new GridCard(card, currentRow, currentColumn, 1));\n currentRow += 1;\n return;\n }\n // If we are below maxColumns, then add the card to the array\n if (columnCounter <= calculatedMaxColumns) {\n this.cards.push(new GridCard(card, currentRow, currentColumn, card.preferredSize));\n // Update currentColumn, so the next card will be placed correctly\n currentColumn += card.preferredSize;\n } else {\n // The new card didn't fit - Calculate remaining columns for previous card\n const restColumns = calculatedMaxColumns - (columnCounter - card.preferredSize);\n const prevCard = this.cards[index - 1];\n // Add the restColumns to the previous cards colspan, to make it span out\n prevCard.colSpan = restColumns + prevCard.colSpan;\n // We are now on a new row\n currentRow += 1;\n currentColumn = 0;\n this.cards.push(new GridCard(card, currentRow, currentColumn, card.preferredSize));\n // Update currentColumn to match the size of the new card and reset columnCounter\n currentColumn = card.preferredSize;\n columnCounter = card.preferredSize;\n }\n // If we on the last card, make sure it spans all the rest of the columns\n if (this.cardConfigs.length - 1 === index) {\n const restColumns = calculatedMaxColumns - columnCounter;\n const currentCard = this.cards[index];\n currentCard.colSpan += restColumns;\n }\n });\n }\n\n ngOnDestroy() {\n if (this.breakpointSubscription) {\n this.breakpointSubscription.unsubscribe();\n }\n }\n}\n","<ng-container *ngFor=\"let card of cards\">\n <ng-template\n [kirbyLoadComponent]=\"card.configuration\"\n [cssClass]=\"'grid-item--col-' + card.colSpan\"\n ></ng-template>\n</ng-container>\n","import { Type } from '@angular/core';\nimport { ComponentConfiguration } from '@kirbydesign/designsystem/shared';\n\nexport class GridCardConfiguration implements ComponentConfiguration {\n constructor(public component: Type<any>, public data: any, public preferredSize: number) {}\n}\n","import { NgModule } from '@angular/core';\nimport { KirbyBadge } from './web-component-proxies.component';\n\n@NgModule({\n declarations: [KirbyBadge],\n exports: [KirbyBadge],\n})\nexport class KirbyBadgeModule {}\n","import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\nimport { IonicModule } from '@ionic/angular';\nimport { CommonModule } from '@angular/common';\nimport { IconModule, IconRegistryService } from '@kirbydesign/designsystem/icon';\nimport { KirbyBadgeModule } from '../kirby-badge.module';\n\nimport { SegmentItem, SegmentItemInternal } from './segment-item';\n\nexport enum SegmentedControlMode {\n chip = 'chip',\n compactChip = 'compactChip',\n default = 'default',\n}\n\n@Component({\n standalone: true,\n imports: [IonicModule, IconModule, KirbyBadgeModule, CommonModule],\n selector: 'kirby-segmented-control',\n templateUrl: './segmented-control.component.html',\n styleUrls: ['./segmented-control.component.scss'],\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { role: 'group' },\n})\nexport class SegmentedControlComponent {\n constructor(private iconRegistryService: IconRegistryService) {}\n\n /**\n * Ensure that the click actually did originate from within the segment-button.\n * We do not want to react to clicks on e.g. segment-btn-wrapper or badge.\n */\n preventOutsideClick(event: TouchEvent) {\n if (event.target instanceof HTMLElement) {\n const targetIsInSegmentBtn = !!event.target.closest('ion-segment-button');\n if (!targetIsInSegmentBtn) {\n event.stopImmediatePropagation();\n }\n }\n }\n\n @Input() mode: SegmentedControlMode | `${SegmentedControlMode}` = SegmentedControlMode.default;\n\n @HostBinding('class')\n get _modeCssClass() {\n return {\n [SegmentedControlMode.chip]: 'chip-mode',\n [SegmentedControlMode.default]: 'default-mode',\n [SegmentedControlMode.compactChip]: 'compact chip-mode',\n }[this.mode];\n }\n\n private _items: SegmentItemInternal[] = [];\n get items(): SegmentItem[] {\n return this._items;\n }\n\n @Input() set items(value: SegmentItem[]) {\n this._items = value || [];\n this._items.forEach((item) => {\n if (!item.badge) return;\n // We need to verify whether badges icon is custom or default, so we can check for it in the template\n item.badge.isCustomIcon =\n item.badge.icon !== undefined &&\n this.iconRegistryService.getIcon(item.badge.icon) !== undefined;\n });\n this._value = this.items[this.selectedIndex];\n }\n\n private _selectedIndex: number = -1;\n get selectedIndex(): number {\n return this._selectedIndex;\n }\n\n @Input() set selectedIndex(index: number) {\n if (index !== this._selectedIndex) {\n this._selectedIndex = index;\n this._value = this.items[this.selectedIndex];\n this.selectedIndexChange.emit(this.selectedIndex);\n }\n }\n\n @Output() selectedIndexChange = new EventEmitter<number>();\n\n private _value: SegmentItem;\n get value(): SegmentItem {\n return this._value;\n }\n\n @Input() set value(value: SegmentItem) {\n this.selectedIndex = this.items.indexOf(value);\n }\n\n @HostBinding('class.sm')\n isSmallSize: boolean;\n\n @Input() set size(size: 'sm' | 'md') {\n this.isSmallSize = size === 'sm';\n }\n\n private _disableChangeOnSwipe: boolean = false;\n get disableChangeOnSwipe(): boolean {\n return this._disableChangeOnSwipe;\n }\n\n @Input() set disableChangeOnSwipe(value: boolean) {\n this._disableChangeOnSwipe = value;\n }\n\n @Output() segmentSelect: EventEmitter<SegmentItem> = new EventEmitter();\n\n onSegmentSelect(selectedId: string) {\n const selectedItemIndex = this.items.findIndex((item) => selectedId === item.id);\n\n if (selectedItemIndex !== this.selectedIndex) {\n this.selectedIndex = selectedItemIndex;\n setTimeout(() => {\n this.segmentSelect.emit(this.value);\n });\n }\n }\n}\n","<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">{{ item.text }}</ion-segment-button>\n <div class=\"badge-container\" *ngIf=\"item.badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon\n *ngIf=\"item.badge.isCustomIcon; else defaultIconName\"\n [customName]=\"item.badge.icon\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </div>\n </ng-container>\n</ion-segment>\n","import { Injectable } from '@angular/core';\nimport { ToastController } from '@ionic/angular';\nimport { Overlay } from '@kirbydesign/designsystem/modal';\n\nimport { MessageType, ToastConfig } from '../config/toast-config';\n\n@Injectable()\nexport class ToastHelper {\n static CSS_CLASS = 'kirby-toast';\n static DURATION_IN_MS = 4000;\n\n constructor(private toastController: ToastController) {}\n\n public async showToast(config: ToastConfig): Promise<Overlay> {\n const toast = await this.toastController.create({\n animated: config.animated,\n message: config.message,\n position: 'top',\n duration: config.durationInMs ? config.durationInMs : ToastHelper.DURATION_IN_MS,\n cssClass: this.getCssClass(config.messageType),\n });\n await toast.present();\n return {\n dismiss: toast.dismiss.bind(toast),\n onWillDismiss: toast.onWillDismiss(),\n onDidDismiss: toast.onDidDismiss(),\n };\n }\n\n private getCssClass(messageType: MessageType): string {\n let cssClass = ToastHelper.CSS_CLASS;\n\n if (messageType) {\n cssClass += ' ' + messageType;\n }\n\n return cssClass;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ToastConfig } from '../config/toast-config';\n\nimport { ToastHelper } from './toast.helper';\n\n@Injectable()\nexport class ToastController {\n constructor(private toastHelper: ToastHelper) {}\n\n public showToast(config: ToastConfig, onCloseToast?: () => void) {\n this.toastHelper.showToast(config).then((overlay) => {\n if (onCloseToast) {\n overlay.onDidDismiss.then(() => onCloseToast());\n }\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { WindowRef } from '@kirbydesign/designsystem/types';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { KirbyBadgeModule } from '../kirby-badge.module';\nimport { LocalNavigationItem } from './page-local-navigation-item';\n\n@Component({\n standalone: true,\n imports: [KirbyBadgeModule, IconModule, CommonModule],\n selector: 'kirby-page-local-navigation',\n templateUrl: './page-local-navigation.component.html',\n styleUrls: ['./page-local-navigation.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PageLocalNavigationComponent implements AfterViewInit {\n private readonly DEBOUNCE_TIME_MS = 250;\n\n @Input() items: LocalNavigationItem[] = [];\n @Input() selectedIndex = 0;\n\n @Output() selectedIndexChange = new EventEmitter<number>();\n\n @ViewChild('tabBar') tabBarElementRef?: ElementRef<HTMLElement>;\n private get tabBarNativeElement(): HTMLElement | undefined {\n return this.tabBarElementRef?.nativeElement;\n }\n\n constructor(private window: WindowRef) {\n console.warn(\n 'kirby-local-navigation component is an experimental feature and should not be used in a production environment.'\n );\n }\n\n ngAfterViewInit(): void {\n setTimeout(() => {\n this.scrollToSelectedTab(this.selectedIndex);\n }, this.DEBOUNCE_TIME_MS);\n }\n\n onTabChange(index: number): void {\n if (this.selectedIndex !== index) {\n this.selectedIndex = index;\n this.scrollToSelectedTab(index);\n this.selectedIndexChange.emit(index);\n }\n }\n\n private getSelectedItemElement(index: number): HTMLElement | undefined {\n const tabBarElement = this.tabBarNativeElement;\n\n if (tabBarElement) {\n return tabBarElement.children.item(index) as HTMLElement;\n }\n }\n\n focusNext(index: number): void {\n const tabBarElement = this.tabBarNativeElement;\n if (tabBarElement) {\n const next = tabBarElement.children.item(index) as HTMLElement;\n next?.focus({ preventScroll: false });\n }\n }\n\n private scrollToSelectedTab(index: number): void {\n const tabBarElement = this.tabBarNativeElement;\n const selectedTabElement = this.getSelectedItemElement(index);\n\n if (tabBarElement && selectedTabElement) {\n const selectedTabElementWidth = selectedTabElement.getBoundingClientRect().width;\n const selectedTabElementOffsetLeft = selectedTabElement.offsetLeft;\n const tabBarElementWidth = tabBarElement.getBoundingClientRect().width;\n\n this.window.nativeWindow.requestAnimationFrame(() => {\n tabBarElement?.scrollTo({\n behavior: 'smooth',\n left: Math.max(\n 0,\n selectedTabElementOffsetLeft - (tabBarElementWidth - selectedTabElementWidth) / 2\n ),\n });\n });\n }\n }\n}\n","<div class=\"container\">\n <div class=\"tab-bar\" #tabBar>\n <div\n class=\"tab-item\"\n *ngFor=\"let item of items; let i = index\"\n (click)=\"onTabChange(i)\"\n [ngClass]=\"i === selectedIndex ? 'selected' : ''\"\n [tabIndex]=\"0\"\n (keydown.enter)=\"onTabChange(i)\"\n (keydown.arrowLeft)=\"focusNext(i - 1)\"\n (keydown.arrowRight)=\"focusNext(i + 1)\"\n >\n <div class=\"tab-item-inner\" [class.extended]=\"!!item.badge\">\n <span [attr.text]=\"item.text\">{{ item.text }}</span>\n <ng-container *ngIf=\"item.badge; let badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"badge.description\"\n [themeColor]=\"badge.themeColor\"\n >\n <ng-container *ngIf=\"badge.content.name; else badgeTextContent\">\n <kirby-icon\n *ngIf=\"badge.content.isCustom; else defaultIconName\"\n [customName]=\"badge.content.name\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"badge.content.name\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeTextContent>\n {{ badge.content.text }}\n </ng-template>\n </kirby-badge>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n","import { Directive, ElementRef, HostListener } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: `[keyHandler]`,\n})\nexport class KeyHandlerDirective {\n constructor(private element: ElementRef) {}\n\n @HostListener('keyup', ['$event'])\n keyEvent(event: KeyboardEvent) {\n if (event.key === ' ' || event.key === 'Enter' || event.key === 'Spacebar') {\n // Prevent the default action to stop scrolling when space is pressed\n event.preventDefault();\n\n const hostElement = <HTMLElement>this.element.nativeElement;\n hostElement.click();\n }\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport { Params } from '@angular/router';\nimport { ModalNavigationService } from '@kirbydesign/designsystem/modal';\n\n@Directive({\n selector: `[kirbyModalRouterLink]`,\n})\nexport class ModalRouterLinkDirective {\n constructor(private modalNavigationService: ModalNavigationService) {}\n\n @Input('kirbyModalRouterLink') path: string | string[];\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('kirbyModalQueryParams') queryParams?: Params;\n\n @HostListener('click')\n onClick(): boolean {\n this.modalNavigationService.navigateToModal(\n this.path,\n typeof this.queryParams !== 'string' ? this.queryParams : null\n );\n return false;\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { APP_INITIALIZER } from '@angular/core';\n\nimport { defineCustomElements } from '@kirbydesign/core/loader';\n\nexport const appInitialize = (doc: Document) => {\n return () => {\n defineCustomElements(doc.defaultView);\n };\n};\n\nexport function customElementsInitializer() {\n return {\n provide: APP_INITIALIZER,\n useFactory: appInitialize,\n deps: [DOCUMENT],\n multi: true,\n };\n}\n","import { CommonModule } from '@angular/common';\nimport { Inject, InjectionToken, ModuleWithProviders, NgModule, Optional } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { CardModule } from '@kirbydesign/designsystem/card';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { KirbyIonicModule } from '@kirbydesign/designsystem/kirby-ionic-module';\nimport {\n ComponentLoaderDirective,\n ResizeObserverFactory,\n ResizeObserverService,\n ThemeColorDirective,\n} from '@kirbydesign/designsystem/shared';\nimport { FlagComponent } from '@kirbydesign/designsystem/flag';\nimport { SpinnerModule } from '@kirbydesign/designsystem/spinner';\nimport { ToggleComponent } from '@kirbydesign/designsystem/toggle';\nimport { SectionHeaderComponent } from '@kirbydesign/designsystem/section-header';\nimport { ItemModule } from '@kirbydesign/designsystem/item';\nimport { SlideModule } from '@kirbydesign/designsystem/slide';\nimport { ToggleButtonModule } from '@kirbydesign/designsystem/toggle-button';\nimport { TabsModule } from '@kirbydesign/designsystem/tabs';\nimport { SlideButtonComponent } from '@kirbydesign/designsystem/slide-button';\nimport { RangeComponent } from '@kirbydesign/designsystem/range';\nimport { PopoverComponent } from '@kirbydesign/designsystem/popover';\nimport {\n LoadingOverlayComponent,\n LoadingOverlayService,\n} from '@kirbydesign/designsystem/loading-overlay';\nimport { DividerComponent } from '@kirbydesign/designsystem/divider';\nimport { CheckboxComponent } from '@kirbydesign/designsystem/checkbox';\nimport { AccordionModule } from '@kirbydesign/designsystem/accordion';\nimport { ItemSlidingComponent } from '@kirbydesign/designsystem/item-sliding';\nimport { ListModule } from '@kirbydesign/designsystem/list';\nimport { RadioModule } from '@kirbydesign/designsystem/radio';\nimport {\n AffixDirective,\n DateInputDirective,\n FormFieldModule,\n InputComponent,\n TextareaComponent,\n} from '@kirbydesign/designsystem/form-field';\nimport { AvatarComponent } from '@kirbydesign/designsystem/avatar';\nimport {\n ProgressCircleComponent,\n ProgressCircleRingComponent,\n} from '@kirbydesign/designsystem/progress-circle';\nimport { RouterOutletModule } from '@kirbydesign/designsystem/router-outlet';\nimport { ItemGroupComponent } from '@kirbydesign/designsystem/item-group';\nimport { ButtonComponent } from '@kirbydesign/designsystem/button';\nimport { CalendarComponent } from '@kirbydesign/designsystem/calendar';\nimport {\n ActionSheetComponent,\n ActionSheetHelper,\n AlertComponent,\n AlertHelper,\n ModalCompactWrapperComponent,\n ModalController,\n ModalFooterComponent,\n ModalHelper,\n ModalWrapperComponent,\n} from '@kirbydesign/designsystem/modal';\nimport { PageModule } from '@kirbydesign/designsystem/page';\nimport { EmptyStateModule } from '@kirbydesign/designsystem/empty-state';\nimport { DropdownModule } from '@kirbydesign/designsystem/dropdown';\nimport { KirbyAppModule } from '@kirbydesign/designsystem/kirby-app';\nimport { ChartsModule } from '@kirbydesign/designsystem/chart';\nimport { FabSheetComponent } from '@kirbydesign/designsystem/fab-sheet';\nimport { DataTableModule } from '@kirbydesign/designsystem/data-table';\nimport { ReorderListComponent } from '@kirbydesign/designsystem/reorder-list';\n\nimport { BreakpointHelperService } from './components/grid/breakpoint-helper.service';\nimport { GridComponent } from './components/grid/grid.component';\nimport { SegmentedControlComponent } from './components/segmented-control/segmented-control.component';\nimport { ToastController } from './components/toast/services/toast.controller';\nimport { ToastHelper } from './components/toast/services/toast.helper';\nimport { customElementsInitializer } from './custom-elements-initializer';\nimport { KeyHandlerDirective } from './directives/key-handler/key-handler.directive';\nimport { ModalRouterLinkDirective } from './directives/modal-router-link/modal-router-link.directive';\nimport { KirbyBadgeModule } from './components/kirby-badge.module';\n\nconst exportedDeclarations = [GridComponent, ModalRouterLinkDirective];\n\nconst declarations = [...exportedDeclarations, KeyHandlerDirective];\n\nconst standaloneComponents = [\n ItemGroupComponent,\n ModalCompactWrapperComponent,\n TextareaComponent,\n InputComponent,\n AffixDirective,\n DateInputDirective,\n DividerComponent,\n ThemeColorDirective,\n SegmentedControlComponent,\n AlertComponent,\n PopoverComponent,\n ProgressCircleRingComponent,\n ModalWrapperComponent,\n SectionHeaderComponent,\n RangeComponent,\n ItemSlidingComponent,\n\n ProgressCircleComponent,\n ReorderListComponent,\n LoadingOverlayComponent,\n FabSheetComponent,\n ToggleComponent,\n SlideButtonComponent,\n SegmentedControlComponent,\n CheckboxComponent,\n ActionSheetComponent,\n ModalFooterComponent,\n AvatarComponent,\n CalendarComponent,\n ButtonComponent,\n ComponentLoaderDirective,\n FlagComponent,\n];\nconst exportedModules = [\n KirbyAppModule,\n RouterOutletModule,\n PageModule,\n TabsModule,\n IconModule,\n ItemModule,\n ToggleButtonModule,\n ListModule,\n ChartsModule,\n SpinnerModule,\n DataTableModule,\n CardModule,\n RadioModule,\n EmptyStateModule,\n DropdownModule,\n KirbyBadgeModule,\n FormFieldModule,\n SlideModule,\n AccordionModule,\n ...standaloneComponents,\n];\n\nconst allExports = [...exportedModules, ...exportedDeclarations];\n\nconst importedModules = [...exportedModules];\n\nconst providers = [\n ModalController,\n ActionSheetHelper,\n ModalHelper,\n AlertHelper,\n ToastHelper,\n ToastController,\n BreakpointHelperService,\n LoadingOverlayService,\n ResizeObserverFactory,\n ResizeObserverService,\n customElementsInitializer(),\n];\n\nconst ConfigToken = new InjectionToken<any>('USERCONFIG');\nexport interface KirbyConfig {\n moduleRootRoutePath?: string;\n}\n\n@NgModule({\n imports: [CommonModule, RouterModule, KirbyIonicModule, ...importedModules],\n declarations: [declarations],\n providers: providers,\n exports: [allExports],\n})\nexport class KirbyModule {\n static forChild(config?: KirbyConfig): ModuleWithProviders<KirbyModule> {\n return {\n ngModule: KirbyModule,\n providers: [\n {\n provide: ConfigToken,\n useValue: config,\n },\n ],\n };\n }\n\n constructor(\n modalController: ModalController,\n @Optional() @Inject(ConfigToken) config?: KirbyConfig\n ) {\n modalController.initialize(config && config.moduleRootRoutePath);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { PageLocalNavigationComponent } from './components';\nimport { KirbyModule } from './kirby.module';\n\nconst COMPONENT_DECLARATIONS = [PageLocalNavigationComponent];\nexport { StockChartConfig, BarChartConfig } from '@kirbydesign/designsystem/chart';\n\n/**\n * This module contains experimental components, that should not be used in a production environment.\n * @see KirbyModule\n */\n@NgModule({\n imports: [CommonModule, KirbyModule, PageLocalNavigationComponent],\n exports: COMPONENT_DECLARATIONS,\n})\nexport class KirbyExperimentalModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.BreakpointHelperService","i2","i3.KirbyBadge","i1","i1.ToastHelper","i2.KirbyBadge"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,MAAM,WAAW,GAAG,CAAC,GAAQ,EAAE,MAAgB,KAAI;AACxD,IAAA,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;AAChC,IAAA,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACtB,QAAA,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE;YACrC,GAAG,GAAA;AACD,gBAAA,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;aACtB;AACD,YAAA,GAAG,CAAC,GAAQ,EAAA;AACV,gBAAA,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;aACvD;AACF,SAAA,CAAC,CAAC;AACL,KAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEK,MAAM,YAAY,GAAG,CAAC,GAAQ,EAAE,OAAiB,KAAI;AAC1D,IAAA,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;AAChC,IAAA,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,KAAI;QAC7B,SAAS,CAAC,UAAU,CAAC,GAAG,YAAA;YACtB,MAAM,IAAI,GAAG,SAAS,CAAC;YACvB,OAAO,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;AAClF,SAAC,CAAC;AACJ,KAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEK,MAAM,YAAY,GAAG,CAAC,QAAa,EAAE,EAAO,EAAE,MAAgB,KAAI;IACvE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,MAAM,QAAQ,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;AAClF,CAAC,CAAC;AAEF;AACM,SAAU,QAAQ,CAAC,IAAqC,EAAA;IAC5D,MAAM,SAAS,GAAG,UAAU,GAAQ,EAAA;QAClC,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,YAAA,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/B,SAAA;QACD,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AACjC,SAAA;AACD,QAAA,OAAO,GAAG,CAAC;AACb,KAAC,CAAC;AACF,IAAA,OAAO,SAAS,CAAC;AACnB;;;;;;;;;;;;;;;;ACxBa,IAAA,UAAU,GAAhB,MAAM,UAAU,CAAA;AAErB,IAAA,WAAA,CAAY,CAAoB,EAAE,CAAa,EAAY,CAAS,EAAA;AAAT,QAAA,IAAC,CAAA,CAAA,GAAD,CAAC,CAAQ;QAClE,CAAC,CAAC,MAAM,EAAE,CAAC;AACX,QAAA,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;KAC3B;;0HALU,UAAU,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAV,mBAAA,UAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAU,qHAHX,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;AAG1B,UAAU,GAAA,UAAA,CAAA;AATtB,IAAA,QAAQ,CAAC;AACR,QAAA,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC;KACvC,CAAC;qCASe,iBAAiB,EAAK,UAAU,EAAe,MAAM,CAAA,CAAA;CAFzD,EAAA,UAAU,CAMtB,CAAA;2FANY,UAAU,EAAA,UAAA,EAAA,CAAA;kBANtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;oBACvB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC;iBACvC,CAAA;;;MCXY,uBAAuB,CAAA;AAIlC,IAAA,WAAA,GAAA;AAFQ,QAAA,IAAA,CAAA,yBAAyB,GAAG,IAAI,OAAO,EAAQ,CAAC;QAGtD,IAAI,CAAC,IAAI,EAAE,CAAC;KACb;IAEO,IAAI,GAAA;;AAEV,QAAA,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC;KACvC;IAED,OAAO,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,yBAAyB,CAAC,YAAY,EAAE,CAAC;KACtD;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,CAAC;KAC3C;;uIAnBU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAvB,mBAAA,uBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cAFtB,MAAM,EAAA,CAAA,CAAA;2FAEP,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;iBACnB,CAAA;;;ACED,MAAM,wBAAwB,GAC5B,mQAAmQ,CAAC;AAEtQ,MAAM,QAAQ,CAAA;AAMZ,IAAA,WAAA,CAAY,aAAoC,EAAE,GAAW,EAAE,GAAW,EAAE,OAAe,EAAA;AACzF,QAAA,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;AACnC,QAAA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;AACF,CAAA;MAOY,aAAa,CAAA;AAgBxB,IAAA,WAAA,CAAoB,gBAAyC,EAAA;AAAzC,QAAA,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAyB;AAd7D,QAAA,IAAK,CAAA,KAAA,GAAe,EAAE,CAAC;AAerB,QAAA,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;KACxC;IATD,IACI,kBAAkB,CAAC,kBAA2C,EAAA;AAChE,QAAA,IAAI,CAAC,WAAW,GAAG,kBAAkB,CAAC;;QAEtC,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;IAMD,aAAa,GAAA;QACX,IAAI,oBAAoB,GAAG,CAAC,CAAC;AAC7B,QAAA,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE;YACjC,oBAAoB;AAClB,gBAAA,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,IAAI,UAAU,CAAC,mBAAmB,GAAG,CAAC,GAAG,CAAC,CAAC;AACtF,SAAA;AAAM,aAAA;AACL,YAAA,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC;AACxC,SAAA;AACD,QAAA,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,aAAa,GAAG,CAAC,CAAC;QAEtB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,KAAI;;AAEvC,YAAA,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC;;YAEpC,IAAI,oBAAoB,KAAK,CAAC,EAAE;AAC9B,gBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClE,UAAU,IAAI,CAAC,CAAC;gBAChB,OAAO;AACR,aAAA;;YAED,IAAI,aAAa,IAAI,oBAAoB,EAAE;AACzC,gBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;;AAEnF,gBAAA,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC;AACrC,aAAA;AAAM,iBAAA;;gBAEL,MAAM,WAAW,GAAG,oBAAoB,IAAI,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;gBAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;;gBAEvC,QAAQ,CAAC,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC;;gBAElD,UAAU,IAAI,CAAC,CAAC;gBAChB,aAAa,GAAG,CAAC,CAAC;AAClB,gBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;;AAEnF,gBAAA,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;AACnC,gBAAA,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;AACpC,aAAA;;YAED,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,KAAK,KAAK,EAAE;AACzC,gBAAA,MAAM,WAAW,GAAG,oBAAoB,GAAG,aAAa,CAAC;gBACzD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACtC,gBAAA,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC;AACpC,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;IAED,WAAW,GAAA;QACT,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC/B,YAAA,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;AAC3C,SAAA;KACF;;6HA1EU,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,uBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAb,mBAAA,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,mMC7B1B,yMAMA,EAAA,MAAA,EAAA,CAAA,iiDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDuBa,aAAa,EAAA,UAAA,EAAA,CAAA;kBALzB,SAAS;+BACE,YAAY,EAAA,QAAA,EAAA,yMAAA,EAAA,MAAA,EAAA,CAAA,iiDAAA,CAAA,EAAA,CAAA;2GAWtB,UAAU,EAAA,CAAA;sBAFT,WAAW;uBAAC,kBAAkB,CAAA;;sBAC9B,KAAK;gBAIF,kBAAkB,EAAA,CAAA;sBADrB,KAAK;;;MEnCK,qBAAqB,CAAA;AAChC,IAAA,WAAA,CAAmB,SAAoB,EAAS,IAAS,EAAS,aAAqB,EAAA;AAApE,QAAA,IAAS,CAAA,SAAA,GAAT,SAAS,CAAW;AAAS,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAK;AAAS,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAQ;KAAI;AAC5F;;MCEY,gBAAgB,CAAA;;gIAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;iIAAhB,gBAAgB,EAAA,YAAA,EAAA,CAHZ,UAAU,CAAA,EAAA,OAAA,EAAA,CACf,UAAU,CAAA,EAAA,CAAA,CAAA;iIAET,gBAAgB,EAAA,CAAA,CAAA;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,UAAU,CAAC;oBAC1B,OAAO,EAAE,CAAC,UAAU,CAAC;iBACtB,CAAA;;;ACEW,IAAA,qBAIX;AAJD,CAAA,UAAY,oBAAoB,EAAA;AAC9B,IAAA,oBAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACb,IAAA,oBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B,CAAA;AAC3B,IAAA,oBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACrB,CAAC,EAJW,oBAAoB,KAApB,oBAAoB,GAI/B,EAAA,CAAA,CAAA,CAAA;MAWY,yBAAyB,CAAA;AACpC,IAAA,WAAA,CAAoB,mBAAwC,EAAA;AAAxC,QAAA,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAqB;AAenD,QAAA,IAAA,CAAA,IAAI,GAAqD,oBAAoB,CAAC,OAAO,CAAC;AAWvF,QAAA,IAAM,CAAA,MAAA,GAA0B,EAAE,CAAC;AAiBnC,QAAA,IAAc,CAAA,cAAA,GAAW,CAAC,CAAC,CAAC;AAa1B,QAAA,IAAA,CAAA,mBAAmB,GAAG,IAAI,YAAY,EAAU,CAAC;AAkBnD,QAAA,IAAqB,CAAA,qBAAA,GAAY,KAAK,CAAC;AASrC,QAAA,IAAA,CAAA,aAAa,GAA8B,IAAI,YAAY,EAAE,CAAC;KAnFR;AAEhE;;;AAGG;AACH,IAAA,mBAAmB,CAAC,KAAiB,EAAA;AACnC,QAAA,IAAI,KAAK,CAAC,MAAM,YAAY,WAAW,EAAE;AACvC,YAAA,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;YAC1E,IAAI,CAAC,oBAAoB,EAAE;gBACzB,KAAK,CAAC,wBAAwB,EAAE,CAAC;AAClC,aAAA;AACF,SAAA;KACF;AAID,IAAA,IACI,aAAa,GAAA;QACf,OAAO;AACL,YAAA,CAAC,oBAAoB,CAAC,IAAI,GAAG,WAAW;AACxC,YAAA,CAAC,oBAAoB,CAAC,OAAO,GAAG,cAAc;AAC9C,YAAA,CAAC,oBAAoB,CAAC,WAAW,GAAG,mBAAmB;AACxD,SAAA,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACd;AAGD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAED,IAAa,KAAK,CAAC,KAAoB,EAAA;AACrC,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;YAC3B,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,OAAO;;YAExB,IAAI,CAAC,KAAK,CAAC,YAAY;AACrB,gBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;AAC7B,oBAAA,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;AACpE,SAAC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC9C;AAGD,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;KAC5B;IAED,IAAa,aAAa,CAAC,KAAa,EAAA;AACtC,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,cAAc,EAAE;AACjC,YAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;YAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC7C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACnD,SAAA;KACF;AAKD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAED,IAAa,KAAK,CAAC,KAAkB,EAAA;QACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;KAChD;IAKD,IAAa,IAAI,CAAC,IAAiB,EAAA;AACjC,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;KAClC;AAGD,IAAA,IAAI,oBAAoB,GAAA;QACtB,OAAO,IAAI,CAAC,qBAAqB,CAAC;KACnC;IAED,IAAa,oBAAoB,CAAC,KAAc,EAAA;AAC9C,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;KACpC;AAID,IAAA,eAAe,CAAC,UAAkB,EAAA;AAChC,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,UAAU,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;AAEjF,QAAA,IAAI,iBAAiB,KAAK,IAAI,CAAC,aAAa,EAAE;AAC5C,YAAA,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC;YACvC,UAAU,CAAC,MAAK;gBACd,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACtC,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;;yIA/FU,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;6HAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,aAAA,EAAA,eAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvBtC,ilCA8BA,EDdY,MAAA,EAAA,CAAA,u4HAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,WAAW,idAAE,UAAU,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FAOtD,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBATrC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,WACP,CAAC,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,YACxD,yBAAyB,EAAA,IAAA,EAI7B,EAAE,IAAI,EAAE,OAAO,EAAE,EAAA,QAAA,EAAA,ilCAAA,EAAA,MAAA,EAAA,CAAA,u4HAAA,CAAA,EAAA,CAAA;0GAkBd,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAGF,aAAa,EAAA,CAAA;sBADhB,WAAW;uBAAC,OAAO,CAAA;gBAcP,KAAK,EAAA,CAAA;sBAAjB,KAAK;gBAiBO,aAAa,EAAA,CAAA;sBAAzB,KAAK;gBAQI,mBAAmB,EAAA,CAAA;sBAA5B,MAAM;gBAOM,KAAK,EAAA,CAAA;sBAAjB,KAAK;gBAKN,WAAW,EAAA,CAAA;sBADV,WAAW;uBAAC,UAAU,CAAA;gBAGV,IAAI,EAAA,CAAA;sBAAhB,KAAK;gBASO,oBAAoB,EAAA,CAAA;sBAAhC,KAAK;gBAII,aAAa,EAAA,CAAA;sBAAtB,MAAM;;;MEpGI,WAAW,CAAA;AAItB,IAAA,WAAA,CAAoB,eAAgC,EAAA;AAAhC,QAAA,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;KAAI;AAE3C,IAAA,SAAS,CAAC,MAAmB,EAAA;;YACxC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;gBAC9C,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,OAAO,EAAE,MAAM,CAAC,OAAO;AACvB,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,QAAQ,EAAE,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,GAAG,WAAW,CAAC,cAAc;gBAChF,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC;AAC/C,aAAA,CAAC,CAAC;AACH,YAAA,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO;gBACL,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;AAClC,gBAAA,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE;AACpC,gBAAA,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE;aACnC,CAAC;SACH,CAAA,CAAA;AAAA,KAAA;AAEO,IAAA,WAAW,CAAC,WAAwB,EAAA;AAC1C,QAAA,IAAI,QAAQ,GAAG,WAAW,CAAC,SAAS,CAAC;AAErC,QAAA,IAAI,WAAW,EAAE;AACf,YAAA,QAAQ,IAAI,GAAG,GAAG,WAAW,CAAC;AAC/B,SAAA;AAED,QAAA,OAAO,QAAQ,CAAC;KACjB;;AA7BM,WAAS,CAAA,SAAA,GAAG,aAAa,CAAC;AAC1B,WAAc,CAAA,cAAA,GAAG,IAAI,CAAC;2HAFlB,WAAW,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;+HAAX,WAAW,EAAA,CAAA,CAAA;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBADvB,UAAU;;;MCCE,eAAe,CAAA;AAC1B,IAAA,WAAA,CAAoB,WAAwB,EAAA;AAAxB,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAa;KAAI;IAEzC,SAAS,CAAC,MAAmB,EAAE,YAAyB,EAAA;AAC7D,QAAA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,KAAI;AAClD,YAAA,IAAI,YAAY,EAAE;gBAChB,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC;AACjD,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;;+HATU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mIAAf,eAAe,EAAA,CAAA,CAAA;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;;;MCkBE,4BAA4B,CAAA;AAavC,IAAA,WAAA,CAAoB,MAAiB,EAAA;AAAjB,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAW;AAZpB,QAAA,IAAgB,CAAA,gBAAA,GAAG,GAAG,CAAC;AAE/B,QAAA,IAAK,CAAA,KAAA,GAA0B,EAAE,CAAC;AAClC,QAAA,IAAa,CAAA,aAAA,GAAG,CAAC,CAAC;AAEjB,QAAA,IAAA,CAAA,mBAAmB,GAAG,IAAI,YAAY,EAAU,CAAC;AAQzD,QAAA,OAAO,CAAC,IAAI,CACV,iHAAiH,CAClH,CAAC;KACH;AARD,IAAA,IAAY,mBAAmB,GAAA;;AAC7B,QAAA,OAAO,MAAA,IAAI,CAAC,gBAAgB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,aAAa,CAAC;KAC7C;IAQD,eAAe,GAAA;QACb,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAC/C,SAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;KAC3B;AAED,IAAA,WAAW,CAAC,KAAa,EAAA;AACvB,QAAA,IAAI,IAAI,CAAC,aAAa,KAAK,KAAK,EAAE;AAChC,YAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAC3B,YAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAChC,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACtC,SAAA;KACF;AAEO,IAAA,sBAAsB,CAAC,KAAa,EAAA;AAC1C,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC;AAE/C,QAAA,IAAI,aAAa,EAAE;YACjB,OAAO,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAgB,CAAC;AAC1D,SAAA;KACF;AAED,IAAA,SAAS,CAAC,KAAa,EAAA;AACrB,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC;AAC/C,QAAA,IAAI,aAAa,EAAE;YACjB,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAgB,CAAC;AAC/D,YAAA,IAAI,KAAJ,IAAA,IAAA,IAAI,KAAJ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,IAAI,CAAE,KAAK,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;AACvC,SAAA;KACF;AAEO,IAAA,mBAAmB,CAAC,KAAa,EAAA;AACvC,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAC/C,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAE9D,IAAI,aAAa,IAAI,kBAAkB,EAAE;YACvC,MAAM,uBAAuB,GAAG,kBAAkB,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;AACjF,YAAA,MAAM,4BAA4B,GAAG,kBAAkB,CAAC,UAAU,CAAC;YACnE,MAAM,kBAAkB,GAAG,aAAa,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;YAEvE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,MAAK;AAClD,gBAAA,aAAa,aAAb,aAAa,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAb,aAAa,CAAE,QAAQ,CAAC;AACtB,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,IAAI,EAAE,IAAI,CAAC,GAAG,CACZ,CAAC,EACD,4BAA4B,GAAG,CAAC,kBAAkB,GAAG,uBAAuB,IAAI,CAAC,CAClF;AACF,iBAAA,CAAC,CAAC;AACL,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;;4IApEU,4BAA4B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAD,IAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5B,mBAAA,4BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,wTCxBzC,04CAsCA,EAAA,MAAA,EAAA,CAAA,q1CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDpBY,gBAAgB,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,UAAU,6IAAE,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FAMzC,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBARxC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,gBAAgB,EAAE,UAAU,EAAE,YAAY,CAAC,EAC3C,QAAA,EAAA,6BAA6B,EAGtB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,04CAAA,EAAA,MAAA,EAAA,CAAA,q1CAAA,CAAA,EAAA,CAAA;kGAKtC,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBAEI,mBAAmB,EAAA,CAAA;sBAA5B,MAAM;gBAEc,gBAAgB,EAAA,CAAA;sBAApC,SAAS;uBAAC,QAAQ,CAAA;;;ME1BR,mBAAmB,CAAA;AAC9B,IAAA,WAAA,CAAoB,OAAmB,EAAA;AAAnB,QAAA,IAAO,CAAA,OAAA,GAAP,OAAO,CAAY;KAAI;AAG3C,IAAA,QAAQ,CAAC,KAAoB,EAAA;AAC3B,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,UAAU,EAAE;;YAE1E,KAAK,CAAC,cAAc,EAAE,CAAC;AAEvB,YAAA,MAAM,WAAW,GAAgB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;YAC5D,WAAW,CAAC,KAAK,EAAE,CAAC;AACrB,SAAA;KACF;;mIAZU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uHAAnB,mBAAmB,EAAA,QAAA,EAAA,cAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;AAET,oBAAA,QAAQ,EAAE,CAAc,YAAA,CAAA;iBACzB,CAAA;iGAKC,QAAQ,EAAA,CAAA;sBADP,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCFtB,wBAAwB,CAAA;AACnC,IAAA,WAAA,CAAoB,sBAA8C,EAAA;AAA9C,QAAA,IAAsB,CAAA,sBAAA,GAAtB,sBAAsB,CAAwB;KAAI;IAOtE,OAAO,GAAA;QACL,IAAI,CAAC,sBAAsB,CAAC,eAAe,CACzC,IAAI,CAAC,IAAI,EACT,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAC/D,CAAC;AACF,QAAA,OAAO,KAAK,CAAC;KACd;;wIAdU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAF,IAAA,CAAA,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;4HAAxB,wBAAwB,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,CAAA,sBAAA,EAAA,MAAA,CAAA,EAAA,WAAA,EAAA,CAAA,uBAAA,EAAA,aAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAwB,sBAAA,CAAA;iBACnC,CAAA;+GAIgC,IAAI,EAAA,CAAA;sBAAlC,KAAK;uBAAC,sBAAsB,CAAA;gBAEG,WAAW,EAAA,CAAA;sBAA1C,KAAK;uBAAC,uBAAuB,CAAA;gBAG9B,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO,CAAA;;;ACThB,MAAM,aAAa,GAAG,CAAC,GAAa,KAAI;AAC7C,IAAA,OAAO,MAAK;AACV,QAAA,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACxC,KAAC,CAAC;AACJ,CAAC,CAAC;SAEc,yBAAyB,GAAA;IACvC,OAAO;AACL,QAAA,OAAO,EAAE,eAAe;AACxB,QAAA,UAAU,EAAE,aAAa;QACzB,IAAI,EAAE,CAAC,QAAQ,CAAC;AAChB,QAAA,KAAK,EAAE,IAAI;KACZ,CAAC;AACJ;;AC8DA,MAAM,oBAAoB,GAAG,CAAC,aAAa,EAAE,wBAAwB,CAAC,CAAC;AAEvE,MAAM,YAAY,GAAG,CAAC,GAAG,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;AAEpE,MAAM,oBAAoB,GAAG;IAC3B,kBAAkB;IAClB,4BAA4B;IAC5B,iBAAiB;IACjB,cAAc;IACd,cAAc;IACd,kBAAkB;IAClB,gBAAgB;IAChB,mBAAmB;IACnB,yBAAyB;IACzB,cAAc;IACd,gBAAgB;IAChB,2BAA2B;IAC3B,qBAAqB;IACrB,sBAAsB;IACtB,cAAc;IACd,oBAAoB;IAEpB,uBAAuB;IACvB,oBAAoB;IACpB,uBAAuB;IACvB,iBAAiB;IACjB,eAAe;IACf,oBAAoB;IACpB,yBAAyB;IACzB,iBAAiB;IACjB,oBAAoB;IACpB,oBAAoB;IACpB,eAAe;IACf,iBAAiB;IACjB,eAAe;IACf,wBAAwB;IACxB,aAAa;CACd,CAAC;AACF,MAAM,eAAe,GAAG;IACtB,cAAc;IACd,kBAAkB;IAClB,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,kBAAkB;IAClB,UAAU;IACV,YAAY;IACZ,aAAa;IACb,eAAe;IACf,UAAU;IACV,WAAW;IACX,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,eAAe;IACf,WAAW;IACX,eAAe;AACf,IAAA,GAAG,oBAAoB;CACxB,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,oBAAoB,CAAC,CAAC;AAEjE,MAAM,eAAe,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC;AAE7C,MAAM,SAAS,GAAG;IAChB,eAAe;IACf,iBAAiB;IACjB,WAAW;IACX,WAAW;IACX,WAAW;IACX,eAAe;IACf,uBAAuB;IACvB,qBAAqB;IACrB,qBAAqB;IACrB,qBAAqB;AACrB,IAAA,yBAAyB,EAAE;CAC5B,CAAC;AAEF,MAAM,WAAW,GAAG,IAAI,cAAc,CAAM,YAAY,CAAC,CAAC;MAW7C,WAAW,CAAA;IAatB,WACE,CAAA,eAAgC,EACC,MAAoB,EAAA;QAErD,eAAe,CAAC,UAAU,CAAC,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,CAAC;KAClE;IAjBD,OAAO,QAAQ,CAAC,MAAoB,EAAA;QAClC,OAAO;AACL,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,SAAS,EAAE;AACT,gBAAA;AACE,oBAAA,OAAO,EAAE,WAAW;AACpB,oBAAA,QAAQ,EAAE,MAAM;AACjB,iBAAA;AACF,aAAA;SACF,CAAC;KACH;;AAXU,mBAAA,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,mDAeA,WAAW,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAftB,mBAAA,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,EA1FM,YAAA,EAAA,CAAA,aAAa,EAAE,wBAAwB,EAEtB,mBAAmB,CAmFtD,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,YAAY,EAAE,gBAAgB,EA9CtD,cAAc;QACd,kBAAkB;QAClB,UAAU;QACV,UAAU;QACV,UAAU;QACV,UAAU;QACV,kBAAkB;QAClB,UAAU;QACV,YAAY;QACZ,aAAa;QACb,eAAe;QACf,UAAU;QACV,WAAW;QACX,gBAAgB;QAChB,cAAc;QACd,gBAAgB;QAChB,eAAe;QACf,WAAW;AACX,QAAA,eAAe,EApDf,kBAAkB;QAClB,4BAA4B;QAC5B,iBAAiB;QACjB,cAAc;QACd,cAAc;QACd,kBAAkB;QAClB,gBAAgB;QAChB,mBAAmB;QACnB,yBAAyB;QACzB,cAAc;QACd,gBAAgB;QAChB,2BAA2B;QAC3B,qBAAqB;QACrB,sBAAsB;QACtB,cAAc;QACd,oBAAoB;QAEpB,uBAAuB;QACvB,oBAAoB;QACpB,uBAAuB;QACvB,iBAAiB;QACjB,eAAe;QACf,oBAAoB;QACpB,yBAAyB;QACzB,iBAAiB;QACjB,oBAAoB;QACpB,oBAAoB;QACpB,eAAe;QACf,iBAAiB;QACjB,eAAe;QACf,wBAAwB;AACxB,QAAA,aAAa,aAGb,cAAc;QACd,kBAAkB;QAClB,UAAU;QACV,UAAU;QACV,UAAU;QACV,UAAU;QACV,kBAAkB;QAClB,UAAU;QACV,YAAY;QACZ,aAAa;QACb,eAAe;QACf,UAAU;QACV,WAAW;QACX,gBAAgB;QAChB,cAAc;QACd,gBAAgB;QAChB,eAAe;QACf,WAAW;AACX,QAAA,eAAe,EApDf,kBAAkB;QAClB,4BAA4B;QAC5B,iBAAiB;QACjB,cAAc;QACd,cAAc;QACd,kBAAkB;QAClB,gBAAgB;QAChB,mBAAmB;QACnB,yBAAyB;QACzB,cAAc;QACd,gBAAgB;QAChB,2BAA2B;QAC3B,qBAAqB;QACrB,sBAAsB;QACtB,cAAc;QACd,oBAAoB;QAEpB,uBAAuB;QACvB,oBAAoB;QACpB,uBAAuB;QACvB,iBAAiB;QACjB,eAAe;QACf,oBAAoB;QACpB,yBAAyB;QACzB,iBAAiB;QACjB,oBAAoB;QACpB,oBAAoB;QACpB,eAAe;QACf,iBAAiB;QACjB,eAAe;QACf,wBAAwB;AACxB,QAAA,aAAa,EApCe,aAAa,EAAE,wBAAwB,CAAA,EAAA,CAAA,CAAA;4HA0FxD,WAAW,EAAA,SAAA,EAHX,SAAS,EAFV,OAAA,EAAA,CAAA,YAAY,EAAE,YAAY,EAAE,gBAAgB,EA9CtD,cAAc;QACd,kBAAkB;QAClB,UAAU;QACV,UAAU;QACV,UAAU;QACV,UAAU;QACV,kBAAkB;QAClB,UAAU;QACV,YAAY;QACZ,aAAa;QACb,eAAe;QACf,UAAU;QACV,WAAW;QACX,gBAAgB;QAChB,cAAc;QACd,gBAAgB;QAChB,eAAe;QACf,WAAW;AACX,QAAA,eAAe,EApDf,kBAAkB;QAClB,4BAA4B;QAC5B,iBAAiB;QACjB,cAAc;QAGd,gBAAgB;QAEhB,yBAAyB;QACzB,cAAc;QACd,gBAAgB;QAChB,2BAA2B;QAC3B,qBAAqB;QACrB,sBAAsB;QACtB,cAAc;QACd,oBAAoB;QAEpB,uBAAuB;QACvB,oBAAoB;QACpB,uBAAuB;QACvB,iBAAiB;QACjB,eAAe;QACf,oBAAoB;QACpB,yBAAyB;QACzB,iBAAiB;QACjB,oBAAoB;QACpB,oBAAoB;QACpB,eAAe;QACf,iBAAiB;QACjB,eAAe;AAEf,QAAA,aAAa,EAGb,cAAc;QACd,kBAAkB;QAClB,UAAU;QACV,UAAU;QACV,UAAU;QACV,UAAU;QACV,kBAAkB;QAClB,UAAU;QACV,YAAY;QACZ,aAAa;QACb,eAAe;QACf,UAAU;QACV,WAAW;QACX,gBAAgB;QAChB,cAAc;QACd,gBAAgB;QAChB,eAAe;QACf,WAAW;QACX,eAAe,CAAA,EAAA,CAAA,CAAA;2FAiCJ,WAAW,EAAA,UAAA,EAAA,CAAA;kBANvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,GAAG,eAAe,CAAC;oBAC3E,YAAY,EAAE,CAAC,YAAY,CAAC;AAC5B,oBAAA,SAAS,EAAE,SAAS;oBACpB,OAAO,EAAE,CAAC,UAAU,CAAC;iBACtB,CAAA;;;8BAgBI,QAAQ;;8BAAI,MAAM;+BAAC,WAAW,CAAA;;;;ACpLnC,MAAM,sBAAsB,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAG9D;;;AAGG;MAKU,uBAAuB,CAAA;;uIAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAvB,mBAAA,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,YAHxB,YAAY,EAAE,WAAW,EAAE,4BAA4B,aARnC,4BAA4B,CAAA,EAAA,CAAA,CAAA;AAW/C,mBAAA,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,EAHxB,OAAA,EAAA,CAAA,YAAY,EAAE,WAAW,EAAE,4BAA4B,CAAA,EAAA,CAAA,CAAA;2FAGtD,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,4BAA4B,CAAC;AAClE,oBAAA,OAAO,EAAE,sBAAsB;iBAChC,CAAA;;;ACfD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"kirbydesign-designsystem.mjs","sources":["../../../../libs/designsystem/src/lib/components/angular-component-lib/utils.ts","../../../../libs/designsystem/src/lib/components/web-component-proxies.component.ts","../../../../libs/designsystem/src/lib/components/kirby-badge.module.ts","../../../../libs/designsystem/src/lib/components/segmented-control/segmented-control.component.ts","../../../../libs/designsystem/src/lib/components/segmented-control/segmented-control.component.html","../../../../libs/designsystem/src/lib/components/page-local-navigation/page-local-navigation.component.ts","../../../../libs/designsystem/src/lib/components/page-local-navigation/page-local-navigation.component.html","../../../../libs/designsystem/src/lib/directives/key-handler/key-handler.directive.ts","../../../../libs/designsystem/src/lib/directives/modal-router-link/modal-router-link.directive.ts","../../../../libs/designsystem/src/lib/custom-elements-initializer.ts","../../../../libs/designsystem/src/lib/kirby.module.ts","../../../../libs/designsystem/src/lib/kirby-experimental.module.ts","../../../../libs/designsystem/src/kirbydesign-designsystem.ts"],"sourcesContent":["import { fromEvent } from 'rxjs';\n\nexport const proxyInputs = (Cmp: any, inputs: string[]) => {\n const Prototype = Cmp.prototype;\n inputs.forEach((item) => {\n Object.defineProperty(Prototype, item, {\n get() {\n return this.el[item];\n },\n set(val: any) {\n this.z.runOutsideAngular(() => (this.el[item] = val));\n },\n });\n });\n};\n\nexport const proxyMethods = (Cmp: any, methods: string[]) => {\n const Prototype = Cmp.prototype;\n methods.forEach((methodName) => {\n Prototype[methodName] = function () {\n const args = arguments;\n return this.z.runOutsideAngular(() => this.el[methodName].apply(this.el, args));\n };\n });\n};\n\nexport const proxyOutputs = (instance: any, el: any, events: string[]) => {\n events.forEach((eventName) => (instance[eventName] = fromEvent(el, eventName)));\n};\n\n// tslint:disable-next-line: only-arrow-functions\nexport function ProxyCmp(opts: { inputs?: any; methods?: any }) {\n const decorator = function (cls: any) {\n if (opts.inputs) {\n proxyInputs(cls, opts.inputs);\n }\n if (opts.methods) {\n proxyMethods(cls, opts.methods);\n }\n return cls;\n };\n return decorator;\n}\n","/* tslint:disable */\n/* auto-generated angular directive proxies */\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';\nimport { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';\n\nimport { Components } from '@kirbydesign/core';\n\n\nexport declare interface KirbyBadge extends Components.KirbyBadge {}\n@ProxyCmp({\n inputs: ['size', 'text', 'themeColor']\n})\n@Component({\n selector: 'kirby-badge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: '<ng-content></ng-content>',\n inputs: ['size', 'text', 'themeColor']\n})\nexport class KirbyBadge {\n protected el: HTMLElement;\n constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {\n c.detach();\n this.el = r.nativeElement;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { KirbyBadge } from './web-component-proxies.component';\n\n@NgModule({\n declarations: [KirbyBadge],\n exports: [KirbyBadge],\n})\nexport class KirbyBadgeModule {}\n","import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\nimport { IonicModule } from '@ionic/angular';\nimport { CommonModule } from '@angular/common';\nimport { IconModule, IconRegistryService } from '@kirbydesign/designsystem/icon';\nimport { KirbyBadgeModule } from '../kirby-badge.module';\n\nimport { SegmentItem, SegmentItemInternal } from './segment-item';\n\nexport enum SegmentedControlMode {\n chip = 'chip',\n compactChip = 'compactChip',\n default = 'default',\n}\n\n@Component({\n standalone: true,\n imports: [IonicModule, IconModule, KirbyBadgeModule, CommonModule],\n selector: 'kirby-segmented-control',\n templateUrl: './segmented-control.component.html',\n styleUrls: ['./segmented-control.component.scss'],\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { role: 'group' },\n})\nexport class SegmentedControlComponent {\n constructor(private iconRegistryService: IconRegistryService) {}\n\n /**\n * Ensure that the click actually did originate from within the segment-button.\n * We do not want to react to clicks on e.g. segment-btn-wrapper or badge.\n */\n preventOutsideClick(event: TouchEvent) {\n if (event.target instanceof HTMLElement) {\n const targetIsInSegmentBtn = !!event.target.closest('ion-segment-button');\n if (!targetIsInSegmentBtn) {\n event.stopImmediatePropagation();\n }\n }\n }\n\n @Input() mode: SegmentedControlMode | `${SegmentedControlMode}` = SegmentedControlMode.default;\n\n @HostBinding('class')\n get _modeCssClass() {\n return {\n [SegmentedControlMode.chip]: 'chip-mode',\n [SegmentedControlMode.default]: 'default-mode',\n [SegmentedControlMode.compactChip]: 'compact chip-mode',\n }[this.mode];\n }\n\n private _items: SegmentItemInternal[] = [];\n get items(): SegmentItem[] {\n return this._items;\n }\n\n @Input() set items(value: SegmentItem[]) {\n this._items = value || [];\n this._items.forEach((item) => {\n if (!item.badge) return;\n // We need to verify whether badges icon is custom or default, so we can check for it in the template\n item.badge.isCustomIcon =\n item.badge.icon !== undefined &&\n this.iconRegistryService.getIcon(item.badge.icon) !== undefined;\n });\n this._value = this.items[this.selectedIndex];\n }\n\n private _selectedIndex: number = -1;\n get selectedIndex(): number {\n return this._selectedIndex;\n }\n\n @Input() set selectedIndex(index: number) {\n if (index !== this._selectedIndex) {\n this._selectedIndex = index;\n this._value = this.items[this.selectedIndex];\n this.selectedIndexChange.emit(this.selectedIndex);\n }\n }\n\n @Output() selectedIndexChange = new EventEmitter<number>();\n\n private _value: SegmentItem;\n get value(): SegmentItem {\n return this._value;\n }\n\n @Input() set value(value: SegmentItem) {\n this.selectedIndex = this.items.indexOf(value);\n }\n\n @HostBinding('class.sm')\n isSmallSize: boolean;\n\n @Input() set size(size: 'sm' | 'md') {\n this.isSmallSize = size === 'sm';\n }\n\n private _disableChangeOnSwipe: boolean = false;\n get disableChangeOnSwipe(): boolean {\n return this._disableChangeOnSwipe;\n }\n\n @Input() set disableChangeOnSwipe(value: boolean) {\n this._disableChangeOnSwipe = value;\n }\n\n @Output() segmentSelect: EventEmitter<SegmentItem> = new EventEmitter();\n\n onSegmentSelect(selectedId: string) {\n const selectedItemIndex = this.items.findIndex((item) => selectedId === item.id);\n\n if (selectedItemIndex !== this.selectedIndex) {\n this.selectedIndex = selectedItemIndex;\n setTimeout(() => {\n this.segmentSelect.emit(this.value);\n });\n }\n }\n}\n","<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">{{ item.text }}</ion-segment-button>\n <div class=\"badge-container\" *ngIf=\"item.badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon\n *ngIf=\"item.badge.isCustomIcon; else defaultIconName\"\n [customName]=\"item.badge.icon\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </div>\n </ng-container>\n</ion-segment>\n","import { CommonModule } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { WindowRef } from '@kirbydesign/designsystem/types';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { KirbyBadgeModule } from '../kirby-badge.module';\nimport { LocalNavigationItem } from './page-local-navigation-item';\n\n@Component({\n standalone: true,\n imports: [KirbyBadgeModule, IconModule, CommonModule],\n selector: 'kirby-page-local-navigation',\n templateUrl: './page-local-navigation.component.html',\n styleUrls: ['./page-local-navigation.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PageLocalNavigationComponent implements AfterViewInit {\n private readonly DEBOUNCE_TIME_MS = 250;\n\n @Input() items: LocalNavigationItem[] = [];\n @Input() selectedIndex = 0;\n\n @Output() selectedIndexChange = new EventEmitter<number>();\n\n @ViewChild('tabBar') tabBarElementRef?: ElementRef<HTMLElement>;\n private get tabBarNativeElement(): HTMLElement | undefined {\n return this.tabBarElementRef?.nativeElement;\n }\n\n constructor(private window: WindowRef) {\n console.warn(\n 'kirby-local-navigation component is an experimental feature and should not be used in a production environment.'\n );\n }\n\n ngAfterViewInit(): void {\n setTimeout(() => {\n this.scrollToSelectedTab(this.selectedIndex);\n }, this.DEBOUNCE_TIME_MS);\n }\n\n onTabChange(index: number): void {\n if (this.selectedIndex !== index) {\n this.selectedIndex = index;\n this.scrollToSelectedTab(index);\n this.selectedIndexChange.emit(index);\n }\n }\n\n private getSelectedItemElement(index: number): HTMLElement | undefined {\n const tabBarElement = this.tabBarNativeElement;\n\n if (tabBarElement) {\n return tabBarElement.children.item(index) as HTMLElement;\n }\n }\n\n focusNext(index: number): void {\n const tabBarElement = this.tabBarNativeElement;\n if (tabBarElement) {\n const next = tabBarElement.children.item(index) as HTMLElement;\n next?.focus({ preventScroll: false });\n }\n }\n\n private scrollToSelectedTab(index: number): void {\n const tabBarElement = this.tabBarNativeElement;\n const selectedTabElement = this.getSelectedItemElement(index);\n\n if (tabBarElement && selectedTabElement) {\n const selectedTabElementWidth = selectedTabElement.getBoundingClientRect().width;\n const selectedTabElementOffsetLeft = selectedTabElement.offsetLeft;\n const tabBarElementWidth = tabBarElement.getBoundingClientRect().width;\n\n this.window.nativeWindow.requestAnimationFrame(() => {\n tabBarElement?.scrollTo({\n behavior: 'smooth',\n left: Math.max(\n 0,\n selectedTabElementOffsetLeft - (tabBarElementWidth - selectedTabElementWidth) / 2\n ),\n });\n });\n }\n }\n}\n","<div class=\"container\">\n <div class=\"tab-bar\" #tabBar>\n <div\n class=\"tab-item\"\n *ngFor=\"let item of items; let i = index\"\n (click)=\"onTabChange(i)\"\n [ngClass]=\"i === selectedIndex ? 'selected' : ''\"\n [tabIndex]=\"0\"\n (keydown.enter)=\"onTabChange(i)\"\n (keydown.arrowLeft)=\"focusNext(i - 1)\"\n (keydown.arrowRight)=\"focusNext(i + 1)\"\n >\n <div class=\"tab-item-inner\" [class.extended]=\"!!item.badge\">\n <span [attr.text]=\"item.text\">{{ item.text }}</span>\n <ng-container *ngIf=\"item.badge; let badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"badge.description\"\n [themeColor]=\"badge.themeColor\"\n >\n <ng-container *ngIf=\"badge.content.name; else badgeTextContent\">\n <kirby-icon\n *ngIf=\"badge.content.isCustom; else defaultIconName\"\n [customName]=\"badge.content.name\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"badge.content.name\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeTextContent>\n {{ badge.content.text }}\n </ng-template>\n </kirby-badge>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n","import { Directive, ElementRef, HostListener } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: `[keyHandler]`,\n})\nexport class KeyHandlerDirective {\n constructor(private element: ElementRef) {}\n\n @HostListener('keyup', ['$event'])\n keyEvent(event: KeyboardEvent) {\n if (event.key === ' ' || event.key === 'Enter' || event.key === 'Spacebar') {\n // Prevent the default action to stop scrolling when space is pressed\n event.preventDefault();\n\n const hostElement = <HTMLElement>this.element.nativeElement;\n hostElement.click();\n }\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport { Params } from '@angular/router';\nimport { ModalNavigationService } from '@kirbydesign/designsystem/modal';\n\n@Directive({\n selector: `[kirbyModalRouterLink]`,\n})\nexport class ModalRouterLinkDirective {\n constructor(private modalNavigationService: ModalNavigationService) {}\n\n @Input('kirbyModalRouterLink') path: string | string[];\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('kirbyModalQueryParams') queryParams?: Params;\n\n @HostListener('click')\n onClick(): boolean {\n this.modalNavigationService.navigateToModal(\n this.path,\n typeof this.queryParams !== 'string' ? this.queryParams : null\n );\n return false;\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { APP_INITIALIZER } from '@angular/core';\n\nimport { defineCustomElements } from '@kirbydesign/core/loader';\n\nexport const appInitialize = (doc: Document) => {\n return () => {\n defineCustomElements(doc.defaultView);\n };\n};\n\nexport function customElementsInitializer() {\n return {\n provide: APP_INITIALIZER,\n useFactory: appInitialize,\n deps: [DOCUMENT],\n multi: true,\n };\n}\n","import { CommonModule } from '@angular/common';\nimport { Inject, InjectionToken, ModuleWithProviders, NgModule, Optional } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { CardModule } from '@kirbydesign/designsystem/card';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { KirbyIonicModule } from '@kirbydesign/designsystem/kirby-ionic-module';\nimport {\n ComponentLoaderDirective,\n ResizeObserverFactory,\n ResizeObserverService,\n ThemeColorDirective,\n} from '@kirbydesign/designsystem/shared';\nimport { FlagComponent } from '@kirbydesign/designsystem/flag';\nimport { SpinnerModule } from '@kirbydesign/designsystem/spinner';\nimport { ToggleComponent } from '@kirbydesign/designsystem/toggle';\nimport { SectionHeaderComponent } from '@kirbydesign/designsystem/section-header';\nimport { ItemModule } from '@kirbydesign/designsystem/item';\nimport { SlideModule } from '@kirbydesign/designsystem/slide';\nimport { ToggleButtonModule } from '@kirbydesign/designsystem/toggle-button';\nimport { TabsModule } from '@kirbydesign/designsystem/tabs';\nimport { SlideButtonComponent } from '@kirbydesign/designsystem/slide-button';\nimport { RangeComponent } from '@kirbydesign/designsystem/range';\nimport { PopoverComponent } from '@kirbydesign/designsystem/popover';\nimport {\n LoadingOverlayComponent,\n LoadingOverlayService,\n} from '@kirbydesign/designsystem/loading-overlay';\nimport { DividerComponent } from '@kirbydesign/designsystem/divider';\nimport { CheckboxComponent } from '@kirbydesign/designsystem/checkbox';\nimport { AccordionModule } from '@kirbydesign/designsystem/accordion';\nimport { ItemSlidingComponent } from '@kirbydesign/designsystem/item-sliding';\nimport { ListModule } from '@kirbydesign/designsystem/list';\nimport { RadioModule } from '@kirbydesign/designsystem/radio';\nimport {\n AffixDirective,\n DateInputDirective,\n FormFieldModule,\n InputComponent,\n TextareaComponent,\n} from '@kirbydesign/designsystem/form-field';\nimport { AvatarComponent } from '@kirbydesign/designsystem/avatar';\nimport {\n ProgressCircleComponent,\n ProgressCircleRingComponent,\n} from '@kirbydesign/designsystem/progress-circle';\nimport { RouterOutletModule } from '@kirbydesign/designsystem/router-outlet';\nimport { ItemGroupComponent } from '@kirbydesign/designsystem/item-group';\nimport { ButtonComponent } from '@kirbydesign/designsystem/button';\nimport { CalendarComponent } from '@kirbydesign/designsystem/calendar';\nimport {\n ActionSheetComponent,\n ActionSheetHelper,\n AlertComponent,\n AlertHelper,\n ModalCompactWrapperComponent,\n ModalController,\n ModalFooterComponent,\n ModalHelper,\n ModalWrapperComponent,\n} from '@kirbydesign/designsystem/modal';\nimport { PageModule } from '@kirbydesign/designsystem/page';\nimport { EmptyStateModule } from '@kirbydesign/designsystem/empty-state';\nimport { DropdownModule } from '@kirbydesign/designsystem/dropdown';\nimport { KirbyAppModule } from '@kirbydesign/designsystem/kirby-app';\nimport { ChartsModule } from '@kirbydesign/designsystem/chart';\nimport { FabSheetComponent } from '@kirbydesign/designsystem/fab-sheet';\nimport { DataTableModule } from '@kirbydesign/designsystem/data-table';\nimport { ReorderListComponent } from '@kirbydesign/designsystem/reorder-list';\n\nimport { ToastController, ToastHelper } from '@kirbydesign/designsystem/toast';\nimport { BreakpointHelperService, GridComponent } from '@kirbydesign/designsystem/grid';\nimport { SegmentedControlComponent } from './components/segmented-control/segmented-control.component';\nimport { customElementsInitializer } from './custom-elements-initializer';\nimport { KeyHandlerDirective } from './directives/key-handler/key-handler.directive';\nimport { ModalRouterLinkDirective } from './directives/modal-router-link/modal-router-link.directive';\nimport { KirbyBadgeModule } from './components/kirby-badge.module';\n\nconst exportedDeclarations = [ModalRouterLinkDirective];\n\nconst declarations = [...exportedDeclarations, KeyHandlerDirective];\n\nconst standaloneComponents = [\n GridComponent,\n ItemGroupComponent,\n ModalCompactWrapperComponent,\n TextareaComponent,\n InputComponent,\n AffixDirective,\n DateInputDirective,\n DividerComponent,\n ThemeColorDirective,\n SegmentedControlComponent,\n AlertComponent,\n PopoverComponent,\n ProgressCircleRingComponent,\n ModalWrapperComponent,\n SectionHeaderComponent,\n RangeComponent,\n ItemSlidingComponent,\n\n ProgressCircleComponent,\n ReorderListComponent,\n LoadingOverlayComponent,\n FabSheetComponent,\n ToggleComponent,\n SlideButtonComponent,\n SegmentedControlComponent,\n CheckboxComponent,\n ActionSheetComponent,\n ModalFooterComponent,\n AvatarComponent,\n CalendarComponent,\n ButtonComponent,\n ComponentLoaderDirective,\n FlagComponent,\n];\nconst exportedModules = [\n KirbyAppModule,\n RouterOutletModule,\n PageModule,\n TabsModule,\n IconModule,\n ItemModule,\n ToggleButtonModule,\n ListModule,\n ChartsModule,\n SpinnerModule,\n DataTableModule,\n CardModule,\n RadioModule,\n EmptyStateModule,\n DropdownModule,\n KirbyBadgeModule,\n FormFieldModule,\n SlideModule,\n AccordionModule,\n ...standaloneComponents,\n];\n\nconst allExports = [...exportedModules, ...exportedDeclarations];\n\nconst importedModules = [...exportedModules];\n\nconst providers = [\n ModalController,\n ActionSheetHelper,\n ModalHelper,\n AlertHelper,\n ToastHelper,\n ToastController,\n BreakpointHelperService,\n LoadingOverlayService,\n ResizeObserverFactory,\n ResizeObserverService,\n customElementsInitializer(),\n];\n\nconst ConfigToken = new InjectionToken<any>('USERCONFIG');\nexport interface KirbyConfig {\n moduleRootRoutePath?: string;\n}\n\n@NgModule({\n imports: [CommonModule, RouterModule, KirbyIonicModule, ...importedModules],\n declarations: [declarations],\n providers: providers,\n exports: [allExports],\n})\nexport class KirbyModule {\n static forChild(config?: KirbyConfig): ModuleWithProviders<KirbyModule> {\n return {\n ngModule: KirbyModule,\n providers: [\n {\n provide: ConfigToken,\n useValue: config,\n },\n ],\n };\n }\n\n constructor(\n modalController: ModalController,\n @Optional() @Inject(ConfigToken) config?: KirbyConfig\n ) {\n modalController.initialize(config && config.moduleRootRoutePath);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { PageLocalNavigationComponent } from './components';\nimport { KirbyModule } from './kirby.module';\n\nconst COMPONENT_DECLARATIONS = [PageLocalNavigationComponent];\nexport { StockChartConfig, BarChartConfig } from '@kirbydesign/designsystem/chart';\n\n/**\n * This module contains experimental components, that should not be used in a production environment.\n * @see KirbyModule\n */\n@NgModule({\n imports: [CommonModule, KirbyModule, PageLocalNavigationComponent],\n exports: COMPONENT_DECLARATIONS,\n})\nexport class KirbyExperimentalModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.KirbyBadge","i1","i2.KirbyBadge"],"mappings":"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"}
|