@recursyve/nice-data-filter-kit 14.3.2 → 14.3.3

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.
@@ -3021,7 +3021,7 @@ class NiceFilterViewService {
3021
3021
  this.store.setLoading(false);
3022
3022
  }
3023
3023
  }
3024
- setParameters(filterParameters, reload = false) {
3024
+ setParameters(filterParameters, reload) {
3025
3025
  this.store.setParameters(filterParameters);
3026
3026
  if (reload) {
3027
3027
  this.filter();
@@ -3032,7 +3032,7 @@ class NiceFilterViewService {
3032
3032
  this.setParameters({
3033
3033
  ...filterParameters,
3034
3034
  start: 0
3035
- }, false);
3035
+ });
3036
3036
  this.resetResult(true);
3037
3037
  }
3038
3038
  setQueryParams(queryParams) {
@@ -3046,7 +3046,7 @@ class NiceFilterViewService {
3046
3046
  this.filter();
3047
3047
  }
3048
3048
  }
3049
- setRules(rules, reload) {
3049
+ setRules(rules) {
3050
3050
  if (!Array.isArray(rules)) {
3051
3051
  rules = [rules];
3052
3052
  }
@@ -3057,9 +3057,9 @@ class NiceFilterViewService {
3057
3057
  length: filterParameters.length,
3058
3058
  rules
3059
3059
  };
3060
- this.setParameters(newRules, reload);
3060
+ this.setParameters(newRules);
3061
3061
  }
3062
- upsertRule(id, newRule, reload) {
3062
+ upsertRule(id, newRule) {
3063
3063
  const { filterParameters } = this.store.getValue();
3064
3064
  const currentQuery = filterParameters.rules?.[0];
3065
3065
  const rule = {
@@ -3068,7 +3068,7 @@ class NiceFilterViewService {
3068
3068
  };
3069
3069
  const query = { rules: [rule], condition: "and" };
3070
3070
  if (!currentQuery || currentQuery.rules.length === 0) {
3071
- this.setRules(query, reload);
3071
+ this.setRules(query);
3072
3072
  return;
3073
3073
  }
3074
3074
  const oldRule = currentQuery.rules.find((r) => r.id === id);
@@ -3092,9 +3092,9 @@ class NiceFilterViewService {
3092
3092
  this.setRules({
3093
3093
  condition: currentQuery.condition,
3094
3094
  rules: newRules
3095
- }, reload);
3095
+ });
3096
3096
  }
3097
- removeRule(id, reload) {
3097
+ removeRule(id) {
3098
3098
  const { filterParameters } = this.store.getValue();
3099
3099
  const currentQuery = filterParameters.rules?.[0];
3100
3100
  const oldRule = currentQuery.rules.find((r) => r.id === id);
@@ -3105,7 +3105,7 @@ class NiceFilterViewService {
3105
3105
  this.setRules({
3106
3106
  condition: currentQuery.condition,
3107
3107
  rules: newRules
3108
- }, reload);
3108
+ });
3109
3109
  }
3110
3110
  addValue(value, opts) {
3111
3111
  this.store.addValue(value, opts);
@@ -3369,7 +3369,7 @@ class NiceAdvancedFiltersButtonComponent {
3369
3369
  }
3370
3370
  onSelectedFilter(filter) {
3371
3371
  const rule = AdvancedFiltersUtils.createRule(filter);
3372
- this.service.setRules([{ condition: "and", rules: [rule] }], false);
3372
+ this.service.setRules([{ condition: "and", rules: [rule] }]);
3373
3373
  this.service.updateSubState("showAdvancedFilters", true);
3374
3374
  }
3375
3375
  }
@@ -3772,7 +3772,8 @@ class NiceAdvancedFiltersComponent {
3772
3772
  onClickDeleteRule(index) {
3773
3773
  this.rulesFormArray.removeAt(index);
3774
3774
  if (!this.rulesFormArray.length) {
3775
- this.service.setRules([], true);
3775
+ this.service.setRules([]);
3776
+ this.service.filter();
3776
3777
  this.onClose();
3777
3778
  }
3778
3779
  }
@@ -3780,7 +3781,9 @@ class NiceAdvancedFiltersComponent {
3780
3781
  this.service.updateSubState("showAdvancedFilters", false);
3781
3782
  }
3782
3783
  onRefresh() {
3783
- this.service.setRules(this.formGroup.getRawValue().transform(), true);
3784
+ this.service.setRules(this.formGroup.getRawValue().transform());
3785
+ this.service.resetResult(true);
3786
+ this.service.filter();
3784
3787
  }
3785
3788
  }
3786
3789
  NiceAdvancedFiltersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersComponent, deps: [{ token: ADVANCED_FILTER_ICONS, optional: true }, { token: i1$3.GeneratedFormGroup }, { token: NiceFilterViewQuery }, { token: NiceFilterViewService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
@@ -4078,12 +4081,16 @@ class NiceFilterInfiniteScrollDataViewComponent {
4078
4081
  this.data$ = this.query.selectAll();
4079
4082
  }
4080
4083
  async loadNextPage() {
4081
- const { filterParameters } = this.query.getValue();
4084
+ const { filterParameters, filterResult } = this.query.getValue();
4082
4085
  this.service.setMode("accumulated");
4083
- await this.service.setParameters({
4086
+ if (filterResult && filterResult.values.length >= filterResult.total) {
4087
+ return;
4088
+ }
4089
+ this.service.setParameters({
4084
4090
  ...filterParameters,
4085
4091
  start: filterParameters.start + filterParameters.length
4086
- }, true);
4092
+ });
4093
+ this.service.filter();
4087
4094
  }
4088
4095
  }
4089
4096
  NiceFilterInfiniteScrollDataViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceFilterInfiniteScrollDataViewComponent, deps: [{ token: NiceFilterViewQuery }, { token: NiceFilterViewService }], target: i0.ɵɵFactoryTarget.Component });
@@ -4117,7 +4124,8 @@ class NiceFilterSearchComponent {
4117
4124
  this.service.setParameters({
4118
4125
  ...filterParameters,
4119
4126
  search
4120
- }, true);
4127
+ });
4128
+ this.service.filter();
4121
4129
  }))
