@smallpearl/ngx-helper 0.33.50 → 20.0.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.
Files changed (119) hide show
  1. package/core/index.d.ts +3 -1
  2. package/entities/index.d.ts +313 -2
  3. package/entity-field/index.d.ts +101 -2
  4. package/fesm2022/smallpearl-ngx-helper-entities.mjs +18 -18
  5. package/fesm2022/smallpearl-ngx-helper-entities.mjs.map +1 -1
  6. package/fesm2022/smallpearl-ngx-helper-entity-field.mjs +5 -4
  7. package/fesm2022/smallpearl-ngx-helper-entity-field.mjs.map +1 -1
  8. package/fesm2022/smallpearl-ngx-helper-forms.mjs.map +1 -1
  9. package/fesm2022/smallpearl-ngx-helper-hover-dropdown.mjs +6 -6
  10. package/fesm2022/smallpearl-ngx-helper-hover-dropdown.mjs.map +1 -1
  11. package/fesm2022/smallpearl-ngx-helper-locale.mjs +6 -6
  12. package/fesm2022/smallpearl-ngx-helper-locale.mjs.map +1 -1
  13. package/fesm2022/smallpearl-ngx-helper-mat-busy-wheel.mjs +57 -31
  14. package/fesm2022/smallpearl-ngx-helper-mat-busy-wheel.mjs.map +1 -1
  15. package/fesm2022/smallpearl-ngx-helper-mat-context-menu.mjs +15 -15
  16. package/fesm2022/smallpearl-ngx-helper-mat-context-menu.mjs.map +1 -1
  17. package/fesm2022/smallpearl-ngx-helper-mat-entity-crud.mjs +346 -334
  18. package/fesm2022/smallpearl-ngx-helper-mat-entity-crud.mjs.map +1 -1
  19. package/fesm2022/smallpearl-ngx-helper-mat-entity-list.mjs +152 -146
  20. package/fesm2022/smallpearl-ngx-helper-mat-entity-list.mjs.map +1 -1
  21. package/fesm2022/smallpearl-ngx-helper-mat-file-input.mjs +5 -5
  22. package/fesm2022/smallpearl-ngx-helper-mat-file-input.mjs.map +1 -1
  23. package/fesm2022/smallpearl-ngx-helper-mat-form-error.mjs +19 -19
  24. package/fesm2022/smallpearl-ngx-helper-mat-form-error.mjs.map +1 -1
  25. package/fesm2022/smallpearl-ngx-helper-mat-select-entity.mjs +25 -26
  26. package/fesm2022/smallpearl-ngx-helper-mat-select-entity.mjs.map +1 -1
  27. package/fesm2022/smallpearl-ngx-helper-mat-select-infinite-scroll.mjs +7 -7
  28. package/fesm2022/smallpearl-ngx-helper-mat-select-infinite-scroll.mjs.map +1 -1
  29. package/fesm2022/smallpearl-ngx-helper-mat-side-menu-layout.mjs +24 -24
  30. package/fesm2022/smallpearl-ngx-helper-mat-side-menu-layout.mjs.map +1 -1
  31. package/fesm2022/smallpearl-ngx-helper-mat-tel-input.mjs +8 -9
  32. package/fesm2022/smallpearl-ngx-helper-mat-tel-input.mjs.map +1 -1
  33. package/fesm2022/smallpearl-ngx-helper-sideload.mjs.map +1 -1
  34. package/fesm2022/smallpearl-ngx-helper-stationary-with-line-items.mjs +35 -35
  35. package/fesm2022/smallpearl-ngx-helper-stationary-with-line-items.mjs.map +1 -1
  36. package/forms/index.d.ts +55 -1
  37. package/hover-dropdown/index.d.ts +44 -1
  38. package/index.d.ts +4 -5
  39. package/locale/index.d.ts +55 -5
  40. package/mat-busy-wheel/index.d.ts +165 -4
  41. package/mat-context-menu/index.d.ts +65 -1
  42. package/mat-entity-crud/index.d.ts +1075 -6
  43. package/mat-entity-list/index.d.ts +394 -3
  44. package/mat-file-input/index.d.ts +61 -1
  45. package/mat-form-error/index.d.ts +184 -6
  46. package/mat-select-entity/index.d.ts +194 -1
  47. package/mat-select-infinite-scroll/index.d.ts +45 -2
  48. package/mat-side-menu-layout/index.d.ts +180 -6
  49. package/mat-tel-input/index.d.ts +169 -2
  50. package/package.json +18 -13
  51. package/sideload/index.d.ts +20 -1
  52. package/stationary-with-line-items/index.d.ts +78 -1
  53. package/core/src/version.d.ts +0 -1
  54. package/entities/src/paged-loader.d.ts +0 -219
  55. package/entities/src/paginator.d.ts +0 -87
  56. package/entity-field/src/entity-field.d.ts +0 -70
  57. package/entity-field/src/provider.d.ts +0 -27
  58. package/forms/src/validation-error-handler.d.ts +0 -52
  59. package/hover-dropdown/src/hover-dropdown.directive.d.ts +0 -41
  60. package/locale/src/currency.pipe.d.ts +0 -14
  61. package/locale/src/date.pipe.d.ts +0 -14
  62. package/locale/src/format-currency.d.ts +0 -1
  63. package/locale/src/format-date.d.ts +0 -2
  64. package/locale/src/is-empty.d.ts +0 -1
  65. package/locale/src/providers.d.ts +0 -20
  66. package/mat-busy-wheel/src/busy-wheel-op.d.ts +0 -65
  67. package/mat-busy-wheel/src/busy-wheel.component.d.ts +0 -12
  68. package/mat-busy-wheel/src/busy-wheel.service.d.ts +0 -42
  69. package/mat-busy-wheel/src/host-busy-wheel.directive.d.ts +0 -35
  70. package/mat-context-menu/src/mat-context-menu.component.d.ts +0 -61
  71. package/mat-entity-crud/src/convert-context-input-to-http-context.d.ts +0 -11
  72. package/mat-entity-crud/src/default-config.d.ts +0 -9
  73. package/mat-entity-crud/src/form-view-host.component.d.ts +0 -41
  74. package/mat-entity-crud/src/mat-entity-crud-form-base.d.ts +0 -277
  75. package/mat-entity-crud/src/mat-entity-crud-internal-types.d.ts +0 -131
  76. package/mat-entity-crud/src/mat-entity-crud-item-action.d.ts +0 -68
  77. package/mat-entity-crud/src/mat-entity-crud-types.d.ts +0 -149
  78. package/mat-entity-crud/src/mat-entity-crud.component.d.ts +0 -366
  79. package/mat-entity-crud/src/preview-host.component.d.ts +0 -21
  80. package/mat-entity-crud/src/preview-pane.component.d.ts +0 -31
  81. package/mat-entity-crud/src/providers.d.ts +0 -3
  82. package/mat-entity-list/src/config.d.ts +0 -6
  83. package/mat-entity-list/src/mat-entity-list-types.d.ts +0 -128
  84. package/mat-entity-list/src/mat-entity-list.component.d.ts +0 -259
  85. package/mat-entity-list/src/providers.d.ts +0 -3
  86. package/mat-file-input/src/mat-file-input.component.d.ts +0 -58
  87. package/mat-form-error/src/locales/en.d.ts +0 -4
  88. package/mat-form-error/src/locales/hu.d.ts +0 -4
  89. package/mat-form-error/src/locales/index.d.ts +0 -5
  90. package/mat-form-error/src/locales/pt-br.d.ts +0 -4
  91. package/mat-form-error/src/locales/zh-hans.d.ts +0 -4
  92. package/mat-form-error/src/locales/zh-hant.d.ts +0 -4
  93. package/mat-form-error/src/ngx-error-list.component.d.ts +0 -9
  94. package/mat-form-error/src/ngx-mat-error-control.d.ts +0 -17
  95. package/mat-form-error/src/ngx-mat-error-def.directive.d.ts +0 -30
  96. package/mat-form-error/src/ngx-mat-errors-for-date-range-picker.directive.d.ts +0 -8
  97. package/mat-form-error/src/ngx-mat-errors.component.d.ts +0 -44
  98. package/mat-form-error/src/types.d.ts +0 -68
  99. package/mat-form-error/src/utils/coerce-to-observable.d.ts +0 -3
  100. package/mat-form-error/src/utils/distinct-until-error-changed.d.ts +0 -2
  101. package/mat-form-error/src/utils/find-error-for-control.d.ts +0 -9
  102. package/mat-form-error/src/utils/get-abstract-controls.d.ts +0 -3
  103. package/mat-form-error/src/utils/get-control-with-error.d.ts +0 -3
  104. package/mat-select-entity/src/mat-select-entity.component.d.ts +0 -190
  105. package/mat-select-infinite-scroll/src/mat-select-infinite-scroll.directive.d.ts +0 -19
  106. package/mat-select-infinite-scroll/src/mat-select-infinite-scroll.service.d.ts +0 -25
  107. package/mat-side-menu-layout/src/layout.service.d.ts +0 -23
  108. package/mat-side-menu-layout/src/mat-menu-layout.component.d.ts +0 -39
  109. package/mat-side-menu-layout/src/mat-menu-layout.module.d.ts +0 -18
  110. package/mat-side-menu-layout/src/mat-menu-list-item.component.d.ts +0 -36
  111. package/mat-side-menu-layout/src/mat-menu-pane.component.d.ts +0 -66
  112. package/mat-side-menu-layout/src/nav-item.d.ts +0 -10
  113. package/mat-tel-input/src/country-codes.d.ts +0 -5
  114. package/mat-tel-input/src/mat-telephone.component.d.ts +0 -129
  115. package/mat-tel-input/src/providers.d.ts +0 -38
  116. package/ngx-helper.d.ts +0 -2
  117. package/public-api.d.ts +0 -1
  118. package/sideload/src/sideload.d.ts +0 -18
  119. package/stationary-with-line-items/src/stationary-with-line-items.component.d.ts +0 -74
