@mj-biz-apps/accounting-ng 0.7.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/dist/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.d.ts +17 -13
  2. package/dist/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.d.ts.map +1 -1
  3. package/dist/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.js +103 -38
  4. package/dist/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.js.map +1 -1
  5. package/dist/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch.client.d.ts +10 -0
  6. package/dist/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch.client.d.ts.map +1 -1
  7. package/dist/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch.client.js +19 -1
  8. package/dist/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch.client.js.map +1 -1
  9. package/dist/lib/custom/JournalEntryBatchStatus/journal-entry-batch-status-dashboard.component.d.ts +11 -11
  10. package/dist/lib/custom/JournalEntryBatchStatus/journal-entry-batch-status-dashboard.component.d.ts.map +1 -1
  11. package/dist/lib/custom/JournalEntryBatchStatus/journal-entry-batch-status-dashboard.component.js +81 -66
  12. package/dist/lib/custom/JournalEntryBatchStatus/journal-entry-batch-status-dashboard.component.js.map +1 -1
  13. package/dist/lib/custom/overview/accounting-batches.component.d.ts +31 -13
  14. package/dist/lib/custom/overview/accounting-batches.component.d.ts.map +1 -1
  15. package/dist/lib/custom/overview/accounting-batches.component.js +242 -52
  16. package/dist/lib/custom/overview/accounting-batches.component.js.map +1 -1
  17. package/dist/lib/custom/overview/accounting-overview.component.d.ts +22 -13
  18. package/dist/lib/custom/overview/accounting-overview.component.d.ts.map +1 -1
  19. package/dist/lib/custom/overview/accounting-overview.component.js +156 -151
  20. package/dist/lib/custom/overview/accounting-overview.component.js.map +1 -1
  21. package/dist/lib/custom/shell/pages/dispatch-status.page.d.ts +2 -2
  22. package/dist/lib/custom/shell/pages/dispatch-status.page.d.ts.map +1 -1
  23. package/dist/lib/generated/Entities/mjBizAppsAccountingJournalEntryBatch/mjbizappsaccountingjournalentrybatch.form.component.d.ts.map +1 -1
  24. package/dist/lib/generated/Entities/mjBizAppsAccountingJournalEntryBatch/mjbizappsaccountingjournalentrybatch.form.component.js +22 -10
  25. package/dist/lib/generated/Entities/mjBizAppsAccountingJournalEntryBatch/mjbizappsaccountingjournalentrybatch.form.component.js.map +1 -1
  26. package/package.json +3 -3
@@ -3,29 +3,23 @@ import { ResourceData } from '@memberjunction/core-entities';
3
3
  import { mjBizAppsAccountingJournalEntryBatchEntity } from '@mj-biz-apps/accounting-entities';
4
4
  import { JournalEntryBatchDecision } from './journal-entry-batch-dispatch.client';
5
5
  import * as i0 from "@angular/core";
6
- /** The generated batch Status union (rule 2c: derived, never hand-copied). */
7
- type BatchStatus = mjBizAppsAccountingJournalEntryBatchEntity['Status'];
8
6
  /**
9
7
  * One batch row in the list, with its derived display + (lazily-loaded) CFO approval state.
10
8
  * Approval state is NOT a column on the batch — it lives in bizapps-tasks (a Task linked to the
11
9
  * batch + a terminal Task Decision), so we resolve it via the gate-backed `JournalEntryBatchApprovalState` query.
12
10
  */
13
- interface BatchRow {
14
- ID: string;
15
- JournalEntryBatchNumber: string;
16
- Status: BatchStatus;
17
- TargetSystem: string;
18
- TotalEntries: number;
19
- TotalDebits: number;
20
- TotalCredits: number;
21
- ExternalJournalEntryBatchRef: string | null;
22
- ErrorMessage: string | null;
11
+ /**
12
+ * The batch's own fields are PICKED from the generated entity class, never re-declared (Amith,
13
+ * PR #148 review). Only the genuinely non-entity parts — the gate result and the per-row
14
+ * in-flight flag, neither of which is a column — are declared here.
15
+ */
16
+ type BatchRow = Pick<mjBizAppsAccountingJournalEntryBatchEntity, 'ID' | 'JournalEntryBatchNumber' | 'Status' | 'TargetSystem' | 'TotalEntries' | 'TotalDebits' | 'TotalCredits' | 'ExternalJournalEntryBatchRef' | 'ErrorMessage' | 'ArchiveReason'> & {
23
17
  /** undefined = not yet checked; null = unknown/error; true/false = gate result. */
24
18
  Approved?: boolean | null;
25
19
  ApprovalReason?: string;
26
20
  /** Per-row in-flight flag so spinners/disables are scoped to the acting row. */
27
21
  Busy?: boolean;
28
- }
22
+ };
29
23
  /**
30
24
  * Batch Dispatch — the Block 2 JE-batch review/dispatch + CFO-approve dashboard.
31
25
  * REWORKED 2026-07-06: batches are MULTI-COMPANY (CH-4) — no company/period selection; ONE build
@@ -67,12 +61,22 @@ export declare class JournalEntryBatchDispatchDashboardComponent extends BaseDas
67
61
  OnRegenerate(row: BatchRow): Promise<void>;
68
62
  /** Dispatch a Pending, approved batch to the ERP (gate blocks if not approved; mock poster v1). */
69
63
  OnDispatch(row: BatchRow): Promise<void>;
64
+ /**
65
+ * Archive a batch that must never post to the ERP (#214): terminal, no ERP call, and the batch's
66
+ * journal entries STAY locked — the opposite of Reject, which returns them to the candidate pool.
67
+ * A cancelled or blank prompt aborts silently; the reason is required and is the only record of why.
68
+ */
69
+ OnArchive(row: BatchRow): Promise<void>;
70
+ /** The archive-reason prompt, as a seam a test can stub. Native prompt — this package has no dialog helper. */
71
+ protected PromptForReason(row: BatchRow): string | null;
70
72
  /** An Approved batch (status flip happens with the CFO decision) can dispatch. */
71
73
  canDispatch(row: BatchRow): boolean;
72
74
  /** CFO decision controls show only while the batch is still Pending. */
73
75
  canDecide(row: BatchRow): boolean;
74
76
  /** Regenerate is offered on an OPEN (Pending) batch — it re-gathers candidates in place. */
75
77
  canRegenerate(row: BatchRow): boolean;
78
+ /** Archive is offered wherever LEGAL_TRANSITIONS allows `→ Archived` (server-side: Pending / Approved / Failed). */
79
+ canArchive(row: BatchRow): boolean;
76
80
  /** Map a batch status to a stat-badge variant for the status pill. */
77
81
  statusVariant(status: BatchRow['Status']): 'success' | 'warning' | 'error' | 'info' | 'default';
78
82
  private loadBatches;
