@acorex/components 17.0.10 → 17.0.12
Sign up to get free protection for your applications and to get access to all the features.
- package/audio-wave/lib/audio-wave.component.d.ts +1 -0
- package/audio-wave/lib/audio-wave.module.d.ts +2 -1
- package/calendar/lib/calendar-range.component.d.ts +2 -0
- package/calendar/lib/calendar.class.d.ts +3 -2
- package/calendar/lib/calendar.component.d.ts +2 -1
- package/chat/lib/chat-message/chat-message.component.d.ts +5 -1
- package/chat/lib/chat-messages/chat-messages-voice/chat-message-voice.component.d.ts +5 -2
- package/chat/lib/chat.module.d.ts +3 -1
- package/common/lib/classes/events.class.d.ts +1 -1
- package/common/lib/components/base-component.class.d.ts +4 -4
- package/common/lib/components/input-base-value-component.class.d.ts +1 -0
- package/data-pager/lib/data-pager-next-buttons.components.d.ts +2 -0
- package/data-pager/lib/data-pager-prev-buttons.component.d.ts +2 -0
- package/data-table/lib/columns/data-table-column.d.ts +2 -3
- package/data-table/lib/columns/data-text-column.component.d.ts +8 -4
- package/data-table/lib/columns/row-command-column.component.d.ts +8 -4
- package/data-table/lib/columns/row-index-column.component.d.ts +4 -2
- package/data-table/lib/columns/row-select-column.component.d.ts +7 -2
- package/data-table/lib/data-table/data-table.component.d.ts +1 -0
- package/datetime-picker/lib/datetime-picker.component.d.ts +2 -0
- package/esm2022/audio-wave/lib/audio-wave.component.mjs +21 -17
- package/esm2022/audio-wave/lib/audio-wave.module.mjs +5 -4
- package/esm2022/calendar/lib/calendar-range.component.mjs +10 -8
- package/esm2022/calendar/lib/calendar.class.mjs +14 -27
- package/esm2022/calendar/lib/calendar.component.mjs +14 -2
- package/esm2022/chat/lib/chat-message/chat-message.component.mjs +24 -5
- package/esm2022/chat/lib/chat-messages/chat-messages-voice/chat-message-voice.component.mjs +25 -14
- package/esm2022/chat/lib/chat.module.mjs +10 -3
- package/esm2022/common/lib/classes/events.class.mjs +1 -1
- package/esm2022/common/lib/components/base-component.class.mjs +14 -26
- package/esm2022/common/lib/components/input-base-value-component.class.mjs +8 -1
- package/esm2022/data-pager/lib/data-pager-next-buttons.components.mjs +6 -2
- package/esm2022/data-pager/lib/data-pager-numeric-selector.component.mjs +13 -13
- package/esm2022/data-pager/lib/data-pager-prev-buttons.component.mjs +15 -47
- package/esm2022/data-pager/lib/data-pager.component.mjs +2 -2
- package/esm2022/data-table/lib/columns/data-table-column.mjs +2 -6
- package/esm2022/data-table/lib/columns/data-text-column.component.mjs +31 -25
- package/esm2022/data-table/lib/columns/row-command-column.component.mjs +97 -81
- package/esm2022/data-table/lib/columns/row-index-column.component.mjs +19 -11
- package/esm2022/data-table/lib/columns/row-select-column.component.mjs +61 -11
- package/esm2022/data-table/lib/data-table/data-table.component.mjs +5 -4
- package/esm2022/data-table/lib/infinite-scroll-data-table/infinite-scroll-data-table.component.mjs +3 -3
- package/esm2022/datetime-picker/lib/datetime-picker.component.mjs +21 -2
- package/esm2022/drawer/lib/drawer.component.mjs +2 -2
- package/esm2022/list/lib/list.component.mjs +13 -3
- package/esm2022/phone-box/lib/phone-box.component.mjs +29 -28
- package/esm2022/select-box/lib/select-box.component.mjs +29 -9
- package/esm2022/text-box/lib/mask-options.directive.mjs +16 -4
- package/esm2022/text-box/lib/text-box.component.mjs +8 -1
- package/fesm2022/acorex-components-audio-wave.mjs +24 -19
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +31 -31
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-chat.mjs +55 -21
- package/fesm2022/acorex-components-chat.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +21 -25
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +31 -59
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +210 -133
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-picker.mjs +20 -1
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer.mjs +2 -2
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +13 -3
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-phone-box.mjs +29 -29
- package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +28 -8
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-text-box.mjs +22 -3
- package/fesm2022/acorex-components-text-box.mjs.map +1 -1
- package/list/lib/list.component.d.ts +3 -2
- package/package.json +1 -1
- package/phone-box/lib/phone-box.component.d.ts +4 -2
- package/select-box/lib/select-box.component.d.ts +5 -4
- package/text-box/lib/mask-options.directive.d.ts +6 -2
- package/text-box/lib/text-box.component.d.ts +1 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
import * as i8 from '@acorex/components/common';
|
2
2
|
import { AXEvent, MXInteractiveComponent, MXValueComponent, AXPagedComponent } from '@acorex/components/common';
|
3
|
-
import { AXUnsubscriber } from '@acorex/core/utils';
|
3
|
+
import { AXUnsubscriber, AXHtmlUtil } from '@acorex/core/utils';
|
4
4
|
import * as i0 from '@angular/core';
|
5
5
|
import { Injectable, inject, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, EventEmitter, forwardRef, Optional, Inject, Output, NgModule } from '@angular/core';
|
6
6
|
import * as i2 from '@acorex/core/translation';
|
@@ -174,6 +174,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
|
|
174
174
|
}] });
|
175
175
|
|
176
176
|
class AXDataPagerNextButtonsComponent extends AXDataPagerChild {
|
177
|
+
ngOnInit() {
|
178
|
+
super.ngOnInit;
|
179
|
+
this.rtl = AXHtmlUtil.isRtl(this.getHostElement());
|
180
|
+
}
|
177
181
|
applyParent() {
|
178
182
|
this.disabled = this._parent.displayInfo.page == this._parent.displayInfo.totalPages || this._parent.disabled;
|
179
183
|
}
|
@@ -277,15 +281,15 @@ class AXDataPagerNumericSelectorComponent extends AXDataPagerChild {
|
|
277
281
|
},
|
278
282
|
AXUnsubscriber,
|
279
283
|
], usesInheritance: true, ngImport: i0, template: `
|
280
|
-
<ax-button [disabled]="_currentPage
|
281
|
-
<ax-icon class="ax-icon ax-
|
284
|
+
<ax-button [disabled]="_currentPage === 1 || _parent.disabled" look="blank" class="ax-sm" (onClick)="_handleOnItemClick({ data: 1 })">
|
285
|
+
<ax-icon class="ax-icon ax-icon-first-page ax-text-xl"></ax-icon>
|
282
286
|
</ax-button>
|
283
287
|
@for (item of _items; track $index) {
|
284
288
|
<ax-button
|
285
289
|
class="ax-sm"
|
286
290
|
[disabled]="_parent.disabled"
|
287
|
-
[color]="_currentPage
|
288
|
-
[look]="_currentPage
|
291
|
+
[color]="_currentPage === item.data ? 'primary' : 'solid'"
|
292
|
+
[look]="_currentPage === item.data ? 'solid' : 'blank'"
|
289
293
|
[text]="item.text"
|
290
294
|
(onClick)="_handleOnItemClick(item)"
|
291
295
|
>
|
@@ -296,12 +300,12 @@ class AXDataPagerNumericSelectorComponent extends AXDataPagerChild {
|
|
296
300
|
}
|
297
301
|
|
298
302
|
<ax-button
|
299
|
-
[disabled]="_currentPage
|
303
|
+
[disabled]="_currentPage === _lastPage || _parent.disabled"
|
300
304
|
look="blank"
|
301
305
|
class="ax-sm"
|
302
306
|
(onClick)="_handleOnItemClick({ data: _lastPage })"
|
303
307
|
>
|
304
|
-
<ax-icon class="ax-icon ax-
|
308
|
+
<ax-icon class="ax-icon ax-icon-last-page ax-text-xl"></ax-icon>
|
305
309
|
</ax-button>
|
306
310
|
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i1$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
307
311
|
}
|
@@ -310,15 +314,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
|
|
310
314
|
args: [{
|
311
315
|
selector: 'ax-data-pager-numeric-selector',
|
312
316
|
template: `
|
313
|
-
<ax-button [disabled]="_currentPage
|
314
|
-
<ax-icon class="ax-icon ax-
|
317
|
+
<ax-button [disabled]="_currentPage === 1 || _parent.disabled" look="blank" class="ax-sm" (onClick)="_handleOnItemClick({ data: 1 })">
|
318
|
+
<ax-icon class="ax-icon ax-icon-first-page ax-text-xl"></ax-icon>
|
315
319
|
</ax-button>
|
316
320
|
@for (item of _items; track $index) {
|
317
321
|
<ax-button
|
318
322
|
class="ax-sm"
|
319
323
|
[disabled]="_parent.disabled"
|
320
|
-
[color]="_currentPage
|
321
|
-
[look]="_currentPage
|
324
|
+
[color]="_currentPage === item.data ? 'primary' : 'solid'"
|
325
|
+
[look]="_currentPage === item.data ? 'solid' : 'blank'"
|
322
326
|
[text]="item.text"
|
323
327
|
(onClick)="_handleOnItemClick(item)"
|
324
328
|
>
|
@@ -329,12 +333,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
|
|
329
333
|
}
|
330
334
|
|
331
335
|
<ax-button
|
332
|
-
[disabled]="_currentPage
|
336
|
+
[disabled]="_currentPage === _lastPage || _parent.disabled"
|
333
337
|
look="blank"
|
334
338
|
class="ax-sm"
|
335
339
|
(onClick)="_handleOnItemClick({ data: _lastPage })"
|
336
340
|
>
|
337
|
-
<ax-icon class="ax-icon ax-
|
341
|
+
<ax-icon class="ax-icon ax-icon-last-page ax-text-xl"></ax-icon>
|
338
342
|
</ax-button>
|
339
343
|
`,
|
340
344
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
@@ -452,6 +456,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
|
|
452
456
|
}] } });
|
453
457
|
|
454
458
|
class AXDataPagerPrevButtonsComponent extends AXDataPagerChild {
|
459
|
+
ngOnInit() {
|
460
|
+
super.ngOnInit;
|
461
|
+
this.rtl = AXHtmlUtil.isRtl(this.getHostElement());
|
462
|
+
}
|
455
463
|
applyParent() {
|
456
464
|
this.disabled = this._parent.displayInfo.page == 1 || this._parent.disabled;
|
457
465
|
}
|
@@ -466,29 +474,11 @@ class AXDataPagerPrevButtonsComponent extends AXDataPagerChild {
|
|
466
474
|
this._parent.goPrevPage();
|
467
475
|
}
|
468
476
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AXDataPagerPrevButtonsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
469
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: AXDataPagerPrevButtonsComponent, selector: "ax-data-pager-prev-buttons", providers: [
|
470
|
-
|
471
|
-
|
472
|
-
], usesInheritance: true, ngImport: i0, template: `
|
473
|
-
<ax-button
|
474
|
-
[disabled]="disabled"
|
475
|
-
look="blank"
|
476
|
-
class="ax-sm"
|
477
|
-
title="Go to the last page"
|
478
|
-
(onClick)="_emitOnFirstPageClick($event)"
|
479
|
-
>
|
480
|
-
<ax-icon
|
481
|
-
class="ax-icon ax-text-xl"
|
482
|
-
[ngClass]="{ 'ax-icon-last-page': rtl, 'ax-icon-first-page': !rtl }"
|
483
|
-
></ax-icon>
|
477
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: AXDataPagerPrevButtonsComponent, selector: "ax-data-pager-prev-buttons", providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerPrevButtonsComponent }, AXUnsubscriber], usesInheritance: true, ngImport: i0, template: `
|
478
|
+
<ax-button [disabled]="disabled" look="blank" class="ax-sm" title="Go to the last page" (onClick)="_emitOnFirstPageClick($event)">
|
479
|
+
<ax-icon class="ax-icon ax-text-xl" [ngClass]="{ 'ax-icon-last-page': rtl, 'ax-icon-first-page': !rtl }"></ax-icon>
|
484
480
|
</ax-button>
|
485
|
-
<ax-button
|
486
|
-
[disabled]="disabled"
|
487
|
-
look="blank"
|
488
|
-
class="ax-sm"
|
489
|
-
title="Go to the next page"
|
490
|
-
(onClick)="_emitOnPrevPageClick($event)"
|
491
|
-
>
|
481
|
+
<ax-button [disabled]="disabled" look="blank" class="ax-sm" title="Go to the next page" (onClick)="_emitOnPrevPageClick($event)">
|
492
482
|
<ax-icon
|
493
483
|
class="ax-icon ax-text-xl"
|
494
484
|
[ngClass]="{
|
@@ -504,25 +494,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
|
|
504
494
|
args: [{
|
505
495
|
selector: 'ax-data-pager-prev-buttons',
|
506
496
|
template: `
|
507
|
-
<ax-button
|
508
|
-
[
|
509
|
-
look="blank"
|
510
|
-
class="ax-sm"
|
511
|
-
title="Go to the last page"
|
512
|
-
(onClick)="_emitOnFirstPageClick($event)"
|
513
|
-
>
|
514
|
-
<ax-icon
|
515
|
-
class="ax-icon ax-text-xl"
|
516
|
-
[ngClass]="{ 'ax-icon-last-page': rtl, 'ax-icon-first-page': !rtl }"
|
517
|
-
></ax-icon>
|
497
|
+
<ax-button [disabled]="disabled" look="blank" class="ax-sm" title="Go to the last page" (onClick)="_emitOnFirstPageClick($event)">
|
498
|
+
<ax-icon class="ax-icon ax-text-xl" [ngClass]="{ 'ax-icon-last-page': rtl, 'ax-icon-first-page': !rtl }"></ax-icon>
|
518
499
|
</ax-button>
|
519
|
-
<ax-button
|
520
|
-
[disabled]="disabled"
|
521
|
-
look="blank"
|
522
|
-
class="ax-sm"
|
523
|
-
title="Go to the next page"
|
524
|
-
(onClick)="_emitOnPrevPageClick($event)"
|
525
|
-
>
|
500
|
+
<ax-button [disabled]="disabled" look="blank" class="ax-sm" title="Go to the next page" (onClick)="_emitOnPrevPageClick($event)">
|
526
501
|
<ax-icon
|
527
502
|
class="ax-icon ax-text-xl"
|
528
503
|
[ngClass]="{
|
@@ -534,10 +509,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
|
|
534
509
|
`,
|
535
510
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
536
511
|
encapsulation: ViewEncapsulation.None,
|
537
|
-
providers: [
|
538
|
-
{ provide: AXDataPagerChild, useExisting: AXDataPagerPrevButtonsComponent },
|
539
|
-
AXUnsubscriber,
|
540
|
-
],
|
512
|
+
providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerPrevButtonsComponent }, AXUnsubscriber],
|
541
513
|
}]
|
542
514
|
}] });
|
543
515
|
|
@@ -673,7 +645,7 @@ class AXDataPagerComponent extends MXValueComponent {
|
|
673
645
|
useExisting: forwardRef(() => AXDataPagerComponent),
|
674
646
|
multi: true,
|
675
647
|
},
|
676
|
-
], usesInheritance: true, ngImport: i0, template: "@switch(displayMode){\n@case('full'){\n<ax-prefix>\n <ax-data-pager-numeric-selector>\n </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes>\n </ax-data-pager-page-sizes>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@case('compact'){\n<ax-prefix>\n <ax-data-pager-prev-buttons>\n </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector>\n </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons>\n </ax-data-pager-next-buttons>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@default{\n<ng-content select=\"ax-prefix\"></ng-content>\n<ng-content select=\"ax-suffix\"></ng-content>\n}\n}", styles: ["ax-data-pager{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem;font-size:.875rem;line-height:1.25rem}ax-data-pager ax-button-group{display:flex!important;gap:1rem!important;border-radius:0!important;border-width:0px!important}ax-data-pager ax-button-group ax-button-item{border-radius:0!important;border-width:0px!important;padding:0!important}ax-data-pager ax-button-group ax-button-item.ax-state-selected{border-width:1px!important}ax-data-pager ax-data-pager-input-selector .ax-input{width:4rem!important;max-width:10rem!important;text-align:center!important}ax-data-pager ax-data-pager-next-buttons,ax-data-pager ax-data-pager-prev-buttons,ax-data-pager ax-data-pager-numeric-selector{display:flex;gap:.5rem}ax-data-pager ax-data-pager-page-sizes ax-button{border-radius:var(--ax-rounded-border-default);border-width:1px;border-color:rgba(var(--ax-color-border-default))}ax-data-pager ax-prefix,ax-data-pager ax-suffix{display:flex}\n"], dependencies: [{ kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title , ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDataPagerNextButtonsComponent, selector: "ax-data-pager-next-buttons" }, { kind: "component", type: AXDataPagerPrevButtonsComponent, selector: "ax-data-pager-prev-buttons" }, { kind: "component", type: AXDataPagerPageSizesComponent, selector: "ax-data-pager-page-sizes", inputs: ["sizes"] }, { kind: "component", type: AXDataPagerNumericSelectorComponent, selector: "ax-data-pager-numeric-selector" }, { kind: "component", type: AXDataPagerInputSelectorComponent, selector: "ax-data-pager-input-selector" }, { kind: "component", type: AXDataPagerInfoComponent, selector: "ax-data-pager-info", inputs: ["text"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
648
|
+
], usesInheritance: true, ngImport: i0, template: "@switch(displayMode){\n@case('full'){\n<ax-prefix>\n <ax-data-pager-numeric-selector>\n </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes>\n </ax-data-pager-page-sizes>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@case('compact'){\n<ax-prefix>\n <ax-data-pager-prev-buttons>\n </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector>\n </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons>\n </ax-data-pager-next-buttons>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@default{\n<ng-content select=\"ax-prefix\"></ng-content>\n<ng-content select=\"ax-suffix\"></ng-content>\n}\n}", styles: ["html[dir=rtl] ax-data-pager ax-data-pager-numeric-selector .ax-icon-first-page,html[dir=rtl] ax-data-pager ax-data-pager-numeric-selector .ax-icon-last-page{rotate:180deg}ax-data-pager{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem;font-size:.875rem;line-height:1.25rem}ax-data-pager ax-button-group{display:flex!important;gap:1rem!important;border-radius:0!important;border-width:0px!important}ax-data-pager ax-button-group ax-button-item{border-radius:0!important;border-width:0px!important;padding:0!important}ax-data-pager ax-button-group ax-button-item.ax-state-selected{border-width:1px!important}ax-data-pager ax-data-pager-input-selector .ax-input{width:4rem!important;max-width:10rem!important;text-align:center!important}ax-data-pager ax-data-pager-next-buttons,ax-data-pager ax-data-pager-prev-buttons,ax-data-pager ax-data-pager-numeric-selector{display:flex;gap:.5rem}ax-data-pager ax-data-pager-page-sizes ax-button{border-radius:var(--ax-rounded-border-default);border-width:1px;border-color:rgba(var(--ax-color-border-default))}ax-data-pager ax-prefix,ax-data-pager ax-suffix{display:flex}\n"], dependencies: [{ kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title , ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDataPagerNextButtonsComponent, selector: "ax-data-pager-next-buttons" }, { kind: "component", type: AXDataPagerPrevButtonsComponent, selector: "ax-data-pager-prev-buttons" }, { kind: "component", type: AXDataPagerPageSizesComponent, selector: "ax-data-pager-page-sizes", inputs: ["sizes"] }, { kind: "component", type: AXDataPagerNumericSelectorComponent, selector: "ax-data-pager-numeric-selector" }, { kind: "component", type: AXDataPagerInputSelectorComponent, selector: "ax-data-pager-input-selector" }, { kind: "component", type: AXDataPagerInfoComponent, selector: "ax-data-pager-info", inputs: ["text"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
677
649
|
}
|
678
650
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AXDataPagerComponent, decorators: [{
|
679
651
|
type: Component,
|
@@ -684,7 +656,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
|
|
684
656
|
useExisting: forwardRef(() => AXDataPagerComponent),
|
685
657
|
multi: true,
|
686
658
|
},
|
687
|
-
], template: "@switch(displayMode){\n@case('full'){\n<ax-prefix>\n <ax-data-pager-numeric-selector>\n </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes>\n </ax-data-pager-page-sizes>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@case('compact'){\n<ax-prefix>\n <ax-data-pager-prev-buttons>\n </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector>\n </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons>\n </ax-data-pager-next-buttons>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@default{\n<ng-content select=\"ax-prefix\"></ng-content>\n<ng-content select=\"ax-suffix\"></ng-content>\n}\n}", styles: ["ax-data-pager{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem;font-size:.875rem;line-height:1.25rem}ax-data-pager ax-button-group{display:flex!important;gap:1rem!important;border-radius:0!important;border-width:0px!important}ax-data-pager ax-button-group ax-button-item{border-radius:0!important;border-width:0px!important;padding:0!important}ax-data-pager ax-button-group ax-button-item.ax-state-selected{border-width:1px!important}ax-data-pager ax-data-pager-input-selector .ax-input{width:4rem!important;max-width:10rem!important;text-align:center!important}ax-data-pager ax-data-pager-next-buttons,ax-data-pager ax-data-pager-prev-buttons,ax-data-pager ax-data-pager-numeric-selector{display:flex;gap:.5rem}ax-data-pager ax-data-pager-page-sizes ax-button{border-radius:var(--ax-rounded-border-default);border-width:1px;border-color:rgba(var(--ax-color-border-default))}ax-data-pager ax-prefix,ax-data-pager ax-suffix{display:flex}\n"] }]
|
659
|
+
], template: "@switch(displayMode){\n@case('full'){\n<ax-prefix>\n <ax-data-pager-numeric-selector>\n </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes>\n </ax-data-pager-page-sizes>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@case('compact'){\n<ax-prefix>\n <ax-data-pager-prev-buttons>\n </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector>\n </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons>\n </ax-data-pager-next-buttons>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@default{\n<ng-content select=\"ax-prefix\"></ng-content>\n<ng-content select=\"ax-suffix\"></ng-content>\n}\n}", styles: ["html[dir=rtl] ax-data-pager ax-data-pager-numeric-selector .ax-icon-first-page,html[dir=rtl] ax-data-pager ax-data-pager-numeric-selector .ax-icon-last-page{rotate:180deg}ax-data-pager{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem;font-size:.875rem;line-height:1.25rem}ax-data-pager ax-button-group{display:flex!important;gap:1rem!important;border-radius:0!important;border-width:0px!important}ax-data-pager ax-button-group ax-button-item{border-radius:0!important;border-width:0px!important;padding:0!important}ax-data-pager ax-button-group ax-button-item.ax-state-selected{border-width:1px!important}ax-data-pager ax-data-pager-input-selector .ax-input{width:4rem!important;max-width:10rem!important;text-align:center!important}ax-data-pager ax-data-pager-next-buttons,ax-data-pager ax-data-pager-prev-buttons,ax-data-pager ax-data-pager-numeric-selector{display:flex;gap:.5rem}ax-data-pager ax-data-pager-page-sizes ax-button{border-radius:var(--ax-rounded-border-default);border-width:1px;border-color:rgba(var(--ax-color-border-default))}ax-data-pager ax-prefix,ax-data-pager ax-suffix{display:flex}\n"] }]
|
688
660
|
}], ctorParameters: () => [{ type: i8.AXPagedComponent, decorators: [{
|
689
661
|
type: Optional
|
690
662
|
}, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-data-pager.mjs","sources":["../../../../libs/components/data-pager/src/lib/data-pager-base.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-info.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-input-selector.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-next-buttons.components.ts","../../../../libs/components/data-pager/src/lib/data-pager-numeric-selector.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-pagesize-dropdown.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-prev-buttons.component.ts","../../../../libs/components/data-pager/src/lib/data-pager.component.ts","../../../../libs/components/data-pager/src/lib/data-pager.component.html","../../../../libs/components/data-pager/src/lib/data-pager.module.ts","../../../../libs/components/data-pager/src/acorex-components-data-pager.ts"],"sourcesContent":["import {\n AXEvent,\n AXOptionChangedEvent,\n MXInteractiveComponent,\n} from '@acorex/components/common';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { EventEmitter, Injectable, inject } from '@angular/core';\n\n/**\n * A token that specifies the display mode of datapager component.\n */\nexport type AXDataPagerDisplayMode = 'full' | 'compact' | 'custom';\n\nexport interface AXDataPagerData {\n range: { from: number; to: number };\n page: number;\n skip: number;\n take: number;\n totalPages: number;\n totalItems: number;\n}\n\nexport class AXDataPagerChangedEvent\n extends AXEvent\n implements AXDataPagerData\n{\n range: { from: number; to: number } = { from: 0, to: 0 };\n page = 0;\n skip = 0;\n take = 0;\n totalPages = 0;\n totalItems = 0;\n}\n\n@Injectable()\nexport abstract class AXDataPagerParentComponent {\n abstract readonly: boolean;\n abstract disabled: boolean;\n abstract onChanged: EventEmitter<AXDataPagerChangedEvent>;\n abstract onOptionChanged: EventEmitter<AXOptionChangedEvent>;\n abstract get displayInfo(): AXDataPagerData;\n abstract size;\n abstract goNextPage(): void;\n abstract goLastPage(): void;\n abstract goFirstPage(): void;\n abstract goPrevPage(): void;\n abstract goToPage(page: number): void;\n}\n\n@Injectable()\nexport abstract class AXDataPagerChild extends MXInteractiveComponent {\n protected _parent: AXDataPagerParentComponent = inject(\n AXDataPagerParentComponent\n );\n protected _unsubscriber: AXUnsubscriber = inject(AXUnsubscriber);\n\n constructor() {\n super();\n //\n this._parent.onChanged\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe((c) => {\n this.applyParent();\n });\n //\n this._parent.onOptionChanged\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe((c) => {\n this.applyParent();\n });\n }\n\n ngAfterViewInit() {\n this.applyParent();\n }\n\n protected abstract applyParent(): void;\n}\n","import { AXTranslationService } from '@acorex/core/translation';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-info',\n template: `{{ _textFormatted | translate | async }}`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXDataPagerChild, useExisting: AXDataPagerInfoComponent },\n AXUnsubscriber,\n ],\n})\nexport class AXDataPagerInfoComponent extends AXDataPagerChild {\n @Input()\n text: string;\n\n protected _textFormatted: string;\n\n protected translateService = inject(AXTranslationService);\n\n protected override applyParent() {\n const info = this._parent.displayInfo;\n if ([info.range, info.range.from, info.totalItems].every((c) => c)) {\n this._textFormatted = this.translateService\n .translateSync(this.text ?? 'datapager.info.text')\n .replace('[from]', info.range.from.toString())\n .replace('[to]', info.range.to.toString())\n .replace('[totalItems]', info.totalItems.toString())\n .replace('[page]', info.page.toString())\n .replace('[totalPages]', info.totalPages.toString());\n this.cdr.markForCheck();\n }\n }\n}\n","import { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-input-selector',\n template: `\n <ax-number-box\n class=\"ax-sm\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [ngModel]=\"_currentPage\"\n (onValueChanged)=\"_handleValueChanged($event)\"\n [showSpinButtons]=\"false\"\n [minValue]=\"1\"\n [maxValue]=\"_totalPages\"\n >\n </ax-number-box>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: AXDataPagerChild,\n useExisting: AXDataPagerInputSelectorComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXDataPagerInputSelectorComponent extends AXDataPagerChild {\n protected _totalPages = 1;\n protected _currentPage = 1;\n\n protected override applyParent() {\n this._currentPage = this._parent.displayInfo.page;\n this._totalPages = this._parent.displayInfo.totalPages;\n this.cdr.markForCheck();\n }\n\n protected _handleValueChanged(e: AXValueChangedEvent<number>) {\n //TODO: debounceTime\n if (e.isUserInteraction) {\n this._parent.goToPage(e.value as number);\n }\n }\n}\n","import { AXClickEvent } from '@acorex/components/common';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-next-buttons',\n template: `\n <ax-button [disabled]=\"disabled\" look=\"blank\" class=\"ax-sm\" title=\"Go to the next page\" (onClick)=\"_emitOnNextPageClick($event)\">\n <ax-icon\n class=\"ax-icon ax-text-xl\"\n [ngClass]=\"{\n 'ax-icon-chevron-left': rtl,\n 'ax-icon-chevron-right': !rtl\n }\"\n ></ax-icon>\n </ax-button>\n <ax-button [disabled]=\"disabled\" look=\"blank\" class=\"ax-sm\" title=\"Go to the last page\" (onClick)=\"_emitOnLastPageClick($event)\">\n <ax-icon class=\"ax-icon ax-text-xl\" [ngClass]=\"{ 'ax-icon-first-page': rtl, 'ax-icon-last-page': !rtl }\"></ax-icon>\n </ax-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerNextButtonsComponent }, AXUnsubscriber],\n})\nexport class AXDataPagerNextButtonsComponent extends AXDataPagerChild {\n protected override applyParent() {\n this.disabled = this._parent.displayInfo.page == this._parent.displayInfo.totalPages || this._parent.disabled;\n }\n\n _emitOnLastPageClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goLastPage();\n }\n\n _emitOnNextPageClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goNextPage();\n }\n}\n","import { AXButtonItem } from '@acorex/components/button';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-numeric-selector',\n template: `\n <ax-button [disabled]=\"_currentPage == 1 || _parent.disabled\" look=\"blank\" class=\"ax-sm\" (onClick)=\"_handleOnItemClick({ data: 1 })\">\n <ax-icon class=\"ax-icon ax-text-xl\" [ngClass]=\"{ 'ax-icon-last-page': rtl, 'ax-icon-first-page': !rtl }\"></ax-icon>\n </ax-button>\n @for (item of _items; track $index) {\n <ax-button\n class=\"ax-sm\"\n [disabled]=\"_parent.disabled\"\n [color]=\"_currentPage == item.data ? 'primary' : 'solid'\"\n [look]=\"_currentPage == item.data ? 'solid' : 'blank'\"\n [text]=\"item.text\"\n (onClick)=\"_handleOnItemClick(item)\"\n >\n @if (item.iconClass) {\n <ax-icon class=\"ax-icon ax-text-xl\" [ngClass]=\"item.iconClass\"></ax-icon>\n }\n </ax-button>\n }\n\n <ax-button\n [disabled]=\"_currentPage == _lastPage || _parent.disabled\"\n look=\"blank\"\n class=\"ax-sm\"\n (onClick)=\"_handleOnItemClick({ data: _lastPage })\"\n >\n <ax-icon class=\"ax-icon ax-text-xl\" [ngClass]=\"{ 'ax-icon-last-page': !rtl, 'ax-icon-first-page': rtl }\"></ax-icon>\n </ax-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: AXDataPagerChild,\n useExisting: AXDataPagerNumericSelectorComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXDataPagerNumericSelectorComponent extends AXDataPagerChild {\n _items: AXButtonItem[] = [];\n _currentPage = 1;\n _lastPage = 1;\n\n private _displayCount = 5;\n\n protected override applyParent(): void {\n this._currentPage = this._parent.displayInfo.page;\n this._lastPage = this._parent.displayInfo.totalPages;\n //\n this._items = [];\n\n const start = Math.max(0, (Math.ceil(this._currentPage / this._displayCount) - 1) * this._displayCount + 1);\n const end = Math.min(start + this._displayCount - 1, this._lastPage);\n //\n if (start > this._displayCount) {\n this._items.push({\n iconClass: 'ax-icon-more-horizontal',\n data: start - 1,\n });\n }\n //\n for (let i = start; i <= end; i++) {\n this._items.push({\n text: i.toString(),\n data: i,\n });\n }\n if (end < this._lastPage) {\n this._items.push({\n iconClass: 'ax-icon-more-horizontal',\n data: end + 1,\n });\n }\n this.cdr.detectChanges();\n }\n\n _handleOnItemClick(e: any) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goToPage(Number(e.data));\n }\n}\n","import { AXClickEvent } from '@acorex/components/common';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-page-sizes',\n template: `\n <ax-button\n [text]=\"_size\"\n [color]=\"'default'\"\n [look]=\"'blank'\"\n class=\"ax-sm\"\n [disabled]=\"_parent.disabled\"\n >\n <ax-dropdown-panel>\n <ax-button-item-list (onItemClick)=\"_emitOnItemClick($event)\">\n @for (item of _items; track $index) {\n <ax-button-item\n [text]=\"item.text\"\n [data]=\"item.data\"\n [selected]=\"item.selected\"\n >\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n <ax-suffix>\n <ax-icon icon=\"ax-icon ax-icon-solid ax-icon-arrow-down\"></ax-icon>\n </ax-suffix>\n </ax-button>\n <!-- <span >items per page</span> -->\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n outputs: [],\n providers: [\n { provide: AXDataPagerChild, useExisting: AXDataPagerPageSizesComponent },\n AXUnsubscriber,\n ],\n})\nexport class AXDataPagerPageSizesComponent extends AXDataPagerChild {\n _size: number;\n\n //TODO: AXButtonItems type error\n _items: any[] = [];\n\n private _sizes: number[];\n @Input()\n public get sizes(): number[] {\n return this._sizes || [5, 10, 20, 50, 100];\n }\n public set sizes(v: number[]) {\n this._sizes = v;\n this.applyParent();\n }\n\n protected override applyParent(): void {\n this._size = this._parent.displayInfo.take;\n this._items = this.sizes.map((s: any) => ({\n text: s.toString(),\n selected: s == this._size,\n data: {\n size: s,\n },\n }));\n this.cdr.detectChanges();\n }\n\n _emitOnItemClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._size = this._parent.size = Number(e.data.size);\n }\n}\n","import { AXClickEvent } from '@acorex/components/common';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-prev-buttons',\n template: `\n <ax-button\n [disabled]=\"disabled\"\n look=\"blank\"\n class=\"ax-sm\"\n title=\"Go to the last page\"\n (onClick)=\"_emitOnFirstPageClick($event)\"\n >\n <ax-icon\n class=\"ax-icon ax-text-xl\"\n [ngClass]=\"{ 'ax-icon-last-page': rtl, 'ax-icon-first-page': !rtl }\"\n ></ax-icon>\n </ax-button>\n <ax-button\n [disabled]=\"disabled\"\n look=\"blank\"\n class=\"ax-sm\"\n title=\"Go to the next page\"\n (onClick)=\"_emitOnPrevPageClick($event)\"\n >\n <ax-icon\n class=\"ax-icon ax-text-xl\"\n [ngClass]=\"{\n 'ax-icon-chevron-left': !rtl,\n 'ax-icon-chevron-right': rtl\n }\"\n ></ax-icon>\n </ax-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXDataPagerChild, useExisting: AXDataPagerPrevButtonsComponent },\n AXUnsubscriber,\n ],\n})\nexport class AXDataPagerPrevButtonsComponent extends AXDataPagerChild {\n protected override applyParent() {\n this.disabled = this._parent.displayInfo.page == 1 || this._parent.disabled;\n }\n\n _emitOnFirstPageClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goFirstPage();\n }\n\n _emitOnPrevPageClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goPrevPage();\n }\n}\n","import { AXPagedComponent, MXValueComponent } from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n ViewEncapsulation,\n forwardRef,\n} from '@angular/core';\nimport { cloneDeep, isEqual, isNumber } from 'lodash-es';\n\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { AXDataPagerChangedEvent, AXDataPagerData, AXDataPagerParentComponent } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager',\n templateUrl: './data-pager.component.html',\n styleUrls: ['./data-pager.component.scss'],\n inputs: ['value', 'name', 'disabled', 'readonly'],\n outputs: ['valueChange', 'onValueChanged', 'disabledChange', 'readonlyChange'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXDataPagerParentComponent, useExisting: AXDataPagerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXDataPagerComponent),\n multi: true,\n },\n ],\n})\nexport class AXDataPagerComponent extends MXValueComponent<number> {\n private _size = null;\n @Input()\n public get size(): number {\n return this._size || 10;\n }\n public set size(v: number) {\n if (v != this._size) {\n const prevSize = this._size;\n this._size = v;\n if (this._parent) {\n this._parent.pageSize = v;\n }\n const newPage = Math.ceil(this.displayInfo.range.from / this._size) || 1;\n this.commitValue(newPage);\n this._emitChangedEvent(prevSize != null ? true : false);\n }\n }\n\n private _total = 0;\n @Input()\n public get total(): number {\n return this._total;\n }\n public set total(v: number) {\n const t = v && v > 0 ? v : 0;\n if (t != this._total) {\n this._total = t;\n this._emitChangedEvent();\n }\n }\n\n private _totalPages = 0;\n\n public get totalPages(): number {\n return this._totalPages;\n }\n\n private set totalPages(value: number) {\n this._totalPages = value;\n }\n\n @Output()\n public displayModeChange: EventEmitter<string> = new EventEmitter<string>();\n\n private _displayMode = 'full';\n @Input()\n public get displayMode(): string {\n return this._displayMode;\n }\n public set displayMode(v: string) {\n this.setOption({\n name: 'displayMode',\n value: v,\n afterCallback: () => {\n this._emitChangedEvent();\n },\n });\n }\n\n @Output()\n onChanged: EventEmitter<AXDataPagerChangedEvent> = new EventEmitter<AXDataPagerChangedEvent>();\n\n constructor(\n @Optional()\n @Inject(AXPagedComponent)\n private _parent: AXPagedComponent,\n ) {\n super();\n //\n if (this._parent) {\n this._parent.onPageChanged.subscribe((c) => {\n this.size = this._parent.pageSize;\n this.total = this._parent.totalCount;\n this.value = c.value;\n });\n this.size = this._parent.pageSize;\n this.total = this._parent.totalCount;\n }\n }\n\n ngAfterViewInit() {\n this._emitChangedEvent();\n }\n\n protected override internalValueChanged(value: any): void {\n this._emitChangedEvent(true);\n }\n\n protected override internalGetValue(value: any): number {\n if (!isNumber(value) || !value || this.totalPages == 0) return 1;\n return value > this.totalPages ? this.totalPages : value;\n }\n\n private previousDisplayInfo: AXDataPagerData | null;\n\n public get displayInfo(): AXDataPagerData {\n const skip = Math.max(0, (this.value - 1) * this.size);\n const result = {\n page: this.value,\n totalItems: this.total,\n totalPages: this.totalPages,\n range: {\n from: skip + 1,\n to: Math.min(this.value * this.size, this.total),\n },\n skip,\n take: this.size,\n };\n return result;\n }\n\n private _emitChangedEvent(u: boolean = false): void {\n this.totalPages = Math.ceil(this._total / this.size);\n //\n if (!isEqual(this.previousDisplayInfo, this.displayInfo)) {\n this.onChanged.emit(\n Object.assign(\n {\n component: this,\n isUserInteraction: u,\n htmlElement: this.getHostElement(),\n },\n this.displayInfo,\n ),\n );\n if (this.totalPages > 0) this._parent?.goToPage(this.value);\n //\n this.previousDisplayInfo = cloneDeep(this.displayInfo);\n //\n this.cdr.markForCheck();\n }\n }\n\n goNextPage(): void {\n this.goToPage(Math.min(this.value + 1, this.totalPages));\n }\n\n goLastPage(): void {\n this.goToPage(this.totalPages);\n }\n\n goFirstPage(): void {\n this.goToPage(1);\n }\n\n goPrevPage(): void {\n this.goToPage(Math.max(this.value - 1, 1));\n }\n\n goToPage(page: number): void {\n if (page != this.value) {\n this.commitValue(page, true);\n }\n }\n}\n","@switch(displayMode){\n@case('full'){\n<ax-prefix>\n <ax-data-pager-numeric-selector>\n </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes>\n </ax-data-pager-page-sizes>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@case('compact'){\n<ax-prefix>\n <ax-data-pager-prev-buttons>\n </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector>\n </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons>\n </ax-data-pager-next-buttons>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@default{\n<ng-content select=\"ax-prefix\"></ng-content>\n<ng-content select=\"ax-suffix\"></ng-content>\n}\n}","import { AXButtonModule } from '@acorex/components/button';\nimport { AXButtonGroupModule } from '@acorex/components/button-group';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXDataPagerInfoComponent } from './data-pager-info.component';\nimport { AXDataPagerInputSelectorComponent } from './data-pager-input-selector.component';\nimport { AXDataPagerNextButtonsComponent } from './data-pager-next-buttons.components';\nimport { AXDataPagerNumericSelectorComponent } from './data-pager-numeric-selector.component';\nimport { AXDataPagerPageSizesComponent } from './data-pager-pagesize-dropdown.component';\nimport { AXDataPagerPrevButtonsComponent } from './data-pager-prev-buttons.component';\nimport { AXDataPagerComponent } from './data-pager.component';\nimport { AXTranslationModule } from '@acorex/core/translation';\n\nconst COMPONENT = [\n AXDataPagerComponent,\n AXDataPagerNextButtonsComponent,\n AXDataPagerPrevButtonsComponent,\n AXDataPagerPageSizesComponent,\n AXDataPagerNumericSelectorComponent,\n AXDataPagerInputSelectorComponent,\n AXDataPagerInfoComponent,\n];\nconst MODULES = [\n CommonModule,\n FormsModule,\n AXButtonModule,\n AXButtonGroupModule,\n AXNumberBoxModule,\n AXDropdownModule,\n AXDecoratorModule,\n AXTranslationModule,\n];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXDataPagerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i2.AXDataPagerNextButtonsComponent","i3.AXDataPagerPrevButtonsComponent","i4.AXDataPagerPageSizesComponent","i5.AXDataPagerNumericSelectorComponent","i6.AXDataPagerInputSelectorComponent","i7.AXDataPagerInfoComponent"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-data-pager.mjs","sources":["../../../../libs/components/data-pager/src/lib/data-pager-base.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-info.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-input-selector.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-next-buttons.components.ts","../../../../libs/components/data-pager/src/lib/data-pager-numeric-selector.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-pagesize-dropdown.component.ts","../../../../libs/components/data-pager/src/lib/data-pager-prev-buttons.component.ts","../../../../libs/components/data-pager/src/lib/data-pager.component.ts","../../../../libs/components/data-pager/src/lib/data-pager.component.html","../../../../libs/components/data-pager/src/lib/data-pager.module.ts","../../../../libs/components/data-pager/src/acorex-components-data-pager.ts"],"sourcesContent":["import {\n AXEvent,\n AXOptionChangedEvent,\n MXInteractiveComponent,\n} from '@acorex/components/common';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { EventEmitter, Injectable, inject } from '@angular/core';\n\n/**\n * A token that specifies the display mode of datapager component.\n */\nexport type AXDataPagerDisplayMode = 'full' | 'compact' | 'custom';\n\nexport interface AXDataPagerData {\n range: { from: number; to: number };\n page: number;\n skip: number;\n take: number;\n totalPages: number;\n totalItems: number;\n}\n\nexport class AXDataPagerChangedEvent\n extends AXEvent\n implements AXDataPagerData\n{\n range: { from: number; to: number } = { from: 0, to: 0 };\n page = 0;\n skip = 0;\n take = 0;\n totalPages = 0;\n totalItems = 0;\n}\n\n@Injectable()\nexport abstract class AXDataPagerParentComponent {\n abstract readonly: boolean;\n abstract disabled: boolean;\n abstract onChanged: EventEmitter<AXDataPagerChangedEvent>;\n abstract onOptionChanged: EventEmitter<AXOptionChangedEvent>;\n abstract get displayInfo(): AXDataPagerData;\n abstract size;\n abstract goNextPage(): void;\n abstract goLastPage(): void;\n abstract goFirstPage(): void;\n abstract goPrevPage(): void;\n abstract goToPage(page: number): void;\n}\n\n@Injectable()\nexport abstract class AXDataPagerChild extends MXInteractiveComponent {\n protected _parent: AXDataPagerParentComponent = inject(\n AXDataPagerParentComponent\n );\n protected _unsubscriber: AXUnsubscriber = inject(AXUnsubscriber);\n\n constructor() {\n super();\n //\n this._parent.onChanged\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe((c) => {\n this.applyParent();\n });\n //\n this._parent.onOptionChanged\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe((c) => {\n this.applyParent();\n });\n }\n\n ngAfterViewInit() {\n this.applyParent();\n }\n\n protected abstract applyParent(): void;\n}\n","import { AXTranslationService } from '@acorex/core/translation';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-info',\n template: `{{ _textFormatted | translate | async }}`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXDataPagerChild, useExisting: AXDataPagerInfoComponent },\n AXUnsubscriber,\n ],\n})\nexport class AXDataPagerInfoComponent extends AXDataPagerChild {\n @Input()\n text: string;\n\n protected _textFormatted: string;\n\n protected translateService = inject(AXTranslationService);\n\n protected override applyParent() {\n const info = this._parent.displayInfo;\n if ([info.range, info.range.from, info.totalItems].every((c) => c)) {\n this._textFormatted = this.translateService\n .translateSync(this.text ?? 'datapager.info.text')\n .replace('[from]', info.range.from.toString())\n .replace('[to]', info.range.to.toString())\n .replace('[totalItems]', info.totalItems.toString())\n .replace('[page]', info.page.toString())\n .replace('[totalPages]', info.totalPages.toString());\n this.cdr.markForCheck();\n }\n }\n}\n","import { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-input-selector',\n template: `\n <ax-number-box\n class=\"ax-sm\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [ngModel]=\"_currentPage\"\n (onValueChanged)=\"_handleValueChanged($event)\"\n [showSpinButtons]=\"false\"\n [minValue]=\"1\"\n [maxValue]=\"_totalPages\"\n >\n </ax-number-box>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: AXDataPagerChild,\n useExisting: AXDataPagerInputSelectorComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXDataPagerInputSelectorComponent extends AXDataPagerChild {\n protected _totalPages = 1;\n protected _currentPage = 1;\n\n protected override applyParent() {\n this._currentPage = this._parent.displayInfo.page;\n this._totalPages = this._parent.displayInfo.totalPages;\n this.cdr.markForCheck();\n }\n\n protected _handleValueChanged(e: AXValueChangedEvent<number>) {\n //TODO: debounceTime\n if (e.isUserInteraction) {\n this._parent.goToPage(e.value as number);\n }\n }\n}\n","import { AXClickEvent } from '@acorex/components/common';\nimport { AXHtmlUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-next-buttons',\n template: `\n <ax-button [disabled]=\"disabled\" look=\"blank\" class=\"ax-sm\" title=\"Go to the next page\" (onClick)=\"_emitOnNextPageClick($event)\">\n <ax-icon\n class=\"ax-icon ax-text-xl\"\n [ngClass]=\"{\n 'ax-icon-chevron-left': rtl,\n 'ax-icon-chevron-right': !rtl\n }\"\n ></ax-icon>\n </ax-button>\n <ax-button [disabled]=\"disabled\" look=\"blank\" class=\"ax-sm\" title=\"Go to the last page\" (onClick)=\"_emitOnLastPageClick($event)\">\n <ax-icon class=\"ax-icon ax-text-xl\" [ngClass]=\"{ 'ax-icon-first-page': rtl, 'ax-icon-last-page': !rtl }\"></ax-icon>\n </ax-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerNextButtonsComponent }, AXUnsubscriber],\n})\nexport class AXDataPagerNextButtonsComponent extends AXDataPagerChild {\n protected rtl!: boolean;\n\n override ngOnInit(): void {\n super.ngOnInit;\n this.rtl = AXHtmlUtil.isRtl(this.getHostElement());\n }\n\n protected override applyParent() {\n this.disabled = this._parent.displayInfo.page == this._parent.displayInfo.totalPages || this._parent.disabled;\n }\n\n _emitOnLastPageClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goLastPage();\n }\n\n _emitOnNextPageClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goNextPage();\n }\n}\n","import { AXButtonItem } from '@acorex/components/button';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-numeric-selector',\n template: `\n <ax-button [disabled]=\"_currentPage === 1 || _parent.disabled\" look=\"blank\" class=\"ax-sm\" (onClick)=\"_handleOnItemClick({ data: 1 })\">\n <ax-icon class=\"ax-icon ax-icon-first-page ax-text-xl\"></ax-icon>\n </ax-button>\n @for (item of _items; track $index) {\n <ax-button\n class=\"ax-sm\"\n [disabled]=\"_parent.disabled\"\n [color]=\"_currentPage === item.data ? 'primary' : 'solid'\"\n [look]=\"_currentPage === item.data ? 'solid' : 'blank'\"\n [text]=\"item.text\"\n (onClick)=\"_handleOnItemClick(item)\"\n >\n @if (item.iconClass) {\n <ax-icon class=\"ax-icon ax-text-xl\" [ngClass]=\"item.iconClass\"></ax-icon>\n }\n </ax-button>\n }\n\n <ax-button\n [disabled]=\"_currentPage === _lastPage || _parent.disabled\"\n look=\"blank\"\n class=\"ax-sm\"\n (onClick)=\"_handleOnItemClick({ data: _lastPage })\"\n >\n <ax-icon class=\"ax-icon ax-icon-last-page ax-text-xl\"></ax-icon>\n </ax-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: AXDataPagerChild,\n useExisting: AXDataPagerNumericSelectorComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXDataPagerNumericSelectorComponent extends AXDataPagerChild {\n _items: AXButtonItem[] = [];\n _currentPage = 1;\n _lastPage = 1;\n\n private _displayCount = 5;\n\n protected override applyParent(): void {\n this._currentPage = this._parent.displayInfo.page;\n this._lastPage = this._parent.displayInfo.totalPages;\n //\n this._items = [];\n\n const start = Math.max(0, (Math.ceil(this._currentPage / this._displayCount) - 1) * this._displayCount + 1);\n const end = Math.min(start + this._displayCount - 1, this._lastPage);\n //\n if (start > this._displayCount) {\n this._items.push({\n iconClass: 'ax-icon-more-horizontal',\n data: start - 1,\n });\n }\n //\n for (let i = start; i <= end; i++) {\n this._items.push({\n text: i.toString(),\n data: i,\n });\n }\n if (end < this._lastPage) {\n this._items.push({\n iconClass: 'ax-icon-more-horizontal',\n data: end + 1,\n });\n }\n this.cdr.detectChanges();\n }\n\n _handleOnItemClick(e: any) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goToPage(Number(e.data));\n }\n}\n","import { AXClickEvent } from '@acorex/components/common';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-page-sizes',\n template: `\n <ax-button\n [text]=\"_size\"\n [color]=\"'default'\"\n [look]=\"'blank'\"\n class=\"ax-sm\"\n [disabled]=\"_parent.disabled\"\n >\n <ax-dropdown-panel>\n <ax-button-item-list (onItemClick)=\"_emitOnItemClick($event)\">\n @for (item of _items; track $index) {\n <ax-button-item\n [text]=\"item.text\"\n [data]=\"item.data\"\n [selected]=\"item.selected\"\n >\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n <ax-suffix>\n <ax-icon icon=\"ax-icon ax-icon-solid ax-icon-arrow-down\"></ax-icon>\n </ax-suffix>\n </ax-button>\n <!-- <span >items per page</span> -->\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n outputs: [],\n providers: [\n { provide: AXDataPagerChild, useExisting: AXDataPagerPageSizesComponent },\n AXUnsubscriber,\n ],\n})\nexport class AXDataPagerPageSizesComponent extends AXDataPagerChild {\n _size: number;\n\n //TODO: AXButtonItems type error\n _items: any[] = [];\n\n private _sizes: number[];\n @Input()\n public get sizes(): number[] {\n return this._sizes || [5, 10, 20, 50, 100];\n }\n public set sizes(v: number[]) {\n this._sizes = v;\n this.applyParent();\n }\n\n protected override applyParent(): void {\n this._size = this._parent.displayInfo.take;\n this._items = this.sizes.map((s: any) => ({\n text: s.toString(),\n selected: s == this._size,\n data: {\n size: s,\n },\n }));\n this.cdr.detectChanges();\n }\n\n _emitOnItemClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._size = this._parent.size = Number(e.data.size);\n }\n}\n","import { AXClickEvent } from '@acorex/components/common';\nimport { AXHtmlUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { AXDataPagerChild } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager-prev-buttons',\n template: `\n <ax-button [disabled]=\"disabled\" look=\"blank\" class=\"ax-sm\" title=\"Go to the last page\" (onClick)=\"_emitOnFirstPageClick($event)\">\n <ax-icon class=\"ax-icon ax-text-xl\" [ngClass]=\"{ 'ax-icon-last-page': rtl, 'ax-icon-first-page': !rtl }\"></ax-icon>\n </ax-button>\n <ax-button [disabled]=\"disabled\" look=\"blank\" class=\"ax-sm\" title=\"Go to the next page\" (onClick)=\"_emitOnPrevPageClick($event)\">\n <ax-icon\n class=\"ax-icon ax-text-xl\"\n [ngClass]=\"{\n 'ax-icon-chevron-left': !rtl,\n 'ax-icon-chevron-right': rtl\n }\"\n ></ax-icon>\n </ax-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerPrevButtonsComponent }, AXUnsubscriber],\n})\nexport class AXDataPagerPrevButtonsComponent extends AXDataPagerChild {\n protected rtl!: boolean;\n\n override ngOnInit(): void {\n super.ngOnInit;\n this.rtl = AXHtmlUtil.isRtl(this.getHostElement());\n }\n\n protected override applyParent() {\n this.disabled = this._parent.displayInfo.page == 1 || this._parent.disabled;\n }\n\n _emitOnFirstPageClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goFirstPage();\n }\n\n _emitOnPrevPageClick(e: AXClickEvent) {\n if (this._parent.readonly || this._parent.disabled) return;\n this._parent.goPrevPage();\n }\n}\n","import { AXPagedComponent, MXValueComponent } from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n ViewEncapsulation,\n forwardRef,\n} from '@angular/core';\nimport { cloneDeep, isEqual, isNumber } from 'lodash-es';\n\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { AXDataPagerChangedEvent, AXDataPagerData, AXDataPagerParentComponent } from './data-pager-base.component';\n\n@Component({\n selector: 'ax-data-pager',\n templateUrl: './data-pager.component.html',\n styleUrls: ['./data-pager.component.scss'],\n inputs: ['value', 'name', 'disabled', 'readonly'],\n outputs: ['valueChange', 'onValueChanged', 'disabledChange', 'readonlyChange'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXDataPagerParentComponent, useExisting: AXDataPagerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXDataPagerComponent),\n multi: true,\n },\n ],\n})\nexport class AXDataPagerComponent extends MXValueComponent<number> {\n private _size = null;\n @Input()\n public get size(): number {\n return this._size || 10;\n }\n public set size(v: number) {\n if (v != this._size) {\n const prevSize = this._size;\n this._size = v;\n if (this._parent) {\n this._parent.pageSize = v;\n }\n const newPage = Math.ceil(this.displayInfo.range.from / this._size) || 1;\n this.commitValue(newPage);\n this._emitChangedEvent(prevSize != null ? true : false);\n }\n }\n\n private _total = 0;\n @Input()\n public get total(): number {\n return this._total;\n }\n public set total(v: number) {\n const t = v && v > 0 ? v : 0;\n if (t != this._total) {\n this._total = t;\n this._emitChangedEvent();\n }\n }\n\n private _totalPages = 0;\n\n public get totalPages(): number {\n return this._totalPages;\n }\n\n private set totalPages(value: number) {\n this._totalPages = value;\n }\n\n @Output()\n public displayModeChange: EventEmitter<string> = new EventEmitter<string>();\n\n private _displayMode = 'full';\n @Input()\n public get displayMode(): string {\n return this._displayMode;\n }\n public set displayMode(v: string) {\n this.setOption({\n name: 'displayMode',\n value: v,\n afterCallback: () => {\n this._emitChangedEvent();\n },\n });\n }\n\n @Output()\n onChanged: EventEmitter<AXDataPagerChangedEvent> = new EventEmitter<AXDataPagerChangedEvent>();\n\n constructor(\n @Optional()\n @Inject(AXPagedComponent)\n private _parent: AXPagedComponent,\n ) {\n super();\n //\n if (this._parent) {\n this._parent.onPageChanged.subscribe((c) => {\n this.size = this._parent.pageSize;\n this.total = this._parent.totalCount;\n this.value = c.value;\n });\n this.size = this._parent.pageSize;\n this.total = this._parent.totalCount;\n }\n }\n\n ngAfterViewInit() {\n this._emitChangedEvent();\n }\n\n protected override internalValueChanged(value: any): void {\n this._emitChangedEvent(true);\n }\n\n protected override internalGetValue(value: any): number {\n if (!isNumber(value) || !value || this.totalPages == 0) return 1;\n return value > this.totalPages ? this.totalPages : value;\n }\n\n private previousDisplayInfo: AXDataPagerData | null;\n\n public get displayInfo(): AXDataPagerData {\n const skip = Math.max(0, (this.value - 1) * this.size);\n const result = {\n page: this.value,\n totalItems: this.total,\n totalPages: this.totalPages,\n range: {\n from: skip + 1,\n to: Math.min(this.value * this.size, this.total),\n },\n skip,\n take: this.size,\n };\n return result;\n }\n\n private _emitChangedEvent(u: boolean = false): void {\n this.totalPages = Math.ceil(this._total / this.size);\n //\n if (!isEqual(this.previousDisplayInfo, this.displayInfo)) {\n this.onChanged.emit(\n Object.assign(\n {\n component: this,\n isUserInteraction: u,\n htmlElement: this.getHostElement(),\n },\n this.displayInfo,\n ),\n );\n if (this.totalPages > 0) this._parent?.goToPage(this.value);\n //\n this.previousDisplayInfo = cloneDeep(this.displayInfo);\n //\n this.cdr.markForCheck();\n }\n }\n\n goNextPage(): void {\n this.goToPage(Math.min(this.value + 1, this.totalPages));\n }\n\n goLastPage(): void {\n this.goToPage(this.totalPages);\n }\n\n goFirstPage(): void {\n this.goToPage(1);\n }\n\n goPrevPage(): void {\n this.goToPage(Math.max(this.value - 1, 1));\n }\n\n goToPage(page: number): void {\n if (page != this.value) {\n this.commitValue(page, true);\n }\n }\n}\n","@switch(displayMode){\n@case('full'){\n<ax-prefix>\n <ax-data-pager-numeric-selector>\n </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes>\n </ax-data-pager-page-sizes>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@case('compact'){\n<ax-prefix>\n <ax-data-pager-prev-buttons>\n </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector>\n </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons>\n </ax-data-pager-next-buttons>\n</ax-prefix>\n<ax-suffix>\n <ax-data-pager-info>\n </ax-data-pager-info>\n</ax-suffix>\n}\n@default{\n<ng-content select=\"ax-prefix\"></ng-content>\n<ng-content select=\"ax-suffix\"></ng-content>\n}\n}","import { AXButtonModule } from '@acorex/components/button';\nimport { AXButtonGroupModule } from '@acorex/components/button-group';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXDataPagerInfoComponent } from './data-pager-info.component';\nimport { AXDataPagerInputSelectorComponent } from './data-pager-input-selector.component';\nimport { AXDataPagerNextButtonsComponent } from './data-pager-next-buttons.components';\nimport { AXDataPagerNumericSelectorComponent } from './data-pager-numeric-selector.component';\nimport { AXDataPagerPageSizesComponent } from './data-pager-pagesize-dropdown.component';\nimport { AXDataPagerPrevButtonsComponent } from './data-pager-prev-buttons.component';\nimport { AXDataPagerComponent } from './data-pager.component';\nimport { AXTranslationModule } from '@acorex/core/translation';\n\nconst COMPONENT = [\n AXDataPagerComponent,\n AXDataPagerNextButtonsComponent,\n AXDataPagerPrevButtonsComponent,\n AXDataPagerPageSizesComponent,\n AXDataPagerNumericSelectorComponent,\n AXDataPagerInputSelectorComponent,\n AXDataPagerInfoComponent,\n];\nconst MODULES = [\n CommonModule,\n FormsModule,\n AXButtonModule,\n AXButtonGroupModule,\n AXNumberBoxModule,\n AXDropdownModule,\n AXDecoratorModule,\n AXTranslationModule,\n];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXDataPagerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i2.AXDataPagerNextButtonsComponent","i3.AXDataPagerPrevButtonsComponent","i4.AXDataPagerPageSizesComponent","i5.AXDataPagerNumericSelectorComponent","i6.AXDataPagerInputSelectorComponent","i7.AXDataPagerInfoComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAsBM,MAAO,uBACX,SAAQ,OAAO,CAAA;AADjB,IAAA,WAAA,GAAA;;QAIE,IAAK,CAAA,KAAA,GAAiC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QACzD,IAAI,CAAA,IAAA,GAAG,CAAC,CAAC;QACT,IAAI,CAAA,IAAA,GAAG,CAAC,CAAC;QACT,IAAI,CAAA,IAAA,GAAG,CAAC,CAAC;QACT,IAAU,CAAA,UAAA,GAAG,CAAC,CAAC;QACf,IAAU,CAAA,UAAA,GAAG,CAAC,CAAC;KAChB;AAAA,CAAA;MAGqB,0BAA0B,CAAA;8GAA1B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA1B,0BAA0B,EAAA,CAAA,CAAA,EAAA;;2FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAD/C,UAAU;;AAgBL,MAAgB,gBAAiB,SAAQ,sBAAsB,CAAA;AAMnE,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE,CAAC;AANA,QAAA,IAAA,CAAA,OAAO,GAA+B,MAAM,CACpD,0BAA0B,CAC3B,CAAC;AACQ,QAAA,IAAA,CAAA,aAAa,GAAmB,MAAM,CAAC,cAAc,CAAC,CAAC;;QAK/D,IAAI,CAAC,OAAO,CAAC,SAAS;AACnB,aAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC;AACzC,aAAA,SAAS,CAAC,CAAC,CAAC,KAAI;YACf,IAAI,CAAC,WAAW,EAAE,CAAC;AACrB,SAAC,CAAC,CAAC;;QAEL,IAAI,CAAC,OAAO,CAAC,eAAe;AACzB,aAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC;AACzC,aAAA,SAAS,CAAC,CAAC,CAAC,KAAI;YACf,IAAI,CAAC,WAAW,EAAE,CAAC;AACrB,SAAC,CAAC,CAAC;KACN;IAED,eAAe,GAAA;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;8GAxBmB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAAhB,gBAAgB,EAAA,CAAA,CAAA,EAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBADrC,UAAU;;;AC5BL,MAAO,wBAAyB,SAAQ,gBAAgB,CAAA;AAV9D,IAAA,WAAA,GAAA;;AAgBY,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAe3D,KAAA;IAboB,WAAW,GAAA;AAC5B,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;AAClE,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,gBAAgB;AACxC,iBAAA,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,qBAAqB,CAAC;iBACjD,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;iBAC7C,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;iBACzC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;iBACnD,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;iBACvC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;AACvD,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;SACzB;KACF;8GApBU,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EALxB,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,wBAAwB,EAAE;YACpE,cAAc;AACf,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EANS,CAA0C,wCAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAQzC,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAVpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,QAAQ,EAAE,CAA0C,wCAAA,CAAA;oBACpD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,0BAA0B,EAAE;wBACpE,cAAc;AACf,qBAAA;AACF,iBAAA,CAAA;8BAGC,IAAI,EAAA,CAAA;sBADH,KAAK;;;ACYF,MAAO,iCAAkC,SAAQ,gBAAgB,CAAA;AAzBvE,IAAA,WAAA,GAAA;;QA0BY,IAAW,CAAA,WAAA,GAAG,CAAC,CAAC;QAChB,IAAY,CAAA,YAAA,GAAG,CAAC,CAAC;AAc5B,KAAA;IAZoB,WAAW,GAAA;QAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;QAClD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC;AACvD,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;AAES,IAAA,mBAAmB,CAAC,CAA8B,EAAA;;AAE1D,QAAA,IAAI,CAAC,CAAC,iBAAiB,EAAE;YACvB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAe,CAAC,CAAC;SAC1C;KACF;8GAfU,iCAAiC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAjC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iCAAiC,EARjC,QAAA,EAAA,8BAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,gBAAgB;AACzB,gBAAA,WAAW,EAAE,iCAAiC;AAC/C,aAAA;YACD,cAAc;SACf,EArBS,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;AAYT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,aAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAWU,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAzB7C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;AAYT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,gBAAgB;AACzB,4BAAA,WAAW,EAAmC,iCAAA;AAC/C,yBAAA;wBACD,cAAc;AACf,qBAAA;AACF,iBAAA,CAAA;;;ACRK,MAAO,+BAAgC,SAAQ,gBAAgB,CAAA;IAG1D,QAAQ,GAAA;QACf,KAAK,CAAC,QAAQ,CAAC;AACf,QAAA,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;KACpD;IAEkB,WAAW,GAAA;QAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;KAC/G;AAED,IAAA,oBAAoB,CAAC,CAAe,EAAA;QAClC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO;AAC3D,QAAA,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;KAC3B;AAED,IAAA,oBAAoB,CAAC,CAAe,EAAA;QAClC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO;AAC3D,QAAA,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;KAC3B;8GApBU,+BAA+B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,EAF/B,QAAA,EAAA,4BAAA,EAAA,SAAA,EAAA,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,+BAA+B,EAAE,EAAE,cAAc,CAAC,EAhB9F,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;AAaT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,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,EAAAA,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,aAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAKU,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBApB3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;AAaT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAiC,+BAAA,EAAE,EAAE,cAAc,CAAC;AACzG,iBAAA,CAAA;;;ACqBK,MAAO,mCAAoC,SAAQ,gBAAgB,CAAA;AAxCzE,IAAA,WAAA,GAAA;;QAyCE,IAAM,CAAA,MAAA,GAAmB,EAAE,CAAC;QAC5B,IAAY,CAAA,YAAA,GAAG,CAAC,CAAC;QACjB,IAAS,CAAA,SAAA,GAAG,CAAC,CAAC;QAEN,IAAa,CAAA,aAAA,GAAG,CAAC,CAAC;AAqC3B,KAAA;IAnCoB,WAAW,GAAA;QAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;QAClD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC;;AAErD,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;AAEjB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;AAC5G,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;;AAErE,QAAA,IAAI,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE;AAC9B,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AACf,gBAAA,SAAS,EAAE,yBAAyB;gBACpC,IAAI,EAAE,KAAK,GAAG,CAAC;AAChB,aAAA,CAAC,CAAC;SACJ;;AAED,QAAA,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE;AACjC,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AACf,gBAAA,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;AAClB,gBAAA,IAAI,EAAE,CAAC;AACR,aAAA,CAAC,CAAC;SACJ;AACD,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE;AACxB,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AACf,gBAAA,SAAS,EAAE,yBAAyB;gBACpC,IAAI,EAAE,GAAG,GAAG,CAAC;AACd,aAAA,CAAC,CAAC;SACJ;AACD,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;AAED,IAAA,kBAAkB,CAAC,CAAM,EAAA;QACvB,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO;AAC3D,QAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;KACvC;8GAzCU,mCAAmC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAnC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mCAAmC,EARnC,QAAA,EAAA,gCAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,gBAAgB;AACzB,gBAAA,WAAW,EAAE,mCAAmC;AACjD,aAAA;YACD,cAAc;SACf,EApCS,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,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,EAAAA,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,aAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAWU,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAxC/C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gCAAgC;AAC1C,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,gBAAgB;AACzB,4BAAA,WAAW,EAAqC,mCAAA;AACjD,yBAAA;wBACD,cAAc;AACf,qBAAA;AACF,iBAAA,CAAA;;;ACEK,MAAO,6BAA8B,SAAQ,gBAAgB,CAAA;AApCnE,IAAA,WAAA,GAAA;;;QAwCE,IAAM,CAAA,MAAA,GAAU,EAAE,CAAC;AA4BpB,KAAA;AAzBC,IAAA,IACW,KAAK,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;KAC5C;IACD,IAAW,KAAK,CAAC,CAAW,EAAA;AAC1B,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAEkB,WAAW,GAAA;QAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;AAC3C,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAM,MAAM;AACxC,YAAA,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;AAClB,YAAA,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK;AACzB,YAAA,IAAI,EAAE;AACJ,gBAAA,IAAI,EAAE,CAAC;AACR,aAAA;AACF,SAAA,CAAC,CAAC,CAAC;AACJ,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;AAED,IAAA,gBAAgB,CAAC,CAAe,EAAA;QAC9B,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO;AAC3D,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtD;8GA/BU,6BAA6B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA7B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,EAL7B,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,6BAA6B,EAAE;YACzE,cAAc;SACf,EAhCS,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,aAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,QAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,WAAA,EAAA,eAAA,EAAA,UAAA,EAAA,SAAA,EAAA,mBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,gJAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FASU,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBApCzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,+BAA+B,EAAE;wBACzE,cAAc;AACf,qBAAA;AACF,iBAAA,CAAA;8BASY,KAAK,EAAA,CAAA;sBADf,KAAK;;;AC5BF,MAAO,+BAAgC,SAAQ,gBAAgB,CAAA;IAG1D,QAAQ,GAAA;QACf,KAAK,CAAC,QAAQ,CAAC;AACf,QAAA,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;KACpD;IAEkB,WAAW,GAAA;AAC5B,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;KAC7E;AAED,IAAA,qBAAqB,CAAC,CAAe,EAAA;QACnC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO;AAC3D,QAAA,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;KAC5B;AAED,IAAA,oBAAoB,CAAC,CAAe,EAAA;QAClC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO;AAC3D,QAAA,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;KAC3B;8GApBU,+BAA+B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,EAF/B,QAAA,EAAA,4BAAA,EAAA,SAAA,EAAA,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,+BAA+B,EAAE,EAAE,cAAc,CAAC,EAhB9F,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;AAaT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,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,EAAAA,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,aAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAKU,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBApB3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;AAaT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAiC,+BAAA,EAAE,EAAE,cAAc,CAAC;AACzG,iBAAA,CAAA;;;ACUK,MAAO,oBAAqB,SAAQ,gBAAwB,CAAA;AAEhE,IAAA,IACW,IAAI,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;KACzB;IACD,IAAW,IAAI,CAAC,CAAS,EAAA;AACvB,QAAA,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE;AACnB,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;AAC5B,YAAA,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;AACf,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,gBAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;aAC3B;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACzE,YAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAC1B,YAAA,IAAI,CAAC,iBAAiB,CAAC,QAAQ,IAAI,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC;SACzD;KACF;AAGD,IAAA,IACW,KAAK,GAAA;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IACD,IAAW,KAAK,CAAC,CAAS,EAAA;AACxB,QAAA,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC7B,QAAA,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE;AACpB,YAAA,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAChB,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC1B;KACF;AAID,IAAA,IAAW,UAAU,GAAA;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAED,IAAY,UAAU,CAAC,KAAa,EAAA;AAClC,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;KAC1B;AAMD,IAAA,IACW,WAAW,GAAA;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IACD,IAAW,WAAW,CAAC,CAAS,EAAA;QAC9B,IAAI,CAAC,SAAS,CAAC;AACb,YAAA,IAAI,EAAE,aAAa;AACnB,YAAA,KAAK,EAAE,CAAC;YACR,aAAa,EAAE,MAAK;gBAClB,IAAI,CAAC,iBAAiB,EAAE,CAAC;aAC1B;AACF,SAAA,CAAC,CAAC;KACJ;AAKD,IAAA,WAAA,CAGU,OAAyB,EAAA;AAEjC,QAAA,KAAK,EAAE,CAAC;QAFA,IAAO,CAAA,OAAA,GAAP,OAAO,CAAkB;QAjE3B,IAAK,CAAA,KAAA,GAAG,IAAI,CAAC;QAkBb,IAAM,CAAA,MAAA,GAAG,CAAC,CAAC;QAaX,IAAW,CAAA,WAAA,GAAG,CAAC,CAAC;AAWjB,QAAA,IAAA,CAAA,iBAAiB,GAAyB,IAAI,YAAY,EAAU,CAAC;QAEpE,IAAY,CAAA,YAAA,GAAG,MAAM,CAAC;AAgB9B,QAAA,IAAA,CAAA,SAAS,GAA0C,IAAI,YAAY,EAA2B,CAAC;;AAS7F,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;gBACzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;AACrC,gBAAA,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;AACvB,aAAC,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;SACtC;KACF;IAED,eAAe,GAAA;QACb,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC1B;AAEkB,IAAA,oBAAoB,CAAC,KAAU,EAAA;AAChD,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;KAC9B;AAEkB,IAAA,gBAAgB,CAAC,KAAU,EAAA;AAC5C,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC;AAAE,YAAA,OAAO,CAAC,CAAC;AACjE,QAAA,OAAO,KAAK,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;KAC1D;AAID,IAAA,IAAW,WAAW,GAAA;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;AACvD,QAAA,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,UAAU,EAAE,IAAI,CAAC,KAAK;YACtB,UAAU,EAAE,IAAI,CAAC,UAAU;AAC3B,YAAA,KAAK,EAAE;gBACL,IAAI,EAAE,IAAI,GAAG,CAAC;AACd,gBAAA,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;AACjD,aAAA;YACD,IAAI;YACJ,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;AACF,QAAA,OAAO,MAAM,CAAC;KACf;IAEO,iBAAiB,CAAC,IAAa,KAAK,EAAA;AAC1C,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;;AAErD,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE;YACxD,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,MAAM,CAAC,MAAM,CACX;AACE,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,iBAAiB,EAAE,CAAC;AACpB,gBAAA,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE;AACnC,aAAA,EACD,IAAI,CAAC,WAAW,CACjB,CACF,CAAC;AACF,YAAA,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC;gBAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;YAE5D,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;;AAEvD,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;SACzB;KACF;IAED,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;KAC1D;IAED,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAChC;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;KAClB;IAED,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KAC5C;AAED,IAAA,QAAQ,CAAC,IAAY,EAAA;AACnB,QAAA,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;AACtB,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;SAC9B;KACF;AA1JU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAiErB,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAjEf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EATpB,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA,EAAE,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,oBAAoB,EAAE;AAC1E,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC;AACnD,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACF,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChCH,wuBA+BC,EAAA,MAAA,EAAA,CAAA,uoCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAD,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,gJAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,+BAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,+BAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,6BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,mCAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,iCAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,wBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDGY,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAjBhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,EAGjB,MAAA,EAAA,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,EACxC,OAAA,EAAA,CAAC,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,EAC7D,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAC1B,SAAA,EAAA;AACT,wBAAA,EAAE,OAAO,EAAE,0BAA0B,EAAE,WAAW,sBAAsB,EAAE;AAC1E,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,0BAA0B,CAAC;AACnD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,wuBAAA,EAAA,MAAA,EAAA,CAAA,uoCAAA,CAAA,EAAA,CAAA;;0BAkEE,QAAQ;;0BACR,MAAM;2BAAC,gBAAgB,CAAA;yCA9Df,IAAI,EAAA,CAAA;sBADd,KAAK;gBAmBK,KAAK,EAAA,CAAA;sBADf,KAAK;gBAuBC,iBAAiB,EAAA,CAAA;sBADvB,MAAM;gBAKI,WAAW,EAAA,CAAA;sBADrB,KAAK;gBAeN,SAAS,EAAA,CAAA;sBADR,MAAM;;;AE7ET,MAAM,SAAS,GAAG;IAChB,oBAAoB;IACpB,+BAA+B;IAC/B,+BAA+B;IAC/B,6BAA6B;IAC7B,mCAAmC;IACnC,iCAAiC;IACjC,wBAAwB;CACzB,CAAC;AACF,MAAM,OAAO,GAAG;IACd,YAAY;IACZ,WAAW;IACX,cAAc;IACd,mBAAmB;IACnB,iBAAiB;IACjB,gBAAgB;IAChB,iBAAiB;IACjB,mBAAmB;CACpB,CAAC;MAQW,iBAAiB,CAAA;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBAzB5B,oBAAoB;YACpB,+BAA+B;YAC/B,+BAA+B;YAC/B,6BAA6B;YAC7B,mCAAmC;YACnC,iCAAiC;AACjC,YAAA,wBAAwB,aAGxB,YAAY;YACZ,WAAW;YACX,cAAc;YACd,mBAAmB;YACnB,iBAAiB;YACjB,gBAAgB;YAChB,iBAAiB;AACjB,YAAA,mBAAmB,aAhBnB,oBAAoB;YACpB,+BAA+B;YAC/B,+BAA+B;YAC/B,6BAA6B;YAC7B,mCAAmC;YACnC,iCAAiC;YACjC,wBAAwB,CAAA,EAAA,CAAA,CAAA,EAAA;AAmBb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAJf,OAAO,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIT,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,GAAG,SAAS,CAAC;AAC5B,oBAAA,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC;AACrB,oBAAA,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC;AACvB,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA,CAAA;;;AC1CD;;AAEG;;;;"}
|