tin-spa 20.14.21 → 20.14.26

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/index.d.ts CHANGED
@@ -954,7 +954,8 @@ interface Tile {
954
954
  name: string;
955
955
  alias?: string;
956
956
  value?: string;
957
- color?: string;
957
+ color?: string | ((data: any) => string);
958
+ format?: 'money' | 'number';
958
959
  selectedTile?: string;
959
960
  hidden?: VisibilityValue;
960
961
  visible?: VisibilityValue;
@@ -1325,6 +1326,40 @@ interface SetupRoleTemplate {
1325
1326
  module?: string;
1326
1327
  exists: boolean;
1327
1328
  }
1329
+ interface SetupPreset {
1330
+ key: string;
1331
+ name: string;
1332
+ description: string;
1333
+ effect: string;
1334
+ icon: string;
1335
+ group: string;
1336
+ module?: string;
1337
+ modelName: string;
1338
+ preferredRoleKeys: string[];
1339
+ exists: boolean;
1340
+ roleID?: number;
1341
+ }
1342
+ interface SetupNotificationPreset extends SetupPreset {
1343
+ operationType: number;
1344
+ }
1345
+ interface SetupApprovalPreset extends SetupPreset {
1346
+ createApprovalRequired: boolean;
1347
+ editApprovalRequired: boolean;
1348
+ deleteApprovalRequired: boolean;
1349
+ levelName: string;
1350
+ }
1351
+ interface SetupPresetSelection {
1352
+ key: string;
1353
+ roleID: number;
1354
+ }
1355
+ interface SetupPresetRole {
1356
+ name: string;
1357
+ value: number;
1358
+ }
1359
+ interface SetupPresetCatalog<T> {
1360
+ presets: T[];
1361
+ roles: SetupPresetRole[];
1362
+ }
1328
1363
  interface DayBookLane {
1329
1364
  key: string;
1330
1365
  label: string;
@@ -1426,6 +1461,41 @@ interface ChecklistConfig {
1426
1461
  itemTemplate?: any;
1427
1462
  }
1428
1463
 
1464
+ type ApiErrorKind = 'network' | 'timeout' | 'ratelimited' | 'badrequest' | 'forbidden' | 'notfound' | 'server' | 'unavailable' | 'unknown' | 'appfailure' | 'appfailure-submit';
1465
+ type AppFailureClass = 'opaque' | 'business';
1466
+ type AppFailureContext = 'submit' | 'load' | 'action';
1467
+ interface ApiErrorInfo {
1468
+ kind: ApiErrorKind;
1469
+ title: string;
1470
+ message: string;
1471
+ reference?: string;
1472
+ }
1473
+ declare class ApiErrorService {
1474
+ private messageService;
1475
+ private lastShownAt;
1476
+ /** How long a given kind stays suppressed after being shown. The user described "the same 10 seconds or so". */
1477
+ suppressWindowMs: number;
1478
+ submitSuppressWindowMs: number;
1479
+ constructor(messageService: MessageService);
1480
+ classify(error: HttpErrorResponse): ApiErrorInfo;
1481
+ private retryAfterText;
1482
+ retryAfterSeconds(error: HttpErrorResponse): number;
1483
+ /** True when this kind was already shown inside the suppression window — i.e. the user has already been told. */
1484
+ private isSuppressed;
1485
+ present(error: HttpErrorResponse): ApiErrorInfo;
1486
+ private opaqueMarkers;
1487
+ classifyMessage(message: string | null | undefined): AppFailureClass;
1488
+ extractReference(message: string | null | undefined): string | null;
1489
+ stripReference(message: string | null | undefined): string;
1490
+ presentAppFailure(response: {
1491
+ message?: string;
1492
+ } | null | undefined, context?: AppFailureContext, url?: string): AppFailureClass;
1493
+ /** Clears suppression so the next failure speaks up again — call after a successful request or reconnect. */
1494
+ reset(): void;
1495
+ static ɵfac: i0.ɵɵFactoryDeclaration<ApiErrorService, never>;
1496
+ static ɵprov: i0.ɵɵInjectableDeclaration<ApiErrorService>;
1497
+ }
1498
+
1429
1499
  interface ResolvedOfflineConfig {
1430
1500
  enabled: boolean;
1431
1501
  cacheRows: number;
@@ -1473,6 +1543,7 @@ declare class OfflineService {
1473
1543
  private authService;
1474
1544
  private storage;
1475
1545
  private messageService;
1546
+ private apiErrorService;
1476
1547
  private signalR;
1477
1548
  private zone;
1478
1549
  private runtimeConfig;
@@ -1490,9 +1561,12 @@ declare class OfflineService {
1490
1561
  private syncStarted;
1491
1562
  private draining;
1492
1563
  private backoffTimer;
1564
+ private serverRetryAfterMs;
1565
+ private retryNotBefore;
1493
1566
  private periodicTimer;
1494
1567
  private recoveryTimer;
1495
- constructor(httpService: HttpService, authService: AuthService, storage: StorageService, messageService: MessageService, signalR: SignalRService, zone: NgZone, runtimeConfig: TinSpaRuntimeConfig | null);
1568
+ constructor(httpService: HttpService, authService: AuthService, storage: StorageService, messageService: MessageService, apiErrorService: ApiErrorService, // Added: shares ONE Retry-After parser with the dialog/toast path
1569
+ signalR: SignalRService, zone: NgZone, runtimeConfig: TinSpaRuntimeConfig | null);
1496
1570
  /** App-level gate: offline capability only runs when the app opts in via provideTinSpaRuntime({ offline: true }).
1497
1571
  * When off, register()/ensureConnectivity() no-op, so a consumer that never uses offline runs none of this. */
1498
1572
  get enabled(): boolean;
@@ -1506,6 +1580,7 @@ declare class OfflineService {
1506
1580
  private addReadPrefix;
1507
1581
  private addReadUrl;
1508
1582
  private registerLookups;
1583
+ private registerButtonLookups;
1509
1584
  cacheKey(url: string): string;
1510
1585
  isPagedRead(url: string): boolean;
1511
1586
  matchRead(url: string): OfflineEntry | null;
@@ -1537,7 +1612,7 @@ declare class OfflineService {
1537
1612
  private stopRecoveryPolling;
1538
1613
  private startSync;
1539
1614
  resumeQueue(): Promise<void>;
1540
- drain(): Promise<void>;
1615
+ drain(auto?: boolean): Promise<void>;
1541
1616
  private drainLoop;
1542
1617
  private sendOp;
1543
1618
  private finishOp;
@@ -1552,7 +1627,7 @@ declare class OfflineService {
1552
1627
  private parseAction;
1553
1628
  private hash;
1554
1629
  private sanitize;
1555
- static ɵfac: i0.ɵɵFactoryDeclaration<OfflineService, [null, null, null, null, null, null, { optional: true; }]>;
1630
+ static ɵfac: i0.ɵɵFactoryDeclaration<OfflineService, [null, null, null, null, null, null, null, { optional: true; }]>;
1556
1631
  static ɵprov: i0.ɵɵInjectableDeclaration<OfflineService>;
1557
1632
  }
1558
1633
 
@@ -1608,6 +1683,7 @@ declare class DataServiceLib {
1608
1683
  capPayrollRuns: CapItem;
1609
1684
  capCommissionConfigs: CapItem;
1610
1685
  capCommissionEntries: CapItem;
1686
+ capCommissionStatement: CapItem;
1611
1687
  capSalaryAdvances: CapItem;
1612
1688
  capOvertimeEntries: CapItem;
1613
1689
  capApprovals: CapItem;
@@ -1868,6 +1944,9 @@ declare class AccountingService {
1868
1944
  statementFormConfig: FormConfig;
1869
1945
  statementTableConfig: TableConfig;
1870
1946
  statementSearchTableConfig: TableConfig;
1947
+ customerStatementTileConfig: TileConfig;
1948
+ supplierStatementTileConfig: TileConfig;
1949
+ statementLinesTableConfig: TableConfig;
1871
1950
  taxRateFormConfig: FormConfig;
1872
1951
  taxRateCreateButton: Button;
1873
1952
  taxRateEditButton: Button;
@@ -2204,10 +2283,21 @@ declare class PayrollService {
2204
2283
  employeePayslipHistoryTableConfig: TableConfig;
2205
2284
  employeeSalaryComponentFormConfig: FormConfig;
2206
2285
  employeeSalaryComponentsTableConfig: TableConfig;
2286
+ editCommissionConfigButton: Button;
2207
2287
  commissionConfigFormConfig: FormConfig;
2288
+ commissionConfigTierFormConfig: FormConfig;
2289
+ commissionConfigTiersTableConfig: TableConfig;
2290
+ commissionConfigDetailsConfig: DetailsDialogConfig;
2291
+ viewCommissionConfigButton: Button;
2292
+ createCommissionConfigButton: Button;
2208
2293
  commissionConfigsTableConfig: TableConfig;
2209
2294
  employeeCommissionConfigsTableConfig: TableConfig;
2295
+ approveCommissionEntryButton: Button;
2296
+ returnCommissionEntryButton: Button;
2210
2297
  commissionEntryFormConfig: FormConfig;
2298
+ commissionEntryLinesTableConfig: TableConfig;
2299
+ commissionEntryDetailsConfig: DetailsDialogConfig;
2300
+ viewCommissionEntryButton: Button;
2211
2301
  commissionEntriesTableConfig: TableConfig;
2212
2302
  employeeCommissionEntriesTableConfig: TableConfig;
2213
2303
  salaryAdvanceFormConfig: FormConfig;
@@ -2219,6 +2309,7 @@ declare class PayrollService {
2219
2309
  submitPayrollButton: Button;
2220
2310
  postPayrollButton: Button;
2221
2311
  markPaidButton: Button;
2312
+ recalculatePayrollButton: Button;
2222
2313
  payrollRunFormConfig: FormConfig;
2223
2314
  payrollRunsTableConfig: TableConfig;
2224
2315
  static ɵfac: i0.ɵɵFactoryDeclaration<PayrollService, never>;
@@ -2428,6 +2519,7 @@ interface AgentSessionInfo {
2428
2519
  declare class AgentService {
2429
2520
  private dataService;
2430
2521
  private signalRService;
2522
+ private apiErrorService;
2431
2523
  private messages;
2432
2524
  private conversations;
2433
2525
  private typing;
@@ -2444,7 +2536,7 @@ declare class AgentService {
2444
2536
  greeting$: rxjs.Observable<string>;
2445
2537
  suggestedQuestions$: rxjs.Observable<string[]>;
2446
2538
  sessionInfo$: rxjs.Observable<AgentSessionInfo>;
2447
- constructor(dataService: DataServiceLib, signalRService: SignalRService);
2539
+ constructor(dataService: DataServiceLib, signalRService: SignalRService, apiErrorService: ApiErrorService);
2448
2540
  get appName(): string;
2449
2541
  get agentName(): string;
2450
2542
  private initListeners;
@@ -2483,47 +2575,16 @@ declare class AnalyticsService {
2483
2575
  static ɵprov: i0.ɵɵInjectableDeclaration<AnalyticsService>;
2484
2576
  }
2485
2577
 
2486
- type ApiErrorKind = 'network' | 'timeout' | 'badrequest' | 'forbidden' | 'notfound' | 'server' | 'unavailable' | 'unknown' | 'appfailure' | 'appfailure-submit';
2487
- type AppFailureClass = 'opaque' | 'business';
2488
- type AppFailureContext = 'submit' | 'load' | 'action';
2489
- interface ApiErrorInfo {
2490
- kind: ApiErrorKind;
2491
- title: string;
2492
- message: string;
2493
- reference?: string;
2494
- }
2495
- declare class ApiErrorService {
2496
- private messageService;
2497
- private lastShownAt;
2498
- /** How long a given kind stays suppressed after being shown. The user described "the same 10 seconds or so". */
2499
- suppressWindowMs: number;
2500
- submitSuppressWindowMs: number;
2501
- constructor(messageService: MessageService);
2502
- classify(error: HttpErrorResponse): ApiErrorInfo;
2503
- /** True when this kind was already shown inside the suppression window — i.e. the user has already been told. */
2504
- private isSuppressed;
2505
- present(error: HttpErrorResponse): ApiErrorInfo;
2506
- private opaqueMarkers;
2507
- classifyMessage(message: string | null | undefined): AppFailureClass;
2508
- extractReference(message: string | null | undefined): string | null;
2509
- presentAppFailure(response: {
2510
- message?: string;
2511
- } | null | undefined, context?: AppFailureContext, url?: string): AppFailureClass;
2512
- /** Clears suppression so the next failure speaks up again — call after a successful request or reconnect. */
2513
- reset(): void;
2514
- static ɵfac: i0.ɵɵFactoryDeclaration<ApiErrorService, never>;
2515
- static ɵprov: i0.ɵɵInjectableDeclaration<ApiErrorService>;
2516
- }
2517
-
2518
2578
  declare class SetupService {
2519
2579
  private dataService;
2580
+ private apiErrorService;
2520
2581
  private pendingCount;
2521
2582
  pendingCount$: Observable<number>;
2522
2583
  private status;
2523
2584
  status$: Observable<SetupStatus>;
2524
2585
  private modules;
2525
2586
  modules$: Observable<SetupModule$1[]>;
2526
- constructor(dataService: DataServiceLib);
2587
+ constructor(dataService: DataServiceLib, apiErrorService: ApiErrorService);
2527
2588
  get enabled(): boolean;
2528
2589
  loadCount(): void;
2529
2590
  loadStatus(): void;
@@ -2532,6 +2593,10 @@ declare class SetupService {
2532
2593
  setModule(key: string, enabled: boolean): Observable<ApiResponse>;
2533
2594
  loadRoleTemplates(): Observable<ApiResponse>;
2534
2595
  createRoles(keys: string[]): Observable<ApiResponse>;
2596
+ loadNotificationPresets(): Observable<ApiResponse>;
2597
+ applyNotificationPresets(items: SetupPresetSelection[], includeEmail: boolean): Observable<ApiResponse>;
2598
+ loadApprovalPresets(): Observable<ApiResponse>;
2599
+ applyApprovalPresets(items: SetupPresetSelection[]): Observable<ApiResponse>;
2535
2600
  refresh(): void;
2536
2601
  static ɵfac: i0.ɵɵFactoryDeclaration<SetupService, never>;
2537
2602
  static ɵprov: i0.ɵɵInjectableDeclaration<SetupService>;
@@ -2574,11 +2639,49 @@ declare class LastRouteService {
2574
2639
  static ɵprov: i0.ɵɵInjectableDeclaration<LastRouteService>;
2575
2640
  }
2576
2641
 
2642
+ interface PresetRow {
2643
+ preset: SetupPreset;
2644
+ before: string;
2645
+ after: string;
2646
+ }
2647
+ interface PresetPicker {
2648
+ stepKey: string;
2649
+ defaultGroup: string;
2650
+ emptyText: string;
2651
+ doneText: string;
2652
+ roleAria: string;
2653
+ showEmail: boolean;
2654
+ buttonLabel: (count: number) => string;
2655
+ toastLabel: (created: number) => string;
2656
+ loadUrl: string;
2657
+ applyUrl: string;
2658
+ load: () => Observable<any>;
2659
+ apply: (items: SetupPresetSelection[]) => Observable<any>;
2660
+ presets: SetupPreset[];
2661
+ roles: SetupPresetRole[];
2662
+ groups: {
2663
+ name: string;
2664
+ rows: PresetRow[];
2665
+ on: number;
2666
+ total: number;
2667
+ }[];
2668
+ selected: {
2669
+ [key: string]: boolean;
2670
+ };
2671
+ role: {
2672
+ [key: string]: number;
2673
+ };
2674
+ count: number;
2675
+ loaded: boolean;
2676
+ applying: boolean;
2677
+ action: ChecklistAction;
2678
+ }
2577
2679
  declare class SetupGuideComponent implements OnInit {
2578
2680
  dataService: DataServiceLib;
2579
2681
  setupService: SetupService;
2580
2682
  private dialogService;
2581
2683
  private messageService;
2684
+ private apiErrorService;
2582
2685
  status: SetupStatus | null;
2583
2686
  groups: {
2584
2687
  name: string;
@@ -2599,6 +2702,10 @@ declare class SetupGuideComponent implements OnInit {
2599
2702
  [key: string]: boolean;
2600
2703
  };
2601
2704
  creatingRoles: boolean;
2705
+ includeEmail: boolean;
2706
+ notificationPicker: PresetPicker;
2707
+ approvalPicker: PresetPicker;
2708
+ pickers: PresetPicker[];
2602
2709
  get title(): string;
2603
2710
  ngOnInit(): void;
2604
2711
  private buildGroups;
@@ -2624,6 +2731,16 @@ declare class SetupGuideComponent implements OnInit {
2624
2731
  private loadRoleTemplates;
2625
2732
  get selectedTemplateCount(): number;
2626
2733
  toggleTemplate(tpl: SetupRoleTemplate): void;
2734
+ pickerFor(step: SetupStep): PresetPicker | undefined;
2735
+ private hasPresetsStep;
2736
+ private loadPresets;
2737
+ private buildPresetGroups;
2738
+ private toPresetRow;
2739
+ private recountPresets;
2740
+ togglePreset(picker: PresetPicker, preset: SetupPreset): void;
2741
+ setPresetRole(picker: PresetPicker, preset: SetupPreset, value: string): void;
2742
+ toggleIncludeEmail(): void;
2743
+ applyPresets(picker: PresetPicker): void;
2627
2744
  demoBusy: boolean;
2628
2745
  get showDemoData(): boolean;
2629
2746
  seedDemoData(): void;
@@ -2764,6 +2881,7 @@ declare class TableComponent implements OnInit, AfterViewInit, OnDestroy {
2764
2881
  isRowEditing(row: any): boolean;
2765
2882
  getInlineField(column: Column): Field | null;
2766
2883
  startInlineEdit(row: any): void;
2884
+ private seedInlineDefaults;
2767
2885
  cancelInlineEdit(): void;
2768
2886
  submitInlineEdit(): void;
2769
2887
  private updateTableConfiguration;
@@ -2915,6 +3033,7 @@ declare class AppConfigurationComponent implements OnInit {
2915
3033
  private messageService;
2916
3034
  private authService;
2917
3035
  private configService;
3036
+ private apiErrorService;
2918
3037
  private router;
2919
3038
  goToModules(): void;
2920
3039
  configuration: any;
@@ -3748,6 +3867,8 @@ declare class TilesComponent implements OnInit, OnChanges, OnDestroy, AfterViewI
3748
3867
  clicked(clickedTile: Tile): void;
3749
3868
  pop(x: any): void;
3750
3869
  isHidden(tile: Tile): boolean;
3870
+ displayValue(tile: Tile): any;
3871
+ tileColor(tile: Tile): string;
3751
3872
  isTileValuePrimitive(tile: Tile): boolean;
3752
3873
  hasTileChartData(tile: Tile): boolean;
3753
3874
  private buildTileMiniChartData;
@@ -4224,7 +4345,8 @@ declare class InvitationsTableComponent implements OnInit {
4224
4345
  dataService: DataServiceLib;
4225
4346
  private messageService;
4226
4347
  authService: AuthService;
4227
- constructor(dataService: DataServiceLib, messageService: MessageService, authService: AuthService);
4348
+ private apiErrorService;
4349
+ constructor(dataService: DataServiceLib, messageService: MessageService, authService: AuthService, apiErrorService: ApiErrorService);
4228
4350
  ngOnInit(): void;
4229
4351
  invActionClicked(x: any): void;
4230
4352
  tableReload: Subject<boolean>;
@@ -4675,7 +4797,8 @@ declare class EditorComponent implements OnInit {
4675
4797
 
4676
4798
  declare class NotesComponent implements OnInit {
4677
4799
  private dataService;
4678
- constructor(dataService: DataServiceLib);
4800
+ private apiErrorService;
4801
+ constructor(dataService: DataServiceLib, apiErrorService: ApiErrorService);
4679
4802
  ngOnInit(): void;
4680
4803
  title: string;
4681
4804
  notes: any[];
@@ -5332,6 +5455,7 @@ declare class ImportDialogComponent implements OnInit {
5332
5455
  private httpService;
5333
5456
  private http;
5334
5457
  private messageService;
5458
+ private apiErrorService;
5335
5459
  private dialogRef;
5336
5460
  config: ImportConfig;
5337
5461
  entity: string;
@@ -5362,7 +5486,8 @@ declare class ImportDialogComponent implements OnInit {
5362
5486
  selectedFile: File;
5363
5487
  editingRowId: number;
5364
5488
  editModel: any;
5365
- constructor(httpService: HttpService, http: HttpClient, messageService: MessageService, dialogRef: MatDialogRef<ImportDialogComponent>, config: ImportConfig);
5489
+ constructor(httpService: HttpService, http: HttpClient, messageService: MessageService, apiErrorService: ApiErrorService, // Changed: injected so a step failure is classified rather than shown verbatim
5490
+ dialogRef: MatDialogRef<ImportDialogComponent>, config: ImportConfig);
5366
5491
  ngOnInit(): void;
5367
5492
  loadActive(): void;
5368
5493
  onFileSelected(event: any): void;
@@ -5624,6 +5749,7 @@ declare class UsersComponent implements OnInit {
5624
5749
  private dataService;
5625
5750
  private dialog;
5626
5751
  private messageService;
5752
+ private apiErrorService;
5627
5753
  userBaseFormConfig: FormConfig;
5628
5754
  createDialog: DetailsDialogConfig;
5629
5755
  editDialog: DetailsDialogConfig;
@@ -5820,6 +5946,7 @@ declare class AgingComponent implements OnInit {
5820
5946
  loadSummaryData(): void;
5821
5947
  postProvision(): void;
5822
5948
  private messageService;
5949
+ private apiErrorService;
5823
5950
  agingTableConfigs: TableConfig[];
5824
5951
  tileConfig: TileConfig;
5825
5952
  constructor(dataServiceLib: DataServiceLib);
@@ -5830,6 +5957,7 @@ declare class AgingComponent implements OnInit {
5830
5957
  declare class SupplierAgingComponent implements OnInit {
5831
5958
  private dataServiceLib;
5832
5959
  purchasingService: PurchasingService;
5960
+ private apiErrorService;
5833
5961
  ngOnInit(): void;
5834
5962
  summaryData: any;
5835
5963
  loadSummaryData(): void;
@@ -5883,7 +6011,6 @@ declare class StatementComponent implements OnInit {
5883
6011
  pageConfig: PageConfig;
5884
6012
  state: any;
5885
6013
  ngOnInit(): void;
5886
- loadOptions(kind: string, url: string): void;
5887
6014
  private query;
5888
6015
  load(kind: string): void;
5889
6016
  exportPdf(kind: string): void;
@@ -5974,6 +6101,7 @@ declare class JournalEntryDialogComponent implements OnInit {
5974
6101
  private httpService;
5975
6102
  private http;
5976
6103
  private messageService;
6104
+ private apiErrorService;
5977
6105
  date: string;
5978
6106
  description: string;
5979
6107
  journalType: string;
@@ -6348,7 +6476,8 @@ declare class GradesComponent implements OnInit {
6348
6476
  declare class OnboardingComponent implements OnInit {
6349
6477
  dataService: DataServiceLib;
6350
6478
  authService: AuthService;
6351
- constructor(dataService: DataServiceLib, authService: AuthService);
6479
+ private apiErrorService;
6480
+ constructor(dataService: DataServiceLib, authService: AuthService, apiErrorService: ApiErrorService);
6352
6481
  ngOnInit(): void;
6353
6482
  username: any;
6354
6483
  step: string;
@@ -6407,6 +6536,43 @@ declare class CommissionEntriesComponent {
6407
6536
  static ɵcmp: i0.ɵɵComponentDeclaration<CommissionEntriesComponent, "spa-commission-entries", never, {}, {}, never, never, false, never>;
6408
6537
  }
6409
6538
 
6539
+ declare class CommissionStatementComponent implements OnInit {
6540
+ private dataService;
6541
+ private configService;
6542
+ private messageService;
6543
+ months: {
6544
+ value: number;
6545
+ name: string;
6546
+ }[];
6547
+ periodYear: number;
6548
+ periodMonth: number;
6549
+ busy: boolean;
6550
+ previewResult: any;
6551
+ generateResult: any;
6552
+ entries: any[];
6553
+ statementLoaded: boolean;
6554
+ totals: {
6555
+ draft: number;
6556
+ approved: number;
6557
+ paid: number;
6558
+ reversed: number;
6559
+ carried: number;
6560
+ };
6561
+ tripCommissionEnabled: boolean;
6562
+ ngOnInit(): void;
6563
+ periodLabel(): string;
6564
+ get previewTotal(): number;
6565
+ statusClass(entry: any): string;
6566
+ clearResults(): void;
6567
+ loadStatement(): void;
6568
+ private recalculateTotals;
6569
+ preview(): void;
6570
+ generate(): void;
6571
+ private validPeriod;
6572
+ static ɵfac: i0.ɵɵFactoryDeclaration<CommissionStatementComponent, never>;
6573
+ static ɵcmp: i0.ɵɵComponentDeclaration<CommissionStatementComponent, "spa-commission-statement", never, {}, {}, never, never, false, never>;
6574
+ }
6575
+
6410
6576
  declare class SalaryAdvancesComponent {
6411
6577
  private payrollService;
6412
6578
  pageConfig: PageConfig;
@@ -6435,7 +6601,7 @@ declare class PayrollDashboardComponent implements OnInit {
6435
6601
 
6436
6602
  declare class PayrollModule {
6437
6603
  static ɵfac: i0.ɵɵFactoryDeclaration<PayrollModule, never>;
6438
- static ɵmod: i0.ɵɵNgModuleDeclaration<PayrollModule, [typeof SalaryStructuresComponent, typeof StatutoryDeductionsComponent, typeof PayrollRunsComponent, typeof CommissionConfigsComponent, typeof CommissionEntriesComponent, typeof SalaryAdvancesComponent, typeof OvertimeEntriesComponent, typeof PayrollDashboardComponent], [typeof i4.CommonModule, typeof SpaAdminModule], never>;
6604
+ static ɵmod: i0.ɵɵNgModuleDeclaration<PayrollModule, [typeof SalaryStructuresComponent, typeof StatutoryDeductionsComponent, typeof PayrollRunsComponent, typeof CommissionConfigsComponent, typeof CommissionEntriesComponent, typeof CommissionStatementComponent, typeof SalaryAdvancesComponent, typeof OvertimeEntriesComponent, typeof PayrollDashboardComponent], [typeof i4.CommonModule, typeof SpaAdminModule], never>;
6439
6605
  static ɵinj: i0.ɵɵInjectorDeclaration<PayrollModule>;
6440
6606
  }
6441
6607
 
@@ -6535,7 +6701,8 @@ declare class TenantSettingsComponent implements OnInit {
6535
6701
  private messageService;
6536
6702
  authService: AuthService;
6537
6703
  dialog: MatDialog;
6538
- constructor(dataService: DataServiceLib, messageService: MessageService, authService: AuthService, dialog: MatDialog);
6704
+ private apiErrorService;
6705
+ constructor(dataService: DataServiceLib, messageService: MessageService, authService: AuthService, dialog: MatDialog, apiErrorService: ApiErrorService);
6539
6706
  ngOnInit(): void;
6540
6707
  newName: any;
6541
6708
  myRole: any;
@@ -6632,13 +6799,14 @@ declare class SubscriptionPageComponent implements OnInit {
6632
6799
  private httpService;
6633
6800
  private subscriptionService;
6634
6801
  private snackBar;
6802
+ private apiErrorService;
6635
6803
  currentSubscription: any;
6636
6804
  availablePlans: any[];
6637
6805
  loading: boolean;
6638
6806
  showConfirmation: boolean;
6639
6807
  selectedPlan: any;
6640
6808
  changingPlan: boolean;
6641
- constructor(httpService: HttpService, subscriptionService: SubscriptionService, snackBar: MatSnackBar);
6809
+ constructor(httpService: HttpService, subscriptionService: SubscriptionService, snackBar: MatSnackBar, apiErrorService: ApiErrorService);
6642
6810
  ngOnInit(): void;
6643
6811
  loadCurrentSubscription(): void;
6644
6812
  loadAvailablePlans(): void;
@@ -6654,6 +6822,7 @@ declare class SubscriptionPageComponent implements OnInit {
6654
6822
  declare class BillingPageComponent implements OnInit {
6655
6823
  private httpService;
6656
6824
  private snackBar;
6825
+ private apiErrorService;
6657
6826
  currentSubscription: any;
6658
6827
  invoices: any[];
6659
6828
  loading: boolean;
@@ -6663,7 +6832,7 @@ declare class BillingPageComponent implements OnInit {
6663
6832
  paymentInvoice: any;
6664
6833
  paymentProcessing: boolean;
6665
6834
  paymentResult: any;
6666
- constructor(httpService: HttpService, snackBar: MatSnackBar);
6835
+ constructor(httpService: HttpService, snackBar: MatSnackBar, apiErrorService: ApiErrorService);
6667
6836
  ngOnInit(): void;
6668
6837
  loadCurrentSubscription(): void;
6669
6838
  loadInvoices(): void;
@@ -6674,6 +6843,7 @@ declare class BillingPageComponent implements OnInit {
6674
6843
  closeDetail(): void;
6675
6844
  initiatePayment(invoice: any): void;
6676
6845
  processPayment(): void;
6846
+ private paymentFailureText;
6677
6847
  closePayment(): void;
6678
6848
  static ɵfac: i0.ɵɵFactoryDeclaration<BillingPageComponent, never>;
6679
6849
  static ɵcmp: i0.ɵɵComponentDeclaration<BillingPageComponent, "spa-billing", never, {}, {}, never, never, false, never>;
@@ -6817,4 +6987,4 @@ declare class SpaHomeModule {
6817
6987
  }
6818
6988
 
6819
6989
  export { ALSQUARE_SVG_DARK, ALSQUARE_SVG_WHITE, Account, AccountsComponent as AccountingAccountsComponent, AggregatesComponent as AccountingAggregatesComponent, AgingComponent as AccountingAgingComponent, CreditNotesComponent as AccountingCreditNotesComponent, CurrenciesComponent as AccountingCurrenciesComponent, AccountingDashboardComponent, InvoicesComponent as AccountingInvoicesComponent, AccountingModule, ReportsComponent as AccountingReportsComponent, AccountingService, StatementComponent as AccountingStatementComponent, TransactionTypesComponent as AccountingTransactionTypesComponent, TransactionsComponent as AccountingTransactionsComponent, VatReturnComponent as AccountingVatReturnComponent, Action, ActivityComponent, AdminModule, AgentComponent, AgentPageComponent, AgentService, AlertComponent, AlertConfig, AlertMessage, AnalyticsService, ApiErrorService, ApiResponse, AppConfig, AppConfigurationComponent, AppModelsComponent, AssetStatus, AssetsService, AttachComponent, AuthService, BankReconciliationComponent, BillingPageComponent, BottomTab, BrandsComponent, CacheConfig, CapItem, CapsulesComponent, CategoriesComponent, ChangePasswordComponent, ChangeUserPassword, ChartConfig, ChartsComponent, CheckComponent, ChecklistComponent, ChipsComponent, ConfigService, Constants, Core, CreateAccountComponent, CreditNoteStatus, CustomersComponent, DataServiceLib, DateComponent, DatetimeComponent, DayBookComponent, DepartmentsComponent, DetailsDialog, DetailsDialogConfig, DetailsDialogProcessor, DetailsSource, DialogService, EditorComponent, EmailComponent, EmployeesComponent, ExportService, FeatureDirective, FieldLoadIndicator, FilterComponent, FiscalPeriodStatus, FiscalPeriodsComponent, FormComponent, FormConfig, FormSkeletonComponent, GeneralModule, GeneralService, GradesComponent, GroupsComponent, HRModule, HtmlComponent, HttpService, ImportDialogComponent, IndexModule, InventoryDashboardComponent, InventoryModule, InventoryService, InvitationsTableComponent, InvoiceDashboardComponent, InvoiceItemType, InvoiceStatus, JournalEntryDialogComponent, LabelComponent, LastRouteService, 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, PaginationConfig, PayrollDashboardComponent, PayrollModule, PayrollService, PerceivedProgress, PlansComponent, PositionsComponent, PrivacyDialogComponent, ProductionService, Profile, ProfileComponent, PurchaseStatus, PurchasingDashboardComponent, PurchasingModule, PurchasingService, PushNotificationService, QUIET_DELAY_MS, QUIET_MIN_MS, QuoteStatus, QuotesComponent, ReceiptDialogComponent, ReceiptStatus, ReceiptsComponent, ReconcileDialogComponent, RecoverAccountComponent, Register, RevenueScheduleDialogComponent, RevenueSchedulesComponent, Role, RoleAccess, RolesComponent, SalesDashboardComponent, SalesModule, SalesService, SearchComponent, SearchConfig, SecurityConfig, SelectBitwiseComponent, SelectComponent, SelectLiteComponent, SelectMultiComponent, SettingsComponent, SetupGuideComponent, SetupService, SignupComponent, SignupData, SpaAdminModule, SpaDayBookModule, SpaHomeModule, SpaIndexModule, SpaLandingComponent, SpaMatModule, SpaUserModule, StatementImportDialogComponent, StatusesComponent, Step, StepConfig, StepsComponent, StorageService, SubCategoriesComponent, SubscriptionPageComponent, SubscriptionService, SuppliersComponent, SyncComponent, TIN_SILENT_REQUEST, 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, getTinSpaAppSettings, isSilentRequest, loadTinSpaAppSettings, loginConfig, messageDialog, provideTinSpaRuntime, resolveQuietLoading, silentContext, tinSpaLocationStrategyFactory, tinSpaMsalInstanceFactory, tinSpaRuntimeConfigFactory, viewerDialog };
6820
- export type { AgentMessage, AgentSessionInfo, ApiErrorInfo, ApiErrorKind, AppConfigSection, AppConfigurationConfig, AppFailureClass, AppFailureContext, AutoRefreshConfig, BitwiseOption, Button, CacheRule, CapsuleConfig, CardConfig, ChartItem, ChecklistAction, ChecklistConfig, ChecklistItem, ChildField, CloseOptions, Color, Column, Confirm, ConversationSummary, CreateTabConfig, DayBookConfig, DayBookGroupView, DayBookLane, DayBookSection, DayBookSectionView, DayBookStage, DayBookStageTiles, Field, GroupConfig, GroupData, Icon, ImportConfig, InlineEditConfig, LandingBrandOverride, LandingColors, LandingConfig, LandingFeature, LandingFooterColumn, LandingFooterLink, LandingMetric, LandingModuleGroup, LandingModuleTile, LandingNavLink, LandingPricingPlan, LandingSecurityItem, LandingStep, LandingTestimonial, OfflineConfig, OfflineEntry, OfflineOpStatus, OutboxOp, PerceivedProgressOptions, QuietLoadingHost, RefreshResult, SearchField, SetupConfig, SetupModule$1 as SetupModule, SetupRoleTemplate, SetupStatus, SetupStep, SetupStepAction, SpaChartType, StatusConfig, StatusItem, StatusState, TableSectionChip, TableSectionConfig, TableViewType, Tile, TileChartConfig, TileChartType, TileStyle, TinSpaAppSettings, TinSpaMsalConfig, TinSpaMsalSettings, TinSpaRuntimeConfig, TinSpaTableDefaults, VisibilityValue, VisibleTab };
6990
+ export type { AgentMessage, AgentSessionInfo, ApiErrorInfo, ApiErrorKind, AppConfigSection, AppConfigurationConfig, AppFailureClass, AppFailureContext, AutoRefreshConfig, BitwiseOption, Button, CacheRule, CapsuleConfig, CardConfig, ChartItem, ChecklistAction, ChecklistConfig, ChecklistItem, ChildField, CloseOptions, Color, Column, Confirm, ConversationSummary, CreateTabConfig, DayBookConfig, DayBookGroupView, DayBookLane, DayBookSection, DayBookSectionView, DayBookStage, DayBookStageTiles, Field, GroupConfig, GroupData, Icon, ImportConfig, InlineEditConfig, LandingBrandOverride, LandingColors, LandingConfig, LandingFeature, LandingFooterColumn, LandingFooterLink, LandingMetric, LandingModuleGroup, LandingModuleTile, LandingNavLink, LandingPricingPlan, LandingSecurityItem, LandingStep, LandingTestimonial, OfflineConfig, OfflineEntry, OfflineOpStatus, OutboxOp, PerceivedProgressOptions, QuietLoadingHost, RefreshResult, SearchField, SetupApprovalPreset, SetupConfig, SetupModule$1 as SetupModule, SetupNotificationPreset, SetupPreset, SetupPresetCatalog, SetupPresetRole, SetupPresetSelection, SetupRoleTemplate, SetupStatus, SetupStep, SetupStepAction, SpaChartType, StatusConfig, StatusItem, StatusState, TableSectionChip, TableSectionConfig, TableViewType, Tile, TileChartConfig, TileChartType, TileStyle, TinSpaAppSettings, TinSpaMsalConfig, TinSpaMsalSettings, TinSpaRuntimeConfig, TinSpaTableDefaults, VisibilityValue, VisibleTab };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tin-spa",
3
- "version": "20.14.21",
3
+ "version": "20.14.26",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/tnyagato/ng-space.git"