@@ -1 +1 @@
1
- {"version":3,"file":"journal-entry-batch-dispatch-dashboard.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EACL,0CAA0C,EAC3C,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAmC,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;;AAEnH,8EAA8E;AAC9E,KAAK,WAAW,GAAG,0CAA0C,CAAC,QAAQ,CAAC,CAAC;AAExE;;;;GAIG;AACH,UAAU,QAAQ;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,uBAAuB,EAAE,MAAM,CAAC;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,mFAAmF;IACnF,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gFAAgF;IAChF,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAID;;;;;;;;;;GAUG;AACH,qBAQa,2CAA4C,SAAQ,aAAa;IACrE,SAAS,UAAS;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEhC,OAAO,EAAE,QAAQ,EAAE,CAAM;IAEhC,wFAAwF;IACjF,YAAY,SAAqB;IAExC,wEAAwE;IACjE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IACpC,oBAAoB,UAAS;IAEpC,OAAO,CAAC,GAAG,CAA6B;IAElC,sBAAsB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAIlE;;;6EAGyE;IACzE,uGAAuG;IACvG,OAAO,CAAC,WAAW,CAAkD;IACrE,OAAO,CAAC,UAAU,CAA4C;IAE9D,SAAS,CAAC,aAAa,IAAI,IAAI;IAKf,WAAW,IAAI,IAAI;cAMnB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBzC,kGAAkG;IACrF,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBhG;;;OAGG;IACU,YAAY,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvD,mGAAmG;IACtF,UAAU,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBrD,kFAAkF;IAC3E,WAAW,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO;IAI1C,wEAAwE;IACjE,SAAS,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO;IAIxC,4FAA4F;IACrF,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO;IAI5C,sEAAsE;IAC/D,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;YAcxF,WAAW;IAsBzB,OAAO,CAAC,KAAK;YAcC,oBAAoB;IASlC,kGAAkG;IAClG,OAAO,CAAC,MAAM;IAId,sEAAsE;IACtE,OAAO,CAAC,OAAO;IAIf,6FAA6F;IAC7F,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,kBAAkB;yCAnOf,2CAA2C;2CAA3C,2CAA2C;CAuOvD;AAED,4FAA4F;AAC5F,wBAAgB,sCAAsC,IAAI,IAAI,CAE7D"}
1
+ {"version":3,"file":"journal-entry-batch-dispatch-dashboard.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EACL,0CAA0C,EAC3C,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAmC,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;;AAKnH;;;;GAIG;AACH;;;;GAIG;AACH,KAAK,QAAQ,GAAG,IAAI,CAClB,0CAA0C,EAC1C,IAAI,GAAG,yBAAyB,GAAG,QAAQ,GAAG,cAAc,GAAG,cAAc,GAAG,aAAa,GAAG,cAAc,GAAG,8BAA8B,GAAG,cAAc,GAAG,eAAe,CACnL,GAAG;IACF,mFAAmF;IACnF,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gFAAgF;IAChF,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAIF;;;;;;;;;;GAUG;AACH,qBAQa,2CAA4C,SAAQ,aAAa;IACrE,SAAS,UAAS;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEhC,OAAO,EAAE,QAAQ,EAAE,CAAM;IAEhC,wFAAwF;IACjF,YAAY,SAAqB;IAExC,wEAAwE;IACjE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IACpC,oBAAoB,UAAS;IAEpC,OAAO,CAAC,GAAG,CAA6B;IAElC,sBAAsB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAIlE;;;6EAGyE;IACzE,uGAAuG;IACvG,OAAO,CAAC,WAAW,CAAkD;IACrE,OAAO,CAAC,UAAU,CAA4C;IAE9D,SAAS,CAAC,aAAa,IAAI,IAAI;IAKf,WAAW,IAAI,IAAI;cAMnB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBzC,kGAAkG;IACrF,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBhG;;;OAGG;IACU,YAAY,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvD,mGAAmG;IACtF,UAAU,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBrD;;;;OAIG;IACU,SAAS,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBpD,+GAA+G;IAC/G,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;IAMvD,kFAAkF;IAC3E,WAAW,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO;IAI1C,wEAAwE;IACjE,SAAS,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO;IAIxC,4FAA4F;IACrF,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO;IAI5C,oHAAoH;IAC7G,UAAU,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO;IAIzC,sEAAsE;IAC/D,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;YAcxF,WAAW;IAsBzB,OAAO,CAAC,KAAK;YAeC,oBAAoB;IASlC,kGAAkG;IAClG,OAAO,CAAC,MAAM;IAId,sEAAsE;IACtE,OAAO,CAAC,OAAO;IAIf,6FAA6F;IAC7F,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,kBAAkB;yCAzQf,2CAA2C;2CAA3C,2CAA2C;CA6QvD;AAED,4FAA4F;AAC5F,wBAAgB,sCAAsC,IAAI,IAAI,CAE7D"}
@@ -45,13 +45,13 @@ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_2
45
45
  i0.ɵɵelement(0, "mj-empty-state", 7);
46
46
  } }
47
47
  function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_10_Conditional_0_Template(rf, ctx) { if (rf & 1) {
48
- i0.ɵɵelement(0, "mj-stat-badge", 30);
48
+ i0.ɵɵelement(0, "mj-stat-badge", 31);
49
49
  } }
50
50
  function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_10_Conditional_1_Template(rf, ctx) { if (rf & 1) {
51
- i0.ɵɵelement(0, "mj-stat-badge", 31);
51
+ i0.ɵɵelement(0, "mj-stat-badge", 32);
52
52
  } }
53
53
  function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
54
- i0.ɵɵconditionalCreate(0, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_10_Conditional_0_Template, 1, 0, "mj-stat-badge", 30)(1, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_10_Conditional_1_Template, 1, 0, "mj-stat-badge", 31);
54
+ i0.ɵɵconditionalCreate(0, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_10_Conditional_0_Template, 1, 0, "mj-stat-badge", 31)(1, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_10_Conditional_1_Template, 1, 0, "mj-stat-badge", 32);
55
55
  } if (rf & 2) {
56
56
  const row_r2 = i0.ɵɵnextContext().$implicit;
57
57
  i0.ɵɵconditional(row_r2.Approved === false ? 0 : row_r2.Approved === null ? 1 : -1);
@@ -80,7 +80,17 @@ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3
80
80
  } }
81
81
  function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_31_Template(rf, ctx) { if (rf & 1) {
82
82
  i0.ɵɵelementStart(0, "div", 25);
83
- i0.ɵɵelement(1, "i", 32);
83
+ i0.ɵɵelement(1, "i", 33);
84
+ i0.ɵɵtext(2);
85
+ i0.ɵɵelementEnd();
86
+ } if (rf & 2) {
87
+ const row_r2 = i0.ɵɵnextContext().$implicit;
88
+ i0.ɵɵadvance(2);
89
+ i0.ɵɵtextInterpolate1(" Archived: ", row_r2.ArchiveReason, " ");
90
+ } }
91
+ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_32_Template(rf, ctx) { if (rf & 1) {
92
+ i0.ɵɵelementStart(0, "div", 25);
93
+ i0.ɵɵelement(1, "i", 34);
84
94
  i0.ɵɵtext(2);
85
95
  i0.ɵɵelementEnd();
86
96
  } if (rf & 2) {
@@ -88,11 +98,11 @@ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3
88
98
  i0.ɵɵadvance(2);
89
99
  i0.ɵɵtextInterpolate1(" ", row_r2.ApprovalReason, " ");
90
100
  } }
91
- function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_33_Template(rf, ctx) { if (rf & 1) {
101
+ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_34_Template(rf, ctx) { if (rf & 1) {
92
102
  const _r3 = i0.ɵɵgetCurrentView();
93
- i0.ɵɵelementStart(0, "button", 33);
94
- i0.ɵɵlistener("click", function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_33_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r3); const row_r2 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.OnDispatch(row_r2)); });
95
- i0.ɵɵelement(1, "i", 34);
103
+ i0.ɵɵelementStart(0, "button", 35);
104
+ i0.ɵɵlistener("click", function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_34_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r3); const row_r2 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.OnDispatch(row_r2)); });
105
+ i0.ɵɵelement(1, "i", 36);
96
106
  i0.ɵɵtext(2);
97
107
  i0.ɵɵelementEnd();
