@solidev/data 0.10.0 → 1.0.0-beta.1

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,5 +1,5 @@
1
- import * as i0 from '@angular/core';
2
- import { InjectionToken, TransferState, NgZone, OnInit, ElementRef, EventEmitter, OnChanges, PipeTransform, SimpleChanges, OnDestroy, ApplicationRef } from '@angular/core';
1
+ import * as _angular_core from '@angular/core';
2
+ import { InjectionToken, TransferState, OnInit, ElementRef, PipeTransform, NgZone, EventEmitter, OnDestroy, ApplicationRef } from '@angular/core';
3
3
  import { ValidatorFn, FormControl, ValidationErrors, FormGroup, UntypedFormControl, UntypedFormGroup, ControlValueAccessor } from '@angular/forms';
4
4
  import * as _angular_common_http from '@angular/common/http';
5
5
  import { HttpClient, HttpInterceptor, HttpRequest, HttpHandler } from '@angular/common/http';
@@ -7,7 +7,7 @@ import * as rxjs from 'rxjs';
7
7
  import { Observable, ReplaySubject, Subject, Subscription } from 'rxjs';
8
8
  import { ActivatedRoute, Router, Route, RouterState, UrlSegment } from '@angular/router';
9
9
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
10
- import { NgbOffcanvas, NgbDropdown } from '@ng-bootstrap/ng-bootstrap';
10
+ import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';
11
11
  import { SwUpdate } from '@angular/service-worker';
12
12
 
13
13
  /**
@@ -206,8 +206,8 @@ declare class DataBackend {
206
206
  }): {
207
207
  [key: string]: string;
208
208
  };
209
- static ɵfac: i0.ɵɵFactoryDeclaration<DataBackend, [null, null, null, null, { optional: true; }]>;
210
- static ɵprov: i0.ɵɵInjectableDeclaration<DataBackend>;
209
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DataBackend, [null, null, null, null, { optional: true; }]>;
210
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<DataBackend>;
211
211
  }
212
212
 
213
213
  interface FilterData {
@@ -436,7 +436,11 @@ declare class DataModel {
436
436
  */
437
437
  protected static readonly __name: string;
438
438
  /**
439
- * Primary field; readonly; must be created and auto incremented on db side.
439
+ * Primary field; must be created and auto incremented on db side.
440
+ *
441
+ * Decorated once on the base class so every model inherits the `id`
442
+ * field metadata. Consumers must NOT re-declare `@primaryField() override id`
443
+ * (breaking change: id is now defined on DataModel — see useDefineForClassFields).
440
444
  */
441
445
  id: number;
442
446
  private readonly _F;
@@ -741,144 +745,6 @@ interface IFieldHeaderMessage {
741
745
  sort?: 'hide' | 'side' | 'click' | 'default';
742
746
  }
743
747
 
