@kris701/ez-ui 0.0.10 → 1.0.0

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.
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
- import { OnChanges, EventEmitter, SimpleChanges, ElementRef } from '@angular/core';
3
- import { TuiDay } from '@taiga-ui/cdk/date-time';
2
+ import { OnChanges, EventEmitter, SimpleChanges, ElementRef, TemplateRef } from '@angular/core';
3
+ import { TuiDay, TuiTime } from '@taiga-ui/cdk/date-time';
4
4
  import { HttpClient } from '@angular/common/http';
5
5
  import { TuiResponsiveDialogService } from '@taiga-ui/addon-mobile';
6
6
  import { TuiNotificationService } from '@taiga-ui/core';
@@ -22,6 +22,15 @@ declare class EzUIDateInput implements OnChanges {
22
22
  static ɵcmp: i0.ɵɵComponentDeclaration<EzUIDateInput, "ezui-dateinput", never, { "icon": { "alias": "icon"; "required": false; }; "label": { "alias": "label"; "required": false; }; "size": { "alias": "size"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
23
23
  }
24
24
 
25
+ declare class EzUIFileInput {
26
+ files: i0.WritableSignal<File[]>;
27
+ clear(): void;
28
+ protected onChange(files: File[] | File): void;
29
+ removeFile(file: File): void;
30
+ static ɵfac: i0.ɵɵFactoryDeclaration<EzUIFileInput, never>;
31
+ static ɵcmp: i0.ɵɵComponentDeclaration<EzUIFileInput, "ezui-fileinput", never, {}, {}, never, never, true, never>;
32
+ }
33
+
25
34
  interface MenuBarItem {
26
35
  label: string | null;
27
36
  icon: string | null;
@@ -98,6 +107,174 @@ declare class EzUIPasswordInput implements OnChanges {
98
107
  static ɵcmp: i0.ɵɵComponentDeclaration<EzUIPasswordInput, "ezui-passwordinput", never, { "icon": { "alias": "icon"; "required": false; }; "label": { "alias": "label"; "required": false; }; "size": { "alias": "size"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
99
108
  }
100
109
 
110
+ interface EzUITableFilter {
111
+ column: string;
112
+ value: any;
113
+ expression: string;
114
+ }
115
+
116
+ interface EzUITableSort {
117
+ column: string;
118
+ state: 'asc' | 'desc' | 'none';
119
+ }
120
+
121
+ interface EzUITableSortFilterPreset {
122
+ id: string;
123
+ name: string;
124
+ sorts: EzUITableSort[];
125
+ filters: EzUITableFilter[];
126
+ edit: boolean;
127
+ }
128
+
129
+ interface EzUITableFilterMethod {
130
+ key: string;
131
+ action: string;
132
+ filter(values: any[], column: string, value: any): any[];
133
+ }
134
+
135
+ interface EzUITableSortMethod {
136
+ state: 'asc' | 'desc' | 'none';
137
+ sort(a: any, b: any, column: string): number;
138
+ }
139
+
140
+ declare class EzUITableFilterService {
141
+ sortMethods: EzUITableSortMethod[];
142
+ filterMethods: EzUITableFilterMethod[];
143
+ sort(values: any[], sort: EzUITableSort): any[];
144
+ filter(values: any[], filter: EzUITableFilter): any[];
145
+ }
146
+
147
+ declare class EzUITablePresets implements OnChanges {
148
+ private table;
149
+ storageKey: string | null;
150
+ currentPreset: i0.WritableSignal<EzUITableSortFilterPreset | null>;
151
+ presets: i0.WritableSignal<EzUITableSortFilterPreset[]>;
152
+ constructor(table: EzUITable);
153
+ ngOnChanges(changes: SimpleChanges): Promise<void>;
154
+ ngOnInit(): void;
155
+ onPresetChange: EventEmitter<EzUITableSortFilterPreset | null>;
156
+ saveCurrentPreset(): void;
157
+ selectPreset(id: string): void;
158
+ createPreset(): void;
159
+ removePreset(id: string): void;
160
+ savePresets(): void;
161
+ clearFilters(): void;
162
+ static ɵfac: i0.ɵɵFactoryDeclaration<EzUITablePresets, never>;
163
+ static ɵcmp: i0.ɵɵComponentDeclaration<EzUITablePresets, "ezui-table-presets", never, { "storageKey": { "alias": "storageKey"; "required": false; }; }, { "onPresetChange": "onPresetChange"; }, never, never, true, never>;
164
+ }
165
+
166
+ declare class EzUITable implements OnChanges {
167
+ private filterService;
168
+ tableHeader: TemplateRef<any> | undefined;
169
+ tableRows: TemplateRef<any> | undefined;
170
+ tableExpandedrow: TemplateRef<any> | undefined;
171
+ presetHeader: EzUITablePresets | undefined;
172
+ disabled: boolean;
173
+ isLoading: i0.WritableSignal<boolean>;
174
+ showAdd: boolean;
175
+ showRefresh: boolean;
176
+ showClearFilters: boolean;
177
+ expandable: boolean;
178
+ values: any[];
179
+ internalValues: any[];
180
+ displayValues: i0.WritableSignal<any[]>;
181
+ sorts: i0.WritableSignal<EzUITableSort[]>;
182
+ filters: i0.WritableSignal<EzUITableFilter[]>;
183
+ storageKey: string | null;
184
+ allowPresets: boolean;
185
+ constructor(filterService: EzUITableFilterService);
186
+ ngOnChanges(changes: SimpleChanges): Promise<void>;
187
+ onAddItem: EventEmitter<any>;
188
+ onLoadItems: EventEmitter<any>;
189
+ onRowExpanded: EventEmitter<any>;
190
+ onPresetChange: EventEmitter<EzUITableSortFilterPreset | null>;
191
+ pageSize: i0.WritableSignal<number>;
192
+ page: i0.WritableSignal<number>;
193
+ pages: i0.WritableSignal<number>;
194
+ readonly pageSizes: number[];
195
+ processPage(): void;
196
+ applySorts(): void;
197
+ applyFilter(): void;
198
+ state: Record<number, boolean>;
199
+ setSort(sort: EzUITableSort): void;
200
+ clearSort(column: string): void;
201
+ setFilter(filter: EzUITableFilter): void;
202
+ clearFilter(column: string): void;
203
+ clearFilters(): void;
204
+ static ɵfac: i0.ɵɵFactoryDeclaration<EzUITable, never>;
205
+ static ɵcmp: i0.ɵɵComponentDeclaration<EzUITable, "ezui-table", never, { "disabled": { "alias": "disabled"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "showAdd": { "alias": "showAdd"; "required": false; }; "showRefresh": { "alias": "showRefresh"; "required": false; }; "showClearFilters": { "alias": "showClearFilters"; "required": false; }; "expandable": { "alias": "expandable"; "required": false; }; "values": { "alias": "values"; "required": false; }; "storageKey": { "alias": "storageKey"; "required": false; }; "allowPresets": { "alias": "allowPresets"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; }, { "onAddItem": "onAddItem"; "onLoadItems": "onLoadItems"; "onRowExpanded": "onRowExpanded"; "onPresetChange": "onPresetChange"; }, ["tableHeader", "tableRows", "tableExpandedrow"], never, true, never>;
206
+ }
207
+
208
+ declare class EzUITableDateFilter {
209
+ column: string;
210
+ filterApplied: i0.WritableSignal<boolean>;
211
+ filterVisible: i0.WritableSignal<boolean>;
212
+ table: EzUITable;
213
+ value: [TuiDay, TuiTime];
214
+ filterType: any;
215
+ filterTypes: any[];
216
+ protected readonly stringify: (item: any) => string;
217
+ constructor(table: EzUITable);
218
+ applyFilter(expression: string): void;
219
+ clearFilter(): void;
220
+ static ɵfac: i0.ɵɵFactoryDeclaration<EzUITableDateFilter, never>;
221
+ static ɵcmp: i0.ɵɵComponentDeclaration<EzUITableDateFilter, "ezui-table-datefilter", never, { "column": { "alias": "column"; "required": false; }; }, {}, never, never, true, never>;
222
+ }
223
+
224
+ declare class EzUITableSelectFilter {
225
+ column: string;
226
+ filterApplied: i0.WritableSignal<boolean>;
227
+ filterVisible: i0.WritableSignal<boolean>;
228
+ table: EzUITable;
229
+ options: string[];
230
+ selected: string[];
231
+ filterType: any;
232
+ filterTypes: any[];
233
+ protected readonly stringify: (item: any) => string;
234
+ constructor(table: EzUITable);
235
+ applyFilter(expression: string): void;
236
+ clearFilter(): void;
237
+ static ɵfac: i0.ɵɵFactoryDeclaration<EzUITableSelectFilter, never>;
238
+ static ɵcmp: i0.ɵɵComponentDeclaration<EzUITableSelectFilter, "ezui-table-selectfilter", never, { "column": { "alias": "column"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, {}, never, never, true, never>;
239
+ }
240
+
241
+ declare class EzUITableTextFilter {
242
+ column: string;
243
+ filterApplied: i0.WritableSignal<boolean>;
244
+ filterVisible: i0.WritableSignal<boolean>;
245
+ table: EzUITable;
246
+ value: string;
247
+ filterType: any;
248
+ filterTypes: any[];
249
+ protected readonly stringify: (item: any) => string;
250
+ constructor(table: EzUITable);
251
+ applyFilter(expression: string): void;
252
+ clearFilter(): void;
253
+ static ɵfac: i0.ɵɵFactoryDeclaration<EzUITableTextFilter, never>;
254
+ static ɵcmp: i0.ɵɵComponentDeclaration<EzUITableTextFilter, "ezui-table-textfilter", never, { "column": { "alias": "column"; "required": false; }; }, {}, never, never, true, never>;
255
+ }
256
+
257
+ declare class EzUIFilterHelpers {
258
+ static textFilter(values: any[], fn: (i: string) => boolean, column: string): any[];
259
+ static dateFilter(values: any[], fn: (i: Date) => boolean, column: string): any[];
260
+ }
261
+
262
+ interface EzUITableSortFilterPresetSave {
263
+ current: string | null;
264
+ presets: EzUITableSortFilterPreset[];
265
+ }
266
+
267
+ declare class EzUITTableSortableColumn {
268
+ column: string;
269
+ table: EzUITable;
270
+ state: 'asc' | 'desc' | 'none';
271
+ icon: i0.WritableSignal<string | null | undefined>;
272
+ constructor(table: EzUITable);
273
+ sort(): void;
274
+ static ɵfac: i0.ɵɵFactoryDeclaration<EzUITTableSortableColumn, never>;
275
+ static ɵcmp: i0.ɵɵComponentDeclaration<EzUITTableSortableColumn, "ezui-table-sortable", never, { "column": { "alias": "column"; "required": false; }; }, {}, never, never, true, never>;
276
+ }
277
+
101
278
  declare class EzUITextInput implements OnChanges {
102
279
  icon: string;
103
280
  label: string;
@@ -167,5 +344,5 @@ interface IIdentifiable {
167
344
  id: string;
168
345
  }
169
346
 
170
- export { BaseCRUDInterface, BaseListService, EzUIDateInput, EzUIMarkdownEditor, EzUIMultiSelect, EzUINumberInput, EzUIPasswordInput, EzUITextInput, compressImage };
171
- export type { IIdentifiable };
347
+ export { BaseCRUDInterface, BaseListService, EzUIDateInput, EzUIFileInput, EzUIFilterHelpers, EzUIMarkdownEditor, EzUIMultiSelect, EzUINumberInput, EzUIPasswordInput, EzUITTableSortableColumn, EzUITable, EzUITableDateFilter, EzUITableFilterService, EzUITableSelectFilter, EzUITableTextFilter, EzUITextInput, compressImage };
348
+ export type { EzUITableFilter, EzUITableFilterMethod, EzUITableSort, EzUITableSortFilterPreset, EzUITableSortFilterPresetSave, EzUITableSortMethod, IIdentifiable };