98
108
  } if (rf & 2) {
@@ -101,16 +111,16 @@ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3
101
111
  i0.ɵɵadvance(2);
102
112
  i0.ɵɵtextInterpolate1(" Dispatch to ", row_r2.TargetSystem, " ");
103
113
  } }
104
- function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_34_Template(rf, ctx) { if (rf & 1) {
114
+ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_35_Template(rf, ctx) { if (rf & 1) {
105
115
  const _r4 = i0.ɵɵgetCurrentView();
106
- i0.ɵɵelementStart(0, "button", 35);
107
- i0.ɵɵlistener("click", function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_34_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r4); const row_r2 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.OnRecordDecision(row_r2, "Approved")); });
108
- i0.ɵɵelement(1, "i", 36);
116
+ i0.ɵɵelementStart(0, "button", 37);
117
+ i0.ɵɵlistener("click", function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_35_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r4); const row_r2 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.OnRecordDecision(row_r2, "Approved")); });
118
+ i0.ɵɵelement(1, "i", 38);
109
119
  i0.ɵɵtext(2, " Approve ");
110
120
  i0.ɵɵelementEnd();
111
- i0.ɵɵelementStart(3, "button", 37);
112
- i0.ɵɵlistener("click", function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_34_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r4); const row_r2 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.OnRecordDecision(row_r2, "Rejected")); });
113
- i0.ɵɵelement(4, "i", 38);
121
+ i0.ɵɵelementStart(3, "button", 39);
122
+ i0.ɵɵlistener("click", function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_35_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r4); const row_r2 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.OnRecordDecision(row_r2, "Rejected")); });
123
+ i0.ɵɵelement(4, "i", 40);
114
124
  i0.ɵɵtext(5, " Reject ");
115
125
  i0.ɵɵelementEnd();
116
126
  } if (rf & 2) {
@@ -119,20 +129,31 @@ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3
119
129
  i0.ɵɵadvance(3);
120
130
  i0.ɵɵproperty("disabled", row_r2.Busy);
121
131
  } }
122
- function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_35_Template(rf, ctx) { if (rf & 1) {
132
+ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_36_Template(rf, ctx) { if (rf & 1) {
123
133
  const _r5 = i0.ɵɵgetCurrentView();
124
- i0.ɵɵelementStart(0, "button", 39);
125
- i0.ɵɵlistener("click", function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_35_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r5); const row_r2 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.OnRegenerate(row_r2)); });
126
- i0.ɵɵelement(1, "i", 40);
134
+ i0.ɵɵelementStart(0, "button", 41);
135
+ i0.ɵɵlistener("click", function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_36_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r5); const row_r2 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.OnRegenerate(row_r2)); });
136
+ i0.ɵɵelement(1, "i", 42);
127
137
  i0.ɵɵtext(2, " Regenerate ");
128
138
  i0.ɵɵelementEnd();
129
139
  } if (rf & 2) {
130
140
  const row_r2 = i0.ɵɵnextContext().$implicit;
131
141
  i0.ɵɵproperty("disabled", row_r2.Busy);
132
142
  } }
133
- function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_36_Template(rf, ctx) { if (rf & 1) {
134
- i0.ɵɵelementStart(0, "span", 29);
135
- i0.ɵɵelement(1, "i", 41);
143
+ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_37_Template(rf, ctx) { if (rf & 1) {
144
+ const _r6 = i0.ɵɵgetCurrentView();
145
+ i0.ɵɵelementStart(0, "button", 43);
146
+ i0.ɵɵlistener("click", function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_37_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const row_r2 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.OnArchive(row_r2)); });
147
+ i0.ɵɵelement(1, "i", 33);
148
+ i0.ɵɵtext(2, " Archive ");
149
+ i0.ɵɵelementEnd();
150
+ } if (rf & 2) {
151
+ const row_r2 = i0.ɵɵnextContext().$implicit;
152
+ i0.ɵɵproperty("disabled", row_r2.Busy);
153
+ } }
154
+ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_38_Template(rf, ctx) { if (rf & 1) {
155
+ i0.ɵɵelementStart(0, "span", 30);
156
+ i0.ɵɵelement(1, "i", 44);
136
157
  i0.ɵɵtext(2, " Working\u2026");
137
158
  i0.ɵɵelementEnd();
138
159
  } }
@@ -173,11 +194,13 @@ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3
173
194
  i0.ɵɵelementEnd();
174
195
  i0.ɵɵconditionalCreate(30, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_30_Template, 3, 1, "div", 24);
175
196
  i0.ɵɵconditionalCreate(31, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_31_Template, 3, 1, "div", 25);
176
- i0.ɵɵelementStart(32, "div", 26);
177
- i0.ɵɵconditionalCreate(33, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_33_Template, 3, 2, "button", 27);
178
- i0.ɵɵconditionalCreate(34, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_34_Template, 6, 2);
179
- i0.ɵɵconditionalCreate(35, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_35_Template, 3, 1, "button", 28);
180
- i0.ɵɵconditionalCreate(36, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_36_Template, 3, 0, "span", 29);
197
+ i0.ɵɵconditionalCreate(32, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_32_Template, 3, 1, "div", 25);
198
+ i0.ɵɵelementStart(33, "div", 26);
199
+ i0.ɵɵconditionalCreate(34, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_34_Template, 3, 2, "button", 27);
200
+ i0.ɵɵconditionalCreate(35, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_35_Template, 6, 2);
201
+ i0.ɵɵconditionalCreate(36, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_36_Template, 3, 1, "button", 28);
202
+ i0.ɵɵconditionalCreate(37, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_37_Template, 3, 1, "button", 29);
203
+ i0.ɵɵconditionalCreate(38, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Conditional_38_Template, 3, 0, "span", 30);
181
204
  i0.ɵɵelementEnd()();
182
205
  } if (rf & 2) {
183
206
  const row_r2 = ctx.$implicit;
@@ -193,27 +216,31 @@ function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3
193
216
  i0.ɵɵadvance(6);
194
217
  i0.ɵɵtextInterpolate(row_r2.TotalEntries);
195
218
  i0.ɵɵadvance(5);
196
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(22, 16, row_r2.TotalDebits, "1.2-2"));
219
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(22, 18, row_r2.TotalDebits, "1.2-2"));
197
220
  i0.ɵɵadvance(6);
198
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(28, 19, row_r2.TotalCredits, "1.2-2"));
221
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(28, 21, row_r2.TotalCredits, "1.2-2"));
199
222
  i0.ɵɵadvance(2);
200
223
  i0.ɵɵconditional(row_r2.ExternalJournalEntryBatchRef ? 29 : -1);
201
224
  i0.ɵɵadvance();
202
225
  i0.ɵɵconditional(row_r2.Status === "Failed" && row_r2.ErrorMessage ? 30 : -1);
203
226
  i0.ɵɵadvance();
204
- i0.ɵɵconditional(row_r2.Status === "Pending" && row_r2.Approved === false && row_r2.ApprovalReason ? 31 : -1);
227
+ i0.ɵɵconditional(row_r2.Status === "Archived" && row_r2.ArchiveReason ? 31 : -1);
228
+ i0.ɵɵadvance();
229
+ i0.ɵɵconditional(row_r2.Status === "Pending" && row_r2.Approved === false && row_r2.ApprovalReason ? 32 : -1);
205
230
  i0.ɵɵadvance(2);
206
- i0.ɵɵconditional(ctx_r0.canDispatch(row_r2) ? 33 : -1);
231
+ i0.ɵɵconditional(ctx_r0.canDispatch(row_r2) ? 34 : -1);
207
232
  i0.ɵɵadvance();
