@acorex/components 5.0.42 → 5.0.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/esm2020/lib/base/common.module.mjs +5 -4
  2. package/esm2020/lib/base/index.mjs +2 -1
  3. package/esm2020/lib/base/infinite-scroll.directive.mjs +63 -0
  4. package/esm2020/lib/base/mixin/datalist-component.class.mjs +26 -13
  5. package/esm2020/lib/base/mixin/datalist.class.mjs +3 -0
  6. package/esm2020/lib/base/mixin/mixin.class.mjs +2 -1
  7. package/esm2020/lib/base/mixin/selection-component.class.mjs +7 -3
  8. package/esm2020/lib/base/overlay.service.mjs +2 -2
  9. package/esm2020/lib/calendar/calendar.component.mjs +1 -2
  10. package/esm2020/lib/popover/popover.component.mjs +3 -4
  11. package/esm2020/lib/popup/popup.component.mjs +3 -3
  12. package/esm2020/lib/selectbox/selectbox.component.mjs +107 -60
  13. package/esm2020/lib/selectbox/selectbox.module.mjs +44 -5
  14. package/esm2020/lib/toast/toast.service.mjs +2 -2
  15. package/esm2020/lib/treeview/tree-view.component.mjs +8 -5
  16. package/fesm2015/acorex-components.mjs +254 -91
  17. package/fesm2015/acorex-components.mjs.map +1 -1
  18. package/fesm2020/acorex-components.mjs +252 -91
  19. package/fesm2020/acorex-components.mjs.map +1 -1
  20. package/lib/base/common.module.d.ts +2 -1
  21. package/lib/base/index.d.ts +1 -0
  22. package/lib/base/infinite-scroll.directive.d.ts +25 -0
  23. package/lib/base/mixin/datalist-component.class.d.ts +11 -4
  24. package/lib/base/mixin/datalist.class.d.ts +11 -0
  25. package/lib/base/mixin/mixin.class.d.ts +1 -0
  26. package/lib/base/mixin/selection-component.class.d.ts +1 -0
  27. package/lib/selectbox/selectbox.component.d.ts +18 -5
  28. package/lib/selectbox/selectbox.module.d.ts +11 -10
  29. package/lib/treeview/tree-view.component.d.ts +2 -1
  30. package/package.json +1 -1
@@ -1,12 +1,12 @@
1
1
  import { __classPrivateFieldSet, __classPrivateFieldGet } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
- import { Injectable, Inject, EventEmitter, Directive, NgModule, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, HostBinding, HostListener, ContentChildren, Optional, ViewChild, ContentChild, TemplateRef, ElementRef, ViewChildren } from '@angular/core';
3
+ import { Injectable, Inject, EventEmitter, Directive, Input, NgModule, Component, ChangeDetectionStrategy, ViewEncapsulation, Output, HostBinding, HostListener, ContentChildren, Optional, ViewChild, ContentChild, TemplateRef, ElementRef, ViewChildren } from '@angular/core';
4
4
  import _ from 'lodash';
5
5
  import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
6
6
  import * as i1$2 from '@acorex/core';
7
7
  import { AXObjectUtil, AXDateTime, AXDateTimeRange, AXDateTimeModule, AXConfig, AXTranslationModule, AXDrawingUtil, AXTranslator, AXStringUtil } from '@acorex/core';
8
- import { Subscription, Subject, merge, asyncScheduler, BehaviorSubject, fromEvent } from 'rxjs';
9
- import { debounceTime, distinctUntilChanged, observeOn, finalize, throttleTime } from 'rxjs/operators';
8
+ import { Subscription, Subject, fromEvent, merge, asyncScheduler, BehaviorSubject } from 'rxjs';
9
+ import { debounceTime, distinctUntilChanged, map, pairwise, filter, startWith, exhaustMap, observeOn, finalize, throttleTime } from 'rxjs/operators';
10
10
  import * as i2 from '@angular/common';
11
11
  import { CommonModule, DOCUMENT } from '@angular/common';
12
12
  import * as i1 from '@angular/forms';
@@ -276,16 +276,18 @@ function _ClickableComponenetMixin(Base) {
276
276
  }
277
277
 
