@acorex/components 3.0.50 → 3.0.54

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 (28) hide show
  1. package/acorex-components.metadata.json +1 -1
  2. package/bundles/acorex-components.umd.js +93 -36
  3. package/bundles/acorex-components.umd.js.map +1 -1
  4. package/bundles/acorex-components.umd.min.js +1 -1
  5. package/bundles/acorex-components.umd.min.js.map +1 -1
  6. package/esm2015/lib/calendar/calendar-box/calendar-box.component.js +13 -2
  7. package/esm2015/lib/date-picker/date-picker.component.js +13 -3
  8. package/esm2015/lib/dropdown/dropdown.component.js +7 -2
  9. package/esm2015/lib/menu/menu2.component.js +1 -1
  10. package/esm2015/lib/query-builder/query-builder-rule.component.js +5 -1
  11. package/esm2015/lib/query-builder/query-builder.service.js +4 -4
  12. package/esm2015/lib/selectbox/selectbox.component.js +56 -29
  13. package/esm5/lib/calendar/calendar-box/calendar-box.component.js +13 -2
  14. package/esm5/lib/date-picker/date-picker.component.js +13 -3
  15. package/esm5/lib/dropdown/dropdown.component.js +7 -2
  16. package/esm5/lib/menu/menu2.component.js +1 -1
  17. package/esm5/lib/query-builder/query-builder-rule.component.js +5 -1
  18. package/esm5/lib/query-builder/query-builder.service.js +4 -4
  19. package/esm5/lib/selectbox/selectbox.component.js +56 -29
  20. package/fesm2015/acorex-components.js +93 -36
  21. package/fesm2015/acorex-components.js.map +1 -1
  22. package/fesm5/acorex-components.js +93 -36
  23. package/fesm5/acorex-components.js.map +1 -1
  24. package/lib/calendar/calendar-box/calendar-box.component.d.ts +1 -0
  25. package/lib/date-picker/date-picker.component.d.ts +1 -0
  26. package/lib/dropdown/dropdown.component.d.ts +1 -0
  27. package/lib/selectbox/selectbox.component.d.ts +6 -0
  28. package/package.json +1 -1