744
- interface IJwtResponseJson {
745
- access: string;
746
- refresh: string;
747
- }
748
- interface IJwtRefreshResponseJson {
749
- access: string;
750
- }
751
- interface IJwtBaseData {
752
- token_type: 'access' | 'refresh';
753
- user_id: number;
754
- }
755
- declare class Jwt<UserJwtData extends IJwtBaseData> {
756
- readonly access?: string;
757
- readonly refresh?: string;
758
- private readonly _data;
759
- constructor(response?: IJwtResponseJson);
760
- get data(): UserJwtData | null;
761
- toJson(): {
762
- access: string | undefined;
763
- refresh: string | undefined;
764
- };
765
- }
766
-
767
- declare const enum TYPE {
768
- SUCCESS = 0,
769
- INFO = 1,
770
- WARNING = 2,
771
- DANGER = 3
772
- }
773
- declare enum DEFAULT_TIMEOUTS {
774
- SUCCESS = 3000,
775
- INFO = 4000,
776
- WARNING = 10000,
777
- DANGER = 30000
778
- }
779
- declare enum STATUS {
780
- UNDISP = 0,
781
- DISP = 1,
782
- ACK = 2
783
- }
784
- interface ISoundTypes {
785
- [index: string]: string;
786
- }
787
- declare const DATA_MESSAGE_SOUNDS: InjectionToken<ISoundTypes>;
788
- declare class Message {
789
- title: string;
790
- type: TYPE;
791
- message: string;
792
- trace: any;
793
- ttl: number;
794
- status: string;
795
- showTrace: boolean;
796
- constructor(title: string, type?: TYPE, message?: string, trace?: any, ttl?: number);
797
- get style(): string;
798
- ack(): void;
799
- }
800
- declare class DataMessageService {
801
- ngZone: NgZone;
802
- sounds: ISoundTypes;
803
- _messages$: ReplaySubject<Message[]>;
804
- private _messages;
805
- private _timer;
806
- private _subscription;
807
- constructor(ngZone: NgZone, sounds: ISoundTypes);
808
- get current(): Observable<Message[]>;
809
- init(): void;
810
- close(): void;
811
- success(title: string, message?: string, trace?: any, timeout?: number): void;
812
- info(title: string, message?: string, trace?: any, timeout?: number): void;
813
- warning(title: string, message?: string, trace?: any, timeout?: number): void;
814
- danger(title: string, message?: string, trace?: any, timeout?: number): void;
815
- error(title: string, message?: string, trace?: any): void;
816
- debug(title: string, message?: string, trace?: any): void;
817
- ack(message: Message): void;
818
- play(type?: string): void;
819
- private _notify;
820
- static ɵfac: i0.ɵɵFactoryDeclaration<DataMessageService, [null, { optional: true; }]>;
821
- static ɵprov: i0.ɵɵInjectableDeclaration<DataMessageService>;
822
- }
823
-
824
- interface AuthParams {
825
- tokenUrl: string;
826
- tokenRefreshUrl: string;
827
- requestReactivateUrl?: string;
828
- processReactivateUrl?: string;
829
- requestPwResetUrl?: string;
830
- processPwResetUrl?: string;
831
- loginField: string;
832
- passwordField: string;
833
- tokenField: string;
834
- loginRoute: string[];
835
- logoutRoute: string[];
836
- pwresetRoute?: string[];
837
- reactivateRoute?: string[];
838
- userFetchFields?: string[];
839
- userFetchValiditySeconds?: number;
840
- }
841
- /**
842
- * DATA_API_URL: stores data api base url
843
- */
844
- declare const DATA_AUTH_PARAMS: InjectionToken<AuthParams>;
845
- declare const DATA_AUTH_USER_SERVICE: InjectionToken<Collection<any>>;
846
- declare class AuthServiceBase<User extends DataModel, UserService extends Collection<User>, UserData extends IJwtBaseData> {
847
- userService: UserService;
848
- private _params;
849
- private _router;
850
- private _http;
851
- private _msgs;
852
- logout$: Subject<void>;
853
- private _user;
854
- private _user$;
855
- private _token;
856
- private _fetched?;
857
- constructor(userService: UserService, _params: AuthParams, _router: Router, _http: HttpClient, _msgs: DataMessageService);
858
- get isAnonymous(): boolean;
859
- get accessToken(): string | null;
860
- get refreshToken(): string | null;
861
- get currentUser(): User | null;
862
- get currentUser$(): Observable<User | null>;
863
- get refreshUrl(): string;
864
- get loginUrl(): string;
865
- get loginRoute(): string[];
866
- get logoutRoute(): string[];
867
- get pwresetRoute(): string[] | undefined;
868
- get reactivateRoute(): string[] | undefined;
869
- logout(): void;
870
- autoLogin(): void;
871
- login(username: string, password: string): Observable<'success' | 'error' | 'invalid_token' | string>;
872
- loginWithToken(accessToken: string, refreshToken: string): Observable<'success' | 'error' | 'invalid_token' | string>;
873
- requestReactivate(username: string): Observable<boolean>;
874
- requestPwReset(username: string): Observable<boolean>;
875
- processReactivate(username: string, token: string): Observable<boolean>;
876
- processPwReset(username: string, password: string, token: string): Observable<boolean>;
877
- saveAuth(): void;
878
- refresh(): Observable<IJwtRefreshResponseJson | null>;
879
- private _fetchUser;
880
- }
881
-
882
748
  interface CustomField {
883
749
  name: string;
884
750
  label: string;
@@ -956,62 +822,60 @@ declare class ModelList<T extends DataModel> {
956
822
  start(params: ModelListParams): void;
957
823
  }
958
824
  declare class ModelListService {
959
- private _auth;
960
825
  private _instances;
961
- constructor(_auth: AuthServiceBase<any, any, any>);
826
+ private _auth;
827
+ constructor();
962
828
  reset(): void;
963
829
  get<T extends DataModel>(name: string, collection: Collection<T>, defaults: ModelListParams): ModelList<T>;
964
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListService, never>;
965
- static ɵprov: i0.ɵɵInjectableDeclaration<ModelListService>;
830
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModelListService, never>;
831
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<ModelListService>;
966
832
  }
967
833
 
968
834
  declare class ModelListFieldsSelectorComponent<T extends DataModel> implements OnInit {
969
- private _ofc;
970
- list: ModelList<T>;
835
+ list: _angular_core.InputSignal<ModelList<T>>;
971
836
  ofctpl: ElementRef<HTMLDivElement>;
972
837
  seeMore: boolean;
973
- constructor(_ofc: NgbOffcanvas);
838
+ private _ofc;
974
839
  ngOnInit(): void;
975
840
  open(): void;
976
841
  drop($event: CdkDragDrop<T, any>): void;
977
842
  toggle(f: ModelListField): void;
978
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListFieldsSelectorComponent<any>, never>;
979
- static ɵcmp: i0.ɵɵComponentDeclaration<ModelListFieldsSelectorComponent<any>, "data-model-list-fields-selector", never, { "list": { "alias": "list"; "required": false; }; }, {}, never, never, true, never>;
843
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModelListFieldsSelectorComponent<any>, never>;
844
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ModelListFieldsSelectorComponent<any>, "data-model-list-fields-selector", never, { "list": { "alias": "list"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
980
845
  }
981
846
 
982
847
  declare class ModelListFieldHeaderComponent<T extends DataModel> implements OnInit {
983
- list: ModelList<T>;
984
- field: string;
985
- sort?: boolean;
986
- sortField?: string;
987
- menuMode: 'hide' | 'side' | 'click';
988
- sortMode: 'hide' | 'side' | 'click';
989
- display?: boolean;
848
+ list: _angular_core.InputSignal<ModelList<T>>;
849
+ field: _angular_core.InputSignal<string>;
850
+ sort: _angular_core.InputSignal<boolean>;
851
+ sortField: _angular_core.InputSignal<string | undefined>;
852
+ menuMode: _angular_core.InputSignal<"hide" | "side" | "click">;
853
+ sortMode: _angular_core.InputSignal<"hide" | "side" | "click">;
854
+ display: _angular_core.ModelSignal<boolean | undefined>;
990
855
  mnu?: NgbDropdown;
991
- dispMenuMode: "hide" | "side" | "click";
992
- dispSortMode: "hide" | "side" | "click";
856
+ dispMenuMode: _angular_core.WritableSignal<"hide" | "side" | "click">;
857
+ dispSortMode: _angular_core.WritableSignal<"hide" | "side" | "click">;
993
858
  private destroy$;
994
- constructor();
995
859
  ngOnInit(): void;
996
860
  disable(): void;
997
861
  enable(f: ModelListField): void;
998
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListFieldHeaderComponent<any>, never>;
999
- static ɵcmp: i0.ɵɵComponentDeclaration<ModelListFieldHeaderComponent<any>, "data-model-list-field-header", never, { "list": { "alias": "list"; "required": false; }; "field": { "alias": "field"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "sortField": { "alias": "sortField"; "required": false; }; "menuMode": { "alias": "menuMode"; "required": false; }; "sortMode": { "alias": "sortMode"; "required": false; }; "display": { "alias": "display"; "required": false; }; }, {}, never, ["*"], true, never>;
862
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModelListFieldHeaderComponent<any>, never>;
863
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ModelListFieldHeaderComponent<any>, "data-model-list-field-header", never, { "list": { "alias": "list"; "required": true; "isSignal": true; }; "field": { "alias": "field"; "required": true; "isSignal": true; }; "sort": { "alias": "sort"; "required": false; "isSignal": true; }; "sortField": { "alias": "sortField"; "required": false; "isSignal": true; }; "menuMode": { "alias": "menuMode"; "required": false; "isSignal": true; }; "sortMode": { "alias": "sortMode"; "required": false; "isSignal": true; }; "display": { "alias": "display"; "required": false; "isSignal": true; }; }, { "display": "displayChange"; }, never, ["*"], true, never>;
1000
864
  }
1001
865
 
1002
866
  declare class ModelListSorterComponent {
1003
867
  /**
1004
868
  * ModelList reference.
1005
869
  */
1006
- list: i0.InputSignal<ModelList<any>>;
870
+ list: _angular_core.InputSignal<ModelList<any>>;
1007
871
  /**
1008
872
  * Sort field name.
1009
873
  */
1010
- field: i0.InputSignal<string>;
1011
- getCount: i0.WritableSignal<number>;
1012
- getOrder: i0.WritableSignal<number>;
1013
- isUp: i0.WritableSignal<boolean>;
1014
- isDown: i0.WritableSignal<boolean>;
874
+ field: _angular_core.InputSignal<string>;
875
+ getCount: _angular_core.WritableSignal<number>;
876
+ getOrder: _angular_core.WritableSignal<number>;
877
+ isUp: _angular_core.WritableSignal<boolean>;
878
+ isDown: _angular_core.WritableSignal<boolean>;
1015
879
  constructor();
1016
880
  setUp(): void;
1017
881
  update(): void;
@@ -1019,58 +883,56 @@ declare class ModelListSorterComponent {
1019
883
  cancel(): void;
1020
884
  private getIsDown;
1021
885
  private getIsUp;
1022
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListSorterComponent, never>;
1023
- static ɵcmp: i0.ɵɵComponentDeclaration<ModelListSorterComponent, "data-model-list-sorter", never, { "list": { "alias": "list"; "required": true; "isSignal": true; }; "field": { "alias": "field"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
886
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModelListSorterComponent, never>;
887
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ModelListSorterComponent, "data-model-list-sorter", never, { "list": { "alias": "list"; "required": true; "isSignal": true; }; "field": { "alias": "field"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
1024
888
  }
1025
889
 
1026
890
  declare class ModelListFiltersSelectComponent implements OnInit {
1027
- list: ModelList<any>;
1028
- containerClasses: string[] | string;
1029
- itemActiveClasses: string[] | string;
1030
- itemInactiveClasses: string[] | string;
1031
- mode: 'select' | 'badge' | 'badge_summary';
891
+ list: _angular_core.InputSignal<ModelList<any>>;
892
+ containerClasses: _angular_core.InputSignal<string | string[]>;
893
+ itemActiveClasses: _angular_core.InputSignal<string | string[]>;
894
+ itemInactiveClasses: _angular_core.InputSignal<string | string[]>;
895
+ mode: _angular_core.InputSignal<"select" | "badge" | "badge_summary">;
1032
896
  selectForm: FormControl<ModelListFilter | null>;
1033
897
  private destroy$;
1034
- constructor();
1035
898
  toggle(f: ModelListFilter): void;
1036
899
  ngOnInit(): void;
1037
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListFiltersSelectComponent, never>;
1038
- static ɵcmp: i0.ɵɵComponentDeclaration<ModelListFiltersSelectComponent, "data-model-list-filters-select", never, { "list": { "alias": "list"; "required": false; }; "containerClasses": { "alias": "containerClasses"; "required": false; }; "itemActiveClasses": { "alias": "itemActiveClasses"; "required": false; }; "itemInactiveClasses": { "alias": "itemInactiveClasses"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; }, {}, never, never, true, never>;
900
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModelListFiltersSelectComponent, never>;
901
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ModelListFiltersSelectComponent, "data-model-list-filters-select", never, { "list": { "alias": "list"; "required": true; "isSignal": true; }; "containerClasses": { "alias": "containerClasses"; "required": false; "isSignal": true; }; "itemActiveClasses": { "alias": "itemActiveClasses"; "required": false; "isSignal": true; }; "itemInactiveClasses": { "alias": "itemInactiveClasses"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1039
902
  }
1040
903
 
1041
904
  declare class ModelListFiltersComponent {
1042
- list: ModelList<any>;
1043
- containerClasses: string[] | string;
1044
- itemClasses: string[] | string;
1045
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListFiltersComponent, never>;
1046
- static ɵcmp: i0.ɵɵComponentDeclaration<ModelListFiltersComponent, "data-model-list-filters", never, { "list": { "alias": "list"; "required": false; }; "containerClasses": { "alias": "containerClasses"; "required": false; }; "itemClasses": { "alias": "itemClasses"; "required": false; }; }, {}, never, never, true, never>;
905
+ list: _angular_core.InputSignal<ModelList<any>>;
906
+ containerClasses: _angular_core.InputSignal<string | string[]>;
907
+ itemClasses: _angular_core.InputSignal<string | string[]>;
908
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModelListFiltersComponent, never>;
909
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ModelListFiltersComponent, "data-model-list-filters", never, { "list": { "alias": "list"; "required": true; "isSignal": true; }; "containerClasses": { "alias": "containerClasses"; "required": false; "isSignal": true; }; "itemClasses": { "alias": "itemClasses"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1047
910
  }
1048
911
 
1049
912
  type TplFun<T extends DataModel> = (data: T) => string;
1050
913
  declare class FkselectComponent<T extends DataModel, R extends DataModel> implements OnInit {
1051
- model?: T;
1052
- field?: string;
1053
- edit: boolean;
1054
- value?: R;
1055
- queryset?: Queryset<R>;
1056
- collection?: Collection<R>;
1057
- update: boolean;
1058
- filter: FilterData;
1059
- mode: 'autocomplete' | 'select' | 'auto';
1060
- display?: string | TplFun<R>;
1061
- search: string;
1062
- label: string;
1063
- placeholder: string;
1064
- inputClasses: string[] | string;
1065
- selected: EventEmitter<T>;
1066
- cancelled: EventEmitter<void>;
1067
- cleared: EventEmitter<void>;
914
+ model: _angular_core.InputSignal<T | undefined>;
915
+ field: _angular_core.InputSignal<string | undefined>;
916
+ edit: _angular_core.InputSignal<boolean>;
917
+ value: _angular_core.InputSignal<R | undefined>;
918
+ queryset: _angular_core.ModelSignal<Queryset<R> | undefined>;
919
+ collection: _angular_core.ModelSignal<Collection<R> | undefined>;
920
+ update: _angular_core.InputSignal<boolean>;
921
+ filter: _angular_core.InputSignal<FilterData>;
922
+ mode: _angular_core.InputSignal<"select" | "autocomplete" | "auto">;
923
+ display: _angular_core.InputSignal<string | TplFun<R> | undefined>;
924
+ search: _angular_core.InputSignal<string>;
925
+ label: _angular_core.InputSignal<string>;
926
+ placeholder: _angular_core.InputSignal<string>;
927
+ inputClasses: _angular_core.InputSignal<string | string[]>;
928
+ selected: _angular_core.OutputEmitterRef<T>;
929
+ cancelled: _angular_core.OutputEmitterRef<void>;
930
+ cleared: _angular_core.OutputEmitterRef<void>;
1068
931
  fc: UntypedFormControl;
1069
932
  searchFn: (text$: Observable<string>) => Observable<any>;
1070
933
  displayFn: (x: any) => any;
1071
934
  private _tpl;
1072
935
  private destroy$;
1073
- constructor();
1074
936
  ngOnInit(): void;
1075
937
  clearAction(): void;
1076
938
  /**
@@ -1078,8 +940,8 @@ declare class FkselectComponent<T extends DataModel, R extends DataModel> implem
1078
940
  */
1079
941
  private _display;
1080
942
  private _search;
1081
- static ɵfac: i0.ɵɵFactoryDeclaration<FkselectComponent<any, any>, never>;
1082
- static ɵcmp: i0.ɵɵComponentDeclaration<FkselectComponent<any, any>, "data-fkselect", never, { "model": { "alias": "model"; "required": false; }; "field": { "alias": "field"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; "value": { "alias": "value"; "required": false; }; "queryset": { "alias": "queryset"; "required": false; }; "collection": { "alias": "collection"; "required": false; }; "update": { "alias": "update"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "display": { "alias": "display"; "required": false; }; "search": { "alias": "search"; "required": false; }; "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "inputClasses": { "alias": "inputClasses"; "required": false; }; }, { "selected": "selected"; "cancelled": "cancelled"; "cleared": "cleared"; }, never, never, true, never>;
943
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FkselectComponent<any, any>, never>;
944
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FkselectComponent<any, any>, "data-fkselect", never, { "model": { "alias": "model"; "required": false; "isSignal": true; }; "field": { "alias": "field"; "required": false; "isSignal": true; }; "edit": { "alias": "edit"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "queryset": { "alias": "queryset"; "required": false; "isSignal": true; }; "collection": { "alias": "collection"; "required": false; "isSignal": true; }; "update": { "alias": "update"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "display": { "alias": "display"; "required": false; "isSignal": true; }; "search": { "alias": "search"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "inputClasses": { "alias": "inputClasses"; "required": false; "isSignal": true; }; }, { "queryset": "querysetChange"; "collection": "collectionChange"; "selected": "selected"; "cancelled": "cancelled"; "cleared": "cleared"; }, never, never, true, never>;
1083
945
  }
1084
946
 
1085
947
  interface ModelListAutocompleteParams<T extends DataModel> extends ModelListFilterParams {
@@ -1186,7 +1048,6 @@ interface ModelListMultiSelectFilterParams<T extends DataModel> extends ModelLis
1186
1048
  }
1187
1049
  declare class ModelListSelectMultiFilter<T extends DataModel> extends ModelListSelectFilter<T> {
1188
1050
  multi: boolean;
1189
- default?: IDispEditChoice[];
1190
1051
  constructor(params: ModelListMultiSelectFilterParams<T>);
1191
1052
  }
1192
1053
 
@@ -1235,87 +1096,81 @@ declare class BanAdapter {
1235
1096
  search(text: string): Observable<GeoSearchResult[]>;
1236
1097
  }
1237
1098
 
1238
- declare class ModelListPaginatorComponent<T extends DataModel> implements OnChanges {
1239
- list: ModelList<T>;
1240
- maxPages: number;
1241
- hide: boolean;
1099
+ declare class ModelListPaginatorComponent<T extends DataModel> implements OnInit {
1100
+ list: _angular_core.InputSignal<ModelList<T>>;
1101
+ maxPages: _angular_core.InputSignal<number>;
1102
+ hide: _angular_core.InputSignal<boolean>;
1242
1103
  perPageControl: FormControl;
1243
1104
  showDirectAccess: boolean;
1244
1105
  directAccess: FormControl;
1245
- curPage: number;
1246
- curCount: number;
1247
- pageSize: number;
1106
+ curPage: _angular_core.WritableSignal<number>;
1107
+ curCount: _angular_core.WritableSignal<number>;
1108
+ pageSize: _angular_core.WritableSignal<number>;
1248
1109
  private destroy$;
1249
1110
  onPageChange(page: number): void;
1250
- ngOnChanges(): void;
1251
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListPaginatorComponent<any>, never>;
1252
- static ɵcmp: i0.ɵɵComponentDeclaration<ModelListPaginatorComponent<any>, "data-model-list-paginator", never, { "list": { "alias": "list"; "required": false; }; "maxPages": { "alias": "maxPages"; "required": false; }; "hide": { "alias": "hide"; "required": false; }; }, {}, never, never, true, never>;
1111
+ ngOnInit(): void;
1112
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModelListPaginatorComponent<any>, never>;
1113
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ModelListPaginatorComponent<any>, "data-model-list-paginator", never, { "list": { "alias": "list"; "required": true; "isSignal": true; }; "maxPages": { "alias": "maxPages"; "required": false; "isSignal": true; }; "hide": { "alias": "hide"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1253
1114
  }
1254
1115
 
1255
1116
  declare class ChoicePipe<T extends DataModel> implements PipeTransform {
1256
1117
  transform(value: T, field: string, mode?: 'code' | 'desc' | 'both'): string;
1257
- static ɵfac: i0.ɵɵFactoryDeclaration<ChoicePipe<any>, never>;
1258
- static ɵpipe: i0.ɵɵPipeDeclaration<ChoicePipe<any>, "choice", true>;
1118
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ChoicePipe<any>, never>;
1119
+ static ɵpipe: _angular_core.ɵɵPipeDeclaration<ChoicePipe<any>, "choice", true>;
1259
1120
  }
1260
1121
  declare class PChoicePipe<T extends DataModel> implements PipeTransform {
1261
1122
  transform(value: any, model: T, field: string, mode?: 'code' | 'desc' | 'both'): string;
1262
- static ɵfac: i0.ɵɵFactoryDeclaration<PChoicePipe<any>, never>;
1263
- static ɵpipe: i0.ɵɵPipeDeclaration<PChoicePipe<any>, "pchoice", true>;
1123
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PChoicePipe<any>, never>;
1124
+ static ɵpipe: _angular_core.ɵɵPipeDeclaration<PChoicePipe<any>, "pchoice", true>;
1264
1125
  }
1265
1126
 
1266
1127
  declare function isValue(value: number | string | null | undefined): value is number | string;
1267
1128
  declare function strToNumber(value: number | string): number;
1268
1129
  declare class FactorPipe<T extends DataModel> implements PipeTransform {
1269
1130
  private _locale;
1270
- constructor(_locale: string);
1271
1131
  transform(value: T | null, field: string, digitsInfo?: string, locale?: string): string | null;
1272
- static ɵfac: i0.ɵɵFactoryDeclaration<FactorPipe<any>, never>;
1273
- static ɵpipe: i0.ɵɵPipeDeclaration<FactorPipe<any>, "factor", true>;
1132
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FactorPipe<any>, never>;
1133
+ static ɵpipe: _angular_core.ɵɵPipeDeclaration<FactorPipe<any>, "factor", true>;
1274
1134
  }
1275
1135
  declare class PFactorPipe<T extends DataModel> implements PipeTransform {
1276
1136
  private _locale;
1277
- constructor(_locale: string);
1278
1137
  transform(value: number | string | null | undefined, model: T | null, field: string, digitsInfo?: string, locale?: string): string | null;
1279
- static ɵfac: i0.ɵɵFactoryDeclaration<PFactorPipe<any>, never>;
1280
- static ɵpipe: i0.ɵɵPipeDeclaration<PFactorPipe<any>, "pfactor", true>;
1138
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PFactorPipe<any>, never>;
1139
+ static ɵpipe: _angular_core.ɵɵPipeDeclaration<PFactorPipe<any>, "pfactor", true>;
1281
1140
  }
1282
1141
 
1283
1142
  declare class FactorcPipe<T extends DataModel> implements PipeTransform {
1284
1143
  private _locale;
1285
1144
  private _defaultCurrencyCode;
1286
- constructor(_locale: string, _defaultCurrencyCode?: string);
1287
1145
  transform(value: T | null, field: string, currencyCode?: string, display?: 'code' | 'symbol' | 'symbol-narrow' | string, digitsInfo?: string, locale?: string): string | null;
1288
- static ɵfac: i0.ɵɵFactoryDeclaration<FactorcPipe<any>, never>;
1289
- static ɵpipe: i0.ɵɵPipeDeclaration<FactorcPipe<any>, "factorc", true>;
1146
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FactorcPipe<any>, never>;
1147
+ static ɵpipe: _angular_core.ɵɵPipeDeclaration<FactorcPipe<any>, "factorc", true>;
1290
1148
  }
1291
1149
  declare class PFactorcPipe<T extends DataModel> implements PipeTransform {
1292
1150
  private _locale;
1293
1151
  private _defaultCurrencyCode;
1294
- constructor(_locale: string, _defaultCurrencyCode?: string);
1295
1152
  transform(value: number | string | undefined | null, model: T | null, field: string, currencyCode?: string, display?: 'code' | 'symbol' | 'symbol-narrow' | string, digitsInfo?: string, locale?: string): string | null;
1296
- static ɵfac: i0.ɵɵFactoryDeclaration<PFactorcPipe<any>, never>;
1297
- static ɵpipe: i0.ɵɵPipeDeclaration<PFactorcPipe<any>, "pfactorc", true>;
1153
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PFactorcPipe<any>, never>;
1154
+ static ɵpipe: _angular_core.ɵɵPipeDeclaration<PFactorcPipe<any>, "pfactorc", true>;
1298
1155
  }
1299
1156
 
1300
- declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> implements OnInit, OnChanges {
1301
- dconf: DataDisplayConfig;
1302
- private _msgs;
1157
+ declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> {
1303
1158
  /** Model (mandatory) */
1304
- model: T;
1159
+ model: _angular_core.InputSignal<T>;
1305
1160
  /** Field (mandatory) */
1306
- field: string;
1161
+ field: _angular_core.InputSignal<string>;
1307
1162
  /** External form */
1308
- form?: UntypedFormGroup;
1163
+ form: _angular_core.InputSignal<UntypedFormGroup | undefined>;
1309
1164
  /**
1310
1165
  * Starting edit mode
1311
1166
  * If mode is inline, edit is always true.
1312
1167
  */
1313
- edit: boolean;
1168
+ edit: _angular_core.ModelSignal<boolean>;
1314
1169
  /**
1315
1170
  * Can be switched to edit mode?
1316
1171
  * default : true
1317
1172
  */
1318
- editable: boolean;
1173
+ editable: _angular_core.InputSignal<boolean>;
1319
1174
  /**
1320
1175
  * Save updated values ?
1321
1176
  * If not given, default value depends on mode :
@@ -1328,90 +1183,95 @@ declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> im
1328
1183
  * - dd provides display / edit within a dt/dd block
1329
1184
  * - inline (to be renamed to form) provides a (label? and) form control
1330
1185
  * */
1331
- mode: 'dd' | 'inline' | 'form';
1186
+ mode: _angular_core.InputSignal<"inline" | "dd" | "form">;
1332
1187
  /**
1333
1188
  * Custom choices
1334
1189
  * If provided, a select form control will be used instead of base editor
1335
1190
  */
1336
- choices: IDispEditChoice[];
1191
+ choices: _angular_core.InputSignal<IDispEditChoice[]>;
1337
1192
  /** Custom input classes */
1338
- inputClasses: string[] | string;
1193
+ inputClasses: _angular_core.ModelSignal<string | string[] | undefined>;
1339
1194
  /** Override editor, if provided */
1340
- editor?: DISPEDIT_EDITOR_TYPES;
1195
+ editor: _angular_core.InputSignal<DISPEDIT_EDITOR_TYPES | undefined>;
1341
1196
  /** Override viewer, if provided */
1342
- viewer?: DISPEDIT_DISPLAY_TYPES;
1197
+ viewer: _angular_core.ModelSignal<DISPEDIT_DISPLAY_TYPES | undefined>;
1343
1198
  /** Override default value */
1344
- default?: any;
1199
+ default: _angular_core.InputSignal<any>;
1345
1200
  /**
1346
1201
  * Override placeholder, if provided.
1347
1202
  * By default, manager.description is used
1348
1203
  */
1349
- placeholder: string;
1204
+ placeholder: _angular_core.InputSignal<string>;
1350
1205
  /**
1351
1206
  * Override help, if provided.
1352
1207
  * By default, manager.help is used.
1353
1208
  */
1354
- help: string;
1209
+ help: _angular_core.InputSignal<string>;
1355
1210
  /**
1356
1211
  * Hide label (for inline forms)
1357
1212
  */
1358
- hideLabel: boolean;
1213
+ hideLabel: _angular_core.InputSignal<boolean>;
1359
1214
  /** Fk queryset */
1360
- queryset?: Queryset<R>;
1215
+ queryset: _angular_core.InputSignal<Queryset<R> | undefined>;
1361
1216
  /** Fk collection */
1362
- collection?: Collection<R>;
1217
+ collection: _angular_core.InputSignal<Collection<R> | undefined>;
1363
1218
  /** Fk display */
1364
- display?: string | TplFun<R>;
1219
+ display: _angular_core.InputSignal<string | TplFun<R> | undefined>;
1365
1220
  /** Fk filter */
1366
- filter: FilterData;
1221
+ filter: _angular_core.InputSignal<FilterData>;
1367
1222
  /** Output emitter, output model on every change */
1368
- changed: EventEmitter<T>;
1223
+ changed: _angular_core.OutputEmitterRef<T>;
1369
1224
  /** Field manager */
1370
- manager?: BaseFieldManager<FT>;
1225
+ manager: _angular_core.WritableSignal<BaseFieldManager<FT> | undefined>;
1371
1226
  /** Text value used for display */
1372
- txtValue?: string;
1227
+ txtValue: _angular_core.WritableSignal<string | undefined>;
1373
1228
  /** Text values used for many displays */
1374
- txtValues?: string[];
1229
+ txtValues: _angular_core.WritableSignal<string[] | undefined>;
1375
1230
  /** Computed editor type */
1376
- realEditor: DISPEDIT_EDITOR_TYPES;
1231
+ realEditor: _angular_core.WritableSignal<DISPEDIT_EDITOR_TYPES>;
1377
1232
  /** Computed display type */
1378
- realDisplay: DISPEDIT_DISPLAY_TYPES;
1233
+ realDisplay: _angular_core.WritableSignal<DISPEDIT_DISPLAY_TYPES>;
1379
1234
  /** Current disp raw value */
1380
- dispValue?: any;
1381
- /** Computed chocies type */
1382
- realChoices?: IDispEditChoice[];
1235
+ dispValue: _angular_core.WritableSignal<any>;
1236
+ /** Computed choices type */
1237
+ realChoices: _angular_core.WritableSignal<IDispEditChoice[] | undefined>;
1383
1238
  /** Computed help */
1384
- realHelp: string;
1239
+ realHelp: _angular_core.WritableSignal<string>;
1385
1240
  /** Computed placeholder */
1386
- realPlaceholder: string;
1241
+ realPlaceholder: _angular_core.WritableSignal<string>;
1387
1242
  /** Computed required */
1388
- required: boolean;
1243
+ required: _angular_core.WritableSignal<boolean>;
1389
1244
  /** Computed default value */
1390
- realDefault: any;
1245
+ realDefault: _angular_core.WritableSignal<any>;
1391
1246
  m2mValues?: any[];
1392
- fg?: UntypedFormGroup;
1247
+ fg: _angular_core.WritableSignal<UntypedFormGroup | undefined>;
1393
1248
  private _tpl;
1249
+ private _destroyRef;
1394
1250
  /**
1395
- * Constructor, can be given DATA_DISPLAY_CONFIG injection token to override display classes.
1396
- * By default, bs5 config is used
1397
- * @param dconf DataDisplayConfig item
1398
- * @param _msgs messages service
1251
+ * Display config, overridable via the DATA_DISPLAY_CONFIG injection token.
1252
+ * By default, bs5 config is used.
1399
1253
  */
1400
- constructor(dconf: DataDisplayConfig, _msgs: DataMessageService);
1254
+ dconf: DataDisplayConfig;
1255
+ private _msgs;
1401
1256
  /**
1402
- * Init sequence.
1403
- * - Sets mode
1404
- * - Sets display function
1405
- * - Loads manager
1406
- * - Run misc checks on special values
1407
- * - Get help, placeholder strings
1257
+ * Recompute all derived values / edit mode on any (trigger) input change.
1258
+ *
1259
+ * Only the read-only inputs are tracked here: the internally-mutated
1260
+ * `edit` / `viewer` / `inputClasses` models and the computed display
1261
+ * signals are read/written inside the recompute (via `untracked`) so their
1262
+ * internal writes don't re-trigger this effect (which would recreate the
1263
+ * form control on every write).
1408
1264
  */
1409
- ngOnInit(): void;
1265
+ private _recomputeEffect;
1410
1266
  /**
1411
1267
  * Upgrade all values on any change.
1412
- * @param changes
1268
+ * - Sets display function
1269
+ * - Loads manager
1270
+ * - Runs misc checks on special values
1271
+ * - Gets help, placeholder strings
1272
+ * - Enables display or edit mode
1413
1273
  */
1414
- ngOnChanges(changes: SimpleChanges): void;
1274
+ private _recompute;
1415
1275
  /**
1416
1276
  * Set up display mode.
1417
1277
  * - get choices if available
@@ -1451,11 +1311,6 @@ declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> im
1451
1311
  */
1452
1312
  private _save;
1453
1313
  private _display;
1454
- /**
1455
- * Set display mode based on current display config
1456
- * @private
1457
- */
1458
- private _setMode;
1459
1314
  private _setDisplayFn;
1460
1315
  private _getChoices;
1461
1316
  private _getRealDisplay;
@@ -1465,33 +1320,33 @@ declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> im
1465
1320
  private _setEditorClasses;
1466
1321
  private _getDisplayValue;
1467
1322
  private _setDisplayClasses;
1468
- static ɵfac: i0.ɵɵFactoryDeclaration<DispeditComponent<any, any, any>, [{ optional: true; }, null]>;
1469
- static ɵcmp: i0.ɵɵComponentDeclaration<DispeditComponent<any, any, any>, "data-dispedit", never, { "model": { "alias": "model"; "required": false; }; "field": { "alias": "field"; "required": false; }; "form": { "alias": "form"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "choices": { "alias": "choices"; "required": false; }; "inputClasses": { "alias": "inputClasses"; "required": false; }; "editor": { "alias": "editor"; "required": false; }; "viewer": { "alias": "viewer"; "required": false; }; "default": { "alias": "default"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "help": { "alias": "help"; "required": false; }; "hideLabel": { "alias": "hideLabel"; "required": false; }; "queryset": { "alias": "queryset"; "required": false; }; "collection": { "alias": "collection"; "required": false; }; "display": { "alias": "display"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; }, { "changed": "changed"; }, never, ["*"], true, never>;
1323
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DispeditComponent<any, any, any>, never>;
1324
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DispeditComponent<any, any, any>, "data-dispedit", never, { "model": { "alias": "model"; "required": true; "isSignal": true; }; "field": { "alias": "field"; "required": true; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; "edit": { "alias": "edit"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "choices": { "alias": "choices"; "required": false; "isSignal": true; }; "inputClasses": { "alias": "inputClasses"; "required": false; "isSignal": true; }; "editor": { "alias": "editor"; "required": false; "isSignal": true; }; "viewer": { "alias": "viewer"; "required": false; "isSignal": true; }; "default": { "alias": "default"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "help": { "alias": "help"; "required": false; "isSignal": true; }; "hideLabel": { "alias": "hideLabel"; "required": false; "isSignal": true; }; "queryset": { "alias": "queryset"; "required": false; "isSignal": true; }; "collection": { "alias": "collection"; "required": false; "isSignal": true; }; "display": { "alias": "display"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; }, { "edit": "editChange"; "inputClasses": "inputClassesChange"; "viewer": "viewerChange"; "changed": "changed"; }, never, ["*"], true, never>;
1470
1325
  }
1471
1326
 
1472
1327
  declare class M2mselectComponent<T extends DataModel, R extends DataModel> implements OnInit, ControlValueAccessor {
1473
- model?: T;
1474
- field?: string;
1475
- edit: boolean;
1476
- values: R[];
1328
+ model: _angular_core.InputSignal<T | undefined>;
1329
+ field: _angular_core.InputSignal<string | undefined>;
1330
+ edit: _angular_core.InputSignal<boolean>;
1331
+ values: _angular_core.ModelSignal<R[] | undefined>;
1477
1332
  pks: number[];
1478
1333
  disabled: boolean;
1479
- queryset?: Queryset<R>;
1480
- collection?: Collection<R>;
1481
- filter: FilterData;
1482
- mode: 'autocomplete' | 'select' | 'auto';
1483
- display?: string | TplFun<R>;
1484
- search: string;
1485
- label: string;
1486
- placeholder: string;
1487
- emptyLabel: string;
1488
- inputClasses: string[] | string;
1489
- added: EventEmitter<R>;
1490
- removed: EventEmitter<R>;
1491
- cancelled: EventEmitter<void>;
1492
- cleared: EventEmitter<void>;
1493
- detailsChanged: EventEmitter<R[]>;
1494
- changed: EventEmitter<number[]>;
1334
+ queryset: _angular_core.ModelSignal<Queryset<R> | undefined>;
1335
+ collection: _angular_core.ModelSignal<Collection<R> | undefined>;
1336
+ filter: _angular_core.InputSignal<FilterData>;
1337
+ mode: _angular_core.InputSignal<"select" | "autocomplete" | "auto">;
1338
+ display: _angular_core.InputSignal<string | TplFun<R> | undefined>;
1339
+ search: _angular_core.InputSignal<string>;
1340
+ label: _angular_core.InputSignal<string>;
1341
+ placeholder: _angular_core.InputSignal<string>;
1342
+ emptyLabel: _angular_core.InputSignal<string>;
1343
+ inputClasses: _angular_core.InputSignal<string | string[]>;
1344
+ added: _angular_core.OutputEmitterRef<R>;
1345
+ removed: _angular_core.OutputEmitterRef<R>;
1346
+ cancelled: _angular_core.OutputEmitterRef<void>;
1347
+ cleared: _angular_core.OutputEmitterRef<void>;
1348
+ detailsChanged: _angular_core.OutputEmitterRef<R[]>;
1349
+ changed: _angular_core.OutputEmitterRef<number[]>;
1495
1350
  fc: UntypedFormControl;
1496
1351
  searchFn: (text$: Observable<string>) => Observable<any>;
1497
1352
  displayFn: (x: any) => any;
@@ -1574,8 +1429,8 @@ declare class M2mselectComponent<T extends DataModel, R extends DataModel> imple
1574
1429
  * @private
1575
1430
  */
1576
1431
  private _search;
1577
- static ɵfac: i0.ɵɵFactoryDeclaration<M2mselectComponent<any, any>, never>;
1578
- static ɵcmp: i0.ɵɵComponentDeclaration<M2mselectComponent<any, any>, "data-m2mselect", never, { "model": { "alias": "model"; "required": false; }; "field": { "alias": "field"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; "values": { "alias": "values"; "required": false; }; "queryset": { "alias": "queryset"; "required": false; }; "collection": { "alias": "collection"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "display": { "alias": "display"; "required": false; }; "search": { "alias": "search"; "required": false; }; "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "emptyLabel": { "alias": "emptyLabel"; "required": false; }; "inputClasses": { "alias": "inputClasses"; "required": false; }; }, { "added": "added"; "removed": "removed"; "cancelled": "cancelled"; "cleared": "cleared"; "detailsChanged": "detailsChanged"; "changed": "changed"; }, never, never, true, never>;
1432
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<M2mselectComponent<any, any>, never>;
1433
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<M2mselectComponent<any, any>, "data-m2mselect", never, { "model": { "alias": "model"; "required": false; "isSignal": true; }; "field": { "alias": "field"; "required": false; "isSignal": true; }; "edit": { "alias": "edit"; "required": false; "isSignal": true; }; "values": { "alias": "values"; "required": false; "isSignal": true; }; "queryset": { "alias": "queryset"; "required": false; "isSignal": true; }; "collection": { "alias": "collection"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "display": { "alias": "display"; "required": false; "isSignal": true; }; "search": { "alias": "search"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "emptyLabel": { "alias": "emptyLabel"; "required": false; "isSignal": true; }; "inputClasses": { "alias": "inputClasses"; "required": false; "isSignal": true; }; }, { "values": "valuesChange"; "queryset": "querysetChange"; "collection": "collectionChange"; "added": "added"; "removed": "removed"; "cancelled": "cancelled"; "cleared": "cleared"; "detailsChanged": "detailsChanged"; "changed": "changed"; }, never, never, true, never>;
1579
1434
  }
1580
1435
 
1581
1436
  interface IFlagItem {
@@ -1583,24 +1438,23 @@ interface IFlagItem {
1583
1438
  count: number;
1584
1439
  }
1585
1440
  declare class FlagsComponent<T extends DataModel> implements OnInit {
1586
- private _msg;
1587
- model: T;
1588
- field: string;
1589
- get_flags_endpoint: string;
1590
- edit: boolean;
1591
- editable: boolean;
1592
- flags: Observable<IFlagItem[]>;
1593
- free: boolean;
1594
- create: boolean;
1595
- action: boolean;
1441
+ model: _angular_core.InputSignal<T>;
1442
+ field: _angular_core.InputSignal<string>;
1443
+ get_flags_endpoint: _angular_core.InputSignal<string>;
1444
+ edit: _angular_core.ModelSignal<boolean>;
1445
+ editable: _angular_core.InputSignal<boolean>;
1446
+ flags: _angular_core.ModelSignal<Observable<IFlagItem[]> | undefined>;
1447
+ free: _angular_core.InputSignal<boolean>;
1448
+ create: _angular_core.InputSignal<boolean>;
1449
+ action: _angular_core.InputSignal<boolean>;
1596
1450
  ft: FormControl;
1597
1451
  fs: FormControl;
1598
- curflags: string[];
1452
+ curflags: _angular_core.WritableSignal<string[]>;
1599
1453
  txtflag: string;
1600
1454
  selflag: string;
1601
- flaglist: IFlagItem[];
1455
+ flaglist: _angular_core.WritableSignal<IFlagItem[]>;
1602
1456
  private destroy$;
1603
- constructor(_msg: DataMessageService);
1457
+ private _msg;
1604
1458
  ngOnInit(): Promise<any>;
1605
1459
  addFreeFlag(): Promise<any>;
1606
1460
  addFlag(flag: string): Promise<any>;
@@ -1608,8 +1462,8 @@ declare class FlagsComponent<T extends DataModel> implements OnInit {
1608
1462
  flagPresent(flag: string): boolean;
1609
1463
  removeFlag(flag: string): Promise<any>;
1610
1464
  toggleEdit(): Promise<void>;
1611
- static ɵfac: i0.ɵɵFactoryDeclaration<FlagsComponent<any>, never>;
1612
- static ɵcmp: i0.ɵɵComponentDeclaration<FlagsComponent<any>, "data-flags", never, { "model": { "alias": "model"; "required": false; }; "field": { "alias": "field"; "required": false; }; "get_flags_endpoint": { "alias": "get_flags_endpoint"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "flags": { "alias": "flags"; "required": false; }; "free": { "alias": "free"; "required": false; }; "create": { "alias": "create"; "required": false; }; "action": { "alias": "action"; "required": false; }; }, {}, never, ["*"], true, never>;
1465
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FlagsComponent<any>, never>;
1466
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FlagsComponent<any>, "data-flags", never, { "model": { "alias": "model"; "required": true; "isSignal": true; }; "field": { "alias": "field"; "required": false; "isSignal": true; }; "get_flags_endpoint": { "alias": "get_flags_endpoint"; "required": false; "isSignal": true; }; "edit": { "alias": "edit"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "flags": { "alias": "flags"; "required": false; "isSignal": true; }; "free": { "alias": "free"; "required": false; "isSignal": true; }; "create": { "alias": "create"; "required": false; "isSignal": true; }; "action": { "alias": "action"; "required": false; "isSignal": true; }; }, { "edit": "editChange"; "flags": "flagsChange"; }, never, ["*"], true, never>;
1613
1467
  }
1614
1468
 
1615
1469
  interface FakeDeleteResult {
@@ -1617,27 +1471,25 @@ interface FakeDeleteResult {
1617
1471
  details: [string, number][];
1618
1472
  }
1619
1473
  declare class SafeDeleteComponent<T extends DataModel> {
1620
- private _ofc;
1621
- private _msgs;
1622
1474
  /** Model instance to be deleted */
1623
- model: T;
1475
+ model: _angular_core.InputSignal<T>;
1624
1476
  /** Service to be used for deletion, taken from model if not provided */
1625
- service?: Collection<T>;
1477
+ service: _angular_core.InputSignal<Collection<T> | undefined>;
1626
1478
  /** Function to be called for deletion, overrides service deletion */
1627
- actionFn?: (model: T) => Promise<{
1479
+ actionFn: _angular_core.InputSignal<((model: T) => Promise<{
1628
1480
  success: boolean;
1629
- }>;
1481
+ }>) | undefined>;
1630
1482
  /** Translations of database objects names to human names */
1631
- checks: {
1483
+ checks: _angular_core.InputSignal<{
1632
1484
  [index: string]: string;
1633
- };
1485
+ }>;
1634
1486
  /** Messages to be displayed on success or error, default messages are used if not provided */
1635
- messages: {
1487
+ messages: _angular_core.InputSignal<{
1636
1488
  success?: string;
1637
1489
  error?: string;
1638
- };
1490
+ }>;
1639
1491
  /** Event emitted on successful deletion */
1640
- deleted: EventEmitter<FakeDeleteResult>;
1492
+ deleted: _angular_core.OutputEmitterRef<FakeDeleteResult>;
1641
1493
  /** Display mode, default is button.
1642
1494
  *
1643
1495
  * - `fbutton`: floating button (small)
@@ -1645,15 +1497,16 @@ declare class SafeDeleteComponent<T extends DataModel> {
1645
1497
  * - `icon`: icon
1646
1498
  * - `custom`: custom : ng-content is surrounded by a clickable div
1647
1499
  * */
1648
- display: 'fbutton' | 'button' | 'icon' | 'custom';
1649
- result?: FakeDeleteResult;
1500
+ display: _angular_core.InputSignal<"fbutton" | "button" | "icon" | "custom">;
1501
+ result: _angular_core.WritableSignal<FakeDeleteResult | undefined>;
1650
1502
  private _dialogRef?;
1651
1503
  private ofc?;
1652
- constructor(_ofc: NgbOffcanvas, _msgs: DataMessageService);
1504
+ private _ofc;
1505
+ private _msgs;
1653
1506
  checkDelete(model: DataModel): Promise<void>;
1654
1507
  reallyDelete(): Promise<void>;
1655
- static ɵfac: i0.ɵɵFactoryDeclaration<SafeDeleteComponent<any>, never>;
1656
- static ɵcmp: i0.ɵɵComponentDeclaration<SafeDeleteComponent<any>, "data-safe-delete", never, { "model": { "alias": "model"; "required": false; }; "service": { "alias": "service"; "required": false; }; "actionFn": { "alias": "actionFn"; "required": false; }; "checks": { "alias": "checks"; "required": false; }; "messages": { "alias": "messages"; "required": false; }; "display": { "alias": "display"; "required": false; }; }, { "deleted": "deleted"; }, never, ["*"], true, never>;
1508
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SafeDeleteComponent<any>, never>;
1509
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SafeDeleteComponent<any>, "data-safe-delete", never, { "model": { "alias": "model"; "required": true; "isSignal": true; }; "service": { "alias": "service"; "required": false; "isSignal": true; }; "actionFn": { "alias": "actionFn"; "required": false; "isSignal": true; }; "checks": { "alias": "checks"; "required": false; "isSignal": true; }; "messages": { "alias": "messages"; "required": false; "isSignal": true; }; "display": { "alias": "display"; "required": false; "isSignal": true; }; }, { "deleted": "deleted"; }, never, ["*"], true, never>;
1657
1510
  }
1658
1511
 
1659
1512
  interface ICharFieldDescChoice {
@@ -1745,15 +1598,71 @@ interface IComputedFieldMetadata<T> extends IFieldMetadata<T> {
1745
1598
  }
1746
1599
  declare const computedField: (meta?: IComputedFieldMetadata<any>) => FieldDecoratorFn;
1747
1600
 
1601
+ declare const enum TYPE {
1602
+ SUCCESS = 0,
1603
+ INFO = 1,
1604
+ WARNING = 2,
1605
+ DANGER = 3
1606
+ }
1607
+ declare enum DEFAULT_TIMEOUTS {
1608
+ SUCCESS = 3000,
1609
+ INFO = 4000,
1610
+ WARNING = 10000,
1611
+ DANGER = 30000
1612
+ }
1613
+ declare enum STATUS {
1614
+ UNDISP = 0,
1615
+ DISP = 1,
1616
+ ACK = 2
1617
+ }
1618
+ interface ISoundTypes {
1619
+ [index: string]: string;
1620
+ }
1621
+ declare const DATA_MESSAGE_SOUNDS: InjectionToken<ISoundTypes>;
1622
+ declare class Message {
1623
+ title: string;
1624
+ type: TYPE;
1625
+ message: string;
1626
+ trace: any;
1627
+ ttl: number;
1628
+ status: string;
1629
+ showTrace: boolean;
1630
+ constructor(title: string, type?: TYPE, message?: string, trace?: any, ttl?: number);
1631
+ get style(): string;
1632
+ ack(): void;
1633
+ }
1634
+ declare class DataMessageService {
1635
+ ngZone: NgZone;
1636
+ sounds: ISoundTypes | null;
1637
+ _messages$: ReplaySubject<Message[]>;
1638
+ private _messages;
1639
+ private _timer;
1640
+ private _subscription;
1641
+ constructor();
1642
+ get current(): Observable<Message[]>;
1643
+ init(): void;
1644
+ close(): void;
1645
+ success(title: string, message?: string, trace?: any, timeout?: number): void;
1646
+ info(title: string, message?: string, trace?: any, timeout?: number): void;
1647
+ warning(title: string, message?: string, trace?: any, timeout?: number): void;
1648
+ danger(title: string, message?: string, trace?: any, timeout?: number): void;
1649
+ error(title: string, message?: string, trace?: any): void;
1650
+ debug(title: string, message?: string, trace?: any): void;
1651
+ ack(message: Message): void;
1652
+ play(type?: string): void;
1653
+ private _notify;
1654
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DataMessageService, never>;
1655
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<DataMessageService>;
1656
+ }
1657
+
1748
1658
  declare class MessageZoneComponent implements OnInit {
1659
+ filter: _angular_core.InputSignal<string | undefined>;
1660
+ current: _angular_core.WritableSignal<Message[]>;
1749
1661
  messages: DataMessageService;
1750
- filter?: string;
1751
- current: Message[];
1752
1662
  private destroy$;
1753
- constructor(messages: DataMessageService);
1754
1663
  ngOnInit(): void;
1755
- static ɵfac: i0.ɵɵFactoryDeclaration<MessageZoneComponent, never>;
1756
- static ɵcmp: i0.ɵɵComponentDeclaration<MessageZoneComponent, "data-message-zone", never, { "filter": { "alias": "filter"; "required": false; }; }, {}, never, never, true, never>;
1664
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MessageZoneComponent, never>;
1665
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MessageZoneComponent, "data-message-zone", never, { "filter": { "alias": "filter"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1757
1666
  }
1758
1667
 
1759
1668
  declare class QuerysetMock<T extends DataModel> {
@@ -1894,44 +1803,130 @@ declare class DataUploaderService {
1894
1803
  }
1895
1804
 
1896
1805
  declare class NgFileDropDirective implements OnInit, OnDestroy {
1897
- elementRef: ElementRef;
1898
- options: UploaderOptions;
1899
- uploadInput: EventEmitter<UploadInput>;
1900
- uploadOutput: EventEmitter<UploadOutput>;
1806
+ options: _angular_core.InputSignal<UploaderOptions | undefined>;
1807
+ uploadInput: _angular_core.InputSignal<EventEmitter<UploadInput> | undefined>;
1808
+ uploadOutput: _angular_core.OutputEmitterRef<UploadOutput>;
1901
1809
  upload: DataUploaderService;
1902
1810
  el: HTMLInputElement;
1811
+ elementRef: ElementRef<any>;
1903
1812
  private _sub;
1904
- constructor(elementRef: ElementRef);
1905
1813
  ngOnInit(): void;
1906
1814
  ngOnDestroy(): void;
1907
1815
  stopEvent: (e: Event) => void;
1908
1816
  onDrop(e: any): void;
1909
1817
  onDragOver(e: Event): void;
1910
1818
  onDragLeave(e: Event): void;
1911
- static ɵfac: i0.ɵɵFactoryDeclaration<NgFileDropDirective, never>;
1912
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgFileDropDirective, "[dataFileDrop]", never, { "options": { "alias": "options"; "required": false; }; "uploadInput": { "alias": "uploadInput"; "required": false; }; }, { "uploadOutput": "uploadOutput"; }, never, never, false, never>;
1819
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFileDropDirective, never>;
1820
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgFileDropDirective, "[dataFileDrop]", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "uploadInput": { "alias": "uploadInput"; "required": false; "isSignal": true; }; }, { "uploadOutput": "uploadOutput"; }, never, never, true, never>;
1913
1821
  }
1914
1822
 
1915
1823
  declare class NgFileSelectDirective implements OnInit, OnDestroy {
1916
- elementRef: ElementRef;
1917
- options: UploaderOptions;
1918
- uploadInput: EventEmitter<any>;
1919
- uploadOutput: EventEmitter<UploadOutput>;
1824
+ options: _angular_core.InputSignal<UploaderOptions | undefined>;
1825
+ uploadInput: _angular_core.InputSignal<EventEmitter<any> | undefined>;
1826
+ uploadOutput: _angular_core.OutputEmitterRef<UploadOutput>;
1920
1827
  upload: DataUploaderService;
1921
1828
  el: HTMLInputElement;
1829
+ elementRef: ElementRef<any>;
1922
1830
  private _sub;
1923
- constructor(elementRef: ElementRef);
1924
1831
  ngOnInit(): void;
1925
1832
  ngOnDestroy(): void;
1926
1833
  fileListener: () => void;
1927
- static ɵfac: i0.ɵɵFactoryDeclaration<NgFileSelectDirective, never>;
1928
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgFileSelectDirective, "[dataFileSelect]", never, { "options": { "alias": "options"; "required": false; }; "uploadInput": { "alias": "uploadInput"; "required": false; }; }, { "uploadOutput": "uploadOutput"; }, never, never, false, never>;
1834
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFileSelectDirective, never>;
1835
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgFileSelectDirective, "[dataFileSelect]", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "uploadInput": { "alias": "uploadInput"; "required": false; "isSignal": true; }; }, { "uploadOutput": "uploadOutput"; }, never, never, true, never>;
1929
1836
  }
1930
1837
 
1838
+ /**
1839
+ * @deprecated `NgFileDropDirective` and `NgFileSelectDirective` are now standalone —
1840
+ * import them directly instead of importing `NgxUploaderModule`. This module is kept
1841
+ * as a thin compatibility shim and will be removed in a future major version.
1842
+ */
1931
1843
  declare class NgxUploaderModule {
1932
- static ɵfac: i0.ɵɵFactoryDeclaration<NgxUploaderModule, never>;
1933
- static ɵmod: i0.ɵɵNgModuleDeclaration<NgxUploaderModule, [typeof NgFileDropDirective, typeof NgFileSelectDirective], never, [typeof NgFileDropDirective, typeof NgFileSelectDirective]>;
1934
- static ɵinj: i0.ɵɵInjectorDeclaration<NgxUploaderModule>;
1844
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgxUploaderModule, never>;
1845
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<NgxUploaderModule, never, [typeof NgFileDropDirective, typeof NgFileSelectDirective], [typeof NgFileDropDirective, typeof NgFileSelectDirective]>;
1846
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<NgxUploaderModule>;
1847
+ }
1848
+
1849
+ interface IJwtResponseJson {
1850
+ access: string;
1851
+ refresh: string;
1852
+ }
1853
+ interface IJwtRefreshResponseJson {
1854
+ access: string;
1855
+ }
1856
+ interface IJwtBaseData {
1857
+ token_type: 'access' | 'refresh';
1858
+ user_id: number;
1859
+ }
1860
+ declare class Jwt<UserJwtData extends IJwtBaseData> {
1861
+ readonly access?: string;
1862
+ readonly refresh?: string;
1863
+ private readonly _data;
1864
+ constructor(response?: IJwtResponseJson);
1865
+ get data(): UserJwtData | null;
1866
+ toJson(): {
1867
+ access: string | undefined;
1868
+ refresh: string | undefined;
1869
+ };
1870
+ }
1871
+
1872
+ interface AuthParams {
1873
+ tokenUrl: string;
1874
+ tokenRefreshUrl: string;
1875
+ requestReactivateUrl?: string;
1876
+ processReactivateUrl?: string;
1877
+ requestPwResetUrl?: string;
1878
+ processPwResetUrl?: string;
1879
+ loginField: string;
1880
+ passwordField: string;
1881
+ tokenField: string;
1882
+ loginRoute: string[];
1883
+ logoutRoute: string[];
1884
+ pwresetRoute?: string[];
1885
+ reactivateRoute?: string[];
1886
+ userFetchFields?: string[];
1887
+ userFetchValiditySeconds?: number;
1888
+ }
1889
+ /**
1890
+ * DATA_API_URL: stores data api base url
1891
+ */
1892
+ declare const DATA_AUTH_PARAMS: InjectionToken<AuthParams>;
1893
+ declare const DATA_AUTH_USER_SERVICE: InjectionToken<Collection<any>>;
1894
+ declare class AuthServiceBase<User extends DataModel, UserService extends Collection<User>, UserData extends IJwtBaseData> {
1895
+ userService: UserService;
1896
+ private _params;
1897
+ private _router;
1898
+ private _http;
1899
+ private _msgs;
1900
+ logout$: Subject<void>;
1901
+ private _user;
1902
+ private _user$;
1903
+ private _token;
1904
+ private _fetched?;
1905
+ constructor(userService: UserService, _params: AuthParams, _router: Router, _http: HttpClient, _msgs: DataMessageService);
1906
+ get isAnonymous(): boolean;
1907
+ get accessToken(): string | null;
1908
+ get refreshToken(): string | null;
1909
+ get currentUser(): User | null;
1910
+ get currentUser$(): Observable<User | null>;
1911
+ get refreshUrl(): string;
1912
+ get loginUrl(): string;
1913
+ get loginRoute(): string[];
1914
+ get logoutRoute(): string[];
1915
+ get pwresetRoute(): string[] | undefined;
1916
+ get reactivateRoute(): string[] | undefined;
1917
+ logout(): void;
1918
+ autoLogin(): void;
1919
+ login(username: string, password: string): Observable<'success' | 'error' | 'invalid_token' | string>;
1920
+ loginWithToken(accessToken: string, refreshToken: string): Observable<'success' | 'error' | 'invalid_token' | string>;
1921
+ requestReactivate(username: string): Observable<boolean>;
1922
+ requestPwReset(username: string): Observable<boolean>;
1923
+ processReactivate(username: string, token: string): Observable<boolean>;
1924
+ processPwReset(username: string, password: string, token: string): Observable<boolean>;
1925
+ saveAuth(): void;
1926
+ refresh(): Observable<IJwtRefreshResponseJson | null>;
1927
+ private _fetchUser;
1928
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AuthServiceBase<any, any, any>, never>;
1929
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AuthServiceBase<any, any, any>>;
1935
1930
  }
1936
1931
 
1937
1932
  declare const DATA_AUTH_SERVICE: InjectionToken<AuthServiceBase<any, any, any>>;
@@ -1941,12 +1936,11 @@ declare const DATA_AUTH_SERVICE: InjectionToken<AuthServiceBase<any, any, any>>;
1941
1936
  */
1942
1937
  declare const DATA_AUTH_URLS: InjectionToken<string[]>;
1943
1938
  declare class AuthInterceptor implements HttpInterceptor {
1939
+ private _isRefreshing;
1940
+ private _refreshTokenSubject;
1944
1941
  private _auth;
1945
1942
  private _apiUrl;
1946
1943
  private _urls;
1947
- private _isRefreshing;
1948
- private _refreshTokenSubject;
1949
- constructor(_auth: AuthServiceBase<any, any, any>, _apiUrl: string, _urls: string[] | null);
1950
1944
  /**
1951
1945
  * The auth token in added to the request if :
1952
1946
  * - the request is not anonymous
@@ -1958,8 +1952,8 @@ declare class AuthInterceptor implements HttpInterceptor {
1958
1952
  intercept(req: HttpRequest<any>, next: HttpHandler): rxjs.Observable<_angular_common_http.HttpEvent<any>>;
1959
1953
  private _handle401Error;
1960
1954
  private _addToken;
1961
- static ɵfac: i0.ɵɵFactoryDeclaration<AuthInterceptor, [null, null, { optional: true; }]>;
1962
- static ɵprov: i0.ɵɵInjectableDeclaration<AuthInterceptor>;
1955
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AuthInterceptor, never>;
1956
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AuthInterceptor>;
1963
1957
  }
1964
1958
 
1965
1959
  /**
@@ -2040,27 +2034,25 @@ interface IPathTreeItem {
2040
2034
  * and data (input argument)
2041
2035
  * - icon: icon classes. Example fa fa-home for home & font awesome
2042
2036
  */
2043
- declare class BreadcrumbComponent implements OnChanges, OnInit {
2044
- router: Router;
2045
- route: ActivatedRoute;
2037
+ declare class BreadcrumbComponent implements OnInit {
2046
2038
  /**
2047
2039
  * Additional data to be used in titleTemplate
2048
2040
  */
2049
- data: any;
2041
+ data: _angular_core.InputSignal<any>;
2050
2042
  /**
2051
2043
  * Do we display icons ?
2052
2044
  */
2053
- icons: boolean;
2054
- tree: IPathTreeItem[];
2045
+ icons: _angular_core.InputSignal<boolean>;
2046
+ tree: _angular_core.WritableSignal<IPathTreeItem[]>;
2047
+ router: Router;
2048
+ route: ActivatedRoute;
2055
2049
  private destroy$;
2056
- constructor(router: Router, route: ActivatedRoute);
2057
2050
  ngOnInit(): void;
2058
- ngOnChanges(changes: SimpleChanges): void;
2059
2051
  getRouteTree(current: RouterState): void;
2060
2052
  getTitle(rdata: Partial<BaseRouteParams>, data: BaseRouteParams, u?: UrlSegment): string;
2061
2053
  getIcon(rdata: Partial<BaseRouteParams>, data: BaseRouteParams): string;
2062
- static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbComponent, never>;
2063
- static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbComponent, "data-breadcrumb", never, { "data": { "alias": "data"; "required": false; }; "icons": { "alias": "icons"; "required": false; }; }, {}, never, never, true, never>;
2054
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BreadcrumbComponent, never>;
2055
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<BreadcrumbComponent, "data-breadcrumb", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "icons": { "alias": "icons"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
2064
2056
  }
2065
2057
 
2066
2058
  interface ITabStoredMem {
@@ -2080,15 +2072,13 @@ declare class NavDriver {
2080
2072
  get value(): ITabStoredMem;
2081
2073
  }
2082
2074
  declare class TabMemoryService {
2083
- private _route;
2084
2075
  private tabMem;
2085
- constructor(_route: ActivatedRoute);
2086
2076
  private static targetToString;
2087
2077
  memFor(target: (string | number | UrlSegment)[], defaults: string, save?: boolean, fragment?: string | null): NavDriver;
2088
2078
  save(): void;
2089
2079
  load(name: string): string | null;
2090
- static ɵfac: i0.ɵɵFactoryDeclaration<TabMemoryService, never>;
2091
- static ɵprov: i0.ɵɵInjectableDeclaration<TabMemoryService>;
2080
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabMemoryService, never>;
2081
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<TabMemoryService>;
2092
2082
  }
2093
2083
 
2094
2084
  declare const slugify: (str: string) => string;
@@ -2104,15 +2094,14 @@ declare class UpdateService {
2104
2094
  get available$(): Observable<boolean>;
2105
2095
  activate(): void;
2106
2096
  dismiss(): void;
2107
- static ɵfac: i0.ɵɵFactoryDeclaration<UpdateService, never>;
2108
- static ɵprov: i0.ɵɵInjectableDeclaration<UpdateService>;
2097
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UpdateService, never>;
2098
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<UpdateService>;
2109
2099
  }
2110
2100
 
2111
2101
  declare class UpdateComponent {
2112
2102
  update: UpdateService;
2113
- constructor(update: UpdateService);
2114
- static ɵfac: i0.ɵɵFactoryDeclaration<UpdateComponent, never>;
2115
- static ɵcmp: i0.ɵɵComponentDeclaration<UpdateComponent, "data-update", never, {}, {}, never, never, true, never>;
2103
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UpdateComponent, never>;
2104
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<UpdateComponent, "data-update", never, {}, {}, never, never, true, never>;
2116
2105
  }
2117
2106
 
2118
2107
  export { AuthInterceptor, AuthServiceBase, BanAdapter, BaseFieldManager, BootstrapDataDisplayConfig, BreadcrumbComponent, ChoicePipe, Collection, CollectionMock, DATA_API_URL, DATA_AUTH_PARAMS, DATA_AUTH_SERVICE, DATA_AUTH_URLS, DATA_AUTH_USER_SERVICE, DATA_DISPLAY_CONFIG, DATA_MAX_TRANSFERSTATE_TIME, DATA_MESSAGE_SOUNDS, DEFAULT_TIMEOUTS, DataBackend, DataMessageService, DataModel, DataUploaderService, DispeditComponent, FactorPipe, FactorcPipe, FkselectComponent, FlagsComponent, Jwt, Link, M2mselectComponent, Message, MessageZoneComponent, ModelList, ModelListAutocompleteFilter, ModelListAutocompleteMultiFilter, ModelListDateFilter, ModelListDatetimeFilter, ModelListDatetimerangeFilter, ModelListFieldHeaderComponent, ModelListFieldsSelectorComponent, ModelListFilter, ModelListFilterGroup, ModelListFilters, ModelListFiltersComponent, ModelListFiltersSelectComponent, ModelListFlagsFilter, ModelListGeodistanceFilter, ModelListNumberFilter, ModelListNumberOperations, ModelListPaginatorComponent, ModelListSelectFilter, ModelListSelectMultiFilter, ModelListService, ModelListSorterComponent, ModelListTextFilter, ModelListTreeFilter, NavDriver, NgFileDropDirective, NgFileSelectDirective, NgxUploaderModule, PChoicePipe, PFactorPipe, PFactorcPipe, Queryset, RData, STATUS, SafeDeleteComponent, TYPE, TabMemoryService, UpdateComponent, UpdateService, UploadStatus, booleanField, charField, computedField, dateField, datetimeField, decimalField, detailsField, emailField, floatField, foreignKeyField, humanizeBytes, integerField, isValue, manyToManyField, passwordField, primaryField, reverseForeignKeyField, slugify, strToNumber, textField, tmpl };