208
- i0.ɵɵconditional(ctx_r0.canDecide(row_r2) ? 34 : -1);
233
+ i0.ɵɵconditional(ctx_r0.canDecide(row_r2) ? 35 : -1);
209
234
  i0.ɵɵadvance();
210
- i0.ɵɵconditional(ctx_r0.canRegenerate(row_r2) ? 35 : -1);
235
+ i0.ɵɵconditional(ctx_r0.canRegenerate(row_r2) ? 36 : -1);
211
236
  i0.ɵɵadvance();
212
- i0.ɵɵconditional(row_r2.Busy ? 36 : -1);
237
+ i0.ɵɵconditional(ctx_r0.canArchive(row_r2) ? 37 : -1);
238
+ i0.ɵɵadvance();
239
+ i0.ɵɵconditional(row_r2.Busy ? 38 : -1);
213
240
  } }
214
241
  function JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_Template(rf, ctx) { if (rf & 1) {
215
242
  i0.ɵɵelementStart(0, "div", 8);
216
- i0.ɵɵrepeaterCreate(1, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Template, 37, 22, "div", 12, _forTrack0);
243
+ i0.ɵɵrepeaterCreate(1, JournalEntryBatchDispatchDashboardComponent_Conditional_7_Conditional_3_For_2_Template, 39, 24, "div", 12, _forTrack0);
217
244
  i0.ɵɵelementEnd();
218
245
  } if (rf & 2) {
219
246
  const ctx_r0 = i0.ɵɵnextContext(2);
@@ -366,6 +393,39 @@ let JournalEntryBatchDispatchDashboardComponent = class JournalEntryBatchDispatc
366
393
  this.cdr.markForCheck();
367
394
  }
368
395
  }
396
+ /**
397
+ * Archive a batch that must never post to the ERP (#214): terminal, no ERP call, and the batch's
398
+ * journal entries STAY locked — the opposite of Reject, which returns them to the candidate pool.
399
+ * A cancelled or blank prompt aborts silently; the reason is required and is the only record of why.
400
+ */
401
+ async OnArchive(row) {
402
+ if (row.Busy)
403
+ return;
404
+ const reason = this.PromptForReason(row);
405
+ if (!reason?.trim())
406
+ return;
407
+ row.Busy = true;
408
+ this.clearActionMessage();
409
+ this.cdr.markForCheck();
410
+ try {
411
+ const res = await this.client().ArchiveBatch(row.ID, reason.trim());
412
+ if (res.Success) {
413
+ this.setActionMessage(`Archived batch ${row.JournalEntryBatchNumber} — no ERP call; its journal entries stay locked to it.`, false);
414
+ await this.loadBatches();
415
+ }
416
+ else {
417
+ this.setActionMessage(res.ErrorMessage ?? 'Archive failed.', true);
418
+ }
419
+ }
420
+ finally {
421
+ row.Busy = false;
422
+ this.cdr.markForCheck();
423
+ }
424
+ }
425
+ /** The archive-reason prompt, as a seam a test can stub. Native prompt — this package has no dialog helper. */
426
+ PromptForReason(row) {
427
+ return window.prompt(`Archive batch ${row.JournalEntryBatchNumber}? It will never post to the ERP and its journal entries stay locked to it.\n\nReason (required):`);
428
+ }
369
429
  // ─── view helpers (template-facing) ──────────────────────────────────────
370
430
  /** An Approved batch (status flip happens with the CFO decision) can dispatch. */