@@ -1084,6 +1084,7 @@ var AXCalendarBoxComponent = /** @class */ (function () {
1084
1084
  this.size = 'md';
1085
1085
  this.selectableHoliday = true;
1086
1086
  this.dayStyle = [];
1087
+ this.dayMinMaxResoan = '';
1087
1088
  this.showTodayButton = false;
1088
1089
  this.matrix = [];
1089
1090
  this.rotated = false;
@@ -1191,7 +1192,13 @@ var AXCalendarBoxComponent = /** @class */ (function () {
1191
1192
  return this.dayStyle.find(function (c) { return c.date.split('T')[0] == date.toISOString().split('T')[0]; }).text;
1192
1193
  }
1193
1194
  else {
1194
- return '';
1195
+ if ((this.min && this.max && date.compaireNew(new AXDateTime(this.min, this.type), 'YMD', this.type) === -1) ||
1196
+ date.compaireNew(new AXDateTime(this.max, this.type), 'YMD', this.type) === 1) {
1197
+ return this.dayMinMaxResoan;
1198
+ }
1199
+ else {
1200
+ return '';
1201
+ }
1195
1202
  }
1196
1203
  };
1197
1204
  AXCalendarBoxComponent.prototype.ngOnInit = function () {
@@ -1478,6 +1485,10 @@ var AXCalendarBoxComponent = /** @class */ (function () {
1478
1485
  Input(),
1479
1486
  __metadata("design:type", Object)
1480
1487
  ], AXCalendarBoxComponent.prototype, "dayStyle", void 0);
1488
+ __decorate([
1489
+ Input(),
1490
+ __metadata("design:type", Object)
1491
+ ], AXCalendarBoxComponent.prototype, "dayMinMaxResoan", void 0);
1481
1492
  __decorate([
1482
1493
  Input('showTodayButton'),
1483
1494
  __metadata("design:type", Boolean)
@@ -3242,7 +3253,7 @@ var AXMenu2Component = /** @class */ (function () {
3242
3253
  selector: 'ax-menu2',
3243
3254
  template: "\n <div class=\"ax ax-menu ax-menu-vertical\" [attr.data-level]=\"level\">\n <ax-menu-item\n *ngFor=\"let item of items\"\n [level]=\"level\"\n [item]=\"item\"\n (showSubMenu)=\"showSubmenu($event)\">\n </ax-menu-item>\n </div>\n ",
3244
3255
  encapsulation: ViewEncapsulation.None,
3245
- styles: [".ax.ax-menu{display:flex}.ax.ax-menu.ax-menu-vertical[data-level=\"0\"]{display:flex;flex-direction:row}.ax.ax-menu.ax-menu-vertical:not([data-level=\"0\"]){display:flex;transition:opacity .3s;min-width:12em;box-shadow:0 1px 7px 0 var(--ax-border-color);background:#fff;flex-direction:column}.ax.ax-menu.ax-menu-vertical .ax-menu-item{display:flex;white-space:nowrap;cursor:pointer;padding:0 10px;font-weight:400;font-size:1rem;line-height:40px;text-decoration:none;align-items:center}.ax.ax-menu.ax-menu-vertical .ax-menu-item .icon:first-child{-webkit-margin-end:var(--ax-size-md);margin-inline-end:var(--ax-size-md)}.ax.ax-menu.ax-menu-vertical .ax-menu-item .icon:last-child{-webkit-margin-start:var(--ax-size-md);margin-inline-start:var(--ax-size-md)}.ax.ax-menu.ax-menu-vertical .ax-menu-item span{flex:1}.ax.ax-menu.ax-menu-vertical .ax-menu-item.disabled{color:var(--ax-gray-color)!important;background-color:var(--ax-gray-trans-light-color)!important;cursor:not-allowed!important}.ax.ax-menu.ax-menu-vertical .ax-menu-item.disabled .icon{color:var(--ax-gray-dark-color)!important}.ax.ax-menu.ax-menu-vertical .ax-menu-item.disabled:hover{background:var(--ax-light-light-color)!important;border-color:var(--ax-light-light-color)!important;color:var(--ax-gray-dark-color)!important;cursor:not-allowed!important}"]
3256
+ styles: [".ax.ax-menu{display:flex}.ax.ax-menu.ax-menu-vertical[data-level=\"0\"]{display:flex;flex-direction:row}.ax.ax-menu.ax-menu-vertical:not([data-level=\"0\"]){display:flex;transition:opacity .3s;min-width:12em;box-shadow:0 1px 7px 0 var(--ax-border-color);background:#fff;flex-direction:column}.ax.ax-menu.ax-menu-vertical .ax-menu-item{display:flex;white-space:nowrap;cursor:pointer;padding:0 10px;font-weight:400;font-size:1rem;line-height:40px;text-decoration:none;align-items:center}.ax.ax-menu.ax-menu-vertical .ax-menu-item .icon:first-child{-webkit-margin-end:var(--ax-size-md);margin-inline-end:var(--ax-size-md)}.ax.ax-menu.ax-menu-vertical .ax-menu-item .icon:last-child{-webkit-margin-start:var(--ax-size-md);margin-inline-start:var(--ax-size-md)}.ax.ax-menu.ax-menu-vertical .ax-menu-item span{flex:1}.ax.ax-menu.ax-menu-vertical .ax-menu-item.disabled{opacity:.6;cursor:not-allowed!important}.ax.ax-menu.ax-menu-vertical .ax-menu-item.disabled .icon{color:var(--ax-gray-dark-color)!important}.ax.ax-menu.ax-menu-vertical .ax-menu-item.disabled:hover{cursor:not-allowed!important}"]
3246
3257
  }),
3247
3258
  __metadata("design:paramtypes", [Overlay,
3248
3259
  ViewContainerRef,
@@ -5315,7 +5326,8 @@ var AXDropdownComponent = /** @class */ (function (_super) {
5315
5326
  var _this = this;
5316
5327
  if (!this.overlayRef) {
5317
5328
  var targetEl = document.querySelector('#' + this.uid);
5318
- var positionStrategy = this.overlay.position()
5329
+ var positionStrategy = this.overlay
5330
+ .position()
5319
5331
  .flexibleConnectedTo(targetEl)
5320
5332
  .withPositions([
5321
5333
  {
@@ -5367,6 +5379,10 @@ var AXDropdownComponent = /** @class */ (function (_super) {
5367
5379
  enumerable: true,
5368
5380
  configurable: true
5369
5381
  });
5382
+ AXDropdownComponent.prototype.updatePosition = function () {
5383
+ var _a;
5384
+ (_a = this.overlayRef) === null || _a === void 0 ? void 0 : _a.updatePosition();
5385
+ };
5370
5386
  AXDropdownComponent.prototype.focus = function () { };
5371
5387
  AXDropdownComponent.ctorParameters = function () { return [
5372
5388
  { type: ChangeDetectorRef },
@@ -5447,6 +5463,7 @@ var AXDatePickerComponent = /** @class */ (function (_super) {
5447
5463
  _this.ref = ref;
5448
5464
  _this.cdr = cdr;
5449
5465
  _this.dayStyle = [];
5466
+ _this.dayMinMaxResoan = '';
5450
5467
  // mmddyyyy: any = [/[0-1]/, /[0-9]/, '-', /[0-1]/, /[0-9]/, '-', /[0-9]/, /[0-9]/, /[0-9]/, /[0-9]/];
5451
5468
  _this.yyyyMMdd = [/[1-2]/, /[0-9]/, /[0-9]/, /[0-9]/, '-', /[0-1]/, /[0-9]/, '-', /[0-3]/, /[0-9]/];
5452
5469
  _this.ddMMyyyy = [/[0-3]/, /[0-9]/, '-', /[0-1]/, /[0-9]/, '-', /[1-9]/, /[0-9]/, /[0-9]/, /[0-9]/];
@@ -5505,7 +5522,8 @@ var AXDatePickerComponent = /** @class */ (function (_super) {
5505
5522
  this.value = new Date();
5506
5523
  };
5507
5524
  AXDatePickerComponent.prototype.focus = function () {
5508
- this.dropdown.focus();
5525
+ // this.dropdown.focus();
5526
+ this.input.focus();
5509
5527
  };
5510
5528
  AXDatePickerComponent.prototype.convertMaskToDate = function (text) {
5511
5529
  if (this.type == 'jalali') {
@@ -5539,6 +5557,7 @@ var AXDatePickerComponent = /** @class */ (function (_super) {
5539
5557
  return { year: y, monnth: m, day: d };
5540
5558
  };
5541
5559
  AXDatePickerComponent.prototype.textChange = function (e) {
5560
+ debugger;
5542
5561
  this.text = e.value;
5543
5562
  if (this.text && this.text.indexOf('_') === -1 && this.text.length == 10) {
5544
5563
  this.userChange = e.isUserChange;
@@ -5606,6 +5625,9 @@ var AXDatePickerComponent = /** @class */ (function (_super) {
5606
5625
  }, 100);
5607
5626
  }
5608
5627
  }
5628
+ else {
5629
+ this.text = '';
5630
+ }
5609
5631
  this.userChange = false;
5610
5632
  },
5611
5633
  enumerable: true,
@@ -6101,6 +6123,10 @@ var AXDatePickerComponent = /** @class */ (function (_super) {
6101
6123
  Input(),
6102
6124
  __metadata("design:type", Object)
6103
6125
  ], AXDatePickerComponent.prototype, "dayStyle", void 0);
6126
+ __decorate([
6127
+ Input(),
6128
+ __metadata("design:type", Object)
6129
+ ], AXDatePickerComponent.prototype, "dayMinMaxResoan", void 0);
6104
6130
  __decorate([
6105
6131
  ContentChild(AXValidation, { static: true }),
6106
6132
  __metadata("design:type", AXValidation)
@@ -6187,7 +6213,7 @@ var AXDatePickerComponent = /** @class */ (function (_super) {
6187
6213
  AXDatePickerComponent = AXDatePickerComponent_1 = __decorate([
6188
6214
  Component({
6189
6215
  selector: 'ax-date-picker',
6190
- template: "<ax-drop-down [readonly]=\"readonly\" [fitParent]=\"true\" [size]=\"size\" [showDropDownButton]=\"false\" icon=\"far fa-calendar-alt\" #dropdown maxHeight=\"unset\">\r\n <ng-container start>\r\n <ng-content select=\"[start]\">\r\n </ng-content>\r\n </ng-container>\r\n <ng-container header>\r\n <ax-text-box #input [textAlign]=\"textAlign\" [(value)]=\"text\" [readonly]=\"false\" [textMask]=\"dateType\" [disabled]=\"disabled\" [placeholder]=\"placeholder\" [size]=\"size\" (onkey)=\"handleKeyPress($event)\" (onFocus)=\"handleInputFocus()\" (click)=\"handleClick()\"\r\n (onBlur)=\"handleInputBlur()\" (onValueChanged)=\"textChange($event)\"></ax-text-box>\r\n </ng-container>\r\n <ng-container panel>\r\n <ax-calendar-box *ngIf=\"_renderPicker\" [showTodayButton]=\"showTodayButton\" [selectableHoliday]=\"selectableHoliday\" [min]=\"min\" [max]=\"max\" [size]=\"size\" (onClick)=\"onClick($event)\" (onValueChanged)=\"onDateChange($event)\" [type]=\"type\" [(value)]=\"value\"\r\n [dayStyle]=\"dayStyle\">\r\n </ax-calendar-box>\r\n </ng-container>\r\n <ng-container end>\r\n <ax-button end *ngIf=\"allowClear && value\" [disabled]=\"disabled\" icon=\"far fa-times icon\" type=\"blank danger\" (click)=\"clear()\" [size]=\"size\" [tabIndex]=\"-1\">\r\n </ax-button>\r\n <ax-button end icon=\"far fa-calendar-alt icon\" type=\"light blank\" (click)=\"handleButtonClick()\" [disabled]=\"disabled\" [size]=\"size\" [tabIndex]=\"-1\"></ax-button>\r\n <ng-content select=\"[end]\">\r\n </ng-content>\r\n </ng-container>\r\n\r\n</ax-drop-down>",
6216
+ template: "<ax-drop-down [readonly]=\"readonly\" [fitParent]=\"true\" [size]=\"size\" [showDropDownButton]=\"false\"\r\n icon=\"far fa-calendar-alt\" #dropdown maxHeight=\"unset\">\r\n <ng-container start>\r\n <ng-content select=\"[start]\">\r\n </ng-content>\r\n </ng-container>\r\n <ng-container header>\r\n <ax-text-box #input [textAlign]=\"textAlign\" [(value)]=\"text\" [readonly]=\"false\" [textMask]=\"dateType\"\r\n [disabled]=\"disabled\" [placeholder]=\"placeholder\" [size]=\"size\" (onkey)=\"handleKeyPress($event)\"\r\n (onFocus)=\"handleInputFocus()\" (click)=\"handleClick()\" (onBlur)=\"handleInputBlur()\"\r\n (onValueChanged)=\"textChange($event)\"></ax-text-box>\r\n </ng-container>\r\n <ng-container panel>\r\n <ax-calendar-box *ngIf=\"_renderPicker\" [showTodayButton]=\"showTodayButton\"\r\n [selectableHoliday]=\"selectableHoliday\" [min]=\"min\" [max]=\"max\" [size]=\"size\" (onClick)=\"onClick($event)\"\r\n (onValueChanged)=\"onDateChange($event)\" [type]=\"type\" [(value)]=\"value\" [dayStyle]=\"dayStyle\"\r\n [dayMinMaxResoan]=\"dayMinMaxResoan\">\r\n </ax-calendar-box>\r\n </ng-container>\r\n <ng-container end>\r\n <ax-button end *ngIf=\"allowClear && value\" [disabled]=\"disabled\" icon=\"far fa-times icon\" type=\"blank danger\"\r\n (click)=\"clear()\" [size]=\"size\" [tabIndex]=\"-1\">\r\n </ax-button>\r\n <ax-button end icon=\"far fa-calendar-alt icon\" type=\"light blank\" (click)=\"handleButtonClick()\"\r\n [disabled]=\"disabled\" [size]=\"size\" [tabIndex]=\"-1\"></ax-button>\r\n <ng-content select=\"[end]\">\r\n </ng-content>\r\n </ng-container>\r\n\r\n</ax-drop-down>",
6191
6217
  encapsulation: ViewEncapsulation.None,
6192
6218
  providers: [{ provide: AXValidatableComponent, useExisting: AXDatePickerComponent_1 }],
6193
6219
  host: { style: 'width: 100%' },
@@ -8426,6 +8452,7 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
8426
8452
  _this.allowSearch = true;
8427
8453
  _this.textField = 'text';
8428
8454
  _this.valueField = 'value';
8455
+ _this.disabledField = 'disabled';
8429
8456
  _this.mode = 'single';
8430
8457
  _this.itemRemove = false;
8431
8458
  _this.itemsChange = new EventEmitter();
@@ -8597,6 +8624,17 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
8597
8624
  }
8598
8625
  }
8599
8626
  };
8627
+ AXSelectBoxComponent.prototype.isItemDisabled = function (item) {
8628
+ if (item[this.disabledField] == true) {
8629
+ return true;
8630
+ }
8631
+ else if (this.disabledCallback) {
8632
+ return this.disabledCallback({ item: item, index: -1 });
8633
+ }
8634
+ else {
8635
+ return false;
8636
+ }
8637
+ };
8600
8638
  AXSelectBoxComponent.prototype.onButtonClick = function (e) {
8601
8639
  console.log('onButtonClick', e);
8602
8640
  };
@@ -8644,6 +8682,7 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
8644
8682
  Object.defineProperty(AXSelectBoxComponent.prototype, "selectedValues", {
8645
8683
  get: function () {
8646
8684
  var _this = this;
8685
+ debugger;
8647
8686
  if (this.mode === 'single') {
8648
8687
  return this._selectedItems.map(function (c) { return c[_this.valueField]; })[0];
8649
8688
  }
@@ -8730,6 +8769,8 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
8730
8769
  }
8731
8770
  };
8732
8771
  AXSelectBoxComponent.prototype.emitSelectionChangedEvent = function () {
8772
+ debugger;
8773
+ this.selectedValuesChange.emit(this.selectedValues);
8733
8774
  this.selectionChanged.emit(new AXSelectBoxSelectionChangedEvent(this, this.selectedItems, this.selectedValues));
8734
8775
  };
8735
8776
  AXSelectBoxComponent.prototype.ngAfterViewInit = function () {
@@ -8847,6 +8888,7 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
8847
8888
  }
8848
8889
  this.cdr.markForCheck();
8849
8890
  this.cdr.detectChanges();
8891
+ this.dropdown.updatePosition();
8850
8892
  };
8851
8893
  // private params: AXDataSourceReadParams = {};
8852
8894
  AXSelectBoxComponent.prototype.fetch = function (params) {
@@ -8905,37 +8947,39 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
8905
8947
  };
8906
8948
  AXSelectBoxComponent.prototype.handleItemClick = function (e, item) {
8907
8949
  var _this = this;
8908
- var value = item[this.valueField];
8909
- if (this.mode === 'single') {
8910
- // this.selectedValues = value;
8911
- this.setSelectedValues(value, true);
8912
- }
8913
- else {
8914
- var exists = this.selectedValues.slice(0);
8915
- if (exists.includes(value)) {
8916
- if (this.allowNull == true || (this.allowNull == false && this.selectedItems.length > 1)) {
8917
- this.handleItemRemoveClick(item);
8918
- }
8950
+ if (this.isItemDisabled(item) == false) {
8951
+ var value = item[this.valueField];
8952
+ if (this.mode === 'single') {
8953
+ // this.selectedValues = value;
8954
+ this.setSelectedValues(value, true);
8919
8955
  }
8920
8956
  else {
8921
- exists.push(value);
8922
- // this.selectedValues = exists;
8923
- this.setSelectedValues(exists, true);
8957
+ var exists = this.selectedValues.slice(0);
8958
+ if (exists.includes(value)) {
8959
+ if (this.allowNull == true || (this.allowNull == false && this.selectedItems.length > 1)) {
8960
+ this.handleItemRemoveClick(item);
8961
+ }
8962
+ }
8963
+ else {
8964
+ exists.push(value);
8965
+ // this.selectedValues = exists;
8966
+ this.setSelectedValues(exists, true);
8967
+ }
8924
8968
  }
8925
- }
8926
- if (this.mode == 'single') {
8927
- this.text = '';
8928
- this.dropdown.close();
8929
- this.cdr.markForCheck();
8930
- }
8931
- // if (e.stopPropagation() == undefined) {
8932
- // e.stopPropagation();
8933
- // }
8934
- setTimeout(function () {
8935
- if (_this.serchBox) {
8936
- _this.serchBox.focus();
8969
+ if (this.mode == 'single') {
8970
+ this.text = '';
8971
+ this.dropdown.close();
8972
+ this.cdr.markForCheck();
8937
8973
  }
8938
- }, 0);
8974
+ // if (e.stopPropagation() == undefined) {
8975
+ // e.stopPropagation();
8976
+ // }
8977
+ setTimeout(function () {
8978
+ if (_this.serchBox) {
8979
+ _this.serchBox.focus();
8980
+ }
8981
+ }, 0);
8982
+ }
8939
8983
  e.stopPropagation();
8940
8984
  };
8941
8985
  AXSelectBoxComponent.prototype.handleKeyEventSearch = function (e) {
@@ -9104,6 +9148,7 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
9104
9148
  if (e.key === 'Backspace' &&
9105
9149
  e.type === 'keydown' &&
9106
9150
  ((this.allowNull === true && this.selectedItems.length > 0) || (this.allowNull === false && this.selectedItems.length > 1))) {
9151
+ debugger;
9107
9152
  this.selectedItems.pop();
9108
9153
  this.emitSelectionChangedEvent();
9109
9154
  }
@@ -9365,6 +9410,10 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
9365
9410
  ViewChild('d', { static: true }),
9366
9411
  __metadata("design:type", AXDropdownComponent)
9367
9412
  ], AXSelectBoxComponent.prototype, "dropdown", void 0);
9413
+ __decorate([
9414
+ Input(),
9415
+ __metadata("design:type", Function)
9416
+ ], AXSelectBoxComponent.prototype, "disabledCallback", void 0);
9368
9417
  __decorate([
9369
9418
  Input(),
9370
9419
  __metadata("design:type", Boolean)
@@ -9377,6 +9426,10 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
9377
9426
  Input(),
9378
9427
  __metadata("design:type", String)
9379
9428
  ], AXSelectBoxComponent.prototype, "valueField", void 0);
9429
+ __decorate([
9430
+ Input(),
9431
+ __metadata("design:type", String)
9432
+ ], AXSelectBoxComponent.prototype, "disabledField", void 0);
9380
9433
  __decorate([
9381
9434
  Input(),
9382
9435
  __metadata("design:type", String)
@@ -9423,7 +9476,7 @@ var AXSelectBoxComponent = /** @class */ (function (_super) {
9423
9476
  AXSelectBoxComponent = AXSelectBoxComponent_1 = __decorate([
9424
9477
  Component({
9425
9478
  selector: 'ax-select-box',
9426
- template: "<ax-drop-down [size]=\"size\" [rtl]=\"rtl\" [showDropDownButton]=\"showDropDownButton\" [disabled]=\"disabled\"\r\n [readonly]=\"readonly\" #d (dropdownToggle)=\"dropdownToggleSelecBox($event)\">\r\n <ng-container start>\r\n <ng-content select=\"[start]\">\r\n </ng-content>\r\n </ng-container>\r\n <ng-container header>\r\n <div class=\"ax chips-container\" [horizontalScroll]=\"40\">\r\n <div class=\"chips\" [class.chips-blank]=\"mode === 'single'\" [title]=\"item[textField]\"\r\n *ngFor=\"let item of selectedItems\">\r\n <span class=\"chips-text\">\r\n {{item[textField]}}\r\n </span>\r\n <span class=\"close-icon\" (click)=\"handleItemRemoveClick(item)\"\r\n *ngIf=\"(readonly!=true || itemRemove ==true)&& disabled!=true && (allowNull==true || (selectedItems.length > 1))\">\r\n <i class=\"far fa-times-circle close\"></i>\r\n </span>\r\n </div>\r\n <div class=\"search-wrapper\" (click)=\"onTextBoxClick($event)\">\r\n <ax-text-box #textBoxSelectBox [textAlign]=\"textAlign\"\r\n [placeholder]=\"selectedItems.length == 0 ? placeholder : ''\" [readonly]=\"readonly\"\r\n [disabled]=\"disabled\" (onkey)=\"handleKeyEvent($event)\" [size]=\"size\"\r\n (onFocus)=\"onFocusTextBox($event)\">\r\n </ax-text-box>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container end>\r\n <ng-content select=\"[end]\">\r\n </ng-content>\r\n </ng-container>\r\n\r\n <ng-container panel>\r\n <div *ngIf=\"allowSearch\" class=\"search-wrapper\" style=\"padding: 0.7em;\">\r\n <ax-search-box #serchBox [(value)]=\"text\" (onkey)=\"handleKeyEventSearch($event)\"\r\n (textChanged)=\"textChanged($event)\" (onButtonClick)=\"textChanged($event)\">\r\n </ax-search-box>\r\n </div>\r\n <div class=\"ax list-container\">\r\n <div #listContainer style=\"max-height: 300px;overflow-y: auto;width: 100%;\" (scroll)=\"scrolled($event)\">\r\n <ng-container *ngIf=\"getItems().length>0; then thenTemplate; else elseTemplate\"></ng-container>\r\n <ng-template #thenTemplate>\r\n <div class=\"list-item\" *ngFor=\"let item of getItems();let i = index\"\r\n [class.focused]=\"i==currentfocusedIndex\" [class.selected]=\"isItemSelected(item)\"\r\n (click)=\"handleItemClick($event,item)\">\r\n <div style=\"display: flex;\">\r\n <ax-check-box *ngIf=\"showCheckBox\" [size]=\"size\" [value]=\"isItemSelected(item)\"\r\n [disabled]=\"!allowNull && selectedItems.length === 1 && isItemSelected(item)\"\r\n (onClick)=\"handleItemClick($event,item)\">\r\n </ax-check-box>\r\n <ng-container *ngIf=\"rowTemplate; else elseTemplate\">\r\n <div style=\"white-space: nowrap;text-overflow: ellipsis;overflow: hidden;\"\r\n [title]=\"item[textField]\"\r\n [ngStyle]=\"(showCheckBox) ? {'padding-inline-start': '0.5rem'}:''\">\r\n <ng-container *ngTemplateOutlet=\"rowTemplate; context:{ $implicit: item }\">\r\n </ng-container>\r\n </div>\r\n\r\n </ng-container>\r\n <ng-template #elseTemplate>\r\n <div style=\"white-space: nowrap;text-overflow: ellipsis;overflow: hidden;\"\r\n [title]=\"item[textField]\"\r\n [ngStyle]=\"(showCheckBox) ? {'padding-inline-start': '0.5rem'}:''\">\r\n {{ item[textField] }}\r\n </div>\r\n </ng-template>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </ng-template>\r\n <div *ngIf=\"showLoading\" class=\"ax-pad-sm\" style=\"text-align: center;\">\r\n <i class=\"far fa-spinner-third fa-pulse fa-2x\" style=\"color: var(--ax-primary-color);\"></i>\r\n\r\n </div>\r\n <!-- <ax-loading-indicator ></ax-loading-indicator> -->\r\n <ng-template #elseTemplate>\r\n <ng-container *ngIf=\"showLoading == true; then searchTemplate else noDataTemplate\"></ng-container>\r\n <ng-template #searchTemplate>\r\n <div class=\"list-item\">\r\n {{'common.searching' | trans}}\r\n </div>\r\n </ng-template>\r\n <ng-template #noDataTemplate>\r\n <div class=\"list-item\">\r\n {{'common.noDataFound' | trans}}\r\n </div>\r\n </ng-template>\r\n\r\n </ng-template>\r\n\r\n </div>\r\n\r\n </div>\r\n </ng-container>\r\n\r\n</ax-drop-down>",
9479
+ template: "<ax-drop-down [size]=\"size\" [rtl]=\"rtl\" [showDropDownButton]=\"showDropDownButton\" [disabled]=\"disabled\"\r\n [readonly]=\"readonly\" #d (dropdownToggle)=\"dropdownToggleSelecBox($event)\">\r\n <ng-container start>\r\n <ng-content select=\"[start]\">\r\n </ng-content>\r\n </ng-container>\r\n <ng-container header>\r\n <div class=\"ax chips-container\" [horizontalScroll]=\"40\">\r\n <div class=\"chips\" [class.chips-blank]=\"mode === 'single'\" [title]=\"item[textField]\"\r\n *ngFor=\"let item of selectedItems\">\r\n <span class=\"chips-text\">\r\n {{item[textField]}}\r\n </span>\r\n <span class=\"close-icon\" (click)=\"handleItemRemoveClick(item)\"\r\n *ngIf=\"(readonly!=true || itemRemove ==true)&& disabled!=true && (allowNull==true || (selectedItems.length > 1))\">\r\n <i class=\"far fa-times-circle close\"></i>\r\n </span>\r\n </div>\r\n <div class=\"search-wrapper\" (click)=\"onTextBoxClick($event)\">\r\n <ax-text-box #textBoxSelectBox [textAlign]=\"textAlign\"\r\n [placeholder]=\"selectedItems.length == 0 ? placeholder : ''\" [readonly]=\"readonly\"\r\n [disabled]=\"disabled\" (onkey)=\"handleKeyEvent($event)\" [size]=\"size\"\r\n (onFocus)=\"onFocusTextBox($event)\">\r\n </ax-text-box>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container end>\r\n <ng-content select=\"[end]\">\r\n </ng-content>\r\n </ng-container>\r\n\r\n <ng-container panel>\r\n <div *ngIf=\"allowSearch\" class=\"search-wrapper\" style=\"padding: 0.7em;\">\r\n <ax-search-box #serchBox [(value)]=\"text\" (onkey)=\"handleKeyEventSearch($event)\"\r\n (textChanged)=\"textChanged($event)\" (onButtonClick)=\"textChanged($event)\">\r\n </ax-search-box>\r\n </div>\r\n <div class=\"ax list-container\">\r\n <div #listContainer style=\"max-height: 300px;overflow-y: auto;width: 100%;\" (scroll)=\"scrolled($event)\">\r\n <ng-container *ngIf=\"getItems().length>0; then thenTemplate; else elseTemplate\"></ng-container>\r\n <ng-template #thenTemplate>\r\n <div [class.ax-state-disabled]=\"isItemDisabled(item)\" class=\"list-item\"\r\n *ngFor=\"let item of getItems();let i = index\" [class.focused]=\"i==currentfocusedIndex\"\r\n [class.selected]=\"isItemSelected(item)\" (click)=\"handleItemClick($event,item)\">\r\n <div style=\"display: flex;\">\r\n <ax-check-box *ngIf=\"showCheckBox\" [size]=\"size\" [value]=\"isItemSelected(item)\"\r\n [disabled]=\"(!allowNull && selectedItems.length === 1 && isItemSelected(item)) || isItemDisabled(item)\"\r\n (onClick)=\"handleItemClick($event,item)\">\r\n </ax-check-box>\r\n <ng-container *ngIf=\"rowTemplate; else elseTemplate\">\r\n <div style=\"white-space: nowrap;text-overflow: ellipsis;overflow: hidden;\"\r\n [title]=\"item[textField]\"\r\n [ngStyle]=\"(showCheckBox) ? {'padding-inline-start': '0.5rem'}:''\">\r\n <ng-container *ngTemplateOutlet=\"rowTemplate; context:{ $implicit: item }\">\r\n </ng-container>\r\n </div>\r\n\r\n </ng-container>\r\n <ng-template #elseTemplate>\r\n <div style=\"white-space: nowrap;text-overflow: ellipsis;overflow: hidden;\"\r\n [title]=\"item[textField]\"\r\n [ngStyle]=\"(showCheckBox) ? {'padding-inline-start': '0.5rem'}:''\">\r\n {{ item[textField] }}\r\n </div>\r\n </ng-template>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </ng-template>\r\n <div *ngIf=\"showLoading\" class=\"ax-pad-sm\" style=\"text-align: center;\">\r\n <i class=\"far fa-spinner-third fa-pulse fa-2x\" style=\"color: var(--ax-primary-color);\"></i>\r\n\r\n </div>\r\n <!-- <ax-loading-indicator ></ax-loading-indicator> -->\r\n <ng-template #elseTemplate>\r\n <ng-container *ngIf=\"showLoading == true; then searchTemplate else noDataTemplate\"></ng-container>\r\n <ng-template #searchTemplate>\r\n <div class=\"list-item\">\r\n {{'common.searching' | trans}}\r\n </div>\r\n </ng-template>\r\n <ng-template #noDataTemplate>\r\n <div class=\"list-item\">\r\n {{'common.noDataFound' | trans}}\r\n </div>\r\n </ng-template>\r\n\r\n </ng-template>\r\n\r\n </div>\r\n\r\n </div>\r\n </ng-container>\r\n\r\n</ax-drop-down>",
9427
9480
  encapsulation: ViewEncapsulation.None,
9428
9481
  changeDetection: ChangeDetectionStrategy.OnPush,
9429
9482
  host: { style: 'width: 100%' },
@@ -9474,6 +9527,10 @@ var AXQueryBuilderRuleComponent = /** @class */ (function () {
9474
9527
  value: 'not-contains',
9475
9528
  text: AXTranslator.get('queryBuilder.not-contains')
9476
9529
  },
9530
+ {
9531
+ value: 'contains-all',
9532
+ text: AXTranslator.get('queryBuilder.contains-all')
9533
+ },
9477
9534
  {
9478
9535
  value: 'null',
9479
9536
  text: AXTranslator.get('queryBuilder.null')
@@ -10033,7 +10090,6 @@ var AXQueryBuilderService = /** @class */ (function () {
10033
10090
  return __generator(this, function (_d) {
10034
10091
  switch (_d.label) {
10035
10092
  case 0:
10036
- ;
10037
10093
  if (group.items.length > 0) {
10038
10094
  query = ' ( ';
10039
10095
  }
@@ -10091,8 +10147,10 @@ var AXQueryBuilderService = /** @class */ (function () {
10091
10147
  case 'end-with':
10092
10148
  codeOperator = item.operator;
10093
10149
  break;
10150
+ default:
10151
+ codeOperator = item.operator;
10152
+ break;
10094
10153
  }
10095
- ;
10096
10154
  query = query + ' ' + item.caption + ' ' + codeOperator + ' ' + item.text;
10097
10155
  _d.label = 6;
10098
10156
  case 6:
@@ -10135,7 +10193,6 @@ var AXQueryBuilderService = /** @class */ (function () {
10135
10193
  var query = '';
10136
10194
  switch (type) {
10137
10195
  case 'simple':
10138
- ;
10139
10196
  if (group.items.length > 0) {
10140
10197
  query = ' ( ';
10141
10198
  }