@firestitch/filter 12.2.1 → 12.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/interfaces/items/autocomplete-chips.interface.d.ts +2 -1
- package/app/interfaces/items/autocomplete.interface.d.ts +2 -1
- package/app/interfaces/items/base.interface.d.ts +9 -3
- package/app/interfaces/items/checkbox.interface.d.ts +1 -0
- package/app/interfaces/items/chips.interface.d.ts +2 -1
- package/app/interfaces/items/date.interface.d.ts +1 -0
- package/app/interfaces/items/select.interface.d.ts +1 -0
- package/app/interfaces/items/text.interface.d.ts +1 -0
- package/app/models/items/base-item.d.ts +4 -3
- package/app/services/external-params/persistance-params-controller.service.d.ts +0 -1
- package/app/services/items-store.service.d.ts +1 -2
- package/bundles/firestitch-filter.umd.js +8 -9
- package/bundles/firestitch-filter.umd.js.map +1 -1
- package/esm2015/app/interfaces/items/autocomplete-chips.interface.js +1 -1
- package/esm2015/app/interfaces/items/autocomplete.interface.js +1 -1
- package/esm2015/app/interfaces/items/base.interface.js +1 -1
- package/esm2015/app/interfaces/items/checkbox.interface.js +1 -1
- package/esm2015/app/interfaces/items/chips.interface.js +1 -1
- package/esm2015/app/interfaces/items/date.interface.js +1 -1
- package/esm2015/app/interfaces/items/select.interface.js +1 -1
- package/esm2015/app/interfaces/items/text.interface.js +1 -1
- package/esm2015/app/models/items/base-item.js +1 -1
- package/esm2015/app/models/items/select/multiple-select-item.js +6 -3
- package/esm2015/app/services/external-params/persistance-params-controller.service.js +4 -4
- package/esm2015/app/services/external-params-controller.service.js +2 -2
- package/esm2015/app/services/items-store.service.js +1 -1
- package/fesm2015/firestitch-filter.js +9 -6
- package/fesm2015/firestitch-filter.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IFilterConfigBaseItem } from './base.interface';
|
|
1
|
+
import { FilterNameValue, IFilterConfigBaseItem, IFilterDefaultFn } from './base.interface';
|
|
2
2
|
import { ItemType } from '../../enums/item-type.enum';
|
|
3
3
|
export interface IFilterConfigAutocompleteChipsItem extends IFilterConfigBaseItem<ItemType.AutoCompleteChips> {
|
|
4
4
|
fetchOnFocus?: boolean;
|
|
@@ -8,4 +8,5 @@ export interface IFilterConfigAutocompleteChipsItem extends IFilterConfigBaseIte
|
|
|
8
8
|
chipBackground?: string;
|
|
9
9
|
chipIcon?: string;
|
|
10
10
|
chipClass?: string;
|
|
11
|
+
default?: IFilterDefaultFn<FilterNameValue[]> | FilterNameValue[];
|
|
11
12
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { IFilterConfigBaseItem } from './base.interface';
|
|
1
|
+
import { FilterNameValue, IFilterConfigBaseItem, IFilterDefaultFn } from './base.interface';
|
|
2
2
|
import { ItemType } from '../../enums/item-type.enum';
|
|
3
3
|
export interface IFilterConfigAutocompleteItem extends IFilterConfigBaseItem<ItemType.AutoComplete> {
|
|
4
4
|
fetchOnFocus?: boolean;
|
|
5
|
+
default?: IFilterDefaultFn<FilterNameValue> | FilterNameValue;
|
|
5
6
|
}
|
|
@@ -3,8 +3,13 @@ import { ItemType } from '../../enums/item-type.enum';
|
|
|
3
3
|
import { BaseItem } from '../../models/items/base-item';
|
|
4
4
|
export declare type FilterConfigDateType = ItemType.Date | ItemType.DateTime | ItemType.DateRange | ItemType.DateTimeRange;
|
|
5
5
|
export declare type FilterDateRangeType = ItemType.DateRange | ItemType.DateTimeRange;
|
|
6
|
-
export declare type IFilterDefaultFn = () => Observable<
|
|
7
|
-
export
|
|
6
|
+
export declare type IFilterDefaultFn<T extends unknown = unknown> = () => Observable<T>;
|
|
7
|
+
export declare type FilterNameValue = {
|
|
8
|
+
name: string;
|
|
9
|
+
value: unknown;
|
|
10
|
+
};
|
|
11
|
+
declare type DefaultItemType = ItemType.Date | ItemType.DateTime | ItemType.Week | ItemType.Keyword;
|
|
12
|
+
export interface IFilterConfigBaseItem<T = DefaultItemType, U = string> {
|
|
8
13
|
name: string;
|
|
9
14
|
type: T;
|
|
10
15
|
label: string | string[];
|
|
@@ -13,9 +18,10 @@ export interface IFilterConfigBaseItem<T = ItemType, U = string> {
|
|
|
13
18
|
disable?: boolean;
|
|
14
19
|
values?: any;
|
|
15
20
|
primary?: boolean;
|
|
16
|
-
default?:
|
|
21
|
+
default?: unknown;
|
|
17
22
|
change?: (item: BaseItem<any>) => void;
|
|
18
23
|
clear?: boolean;
|
|
19
24
|
disablePersist?: boolean;
|
|
20
25
|
disableQueryParams?: boolean;
|
|
21
26
|
}
|
|
27
|
+
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ItemType } from '../../enums/item-type.enum';
|
|
2
2
|
import { IFilterConfigBaseItem } from './base.interface';
|
|
3
3
|
export interface IFilterConfigCheckboxItem extends IFilterConfigBaseItem<ItemType.Checkbox> {
|
|
4
|
+
default?: boolean;
|
|
4
5
|
checked?: unknown;
|
|
5
6
|
unchecked?: unknown;
|
|
6
7
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ItemType } from '../../enums/item-type.enum';
|
|
2
|
-
import { IFilterConfigBaseItem } from './base.interface';
|
|
2
|
+
import { FilterNameValue, IFilterConfigBaseItem, IFilterDefaultFn } from './base.interface';
|
|
3
3
|
export interface IFilterConfigChipsItem extends IFilterConfigBaseItem<ItemType.Chips> {
|
|
4
4
|
multiple?: boolean;
|
|
5
|
+
default?: IFilterDefaultFn<FilterNameValue[]> | FilterNameValue[];
|
|
5
6
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ItemType } from '../../enums/item-type.enum';
|
|
2
2
|
import { IFilterConfigBaseItem } from './base.interface';
|
|
3
3
|
export interface IFilterConfigTextItem extends IFilterConfigBaseItem<ItemType.Text | ItemType.Keyword>, IFilterItemWithPrefixSuffix {
|
|
4
|
+
default?: string;
|
|
4
5
|
}
|
|
5
6
|
export interface IFilterItemWithPrefixSuffix {
|
|
6
7
|
prefix?: string;
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { BehaviorSubject, Observable, Subject } from 'rxjs';
|
|
2
|
-
import {
|
|
2
|
+
import { IFilterDefaultFn } from '../../interfaces/items/base.interface';
|
|
3
3
|
import { IFilterItemDefaultRange } from '../../interfaces/items/range.interface';
|
|
4
|
-
|
|
4
|
+
import { IFilterConfigItem } from '../../interfaces/config.interface';
|
|
5
|
+
export declare abstract class BaseItem<T extends IFilterConfigItem> {
|
|
5
6
|
protected _additionalConfig: unknown;
|
|
6
7
|
name: string;
|
|
7
8
|
label: string | string[];
|
|
8
9
|
chipLabel: string | string[];
|
|
9
10
|
hide: boolean;
|
|
10
11
|
defaultValue: any | IFilterItemDefaultRange;
|
|
11
|
-
defaultValueFn: IFilterDefaultFn
|
|
12
|
+
defaultValueFn: IFilterDefaultFn<unknown>;
|
|
12
13
|
persistedValue: unknown;
|
|
13
14
|
clearAllowed: boolean;
|
|
14
15
|
persistanceDisabled: boolean;
|
|
@@ -15,7 +15,6 @@ export declare class PersistanceParamsController extends FsPersistanceStore<FsFi
|
|
|
15
15
|
protected STORE_KEY: string;
|
|
16
16
|
protected _paramsCase: 'snake' | 'camel';
|
|
17
17
|
constructor(_store: FsStore, _route: ActivatedRoute, _location: Location, _itemsStore: FsFilterItemsStore, _dialogRef: MatDialogRef<unknown>, _drawerRef: DrawerRef<unknown>);
|
|
18
|
-
get enalbed(): boolean;
|
|
19
18
|
init(persistanceConfig: FsFilterPersistance, namespace: string, paramsCase: 'snake' | 'camel'): void;
|
|
20
19
|
restore(): void;
|
|
21
20
|
static ɵfac: i0.ɵɵFactoryDeclaration<PersistanceParamsController, [null, null, null, null, { optional: true; }, { optional: true; }]>;
|
|
@@ -5,7 +5,6 @@ import { BaseItem } from '../models/items/base-item';
|
|
|
5
5
|
import { ISortingChangeEvent } from '../interfaces/filter.interface';
|
|
6
6
|
import { TextItem } from '../models/items/text-item';
|
|
7
7
|
import { IFilterExternalParams } from '../interfaces/external-params.interface';
|
|
8
|
-
import { IFilterConfigBaseItem } from '../interfaces/items/base.interface';
|
|
9
8
|
import * as i0 from "@angular/core";
|
|
10
9
|
interface IValueAsQuery {
|
|
11
10
|
onlyPresented?: boolean;
|
|
@@ -35,7 +34,7 @@ export declare class FsFilterItemsStore implements OnDestroy {
|
|
|
35
34
|
get ready$(): Observable<boolean>;
|
|
36
35
|
ngOnDestroy(): void;
|
|
37
36
|
setConfig(config: any): void;
|
|
38
|
-
getItemByName(name: string): BaseItem<
|
|
37
|
+
getItemByName(name: string): BaseItem<IFilterConfigItem>;
|
|
39
38
|
initItems(items: IFilterConfigItem[]): void;
|
|
40
39
|
filtersClear(): void;
|
|
41
40
|
loadAsyncValues(): void;
|
|
@@ -847,11 +847,14 @@
|
|
|
847
847
|
};
|
|
848
848
|
MultipleSelectItem.prototype._validateModel = function () {
|
|
849
849
|
var _this = this;
|
|
850
|
-
|
|
850
|
+
var possibleValues = common.filter(this.model || [], function (item) {
|
|
851
851
|
return _this.values.find(function (value) {
|
|
852
852
|
return value.value == item;
|
|
853
853
|
});
|
|
854
854
|
});
|
|
855
|
+
if (!common.isArrayEqual(this.model, possibleValues)) {
|
|
856
|
+
this.model = possibleValues;
|
|
857
|
+
}
|
|
855
858
|
};
|
|
856
859
|
MultipleSelectItem.prototype._clearValue = function (defaultValue) {
|
|
857
860
|
if (defaultValue === void 0) { defaultValue = undefined; }
|
|
@@ -2471,13 +2474,6 @@
|
|
|
2471
2474
|
_this.STORE_KEY = FILTER_STORE_KEY;
|
|
2472
2475
|
return _this;
|
|
2473
2476
|
}
|
|
2474
|
-
Object.defineProperty(PersistanceParamsController.prototype, "enalbed", {
|
|
2475
|
-
get: function () {
|
|
2476
|
-
return this._enabled;
|
|
2477
|
-
},
|
|
2478
|
-
enumerable: false,
|
|
2479
|
-
configurable: true
|
|
2480
|
-
});
|
|
2481
2477
|
PersistanceParamsController.prototype.init = function (persistanceConfig, namespace, paramsCase) {
|
|
2482
2478
|
this._paramsCase = paramsCase;
|
|
2483
2479
|
namespace = namespace !== null && namespace !== void 0 ? namespace : common.getNormalizedPath(this._location);
|
|
@@ -2485,6 +2481,9 @@
|
|
|
2485
2481
|
this.setConfig(persistanceConfig, namespace, persistanceDisabled);
|
|
2486
2482
|
};
|
|
2487
2483
|
PersistanceParamsController.prototype.restore = function () {
|
|
2484
|
+
if (!this.enabled) {
|
|
2485
|
+
return;
|
|
2486
|
+
}
|
|
2488
2487
|
_super.prototype.restore.call(this);
|
|
2489
2488
|
var items = __spreadArray(__spreadArray([], __read(this._itemsStore.items)), [
|
|
2490
2489
|
this._itemsStore.sortByItem,
|
|
@@ -2811,7 +2810,7 @@
|
|
|
2811
2810
|
get: function () {
|
|
2812
2811
|
var _a;
|
|
2813
2812
|
var result = {};
|
|
2814
|
-
if (this._persistanceStore.
|
|
2813
|
+
if (this._persistanceStore.enabled) {
|
|
2815
2814
|
Object.assign(result, (_a = this._persistanceStore.value) === null || _a === void 0 ? void 0 : _a.data);
|
|
2816
2815
|
}
|
|
2817
2816
|
if (this._savedFilters.enabled && this._savedFilters.activeFilter) {
|