371
431
  canDispatch(row) {
@@ -379,6 +439,10 @@ let JournalEntryBatchDispatchDashboardComponent = class JournalEntryBatchDispatc
379
439
  canRegenerate(row) {
380
440
  return row.Status === 'Pending' && !row.Busy;
381
441
  }
442
+ /** Archive is offered wherever LEGAL_TRANSITIONS allows `→ Archived` (server-side: Pending / Approved / Failed). */
443
+ canArchive(row) {
444
+ return ['Pending', 'Approved', 'Failed'].includes(row.Status) && !row.Busy;
445
+ }
382
446
  /** Map a batch status to a stat-badge variant for the status pill. */
383
447
  statusVariant(status) {
384
448
  switch (status) {
@@ -421,6 +485,7 @@ let JournalEntryBatchDispatchDashboardComponent = class JournalEntryBatchDispatc
421
485
  TotalCredits: b.TotalCredits,
422
486
  ExternalJournalEntryBatchRef: b.ExternalJournalEntryBatchRef,
423
487
  ErrorMessage: b.ErrorMessage,
488
+ ArchiveReason: b.ArchiveReason,
424
489
  };
425
490
  }
426
491
  async refreshApprovalState(row) {
@@ -451,7 +516,7 @@ let JournalEntryBatchDispatchDashboardComponent = class JournalEntryBatchDispatc
451
516
  this.ActionMessageIsError = false;
452
517
  }
453
518
  static ɵfac = /*@__PURE__*/ (() => { let ɵJournalEntryBatchDispatchDashboardComponent_BaseFactory; return function JournalEntryBatchDispatchDashboardComponent_Factory(__ngFactoryType__) { return (ɵJournalEntryBatchDispatchDashboardComponent_BaseFactory || (ɵJournalEntryBatchDispatchDashboardComponent_BaseFactory = i0.ɵɵgetInheritedFactory(JournalEntryBatchDispatchDashboardComponent)))(__ngFactoryType__ || JournalEntryBatchDispatchDashboardComponent); }; })();
454
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: JournalEntryBatchDispatchDashboardComponent, selectors: [["mj-batch-dispatch-dashboard"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 8, vars: 2, consts: [["Title", "JE Batch Approvals", "Icon", "fa-solid fa-paper-plane", "Subtitle", "Review, approve, and dispatch journal entry batches to the ERP"], ["meta", ""], ["Label", "JE batches", 3, "Count"], ["actions", ""], ["text", "Loading batches\u2026"], ["role", "alert", 1, "bd-banner", "bd-banner--error"], ["role", "status", 1, "bd-banner", 3, "bd-banner--error", "bd-banner--success"], ["Icon", "fa-solid fa-inbox", "Title", "No journal entry batches yet", "Message", "Journal entry batches built from the JE Batch Status page appear here for review, CFO approval, and dispatch to the ERP."], [1, "bd-list"], [1, "fa-solid", "fa-triangle-exclamation"], ["role", "status", 1, "bd-banner"], [1, "fa-solid"], [1, "bd-card"], [1, "bd-card__head"], [1, "bd-card__title"], [1, "fa-solid", "fa-receipt"], [1, "bd-card__number"], [1, "bd-card__target"], [1, "bd-card__badges"], [3, "Label", "Variant"], [1, "bd-card__metrics"], [1, "bd-metric"], [1, "bd-metric__label"], [1, "bd-metric__value"], ["role", "alert", 1, "bd-banner", "bd-banner--error", "bd-card__error"], [1, "bd-card__hint"], [1, "bd-card__actions"], ["mjButton", "", "variant", "primary", "size", "sm", 3, "disabled"], ["mjButton", "", "variant", "secondary", "size", "sm", "title", "Unlock this journal entry batch's entries and re-gather all current candidates into it.", 3, "disabled"], [1, "bd-card__busy"], ["Icon", "fa-solid fa-hourglass-half", "Label", "Awaiting approval", "Variant", "warning"], ["Icon", "fa-solid fa-question", "Label", "Approval unknown", "Variant", "info"], [1, "fa-solid", "fa-circle-info"], ["mjButton", "", "variant", "primary", "size", "sm", 3, "click", "disabled"], [1, "fa-solid", "fa-paper-plane"], ["mjButton", "", "variant", "success", "size", "sm", 3, "click", "disabled"], [1, "fa-solid", "fa-thumbs-up"], ["mjButton", "", "variant", "danger", "size", "sm", 3, "click", "disabled"], [1, "fa-solid", "fa-thumbs-down"], ["mjButton", "", "variant", "secondary", "size", "sm", "title", "Unlock this journal entry batch's entries and re-gather all current candidates into it.", 3, "click", "disabled"], [1, "fa-solid", "fa-rotate"], [1, "fa-solid", "fa-spinner", "fa-spin"]], template: function JournalEntryBatchDispatchDashboardComponent_Template(rf, ctx) { if (rf & 1) {
519
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: JournalEntryBatchDispatchDashboardComponent, selectors: [["mj-batch-dispatch-dashboard"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 8, vars: 2, consts: [["Title", "JE Batch Approvals", "Icon", "fa-solid fa-paper-plane", "Subtitle", "Review, approve, and dispatch journal entry batches to the ERP"], ["meta", ""], ["Label", "JE batches", 3, "Count"], ["actions", ""], ["text", "Loading batches\u2026"], ["role", "alert", 1, "bd-banner", "bd-banner--error"], ["role", "status", 1, "bd-banner", 3, "bd-banner--error", "bd-banner--success"], ["Icon", "fa-solid fa-inbox", "Title", "No journal entry batches yet", "Message", "Journal entry batches built from the JE Batch Status page appear here for review, CFO approval, and dispatch to the ERP."], [1, "bd-list"], [1, "fa-solid", "fa-triangle-exclamation"], ["role", "status", 1, "bd-banner"], [1, "fa-solid"], [1, "bd-card"], [1, "bd-card__head"], [1, "bd-card__title"], [1, "fa-solid", "fa-receipt"], [1, "bd-card__number"], [1, "bd-card__target"], [1, "bd-card__badges"], [3, "Label", "Variant"], [1, "bd-card__metrics"], [1, "bd-metric"], [1, "bd-metric__label"], [1, "bd-metric__value"], ["role", "alert", 1, "bd-banner", "bd-banner--error", "bd-card__error"], [1, "bd-card__hint"], [1, "bd-card__actions"], ["mjButton", "", "variant", "primary", "size", "sm", 3, "disabled"], ["mjButton", "", "variant", "secondary", "size", "sm", "title", "Unlock this journal entry batch's entries and re-gather all current candidates into it.", 3, "disabled"], ["mjButton", "", "variant", "secondary", "size", "sm", "title", "Close this batch permanently without sending it to the ERP. Its journal entries stay locked to it.", 3, "disabled"], [1, "bd-card__busy"], ["Icon", "fa-solid fa-hourglass-half", "Label", "Awaiting approval", "Variant", "warning"], ["Icon", "fa-solid fa-question", "Label", "Approval unknown", "Variant", "info"], [1, "fa-solid", "fa-box-archive"], [1, "fa-solid", "fa-circle-info"], ["mjButton", "", "variant", "primary", "size", "sm", 3, "click", "disabled"], [1, "fa-solid", "fa-paper-plane"], ["mjButton", "", "variant", "success", "size", "sm", 3, "click", "disabled"], [1, "fa-solid", "fa-thumbs-up"], ["mjButton", "", "variant", "danger", "size", "sm", 3, "click", "disabled"], [1, "fa-solid", "fa-thumbs-down"], ["mjButton", "", "variant", "secondary", "size", "sm", "title", "Unlock this journal entry batch's entries and re-gather all current candidates into it.", 3, "click", "disabled"], [1, "fa-solid", "fa-rotate"], ["mjButton", "", "variant", "secondary", "size", "sm", "title", "Close this batch permanently without sending it to the ERP. Its journal entries stay locked to it.", 3, "click", "disabled"], [1, "fa-solid", "fa-spinner", "fa-spin"]], template: function JournalEntryBatchDispatchDashboardComponent_Template(rf, ctx) { if (rf & 1) {
455
520
  i0.ɵɵelementStart(0, "mj-page-layout")(1, "mj-page-header", 0)(2, "div", 1);
456
521
  i0.ɵɵelement(3, "mj-stat-badge", 2);
457
522
  i0.ɵɵelementEnd();
@@ -473,9 +538,9 @@ JournalEntryBatchDispatchDashboardComponent = __decorate([
473
538
  export { JournalEntryBatchDispatchDashboardComponent };
474
539
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(JournalEntryBatchDispatchDashboardComponent, [{
475
540
  type: Component,
476
- args: [{ standalone: false, selector: 'mj-batch-dispatch-dashboard', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mj-page-layout>\n <mj-page-header\n Title=\"JE Batch Approvals\"\n Icon=\"fa-solid fa-paper-plane\"\n Subtitle=\"Review, approve, and dispatch journal entry batches to the ERP\">\n\n <div meta>\n <mj-stat-badge [Count]=\"Batches.length\" Label=\"JE batches\" />\n </div>\n\n <div actions>\n </div>\n </mj-page-header>\n\n <mj-page-body>\n @if (IsLoading) {\n <mj-loading text=\"Loading batches\u2026\"></mj-loading>\n } @else {\n @if (LoadError) {\n <div class=\"bd-banner bd-banner--error\" role=\"alert\">\n <i class=\"fa-solid fa-triangle-exclamation\"></i> {{ LoadError }}\n </div>\n }\n\n @if (ActionMessage) {\n <div class=\"bd-banner\"\n [class.bd-banner--error]=\"ActionMessageIsError\"\n [class.bd-banner--success]=\"!ActionMessageIsError\"\n role=\"status\">\n <i class=\"fa-solid\" [class.fa-circle-check]=\"!ActionMessageIsError\"\n [class.fa-triangle-exclamation]=\"ActionMessageIsError\"></i>\n {{ ActionMessage }}\n </div>\n }\n\n @if (Batches.length === 0) {\n <mj-empty-state\n Icon=\"fa-solid fa-inbox\"\n Title=\"No journal entry batches yet\"\n Message=\"Journal entry batches built from the JE Batch Status page appear here for review, CFO approval, and dispatch to the ERP.\">\n </mj-empty-state>\n } @else {\n <div class=\"bd-list\">\n @for (row of Batches; track row.ID) {\n <div class=\"bd-card\">\n <div class=\"bd-card__head\">\n <div class=\"bd-card__title\">\n <i class=\"fa-solid fa-receipt\"></i>\n <span class=\"bd-card__number\">{{ row.JournalEntryBatchNumber }}</span>\n <span class=\"bd-card__target\">\u2192 {{ row.TargetSystem }}</span>\n </div>\n <div class=\"bd-card__badges\">\n <mj-stat-badge Label=\"{{ row.Status }}\" [Variant]=\"statusVariant(row.Status)\" />\n @if (row.Status === 'Pending') {\n @if (row.Approved === false) {\n <mj-stat-badge Icon=\"fa-solid fa-hourglass-half\" Label=\"Awaiting approval\" Variant=\"warning\" />\n } @else if (row.Approved === null) {\n <mj-stat-badge Icon=\"fa-solid fa-question\" Label=\"Approval unknown\" Variant=\"info\" />\n }\n }\n </div>\n </div>\n\n <div class=\"bd-card__metrics\">\n <div class=\"bd-metric\">\n <span class=\"bd-metric__label\">Entries</span>\n <span class=\"bd-metric__value\">{{ row.TotalEntries }}</span>\n </div>\n <div class=\"bd-metric\">\n <span class=\"bd-metric__label\">Total Debits</span>\n <span class=\"bd-metric__value\">{{ row.TotalDebits | number:'1.2-2' }}</span>\n </div>\n <div class=\"bd-metric\">\n <span class=\"bd-metric__label\">Total Credits</span>\n <span class=\"bd-metric__value\">{{ row.TotalCredits | number:'1.2-2' }}</span>\n </div>\n @if (row.ExternalJournalEntryBatchRef) {\n <div class=\"bd-metric\">\n <span class=\"bd-metric__label\">ERP Ref</span>\n <span class=\"bd-metric__value\">{{ row.ExternalJournalEntryBatchRef }}</span>\n </div>\n }\n </div>\n\n @if (row.Status === 'Failed' && row.ErrorMessage) {\n <div class=\"bd-banner bd-banner--error bd-card__error\" role=\"alert\">\n <i class=\"fa-solid fa-triangle-exclamation\"></i> {{ row.ErrorMessage }}\n </div>\n }\n\n @if (row.Status === 'Pending' && row.Approved === false && row.ApprovalReason) {\n <div class=\"bd-card__hint\">\n <i class=\"fa-solid fa-circle-info\"></i> {{ row.ApprovalReason }}\n </div>\n }\n\n <div class=\"bd-card__actions\">\n <!-- Confirm/affirmative LEFT, then secondary, per the MJ button convention. -->\n @if (canDispatch(row)) {\n <button mjButton variant=\"primary\" size=\"sm\" [disabled]=\"row.Busy\" (click)=\"OnDispatch(row)\">\n <i class=\"fa-solid fa-paper-plane\"></i> Dispatch to {{ row.TargetSystem }}\n </button>\n }\n @if (canDecide(row)) {\n <button mjButton variant=\"success\" size=\"sm\" [disabled]=\"row.Busy\" (click)=\"OnRecordDecision(row, 'Approved')\">\n <i class=\"fa-solid fa-thumbs-up\"></i> Approve\n </button>\n <button mjButton variant=\"danger\" size=\"sm\" [disabled]=\"row.Busy\" (click)=\"OnRecordDecision(row, 'Rejected')\">\n <i class=\"fa-solid fa-thumbs-down\"></i> Reject\n </button>\n }\n @if (canRegenerate(row)) {\n <button mjButton variant=\"secondary\" size=\"sm\" [disabled]=\"row.Busy\" (click)=\"OnRegenerate(row)\"\n title=\"Unlock this journal entry batch's entries and re-gather all current candidates into it.\">\n <i class=\"fa-solid fa-rotate\"></i> Regenerate\n </button>\n }\n @if (row.Busy) {\n <span class=\"bd-card__busy\"><i class=\"fa-solid fa-spinner fa-spin\"></i> Working\u2026</span>\n }\n </div>\n </div>\n }\n </div>\n }\n }\n </mj-page-body>\n</mj-page-layout>\n", styles: [":host {\n display: block;\n height: 100%;\n}\n\n/* Toolbar selectors (company / period / target). */\n.bd-field {\n display: flex;\n flex-direction: column;\n gap: 2px;\n min-width: 180px;\n}\n\n.bd-field__label {\n font-size: var(--mj-text-xs);\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n/* Status / action banners. */\n.bd-banner {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 14px;\n border-radius: var(--mj-radius-md);\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-primary);\n margin-bottom: 16px;\n font-size: var(--mj-text-sm);\n}\n\n.bd-banner--success {\n background: var(--mj-status-success-bg);\n border-color: var(--mj-status-success-border);\n color: var(--mj-status-success-text);\n}\n\n.bd-banner--error {\n background: var(--mj-status-error-bg);\n border-color: var(--mj-status-error-border);\n color: var(--mj-status-error-text);\n}\n\n/* Batch list. */\n.bd-list {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.bd-card {\n border: 1px solid var(--mj-border-default);\n border-radius: var(--mj-radius-lg);\n background: var(--mj-bg-surface);\n padding: 16px 18px;\n box-shadow: var(--mj-shadow-sm);\n}\n\n.bd-card__head {\n display: flex;\n align-items: center;\n justify-content: space-between;\n flex-wrap: wrap;\n gap: 8px;\n}\n\n.bd-card__title {\n display: flex;\n align-items: center;\n gap: 8px;\n color: var(--mj-text-primary);\n}\n\n.bd-card__number {\n font-weight: var(--mj-font-semibold);\n font-size: var(--mj-text-base);\n}\n\n.bd-card__target {\n color: var(--mj-text-secondary);\n font-size: var(--mj-text-sm);\n}\n\n.bd-card__badges {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n.bd-card__metrics {\n display: flex;\n flex-wrap: wrap;\n gap: 24px;\n margin-top: 14px;\n}\n\n.bd-metric {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.bd-metric__label {\n font-size: var(--mj-text-xs);\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n.bd-metric__value {\n font-size: var(--mj-text-base);\n font-weight: var(--mj-font-medium);\n color: var(--mj-text-primary);\n}\n\n.bd-card__error {\n margin-top: 14px;\n margin-bottom: 0;\n}\n\n.bd-card__hint {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 12px;\n font-size: var(--mj-text-sm);\n color: var(--mj-text-secondary);\n}\n\n.bd-card__actions {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n margin-top: 16px;\n}\n\n.bd-card__busy {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-size: var(--mj-text-sm);\n color: var(--mj-text-muted);\n}\n"] }]
541
+ args: [{ standalone: false, selector: 'mj-batch-dispatch-dashboard', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mj-page-layout>\n <mj-page-header\n Title=\"JE Batch Approvals\"\n Icon=\"fa-solid fa-paper-plane\"\n Subtitle=\"Review, approve, and dispatch journal entry batches to the ERP\">\n\n <div meta>\n <mj-stat-badge [Count]=\"Batches.length\" Label=\"JE batches\" />\n </div>\n\n <div actions>\n </div>\n </mj-page-header>\n\n <mj-page-body>\n @if (IsLoading) {\n <mj-loading text=\"Loading batches\u2026\"></mj-loading>\n } @else {\n @if (LoadError) {\n <div class=\"bd-banner bd-banner--error\" role=\"alert\">\n <i class=\"fa-solid fa-triangle-exclamation\"></i> {{ LoadError }}\n </div>\n }\n\n @if (ActionMessage) {\n <div class=\"bd-banner\"\n [class.bd-banner--error]=\"ActionMessageIsError\"\n [class.bd-banner--success]=\"!ActionMessageIsError\"\n role=\"status\">\n <i class=\"fa-solid\" [class.fa-circle-check]=\"!ActionMessageIsError\"\n [class.fa-triangle-exclamation]=\"ActionMessageIsError\"></i>\n {{ ActionMessage }}\n </div>\n }\n\n @if (Batches.length === 0) {\n <mj-empty-state\n Icon=\"fa-solid fa-inbox\"\n Title=\"No journal entry batches yet\"\n Message=\"Journal entry batches built from the JE Batch Status page appear here for review, CFO approval, and dispatch to the ERP.\">\n </mj-empty-state>\n } @else {\n <div class=\"bd-list\">\n @for (row of Batches; track row.ID) {\n <div class=\"bd-card\">\n <div class=\"bd-card__head\">\n <div class=\"bd-card__title\">\n <i class=\"fa-solid fa-receipt\"></i>\n <span class=\"bd-card__number\">{{ row.JournalEntryBatchNumber }}</span>\n <span class=\"bd-card__target\">\u2192 {{ row.TargetSystem }}</span>\n </div>\n <div class=\"bd-card__badges\">\n <mj-stat-badge Label=\"{{ row.Status }}\" [Variant]=\"statusVariant(row.Status)\" />\n @if (row.Status === 'Pending') {\n @if (row.Approved === false) {\n <mj-stat-badge Icon=\"fa-solid fa-hourglass-half\" Label=\"Awaiting approval\" Variant=\"warning\" />\n } @else if (row.Approved === null) {\n <mj-stat-badge Icon=\"fa-solid fa-question\" Label=\"Approval unknown\" Variant=\"info\" />\n }\n }\n </div>\n </div>\n\n <div class=\"bd-card__metrics\">\n <div class=\"bd-metric\">\n <span class=\"bd-metric__label\">Entries</span>\n <span class=\"bd-metric__value\">{{ row.TotalEntries }}</span>\n </div>\n <div class=\"bd-metric\">\n <span class=\"bd-metric__label\">Total Debits</span>\n <span class=\"bd-metric__value\">{{ row.TotalDebits | number:'1.2-2' }}</span>\n </div>\n <div class=\"bd-metric\">\n <span class=\"bd-metric__label\">Total Credits</span>\n <span class=\"bd-metric__value\">{{ row.TotalCredits | number:'1.2-2' }}</span>\n </div>\n @if (row.ExternalJournalEntryBatchRef) {\n <div class=\"bd-metric\">\n <span class=\"bd-metric__label\">ERP Ref</span>\n <span class=\"bd-metric__value\">{{ row.ExternalJournalEntryBatchRef }}</span>\n </div>\n }\n </div>\n\n @if (row.Status === 'Failed' && row.ErrorMessage) {\n <div class=\"bd-banner bd-banner--error bd-card__error\" role=\"alert\">\n <i class=\"fa-solid fa-triangle-exclamation\"></i> {{ row.ErrorMessage }}\n </div>\n }\n\n @if (row.Status === 'Archived' && row.ArchiveReason) {\n <div class=\"bd-card__hint\">\n <i class=\"fa-solid fa-box-archive\"></i> Archived: {{ row.ArchiveReason }}\n </div>\n }\n\n @if (row.Status === 'Pending' && row.Approved === false && row.ApprovalReason) {\n <div class=\"bd-card__hint\">\n <i class=\"fa-solid fa-circle-info\"></i> {{ row.ApprovalReason }}\n </div>\n }\n\n <div class=\"bd-card__actions\">\n <!-- Confirm/affirmative LEFT, then secondary, per the MJ button convention. -->\n @if (canDispatch(row)) {\n <button mjButton variant=\"primary\" size=\"sm\" [disabled]=\"row.Busy\" (click)=\"OnDispatch(row)\">\n <i class=\"fa-solid fa-paper-plane\"></i> Dispatch to {{ row.TargetSystem }}\n </button>\n }\n @if (canDecide(row)) {\n <button mjButton variant=\"success\" size=\"sm\" [disabled]=\"row.Busy\" (click)=\"OnRecordDecision(row, 'Approved')\">\n <i class=\"fa-solid fa-thumbs-up\"></i> Approve\n </button>\n <button mjButton variant=\"danger\" size=\"sm\" [disabled]=\"row.Busy\" (click)=\"OnRecordDecision(row, 'Rejected')\">\n <i class=\"fa-solid fa-thumbs-down\"></i> Reject\n </button>\n }\n @if (canRegenerate(row)) {\n <button mjButton variant=\"secondary\" size=\"sm\" [disabled]=\"row.Busy\" (click)=\"OnRegenerate(row)\"\n title=\"Unlock this journal entry batch's entries and re-gather all current candidates into it.\">\n <i class=\"fa-solid fa-rotate\"></i> Regenerate\n </button>\n }\n @if (canArchive(row)) {\n <button mjButton variant=\"secondary\" size=\"sm\" [disabled]=\"row.Busy\" (click)=\"OnArchive(row)\"\n title=\"Close this batch permanently without sending it to the ERP. Its journal entries stay locked to it.\">\n <i class=\"fa-solid fa-box-archive\"></i> Archive\n </button>\n }\n @if (row.Busy) {\n <span class=\"bd-card__busy\"><i class=\"fa-solid fa-spinner fa-spin\"></i> Working\u2026</span>\n }\n </div>\n </div>\n }\n </div>\n }\n }\n </mj-page-body>\n</mj-page-layout>\n", styles: [":host {\n display: block;\n height: 100%;\n}\n\n/* Toolbar selectors (company / period / target). */\n.bd-field {\n display: flex;\n flex-direction: column;\n gap: 2px;\n min-width: 180px;\n}\n\n.bd-field__label {\n font-size: var(--mj-text-xs);\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n/* Status / action banners. */\n.bd-banner {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 14px;\n border-radius: var(--mj-radius-md);\n border: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-primary);\n margin-bottom: 16px;\n font-size: var(--mj-text-sm);\n}\n\n.bd-banner--success {\n background: var(--mj-status-success-bg);\n border-color: var(--mj-status-success-border);\n color: var(--mj-status-success-text);\n}\n\n.bd-banner--error {\n background: var(--mj-status-error-bg);\n border-color: var(--mj-status-error-border);\n color: var(--mj-status-error-text);\n}\n\n/* Batch list. */\n.bd-list {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.bd-card {\n border: 1px solid var(--mj-border-default);\n border-radius: var(--mj-radius-lg);\n background: var(--mj-bg-surface);\n padding: 16px 18px;\n box-shadow: var(--mj-shadow-sm);\n}\n\n.bd-card__head {\n display: flex;\n align-items: center;\n justify-content: space-between;\n flex-wrap: wrap;\n gap: 8px;\n}\n\n.bd-card__title {\n display: flex;\n align-items: center;\n gap: 8px;\n color: var(--mj-text-primary);\n}\n\n.bd-card__number {\n font-weight: var(--mj-font-semibold);\n font-size: var(--mj-text-base);\n}\n\n.bd-card__target {\n color: var(--mj-text-secondary);\n font-size: var(--mj-text-sm);\n}\n\n.bd-card__badges {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n.bd-card__metrics {\n display: flex;\n flex-wrap: wrap;\n gap: 24px;\n margin-top: 14px;\n}\n\n.bd-metric {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.bd-metric__label {\n font-size: var(--mj-text-xs);\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n.bd-metric__value {\n font-size: var(--mj-text-base);\n font-weight: var(--mj-font-medium);\n color: var(--mj-text-primary);\n}\n\n.bd-card__error {\n margin-top: 14px;\n margin-bottom: 0;\n}\n\n.bd-card__hint {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 12px;\n font-size: var(--mj-text-sm);\n color: var(--mj-text-secondary);\n}\n\n.bd-card__actions {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n margin-top: 16px;\n}\n\n.bd-card__busy {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-size: var(--mj-text-sm);\n color: var(--mj-text-muted);\n}\n"] }]
477
542
  }], null, null); })();
478
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(JournalEntryBatchDispatchDashboardComponent, { className: "JournalEntryBatchDispatchDashboardComponent", filePath: "lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.ts", lineNumber: 59 }); })();
543
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(JournalEntryBatchDispatchDashboardComponent, { className: "JournalEntryBatchDispatchDashboardComponent", filePath: "lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.ts", lineNumber: 58 }); })();
479
544
  /** Tree-shaking prevention — referencing the class is enough; called from public-api.ts. */
480
545
  export function LoadJournalEntryBatchDispatchDashboard() {
481
546
  // No-op. Static import + this call keep the @RegisterClass decorator from being shaken out.
@@ -1 +1 @@
1
- {"version":3,"file":"journal-entry-batch-dispatch-dashboard.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.ts","../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"journal-entry-batch-dispatch-dashboard.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.ts","../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch-dashboard.component.html"],"names":[],"mappings":"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"}
@@ -20,6 +20,11 @@ export interface RecordJournalEntryBatchDecisionResult {
20
20
  Success: boolean;
21
21
  ErrorMessage?: string;
22
22
  }
23
+ export interface ArchiveJournalEntryBatchResult {
24
+ Success: boolean;
25
+ Status?: string;
26
+ ErrorMessage?: string;
27
+ }
23
28
  export interface JournalEntryBatchApprovalState {
24
29
  Success: boolean;
25
30
  Approved: boolean;
@@ -91,6 +96,11 @@ export declare class JournalEntryBatchDispatchClient {
91
96
  DispatchJournalEntryBatch(batchID: string): Promise<DispatchJournalEntryBatchResult>;
92
97
  /** Record an in-app CFO approve/reject decision on the batch's approval Task. */
93
98
  RecordDecision(batchID: string, decision: JournalEntryBatchDecision, notes?: string): Promise<RecordJournalEntryBatchDecisionResult>;
99
+ /**
100
+ * Archive a batch that must never post to the ERP (#214). Terminal, makes NO ERP call, and leaves
101
+ * the batch's journal entries locked — unlike a Reject, which returns them to the candidate pool.
102
+ */
103
+ ArchiveBatch(batchID: string, reason: string): Promise<ArchiveJournalEntryBatchResult>;
94
104
  /** Read-only: is this batch approved to dispatch? Drives the Dispatch button's enabled state. */
95
105
  GetApprovalState(batchID: string): Promise<JournalEntryBatchApprovalState>;
96
106
  /** Collapse one-or-many per-company build results into the legacy aggregate shape. */
@@ -1 +1 @@
1
- {"version":3,"file":"journal-entry-batch-dispatch.client.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch.client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"journal-entry-batch-dispatch.client.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch.client.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * JournalEntryBatchDispatchClient — a thin, strongly-typed wrapper over the batch Remote Operations
3
3
  * (`Accounting.BuildJournalEntryBatch` / `Accounting.RegenerateJournalEntryBatch` / `Accounting.DispatchJournalEntryBatch` /
4
- * `Accounting.RecordJournalEntryBatchDecision` / `Accounting.GetJournalEntryBatchApprovalState`).
4
+ * `Accounting.RecordJournalEntryBatchDecision` / `Accounting.GetJournalEntryBatchApprovalState` /
5
+ * `Accounting.ArchiveJournalEntryBatch`).
5
6
  *
6
7
  * Deliberately NOT a hand-written GraphQL client (the old shape, which talked to the deleted
7
8
  * BatchDispatchResolver): batch actions run the batching engine server-side, so they travel MJ's
@@ -109,6 +110,23 @@ export class JournalEntryBatchDispatchClient {
109
110
  return { Success: false, ErrorMessage: msg };
110
111
  }
111
112
  }
113
+ /**
114
+ * Archive a batch that must never post to the ERP (#214). Terminal, makes NO ERP call, and leaves
115
+ * the batch's journal entries locked — unlike a Reject, which returns them to the candidate pool.
116
+ */
117
+ async ArchiveBatch(batchID, reason) {
118
+ try {
119
+ const res = await this.dataProvider.RouteOperation('Accounting.ArchiveJournalEntryBatch', { JournalEntryBatchID: batchID, Reason: reason });
120
+ if (!res.Success || !res.Output)
121
+ return { Success: false, ErrorMessage: res.ErrorMessage ?? 'No response from server.' };
122
+ return { Success: true, Status: res.Output.Status };
123
+ }
124
+ catch (e) {
125
+ const msg = e instanceof Error ? e.message : String(e);
126
+ LogError(`JournalEntryBatchDispatchClient.ArchiveBatch failed: ${msg}`);
127
+ return { Success: false, ErrorMessage: msg };
128
+ }
129
+ }
112
130
  /** Read-only: is this batch approved to dispatch? Drives the Dispatch button's enabled state. */
113
131
  async GetApprovalState(batchID) {
114
132
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"journal-entry-batch-dispatch.client.js","sourceRoot":"","sources":["../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch.client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"journal-entry-batch-dispatch.client.js","sourceRoot":"","sources":["../../../../src/lib/custom/JournalEntryBatchDispatch/journal-entry-batch-dispatch.client.ts"],"names":[],"mappings":"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"}
@@ -30,15 +30,15 @@ export interface PreviewEntry {
30
30
  Amount: number;
31
31
  }
32
32
  /** One batch row in the table, with its inferred date range + lazily-loaded JE detail. */
33
- export interface BatchRow {
34
- ID: string;
35
- JournalEntryBatchNumber: string;
36
- Status: BatchStatus;
37
- TargetSystem: TargetSystem;
38
- TotalEntries: number;
39
- TotalDebits: number;
40
- TotalCredits: number;
41
- ExternalJournalEntryBatchRef: string | null;
33
+ /**
34
+ * The batch's own fields are PICKED from the generated entity class, never re-declared (Amith,
35
+ * PR #148 review). Everything below the intersection is derived or UI state, not a column:
36
+ * the inferred date range, the company list, and the expand/detail cache.
37
+ *
38
+ * `BatchedAt` is re-declared as nullable on purpose — the column is NOT NULL, but this page
39
+ * builds rows before the value is resolved.
40
+ */
41
+ export type BatchRow = Pick<mjBizAppsAccountingJournalEntryBatchEntity, 'ID' | 'JournalEntryBatchNumber' | 'Status' | 'TargetSystem' | 'TotalEntries' | 'TotalDebits' | 'TotalCredits' | 'ExternalJournalEntryBatchRef' | 'ArchiveReason'> & {
42
42
  BatchedAt: Date | null;
43
43
  /** Inferred from the batch's journal entries' EffectiveDates (min/max) — a temporary stand-in for a real cutoff. */
44
44
  StartDate: Date | null;
@@ -49,7 +49,7 @@ export interface BatchRow {
49
49
  DetailLoaded: boolean;
50
50
  DetailLoading: boolean;
51
51
  Detail: BatchDetail | null;
52
- }
52
+ };
53
53
  type SortField = 'Status' | 'TargetSystem' | 'TotalEntries' | 'TotalDebits' | 'TotalCredits' | 'StartDate' | 'EndDate' | 'BatchedAt';
54
54
  /**
55
55
  * Batch Status — the filterable roll-up over every JE batch. Enhances the read-only view (Marcelo, 2026-07-08):
@@ -79,7 +79,7 @@ export declare class JournalEntryBatchStatusDashboardComponent extends BaseDashb
79
79
  StatusOptions: BatchStatus[];
80
80
  TargetOptions: TargetSystem[];
81
81
  /** Filters. Empty status set = show all; null company/target = "All". */
82
- SelectedStatuses: Set<"Pending" | "Approved" | "Cancelled" | "Failed" | "Posted" | "Sent">;
82
+ SelectedStatuses: Set<"Pending" | "Approved" | "Archived" | "Cancelled" | "Failed" | "Posted" | "Sent">;
83
83
  /** MULTI-select company narrowing (Marcelo 2026-08-05): empty = no narrowing. */
84
84
  SelectedCompanyIDs: string[];
85
85
  SelectedTarget: TargetSystem | null;