278
278
  function _DatalistComponenetMixin(Base) {
279
- var _currentPage, _isLoading, _loadedItems, _totalItems, _isLazy, _items, _a;
279
+ var _instances, _currentPage, _isLoading, _loadedItems, _flatItems, _totalItems, _isLazy, _items, _generateFlatItems, _a;
280
280
  return _a = class extends Base {
281
281
  constructor(...args) {
282
282
  super(...args);
283
+ _instances.add(this);
283
284
  this.valueField = 'id';
284
285
  this.textField = 'text';
285
286
  this.pageSize = 10;
286
287
  _currentPage.set(this, 0);
287
288
  _isLoading.set(this, false);
288
289
  _loadedItems.set(this, []);
290
+ _flatItems.set(this, []);
289
291
  _totalItems.set(this, 0);
290
292
  _isLazy.set(this, false);
291
293
  _items.set(this, []);
@@ -303,6 +305,7 @@ function _DatalistComponenetMixin(Base) {
303
305
  if (Array.isArray(v)) {
304
306
  __classPrivateFieldSet(this, _items, this._formatData(v), "f");
305
307
  this._onDataLoaded();
308
+ __classPrivateFieldGet(this, _instances, "m", _generateFlatItems).call(this);
306
309
  }
307
310
  else if (typeof v === 'function') {
308
311
  __classPrivateFieldSet(this, _isLazy, true, "f");
@@ -311,17 +314,21 @@ function _DatalistComponenetMixin(Base) {
311
314
  else {
312
315
  __classPrivateFieldSet(this, _items, [], "f");
313
316
  this._onDataLoaded();
317
+ __classPrivateFieldGet(this, _instances, "m", _generateFlatItems).call(this);
314
318
  }
315
319
  }
316
320
  get displayItems() {
317
321
  if (Array.isArray(this.items)) {
318
- return __classPrivateFieldGet(this, _items, "f") || [];
322
+ return (__classPrivateFieldGet(this, _items, "f") || []);
319
323
  }
320
324
  else if (typeof __classPrivateFieldGet(this, _items, "f") == 'function') {
321
325
  return __classPrivateFieldGet(this, _loadedItems, "f") || [];
322
326
  }
323
327
  return [];
324
328
  }
329
+ get flatItems() {
330
+ return __classPrivateFieldGet(this, _flatItems, "f") || [];
331
+ }
325
332
  get isLoading() {
326
333
  return __classPrivateFieldGet(this, _isLoading, "f");
327
334
  }
@@ -337,13 +344,14 @@ function _DatalistComponenetMixin(Base) {
337
344
  }
338
345
  }), this.valueField);
339
346
  }
340
- _fetchData() {
347
+ _fetchData(opts) {
341
348
  if ((this.loadedCount >= this.totalCount && this.totalCount != 0) || __classPrivateFieldGet(this, _isLoading, "f") || !__classPrivateFieldGet(this, _isLazy, "f")) {
342
349
  return;
343
350
  }
344
351
  if (__classPrivateFieldGet(this, _items, "f")) {
345
352
  __classPrivateFieldSet(this, _isLoading, true, "f");
346
- __classPrivateFieldGet(this, _items, "f").call(this, { skip: __classPrivateFieldGet(this, _currentPage, "f") * this.pageSize, take: this.pageSize }).then(c => {
353
+ const fetchFn = __classPrivateFieldGet(this, _items, "f");
354
+ fetchFn({ skip: __classPrivateFieldGet(this, _currentPage, "f") * this.pageSize, take: this.pageSize, searchQuery: opts?.searchQuery }).then(c => {
347
355
  var _a;
348
356
  if (Array.isArray(c)) {
349
357
  __classPrivateFieldSet(this, _loadedItems, this._formatData(c), "f");
@@ -358,16 +366,10 @@ function _DatalistComponenetMixin(Base) {
358
366
  }).finally(() => {
359
367
  __classPrivateFieldSet(this, _isLoading, false, "f");
360
368
  this._onDataLoaded();
369
+ __classPrivateFieldGet(this, _instances, "m", _generateFlatItems).call(this);
361
370
  });
362
371
  }
363
372
  }
364
- // _onInternalInit() {
365
- // if (typeof this.#items == 'function') {
366
- // this.#isLazy = true;
367
- // this._fetchData();
368
- // }
369
- // super._onInternalInit();
370
- // }
371
373
  _onDataLoaded() {
372
374
  }
373
375
  _getItemDisplayTextTemplte(item) {
@@ -382,19 +384,30 @@ function _DatalistComponenetMixin(Base) {
382
384
  return item[this.valueField];
383
385
  }
384
386
  refresh() {
387
+ this.empty();
388
+ this._fetchData();
389
+ }
390
+ empty() {
385
391
  __classPrivateFieldSet(this, _isLoading, false, "f");
386
392
  if (__classPrivateFieldGet(this, _loadedItems, "f")) {
387
393
  __classPrivateFieldGet(this, _loadedItems, "f").length = 0;
388
394
  }
389
- this._fetchData();
390
395
  }
391
396
  },
392
397
  _currentPage = new WeakMap(),
393
398
  _isLoading = new WeakMap(),
394
399
  _loadedItems = new WeakMap(),
400
+ _flatItems = new WeakMap(),
395
401
  _totalItems = new WeakMap(),
396
402
  _isLazy = new WeakMap(),
397
403
  _items = new WeakMap(),
404
+ _instances = new WeakSet(),
405
+ _generateFlatItems = function _generateFlatItems() {
406
+ const flattenFn = (item) => {
407
+ return [item, _.flatMapDeep(item.children, flattenFn)];
408
+ };
409
+ __classPrivateFieldSet(this, _flatItems, _.flatMapDeep(this.displayItems, flattenFn), "f");
410
+ },
398
411
  _a;
399
412
  }
400
413
  const DATALIST_INPUTS = [
@@ -405,6 +418,8 @@ const DATALIST_INPUTS = [
405
418
  ];
406
419
  const DATALIST_OUTPUT = [];
407
420
 
421
+ ;
422
+
408
423
  function _DropdownComponenetMixin(Base) {
409
424
  class Mixin extends Base {
410
425
  constructor(...args) {
@@ -605,6 +620,9 @@ function _SelectionComponenetMixin(Base) {
605
620
  get displayItems() {
606
621
  return [];
607
622
  }
623
+ get flatItems() {
624
+ return [];
625
+ }
608
626
  _onInternalInit() {
609
627
  super._onInternalInit();
610
628
  }
@@ -650,8 +668,9 @@ function _SelectionComponenetMixin(Base) {
650
668
  if (this.value == null || this.value == undefined) {
651
669
  return [];
652
670
  }
653
- if (this.displayItems.length > 0) {
654
- return this.displayItems.filter(i => {
671
+ const items = this.flatItems;
672
+ if (items.length > 0) {
673
+ return items.filter(i => {
655
674
  if (Array.isArray(this.value)) {
656
675
  return this.value.some(ii => {
657
676
  if (typeof ii === 'object') {
@@ -1111,17 +1130,76 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImpor
1111
1130
  args: [{ selector: '[ax-responsive]' }]
1112
1131
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
1113
1132
 
1133
+ ;
1134
+ const AX_DEFAULT_SCROLL_POSITION = {
1135
+ scrollHeight: 0,
1136
+ scrollTop: 0,
1137
+ clientHeight: 0
1138
+ };
1139
+ class AXInfiniteScrollerDirective {
1140
+ constructor(elm) {
1141
+ this.elm = elm;
1142
+ this.scrollPercent = 70;
1143
+ this.isUserScrollingDown = (positions) => {
1144
+ return positions[0].sT < positions[1].sT;
1145
+ };
1146
+ this.isScrollExpectedPercent = (position) => {
1147
+ return ((position.sT + position.cH) / position.sH) > (this.scrollPercent / 100);
1148
+ };
1149
+ }
1150
+ ngAfterViewInit() {
1151
+ this.registerScrollEvent();
1152
+ this.streamScrollEvents();
1153
+ this.requestCallbackOnScroll();
1154
+ }
1155
+ registerScrollEvent() {
1156
+ this.scrollEvent$ = fromEvent(this.elm.nativeElement, 'scroll');
1157
+ }
1158
+ streamScrollEvents() {
1159
+ this.userScrolledDown$ = this.scrollEvent$
1160
+ .pipe(map((e) => ({
1161
+ scrollHeight: e.target.scrollHeight,
1162
+ scrollTop: e.target.scrollTop,
1163
+ clientHeight: e.target.clientHeight
1164
+ })), pairwise(), filter(positions => this.isUserScrollingDown(positions) && this.isScrollExpectedPercent(positions[1])));
1165
+ }
1166
+ requestCallbackOnScroll() {
1167
+ this.requestOnScroll$ = this.userScrolledDown$;
1168
+ if (this.immediateCallback) {
1169
+ this.requestOnScroll$ = this.requestOnScroll$.pipe(startWith([AX_DEFAULT_SCROLL_POSITION, AX_DEFAULT_SCROLL_POSITION]));
1170
+ }
1171
+ this.requestOnScroll$.pipe(exhaustMap(() => {
1172
+ return this.scrollCallback();
1173
+ }));
1174
+ //.subscribe((data) => { console.log(data) }, (err) => console.log(err));
1175
+ }
1176
+ }
1177
+ AXInfiniteScrollerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXInfiniteScrollerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1178
+ AXInfiniteScrollerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.1", type: AXInfiniteScrollerDirective, selector: "[axInfiniteScroller]", inputs: { scrollCallback: "scrollCallback", immediateCallback: "immediateCallback", scrollPercent: "scrollPercent" }, ngImport: i0 });
1179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXInfiniteScrollerDirective, decorators: [{
1180
+ type: Directive,
1181
+ args: [{
1182
+ selector: '[axInfiniteScroller]'
1183
+ }]
1184
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { scrollCallback: [{
1185
+ type: Input
1186
+ }], immediateCallback: [{
1187
+ type: Input
1188
+ }], scrollPercent: [{
1189
+ type: Input
1190
+ }] } });
1191
+
1114
1192
  class AXCommonModule {
1115
1193
  }
1116
1194
  AXCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1117
- AXCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXCommonModule, declarations: [AXResponsiveDirective], exports: [AXResponsiveDirective] });
1195
+ AXCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXCommonModule, declarations: [AXResponsiveDirective, AXInfiniteScrollerDirective], exports: [AXResponsiveDirective, AXInfiniteScrollerDirective] });
1118
1196
  AXCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXCommonModule, providers: [], imports: [[]] });
1119
1197
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXCommonModule, decorators: [{
1120
1198
  type: NgModule,
1121
1199
  args: [{
1122
1200
  imports: [],
1123
- exports: [AXResponsiveDirective],
1124
- declarations: [AXResponsiveDirective],
1201
+ exports: [AXResponsiveDirective, AXInfiniteScrollerDirective],
1202
+ declarations: [AXResponsiveDirective, AXInfiniteScrollerDirective],
1125
1203
  providers: [],
1126
1204
  }]
1127
1205
  }] });
@@ -2225,7 +2303,6 @@ class AXCalendarComponent extends AXCalendarComponentMixin {
2225
2303
  this._navNextPrev(true);
2226
2304
  }
2227
2305
  focus() {
2228
- debugger;
2229
2306
  this._getHostElement().querySelector('.ax-calendar-slots>div')?.focus();
2230
2307
  }
2231
2308
  _navNextPrev(prev) {
@@ -3160,7 +3237,7 @@ class AXOverlayService {
3160
3237
  hasBackdrop: configs.hasBackdrop,
3161
3238
  disposeOnNavigation: true,
3162
3239
  backdropClass: configs.backdropClass ? configs.backdropClass : (configs.transparentBackdrop ? 'cdk-overlay-transparent-backdrop' : undefined),
3163
- panelClass: configs.panelClass ? configs.panelClass : ['animate__animated', 'animate__fadeIn', 'animate__faster']
3240
+ panelClass: configs.panelClass ? configs.panelClass : ['ax-animate-animated', 'ax-animate-fadeIn', 'ax-animate-faster']
3164
3241
  };
3165
3242
  // joon nanat dorost sho
3166
3243
  let overlayRef = configs.containerElement ? this.overlayService.createOn(configs.containerElement, config) : this.overlayService2.create(config);
@@ -3466,7 +3543,6 @@ class AXPopoverComponent extends AXInteractiveComponenetMixin {
3466
3543
  // if (e.key === 'Enter' && e.type === 'keydown') {
3467
3544
  // this.toggle();
3468
3545
  // }
3469
- debugger;
3470
3546
  if (e.key === 'Escape') {
3471
3547
  if (this.isOpen) {
3472
3548
  this.close();
@@ -3503,7 +3579,7 @@ class AXPopoverComponent extends AXInteractiveComponenetMixin {
3503
3579
  this._overlayRef = this._overlay.create({
3504
3580
  positionStrategy: this._overlay.position().global().centerHorizontally().centerVertically(),
3505
3581
  disposeOnNavigation: true,
3506
- panelClass: ['ax-animate-fadeIn', 'ax-animate-faster'],
3582
+ panelClass: ['ax-overflow-hidden', 'ax-animate-fadeIn', 'ax-animate-faster'],
3507
3583
  hasBackdrop: true
3508
3584
  });
3509
3585
  }
@@ -3514,7 +3590,7 @@ class AXPopoverComponent extends AXInteractiveComponenetMixin {
3514
3590
  .withPositions(Array.isArray(this.position) ? this.position : [this.position])
3515
3591
  .withPush(false),
3516
3592
  disposeOnNavigation: true,
3517
- panelClass: ['ax-animate-fadeIn', 'ax-animate-faster'],
3593
+ panelClass: ['ax-overflow-hidden', 'ax-animate-fadeIn', 'ax-animate-faster'],
3518
3594
  maxHeight: 'unset',
3519
3595
  hasBackdrop: this.hasBackdrop,
3520
3596
  backdropClass: [this.backdropClass || 'cdk-overlay-transparent-backdrop']
@@ -5209,10 +5285,10 @@ class AXPopupComponent extends AXBaseComponentMixin {
5209
5285
  onFullScreen() { }
5210
5286
  }
5211
5287
  AXPopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXPopupComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: AXLoadingService }, { token: i1$2.AXPlatform }], target: i0.ɵɵFactoryTarget.Component });
5212
- AXPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.1", type: AXPopupComponent, selector: "ax-popup", host: { listeners: { "keydown.escape": "onKeydownHandler($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" cdkTrapFocus>\r\n <div class=\"ax-popup ax-popup-{{size}}\" tabindex=\"0\" cdkDrag [cdkDragDisabled]=\"!draggable\">\r\n <div cdkDragHandle class=\"ax-popup-header-container\">\r\n <ng-container *ngIf=\"showHeader\">\r\n <div class=\"ax-popup-header\">\r\n <span>{{title}}</span>\r\n <i class=\"ax-ic ax-ic-close\" *ngIf=\"showCloseButton\" (click)=\"_handleCloseClick()\" tabindex=\"1\"></i>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"ax-popup-main-container\">\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"_handleAttched($event)\"></ng-template>\r\n </div>\r\n <div class=\"ax-popup-footer-container\"></div>\r\n\r\n </div>\r\n</div>", directives: [{ type: i2$2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i3.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
5288
+ AXPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.1", type: AXPopupComponent, selector: "ax-popup", host: { listeners: { "keydown.escape": "onKeydownHandler($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" [cdkTrapFocus]=\"true\">\r\n <div class=\"ax-popup ax-popup-{{size}}\" tabindex=\"0\" cdkDrag [cdkDragDisabled]=\"!draggable\">\r\n <div cdkDragHandle class=\"ax-popup-header-container\">\r\n <ng-container *ngIf=\"showHeader\">\r\n <div class=\"ax-popup-header\">\r\n <span>{{title}}</span>\r\n <i class=\"ax-ic ax-ic-close\" *ngIf=\"showCloseButton\" (click)=\"_handleCloseClick()\" tabindex=\"1\"></i>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"ax-popup-main-container\">\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"_handleAttched($event)\"></ng-template>\r\n </div>\r\n <div class=\"ax-popup-footer-container\"></div>\r\n\r\n </div>\r\n</div>", directives: [{ type: i2$2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i3.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
5213
5289
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXPopupComponent, decorators: [{
5214
5290
  type: Component,
5215
- args: [{ selector: 'ax-popup', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" cdkTrapFocus>\r\n <div class=\"ax-popup ax-popup-{{size}}\" tabindex=\"0\" cdkDrag [cdkDragDisabled]=\"!draggable\">\r\n <div cdkDragHandle class=\"ax-popup-header-container\">\r\n <ng-container *ngIf=\"showHeader\">\r\n <div class=\"ax-popup-header\">\r\n <span>{{title}}</span>\r\n <i class=\"ax-ic ax-ic-close\" *ngIf=\"showCloseButton\" (click)=\"_handleCloseClick()\" tabindex=\"1\"></i>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"ax-popup-main-container\">\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"_handleAttched($event)\"></ng-template>\r\n </div>\r\n <div class=\"ax-popup-footer-container\"></div>\r\n\r\n </div>\r\n</div>" }]
5291
+ args: [{ selector: 'ax-popup', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" [cdkTrapFocus]=\"true\">\r\n <div class=\"ax-popup ax-popup-{{size}}\" tabindex=\"0\" cdkDrag [cdkDragDisabled]=\"!draggable\">\r\n <div cdkDragHandle class=\"ax-popup-header-container\">\r\n <ng-container *ngIf=\"showHeader\">\r\n <div class=\"ax-popup-header\">\r\n <span>{{title}}</span>\r\n <i class=\"ax-ic ax-ic-close\" *ngIf=\"showCloseButton\" (click)=\"_handleCloseClick()\" tabindex=\"1\"></i>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"ax-popup-main-container\">\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"_handleAttched($event)\"></ng-template>\r\n </div>\r\n <div class=\"ax-popup-footer-container\"></div>\r\n\r\n </div>\r\n</div>" }]
5216
5292
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.ViewContainerRef }, { type: AXLoadingService }, { type: i1$2.AXPlatform }]; }, propDecorators: { onKeydownHandler: [{
5217
5293
  type: HostListener,
5218
5294
  args: ['keydown.escape', ['$event']]
@@ -5400,9 +5476,16 @@ class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {
5400
5476
  this._zone = _zone;
5401
5477
  this._platform = _platform;
5402
5478
  this.clearButton = false;
5479
+ this._searchSettings = { enabled: false, expr: null };
5403
5480
  this.checkbox = false;
5404
- this._currentfocusedIndex = -1;
5405
5481
  this._isMobile = false;
5482
+ this._forceFocus = false;
5483
+ }
5484
+ get searchSettings() {
5485
+ return this._searchSettings;
5486
+ }
5487
+ set searchSettings(v) {
5488
+ this._searchSettings = v || { enabled: false, expr: null };
5406
5489
  }
5407
5490
  get emptyTemplate() {
5408
5491
  return this._contentEmptyTemplate;
@@ -5420,17 +5503,6 @@ class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {
5420
5503
  this._target = this._elementRef.nativeElement;
5421
5504
  this._isMobile = this._platform.is('Mobile');
5422
5505
  this._popoverTitle = this.placeholder || AXTranslator.get('selectbox.popover.title');
5423
- this.onOpened.subscribe(() => {
5424
- if (this.displayItems.length == 0) {
5425
- this._fetchData();
5426
- }
5427
- else {
5428
- this._focusSelectedItem();
5429
- }
5430
- });
5431
- this.onClosed.subscribe(() => {
5432
- this.focus();
5433
- });
5434
5506
  }
5435
5507
  onViewInit() {
5436
5508
  super.onViewInit();
@@ -5464,10 +5536,16 @@ class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {
5464
5536
  }
5465
5537
  }
5466
5538
  _onDataLoaded() {
5467
- setTimeout(() => {
5468
- this._checkForLoadData();
5469
- this.popover.updatePosition();
5470
- }, 100);
5539
+ if (this.popover.isOpen) {
5540
+ setTimeout(() => {
5541
+ this._checkForLoadData();
5542
+ this.popover.updatePosition();
5543
+ if (this._forceFocus) {
5544
+ this._focusSelectedItem();
5545
+ this._forceFocus = false;
5546
+ }
5547
+ }, 100);
5548
+ }
5471
5549
  }
5472
5550
  _onValueChanged(oldValue, newValue) {
5473
5551
  super._onValueChanged(oldValue, newValue);
@@ -5482,7 +5560,6 @@ class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {
5482
5560
  this.close();
5483
5561
  }
5484
5562
  _handleKeydown(e) {
5485
- debugger;
5486
5563
  const isLetter = new RegExp(/[a-zA-Z0-9\-]/).test(String.fromCharCode(e.keyCode));
5487
5564
  if (e.code === 'Backspace' && e.type === 'keydown' &&
5488
5565
  ((this.allowNull === true && this.selectedItems.length > 0) ||
@@ -5502,7 +5579,7 @@ class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {
5502
5579
  this.open();
5503
5580
  }
5504
5581
  else {
5505
- this._selectedItemByIndex(this._currentfocusedIndex + (e.key === 'ArrowDown' ? 1 : -1));
5582
+ this._selectedItemByNav((e.key === 'ArrowDown' ? 1 : -1));
5506
5583
  }
5507
5584
  }
5508
5585
  e.preventDefault();
@@ -5516,13 +5593,9 @@ class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {
5516
5593
  }
5517
5594
  }
5518
5595
  _handlePopoverKeydown(e) {
5519
- debugger;
5520
5596
  if ((e.key === 'ArrowDown' || e.key === 'ArrowUp') && this.displayItems.length > 0) {
5521
5597
  this.isUserInput = true;
5522
5598
  this._focusItemByNav((e.key === 'ArrowDown' ? 1 : -1));
5523
- if (!this.multiple) {
5524
- this.selectItems(this.displayItems[this._currentfocusedIndex]);
5525
- }
5526
5599
  e.preventDefault();
5527
5600
  }
5528
5601
  else if (e.code === 'Backspace' &&
@@ -5534,7 +5607,9 @@ class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {
5534
5607
  }
5535
5608
  else if ((e.code === 'Space' || e.code === 'Enter')) {
5536
5609
  e.preventDefault();
5537
- const focusedItem = this.displayItems[this._currentfocusedIndex];
5610
+ debugger;
5611
+ const focusedItemId = this.listContainer.nativeElement.querySelector('.ax-state-focus').dataset.id;
5612
+ const focusedItem = _.findLast(this.flatItems, [this.valueField, focusedItemId]);
5538
5613
  if (focusedItem) {
5539
5614
  if (this.isItemDisabled(focusedItem)) {
5540
5615
  return;
@@ -5563,66 +5638,111 @@ class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {
5563
5638
  }
5564
5639
  _handlePopupOnOpened(e) {
5565
5640
  this.popover.focus();
5566
- }
5567
- _focusItemByNav(sign = null) {
5568
- if (sign == null) {
5569
- const lastSelectedItem = this.selectedItems[this.selectedItems.length - 1];
5570
- this._currentfocusedIndex = lastSelectedItem ? this.displayItems.findIndex(c => c[this.valueField] == lastSelectedItem[this.valueField]) : 0;
5641
+ if (this.displayItems.length == 0) {
5642
+ this._forceFocus = true;
5643
+ this._fetchData();
5571
5644
  }
5572
5645
  else {
5573
- sign === -1 ? this._currentfocusedIndex-- : this._currentfocusedIndex++;
5646
+ this._focusSelectedItem();
5574
5647
  }
5575
- if (this._currentfocusedIndex < 0) {
5576
- this._currentfocusedIndex = 0;
5648
+ if (this._searchBox) {
5649
+ this._searchBox.focus();
5577
5650
  }
5578
- if (this._currentfocusedIndex > this.displayItems.length - 1) {
5579
- this._currentfocusedIndex = this.displayItems.length - 1;
5580
- }
5581
- // set scroll
5582
- this._focusItemByIndex(this._currentfocusedIndex);
5583
5651
  }
5584
- _focusItemByIndex(inedx) {
5585
- if (this.listContainer) {
5586
- this._zone.runOutsideAngular(() => {
5587
- const itemDiv = this.listContainer.nativeElement.querySelector(`.ax-list-item:nth-child(${inedx + 1})`);
5588
- if (itemDiv) {
5589
- itemDiv.focus();
5590
- itemDiv.scrollIntoView({ behavior: 'auto' });
5652
+ _handlePopupOnClosed(e) {
5653
+ this.focus();
5654
+ }
5655
+ _focusItemByNav(sign) {
5656
+ const list = this.listContainer.nativeElement;
5657
+ const fn = (s) => list.querySelector(s);
5658
+ const itemDiv = fn(`.ax-list-item.ax-state-focus`) || fn(`.ax-list-item.ax-state-selected`) || fn(`.ax-list-item`);
5659
+ let next = (sign == 1 ? itemDiv.nextElementSibling : itemDiv.previousElementSibling);
5660
+ if (next) {
5661
+ this._focusItemElement(next);
5662
+ }
5663
+ else {
5664
+ const parent = itemDiv.closest('.ax-list-item-group');
5665
+ if (parent) {
5666
+ const lis = (sign == 1 ? parent.nextElementSibling : parent.previousElementSibling)?.querySelectorAll('li');
5667
+ const a = sign == 1 ? _.first(lis) : _.last(lis);
5668
+ if (a) {
5669
+ this._focusItemElement(a);
5591
5670
  }
5592
- });
5671
+ }
5593
5672
  }
5594
5673
  }
5595
5674
  _focusSelectedItem() {
5596
- const lastSelectedItem = this.selectedItems[this.selectedItems.length - 1];
5597
- this._currentfocusedIndex = lastSelectedItem ? this.displayItems.findIndex(c => c[this.valueField] == lastSelectedItem[this.valueField]) : 0;
5598
- this._focusItemByIndex(this._currentfocusedIndex);
5675
+ this._zone.runOutsideAngular(() => {
5676
+ const list = this.listContainer.nativeElement;
5677
+ const fn = (s) => list.querySelector(s);
5678
+ const itemDiv = fn(`.ax-list-item.ax-state-selected`) || fn(`.ax-list-item`);
5679
+ if (itemDiv) {
5680
+ this._focusItemElement(itemDiv);
5681
+ }
5682
+ });
5599
5683
  }
5600
- _selectedItemByIndex(index) {
5601
- if (index < 0) {
5602
- index = 0;
5684
+ _focusItemElement(el) {
5685
+ this._zone.runOutsideAngular(() => {
5686
+ const list = this.listContainer.nativeElement;
5687
+ list.querySelectorAll('.ax-list-item').forEach(c => {
5688
+ if (c == el) {
5689
+ c.classList.add('ax-state-focus');
5690
+ el.scrollIntoView({ behavior: 'auto' });
5691
+ }
5692
+ else {
5693
+ c.classList.remove('ax-state-focus');
5694
+ }
5695
+ });
5696
+ this._searchBox ? this._searchBox.focus() : el.focus();
5697
+ });
5698
+ }
5699
+ _selectedItemByNav(sign) {
5700
+ const last = _.last(this.selectedItems);
5701
+ let i = 0;
5702
+ if (last) {
5703
+ i = _.findLastIndex(this.flatItems, [this.valueField, last[this.valueField]]);
5603
5704
  }
5604
- if (index > this.displayItems.length - 1) {
5605
- index = this.displayItems.length - 1;
5705
+ i += sign;
5706
+ let next = _.nth(this.flatItems, i);
5707
+ while (next?.children && next?.children.length) {
5708
+ i += sign;
5709
+ next = _.nth(this.flatItems, i);
5606
5710
  }
5607
- this.selectItems(this.displayItems[index]);
5608
- this._currentfocusedIndex = index;
5711
+ if (next) {
5712
+ this.selectItems(next);
5713
+ }
5714
+ else if (next == null && sign == 1) {
5715
+ this._fetchData();
5716
+ }
5717
+ }
5718
+ _onSearchExprChanged(e) {
5719
+ this.empty();
5720
+ this._fetchData();
5721
+ }
5722
+ _fetchData() {
5723
+ super._fetchData({ searchQuery: this._searchBox?.value });
5609
5724
  }
5610
5725
  }
5611
5726
  AXSelectBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXSelectBoxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1$2.AXPlatform }], target: i0.ɵɵFactoryTarget.Component });
5612
- AXSelectBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.1", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: { isOpen: "isOpen", fitParent: "fitParent", dropdownWidth: "dropdownWidth", position: "position", disabled: "disabled", tabIndex: "tabIndex", readonly: "readonly", allowNull: "allowNull", value: "value", debounceTime: "debounceTime", name: "name", checked: "checked", placeholder: "placeholder", maxLength: "maxLength", pageSize: "pageSize", valueField: "valueField", textField: "textField", items: "items", disabledField: "disabledField", disabledCallback: "disabledCallback", multiple: "multiple", selectionMode: "selectionMode", clearButton: "clearButton", checkbox: "checkbox" }, outputs: { onOpened: "onOpened", onClosed: "onClosed", onBlur: "onBlur", onFocus: "onFocus", valueChange: "valueChange", onValueChanged: "onValueChanged", valueChanged: "valueChanged" }, host: { listeners: { "keydown": "_handleKeydown($event)" }, classAttribute: "ax-editor-container ax-drop-down" }, queries: [{ propertyName: "_contentEmptyTemplate", first: true, predicate: ["emptyTemplate"], descendants: true }], viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true, static: true }, { propertyName: "listContainer", first: true, predicate: ["listContainer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span class=\"ax-mx-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <div class=\"ax-flex ax-mx-2\">\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <ax-badge [text]=\"_getItemDisplayTextTemplte(item)\" color=\"light\" class=\"ax-me-2\">\r\n <ax-suffix>\r\n <ax-icon icon=\"ax-ic ax-ic-close ax-cursor-pointer\"\r\n (click)=\"_handleBadgeRemove($event,item)\"></ax-icon>\r\n </ax-suffix>\r\n </ax-badge>\r\n </ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-ic ax-ic-close\"></ax-icon>\r\n</ax-button>\r\n<ax-button [disabled]=\"disabled\" [tabIndex]=\"-1\" color=\"light\" look=\"blank\" (onClick)=\"_handleArrowClickEvent($event)\">\r\n <ax-icon icon=\"ax-ic ax-ic-chevron ax-transform ax--rotate-90\"></ax-icon>\r\n</ax-button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n (onOpened)=\"_handlePopupOnOpened($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-center]=\"_isMobile\" [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list ax-list-container\" panel>\r\n <div *ngIf=\"_isMobile\" class=\"ax-overlay-pane-header\">\r\n <span>{{_popoverTitle}}</span>\r\n <i class=\"ax-ic {{multiple?'ax-ic-check !ax-text-primary-500':'ax-ic-close'}}\" (click)=\"close()\"\r\n tabindex=\"1\"></i>\r\n </div>\r\n <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\"\r\n (scroll)=\"_handleListScroll($event)\" #listContainer>\r\n <!--------------- Check loading state --------------->\r\n <ng-container *ngIf=\"!isLoading; else tmpLoading\">\r\n <!--------------- Check empty state ---------------->\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\"></ng-container>\r\n\r\n\r\n <ng-template #tmpTree let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <!-- <li *ngIf=\"item.visible !=false\" (click)=\"onMenuClick($event,item)\">\r\n <a [ngClass]=\"{'active': item.isActive}\">\r\n <span>{{item.text}}</span>\r\n <ax-icon [ngClass]=\"{'active-icon': item.isOpen}\" *ngIf=\"item?.children?.length > 0\" class=\"ax-ic-chevron\">\r\n </ax-icon>\r\n <ax-icon *ngIf=\"item.icon\" class=\"{{item.icon}}\">\r\n </ax-icon>\r\n </a>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.isOpen\">\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\"></ng-container>\r\n </ul>\r\n </li> -->\r\n </ng-container>\r\n </ng-template>\r\n\r\n\r\n <!--------------- items iteration ---------------->\r\n <ng-container *ngFor=\"let item of displayItems;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"!multiple; then singleTemplate; else multipleTemplate\">\r\n </ng-container>\r\n <ng-template #singleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [attr.tabindex]=\"i\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n (click)=\"_handleOnItemClick($event,item)\">\r\n {{ _getItemDisplayTextTemplte(item) }}\r\n </li>\r\n </ng-template>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n (click)=\"_handleOnItemClick($event,item)\">\r\n <input type=\"checkbox\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n *ngIf=\"checkbox\" [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"isItemDisabled(item)\">\r\n &nbsp;\r\n {{ _getItemDisplayTextTemplte(item) }}\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ul>\r\n </ng-container>\r\n </ng-container>\r\n <!--------------- empty template --------------->\r\n <ng-template #tmpEmpty>\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n <!--------------- loading template --------------->\r\n <ng-template #tmpLoading>\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n\r\n <!-- <ng-container *ngFor=\"let item of displayItems;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <div class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"!multiple; then singleTemplate; else multipleTemplate\"></ng-container>\r\n <ng-template #singleTemplate>\r\n <div class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [attr.tabindex]=\"i\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n (click)=\"_handleOnItemClick($event,item)\">\r\n {{ _getItemDisplayTextTemplte(item) }}\r\n </div>\r\n </ng-template>\r\n <ng-template #multipleTemplate>\r\n <div class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n (click)=\"_handleOnItemClick($event,item)\">\r\n <input type=\"checkbox\" [class.ax-state-disabled]=\"isItemDisabled(item)\" *ngIf=\"checkbox\"\r\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\">\r\n &nbsp;\r\n {{ _getItemDisplayTextTemplte(item) }}\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"(displayItems==null || displayItems.length==0) && !isLoading\">\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container> -->\r\n <!-- <ng-container *ngIf=\"isLoading\">\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container> -->\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</ax-popover>", components: [{ type: AXBadgeComponent, selector: "ax-badge", inputs: ["text", "color"] }, { type: AXDecoratorSuffixComponent, selector: "ax-suffix" }, { type: AXIconComponent, selector: "ax-icon", inputs: ["icon"] }, { type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "tabIndex", "size", "text", "submitBehavior", "cancelBehavior", "color", "look", "toggleable", "selected"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange"] }, { type: AXPopoverComponent, selector: "ax-popover", inputs: ["target", "position", "openTrigger", "closeTrigger", "hasBackdrop", "backdropClass"], outputs: ["onOpened", "onClosed"] }, { type: AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "text"], outputs: ["visibleChange"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "trans": i1$2.AXTranslatorPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
5727
+ AXSelectBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.1", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: { isOpen: "isOpen", fitParent: "fitParent", dropdownWidth: "dropdownWidth", position: "position", disabled: "disabled", tabIndex: "tabIndex", readonly: "readonly", allowNull: "allowNull", value: "value", debounceTime: "debounceTime", name: "name", checked: "checked", placeholder: "placeholder", maxLength: "maxLength", pageSize: "pageSize", valueField: "valueField", textField: "textField", items: "items", disabledField: "disabledField", disabledCallback: "disabledCallback", multiple: "multiple", selectionMode: "selectionMode", clearButton: "clearButton", searchSettings: "searchSettings", checkbox: "checkbox" }, outputs: { onOpened: "onOpened", onClosed: "onClosed", onBlur: "onBlur", onFocus: "onFocus", valueChange: "valueChange", onValueChanged: "onValueChanged", valueChanged: "valueChanged" }, host: { listeners: { "keydown": "_handleKeydown($event)" }, classAttribute: "ax-editor-container ax-drop-down" }, queries: [{ propertyName: "_contentEmptyTemplate", first: true, predicate: ["emptyTemplate"], descendants: true }], viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true, static: true }, { propertyName: "listContainer", first: true, predicate: ["listContainer"], descendants: true, static: true }, { propertyName: "_searchBox", first: true, predicate: ["searchBox"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span class=\"ax-mx-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <div class=\"ax-flex ax-mx-2\">\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <ax-badge [text]=\"_getItemDisplayTextTemplte(item)\" color=\"light\" class=\"ax-me-2\">\r\n <ax-suffix>\r\n <ax-icon icon=\"ax-ic ax-ic-close ax-cursor-pointer\"\r\n (click)=\"_handleBadgeRemove($event,item)\"></ax-icon>\r\n </ax-suffix>\r\n </ax-badge>\r\n </ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-ic ax-ic-close\"></ax-icon>\r\n</ax-button>\r\n<ax-button [disabled]=\"disabled\" [tabIndex]=\"-1\" color=\"light\" look=\"blank\" (onClick)=\"_handleArrowClickEvent($event)\">\r\n <ax-prefix *ngIf=\"(isLoading && !this.popover.isOpen);else icon\">\r\n <ax-loading type=\"spinner\"></ax-loading>\r\n </ax-prefix>\r\n <ng-template #icon>\r\n <ax-icon #icon icon=\"ax-ic ax-ic-chevron ax-transform ax--rotate-90\"></ax-icon>\r\n </ng-template>\r\n</ax-button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-center]=\"_isMobile\" [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list ax-list-container\" panel>\r\n <div *ngIf=\"_isMobile\" class=\"ax-overlay-pane-header\">\r\n <span>{{_popoverTitle}}</span>\r\n <i class=\"ax-ic {{multiple?'ax-ic-check !ax-text-primary-500':'ax-ic-close'}}\" (click)=\"close()\"\r\n tabindex=\"1\"></i>\r\n </div>\r\n <div *ngIf=\"searchSettings.enabled\" class=\"ax-p-2\" [cdkTrapFocus]=\"true\">\r\n <ax-text-box #searchBox placeholder=\"{{ 'common.search' | trans }}\" [debounceTime]=\"500\"\r\n [(value)]=\"searchSettings.expr\" (onValueChanged)=\"_onSearchExprChanged($event)\">\r\n </ax-text-box>\r\n </div>\r\n <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\" (scroll)=\"_handleListScroll($event)\" #listContainer>\r\n <!--------------- Check empty state ---------------->\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <!--------------- recursive template ---------------->\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\">\r\n </ng-container>\r\n <ng-template #tmpTree let-list=\"list\">\r\n <!--------------- items iteration ---------------->\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\" \r\n [attr.data-id]=\"item[this.valueField]\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"item.children?.length > 0;else tmpItem\">\r\n <li class=\"ax-list-item-group\" [attr.data-id]=\"item[this.valueField]\" >\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n <!--------------- children iteration ---------------->\r\n <ul *ngIf=\"item.children?.length > 0\">\r\n <ng-container\r\n *ngTemplateOutlet=\"tmpTree; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!multiple; else multipleTemplate\">\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\"\r\n >\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-container>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\"\r\n >\r\n <input type=\"checkbox\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n *ngIf=\"checkbox\" [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"isItemDisabled(item)\">\r\n &nbsp;\r\n &nbsp;\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </ul>\r\n </ng-container>\r\n <!--------------- loading template --------------->\r\n <ng-container *ngIf=\"isLoading\">\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <!--------------- empty template --------------->\r\n <ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</ax-popover>", components: [{ type: AXBadgeComponent, selector: "ax-badge", inputs: ["text", "color"] }, { type: AXDecoratorSuffixComponent, selector: "ax-suffix" }, { type: AXIconComponent, selector: "ax-icon", inputs: ["icon"] }, { type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "tabIndex", "size", "text", "submitBehavior", "cancelBehavior", "color", "look", "toggleable", "selected"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange"] }, { type: AXDecoratorPrefixComponent, selector: "ax-prefix" }, { type: AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "text"], outputs: ["visibleChange"] }, { type: AXPopoverComponent, selector: "ax-popover", inputs: ["target", "position", "openTrigger", "closeTrigger", "hasBackdrop", "backdropClass"], outputs: ["onOpened", "onClosed"] }, { type: AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "allowNull", "value", "debounceTime", "name", "checked", "placeholder", "maxLength"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "trans": i1$2.AXTranslatorPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
5613
5728
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXSelectBoxComponent, decorators: [{
5614
5729
  type: Component,
5615
- args: [{ selector: 'ax-select-box', inputs: [...DROPDOWN_INPUTS, ...INTERACTIVE_INPUTS, ...VALUE_INPUTS, ...TEXTBOX_INPUTS, ...DATALIST_INPUTS, ...SELECTION_INPUTS], outputs: [...DROPDOWN_OUTPUT, ...INTERACTIVE_OUTPUT, ...VALUE_OUTPUT, ...TEXTBOX_OUTPUT, ...SELECTION_OUTPUT], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'ax-editor-container ax-drop-down' }, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span class=\"ax-mx-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <div class=\"ax-flex ax-mx-2\">\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <ax-badge [text]=\"_getItemDisplayTextTemplte(item)\" color=\"light\" class=\"ax-me-2\">\r\n <ax-suffix>\r\n <ax-icon icon=\"ax-ic ax-ic-close ax-cursor-pointer\"\r\n (click)=\"_handleBadgeRemove($event,item)\"></ax-icon>\r\n </ax-suffix>\r\n </ax-badge>\r\n </ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-ic ax-ic-close\"></ax-icon>\r\n</ax-button>\r\n<ax-button [disabled]=\"disabled\" [tabIndex]=\"-1\" color=\"light\" look=\"blank\" (onClick)=\"_handleArrowClickEvent($event)\">\r\n <ax-icon icon=\"ax-ic ax-ic-chevron ax-transform ax--rotate-90\"></ax-icon>\r\n</ax-button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n (onOpened)=\"_handlePopupOnOpened($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-center]=\"_isMobile\" [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list ax-list-container\" panel>\r\n <div *ngIf=\"_isMobile\" class=\"ax-overlay-pane-header\">\r\n <span>{{_popoverTitle}}</span>\r\n <i class=\"ax-ic {{multiple?'ax-ic-check !ax-text-primary-500':'ax-ic-close'}}\" (click)=\"close()\"\r\n tabindex=\"1\"></i>\r\n </div>\r\n <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\"\r\n (scroll)=\"_handleListScroll($event)\" #listContainer>\r\n <!--------------- Check loading state --------------->\r\n <ng-container *ngIf=\"!isLoading; else tmpLoading\">\r\n <!--------------- Check empty state ---------------->\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\"></ng-container>\r\n\r\n\r\n <ng-template #tmpTree let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <!-- <li *ngIf=\"item.visible !=false\" (click)=\"onMenuClick($event,item)\">\r\n <a [ngClass]=\"{'active': item.isActive}\">\r\n <span>{{item.text}}</span>\r\n <ax-icon [ngClass]=\"{'active-icon': item.isOpen}\" *ngIf=\"item?.children?.length > 0\" class=\"ax-ic-chevron\">\r\n </ax-icon>\r\n <ax-icon *ngIf=\"item.icon\" class=\"{{item.icon}}\">\r\n </ax-icon>\r\n </a>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.isOpen\">\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\"></ng-container>\r\n </ul>\r\n </li> -->\r\n </ng-container>\r\n </ng-template>\r\n\r\n\r\n <!--------------- items iteration ---------------->\r\n <ng-container *ngFor=\"let item of displayItems;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"!multiple; then singleTemplate; else multipleTemplate\">\r\n </ng-container>\r\n <ng-template #singleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [attr.tabindex]=\"i\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n (click)=\"_handleOnItemClick($event,item)\">\r\n {{ _getItemDisplayTextTemplte(item) }}\r\n </li>\r\n </ng-template>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n (click)=\"_handleOnItemClick($event,item)\">\r\n <input type=\"checkbox\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n *ngIf=\"checkbox\" [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"isItemDisabled(item)\">\r\n &nbsp;\r\n {{ _getItemDisplayTextTemplte(item) }}\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ul>\r\n </ng-container>\r\n </ng-container>\r\n <!--------------- empty template --------------->\r\n <ng-template #tmpEmpty>\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n <!--------------- loading template --------------->\r\n <ng-template #tmpLoading>\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n\r\n <!-- <ng-container *ngFor=\"let item of displayItems;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <div class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"!multiple; then singleTemplate; else multipleTemplate\"></ng-container>\r\n <ng-template #singleTemplate>\r\n <div class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [attr.tabindex]=\"i\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n (click)=\"_handleOnItemClick($event,item)\">\r\n {{ _getItemDisplayTextTemplte(item) }}\r\n </div>\r\n </ng-template>\r\n <ng-template #multipleTemplate>\r\n <div class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n (click)=\"_handleOnItemClick($event,item)\">\r\n <input type=\"checkbox\" [class.ax-state-disabled]=\"isItemDisabled(item)\" *ngIf=\"checkbox\"\r\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\">\r\n &nbsp;\r\n {{ _getItemDisplayTextTemplte(item) }}\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"(displayItems==null || displayItems.length==0) && !isLoading\">\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container> -->\r\n <!-- <ng-container *ngIf=\"isLoading\">\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container> -->\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</ax-popover>" }]
5730
+ args: [{ selector: 'ax-select-box', inputs: [...DROPDOWN_INPUTS, ...INTERACTIVE_INPUTS, ...VALUE_INPUTS, ...TEXTBOX_INPUTS, ...DATALIST_INPUTS, ...SELECTION_INPUTS], outputs: [...DROPDOWN_OUTPUT, ...INTERACTIVE_OUTPUT, ...VALUE_OUTPUT, ...TEXTBOX_OUTPUT, ...SELECTION_OUTPUT], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'ax-editor-container ax-drop-down' }, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span class=\"ax-mx-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <div class=\"ax-flex ax-mx-2\">\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <ax-badge [text]=\"_getItemDisplayTextTemplte(item)\" color=\"light\" class=\"ax-me-2\">\r\n <ax-suffix>\r\n <ax-icon icon=\"ax-ic ax-ic-close ax-cursor-pointer\"\r\n (click)=\"_handleBadgeRemove($event,item)\"></ax-icon>\r\n </ax-suffix>\r\n </ax-badge>\r\n </ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-ic ax-ic-close\"></ax-icon>\r\n</ax-button>\r\n<ax-button [disabled]=\"disabled\" [tabIndex]=\"-1\" color=\"light\" look=\"blank\" (onClick)=\"_handleArrowClickEvent($event)\">\r\n <ax-prefix *ngIf=\"(isLoading && !this.popover.isOpen);else icon\">\r\n <ax-loading type=\"spinner\"></ax-loading>\r\n </ax-prefix>\r\n <ng-template #icon>\r\n <ax-icon #icon icon=\"ax-ic ax-ic-chevron ax-transform ax--rotate-90\"></ax-icon>\r\n </ng-template>\r\n</ax-button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-center]=\"_isMobile\" [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list ax-list-container\" panel>\r\n <div *ngIf=\"_isMobile\" class=\"ax-overlay-pane-header\">\r\n <span>{{_popoverTitle}}</span>\r\n <i class=\"ax-ic {{multiple?'ax-ic-check !ax-text-primary-500':'ax-ic-close'}}\" (click)=\"close()\"\r\n tabindex=\"1\"></i>\r\n </div>\r\n <div *ngIf=\"searchSettings.enabled\" class=\"ax-p-2\" [cdkTrapFocus]=\"true\">\r\n <ax-text-box #searchBox placeholder=\"{{ 'common.search' | trans }}\" [debounceTime]=\"500\"\r\n [(value)]=\"searchSettings.expr\" (onValueChanged)=\"_onSearchExprChanged($event)\">\r\n </ax-text-box>\r\n </div>\r\n <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\" (scroll)=\"_handleListScroll($event)\" #listContainer>\r\n <!--------------- Check empty state ---------------->\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <!--------------- recursive template ---------------->\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\">\r\n </ng-container>\r\n <ng-template #tmpTree let-list=\"list\">\r\n <!--------------- items iteration ---------------->\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\" \r\n [attr.data-id]=\"item[this.valueField]\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"item.children?.length > 0;else tmpItem\">\r\n <li class=\"ax-list-item-group\" [attr.data-id]=\"item[this.valueField]\" >\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n <!--------------- children iteration ---------------->\r\n <ul *ngIf=\"item.children?.length > 0\">\r\n <ng-container\r\n *ngTemplateOutlet=\"tmpTree; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!multiple; else multipleTemplate\">\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\"\r\n >\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-container>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\"\r\n >\r\n <input type=\"checkbox\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n *ngIf=\"checkbox\" [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"isItemDisabled(item)\">\r\n &nbsp;\r\n &nbsp;\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </ul>\r\n </ng-container>\r\n <!--------------- loading template --------------->\r\n <ng-container *ngIf=\"isLoading\">\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <!--------------- empty template --------------->\r\n <ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</ax-popover>" }]
5616
5731
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i1$2.AXPlatform }]; }, propDecorators: { popover: [{
5617
5732
  type: ViewChild,
5618
5733
  args: [AXPopoverComponent, { static: true }]
5619
5734
  }], clearButton: [{
5620
5735
  type: Input
5736
+ }], searchSettings: [{
5737
+ type: Input
5621
5738
  }], checkbox: [{
5622
5739
  type: Input
5623
5740
  }], listContainer: [{
5624
5741
  type: ViewChild,
5625
5742
  args: ['listContainer', { static: true }]
5743
+ }], _searchBox: [{
5744
+ type: ViewChild,
5745
+ args: ['searchBox']
5626
5746
  }], _contentEmptyTemplate: [{
5627
5747
  type: ContentChild,
5628
5748
  args: ['emptyTemplate']
@@ -5634,12 +5754,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImpor
5634
5754
  class AXSelectBoxModule {
5635
5755
  }
5636
5756
  AXSelectBoxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXSelectBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5637
- AXSelectBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXSelectBoxModule, declarations: [AXSelectBoxComponent], imports: [CommonModule, FormsModule, AXCheckBoxModule, AXBadgeModule, AXEditorDecoratorModule, AXTranslationModule, AXIconModule, AXPopoverModule, AXButtonModule, AXLabelModule, AXLoadingModule, A11yModule], exports: [AXSelectBoxComponent] });
5638
- AXSelectBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXSelectBoxModule, providers: [], imports: [[CommonModule, FormsModule, AXCheckBoxModule, AXBadgeModule, AXEditorDecoratorModule, AXTranslationModule, AXIconModule, AXPopoverModule, AXButtonModule, AXLabelModule, AXLoadingModule, A11yModule]] });
5757
+ AXSelectBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXSelectBoxModule, declarations: [AXSelectBoxComponent], imports: [CommonModule,
5758
+ AXCommonModule,
5759
+ FormsModule,
5760
+ AXCheckBoxModule,
5761
+ AXBadgeModule,
5762
+ AXEditorDecoratorModule,
5763
+ AXTranslationModule,
5764
+ AXIconModule,
5765
+ AXPopoverModule,
5766
+ AXButtonModule,
5767
+ AXLoadingModule,
5768
+ A11yModule,
5769
+ AXTextBoxModule], exports: [AXSelectBoxComponent] });
5770
+ AXSelectBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXSelectBoxModule, providers: [], imports: [[CommonModule,
5771
+ AXCommonModule,
5772
+ FormsModule,
5773
+ AXCheckBoxModule,
5774
+ AXBadgeModule,
5775
+ AXEditorDecoratorModule,
5776
+ AXTranslationModule,
5777
+ AXIconModule,
5778
+ AXPopoverModule,
5779
+ AXButtonModule,
5780
+ AXLoadingModule,
5781
+ A11yModule,
5782
+ AXTextBoxModule
5783
+ ]] });
5639
5784
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXSelectBoxModule, decorators: [{
5640
5785
  type: NgModule,
5641
5786
  args: [{
5642
- imports: [CommonModule, FormsModule, AXCheckBoxModule, AXBadgeModule, AXEditorDecoratorModule, AXTranslationModule, AXIconModule, AXPopoverModule, AXButtonModule, AXLabelModule, AXLoadingModule, A11yModule],
5787
+ imports: [CommonModule,
5788
+ AXCommonModule,
5789
+ FormsModule,
5790
+ AXCheckBoxModule,
5791
+ AXBadgeModule,
5792
+ AXEditorDecoratorModule,
5793
+ AXTranslationModule,
5794
+ AXIconModule,
5795
+ AXPopoverModule,
5796
+ AXButtonModule,
5797
+ AXLoadingModule,
5798
+ A11yModule,
5799
+ AXTextBoxModule
5800
+ ],
5643
5801
  exports: [AXSelectBoxComponent],
5644
5802
  declarations: [AXSelectBoxComponent],
5645
5803
  providers: [],
@@ -6385,7 +6543,7 @@ class AXToastService {
6385
6543
  }
6386
6544
  const overlayRef = this.overlayService.create({
6387
6545
  positionStrategy,
6388
- panelClass: ['animate__animated', 'animate__fadeIn', 'animate__faster'],
6546
+ panelClass: ['ax-animate-animated', 'ax-animate-fadeIn', 'ax-animate-faster'],
6389
6547
  });
6390
6548
  const toastPortal = new ComponentPortal(AXToastComponent, null, this.parentInjector);
6391
6549
  const host = overlayRef.attach(toastPortal);
@@ -6562,6 +6720,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImpor
6562
6720
 
6563
6721
  class AXTreeViewComponent {
6564
6722
  constructor() {
6723
+ this.showLines = "all";
6565
6724
  this.list = [
6566
6725
  {
6567
6726
  title: 'childless',
@@ -6647,11 +6806,13 @@ class AXTreeViewComponent {
6647
6806
  ngOnInit() { }
6648
6807
  }
6649
6808
  AXTreeViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXTreeViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6650
- AXTreeViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.1", type: AXTreeViewComponent, selector: "ax-tree-view", host: { classAttribute: "ax-tree-view" }, ngImport: i0, template: "<ul>\r\n <ng-template #recursiveList let-list>\r\n <li *ngFor=\"let item of list\">\r\n <span>\r\n <ax-check-box></ax-check-box>\r\n \r\n <span>{{item.title}}</span>\r\n </span>\r\n <ul *ngIf=\"item.children.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"recursiveList; context:{ $implicit: item.children }\"></ng-container>\r\n </ul>\r\n </li>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"recursiveList; context:{ $implicit: list }\"></ng-container>\r\n </ul>", components: [{ type: AXCheckBoxComponent, selector: "ax-check-box", inputs: ["disabled", "tabIndex", "readonly", "allowNull", "value", "debounceTime", "name", "checked"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], encapsulation: i0.ViewEncapsulation.None });
6809
+ AXTreeViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.1", type: AXTreeViewComponent, selector: "ax-tree-view", inputs: { showLines: "showLines" }, host: { classAttribute: "ax-tree-view" }, ngImport: i0, template: "<ul class=\"ax-list-{{showLines}}\">\r\n <ng-template #recursiveList let-list>\r\n <li *ngFor=\"let item of list\">\r\n <span>\r\n <ax-check-box></ax-check-box>\r\n \r\n <span>{{item.title}}</span>\r\n </span>\r\n <ul *ngIf=\"item.children.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"recursiveList; context:{ $implicit: item.children }\"></ng-container>\r\n </ul>\r\n </li>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"recursiveList; context:{ $implicit: list }\"></ng-container>\r\n </ul>", components: [{ type: AXCheckBoxComponent, selector: "ax-check-box", inputs: ["disabled", "tabIndex", "readonly", "allowNull", "value", "debounceTime", "name", "checked"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], encapsulation: i0.ViewEncapsulation.None });
6651
6810
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImport: i0, type: AXTreeViewComponent, decorators: [{
6652
6811
  type: Component,
6653
- args: [{ selector: 'ax-tree-view', encapsulation: ViewEncapsulation.None, host: { class: "ax-tree-view" }, template: "<ul>\r\n <ng-template #recursiveList let-list>\r\n <li *ngFor=\"let item of list\">\r\n <span>\r\n <ax-check-box></ax-check-box>\r\n \r\n <span>{{item.title}}</span>\r\n </span>\r\n <ul *ngIf=\"item.children.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"recursiveList; context:{ $implicit: item.children }\"></ng-container>\r\n </ul>\r\n </li>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"recursiveList; context:{ $implicit: list }\"></ng-container>\r\n </ul>" }]
6654
- }], ctorParameters: function () { return []; } });
6812
+ args: [{ selector: 'ax-tree-view', encapsulation: ViewEncapsulation.None, host: { class: "ax-tree-view" }, template: "<ul class=\"ax-list-{{showLines}}\">\r\n <ng-template #recursiveList let-list>\r\n <li *ngFor=\"let item of list\">\r\n <span>\r\n <ax-check-box></ax-check-box>\r\n \r\n <span>{{item.title}}</span>\r\n </span>\r\n <ul *ngIf=\"item.children.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"recursiveList; context:{ $implicit: item.children }\"></ng-container>\r\n </ul>\r\n </li>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"recursiveList; context:{ $implicit: list }\"></ng-container>\r\n </ul>" }]
6813
+ }], ctorParameters: function () { return []; }, propDecorators: { showLines: [{
6814
+ type: Input
6815
+ }] } });
6655
6816
 
6656
6817
  class AXTreeViewModule {
6657
6818
  }
@@ -6813,5 +6974,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.1", ngImpor
6813
6974
  * Generated bundle index. Do not edit.
6814
6975
  */
6815
6976
 
6816
- export { AXAlertButtonComponent, AXAlertComponent, AXAlertContentComponent, AXAlertFooterComponent, AXAlertModule, AXAlertSuffixComponent, AXAlertTitleComponent, AXAvatarComponent, AXAvatarModule, AXBadgeComponent, AXBadgeModule, AXBaseButtonMixin, AXBaseClickableMixin, AXBaseComponent, AXBaseComponentMixin, AXBaseDatePickerMixin, AXBaseDropdownMixin, AXBaseItemButtonMixin, AXBasePageComponent, AXBaseSelectionDropdownMixin, AXBaseSelectionValueMixin, AXBaseTextBoxMixin, AXBaseValueComponentMixin, AXBaseValueDropdownMixin, AXButtonClickEvent, AXButtonComponent, AXButtonGroupComponent, AXButtonItemComponent, AXButtonModule, AXCalendarComponent, AXCalendarComponentMixin, AXCalendarModule, AXCarouselArrowsComponent, AXCarouselComponent, AXCarouselCore, AXCarouselItemComponent, AXCarouselModule, AXCarouselPagerComponent, AXCheckBoxComponent, AXCheckBoxModule, AXClickEvent, AXCommonModule, AXDataListComponent, AXDataListModule, AXDatePickerComponent, AXDatepickerModule, AXDecoratorAddOnComponent, AXDecoratorContentComponent, AXDecoratorHeaderComponent, AXDecoratorPrefixComponent, AXDecoratorSuffixComponent, AXDialogComponent, AXDialogModule, AXDialogService, AXDrawerComponent, AXDrawerContainerComponent, AXDrawerContentComponent, AXDrawerModule, AXDropdownModule, AXDropdownPanelComponent, AXEditorDecoratorModule, AXEvent, AXFocusEvent, AXFormComponent, AXFormFieldComponent, AXFormHintComponent, AXFormModule, AXHtmlEvent, AXIconComponent, AXIconModule, AXInputMaskComponent, AXInputMaskModule, AXInteractiveComponenetMixin, AXItemClickEvent, AXLabelComponent, AXLabelModule, AXLoadingComponent, AXLoadingDirective, AXLoadingModule, AXLoadingService, AXLoadingSpinnerComponent, AXMenuComponent, AXMenuModule, AXNumberBoxComponent, AXNumberBoxModule, AXPageCloseEvent, AXPageClosedPromise, AXPageClosing, AXPageComponent, AXPageFooterComponent, AXPageHeaderComponent, AXPageModule, AXPageResult, AXPasswordBoxComponent, AXPasswordBoxModule, AXPopoverComponent, AXPopoverModule, AXPopupComponent, AXPopupModule, AXPopupService, AXRadioComponent, AXRadioModule, AXRangeSliderComponent, AXRangeSliderModule, AXResponsiveDirective, AXSelectBoxComponent, AXSelectBoxModule, AXSelectionListComponent, AXSelectionListModule, AXSelectionValueChangedEvent, AXSizableComponentMixin, AXSwitchComponent, AXSwitchModule, AXTabContentDirective, AXTabItemComponent, AXTabStripChangedEvent, AXTabsComponent, AXTabsModule, AXTextBoxComponent, AXTextBoxModule, AXTextareaComponent, AXTextareaModule, AXTimeBoxComponent, AXTimeBoxModule, AXToastComponent, AXToastModule, AXToastService, AXTooltipComponent, AXTooltipDirective, AXTooltipModule, AXTreeViewComponent, AXTreeViewModule, AXValidationModule, AXValidationRuleComponent, AXValidationRules, AXValueChangedEvent, AX_DIRECTIONS, AX_LOCATIONS, AX_STYLE_TYPES, BASE_INPUTS, BASE_OUTPUT, TAB_META_KEY, _BaseComponenetMixin };
6977
+ export { AXAlertButtonComponent, AXAlertComponent, AXAlertContentComponent, AXAlertFooterComponent, AXAlertModule, AXAlertSuffixComponent, AXAlertTitleComponent, AXAvatarComponent, AXAvatarModule, AXBadgeComponent, AXBadgeModule, AXBaseButtonMixin, AXBaseClickableMixin, AXBaseComponent, AXBaseComponentMixin, AXBaseDatePickerMixin, AXBaseDropdownMixin, AXBaseItemButtonMixin, AXBasePageComponent, AXBaseSelectionDropdownMixin, AXBaseSelectionValueMixin, AXBaseTextBoxMixin, AXBaseValueComponentMixin, AXBaseValueDropdownMixin, AXButtonClickEvent, AXButtonComponent, AXButtonGroupComponent, AXButtonItemComponent, AXButtonModule, AXCalendarComponent, AXCalendarComponentMixin, AXCalendarModule, AXCarouselArrowsComponent, AXCarouselComponent, AXCarouselCore, AXCarouselItemComponent, AXCarouselModule, AXCarouselPagerComponent, AXCheckBoxComponent, AXCheckBoxModule, AXClickEvent, AXCommonModule, AXDataListComponent, AXDataListModule, AXDatePickerComponent, AXDatepickerModule, AXDecoratorAddOnComponent, AXDecoratorContentComponent, AXDecoratorHeaderComponent, AXDecoratorPrefixComponent, AXDecoratorSuffixComponent, AXDialogComponent, AXDialogModule, AXDialogService, AXDrawerComponent, AXDrawerContainerComponent, AXDrawerContentComponent, AXDrawerModule, AXDropdownModule, AXDropdownPanelComponent, AXEditorDecoratorModule, AXEvent, AXFocusEvent, AXFormComponent, AXFormFieldComponent, AXFormHintComponent, AXFormModule, AXHtmlEvent, AXIconComponent, AXIconModule, AXInfiniteScrollerDirective, AXInputMaskComponent, AXInputMaskModule, AXInteractiveComponenetMixin, AXItemClickEvent, AXLabelComponent, AXLabelModule, AXLoadingComponent, AXLoadingDirective, AXLoadingModule, AXLoadingService, AXLoadingSpinnerComponent, AXMenuComponent, AXMenuModule, AXNumberBoxComponent, AXNumberBoxModule, AXPageCloseEvent, AXPageClosedPromise, AXPageClosing, AXPageComponent, AXPageFooterComponent, AXPageHeaderComponent, AXPageModule, AXPageResult, AXPasswordBoxComponent, AXPasswordBoxModule, AXPopoverComponent, AXPopoverModule, AXPopupComponent, AXPopupModule, AXPopupService, AXRadioComponent, AXRadioModule, AXRangeSliderComponent, AXRangeSliderModule, AXResponsiveDirective, AXSelectBoxComponent, AXSelectBoxModule, AXSelectionListComponent, AXSelectionListModule, AXSelectionValueChangedEvent, AXSizableComponentMixin, AXSwitchComponent, AXSwitchModule, AXTabContentDirective, AXTabItemComponent, AXTabStripChangedEvent, AXTabsComponent, AXTabsModule, AXTextBoxComponent, AXTextBoxModule, AXTextareaComponent, AXTextareaModule, AXTimeBoxComponent, AXTimeBoxModule, AXToastComponent, AXToastModule, AXToastService, AXTooltipComponent, AXTooltipDirective, AXTooltipModule, AXTreeViewComponent, AXTreeViewModule, AXValidationModule, AXValidationRuleComponent, AXValidationRules, AXValueChangedEvent, AX_DIRECTIONS, AX_LOCATIONS, AX_STYLE_TYPES, BASE_INPUTS, BASE_OUTPUT, TAB_META_KEY, _BaseComponenetMixin };
6817
6978
  //# sourceMappingURL=acorex-components.mjs.map