tin-spa 20.8.0 → 20.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/tin-spa.mjs +5510 -4580
- package/fesm2022/tin-spa.mjs.map +1 -1
- package/index.d.ts +220 -14
- package/package.json +3 -2
package/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, EnvironmentProviders, OnInit, OnDestroy, TemplateRef, ViewContainerRef, OnChanges, SimpleChanges, EventEmitter, AfterViewInit, PipeTransform, ElementRef, AfterViewChecked, ChangeDetectorRef } from '@angular/core';
|
|
2
|
+
import { InjectionToken, EnvironmentProviders, Injector, NgZone, OnInit, OnDestroy, TemplateRef, ViewContainerRef, OnChanges, SimpleChanges, EventEmitter, AfterViewInit, PipeTransform, ElementRef, AfterViewChecked, ChangeDetectorRef } from '@angular/core';
|
|
3
3
|
import * as i12 from '@angular/material/snack-bar';
|
|
4
4
|
import { MatSnackBar } from '@angular/material/snack-bar';
|
|
5
5
|
import * as i11 from '@angular/material/dialog';
|
|
@@ -8,7 +8,7 @@ import * as rxjs from 'rxjs';
|
|
|
8
8
|
import { Observable, BehaviorSubject, Subject } from 'rxjs';
|
|
9
9
|
import * as i1 from '@angular/router';
|
|
10
10
|
import { Router, ActivatedRoute, CanActivateFn } from '@angular/router';
|
|
11
|
-
import * as
|
|
11
|
+
import * as i64 from '@angular/common/http';
|
|
12
12
|
import { HttpClient, HttpErrorResponse } from '@angular/common/http';
|
|
13
13
|
import * as i7$1 from '@abacritt/angularx-social-login';
|
|
14
14
|
import { SocialUser, SocialAuthService } from '@abacritt/angularx-social-login';
|
|
@@ -32,9 +32,9 @@ import { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';
|
|
|
32
32
|
import * as i17 from '@angular/material/chips';
|
|
33
33
|
import { MatChipInputEvent } from '@angular/material/chips';
|
|
34
34
|
import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
|
|
35
|
-
import * as
|
|
35
|
+
import * as i67 from '@kolkov/angular-editor';
|
|
36
36
|
import { AngularEditorConfig } from '@kolkov/angular-editor';
|
|
37
|
-
import * as
|
|
37
|
+
import * as i69 from '@angular/cdk/drag-drop';
|
|
38
38
|
import { CdkDragEnter, CdkDragExit, CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
39
39
|
import * as i3$1 from '@angular/material/menu';
|
|
40
40
|
import * as i4$1 from '@angular/material/slider';
|
|
@@ -58,8 +58,8 @@ import * as i28 from '@angular/material/progress-bar';
|
|
|
58
58
|
import * as i29 from '@angular/material/sidenav';
|
|
59
59
|
import * as i30 from '@angular/material/toolbar';
|
|
60
60
|
import * as i32 from '@angular/material/expansion';
|
|
61
|
-
import * as
|
|
62
|
-
import * as
|
|
61
|
+
import * as i66 from 'ngx-doc-viewer';
|
|
62
|
+
import * as i68 from 'ng2-charts';
|
|
63
63
|
import { MsalService } from '@azure/msal-angular';
|
|
64
64
|
|
|
65
65
|
declare class TinSpaService {
|
|
@@ -485,6 +485,9 @@ interface TinSpaRuntimeConfig {
|
|
|
485
485
|
pathRouting: boolean;
|
|
486
486
|
/** Enable real-time (SignalR) features. Default false (disabled). */
|
|
487
487
|
realTime: boolean;
|
|
488
|
+
/** Enable offline capability (TinSync: read cache + outbox + sync tray + connectivity indicator). Default false —
|
|
489
|
+
* apps that never use offline tables should leave this off so none of the offline machinery ever runs for them. */
|
|
490
|
+
offline?: boolean;
|
|
488
491
|
/** Enable Microsoft SSO (MSAL). Only activates in a secure context (HTTPS/localhost). Default false. */
|
|
489
492
|
microsoftAuth: boolean;
|
|
490
493
|
/** MSAL credentials — required only when microsoftAuth is used. */
|
|
@@ -534,8 +537,19 @@ declare class SignalRService {
|
|
|
534
537
|
constructor(runtimeConfig: TinSpaRuntimeConfig | null);
|
|
535
538
|
/** Effective real-time enablement: legacy E2E kill-switch wins, else the configured runtime flag. */
|
|
536
539
|
private realTimeEnabled;
|
|
540
|
+
/** Public: whether SignalR is the authoritative connection signal (used by OfflineService to pick SignalR vs ping). */
|
|
541
|
+
get isRealTime(): boolean;
|
|
537
542
|
startConnection(hubUrl: string, token: string): void;
|
|
538
543
|
updateToken(token: string): void;
|
|
544
|
+
private forcingReconnect;
|
|
545
|
+
/**
|
|
546
|
+
* Reconnect the hub NOW if real-time is enabled and the connection isn't up. Driven by OfflineService
|
|
547
|
+
* connectivity (the ping heartbeat) so the real-time indicator recovers on the SAME signal that flips the
|
|
548
|
+
* offline indicator back to online — they stay married "hand in glove". Handles both states the built-in
|
|
549
|
+
* auto-reconnect leaves us in: Reconnecting (stuck waiting on a long backoff interval → interrupt and connect
|
|
550
|
+
* now) and Disconnected (auto-reconnect exhausted after a long outage → start fresh). Safe to call repeatedly.
|
|
551
|
+
*/
|
|
552
|
+
reconnectIfNeeded(): void;
|
|
539
553
|
stopConnection(): void;
|
|
540
554
|
static ɵfac: i0.ɵɵFactoryDeclaration<SignalRService, [{ optional: true; }]>;
|
|
541
555
|
static ɵprov: i0.ɵɵInjectableDeclaration<SignalRService>;
|
|
@@ -550,12 +564,13 @@ declare class AuthService {
|
|
|
550
564
|
private messageService;
|
|
551
565
|
private logService;
|
|
552
566
|
private signalRService;
|
|
567
|
+
private injector;
|
|
553
568
|
private googleAuthInitialized;
|
|
554
569
|
private isRefreshing;
|
|
555
570
|
private refreshTimer;
|
|
556
571
|
private socialUserSource;
|
|
557
572
|
socialUserObserv: rxjs.Observable<SocialUser>;
|
|
558
|
-
constructor(_route: ActivatedRoute, socialService: SocialAuthService, storage: StorageService, router: Router, httpService: HttpService, messageService: MessageService, logService: LogService, signalRService: SignalRService);
|
|
573
|
+
constructor(_route: ActivatedRoute, socialService: SocialAuthService, storage: StorageService, router: Router, httpService: HttpService, messageService: MessageService, logService: LogService, signalRService: SignalRService, injector: Injector);
|
|
559
574
|
private initializeGoogleAuth;
|
|
560
575
|
clearSession(revokeOnServer?: boolean): void;
|
|
561
576
|
sessionExpired(): void;
|
|
@@ -679,6 +694,20 @@ declare class CacheConfig {
|
|
|
679
694
|
getDuration(url: string): number | null;
|
|
680
695
|
private matchesPattern;
|
|
681
696
|
}
|
|
697
|
+
type OfflineOpStatus = 'pending' | 'syncing' | 'synced' | 'failed' | 'conflict' | 'stale';
|
|
698
|
+
interface OfflineConfig {
|
|
699
|
+
enabled: boolean;
|
|
700
|
+
cacheRows?: number;
|
|
701
|
+
cacheLookups?: boolean | string[];
|
|
702
|
+
lookupMaxAgeHours?: number;
|
|
703
|
+
queue?: {
|
|
704
|
+
create?: boolean;
|
|
705
|
+
edit?: boolean;
|
|
706
|
+
delete?: boolean;
|
|
707
|
+
};
|
|
708
|
+
maxQueueAgeHours?: number;
|
|
709
|
+
readOnly?: boolean;
|
|
710
|
+
}
|
|
682
711
|
interface SearchField extends Field {
|
|
683
712
|
show?: boolean;
|
|
684
713
|
}
|
|
@@ -1047,6 +1076,7 @@ declare class TableConfig {
|
|
|
1047
1076
|
};
|
|
1048
1077
|
realTime?: boolean;
|
|
1049
1078
|
entityName?: string;
|
|
1079
|
+
offline?: OfflineConfig | boolean;
|
|
1050
1080
|
allowUserKeepOpen?: boolean;
|
|
1051
1081
|
keepOpenBehavior?: 'reset' | 'edit';
|
|
1052
1082
|
}
|
|
@@ -1121,12 +1151,133 @@ declare class AppConfig {
|
|
|
1121
1151
|
keepSignedIn: boolean;
|
|
1122
1152
|
}
|
|
1123
1153
|
|
|
1154
|
+
interface ResolvedOfflineConfig {
|
|
1155
|
+
enabled: boolean;
|
|
1156
|
+
cacheRows: number;
|
|
1157
|
+
cacheLookups: boolean | string[];
|
|
1158
|
+
lookupMaxAgeHours: number;
|
|
1159
|
+
queue: {
|
|
1160
|
+
create: boolean;
|
|
1161
|
+
edit: boolean;
|
|
1162
|
+
delete: boolean;
|
|
1163
|
+
};
|
|
1164
|
+
maxQueueAgeHours: number;
|
|
1165
|
+
readOnly: boolean;
|
|
1166
|
+
}
|
|
1167
|
+
interface OfflineEntry {
|
|
1168
|
+
entity: string;
|
|
1169
|
+
entityName: string;
|
|
1170
|
+
idField: string;
|
|
1171
|
+
config: ResolvedOfflineConfig;
|
|
1172
|
+
}
|
|
1173
|
+
interface OutboxOp {
|
|
1174
|
+
seq?: number;
|
|
1175
|
+
opId: string;
|
|
1176
|
+
entity: string;
|
|
1177
|
+
entityName: string;
|
|
1178
|
+
url: string;
|
|
1179
|
+
opAction: 'create' | 'edit' | 'delete';
|
|
1180
|
+
payload: any;
|
|
1181
|
+
clientRef?: string;
|
|
1182
|
+
targetId?: any;
|
|
1183
|
+
targetClientRef?: string;
|
|
1184
|
+
refMap?: {
|
|
1185
|
+
[field: string]: string;
|
|
1186
|
+
};
|
|
1187
|
+
status: OfflineOpStatus;
|
|
1188
|
+
attempts: number;
|
|
1189
|
+
lastError?: string;
|
|
1190
|
+
serverRecord?: any;
|
|
1191
|
+
maxAgeHours: number;
|
|
1192
|
+
userId: string;
|
|
1193
|
+
enqueuedAt: number;
|
|
1194
|
+
syncedAt?: number;
|
|
1195
|
+
}
|
|
1196
|
+
declare class OfflineService {
|
|
1197
|
+
private httpService;
|
|
1198
|
+
private authService;
|
|
1199
|
+
private storage;
|
|
1200
|
+
private messageService;
|
|
1201
|
+
private signalR;
|
|
1202
|
+
private zone;
|
|
1203
|
+
private runtimeConfig;
|
|
1204
|
+
online$: BehaviorSubject<boolean>;
|
|
1205
|
+
drained$: Subject<string[]>;
|
|
1206
|
+
private db;
|
|
1207
|
+
private reads;
|
|
1208
|
+
private outbox;
|
|
1209
|
+
private meta;
|
|
1210
|
+
private entries;
|
|
1211
|
+
private readUrls;
|
|
1212
|
+
private readPrefixes;
|
|
1213
|
+
registered$: BehaviorSubject<boolean>;
|
|
1214
|
+
private connectivityStarted;
|
|
1215
|
+
private syncStarted;
|
|
1216
|
+
private draining;
|
|
1217
|
+
private backoffTimer;
|
|
1218
|
+
private periodicTimer;
|
|
1219
|
+
private recoveryTimer;
|
|
1220
|
+
constructor(httpService: HttpService, authService: AuthService, storage: StorageService, messageService: MessageService, signalR: SignalRService, zone: NgZone, runtimeConfig: TinSpaRuntimeConfig | null);
|
|
1221
|
+
/** App-level gate: offline capability only runs when the app opts in via provideTinSpaRuntime({ offline: true }).
|
|
1222
|
+
* When off, register()/ensureConnectivity() no-op, so a consumer that never uses offline runs none of this. */
|
|
1223
|
+
get enabled(): boolean;
|
|
1224
|
+
get hasAny(): boolean;
|
|
1225
|
+
get online(): boolean;
|
|
1226
|
+
outboxView$(): Observable<any[]>;
|
|
1227
|
+
private summarize;
|
|
1228
|
+
private statusLabel;
|
|
1229
|
+
register(config: TableConfig): OfflineEntry | null;
|
|
1230
|
+
private registerLookups;
|
|
1231
|
+
matchRead(url: string): OfflineEntry | null;
|
|
1232
|
+
matchMutation(url: string): OfflineEntry | null;
|
|
1233
|
+
suppressesUrl(absoluteUrl: string): boolean;
|
|
1234
|
+
private resolveConfig;
|
|
1235
|
+
deleteLocalData(): Promise<void>;
|
|
1236
|
+
private ensureOpen;
|
|
1237
|
+
putRead(url: string, entity: string, data: any, maxRows: number): Promise<any>;
|
|
1238
|
+
private getRead;
|
|
1239
|
+
handleOfflineRead(action: Action, entry: OfflineEntry, networkCall: () => Observable<ApiResponse>): Observable<ApiResponse>;
|
|
1240
|
+
private serveCachedRead;
|
|
1241
|
+
enqueueOffline(action: Action, data: any, entry: OfflineEntry): Observable<ApiResponse>;
|
|
1242
|
+
private enqueueMutation;
|
|
1243
|
+
pendingOpsFor$(entity: string): Observable<OutboxOp[]>;
|
|
1244
|
+
activeOps$(): Observable<OutboxOp[]>;
|
|
1245
|
+
private pendingCreates;
|
|
1246
|
+
private hasPending;
|
|
1247
|
+
ensureConnectivity(): void;
|
|
1248
|
+
reportNetworkFailure(): void;
|
|
1249
|
+
private verify;
|
|
1250
|
+
private setOnline;
|
|
1251
|
+
private setOffline;
|
|
1252
|
+
private startRecoveryPolling;
|
|
1253
|
+
private stopRecoveryPolling;
|
|
1254
|
+
private startSync;
|
|
1255
|
+
drain(): Promise<void>;
|
|
1256
|
+
private drainLoop;
|
|
1257
|
+
private sendOp;
|
|
1258
|
+
private finishOp;
|
|
1259
|
+
private nextAutoOp;
|
|
1260
|
+
private resetOrphans;
|
|
1261
|
+
private cascadeFailure;
|
|
1262
|
+
private scheduleBackoff;
|
|
1263
|
+
retryOp(opId: string): Promise<void>;
|
|
1264
|
+
discardOp(opId: string): Promise<any>;
|
|
1265
|
+
resolveConflict(opId: string, choice: 'keepServer' | 'keepMine'): Promise<void>;
|
|
1266
|
+
private getOp;
|
|
1267
|
+
private parseAction;
|
|
1268
|
+
private hash;
|
|
1269
|
+
private sanitize;
|
|
1270
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OfflineService, [null, null, null, null, null, null, { optional: true; }]>;
|
|
1271
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<OfflineService>;
|
|
1272
|
+
}
|
|
1273
|
+
|
|
1124
1274
|
declare class DataServiceLib {
|
|
1125
1275
|
private httpService;
|
|
1126
1276
|
router: Router;
|
|
1127
1277
|
private route;
|
|
1128
1278
|
private authService;
|
|
1129
|
-
|
|
1279
|
+
private offline;
|
|
1280
|
+
constructor(httpService: HttpService, router: Router, route: ActivatedRoute, authService: AuthService, offline: OfflineService);
|
|
1130
1281
|
appConfig: AppConfig;
|
|
1131
1282
|
private appConfigSource;
|
|
1132
1283
|
appConfigObserv: Observable<AppConfig>;
|
|
@@ -1808,6 +1959,48 @@ declare class AnalyticsService {
|
|
|
1808
1959
|
static ɵprov: i0.ɵɵInjectableDeclaration<AnalyticsService>;
|
|
1809
1960
|
}
|
|
1810
1961
|
|
|
1962
|
+
declare class OfflineIndicatorComponent {
|
|
1963
|
+
private offline;
|
|
1964
|
+
private router;
|
|
1965
|
+
state$: Observable<{
|
|
1966
|
+
online: boolean;
|
|
1967
|
+
pending: number;
|
|
1968
|
+
attention: number;
|
|
1969
|
+
badge: number;
|
|
1970
|
+
}>;
|
|
1971
|
+
enabled: boolean;
|
|
1972
|
+
constructor(offline: OfflineService, router: Router);
|
|
1973
|
+
tooltip(s: {
|
|
1974
|
+
online: boolean;
|
|
1975
|
+
pending: number;
|
|
1976
|
+
attention: number;
|
|
1977
|
+
badge: number;
|
|
1978
|
+
}): string;
|
|
1979
|
+
openSyncPage(): void;
|
|
1980
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OfflineIndicatorComponent, never>;
|
|
1981
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OfflineIndicatorComponent, "spa-offline-indicator", never, {}, {}, never, never, false, never>;
|
|
1982
|
+
}
|
|
1983
|
+
|
|
1984
|
+
declare class SyncComponent implements OnInit, OnDestroy {
|
|
1985
|
+
private offline;
|
|
1986
|
+
private messageService;
|
|
1987
|
+
ops: OutboxOp[];
|
|
1988
|
+
alertConfig: AlertConfig | null;
|
|
1989
|
+
private sub;
|
|
1990
|
+
private retryButton;
|
|
1991
|
+
private keepServerButton;
|
|
1992
|
+
private keepMineButton;
|
|
1993
|
+
private discardButton;
|
|
1994
|
+
private syncNowButton;
|
|
1995
|
+
tableConfig: TableConfig;
|
|
1996
|
+
ngOnInit(): void;
|
|
1997
|
+
ngOnDestroy(): void;
|
|
1998
|
+
private discard;
|
|
1999
|
+
private updateAlert;
|
|
2000
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SyncComponent, never>;
|
|
2001
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SyncComponent, "spa-sync", never, {}, {}, never, never, false, never>;
|
|
2002
|
+
}
|
|
2003
|
+
|
|
1811
2004
|
declare const authGuard: CanActivateFn;
|
|
1812
2005
|
|
|
1813
2006
|
declare const featureGuard: (featureKey: string) => CanActivateFn;
|
|
@@ -2513,7 +2706,9 @@ declare class TableComponent implements OnInit, AfterViewInit, OnDestroy {
|
|
|
2513
2706
|
private conditionService;
|
|
2514
2707
|
private authService;
|
|
2515
2708
|
private signalRService;
|
|
2516
|
-
|
|
2709
|
+
private offline;
|
|
2710
|
+
constructor(dataService: DataServiceLib, messageService: MessageService, breakpointObserver: BreakpointObserver, dialog: MatDialog, buttonService: ButtonService, dialogService: DialogService, tableConfigService: TableConfigService, conditionService: ConditionService, authService: AuthService, signalRService: SignalRService, // Changed: Added SignalRService
|
|
2711
|
+
offline: OfflineService);
|
|
2517
2712
|
ngOnInit(): void;
|
|
2518
2713
|
ngAfterViewInit(): void;
|
|
2519
2714
|
ngOnChanges(changes: SimpleChanges): void;
|
|
@@ -2548,6 +2743,10 @@ declare class TableComponent implements OnInit, AfterViewInit, OnDestroy {
|
|
|
2548
2743
|
private realTimeSubs;
|
|
2549
2744
|
private realTimeEntityName;
|
|
2550
2745
|
isSignalRConnected: boolean;
|
|
2746
|
+
private offlineEntry;
|
|
2747
|
+
private pendingOps;
|
|
2748
|
+
private rawRows;
|
|
2749
|
+
private offlineSubs;
|
|
2551
2750
|
private initializeComponent;
|
|
2552
2751
|
private updateTableConfiguration;
|
|
2553
2752
|
private setupDataLoading;
|
|
@@ -2584,7 +2783,14 @@ declare class TableComponent implements OnInit, AfterViewInit, OnDestroy {
|
|
|
2584
2783
|
execAction(button: Button, row: any): void;
|
|
2585
2784
|
private getElevationClass;
|
|
2586
2785
|
private realTimeRefreshOrFallback;
|
|
2786
|
+
private setupOffline;
|
|
2787
|
+
private placeStatusIcons;
|
|
2788
|
+
private applyOfflineOverlay;
|
|
2789
|
+
private computeOverlay;
|
|
2790
|
+
private reapplyOverlay;
|
|
2587
2791
|
private setupRealTimeSubscriptions;
|
|
2792
|
+
private realTimeBaseRows;
|
|
2793
|
+
private applyRealTimeData;
|
|
2588
2794
|
private deriveEntityName;
|
|
2589
2795
|
private findIdKey;
|
|
2590
2796
|
ngOnDestroy(): void;
|
|
@@ -3174,7 +3380,7 @@ declare class HtmlComponent implements OnInit {
|
|
|
3174
3380
|
value: string;
|
|
3175
3381
|
maxHeight: string;
|
|
3176
3382
|
display: string;
|
|
3177
|
-
sanitizedHtml:
|
|
3383
|
+
sanitizedHtml: string;
|
|
3178
3384
|
private sanitizeHtml;
|
|
3179
3385
|
static ɵfac: i0.ɵɵFactoryDeclaration<HtmlComponent, never>;
|
|
3180
3386
|
static ɵcmp: i0.ɵɵComponentDeclaration<HtmlComponent, "spa-html", never, { "value": { "alias": "value"; "required": false; }; "maxHeight": { "alias": "maxHeight"; "required": false; }; "display": { "alias": "display"; "required": false; }; }, {}, never, never, false, never>;
|
|
@@ -3750,7 +3956,7 @@ declare class CurrencyInputModule {
|
|
|
3750
3956
|
|
|
3751
3957
|
declare class TinSpaModule {
|
|
3752
3958
|
static ɵfac: i0.ɵɵFactoryDeclaration<TinSpaModule, never>;
|
|
3753
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<TinSpaModule, [typeof TinSpaComponent, typeof TextComponent, typeof TextMaskComponent, typeof TextAreaComponent, typeof TextSingleComponent, typeof CheckComponent, typeof DateComponent, typeof DatetimeComponent, typeof LabelComponent, typeof SelectComponent, typeof ActivityComponent, typeof FilterComponent, typeof messageDialog, typeof MoneyComponent, typeof OptionComponent, typeof TilesComponent, typeof StepsComponent, typeof AttachComponent, typeof ChipsComponent, typeof LoaderComponent, typeof NavMenuComponent, typeof TableComponent, typeof DetailsDialog, typeof FormComponent, typeof CamelToWordsPipe, typeof NumberComponent, typeof SearchComponent, typeof ViewerComponent, typeof viewerDialog, typeof ListDialogComponent, typeof InvitationsTableComponent, typeof TableHeaderComponent, typeof TableRowComponent, typeof TableActionComponent, typeof AlertComponent, typeof EmailComponent, typeof PageComponent, typeof SelectCommonComponent, typeof SuffixComponent, typeof SelectContextDirective, typeof SelectLiteComponent, typeof TextMultiComponent, typeof SelectMultiComponent, typeof SelectBitwiseComponent, typeof HtmlComponent, typeof EditorComponent, typeof NotesComponent, typeof CapsulesComponent, typeof CardsComponent, typeof TabsComponent, typeof StatusesComponent, typeof GroupsComponent, typeof TitleActionsComponent, typeof WelcomeComponent, typeof TermsDialogComponent, typeof PrivacyDialogComponent, typeof ChartsComponent, typeof FeatureDirective, typeof SpaLandingComponent, typeof ToastComponent, typeof AgentComponent], [typeof SpaMatModule, typeof
|
|
3959
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<TinSpaModule, [typeof TinSpaComponent, typeof TextComponent, typeof TextMaskComponent, typeof TextAreaComponent, typeof TextSingleComponent, typeof CheckComponent, typeof DateComponent, typeof DatetimeComponent, typeof LabelComponent, typeof SelectComponent, typeof ActivityComponent, typeof FilterComponent, typeof messageDialog, typeof MoneyComponent, typeof OptionComponent, typeof TilesComponent, typeof StepsComponent, typeof AttachComponent, typeof ChipsComponent, typeof LoaderComponent, typeof NavMenuComponent, typeof TableComponent, typeof DetailsDialog, typeof FormComponent, typeof CamelToWordsPipe, typeof NumberComponent, typeof SearchComponent, typeof ViewerComponent, typeof viewerDialog, typeof ListDialogComponent, typeof InvitationsTableComponent, typeof TableHeaderComponent, typeof TableRowComponent, typeof TableActionComponent, typeof AlertComponent, typeof EmailComponent, typeof PageComponent, typeof SelectCommonComponent, typeof SuffixComponent, typeof SelectContextDirective, typeof SelectLiteComponent, typeof TextMultiComponent, typeof SelectMultiComponent, typeof SelectBitwiseComponent, typeof HtmlComponent, typeof EditorComponent, typeof NotesComponent, typeof CapsulesComponent, typeof CardsComponent, typeof TabsComponent, typeof StatusesComponent, typeof GroupsComponent, typeof TitleActionsComponent, typeof WelcomeComponent, typeof TermsDialogComponent, typeof PrivacyDialogComponent, typeof ChartsComponent, typeof FeatureDirective, typeof SpaLandingComponent, typeof ToastComponent, typeof AgentComponent, typeof OfflineIndicatorComponent], [typeof SpaMatModule, typeof i64.HttpClientModule, typeof CurrencyInputModule, typeof i66.NgxDocViewerModule, typeof i67.AngularEditorModule, typeof i68.BaseChartDirective, typeof i69.DragDropModule], [typeof TinSpaComponent, typeof SpaMatModule, typeof AlertComponent, typeof TextComponent, typeof TextMaskComponent, typeof TextAreaComponent, typeof TextSingleComponent, typeof TextMultiComponent, typeof messageDialog, typeof NavMenuComponent, typeof LoaderComponent, typeof TilesComponent, typeof DateComponent, typeof SelectComponent, typeof SelectBitwiseComponent, typeof SelectMultiComponent, typeof DatetimeComponent, typeof CheckComponent, typeof AttachComponent, typeof MoneyComponent, typeof ChipsComponent, typeof ActivityComponent, typeof OptionComponent, typeof LabelComponent, typeof StepsComponent, typeof FilterComponent, typeof TableComponent, typeof DetailsDialog, typeof FormComponent, typeof NumberComponent, typeof SearchComponent, typeof ViewerComponent, typeof viewerDialog, typeof ListDialogComponent, typeof ListDialogComponent, typeof EmailComponent, typeof PageComponent, typeof HtmlComponent, typeof EditorComponent, typeof NotesComponent, typeof CapsulesComponent, typeof TabsComponent, typeof StatusesComponent, typeof GroupsComponent, typeof TitleActionsComponent, typeof WelcomeComponent, typeof InvitationsTableComponent, typeof TermsDialogComponent, typeof PrivacyDialogComponent, typeof SelectLiteComponent, typeof ChartsComponent, typeof FeatureDirective, typeof SpaLandingComponent, typeof AgentComponent, typeof OfflineIndicatorComponent]>;
|
|
3754
3960
|
static ɵinj: i0.ɵɵInjectorDeclaration<TinSpaModule>;
|
|
3755
3961
|
}
|
|
3756
3962
|
|
|
@@ -4868,7 +5074,7 @@ declare class NotificationsConfigComponent implements OnInit {
|
|
|
4868
5074
|
|
|
4869
5075
|
declare class WorkflowModule {
|
|
4870
5076
|
static ɵfac: i0.ɵɵFactoryDeclaration<WorkflowModule, never>;
|
|
4871
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<WorkflowModule, [typeof ApprovalsComponent, typeof ApprovalsConfigComponent, typeof NotificationsComponent, typeof AppModelsComponent, typeof NotificationsConfigComponent], [typeof i4.CommonModule, typeof SpaAdminModule], never>;
|
|
5077
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<WorkflowModule, [typeof ApprovalsComponent, typeof ApprovalsConfigComponent, typeof NotificationsComponent, typeof AppModelsComponent, typeof NotificationsConfigComponent, typeof SyncComponent], [typeof i4.CommonModule, typeof SpaAdminModule], never>;
|
|
4872
5078
|
static ɵinj: i0.ɵɵInjectorDeclaration<WorkflowModule>;
|
|
4873
5079
|
}
|
|
4874
5080
|
|
|
@@ -4920,5 +5126,5 @@ declare class SpaHomeModule {
|
|
|
4920
5126
|
static ɵinj: i0.ɵɵInjectorDeclaration<SpaHomeModule>;
|
|
4921
5127
|
}
|
|
4922
5128
|
|
|
4923
|
-
export { ALSQUARE_SVG_DARK, ALSQUARE_SVG_WHITE, Account, AccountsComponent as AccountingAccountsComponent, AggregatesComponent as AccountingAggregatesComponent, AgingComponent as AccountingAgingComponent, CurrenciesComponent as AccountingCurrenciesComponent, AccountingDashboardComponent, InvoicesComponent as AccountingInvoicesComponent, AccountingModule, ReportsComponent as AccountingReportsComponent, AccountingService, StatementComponent as AccountingStatementComponent, TransactionTypesComponent as AccountingTransactionTypesComponent, TransactionsComponent as AccountingTransactionsComponent, Action, ActivityComponent, AdminModule, AgentComponent, AgentService, AlertComponent, AlertConfig, AlertMessage, AnalyticsService, ApiResponse, AppConfig, AppModelsComponent, AssetStatus, AssetsService, AttachComponent, AuthService, BillingPageComponent, BrandsComponent, CacheConfig, CapItem, CapsulesComponent, CategoriesComponent, ChangePasswordComponent, ChangeUserPassword, ChartConfig, ChartsComponent, CheckComponent, ChipsComponent, Constants, Core, CreateAccountComponent, CustomersComponent, DataServiceLib, DateComponent, DatetimeComponent, DepartmentsComponent, DetailsDialog, DetailsDialogConfig, DetailsDialogProcessor, DetailsSource, DialogService, EditorComponent, EmailComponent, EmployeesComponent, ExportService, FeatureDirective, FilterComponent, FormComponent, FormConfig, GeneralModule, GeneralService, GradesComponent, GroupsComponent, HRModule, HtmlComponent, HttpService, IndexModule, InventoryDashboardComponent, InventoryModule, InventoryService, InvitationsTableComponent, InvoiceDashboardComponent, InvoiceItemType, InvoiceStatus, LabelComponent, ListDialogComponent, ListDialogConfig, LoaderComponent, LoaderService, LoanPaymentsComponent, LoanProductsComponent, LoansComponent, LoansModule, LoansService, LogLevel, LogService, LoginComponent, LogsComponent, ManufacturingModule, MembershipComponent, MessageService, MoneyComponent, MovementType, NavMenuComponent, NotesComponent, NotesConfig, NotificationsService, NumberComponent, OnboardingComponent, OptionComponent, OverviewDashboardComponent, OverviewModule, PageComponent, PageConfig, PayrollDashboardComponent, PayrollModule, PlansComponent, PositionsComponent, PreferencesComponent, PrivacyDialogComponent, Profile, ProfileComponent, PurchaseStatus, PurchasingDashboardComponent, PurchasingModule, PushNotificationService, ReceiptStatus, RecoverAccountComponent, Register, Role, RoleAccess, RolesComponent, SalesDashboardComponent, SalesModule, SearchComponent, SearchConfig, SecurityConfig, SelectBitwiseComponent, SelectComponent, SelectLiteComponent, SelectMultiComponent, SettingsComponent, SignupComponent, SignupData, SpaAdminModule, SpaHomeModule, SpaIndexModule, SpaLandingComponent, SpaMatModule, SpaUserModule, StatusesComponent, Step, StepConfig, StepsComponent, StorageService, SubCategoriesComponent, SubscriptionPageComponent, SubscriptionService, SuppliersComponent, TIN_SPA_RUNTIME_CONFIG, TabService, TableComponent, TableConfig, TabsComponent, TasksComponent, TenancyModule, TenantsComponent, TermsDialogComponent, TextAreaComponent, TextComponent, TextMaskComponent, TextMultiComponent, TextSingleComponent, TileConfig, TilesComponent, TinSpaComponent, TinSpaModule, TinSpaService, TitleActionsComponent, TransactionTiming, UnitOfMeasure, UpdateService, User, UserModule, UsersComponent, ViewerComponent, WelcomeComponent, WorkflowModule, authGuard, dialogOptions, featureGuard, loginConfig, messageDialog, provideTinSpaRuntime, tinSpaLocationStrategyFactory, tinSpaMsalInstanceFactory, viewerDialog };
|
|
4924
|
-
export type { AgentMessage, AutoRefreshConfig, BitwiseOption, Button, CacheRule, CapsuleConfig, CardConfig, ChartItem, ChildField, CloseOptions, Color, Column, Confirm, ConversationSummary, Field, GroupConfig, GroupData, Icon, LandingBrandOverride, LandingColors, LandingConfig, LandingFeature, LandingFooterColumn, LandingFooterLink, LandingMetric, LandingModuleGroup, LandingModuleTile, LandingNavLink, LandingPricingPlan, LandingSecurityItem, LandingStep, LandingTestimonial, SearchField, SpaChartType, StatusConfig, StatusItem, StatusState, TableViewType, Tile, TileChartConfig, TileChartType, TileStyle, TinSpaMsalConfig, TinSpaRuntimeConfig, VisibleTab };
|
|
5129
|
+
export { ALSQUARE_SVG_DARK, ALSQUARE_SVG_WHITE, Account, AccountsComponent as AccountingAccountsComponent, AggregatesComponent as AccountingAggregatesComponent, AgingComponent as AccountingAgingComponent, CurrenciesComponent as AccountingCurrenciesComponent, AccountingDashboardComponent, InvoicesComponent as AccountingInvoicesComponent, AccountingModule, ReportsComponent as AccountingReportsComponent, AccountingService, StatementComponent as AccountingStatementComponent, TransactionTypesComponent as AccountingTransactionTypesComponent, TransactionsComponent as AccountingTransactionsComponent, Action, ActivityComponent, AdminModule, AgentComponent, AgentService, AlertComponent, AlertConfig, AlertMessage, AnalyticsService, ApiResponse, AppConfig, AppModelsComponent, AssetStatus, AssetsService, AttachComponent, AuthService, BillingPageComponent, BrandsComponent, CacheConfig, CapItem, CapsulesComponent, CategoriesComponent, ChangePasswordComponent, ChangeUserPassword, ChartConfig, ChartsComponent, CheckComponent, ChipsComponent, Constants, Core, CreateAccountComponent, CustomersComponent, DataServiceLib, DateComponent, DatetimeComponent, DepartmentsComponent, DetailsDialog, DetailsDialogConfig, DetailsDialogProcessor, DetailsSource, DialogService, EditorComponent, EmailComponent, EmployeesComponent, ExportService, FeatureDirective, FilterComponent, FormComponent, FormConfig, GeneralModule, GeneralService, GradesComponent, GroupsComponent, HRModule, HtmlComponent, HttpService, IndexModule, InventoryDashboardComponent, InventoryModule, InventoryService, InvitationsTableComponent, InvoiceDashboardComponent, InvoiceItemType, InvoiceStatus, LabelComponent, ListDialogComponent, ListDialogConfig, LoaderComponent, LoaderService, LoanPaymentsComponent, LoanProductsComponent, LoansComponent, LoansModule, LoansService, LogLevel, LogService, LoginComponent, LogsComponent, ManufacturingModule, MembershipComponent, MessageService, MoneyComponent, MovementType, NavMenuComponent, NotesComponent, NotesConfig, NotificationsService, NumberComponent, OfflineIndicatorComponent, OfflineService, OnboardingComponent, OptionComponent, OverviewDashboardComponent, OverviewModule, PageComponent, PageConfig, PayrollDashboardComponent, PayrollModule, PlansComponent, PositionsComponent, PreferencesComponent, PrivacyDialogComponent, Profile, ProfileComponent, PurchaseStatus, PurchasingDashboardComponent, PurchasingModule, PushNotificationService, ReceiptStatus, RecoverAccountComponent, Register, Role, RoleAccess, RolesComponent, SalesDashboardComponent, SalesModule, SearchComponent, SearchConfig, SecurityConfig, SelectBitwiseComponent, SelectComponent, SelectLiteComponent, SelectMultiComponent, SettingsComponent, SignupComponent, SignupData, SpaAdminModule, SpaHomeModule, SpaIndexModule, SpaLandingComponent, SpaMatModule, SpaUserModule, StatusesComponent, Step, StepConfig, StepsComponent, StorageService, SubCategoriesComponent, SubscriptionPageComponent, SubscriptionService, SuppliersComponent, SyncComponent, TIN_SPA_RUNTIME_CONFIG, TabService, TableComponent, TableConfig, TabsComponent, TasksComponent, TenancyModule, TenantsComponent, TermsDialogComponent, TextAreaComponent, TextComponent, TextMaskComponent, TextMultiComponent, TextSingleComponent, TileConfig, TilesComponent, TinSpaComponent, TinSpaModule, TinSpaService, TitleActionsComponent, TransactionTiming, UnitOfMeasure, UpdateService, User, UserModule, UsersComponent, ViewerComponent, WelcomeComponent, WorkflowModule, authGuard, dialogOptions, featureGuard, loginConfig, messageDialog, provideTinSpaRuntime, tinSpaLocationStrategyFactory, tinSpaMsalInstanceFactory, viewerDialog };
|
|
5130
|
+
export type { AgentMessage, AutoRefreshConfig, BitwiseOption, Button, CacheRule, CapsuleConfig, CardConfig, ChartItem, ChildField, CloseOptions, Color, Column, Confirm, ConversationSummary, Field, GroupConfig, GroupData, Icon, LandingBrandOverride, LandingColors, LandingConfig, LandingFeature, LandingFooterColumn, LandingFooterLink, LandingMetric, LandingModuleGroup, LandingModuleTile, LandingNavLink, LandingPricingPlan, LandingSecurityItem, LandingStep, LandingTestimonial, OfflineConfig, OfflineEntry, OfflineOpStatus, OutboxOp, SearchField, SpaChartType, StatusConfig, StatusItem, StatusState, TableViewType, Tile, TileChartConfig, TileChartType, TileStyle, TinSpaMsalConfig, TinSpaRuntimeConfig, VisibleTab };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tin-spa",
|
|
3
|
-
"version": "20.8.
|
|
3
|
+
"version": "20.8.2",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": "^20.0.0",
|
|
6
6
|
"@angular/core": "^20.0.0",
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"@kolkov/angular-editor": "^3.0.5"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"tslib": "^2.3.0"
|
|
12
|
+
"tslib": "^2.3.0",
|
|
13
|
+
"dexie": "^4.0.0"
|
|
13
14
|
},
|
|
14
15
|
"publishConfig": {
|
|
15
16
|
"registry": "https://registry.npmjs.org/"
|