4122
4130
  .subscribe();
4123
4131
  }
@@ -4164,7 +4172,8 @@ class NiceFilterMatPaginatorPaginationDirective {
4164
4172
  ...filterParameters,
4165
4173
  start: page.pageIndex * page.pageSize,
4166
4174
  length: page.pageSize
4167
- }, true);
4175
+ });
4176
+ this.service.filter();
4168
4177
  });
4169
4178
  }
4170
4179
  ngOnDestroy() {
@@ -4205,7 +4214,7 @@ class NiceFilterMatSortSortingDirective {
4205
4214
  this.service.setParameters({
4206
4215
  ...values,
4207
4216
  order: {}
4208
- }, true);
4217
+ });
4209
4218
  }
4210
4219
  else {
4211
4220
  this.service.setParameters({
@@ -4214,8 +4223,9 @@ class NiceFilterMatSortSortingDirective {
4214
4223
  column: sort.active,
4215
4224
  direction: sort.direction
4216
4225
  }
4217
- }, true);
4226
+ });
4218
4227
  }
4228
+ this.service.filter();
4219
4229
  });
4220
4230
  }
4221
4231
  ngOnDestroy() {
@@ -4304,7 +4314,7 @@ class NiceFilterQueryParamsDirective {
4304
4314
  const { filterParameters, filterResult } = this.query.getValue();
4305
4315
  if (FilterUtils.filterChangeNeedsRefresh(filterParameters, params) ||
4306
4316
  !filterResult) {
4307
- this.service.setParameters(params, false);
4317
+ this.service.setParameters(params);
4308
4318
  }
4309
4319
  if (!this._initialized) {
4310
4320
  this._initialized = true;
@@ -4394,21 +4404,30 @@ class NiceBaseFilterViewComponent {
4394
4404
  * Reset all rules with a new set of rules.
4395
4405
  */
4396
4406
  setRules(rules, reload = true) {
4397
- this.filterViewService.setRules(rules, reload);
4407
+ this.filterViewService.setRules(rules);
4408
+ if (reload) {
4409
+ this.filterViewService.filter();
4410
+ }
4398
4411
  }
4399
4412
  /**
4400
4413
  * Add or update a rule.
4401
4414
  * NOTE: This will only check for rules in the first element of the rules array in the current filterParameters.
4402
4415
  */
4403
4416
  upsertRule(id, newRule, reload = true) {
4404
- this.filterViewService.upsertRule(id, newRule, reload);
4417
+ this.filterViewService.upsertRule(id, newRule);
4418
+ if (reload) {
4419
+ this.filterViewService.filter();
4420
+ }
4405
4421
  }
4406
4422
  /**
4407
4423
  * Remove a rule.
4408
4424
  * NOTE: This will only check for rules in the first element of the rules array in the current filterParameters.
4409
4425
  */
4410
4426
  removeRule(id, reload = true) {
4411
- this.filterViewService.removeRule(id, reload);
4427
+ this.filterViewService.removeRule(id);
4428
+ if (reload) {
4429
+ this.filterViewService.filter();
4430
+ }
4412
4431
  }
4413
4432
  autoLoad(autoLoad) {
4414
4433
  const { autoLoad: defaultAutoLoad } = this.filterViewQuery.getValue();