@@ -1,259 +0,0 @@
1
- import { HttpClient, HttpContext, HttpContextToken, HttpParams } from '@angular/common/http';
2
- import { AfterViewInit, ElementRef, EventEmitter, Injector, OnDestroy, OnInit, QueryList } from '@angular/core';
3
- import { PageEvent } from '@angular/material/paginator';
4
- import { MatSort } from '@angular/material/sort';
5
- import { MatColumnDef, MatTable, MatTableDataSource } from '@angular/material/table';
6
- import { DomSanitizer } from '@angular/platform-browser';
7
- import { SPEntityField, SPEntityFieldSpec } from '@smallpearl/ngx-helper/entity-field';
8
- import { Observable, Subject, Subscription } from 'rxjs';
9
- import { SPMatEntityListEntityLoaderFn, SPMatEntityListPaginator } from './mat-entity-list-types';
10
- import * as i0 from "@angular/core";
11
- export declare class HeaderAlignmentDirective implements AfterViewInit {
12
- private el;
13
- headerAlignment: import("@angular/core").InputSignal<string | undefined>;
14
- constructor(el: ElementRef);
15
- ngAfterViewInit(): void;
16
- static ɵfac: i0.ɵɵFactoryDeclaration<HeaderAlignmentDirective, never>;
17
- static ɵdir: i0.ɵɵDirectiveDeclaration<HeaderAlignmentDirective, "[headerAlignment]", never, { "headerAlignment": { "alias": "headerAlignment"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
18
- }
19
- /**
20
- * Represents a request to load entities from the remote. This is used to
21
- * compare two requests to determine if they are equal. This is useful to
22
- * prevent duplicate requests being sent to the remote.
23
- */
24
- declare class LoadRequest {
25
- endpoint: string;
26
- params: HttpParams;
27
- force: boolean;
28
- constructor(endpoint: string, params: HttpParams, force?: boolean);
29
- isEqualToAndNotForced(prev: LoadRequest): boolean;
30
- }
31
- /**
32
- * A component to display a list of entities loaded from remote.
33
- */
34
- export declare class SPMatEntityListComponent<TEntity extends {
35
- [P in IdKey]: PropertyKey;
36
- }, IdKey extends string = 'id'> implements OnInit, OnDestroy, AfterViewInit {
37
- protected http: HttpClient;
38
- private sanitizer;
39
- private injector;
40
- entityName: import("@angular/core").InputSignal<string>;
41
- entityNamePlural: import("@angular/core").InputSignal<string | undefined>;
42
- /**
43
- * The endpoint from where the entities are to be retrieved
44
- */
45
- endpoint: import("@angular/core").InputSignal<string>;
46
- /**
47
- * Custom entities loader function, which if provided will be called
48
- * instead of HttpClient.get.
49
- */
50
- entityLoaderFn: import("@angular/core").InputSignal<SPMatEntityListEntityLoaderFn | undefined>;
51
- /**
52
- * The columns of the entity to be displayed. This is an array of
53
- * SPEntityFieldSpec objects. If there's a one-to-one mapping between the
54
- * column's field name, its title & the rendered value, a string can be
55
- * specified instead. That is, the value of this property is a heterogeneous
56
- * array consisting of SPEntityFieldSpec<> objects and strings.
57
- */
58
- columns: import("@angular/core").InputSignal<(string | SPEntityFieldSpec<TEntity, IdKey>)[]>;
59
- /**
60
- * Names of columns that are displayed. This will default to all the columns
61
- * listed in columns.
62
- */
63
- displayedColumns: import("@angular/core").InputSignal<string[]>;
64
- /**
65
- * Number of entities per page. If this is not set and paginator is defined,
66
- * the number of entities int in the first request, will be taken as the
67
- * page size.
68
- */
69
- pageSize: import("@angular/core").InputSignal<number>;
70
- /**
71
- * Entity idKey, if idKey is different from the default 'id'.
72
- */
73
- idKey: import("@angular/core").InputSignal<string>;
74
- /**
75
- * Type of pagination -- continuous or discrete. 'infinite' pagination
76
- * uses an 'infiniteScroll' and 'discrete' pagination uses a mat-paginator
77
- * at the bottom to navigate between pages.
78
- */
79
- pagination: import("@angular/core").InputSignal<"infinite" | "discrete" | "none">;
80
- /**
81
- * Component specific paginator. Only used if pagination != 'none'.
82
- */
83
- paginator: import("@angular/core").InputSignal<SPMatEntityListPaginator | undefined>;
84
- /**
85
- *
86
- */
87
- sorter: import("@angular/core").InputSignal<MatSort | undefined>;
88
- /**
89
- * Disable sorting of rows
90
- */
91
- disableSort: import("@angular/core").InputSignal<boolean>;
92
- /**
93
- * Wrappers for infiniteScroll properties, for customization by the client
94
- */
95
- infiniteScrollContainer: import("@angular/core").InputSignal<any>;
96
- infiniteScrollDistance: import("@angular/core").InputSignal<number>;
97
- infiniteScrollThrottle: import("@angular/core").InputSignal<number>;
98
- infiniteScrollWindow: import("@angular/core").InputSignal<boolean>;
99
- /**
100
- * Custom context to be set for HttpClient requests. Value for this attribute
101
- * can be an array of HttpContextToken key, value pairs, or an instance of
102
- * HttpContext.
103
- *
104
- * In the client code specify this property by initializing a member variable
105
- * as:
106
-
107
- ```
108
- Component({
109
- ...
110
- template: `
111
- <sp-mat-entity-list
112
- [httpReqContext]="httpReqContext"
113
- ></sp-mat-entity-list>
114
- `
115
- })
116
- export class YourComponent {
117
- httpReqContext: [HttpContextToken<any>, any] = [
118
- MY_CONTEXT_TOKEN, 'customers'
119
- ];
120
- // Or [httpReqContext]="httpReqContext2" will work too.
121
- httpReqContext2: HttpContext = new HttpContext().set(
122
- MY_CONTEXT_TOKEN, 'customers'
123
- );
124
- }
125
- ```
126
- *
127
- * Of course if you want to pass multiple context properties, declare the type
128
- * as an array of array. That is, `[[HttpContextToken<any>, any]]` and
129
- * initialize it appropriately.
130
- */
131
- httpReqContext: import("@angular/core").InputSignal<[HttpContextToken<any>, any] | [[HttpContextToken<any>, any]] | HttpContext | undefined>;
132
- _entityNamePlural: import("@angular/core").Signal<string>;
133
- _httpReqContext: import("@angular/core").Signal<HttpContext>;
134
- deferViewInit: import("@angular/core").InputSignal<boolean>;
135
- firstLoadDone: boolean;
136
- allColumnNames: import("@angular/core").WritableSignal<string[]>;
137
- _displayedColumns: import("@angular/core").Signal<string[]>;
138
- dataSource: import("@angular/core").WritableSignal<MatTableDataSource<TEntity, import("@angular/material/paginator").MatPaginator>>;
139
- table: import("@angular/core").Signal<MatTable<any> | undefined>;
140
- sort: import("@angular/core").Signal<MatSort | undefined>;
141
- viewColumnDefs: import("@angular/core").Signal<readonly MatColumnDef[]>;
142
- clientColumnDefs: QueryList<MatColumnDef>;
143
- contentColumnDefs: MatColumnDef[];
144
- subs$: Subscription;
145
- destroy$: Subject<void>;
146
- entityCount: import("@angular/core").WritableSignal<number>;
147
- pageIndex: import("@angular/core").WritableSignal<number>;
148
- lastFetchedEntitiesCount: import("@angular/core").WritableSignal<number>;
149
- _pageSize: import("@angular/core").Signal<number>;
150
- _columns: import("@angular/core").Signal<SPEntityFieldSpec<TEntity, IdKey>[]>;
151
- __columns: import("@angular/core").Signal<SPEntityField<TEntity, IdKey>[]>;
152
- store: import("@ngneat/elf").Store<{
153
- name: string;
154
- state: {
155
- entities: Record<TEntity[IdKey], TEntity>;
156
- ids: TEntity[IdKey][];
157
- };
158
- config: {
159
- idKey: IdKey;
160
- };
161
- }, {
162
- entities: Record<TEntity[IdKey], TEntity>;
163
- ids: TEntity[IdKey][];
164
- }>;
165
- entities$: Observable<TEntity[]>;
166
- _paginator: SPMatEntityListPaginator | undefined;
167
- loading: import("@angular/core").WritableSignal<boolean>;
168
- hasMore: import("@angular/core").WritableSignal<boolean>;
169
- activeEntity: import("@angular/core").WritableSignal<TEntity | undefined>;
170
- activeEntityId: import("@angular/core").Signal<any>;
171
- _prevActiveEntity: TEntity | undefined;
172
- _activeEntityChange: import("@angular/core").EffectRef;
173
- selectEntity: EventEmitter<TEntity | undefined>;
174
- fieldConfig: import("@smallpearl/ngx-helper/entity-field").SPEntityFieldConfig;
175
- entityListConfig: import("./mat-entity-list-types").SPMatEntityListConfig;
176
- /**
177
- * A signal that can be used to trigger loading of more entities from the
178
- * remote. This can be visualized as the event loop of the entity list
179
- * component.
180
- */
181
- loadRequest$: Subject<LoadRequest>;
182
- endpointChanged: import("@angular/core").EffectRef;
183
- constructor(http: HttpClient, sanitizer: DomSanitizer, injector: Injector);
184
- ngOnInit(): void;
185
- ngOnDestroy(): void;
186
- ngAfterViewInit(): void;
187
- /**
188
- * Clear all entities in store and reload them from endpoint as if
189
- * the entities are being loaded for the first time.
190
- */
191
- refresh(force?: boolean): void;
192
- addEntity(entity: TEntity): void;
193
- /**
194
- * Update an entity with a modified version. Can be used by CRUD UPDATE
195
- * operation to update an entity in the local store that is used to as the
196
- * source of MatTableDataSource.
197
- * @param id
198
- * @param entity
199
- */
200
- updateEntity(id: TEntity[IdKey], entity: TEntity): void;
201
- /**
202
- * Clients can call this method when it has deleted and entity via a CRUD
203
- * operation. Depending on the pagination mode, MatEntityList implements
204
- * an appropriate behavior.
205
- *
206
- * If the pagination is 'infinite', the relevent entity is removed from our
207
- * entity list. View will be repained as data store has changed.
208
- *
209
- * If the pagination is 'discrete', the entity is removed from the page.
210
- * If this is the only entity in the page, the current pageNumber is
211
- * decremented by 1 if it's possible (if the current pageNumber > 1).
212
- * The page is reloaded from remote.
213
- */
214
- removeEntity(id: TEntity[IdKey]): void;
215
- /**
216
- * Build the contentColumnDefs array by enumerating all of client's projected
217
- * content with matColumnDef directive.
218
- */
219
- buildContentColumnDefs(): void;
220
- /**
221
- * Build the effective columns by parsing our own <ng-container matColumnDef>
222
- * statements for each column in columns() property and client's
223
- * <ng-container matColumnDef> provided via content projection.
224
- */
225
- buildColumns(): void;
226
- setupSort(): void;
227
- infiniteScrollLoadNextPage(ev: any): void;
228
- loadMoreEntities(forceRefresh?: boolean): void;
229
- /**
230
- * Creates a LoadRequest object for loading entities using the current state
231
- * of the component. Therefore, if the request is for next page of entities,
232
- * the LoadRequest object will have the updated page index. However, if
233
- * pagination has been reset (refer to refresh()), the LoadRequest object
234
- * will be for the first page of data. Note that when 'endpoint' value
235
- * changes, the component's pagination state is reset causing a refresh()
236
- * to be called, which in turn will create a new LoadRequest object for the
237
- * first page of data.
238
- * @returns LoadRequest object for the next load request.
239
- */
240
- private createNextLoadRequest;
241
- /**
242
- * Does the actual load of entities from the remote or via calling the
243
- * entityLoaderFn. This method is the workhorse of the entity list
244
- * 'loader-loop'.
245
- * @param lr
246
- * @returns Observable that emits the response from the remote or from
247
- * entityLoaderFn().
248
- */
249
- private doActualLoad;
250
- private findArrayInResult;
251
- handlePageEvent(e: PageEvent): void;
252
- getUrl(endpoint: string): string;
253
- toggleActiveEntity(entity: TEntity | undefined): void;
254
- getColumnLabel(field: SPEntityField<TEntity, IdKey>): Observable<string>;
255
- isAsync(val: any): val is Observable<any>;
256
- static ɵfac: i0.ɵɵFactoryDeclaration<SPMatEntityListComponent<any, any>, never>;
257
- static ɵcmp: i0.ɵɵComponentDeclaration<SPMatEntityListComponent<any, any>, "sp-mat-entity-list", never, { "entityName": { "alias": "entityName"; "required": true; "isSignal": true; }; "entityNamePlural": { "alias": "entityNamePlural"; "required": false; "isSignal": true; }; "endpoint": { "alias": "endpoint"; "required": false; "isSignal": true; }; "entityLoaderFn": { "alias": "entityLoaderFn"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "displayedColumns": { "alias": "displayedColumns"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "idKey": { "alias": "idKey"; "required": false; "isSignal": true; }; "pagination": { "alias": "pagination"; "required": false; "isSignal": true; }; "paginator": { "alias": "paginator"; "required": false; "isSignal": true; }; "sorter": { "alias": "sorter"; "required": false; "isSignal": true; }; "disableSort": { "alias": "disableSort"; "required": false; "isSignal": true; }; "infiniteScrollContainer": { "alias": "infiniteScrollContainer"; "required": false; "isSignal": true; }; "infiniteScrollDistance": { "alias": "infiniteScrollDistance"; "required": false; "isSignal": true; }; "infiniteScrollThrottle": { "alias": "infiniteScrollThrottle"; "required": false; "isSignal": true; }; "infiniteScrollWindow": { "alias": "infiniteScrollWindow"; "required": false; "isSignal": true; }; "httpReqContext": { "alias": "httpReqContext"; "required": false; "isSignal": true; }; "deferViewInit": { "alias": "deferViewInit"; "required": false; "isSignal": true; }; }, { "selectEntity": "selectEntity"; }, ["clientColumnDefs"], never, true, never>;
258
- }
259
- export {};
@@ -1,3 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- import { SPMatEntityListConfig } from './mat-entity-list-types';
3
- export declare const SP_MAT_ENTITY_LIST_CONFIG: InjectionToken<SPMatEntityListConfig>;
@@ -1,58 +0,0 @@
1
- import { ElementRef, OnDestroy, OnInit } from '@angular/core';
2
- import { ControlValueAccessor, NgControl, UntypedFormControl } from '@angular/forms';
3
- import { MatFormField, MatFormFieldControl } from '@angular/material/form-field';
4
- import { Subject } from 'rxjs';
5
- import * as i0 from "@angular/core";
6
- export declare class QQMatFileInputComponent implements ControlValueAccessor, MatFormFieldControl<File[]>, OnInit, OnDestroy {
7
- _formField: MatFormField;
8
- ngControl: NgControl;
9
- accept: string;
10
- thumbnailImageUrl: string;
11
- imageFile: boolean;
12
- _fileName: string;
13
- inputFileUpload: ElementRef | undefined;
14
- fileControl: UntypedFormControl;
15
- static nextId: number;
16
- stateChanges: Subject<void>;
17
- focused: boolean;
18
- errorState: boolean;
19
- controlType: string;
20
- id: string;
21
- describedBy: string;
22
- private _multiple;
23
- ariaDescribedby: string | undefined;
24
- _value: File[] | null;
25
- get empty(): boolean;
26
- get shouldLabelFloat(): boolean;
27
- get acceptedFileTypes(): string;
28
- get multiple(): boolean;
29
- set multiple(value: boolean | string);
30
- get placeholder(): string;
31
- set placeholder(value: string);
32
- private _placeholder;
33
- get required(): boolean;
34
- set required(value: boolean);
35
- private _required;
36
- private _disabled;
37
- private destroy$;
38
- get disabled(): boolean;
39
- set disabled(value: boolean);
40
- get fileName(): string;
41
- get value(): File[] | null;
42
- set value(files: File[] | string | null);
43
- constructor(_formField: MatFormField, ngControl: NgControl);
44
- setDescribedByIds(ids: string[]): void;
45
- handleKeyboardEvent(event: KeyboardEvent): void;
46
- onContainerClick(event: MouseEvent | KeyboardEvent): void;
47
- writeValue(files: File[]): void;
48
- registerOnChange(fn: any): void;
49
- registerOnTouched(fn: any): void;
50
- onTouched: () => void;
51
- setDisabledState(isDisabled: boolean): void;
52
- onFileSelected(event: any): void;
53
- ngOnInit(): void;
54
- ngOnDestroy(): void;
55
- generateLocalThumbnail(file: File): void;
56
- static ɵfac: i0.ɵɵFactoryDeclaration<QQMatFileInputComponent, [{ optional: true; }, { optional: true; self: true; }]>;
57
- static ɵcmp: i0.ɵɵComponentDeclaration<QQMatFileInputComponent, "qq-mat-file-input", never, { "accept": { "alias": "accept"; "required": false; }; "thumbnailImageUrl": { "alias": "thumbnailImageUrl"; "required": false; }; "imageFile": { "alias": "imageFile"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, {}, never, never, true, never>;
58
- }
@@ -1,4 +0,0 @@
1
- import { type FactoryProvider } from '@angular/core';
2
- import type { ErrorMessages } from '../types';
3
- export declare function errorMessagesEnFactory(locale: string, dateFormat?: string, timeFormat?: string): ErrorMessages;
4
- export declare const NGX_MAT_ERROR_CONFIG_EN: FactoryProvider;
@@ -1,4 +0,0 @@
1
- import { type FactoryProvider } from '@angular/core';
2
- import type { ErrorMessages } from '../types';
3
- export declare function errorMessagesHuFactory(locale: string, dateFormat?: string, timeFormat?: string): ErrorMessages;
4
- export declare const NGX_MAT_ERROR_CONFIG_HU: FactoryProvider;
@@ -1,5 +0,0 @@
1
- export * from './en';
2
- export * from './hu';
3
- export * from './pt-br';
4
- export * from './zh-hans';
5
- export * from './zh-hant';
@@ -1,4 +0,0 @@
1
- import { type FactoryProvider } from '@angular/core';
2
- import type { ErrorMessages } from '../types';
3
- export declare function errorMessagesPtBtFactory(locale: string, dateFormat?: string, timeFormat?: string): ErrorMessages;
4
- export declare const NGX_MAT_ERROR_CONFIG_PT_BR: FactoryProvider;
@@ -1,4 +0,0 @@
1
- import { type FactoryProvider } from '@angular/core';
2
- import type { ErrorMessages } from '../types';
3
- export declare function errorMessagesZhHansFactory(locale: string, dateFormat?: string, timeFormat?: string): ErrorMessages;
4
- export declare const NGX_MAT_ERROR_CONFIG_ZH_HANS: FactoryProvider;
@@ -1,4 +0,0 @@
1
- import { type FactoryProvider } from '@angular/core';
2
- import type { ErrorMessages } from '../types';
3
- export declare function errorMessagesZhHantFactory(locale: string, dateFormat?: string, timeFormat?: string): ErrorMessages;
4
- export declare const NGX_MAT_ERROR_CONFIG_ZH_HANT: FactoryProvider;
@@ -1,9 +0,0 @@
1
- import { NgxMatErrors } from './ngx-mat-errors.component';
2
- import { NgxMatErrorControls } from './types';
3
- import * as i0 from "@angular/core";
4
- export declare class NgxErrorList extends NgxMatErrors {
5
- isArray(e: string | string[]): e is string[];
6
- set control(control: NgxMatErrorControls);
7
- static ɵfac: i0.ɵɵFactoryDeclaration<NgxErrorList, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<NgxErrorList, "ngx-error-list, [ngx-error-list]", never, { "control": { "alias": "ngx-error-list"; "required": false; }; }, {}, never, never, true, never>;
9
- }
@@ -1,17 +0,0 @@
1
- import { type Provider } from '@angular/core';
2
- import type { FormFieldControl } from './types';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * This class contains the logic of getting the default control of a MatFormField.
6
- * Extend it to implement a custom getter method.
7
- */
8
- export declare class NgxMatErrorControl {
9
- protected readonly matFormField: import("@angular/material/form-field").MatFormField | null;
10
- get(): undefined | FormFieldControl | FormFieldControl[];
11
- static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatErrorControl, never>;
12
- static ɵprov: i0.ɵɵInjectableDeclaration<NgxMatErrorControl>;
13
- }
14
- /**
15
- * Provides the default control accessor of a MatFormField.
16
- */
17
- export declare function provideDefaultNgxMatErrorControl(): Provider;
@@ -1,30 +0,0 @@
1
- import { InjectionToken, TemplateRef } from '@angular/core';
2
- import { AbstractControl, type AbstractControlDirective } from '@angular/forms';
3
- import * as i0 from "@angular/core";
4
- export interface INgxMatErrorDef {
5
- ngxMatErrorDefFor: string;
6
- ngxMatErrorDefWithControl?: AbstractControlDirective | AbstractControl | string | null;
7
- template: TemplateRef<any>;
8
- control?: AbstractControl;
9
- }
10
- /**
11
- * Lightweight injection token. When NgxMatErrorDef is not used, only this token will remain, the directive will be tree-shaken.
12
- */
13
- export declare const NGX_MAT_ERROR_DEF: InjectionToken<INgxMatErrorDef>;
14
- export declare class NgxMatErrorDef implements INgxMatErrorDef {
15
- /**
16
- * Specify the error key to be used for error matching.
17
- * @required
18
- */
19
- ngxMatErrorDefFor: string;
20
- /**
21
- * Specify the control to be used for error matching.
22
- * @optional
23
- */
24
- ngxMatErrorDefWithControl?: AbstractControlDirective | AbstractControl | string | null;
25
- readonly template: TemplateRef<any>;
26
- private readonly controlContainer;
27
- get control(): AbstractControl | undefined;
28
- static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatErrorDef, never>;
29
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgxMatErrorDef, "[ngxMatErrorDef]", never, { "ngxMatErrorDefFor": { "alias": "ngxMatErrorDefFor"; "required": true; }; "ngxMatErrorDefWithControl": { "alias": "ngxMatErrorDefWithControl"; "required": false; }; }, {}, never, never, true, never>;
30
- }
@@ -1,8 +0,0 @@
1
- import { NgxMatErrorControl } from './ngx-mat-error-control';
2
- import * as i0 from "@angular/core";
3
- export declare class NgxMatErrorsForDateRangePicker<D> extends NgxMatErrorControl {
4
- /** Returns start and end controls of the date range picker. */
5
- get(): (import("@angular/material/datepicker").MatStartDate<D> | import("@angular/material/datepicker").MatEndDate<D>)[];
6
- static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatErrorsForDateRangePicker<any>, never>;
7
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgxMatErrorsForDateRangePicker<any>, "[ngx-mat-errors][forDateRangePicker]", never, {}, {}, never, never, true, never>;
8
- }
@@ -1,44 +0,0 @@
1
- import { InjectionToken, type OnDestroy, type QueryList } from '@angular/core';
2
- import { type Observable } from 'rxjs';
3
- import { type INgxMatErrorDef } from './ngx-mat-error-def.directive';
4
- import type { ErrorMessages, ErrorTemplate, NgxMatErrorControls } from './types';
5
- import * as i0 from "@angular/core";
6
- /**
7
- * Default error messages for form controls. These messages can be overridden
8
- * by providing custom messages using the {@link NGX_MAT_ERROR_ADDL_OPTIONS}
9
- * injection token. Typically, this is initialized in the root module
10
- * (or AppComponent) of the application, providing the app with a global set
11
- * of validation error messages.
12
- *
13
- * Messages specific to each form can be provided using the
14
- * {@link NGX_MAT_ERROR_ADDL_OPTIONS} injection token (see below).
15
- */
16
- export declare const NGX_MAT_ERROR_DEFAULT_OPTIONS: InjectionToken<ErrorMessages | Observable<ErrorMessages>>;
17
- /**
18
- * Additional error messages to be merged with the default error messages.
19
- * These messages will override the default messages if the same key is
20
- * provided. This is useful for adding custom error messages specific to a
21
- * form, without having to redefine all the default messages.
22
- *
23
- * Typically, this is provided in the component or module where the form
24
- * is defined.
25
- */
26
- export declare const NGX_MAT_ERROR_ADDL_OPTIONS: InjectionToken<ErrorMessages | Observable<ErrorMessages>>;
27
- export declare class NgxMatErrors implements OnDestroy {
28
- private readonly messages$;
29
- private readonly addlMessages$;
30
- private readonly defaultControl;
31
- private readonly controlChangedSubject;
32
- protected error$: Observable<ErrorTemplate>;
33
- protected set customErrorMessages(queryList: QueryList<INgxMatErrorDef>);
34
- /**
35
- * @deprecated will be changed to a signal and it won't be possible to set the property from TS.
36
- * Instead of setting it in a directive, the directive should extend the {@link NgxMatErrorControl } class
37
- * and provide itself as it.
38
- */
39
- set control(control: NgxMatErrorControls);
40
- /** @ignore */
41
- ngOnDestroy(): void;
42
- static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatErrors, never>;
43
- static ɵcmp: i0.ɵɵComponentDeclaration<NgxMatErrors, "ngx-mat-errors, [ngx-mat-errors]", never, { "control": { "alias": "ngx-mat-errors"; "required": false; }; }, {}, ["customErrorMessages"], never, true, never>;
44
- }
@@ -1,68 +0,0 @@
1
- import type { TemplateRef } from '@angular/core';
2
- import type { AbstractControl, AbstractControlDirective, ValidationErrors } from '@angular/forms';
3
- import type { MatFormFieldControl } from '@angular/material/form-field';
4
- export type ErrorTemplate = {
5
- template: TemplateRef<any>;
6
- $implicit: ValidationErrors;
7
- } | {
8
- template: undefined;
9
- $implicit: string | string[];
10
- } | undefined;
11
- export type FormFieldControl = Pick<MatFormFieldControl<any>, 'ngControl'>;
12
- export type NgxMatErrorControls = FormFieldControl | AbstractControl | AbstractControlDirective | (FormFieldControl | AbstractControl | AbstractControlDirective)[] | undefined | null | '';
13
- export type ErrorTransform = (error: any) => string;
14
- export interface ErrorMessages {
15
- [key: string]: string | ErrorTransform;
16
- }
17
- /**
18
- * For errors: 'min', 'matDatepickerMin'
19
- */
20
- export interface MinError<T = number> {
21
- min: T;
22
- actual: T;
23
- }
24
- /**
25
- * For errors: 'max', 'matDatepickerMax'
26
- */
27
- export interface MaxError<T = number> {
28
- max: T;
29
- actual: T;
30
- }
31
- /**
32
- * For errors: 'minlength', 'maxlength'
33
- */
34
- export interface LengthError {
35
- requiredLength: number;
36
- actualLength: number;
37
- }
38
- /**
39
- * For errors: 'pattern'
40
- */
41
- export interface PatternValidator {
42
- requiredPattern: string;
43
- actualValue: string;
44
- }
45
- /**
46
- * For errors: 'matStartDateInvalid'
47
- */
48
- export interface StartDateError<D> {
49
- end: D;
50
- actual: D;
51
- }
52
- /**
53
- * For errors: 'matEndDateInvalid'
54
- */
55
- export interface EndDateError<D> {
56
- start: D;
57
- actual: D;
58
- }
59
- /**
60
- * For errors: 'matDatepickerParse', 'matTimepickerParse'
61
- */
62
- export interface ParseError {
63
- text: string;
64
- }
65
- /**
66
- * @deprecated to be removed in version 20. Please use ParseError instead
67
- */
68
- export type DatepickerParseError = ParseError;
@@ -1,3 +0,0 @@
1
- import { type Observable } from 'rxjs';
2
- import type { ErrorMessages } from '../types';
3
- export declare function coerceToObservable(errorMessages: ErrorMessages | Observable<ErrorMessages>): Observable<ErrorMessages>;
@@ -1,2 +0,0 @@
1
- import type { ErrorTemplate } from '../types';
2
- export declare function distinctUntilErrorChanged<P extends ErrorTemplate>(prev: P, curr: P): boolean;
@@ -1,9 +0,0 @@
1
- import type { AbstractControl } from '@angular/forms';
2
- import type { INgxMatErrorDef } from '../ngx-mat-error-def.directive';
3
- import { ErrorMessages } from '../types';
4
- /**
5
- * Finds the error key or custom error for a control. The original function
6
- * has been modified
7
- * @returns INgxMatErrorDef | undefined
8
- */
9
- export declare function findErrorsForControl(control: AbstractControl, messages: ErrorMessages, customErrorMessages: readonly INgxMatErrorDef[]): string[] | INgxMatErrorDef;
@@ -1,3 +0,0 @@
1
- import { AbstractControl } from '@angular/forms';
2
- import type { NgxMatErrorControls } from '../types';
3
- export declare function getAbstractControls(controls: NgxMatErrorControls): AbstractControl[] | undefined;
@@ -1,3 +0,0 @@
1
- import type { AbstractControl } from '@angular/forms';
2
- import { type Observable } from 'rxjs';
3
- export declare function getControlWithError(controls: AbstractControl[]): Observable<AbstractControl | undefined>;