@solidev/data 0.9.1 → 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,8 +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';
11
- import { Toolbar, Editor } from 'ngx-editor';
10
+ import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';
12
11
  import { SwUpdate } from '@angular/service-worker';
13
12
 
14
13
  /**
@@ -207,8 +206,8 @@ declare class DataBackend {
207
206
  }): {
208
207
  [key: string]: string;
209
208
  };
210
- static ɵfac: i0.ɵɵFactoryDeclaration<DataBackend, [null, null, null, null, { optional: true; }]>;
211
- 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>;
212
211
  }
213
212
 
214
213
  interface FilterData {
@@ -437,7 +436,11 @@ declare class DataModel {
437
436
  */
438
437
  protected static readonly __name: string;
439
438
  /**
440
- * 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).
441
444
  */
442
445
  id: number;
443
446
  private readonly _F;
@@ -742,144 +745,6 @@ interface IFieldHeaderMessage {
742
745
  sort?: 'hide' | 'side' | 'click' | 'default';
743
746
  }
744
747
 
745
- interface IJwtResponseJson {
746
- access: string;
747
- refresh: string;
748
- }
749
- interface IJwtRefreshResponseJson {
750
- access: string;
751
- }
752
- interface IJwtBaseData {
753
- token_type: 'access' | 'refresh';
754
- user_id: number;
755
- }
756
- declare class Jwt<UserJwtData extends IJwtBaseData> {
757
- readonly access?: string;
758
- readonly refresh?: string;
759
- private readonly _data;
760
- constructor(response?: IJwtResponseJson);
761
- get data(): UserJwtData | null;
762
- toJson(): {
763
- access: string | undefined;
764
- refresh: string | undefined;
765
- };
766
- }
767
-
768
- declare const enum TYPE {
769
- SUCCESS = 0,
770
- INFO = 1,
771
- WARNING = 2,
772
- DANGER = 3
773
- }
774
- declare enum DEFAULT_TIMEOUTS {
775
- SUCCESS = 3000,
776
- INFO = 4000,
777
- WARNING = 10000,
778
- DANGER = 30000
779
- }
780
- declare enum STATUS {
781
- UNDISP = 0,
782
- DISP = 1,
783
- ACK = 2
784
- }
785
- interface ISoundTypes {
786
- [index: string]: string;
787
- }
788
- declare const DATA_MESSAGE_SOUNDS: InjectionToken<ISoundTypes>;
789
- declare class Message {
790
- title: string;
791
- type: TYPE;
792
- message: string;
793
- trace: any;
794
- ttl: number;
795
- status: string;
796
- showTrace: boolean;
797
- constructor(title: string, type?: TYPE, message?: string, trace?: any, ttl?: number);
798
- get style(): string;
799
- ack(): void;
800
- }
801
- declare class DataMessageService {
802
- ngZone: NgZone;
803
- sounds: ISoundTypes;
804
- _messages$: ReplaySubject<Message[]>;
805
- private _messages;
806
- private _timer;
807
- private _subscription;
808
- constructor(ngZone: NgZone, sounds: ISoundTypes);
809
- get current(): Observable<Message[]>;
810
- init(): void;
811
- close(): void;
812
- success(title: string, message?: string, trace?: any, timeout?: number): void;
813
- info(title: string, message?: string, trace?: any, timeout?: number): void;
814
- warning(title: string, message?: string, trace?: any, timeout?: number): void;
815
- danger(title: string, message?: string, trace?: any, timeout?: number): void;
816
- error(title: string, message?: string, trace?: any): void;
817
- debug(title: string, message?: string, trace?: any): void;
818
- ack(message: Message): void;
819
- play(type?: string): void;
820
- private _notify;
821
- static ɵfac: i0.ɵɵFactoryDeclaration<DataMessageService, [null, { optional: true; }]>;
822
- static ɵprov: i0.ɵɵInjectableDeclaration<DataMessageService>;
823
- }
824
-
825
- interface AuthParams {
826
- tokenUrl: string;
827
- tokenRefreshUrl: string;
828
- requestReactivateUrl?: string;
829
- processReactivateUrl?: string;
830
- requestPwResetUrl?: string;
831
- processPwResetUrl?: string;
832
- loginField: string;
833
- passwordField: string;
834
- tokenField: string;
835
- loginRoute: string[];
836
- logoutRoute: string[];
837
- pwresetRoute?: string[];
838
- reactivateRoute?: string[];
839
- userFetchFields?: string[];
840
- userFetchValiditySeconds?: number;
841
- }
842
- /**
843
- * DATA_API_URL: stores data api base url
844
- */
845
- declare const DATA_AUTH_PARAMS: InjectionToken<AuthParams>;
846
- declare const DATA_AUTH_USER_SERVICE: InjectionToken<Collection<any>>;
847
- declare class AuthServiceBase<User extends DataModel, UserService extends Collection<User>, UserData extends IJwtBaseData> {
848
- userService: UserService;
849
- private _params;
850
- private _router;
851
- private _http;
852
- private _msgs;
853
- logout$: Subject<void>;
854
- private _user;
855
- private _user$;
856
- private _token;
857
- private _fetched?;
858
- constructor(userService: UserService, _params: AuthParams, _router: Router, _http: HttpClient, _msgs: DataMessageService);
859
- get isAnonymous(): boolean;
860
- get accessToken(): string | null;
861
- get refreshToken(): string | null;
862
- get currentUser(): User | null;
863
- get currentUser$(): Observable<User | null>;
864
- get refreshUrl(): string;
865
- get loginUrl(): string;
866
- get loginRoute(): string[];
867
- get logoutRoute(): string[];
868
- get pwresetRoute(): string[] | undefined;
869
- get reactivateRoute(): string[] | undefined;
870
- logout(): void;
871
- autoLogin(): void;
872
- login(username: string, password: string): Observable<'success' | 'error' | 'invalid_token' | string>;
873
- loginWithToken(accessToken: string, refreshToken: string): Observable<'success' | 'error' | 'invalid_token' | string>;
874
- requestReactivate(username: string): Observable<boolean>;
875
- requestPwReset(username: string): Observable<boolean>;
876
- processReactivate(username: string, token: string): Observable<boolean>;
877
- processPwReset(username: string, password: string, token: string): Observable<boolean>;
878
- saveAuth(): void;
879
- refresh(): Observable<IJwtRefreshResponseJson | null>;
880
- private _fetchUser;
881
- }
882
-
883
748
  interface CustomField {
884
749
  name: string;
885
750
  label: string;
@@ -957,62 +822,60 @@ declare class ModelList<T extends DataModel> {
957
822
  start(params: ModelListParams): void;
958
823
  }
959
824
  declare class ModelListService {
960
- private _auth;
961
825
  private _instances;
962
- constructor(_auth: AuthServiceBase<any, any, any>);
826
+ private _auth;
827
+ constructor();
963
828
  reset(): void;
964
829
  get<T extends DataModel>(name: string, collection: Collection<T>, defaults: ModelListParams): ModelList<T>;
965
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListService, never>;
966
- static ɵprov: i0.ɵɵInjectableDeclaration<ModelListService>;
830
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModelListService, never>;
831
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<ModelListService>;
967
832
  }
968
833
 
969
834
  declare class ModelListFieldsSelectorComponent<T extends DataModel> implements OnInit {
970
- private _ofc;
971
- list: ModelList<T>;
835
+ list: _angular_core.InputSignal<ModelList<T>>;
972
836
  ofctpl: ElementRef<HTMLDivElement>;
973
837
  seeMore: boolean;
974
- constructor(_ofc: NgbOffcanvas);
838
+ private _ofc;
975
839
  ngOnInit(): void;
976
840
  open(): void;
977
841
  drop($event: CdkDragDrop<T, any>): void;
978
842
  toggle(f: ModelListField): void;
979
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListFieldsSelectorComponent<any>, never>;
980
- 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>;
981
845
  }
982
846
 
983
847
  declare class ModelListFieldHeaderComponent<T extends DataModel> implements OnInit {
984
- list: ModelList<T>;
985
- field: string;
986
- sort?: boolean;
987
- sortField?: string;
988
- menuMode: 'hide' | 'side' | 'click';
989
- sortMode: 'hide' | 'side' | 'click';
990
- 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>;
991
855
  mnu?: NgbDropdown;
992
- dispMenuMode: "hide" | "side" | "click";
993
- dispSortMode: "hide" | "side" | "click";
856
+ dispMenuMode: _angular_core.WritableSignal<"hide" | "side" | "click">;
857
+ dispSortMode: _angular_core.WritableSignal<"hide" | "side" | "click">;
994
858
  private destroy$;
995
- constructor();
996
859
  ngOnInit(): void;
997
860
  disable(): void;
998
861
  enable(f: ModelListField): void;
999
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListFieldHeaderComponent<any>, never>;
1000
- 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>;
1001
864
  }
1002
865
 
1003
866
  declare class ModelListSorterComponent {
1004
867
  /**
1005
868
  * ModelList reference.
1006
869
  */
1007
- list: i0.InputSignal<ModelList<any>>;
870
+ list: _angular_core.InputSignal<ModelList<any>>;
1008
871
  /**
1009
872
  * Sort field name.
1010
873
  */
1011
- field: i0.InputSignal<string>;
1012
- getCount: i0.WritableSignal<number>;
1013
- getOrder: i0.WritableSignal<number>;
1014
- isUp: i0.WritableSignal<boolean>;
1015
- 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>;
1016
879
  constructor();
1017
880
  setUp(): void;
1018
881
  update(): void;
@@ -1020,58 +883,56 @@ declare class ModelListSorterComponent {
1020
883
  cancel(): void;
1021
884
  private getIsDown;
1022
885
  private getIsUp;
1023
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListSorterComponent, never>;
1024
- 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>;
1025
888
  }
1026
889
 
1027
890
  declare class ModelListFiltersSelectComponent implements OnInit {
1028
- list: ModelList<any>;
1029
- containerClasses: string[] | string;
1030
- itemActiveClasses: string[] | string;
1031
- itemInactiveClasses: string[] | string;
1032
- 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">;
1033
896
  selectForm: FormControl<ModelListFilter | null>;
1034
897
  private destroy$;
1035
- constructor();
1036
898
  toggle(f: ModelListFilter): void;
1037
899
  ngOnInit(): void;
1038
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListFiltersSelectComponent, never>;
1039
- 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>;
1040
902
  }
1041
903
 
1042
904
  declare class ModelListFiltersComponent {
1043
- list: ModelList<any>;
1044
- containerClasses: string[] | string;
1045
- itemClasses: string[] | string;
1046
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListFiltersComponent, never>;
1047
- 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>;
1048
910
  }
1049
911
 
1050
912
  type TplFun<T extends DataModel> = (data: T) => string;
1051
913
  declare class FkselectComponent<T extends DataModel, R extends DataModel> implements OnInit {
1052
- model?: T;
1053
- field?: string;
1054
- edit: boolean;
1055
- value?: R;
1056
- queryset?: Queryset<R>;
1057
- collection?: Collection<R>;
1058
- update: boolean;
1059
- filter: FilterData;
1060
- mode: 'autocomplete' | 'select' | 'auto';
1061
- display?: string | TplFun<R>;
1062
- search: string;
1063
- label: string;
1064
- placeholder: string;
1065
- inputClasses: string[] | string;
1066
- selected: EventEmitter<T>;
1067
- cancelled: EventEmitter<void>;
1068
- 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>;
1069
931
  fc: UntypedFormControl;
1070
932
  searchFn: (text$: Observable<string>) => Observable<any>;
1071
933
  displayFn: (x: any) => any;
1072
934
  private _tpl;
1073
935
  private destroy$;
1074
- constructor();
1075
936
  ngOnInit(): void;
1076
937
  clearAction(): void;
1077
938
  /**
@@ -1079,8 +940,8 @@ declare class FkselectComponent<T extends DataModel, R extends DataModel> implem
1079
940
  */
1080
941
  private _display;
1081
942
  private _search;
1082
- static ɵfac: i0.ɵɵFactoryDeclaration<FkselectComponent<any, any>, never>;
1083
- 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>;
1084
945
  }
1085
946
 
1086
947
  interface ModelListAutocompleteParams<T extends DataModel> extends ModelListFilterParams {
@@ -1187,7 +1048,6 @@ interface ModelListMultiSelectFilterParams<T extends DataModel> extends ModelLis
1187
1048
  }
1188
1049
  declare class ModelListSelectMultiFilter<T extends DataModel> extends ModelListSelectFilter<T> {
1189
1050
  multi: boolean;
1190
- default?: IDispEditChoice[];
1191
1051
  constructor(params: ModelListMultiSelectFilterParams<T>);
1192
1052
  }
1193
1053
 
@@ -1236,87 +1096,81 @@ declare class BanAdapter {
1236
1096
  search(text: string): Observable<GeoSearchResult[]>;
1237
1097
  }
1238
1098
 
1239
- declare class ModelListPaginatorComponent<T extends DataModel> implements OnChanges {
1240
- list: ModelList<T>;
1241
- maxPages: number;
1242
- 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>;
1243
1103
  perPageControl: FormControl;
1244
1104
  showDirectAccess: boolean;
1245
1105
  directAccess: FormControl;
1246
- curPage: number;
1247
- curCount: number;
1248
- pageSize: number;
1106
+ curPage: _angular_core.WritableSignal<number>;
1107
+ curCount: _angular_core.WritableSignal<number>;
1108
+ pageSize: _angular_core.WritableSignal<number>;
1249
1109
  private destroy$;
1250
1110
  onPageChange(page: number): void;
1251
- ngOnChanges(): void;
1252
- static ɵfac: i0.ɵɵFactoryDeclaration<ModelListPaginatorComponent<any>, never>;
1253
- 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>;
1254
1114
  }
1255
1115
 
1256
1116
  declare class ChoicePipe<T extends DataModel> implements PipeTransform {
1257
1117
  transform(value: T, field: string, mode?: 'code' | 'desc' | 'both'): string;
1258
- static ɵfac: i0.ɵɵFactoryDeclaration<ChoicePipe<any>, never>;
1259
- 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>;
1260
1120
  }
1261
1121
  declare class PChoicePipe<T extends DataModel> implements PipeTransform {
1262
1122
  transform(value: any, model: T, field: string, mode?: 'code' | 'desc' | 'both'): string;
1263
- static ɵfac: i0.ɵɵFactoryDeclaration<PChoicePipe<any>, never>;
1264
- 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>;
1265
1125
  }
1266
1126
 
1267
1127
  declare function isValue(value: number | string | null | undefined): value is number | string;
1268
1128
  declare function strToNumber(value: number | string): number;
1269
1129
  declare class FactorPipe<T extends DataModel> implements PipeTransform {
1270
1130
  private _locale;
1271
- constructor(_locale: string);
1272
1131
  transform(value: T | null, field: string, digitsInfo?: string, locale?: string): string | null;
1273
- static ɵfac: i0.ɵɵFactoryDeclaration<FactorPipe<any>, never>;
1274
- 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>;
1275
1134
  }
1276
1135
  declare class PFactorPipe<T extends DataModel> implements PipeTransform {
1277
1136
  private _locale;
1278
- constructor(_locale: string);
1279
1137
  transform(value: number | string | null | undefined, model: T | null, field: string, digitsInfo?: string, locale?: string): string | null;
1280
- static ɵfac: i0.ɵɵFactoryDeclaration<PFactorPipe<any>, never>;
1281
- 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>;
1282
1140
  }
1283
1141
 
1284
1142
  declare class FactorcPipe<T extends DataModel> implements PipeTransform {
1285
1143
  private _locale;
1286
1144
  private _defaultCurrencyCode;
1287
- constructor(_locale: string, _defaultCurrencyCode?: string);
1288
1145
  transform(value: T | null, field: string, currencyCode?: string, display?: 'code' | 'symbol' | 'symbol-narrow' | string, digitsInfo?: string, locale?: string): string | null;
1289
- static ɵfac: i0.ɵɵFactoryDeclaration<FactorcPipe<any>, never>;
1290
- 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>;
1291
1148
  }
1292
1149
  declare class PFactorcPipe<T extends DataModel> implements PipeTransform {
1293
1150
  private _locale;
1294
1151
  private _defaultCurrencyCode;
1295
- constructor(_locale: string, _defaultCurrencyCode?: string);
1296
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;
1297
- static ɵfac: i0.ɵɵFactoryDeclaration<PFactorcPipe<any>, never>;
1298
- 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>;
1299
1155
  }
1300
1156
 
1301
- declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> implements OnInit, OnChanges {
1302
- dconf: DataDisplayConfig;
1303
- private _msgs;
1157
+ declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> {
1304
1158
  /** Model (mandatory) */
1305
- model: T;
1159
+ model: _angular_core.InputSignal<T>;
1306
1160
  /** Field (mandatory) */
1307
- field: string;
1161
+ field: _angular_core.InputSignal<string>;
1308
1162
  /** External form */
1309
- form?: UntypedFormGroup;
1163
+ form: _angular_core.InputSignal<UntypedFormGroup | undefined>;
1310
1164
  /**
1311
1165
  * Starting edit mode
1312
1166
  * If mode is inline, edit is always true.
1313
1167
  */
1314
- edit: boolean;
1168
+ edit: _angular_core.ModelSignal<boolean>;
1315
1169
  /**
1316
1170
  * Can be switched to edit mode?
1317
1171
  * default : true
1318
1172
  */
1319
- editable: boolean;
1173
+ editable: _angular_core.InputSignal<boolean>;
1320
1174
  /**
1321
1175
  * Save updated values ?
1322
1176
  * If not given, default value depends on mode :
@@ -1329,90 +1183,95 @@ declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> im
1329
1183
  * - dd provides display / edit within a dt/dd block
1330
1184
  * - inline (to be renamed to form) provides a (label? and) form control
1331
1185
  * */
1332
- mode: 'dd' | 'inline' | 'form';
1186
+ mode: _angular_core.InputSignal<"inline" | "dd" | "form">;
1333
1187
  /**
1334
1188
  * Custom choices
1335
1189
  * If provided, a select form control will be used instead of base editor
1336
1190
  */
1337
- choices: IDispEditChoice[];
1191
+ choices: _angular_core.InputSignal<IDispEditChoice[]>;
1338
1192
  /** Custom input classes */
1339
- inputClasses: string[] | string;
1193
+ inputClasses: _angular_core.ModelSignal<string | string[] | undefined>;
1340
1194
  /** Override editor, if provided */
1341
- editor?: DISPEDIT_EDITOR_TYPES;
1195
+ editor: _angular_core.InputSignal<DISPEDIT_EDITOR_TYPES | undefined>;
1342
1196
  /** Override viewer, if provided */
1343
- viewer?: DISPEDIT_DISPLAY_TYPES;
1197
+ viewer: _angular_core.ModelSignal<DISPEDIT_DISPLAY_TYPES | undefined>;
1344
1198
  /** Override default value */
1345
- default?: any;
1199
+ default: _angular_core.InputSignal<any>;
1346
1200
  /**
1347
1201
  * Override placeholder, if provided.
1348
1202
  * By default, manager.description is used
1349
1203
  */
1350
- placeholder: string;
1204
+ placeholder: _angular_core.InputSignal<string>;
1351
1205
  /**
1352
1206
  * Override help, if provided.
1353
1207
  * By default, manager.help is used.
1354
1208
  */
1355
- help: string;
1209
+ help: _angular_core.InputSignal<string>;
1356
1210
  /**
1357
1211
  * Hide label (for inline forms)
1358
1212
  */
1359
- hideLabel: boolean;
1213
+ hideLabel: _angular_core.InputSignal<boolean>;
1360
1214
  /** Fk queryset */
1361
- queryset?: Queryset<R>;
1215
+ queryset: _angular_core.InputSignal<Queryset<R> | undefined>;
1362
1216
  /** Fk collection */
1363
- collection?: Collection<R>;
1217
+ collection: _angular_core.InputSignal<Collection<R> | undefined>;
1364
1218
  /** Fk display */
1365
- display?: string | TplFun<R>;
1219
+ display: _angular_core.InputSignal<string | TplFun<R> | undefined>;
1366
1220
  /** Fk filter */
1367
- filter: FilterData;
1221
+ filter: _angular_core.InputSignal<FilterData>;
1368
1222
  /** Output emitter, output model on every change */
1369
- changed: EventEmitter<T>;
1223
+ changed: _angular_core.OutputEmitterRef<T>;
1370
1224
  /** Field manager */
1371
- manager?: BaseFieldManager<FT>;
1225
+ manager: _angular_core.WritableSignal<BaseFieldManager<FT> | undefined>;
1372
1226
  /** Text value used for display */
1373
- txtValue?: string;
1227
+ txtValue: _angular_core.WritableSignal<string | undefined>;
1374
1228
  /** Text values used for many displays */
1375
- txtValues?: string[];
1229
+ txtValues: _angular_core.WritableSignal<string[] | undefined>;
1376
1230
  /** Computed editor type */
1377
- realEditor: DISPEDIT_EDITOR_TYPES;
1231
+ realEditor: _angular_core.WritableSignal<DISPEDIT_EDITOR_TYPES>;
1378
1232
  /** Computed display type */
1379
- realDisplay: DISPEDIT_DISPLAY_TYPES;
1233
+ realDisplay: _angular_core.WritableSignal<DISPEDIT_DISPLAY_TYPES>;
1380
1234
  /** Current disp raw value */
1381
- dispValue?: any;
1382
- /** Computed chocies type */
1383
- realChoices?: IDispEditChoice[];
1235
+ dispValue: _angular_core.WritableSignal<any>;
1236
+ /** Computed choices type */
1237
+ realChoices: _angular_core.WritableSignal<IDispEditChoice[] | undefined>;
1384
1238
  /** Computed help */
1385
- realHelp: string;
1239
+ realHelp: _angular_core.WritableSignal<string>;
1386
1240
  /** Computed placeholder */
1387
- realPlaceholder: string;
1241
+ realPlaceholder: _angular_core.WritableSignal<string>;
1388
1242
  /** Computed required */
1389
- required: boolean;
1243
+ required: _angular_core.WritableSignal<boolean>;
1390
1244
  /** Computed default value */
1391
- realDefault: any;
1245
+ realDefault: _angular_core.WritableSignal<any>;
1392
1246
  m2mValues?: any[];
1393
- fg?: UntypedFormGroup;
1247
+ fg: _angular_core.WritableSignal<UntypedFormGroup | undefined>;
1394
1248
  private _tpl;
1249
+ private _destroyRef;
1395
1250
  /**
1396
- * Constructor, can be given DATA_DISPLAY_CONFIG injection token to override display classes.
1397
- * By default, bs5 config is used
1398
- * @param dconf DataDisplayConfig item
1399
- * @param _msgs messages service
1251
+ * Display config, overridable via the DATA_DISPLAY_CONFIG injection token.
1252
+ * By default, bs5 config is used.
1400
1253
  */
1401
- constructor(dconf: DataDisplayConfig, _msgs: DataMessageService);
1254
+ dconf: DataDisplayConfig;
1255
+ private _msgs;
1402
1256
  /**
1403
- * Init sequence.
1404
- * - Sets mode
1405
- * - Sets display function
1406
- * - Loads manager
1407
- * - Run misc checks on special values
1408
- * - 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).
1409
1264
  */
1410
- ngOnInit(): void;
1265
+ private _recomputeEffect;
1411
1266
  /**
1412
1267
  * Upgrade all values on any change.
1413
- * @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
1414
1273
  */
1415
- ngOnChanges(changes: SimpleChanges): void;
1274
+ private _recompute;
1416
1275
  /**
1417
1276
  * Set up display mode.
1418
1277
  * - get choices if available
@@ -1452,11 +1311,6 @@ declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> im
1452
1311
  */
1453
1312
  private _save;
1454
1313
  private _display;
1455
- /**
1456
- * Set display mode based on current display config
1457
- * @private
1458
- */
1459
- private _setMode;
1460
1314
  private _setDisplayFn;
1461
1315
  private _getChoices;
1462
1316
  private _getRealDisplay;
@@ -1466,33 +1320,33 @@ declare class DispeditComponent<FT, T extends DataModel, R extends DataModel> im
1466
1320
  private _setEditorClasses;
1467
1321
  private _getDisplayValue;
1468
1322
  private _setDisplayClasses;
1469
- static ɵfac: i0.ɵɵFactoryDeclaration<DispeditComponent<any, any, any>, [{ optional: true; }, null]>;
1470
- 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>;
1471
1325
  }
1472
1326
 
1473
1327
  declare class M2mselectComponent<T extends DataModel, R extends DataModel> implements OnInit, ControlValueAccessor {
1474
- model?: T;
1475
- field?: string;
1476
- edit: boolean;
1477
- 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>;
1478
1332
  pks: number[];
1479
1333
  disabled: boolean;
1480
- queryset?: Queryset<R>;
1481
- collection?: Collection<R>;
1482
- filter: FilterData;
1483
- mode: 'autocomplete' | 'select' | 'auto';
1484
- display?: string | TplFun<R>;
1485
- search: string;
1486
- label: string;
1487
- placeholder: string;
1488
- emptyLabel: string;
1489
- inputClasses: string[] | string;
1490
- added: EventEmitter<R>;
1491
- removed: EventEmitter<R>;
1492
- cancelled: EventEmitter<void>;
1493
- cleared: EventEmitter<void>;
1494
- detailsChanged: EventEmitter<R[]>;
1495
- 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[]>;
1496
1350
  fc: UntypedFormControl;
1497
1351
  searchFn: (text$: Observable<string>) => Observable<any>;
1498
1352
  displayFn: (x: any) => any;
@@ -1575,8 +1429,8 @@ declare class M2mselectComponent<T extends DataModel, R extends DataModel> imple
1575
1429
  * @private
1576
1430
  */
1577
1431
  private _search;
1578
- static ɵfac: i0.ɵɵFactoryDeclaration<M2mselectComponent<any, any>, never>;
1579
- 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>;
1580
1434
  }
1581
1435
 
1582
1436
  interface IFlagItem {
@@ -1584,24 +1438,23 @@ interface IFlagItem {
1584
1438
  count: number;
1585
1439
  }
1586
1440
  declare class FlagsComponent<T extends DataModel> implements OnInit {
1587
- private _msg;
1588
- model: T;
1589
- field: string;
1590
- get_flags_endpoint: string;
1591
- edit: boolean;
1592
- editable: boolean;
1593
- flags: Observable<IFlagItem[]>;
1594
- free: boolean;
1595
- create: boolean;
1596
- 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>;
1597
1450
  ft: FormControl;
1598
1451
  fs: FormControl;
1599
- curflags: string[];
1452
+ curflags: _angular_core.WritableSignal<string[]>;
1600
1453
  txtflag: string;
1601
1454
  selflag: string;
1602
- flaglist: IFlagItem[];
1455
+ flaglist: _angular_core.WritableSignal<IFlagItem[]>;
1603
1456
  private destroy$;
1604
- constructor(_msg: DataMessageService);
1457
+ private _msg;
1605
1458
  ngOnInit(): Promise<any>;
1606
1459
  addFreeFlag(): Promise<any>;
1607
1460
  addFlag(flag: string): Promise<any>;
@@ -1609,41 +1462,8 @@ declare class FlagsComponent<T extends DataModel> implements OnInit {
1609
1462
  flagPresent(flag: string): boolean;
1610
1463
  removeFlag(flag: string): Promise<any>;
1611
1464
  toggleEdit(): Promise<void>;
1612
- static ɵfac: i0.ɵɵFactoryDeclaration<FlagsComponent<any>, never>;
1613
- 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>;
1614
- }
1615
-
1616
- declare const RichEditToolbars: {
1617
- [index: string]: Toolbar;
1618
- };
1619
- declare class RicheditComponent<FT, T extends DataModel> implements OnInit, OnDestroy {
1620
- model?: T;
1621
- field?: string;
1622
- editable: boolean;
1623
- edit: boolean;
1624
- mode: "dd" | "inline" | "form";
1625
- /** Hide label (for inline forms) */
1626
- hideLabel: boolean;
1627
- /** Hide button (for changed usage) */
1628
- hideButton: boolean;
1629
- /** Form control, from outside or created */
1630
- fc: FormControl<string | null>;
1631
- /** Toolbar mode */
1632
- toolbar: "none" | "default" | "light" | Toolbar;
1633
- changed: EventEmitter<string | null>;
1634
- /** Field manager */
1635
- manager?: BaseFieldManager<FT>;
1636
- /** Computed required */
1637
- required: boolean;
1638
- editor: Editor;
1639
- html: string;
1640
- realToolbar: Toolbar;
1641
- ngOnInit(): void;
1642
- ngOnDestroy(): void;
1643
- toggleEdit(): void;
1644
- save(): Promise<void>;
1645
- static ɵfac: i0.ɵɵFactoryDeclaration<RicheditComponent<any, any>, never>;
1646
- static ɵcmp: i0.ɵɵComponentDeclaration<RicheditComponent<any, any>, "data-richedit", never, { "model": { "alias": "model"; "required": false; }; "field": { "alias": "field"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "edit": { "alias": "edit"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "hideLabel": { "alias": "hideLabel"; "required": false; }; "hideButton": { "alias": "hideButton"; "required": false; }; "fc": { "alias": "fc"; "required": false; }; "toolbar": { "alias": "toolbar"; "required": false; }; }, { "changed": "changed"; }, 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>;
1647
1467
  }
1648
1468
 
1649
1469
  interface FakeDeleteResult {
@@ -1651,27 +1471,25 @@ interface FakeDeleteResult {
1651
1471
  details: [string, number][];
1652
1472
  }
1653
1473
  declare class SafeDeleteComponent<T extends DataModel> {
1654
- private _ofc;
1655
- private _msgs;
1656
1474
  /** Model instance to be deleted */
1657
- model: T;
1475
+ model: _angular_core.InputSignal<T>;
1658
1476
  /** Service to be used for deletion, taken from model if not provided */
1659
- service?: Collection<T>;
1477
+ service: _angular_core.InputSignal<Collection<T> | undefined>;
1660
1478
  /** Function to be called for deletion, overrides service deletion */
1661
- actionFn?: (model: T) => Promise<{
1479
+ actionFn: _angular_core.InputSignal<((model: T) => Promise<{
1662
1480
  success: boolean;
1663
- }>;
1481
+ }>) | undefined>;
1664
1482
  /** Translations of database objects names to human names */
1665
- checks: {
1483
+ checks: _angular_core.InputSignal<{
1666
1484
  [index: string]: string;
1667
- };
1485
+ }>;
1668
1486
  /** Messages to be displayed on success or error, default messages are used if not provided */
1669
- messages: {
1487
+ messages: _angular_core.InputSignal<{
1670
1488
  success?: string;
1671
1489
  error?: string;
1672
- };
1490
+ }>;
1673
1491
  /** Event emitted on successful deletion */
1674
- deleted: EventEmitter<FakeDeleteResult>;
1492
+ deleted: _angular_core.OutputEmitterRef<FakeDeleteResult>;
1675
1493
  /** Display mode, default is button.
1676
1494
  *
1677
1495
  * - `fbutton`: floating button (small)
@@ -1679,15 +1497,16 @@ declare class SafeDeleteComponent<T extends DataModel> {
1679
1497
  * - `icon`: icon
1680
1498
  * - `custom`: custom : ng-content is surrounded by a clickable div
1681
1499
  * */
1682
- display: 'fbutton' | 'button' | 'icon' | 'custom';
1683
- result?: FakeDeleteResult;
1500
+ display: _angular_core.InputSignal<"fbutton" | "button" | "icon" | "custom">;
1501
+ result: _angular_core.WritableSignal<FakeDeleteResult | undefined>;
1684
1502
  private _dialogRef?;
1685
1503
  private ofc?;
1686
- constructor(_ofc: NgbOffcanvas, _msgs: DataMessageService);
1504
+ private _ofc;
1505
+ private _msgs;
1687
1506
  checkDelete(model: DataModel): Promise<void>;
1688
1507
  reallyDelete(): Promise<void>;
1689
- static ɵfac: i0.ɵɵFactoryDeclaration<SafeDeleteComponent<any>, never>;
1690
- 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>;
1691
1510
  }
1692
1511
 
1693
1512
  interface ICharFieldDescChoice {
@@ -1779,15 +1598,71 @@ interface IComputedFieldMetadata<T> extends IFieldMetadata<T> {
1779
1598
  }
1780
1599
  declare const computedField: (meta?: IComputedFieldMetadata<any>) => FieldDecoratorFn;
1781
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
+
1782
1658
  declare class MessageZoneComponent implements OnInit {
1659
+ filter: _angular_core.InputSignal<string | undefined>;
1660
+ current: _angular_core.WritableSignal<Message[]>;
1783
1661
  messages: DataMessageService;
1784
- filter?: string;
1785
- current: Message[];
1786
1662
  private destroy$;
1787
- constructor(messages: DataMessageService);
1788
1663
  ngOnInit(): void;
1789
- static ɵfac: i0.ɵɵFactoryDeclaration<MessageZoneComponent, never>;
1790
- 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>;
1791
1666
  }
1792
1667
 
1793
1668
  declare class QuerysetMock<T extends DataModel> {
@@ -1928,44 +1803,130 @@ declare class DataUploaderService {
1928
1803
  }
1929
1804
 
1930
1805
  declare class NgFileDropDirective implements OnInit, OnDestroy {
1931
- elementRef: ElementRef;
1932
- options: UploaderOptions;
1933
- uploadInput: EventEmitter<UploadInput>;
1934
- uploadOutput: EventEmitter<UploadOutput>;
1806
+ options: _angular_core.InputSignal<UploaderOptions | undefined>;
1807
+ uploadInput: _angular_core.InputSignal<EventEmitter<UploadInput> | undefined>;
1808
+ uploadOutput: _angular_core.OutputEmitterRef<UploadOutput>;
1935
1809
  upload: DataUploaderService;
1936
1810
  el: HTMLInputElement;
1811
+ elementRef: ElementRef<any>;
1937
1812
  private _sub;
1938
- constructor(elementRef: ElementRef);
1939
1813
  ngOnInit(): void;
1940
1814
  ngOnDestroy(): void;
1941
1815
  stopEvent: (e: Event) => void;
1942
1816
  onDrop(e: any): void;
1943
1817
  onDragOver(e: Event): void;
1944
1818
  onDragLeave(e: Event): void;
1945
- static ɵfac: i0.ɵɵFactoryDeclaration<NgFileDropDirective, never>;
1946
- 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>;
1947
1821
  }
1948
1822
 
1949
1823
  declare class NgFileSelectDirective implements OnInit, OnDestroy {
1950
- elementRef: ElementRef;
1951
- options: UploaderOptions;
1952
- uploadInput: EventEmitter<any>;
1953
- uploadOutput: EventEmitter<UploadOutput>;
1824
+ options: _angular_core.InputSignal<UploaderOptions | undefined>;
1825
+ uploadInput: _angular_core.InputSignal<EventEmitter<any> | undefined>;
1826
+ uploadOutput: _angular_core.OutputEmitterRef<UploadOutput>;
1954
1827
  upload: DataUploaderService;
1955
1828
  el: HTMLInputElement;
1829
+ elementRef: ElementRef<any>;
1956
1830
  private _sub;
1957
- constructor(elementRef: ElementRef);
1958
1831
  ngOnInit(): void;
1959
1832
  ngOnDestroy(): void;
1960
1833
  fileListener: () => void;
1961
- static ɵfac: i0.ɵɵFactoryDeclaration<NgFileSelectDirective, never>;
1962
- 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>;
1963
1836
  }
1964
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
+ */
1965
1843
  declare class NgxUploaderModule {
1966
- static ɵfac: i0.ɵɵFactoryDeclaration<NgxUploaderModule, never>;
1967
- static ɵmod: i0.ɵɵNgModuleDeclaration<NgxUploaderModule, [typeof NgFileDropDirective, typeof NgFileSelectDirective], never, [typeof NgFileDropDirective, typeof NgFileSelectDirective]>;
1968
- 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>>;
1969
1930
  }
1970
1931
 
1971
1932
  declare const DATA_AUTH_SERVICE: InjectionToken<AuthServiceBase<any, any, any>>;
@@ -1975,12 +1936,11 @@ declare const DATA_AUTH_SERVICE: InjectionToken<AuthServiceBase<any, any, any>>;
1975
1936
  */
1976
1937
  declare const DATA_AUTH_URLS: InjectionToken<string[]>;
1977
1938
  declare class AuthInterceptor implements HttpInterceptor {
1939
+ private _isRefreshing;
1940
+ private _refreshTokenSubject;
1978
1941
  private _auth;
1979
1942
  private _apiUrl;
1980
1943
  private _urls;
1981
- private _isRefreshing;
1982
- private _refreshTokenSubject;
1983
- constructor(_auth: AuthServiceBase<any, any, any>, _apiUrl: string, _urls: string[] | null);
1984
1944
  /**
1985
1945
  * The auth token in added to the request if :
1986
1946
  * - the request is not anonymous
@@ -1992,8 +1952,8 @@ declare class AuthInterceptor implements HttpInterceptor {
1992
1952
  intercept(req: HttpRequest<any>, next: HttpHandler): rxjs.Observable<_angular_common_http.HttpEvent<any>>;
1993
1953
  private _handle401Error;
1994
1954
  private _addToken;
1995
- static ɵfac: i0.ɵɵFactoryDeclaration<AuthInterceptor, [null, null, { optional: true; }]>;
1996
- static ɵprov: i0.ɵɵInjectableDeclaration<AuthInterceptor>;
1955
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AuthInterceptor, never>;
1956
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AuthInterceptor>;
1997
1957
  }
1998
1958
 
1999
1959
  /**
@@ -2074,27 +2034,25 @@ interface IPathTreeItem {
2074
2034
  * and data (input argument)
2075
2035
  * - icon: icon classes. Example fa fa-home for home & font awesome
2076
2036
  */
2077
- declare class BreadcrumbComponent implements OnChanges, OnInit {
2078
- router: Router;
2079
- route: ActivatedRoute;
2037
+ declare class BreadcrumbComponent implements OnInit {
2080
2038
  /**
2081
2039
  * Additional data to be used in titleTemplate
2082
2040
  */
2083
- data: any;
2041
+ data: _angular_core.InputSignal<any>;
2084
2042
  /**
2085
2043
  * Do we display icons ?
2086
2044
  */
2087
- icons: boolean;
2088
- tree: IPathTreeItem[];
2045
+ icons: _angular_core.InputSignal<boolean>;
2046
+ tree: _angular_core.WritableSignal<IPathTreeItem[]>;
2047
+ router: Router;
2048
+ route: ActivatedRoute;
2089
2049
  private destroy$;
2090
- constructor(router: Router, route: ActivatedRoute);
2091
2050
  ngOnInit(): void;
2092
- ngOnChanges(changes: SimpleChanges): void;
2093
2051
  getRouteTree(current: RouterState): void;
2094
2052
  getTitle(rdata: Partial<BaseRouteParams>, data: BaseRouteParams, u?: UrlSegment): string;
2095
2053
  getIcon(rdata: Partial<BaseRouteParams>, data: BaseRouteParams): string;
2096
- static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbComponent, never>;
2097
- 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>;
2098
2056
  }
2099
2057
 
2100
2058
  interface ITabStoredMem {
@@ -2114,15 +2072,13 @@ declare class NavDriver {
2114
2072
  get value(): ITabStoredMem;
2115
2073
  }
2116
2074
  declare class TabMemoryService {
2117
- private _route;
2118
2075
  private tabMem;
2119
- constructor(_route: ActivatedRoute);
2120
2076
  private static targetToString;
2121
2077
  memFor(target: (string | number | UrlSegment)[], defaults: string, save?: boolean, fragment?: string | null): NavDriver;
2122
2078
  save(): void;
2123
2079
  load(name: string): string | null;
2124
- static ɵfac: i0.ɵɵFactoryDeclaration<TabMemoryService, never>;
2125
- static ɵprov: i0.ɵɵInjectableDeclaration<TabMemoryService>;
2080
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabMemoryService, never>;
2081
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<TabMemoryService>;
2126
2082
  }
2127
2083
 
2128
2084
  declare const slugify: (str: string) => string;
@@ -2138,16 +2094,15 @@ declare class UpdateService {
2138
2094
  get available$(): Observable<boolean>;
2139
2095
  activate(): void;
2140
2096
  dismiss(): void;
2141
- static ɵfac: i0.ɵɵFactoryDeclaration<UpdateService, never>;
2142
- static ɵprov: i0.ɵɵInjectableDeclaration<UpdateService>;
2097
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UpdateService, never>;
2098
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<UpdateService>;
2143
2099
  }
2144
2100
 
2145
2101
  declare class UpdateComponent {
2146
2102
  update: UpdateService;
2147
- constructor(update: UpdateService);
2148
- static ɵfac: i0.ɵɵFactoryDeclaration<UpdateComponent, never>;
2149
- 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>;
2150
2105
  }
2151
2106
 
2152
- export { AuthInterceptor, AuthServiceBase, BanAdapter, 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, RichEditToolbars, RicheditComponent, 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 };
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 };
2153
2108
  export type { AuthParams, BanResults, BaseRouteParams, BlobFile, CustomField, DataDisplayConfig, DataModelFields, DataModelType, FakeDeleteResult, FieldsParams, FilterData, FilterDefaults, FiltersParams, GeoSearchResult, GetFlagsResult, IActionParams, ICollectionCacheParams, IFlagItem, IHttpMethod, IJwtBaseData, IJwtRefreshResponseJson, IJwtResponseJson, IModelListMessage, IPathTreeItem, IQueryFullResponse, IQueryMeta, IQueryMetaNav, IQueryMetaNavParams, IQueryNav, IQuerysetOptions, ISoundTypes, ModelListAutocompleteMultiParams, ModelListAutocompleteParams, ModelListFilterParams, ModelListFlagsFilterParams, ModelListGeodistanceFilterParams, ModelListMultiSelectFilterParams, ModelListNumberFilterParams, ModelListParams, ModelListSelectFilterParams, ModelListTreeParams, OutFilterData, PaginationParams, RouteConfigItem, RouteFn, RoutesConfig, RoutesDefinition, SortData, SorterDefaults, StrictRoutes, TplFn, TplFun, UploadFile, UploadInput, UploadOutput, UploadProgress, UploaderOptions };