@happyvertical/smrt-commerce 0.57.3 → 0.57.5

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 (168) hide show
  1. package/AGENTS.md +20 -0
  2. package/README.md +130 -0
  3. package/agents/accounting-snapshot-mapper.md +11 -0
  4. package/agents/contract-billing-schedules.md +67 -0
  5. package/agents/contract-money.md +81 -0
  6. package/agents/customer-funds.md +96 -0
  7. package/agents/historical-sales.md +150 -0
  8. package/agents/money-calculator.md +36 -0
  9. package/agents/money-model.md +6 -3
  10. package/agents/observed-purchase-prices.md +37 -0
  11. package/agents/ordinary-accounting.md +72 -0
  12. package/agents/payment-allocations.md +59 -0
  13. package/agents/received-sales-contract-money.md +38 -0
  14. package/dist/accounting-snapshot.d.ts +8 -1
  15. package/dist/accounting-snapshot.d.ts.map +1 -1
  16. package/dist/accounting-steps-internal.d.ts +49 -0
  17. package/dist/accounting-steps-internal.d.ts.map +1 -0
  18. package/dist/allocation-integrity.d.ts.map +1 -1
  19. package/dist/chunks/{ContractLineItemCollection-BZcrlrrY.js → ContractLineItemCollection-D5hBzrct.js} +6 -6
  20. package/dist/chunks/{ContractLineItemCollection-BZcrlrrY.js.map → ContractLineItemCollection-D5hBzrct.js.map} +1 -1
  21. package/dist/chunks/DocumentTaxCollection-C6cI5U89.js +4395 -0
  22. package/dist/chunks/DocumentTaxCollection-C6cI5U89.js.map +1 -0
  23. package/dist/chunks/HistoricalCustomerFundsCollections-B5x8gTW3.js +170 -0
  24. package/dist/chunks/HistoricalCustomerFundsCollections-B5x8gTW3.js.map +1 -0
  25. package/dist/chunks/{InvoiceCollection-cinzAqt6.js → InvoiceCollection-BolwughC.js} +133 -18
  26. package/dist/chunks/InvoiceCollection-BolwughC.js.map +1 -0
  27. package/dist/chunks/{TaxCodeCollection-DaBOPG9c.js → TaxCodeCollection-CW-tWjkU.js} +3 -4
  28. package/dist/chunks/TaxCodeCollection-CW-tWjkU.js.map +1 -0
  29. package/dist/chunks/{TaxComponentCollection-C4zxnyVu.js → TaxComponentCollection-BiJ9aAe8.js} +3 -3
  30. package/dist/chunks/{TaxComponentCollection-C4zxnyVu.js.map → TaxComponentCollection-BiJ9aAe8.js.map} +1 -1
  31. package/dist/chunks/{allocation-integrity-WmWyXhtG.js → allocation-integrity-CH-i-hsY.js} +7 -7
  32. package/dist/chunks/{allocation-integrity-WmWyXhtG.js.map → allocation-integrity-CH-i-hsY.js.map} +1 -1
  33. package/dist/chunks/{contract-money-EuToOghh.js → contract-money-BMsq4cpL.js} +45 -12
  34. package/dist/chunks/contract-money-BMsq4cpL.js.map +1 -0
  35. package/dist/chunks/customer-funds-internal-BQzoJXK5.js +24 -0
  36. package/dist/chunks/customer-funds-internal-BQzoJXK5.js.map +1 -0
  37. package/dist/chunks/{detect-CY9ufaFb.js → detect-DAE-_NAk.js} +5 -2
  38. package/dist/chunks/{detect-CY9ufaFb.js.map → detect-DAE-_NAk.js.map} +1 -1
  39. package/dist/chunks/historical-commerce-internal-C9ButfuH.js +18 -0
  40. package/dist/chunks/historical-commerce-internal-C9ButfuH.js.map +1 -0
  41. package/dist/chunks/{invoice-posting-C2i5dOVZ.js → invoice-posting-IXic4UEP.js} +5 -5
  42. package/dist/chunks/invoice-posting-IXic4UEP.js.map +1 -0
  43. package/dist/chunks/retention-accounting-c7kY7gFU.js +2738 -0
  44. package/dist/chunks/retention-accounting-c7kY7gFU.js.map +1 -0
  45. package/dist/chunks/retention-accounting-internal-DNxLLVvK.js +30 -0
  46. package/dist/chunks/retention-accounting-internal-DNxLLVvK.js.map +1 -0
  47. package/dist/chunks/{tenant-money-barrier-6TlqUeVj.js → tenant-money-barrier-DEVLrpaB.js} +5 -5
  48. package/dist/chunks/{tenant-money-barrier-6TlqUeVj.js.map → tenant-money-barrier-DEVLrpaB.js.map} +1 -1
  49. package/dist/chunks/types-Bbm0Xflc.js.map +1 -1
  50. package/dist/collections/DocumentTaxCollection.d.ts +4 -1
  51. package/dist/collections/DocumentTaxCollection.d.ts.map +1 -1
  52. package/dist/collections/HistoricalCustomerFundsCollections.d.ts +10 -0
  53. package/dist/collections/HistoricalCustomerFundsCollections.d.ts.map +1 -0
  54. package/dist/collections/HistoricalSalesLineCollection.d.ts +6 -0
  55. package/dist/collections/HistoricalSalesLineCollection.d.ts.map +1 -0
  56. package/dist/collections/PaymentAllocationCollection.d.ts +2 -6
  57. package/dist/collections/PaymentAllocationCollection.d.ts.map +1 -1
  58. package/dist/collections/PurchasePriceObservationCollection.d.ts +6 -0
  59. package/dist/collections/PurchasePriceObservationCollection.d.ts.map +1 -0
  60. package/dist/collections/index.d.ts +1 -0
  61. package/dist/collections/index.d.ts.map +1 -1
  62. package/dist/contract-billing-schedule.d.ts +83 -0
  63. package/dist/contract-billing-schedule.d.ts.map +1 -0
  64. package/dist/contract-money.d.ts +2 -0
  65. package/dist/contract-money.d.ts.map +1 -1
  66. package/dist/customer-funds-internal.d.ts +6 -0
  67. package/dist/customer-funds-internal.d.ts.map +1 -0
  68. package/dist/customer-funds.d.ts +108 -0
  69. package/dist/customer-funds.d.ts.map +1 -0
  70. package/dist/document-money.d.ts +11 -0
  71. package/dist/document-money.d.ts.map +1 -1
  72. package/dist/historical-commerce-internal.d.ts +3 -0
  73. package/dist/historical-commerce-internal.d.ts.map +1 -0
  74. package/dist/historical-customer-funds-types.d.ts +113 -0
  75. package/dist/historical-customer-funds-types.d.ts.map +1 -0
  76. package/dist/historical-customer-funds.d.ts +23 -0
  77. package/dist/historical-customer-funds.d.ts.map +1 -0
  78. package/dist/historical-funds-internal.d.ts +5 -0
  79. package/dist/historical-funds-internal.d.ts.map +1 -0
  80. package/dist/historical-sales-money.d.ts +22 -0
  81. package/dist/historical-sales-money.d.ts.map +1 -0
  82. package/dist/historical-sales-reports.d.ts +31 -0
  83. package/dist/historical-sales-reports.d.ts.map +1 -0
  84. package/dist/historical-sales-types.d.ts +106 -0
  85. package/dist/historical-sales-types.d.ts.map +1 -0
  86. package/dist/historical-sales-validation.d.ts +12 -0
  87. package/dist/historical-sales-validation.d.ts.map +1 -0
  88. package/dist/index.d.ts +22 -0
  89. package/dist/index.d.ts.map +1 -1
  90. package/dist/index.js +1668 -1643
  91. package/dist/index.js.map +1 -1
  92. package/dist/invoice-accounting-sync.d.ts +0 -1
  93. package/dist/invoice-accounting-sync.d.ts.map +1 -1
  94. package/dist/invoice-mcp.d.ts.map +1 -1
  95. package/dist/invoice-posting.d.ts.map +1 -1
  96. package/dist/invoice-retention.d.ts +16 -0
  97. package/dist/invoice-retention.d.ts.map +1 -0
  98. package/dist/invoices.d.ts +3 -0
  99. package/dist/invoices.d.ts.map +1 -1
  100. package/dist/invoices.js +2 -2
  101. package/dist/manifest.json +7626 -4446
  102. package/dist/models/Contract.d.ts +14 -0
  103. package/dist/models/Contract.d.ts.map +1 -1
  104. package/dist/models/DocumentTax.d.ts +2 -0
  105. package/dist/models/DocumentTax.d.ts.map +1 -1
  106. package/dist/models/HistoricalCustomerFunds.d.ts +36 -0
  107. package/dist/models/HistoricalCustomerFunds.d.ts.map +1 -0
  108. package/dist/models/HistoricalCustomerFundsAllocation.d.ts +32 -0
  109. package/dist/models/HistoricalCustomerFundsAllocation.d.ts.map +1 -0
  110. package/dist/models/HistoricalSalesLine.d.ts +29 -0
  111. package/dist/models/HistoricalSalesLine.d.ts.map +1 -0
  112. package/dist/models/Invoice.d.ts +12 -1
  113. package/dist/models/Invoice.d.ts.map +1 -1
  114. package/dist/models/Payment.d.ts +9 -1
  115. package/dist/models/Payment.d.ts.map +1 -1
  116. package/dist/models/PaymentAllocation.d.ts +3 -1
  117. package/dist/models/PaymentAllocation.d.ts.map +1 -1
  118. package/dist/models/PaymentIntent.d.ts.map +1 -1
  119. package/dist/models/Payout.d.ts.map +1 -1
  120. package/dist/models/PurchasePriceObservation.d.ts +15 -0
  121. package/dist/models/PurchasePriceObservation.d.ts.map +1 -0
  122. package/dist/models/TaxCode.d.ts +1 -1
  123. package/dist/models/TaxCode.d.ts.map +1 -1
  124. package/dist/models/index.d.ts +1 -0
  125. package/dist/models/index.d.ts.map +1 -1
  126. package/dist/money.d.ts +5 -1
  127. package/dist/money.d.ts.map +1 -1
  128. package/dist/money.js +62 -15
  129. package/dist/money.js.map +1 -1
  130. package/dist/observed-purchase-price-internal.d.ts +3 -0
  131. package/dist/observed-purchase-price-internal.d.ts.map +1 -0
  132. package/dist/observed-purchase-price.d.ts +71 -0
  133. package/dist/observed-purchase-price.d.ts.map +1 -0
  134. package/dist/ordinary-accounting-internal.d.ts +3 -0
  135. package/dist/ordinary-accounting-internal.d.ts.map +1 -0
  136. package/dist/ordinary-accounting.d.ts +104 -0
  137. package/dist/ordinary-accounting.d.ts.map +1 -0
  138. package/dist/received-purchase-money.d.ts +87 -0
  139. package/dist/received-purchase-money.d.ts.map +1 -0
  140. package/dist/recipes.d.ts +4 -1
  141. package/dist/recipes.d.ts.map +1 -1
  142. package/dist/retention-accounting-internal.d.ts +3 -0
  143. package/dist/retention-accounting-internal.d.ts.map +1 -0
  144. package/dist/retention-accounting.d.ts +143 -0
  145. package/dist/retention-accounting.d.ts.map +1 -0
  146. package/dist/retention-money.d.ts +43 -0
  147. package/dist/retention-money.d.ts.map +1 -0
  148. package/dist/smrt-knowledge.json +1872 -113
  149. package/dist/tax/cookbook.d.ts.map +1 -1
  150. package/dist/tax-summary.d.ts +1 -0
  151. package/dist/tax-summary.d.ts.map +1 -1
  152. package/dist/types/index.d.ts +20 -1
  153. package/dist/types/index.d.ts.map +1 -1
  154. package/package.json +16 -16
  155. package/dist/chunks/CustomerCollection-BIPH2ZUx.js +0 -99
  156. package/dist/chunks/CustomerCollection-BIPH2ZUx.js.map +0 -1
  157. package/dist/chunks/DocumentTaxCollection-DDzlywMW.js +0 -1666
  158. package/dist/chunks/DocumentTaxCollection-DDzlywMW.js.map +0 -1
  159. package/dist/chunks/InvoiceCollection-cinzAqt6.js.map +0 -1
  160. package/dist/chunks/TaxCodeCollection-DaBOPG9c.js.map +0 -1
  161. package/dist/chunks/VendorCollection-D6ZcUYy8.js +0 -100
  162. package/dist/chunks/VendorCollection-D6ZcUYy8.js.map +0 -1
  163. package/dist/chunks/calculations-C9daQLsh.js +0 -82
  164. package/dist/chunks/calculations-C9daQLsh.js.map +0 -1
  165. package/dist/chunks/contract-money-EuToOghh.js.map +0 -1
  166. package/dist/chunks/document-money-DV5t4vlK.js +0 -1186
  167. package/dist/chunks/document-money-DV5t4vlK.js.map +0 -1
  168. package/dist/chunks/invoice-posting-C2i5dOVZ.js.map +0 -1
@@ -76,6 +76,12 @@ export declare class Contract extends SmrtObject {
76
76
  * Currency code (ISO 4217)
77
77
  */
78
78
  currency: string;
79
+ /** Calculated pricing or immutable source-declared purchase evidence. */
80
+ moneyAuthority: 'calculated' | 'received';
81
+ /** Guarded received evidence; write through the public received purchase/sales contract commands only. */
82
+ receivedPurchaseMoneyJson: string;
83
+ /** Append-only approved milestone schedule and issued claim evidence. */
84
+ billingScheduleJson: string;
79
85
  /** Pricing interpretation fixed before the Contract leaves draft. */
80
86
  lineAmountType: 'exclusive' | 'inclusive' | 'none';
81
87
  /** Component rounding scope fixed before the Contract leaves draft. */
@@ -168,6 +174,14 @@ export declare class Contract extends SmrtObject {
168
174
  * write surface (#2401).
169
175
  */
170
176
  save(): Promise<this>;
177
+ /** Received purchase monetary history cannot be deleted. */
178
+ delete(options?: {
179
+ expectedUpdatedAt?: Date | string;
180
+ }): Promise<void>;
181
+ /** @internal Contract aggregate persistence only. */
182
+ deleteDerived(capability: DocumentMoneyWriteCapability, options?: {
183
+ expectedUpdatedAt?: Date | string;
184
+ }): Promise<void>;
171
185
  /** @internal Contract aggregate persistence only. */
172
186
  saveDerived(capability: DocumentMoneyWriteCapability): Promise<this>;
173
187
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Contract.d.ts","sourceRoot":"","sources":["../../src/models/Contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Contract.d.ts","sourceRoot":"","sources":["../../src/models/Contract.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ export interface DocumentTaxOptions extends SmrtObjectOptions {
16
16
  percent?: string | null;
17
17
  liabilityAccountId?: string | null;
18
18
  taxableMinor?: number;
19
+ netMinor?: number | null;
19
20
  taxMinor?: number;
20
21
  recoverableMinor?: number;
21
22
  }
@@ -32,6 +33,7 @@ export declare class DocumentTax extends SmrtObject {
32
33
  percent: string | null;
33
34
  liabilityAccountId: string | null;
34
35
  taxableMinor: number;
36
+ netMinor: number | null;
35
37
  taxMinor: number;
36
38
  recoverableMinor: number;
37
39
  constructor(options?: DocumentTaxOptions);
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentTax.d.ts","sourceRoot":"","sources":["../../src/models/DocumentTax.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAEvE,OAAO,EAEL,UAAU,EACV,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAErE,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;AAE1E,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AACD,qBAaa,WAAY,SAAQ,UAAU;IAEzC,QAAQ,SAAM;IAGd,YAAY,EAAE,oBAAoB,CAAa;IAG/C,UAAU,SAAM;IAGhB,QAAQ,SAAS;IAGjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGhC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGlC,IAAI,EAAE,WAAW,GAAG,IAAI,CAAQ;IAGhC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGrC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGvC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG9B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAMzC,YAAY,SAAK;IAMjB,QAAQ,SAAK;IAMb,gBAAgB,SAAK;gBAET,OAAO,GAAE,kBAAuB;IAyB5C,OAAO,CAAC,qBAAqB;IAwFd,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAOrB,MAAM,CACnB,QAAQ,GAAE;QAAE,iBAAiB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;KAAO,GACnD,OAAO,CAAC,IAAI,CAAC;IAOhB,4CAA4C;IACtC,WAAW,CAAC,UAAU,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1E,4CAA4C;IACtC,aAAa,CACjB,UAAU,EAAE,4BAA4B,EACxC,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;KAAO,GAClD,OAAO,CAAC,IAAI,CAAC;CASjB"}
1
+ {"version":3,"file":"DocumentTax.d.ts","sourceRoot":"","sources":["../../src/models/DocumentTax.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAEvE,OAAO,EAEL,UAAU,EACV,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAErE,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;AAE1E,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AACD,qBAaa,WAAY,SAAQ,UAAU;IAEzC,QAAQ,SAAM;IAGd,YAAY,EAAE,oBAAoB,CAAa;IAG/C,UAAU,SAAM;IAGhB,QAAQ,SAAS;IAGjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGhC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGlC,IAAI,EAAE,WAAW,GAAG,IAAI,CAAQ;IAGhC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGrC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGvC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG9B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAOzC,YAAY,SAAK;IAQjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAM/B,QAAQ,SAAK;IAMb,gBAAgB,SAAK;gBAET,OAAO,GAAE,kBAAuB;IA0B5C,OAAO,CAAC,qBAAqB;IAyFd,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAOrB,MAAM,CACnB,QAAQ,GAAE;QAAE,iBAAiB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;KAAO,GACnD,OAAO,CAAC,IAAI,CAAC;IAOhB,4CAA4C;IACtC,WAAW,CAAC,UAAU,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1E,4CAA4C;IACtC,aAAa,CACjB,UAAU,EAAE,4BAA4B,EACxC,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;KAAO,GAClD,OAAO,CAAC,IAAI,CAAC;CASjB"}
@@ -0,0 +1,36 @@
1
+ import { SmrtObject, type SmrtObjectOptions, type SmrtSaveOptions } from '@happyvertical/smrt-core';
2
+ export interface HistoricalCustomerFundsOptions extends SmrtObjectOptions {
3
+ tenantId?: string;
4
+ customerId?: string;
5
+ contractId?: string | null;
6
+ sourceKeyHash?: string;
7
+ kind?: 'receipt' | 'refund';
8
+ origin?: 'historical' | 'live';
9
+ paymentId?: string | null;
10
+ currency?: string;
11
+ amountMinor?: number;
12
+ effectiveOn?: string;
13
+ sourceReceiptId?: string | null;
14
+ sourceCreditNoteId?: string | null;
15
+ snapshotJson?: string;
16
+ }
17
+ /** Retained original cash evidence. It is deliberately not a completed ledger-backed Payment. */
18
+ export declare class HistoricalCustomerFunds extends SmrtObject {
19
+ tenantId: string;
20
+ customerId: string;
21
+ contractId: string | null;
22
+ sourceKeyHash: string;
23
+ kind: 'receipt' | 'refund';
24
+ origin: 'historical' | 'live';
25
+ paymentId: string | null;
26
+ currency: string;
27
+ amountMinor: number;
28
+ effectiveOn: string;
29
+ sourceReceiptId: string | null;
30
+ sourceCreditNoteId: string | null;
31
+ snapshotJson: string;
32
+ constructor(options?: HistoricalCustomerFundsOptions);
33
+ save(options?: SmrtSaveOptions): Promise<this>;
34
+ delete(): Promise<void>;
35
+ }
36
+ //# sourceMappingURL=HistoricalCustomerFunds.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HistoricalCustomerFunds.d.ts","sourceRoot":"","sources":["../../src/models/HistoricalCustomerFunds.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EACV,KAAK,iBAAiB,EACtB,KAAK,eAAe,EAErB,MAAM,0BAA0B,CAAC;AAGlC,MAAM,WAAW,8BAA+B,SAAQ,iBAAiB;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC5B,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AACD,iGAAiG;AACjG,qBAca,uBAAwB,SAAQ,UAAU;IACzC,QAAQ,SAAM;IACF,UAAU,SAAM;IACI,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC7E,aAAa,SAAM;IACnB,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAa;IACvC,MAAM,EAAE,YAAY,GAAG,MAAM,CAAgB;IACF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC3E,QAAQ,SAAM;IACsB,WAAW,SAAK;IACpD,WAAW,SAAM;IAC0C,eAAe,EACtE,MAAM,GACN,IAAI,CAAQ;IAC2B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CACrE;IACP,YAAY,SAAM;gBACN,OAAO,GAAE,8BAAmC;IAoBzC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB9C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAGvC"}
@@ -0,0 +1,32 @@
1
+ import { SmrtObject, type SmrtObjectOptions, type SmrtSaveOptions } from '@happyvertical/smrt-core';
2
+ export interface HistoricalCustomerFundsAllocationOptions extends SmrtObjectOptions {
3
+ tenantId?: string;
4
+ receiptId?: string | null;
5
+ creditNoteId?: string | null;
6
+ invoiceId?: string;
7
+ sourceKeyHash?: string;
8
+ amountMinor?: number;
9
+ effectiveOn?: string;
10
+ origin?: 'historical' | 'live';
11
+ effect?: 'payment' | 'credit-audit' | 'refund-audit';
12
+ journalId?: string | null;
13
+ snapshotJson?: string;
14
+ }
15
+ /** Original applications have concrete identities; credit-audit records never count twice. */
16
+ export declare class HistoricalCustomerFundsAllocation extends SmrtObject {
17
+ tenantId: string;
18
+ receiptId: string | null;
19
+ creditNoteId: string | null;
20
+ invoiceId: string;
21
+ sourceKeyHash: string;
22
+ amountMinor: number;
23
+ effectiveOn: string;
24
+ origin: 'historical' | 'live';
25
+ effect: 'payment' | 'credit-audit' | 'refund-audit';
26
+ journalId: string | null;
27
+ snapshotJson: string;
28
+ constructor(options?: HistoricalCustomerFundsAllocationOptions);
29
+ save(options?: SmrtSaveOptions): Promise<this>;
30
+ delete(): Promise<void>;
31
+ }
32
+ //# sourceMappingURL=HistoricalCustomerFundsAllocation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HistoricalCustomerFundsAllocation.d.ts","sourceRoot":"","sources":["../../src/models/HistoricalCustomerFundsAllocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,UAAU,EACV,KAAK,iBAAiB,EACtB,KAAK,eAAe,EAErB,MAAM,0BAA0B,CAAC;AAGlC,MAAM,WAAW,wCACf,SAAQ,iBAAiB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,SAAS,GAAG,cAAc,GAAG,cAAc,CAAC;IACrD,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AACD,8FAA8F;AAC9F,qBAca,iCAAkC,SAAQ,UAAU;IACnD,QAAQ,SAAM;IACiC,SAAS,EAChE,MAAM,GACN,IAAI,CAAQ;IAC2B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IACvD,SAAS,SAAM;IACtC,aAAa,SAAM;IACiB,WAAW,SAAK;IACpD,WAAW,SAAM;IACjB,MAAM,EAAE,YAAY,GAAG,MAAM,CAAgB;IAC7C,MAAM,EAAE,SAAS,GAAG,cAAc,GAAG,cAAc,CAAa;IAEhE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChC,YAAY,SAAM;gBACN,OAAO,GAAE,wCAA6C;IAkBnD,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB9C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAGvC"}
@@ -0,0 +1,29 @@
1
+ import { SmrtObject, type SmrtObjectOptions, type SmrtSaveOptions } from '@happyvertical/smrt-core';
2
+ import type { HistoricalSalesLineInput } from '../historical-sales-types.js';
3
+ export interface HistoricalSalesLineOptions extends SmrtObjectOptions, Partial<HistoricalSalesLineInput> {
4
+ tenantId?: string;
5
+ invoiceId?: string;
6
+ sourceKeyHash?: string;
7
+ sourceFieldsJson?: string;
8
+ moneySnapshotId?: string;
9
+ }
10
+ /** An immutable source line with explicit unknowns, never a calculated InvoiceLineItem. */
11
+ export declare class HistoricalSalesLine extends SmrtObject {
12
+ tenantId: string;
13
+ invoiceId: string;
14
+ creditedLineId: string | null;
15
+ sourceKey: string;
16
+ sourceKeyHash: string;
17
+ description: string;
18
+ netMinor: number;
19
+ taxMinor: number | null;
20
+ grossMinor: number | null;
21
+ quantityText: string | null;
22
+ unitRateText: string | null;
23
+ sourceFieldsJson: string;
24
+ moneySnapshotId: string;
25
+ constructor(options?: HistoricalSalesLineOptions);
26
+ save(options?: SmrtSaveOptions): Promise<this>;
27
+ delete(): Promise<void>;
28
+ }
29
+ //# sourceMappingURL=HistoricalSalesLine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HistoricalSalesLine.d.ts","sourceRoot":"","sources":["../../src/models/HistoricalSalesLine.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EACV,KAAK,iBAAiB,EACtB,KAAK,eAAe,EAErB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAC7E,MAAM,WAAW,0BACf,SAAQ,iBAAiB,EACvB,OAAO,CAAC,wBAAwB,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AACD,2FAA2F;AAC3F,qBAca,mBAAoB,SAAQ,UAAU;IACrC,QAAQ,SAAM;IACH,SAAS,SAAM;IACiB,cAAc,EACjE,MAAM,GACN,IAAI,CAAQ;IAChB,SAAS,SAAM;IACf,aAAa,SAAM;IACnB,WAAW,SAAM;IACmB,QAAQ,SAAK;IACoB,QAAQ,EACzE,MAAM,GACN,IAAI,CAAQ;IAEhB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IACQ,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IACnC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC5E,gBAAgB,SAAQ;IACxB,eAAe,SAAM;gBACT,OAAO,GAAE,0BAA+B;IAsBrC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAc9C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAGvC"}
@@ -41,12 +41,23 @@ import { type AccountingInvoiceInput, type CancelRevenueOptions, type InvoiceCol
41
41
  * ```
42
42
  */
43
43
  export declare class Invoice extends SmrtObject {
44
+ /** Command-owned original sales authority; ordinary documents stay calculated. */
45
+ moneyAuthority: 'calculated' | 'historical';
46
+ historicalSalesMoneyJson: string;
47
+ historicalSourceKeyHash: string | null;
44
48
  /** @internal Collection read guard returns this snapshot on its root DB. */
45
49
  rebindMoneyRead(capability: DocumentMoneyReadRebindCapability, db: DatabaseInterface): this;
46
50
  kind: InvoiceKind;
47
51
  creditedInvoiceId: string | null;
48
52
  /** Issued credit-note total cached under the source invoice lock. */
49
53
  creditedAmount: number;
54
+ /** Server-owned immutable retention policy and append-only release evidence. */
55
+ retentionStateJson: string;
56
+ /** Command-owned durable provider retention bundle; never caller-writable. */
57
+ retentionAccountingStateJson: string;
58
+ /** Command-owned ordinary provider adjustments; no retention agreement. */
59
+ ordinaryAccountingStateJson: string;
60
+ getPayableFacts(): import("../retention-money.js").InvoicePayableFacts;
50
61
  /**
51
62
  * Tenant ID for multi-tenant isolation
52
63
  * Nullable to support both tenant-scoped and global invoices
@@ -76,7 +87,7 @@ export declare class Invoice extends SmrtObject {
76
87
  /**
77
88
  * Payment due date
78
89
  */
79
- dueDate: Date;
90
+ dueDate: Date | null;
80
91
  /**
81
92
  * Date invoice was fully paid
82
93
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../src/models/Invoice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../src/models/Invoice.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Payment model - tracks payments with ledger integration
3
3
  * @packageDocumentation
4
4
  */
5
- import { SmrtObject } from '@happyvertical/smrt-core';
5
+ import { type SmrtDeleteOptions, SmrtObject } from '@happyvertical/smrt-core';
6
6
  import type { Journal } from '@happyvertical/smrt-ledgers';
7
7
  import { type PaymentKind, PaymentMethod, type PaymentOptions, PaymentStatus, type RecordPaymentOptions } from '../types/index.js';
8
8
  /**
@@ -33,6 +33,12 @@ import { type PaymentKind, PaymentMethod, type PaymentOptions, PaymentStatus, ty
33
33
  export declare class Payment extends SmrtObject {
34
34
  /** Incoming settlement or outgoing customer refund. Amount stays positive. */
35
35
  kind: PaymentKind;
36
+ /** Command-owned customer advance policy, source lineage and append-only application evidence. */
37
+ customerFundsJson: string;
38
+ /** Immutable provider-refund source binding owned by retention commands. */
39
+ retentionAccountingBindingJson: string;
40
+ /** Immutable ordinary-provider refund reservation; command-owned. */
41
+ ordinaryAccountingBindingJson: string;
36
42
  /**
37
43
  * Tenant ID for multi-tenant isolation
38
44
  * Nullable to support both tenant-scoped and global payments
@@ -194,6 +200,8 @@ export declare class Payment extends SmrtObject {
194
200
  * must drive it through `recordPayment()` (or start non-COMPLETED).
195
201
  */
196
202
  save(): Promise<this>;
203
+ /** Managed receipts and refunds retain immutable cash provenance. */
204
+ delete(options?: SmrtDeleteOptions): Promise<void>;
197
205
  /**
198
206
  * Reject an illegal status flip. Compares the about-to-be-written status
199
207
  * against the status the row was loaded with. No-op transitions (status
@@ -1 +1 @@
1
- {"version":3,"file":"Payment.d.ts","sourceRoot":"","sources":["../../src/models/Payment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAO3D,OAAO,EACL,KAAK,WAAW,EAChB,aAAa,EACb,KAAK,cAAc,EACnB,aAAa,EACb,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAgD3B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBA+Ca,OAAQ,SAAQ,UAAU;IACrC,8EAA8E;IAC9E,IAAI,EAAE,WAAW,CAAa;IAE9B;;;OAGG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;OAEG;IAGH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEjC;;OAEG;IAGH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEjC;;;;;;;OAOG;IAEH,MAAM,EAAE,MAAM,CAAK;IAEnB;;OAEG;IAKH,QAAQ,EAAE,MAAM,CAAS;IAEzB;;OAEG;IAIH,MAAM,EAAE,aAAa,CAA+B;IAEpD;;OAEG;IAKH,MAAM,EAAE,aAAa,CAAyB;IAE9C;;OAEG;IACH,aAAa,EAAE,MAAM,CAAM;IAE3B;;OAEG;IAEH,SAAS,EAAE,MAAM,CAAM;IAEvB;;OAEG;IAEH,SAAS,EAAE,MAAM,CAAM;IAEvB;;OAEG;IAEH,MAAM,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE3B;;OAEG;IAKH,KAAK,EAAE,MAAM,CAAM;IAMnB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAM;IAExB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAM;IAE9B;;OAEG;IACH,QAAQ,EAAE,IAAI,GAAG,IAAI,CAAQ;IAiB7B;;;;;;;;;;OAUG;IACH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;;;;OAOG;IACH,YAAY,EAAE,MAAM,CAAM;IAE1B;;;;;;;;;;OAUG;IACH,YAAY,EAAE,MAAM,CAAK;IAEzB;;;;;;OAMG;IACH,cAAc,EAAE,MAAM,CAAM;IAE5B;;;;;;;;;;OAUG;IACH,UAAU,EAAE,MAAM,CAAK;IAEvB;;;;;;OAMG;IACH,iBAAiB,EAAE,MAAM,CAAK;gBAElB,OAAO,GAAE,cAAmB;IAgCxC;;;;;OAKG;IACY,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ1C;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACY,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAmEpC;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAY9B;;;;;;;;;;;;;;;OAeG;YACW,gBAAgB;IAa9B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,6BAA6B;IA2CrC;;;;;;OAMG;IACH,QAAQ,IAAI,MAAM;IAKlB;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IA2DpE,8EAA8E;IACxE,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAMnE,yEAAyE;YAC3D,wBAAwB;IAkEtC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAa3C;;OAEG;IACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAOjC;;OAEG;IACH,MAAM,IAAI,IAAI;CAMf;AAED,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Payment.d.ts","sourceRoot":"","sources":["../../src/models/Payment.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * PaymentAllocation model - maps payments to invoices
3
3
  * @packageDocumentation
4
4
  */
5
- import { SmrtObject } from '@happyvertical/smrt-core';
5
+ import { type SmrtDeleteOptions, SmrtObject } from '@happyvertical/smrt-core';
6
6
  import type { PaymentAllocationOptions } from '../types/index.js';
7
7
  /**
8
8
  * PaymentAllocation tracks how payments are applied to invoices.
@@ -86,6 +86,8 @@ export declare class PaymentAllocation extends SmrtObject {
86
86
  constructor(options?: PaymentAllocationOptions);
87
87
  /** Save and validate against both claimed parent rows in one transaction. */
88
88
  save(): Promise<this>;
89
+ /** Managed application reversal must also post its inverse journal and retain evidence. */
90
+ delete(options?: SmrtDeleteOptions): Promise<void>;
89
91
  }
90
92
  export default PaymentAllocation;
91
93
  //# sourceMappingURL=PaymentAllocation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentAllocation.d.ts","sourceRoot":"","sources":["../../src/models/PaymentAllocation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAqB,UAAU,EAAQ,MAAM,0BAA0B,CAAC;AAK/E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAYlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,qBAoBa,iBAAkB,SAAQ,UAAU;IAC/C;;;OAGG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;OAEG;IAGH,SAAS,EAAE,MAAM,CAAM;IAEvB;;OAEG;IAGH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;;;;;;OASG;IAKH,MAAM,EAAE,MAAM,CAAK;IAEnB;;OAEG;IAEH,WAAW,EAAE,IAAI,CAAc;IAE/B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAM;IAEzB;;OAEG;IAEH,KAAK,EAAE,MAAM,CAAM;gBAEP,OAAO,GAAE,wBAA6B;IAalD,6EAA6E;IAC9D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAkJrC;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"PaymentAllocation.d.ts","sourceRoot":"","sources":["../../src/models/PaymentAllocation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAGL,KAAK,iBAAiB,EACtB,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAalC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAYlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,qBAoBa,iBAAkB,SAAQ,UAAU;IAC/C;;;OAGG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;OAEG;IAGH,SAAS,EAAE,MAAM,CAAM;IAEvB;;OAEG;IAGH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;;;;;;OASG;IAKH,MAAM,EAAE,MAAM,CAAK;IAEnB;;OAEG;IAEH,WAAW,EAAE,IAAI,CAAc;IAE/B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAM;IAEzB;;OAEG;IAEH,KAAK,EAAE,MAAM,CAAM;gBAEP,OAAO,GAAE,wBAA6B;IAalD,6EAA6E;IAC9D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgKpC,2FAA2F;IAC5E,MAAM,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;CAgCtE;AAED,eAAe,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentIntent.d.ts","sourceRoot":"","sources":["../../src/models/PaymentIntent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PaymentIntent.d.ts","sourceRoot":"","sources":["../../src/models/PaymentIntent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Payout.d.ts","sourceRoot":"","sources":["../../src/models/Payout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAc,UAAU,EAAQ,MAAM,0BAA0B,CAAC;AAGxE,OAAO,EAAE,KAAK,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAuCrE,qBAuBa,MAAO,SAAQ,UAAU;IACpC;;;OAGG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;;;;;OAMG;IACH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;OAIG;IAEH,QAAQ,EAAE,MAAM,CAAM;IAEtB;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAK;IAExB;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAK;IAExB;;;;;;;OAOG;IACH,WAAW,EAAE,MAAM,CAAK;IAExB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAM;IAEtB;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAM;IAE1B;;;;;OAKG;IACH,MAAM,EAAE,YAAY,CAAwB;IAE5C;;OAEG;IACH,MAAM,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE3B;;OAEG;IACH,WAAW,EAAE,IAAI,GAAG,IAAI,CAAQ;IAEhC;;OAEG;IACH,QAAQ,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE7B;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAM;IAE3B;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAM;gBAEP,OAAO,GAAE,aAAkB;IA2BvC;;;OAGG;IACY,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAa1C,SAAS,IAAI,OAAO;IAIpB,MAAM,IAAI,OAAO;IAIjB,WAAW,IAAI,OAAO;IAItB,QAAQ,IAAI,OAAO;IAInB;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAcpC;;;;;;OAMG;IACH,aAAa,IAAI,IAAI;IAUrB;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAchC;;;;;;OAMG;IACH,eAAe,IAAI,IAAI;IAevB;;;;;OAKG;IACH,eAAe,IAAI,IAAI;IA4BvB;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACY,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAwCpC;;;;;;;;;OASG;YACW,kBAAkB;IAchC;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAa9B;;;;;;;;;;;;;OAaG;YACW,2BAA2B;IAoCzC,OAAO,CAAC,MAAM,CAAC,UAAU;CAS1B;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Payout.d.ts","sourceRoot":"","sources":["../../src/models/Payout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAc,UAAU,EAAQ,MAAM,0BAA0B,CAAC;AAGxE,OAAO,EAAE,KAAK,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAuCrE,qBAuBa,MAAO,SAAQ,UAAU;IACpC;;;OAGG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;;;;;OAMG;IACH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;OAIG;IAEH,QAAQ,EAAE,MAAM,CAAM;IAEtB;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAK;IAExB;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAK;IAExB;;;;;;;OAOG;IACH,WAAW,EAAE,MAAM,CAAK;IAExB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAM;IAEtB;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAM;IAE1B;;;;;OAKG;IACH,MAAM,EAAE,YAAY,CAAwB;IAE5C;;OAEG;IACH,MAAM,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE3B;;OAEG;IACH,WAAW,EAAE,IAAI,GAAG,IAAI,CAAQ;IAEhC;;OAEG;IACH,QAAQ,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE7B;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAM;IAE3B;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAM;gBAEP,OAAO,GAAE,aAAkB;IA2BvC;;;OAGG;IACY,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAa1C,SAAS,IAAI,OAAO;IAIpB,MAAM,IAAI,OAAO;IAIjB,WAAW,IAAI,OAAO;IAItB,QAAQ,IAAI,OAAO;IAInB;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAcpC;;;;;;OAMG;IACH,aAAa,IAAI,IAAI;IAUrB;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAchC;;;;;;OAMG;IACH,eAAe,IAAI,IAAI;IAevB;;;;;OAKG;IACH,eAAe,IAAI,IAAI;IA4BvB;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACY,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAwCpC;;;;;;;;;OASG;YACW,kBAAkB;IAchC;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAa9B;;;;;;;;;;;;;OAaG;YACW,2BAA2B;IAyCzC,OAAO,CAAC,MAAM,CAAC,UAAU;CAS1B;AAED,eAAe,MAAM,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { SmrtObject, type SmrtObjectOptions } from '@happyvertical/smrt-core';
2
+ import { OBSERVED_PURCHASE_WRITE } from '../observed-purchase-price-internal.js';
3
+ /** Original purchase evidence with explicitly unavailable monetary aggregates. */
4
+ export declare class PurchasePriceObservation extends SmrtObject {
5
+ tenantId: string;
6
+ sourceIdentity: string;
7
+ vendorId: string;
8
+ snapshotJson: string;
9
+ completionJson: string;
10
+ constructor(options?: SmrtObjectOptions & Partial<PurchasePriceObservation>);
11
+ save(): Promise<this>;
12
+ saveObserved(capability: typeof OBSERVED_PURCHASE_WRITE): Promise<this>;
13
+ delete(): Promise<void>;
14
+ }
15
+ //# sourceMappingURL=PurchasePriceObservation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PurchasePriceObservation.d.ts","sourceRoot":"","sources":["../../src/models/PurchasePriceObservation.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEjF,kFAAkF;AAClF,qBAEa,wBAAyB,SAAQ,UAAU;IAC1C,QAAQ,SAAM;IACD,cAAc,SAAM;IACpB,QAAQ,SAAM;IACd,YAAY,SAAM;IAClB,cAAc,SAAM;gBAE3C,OAAO,GAAE,iBAAiB,GAAG,OAAO,CAAC,wBAAwB,CAAM;IAYtD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9B,YAAY,CAChB,UAAU,EAAE,OAAO,uBAAuB,GACzC,OAAO,CAAC,IAAI,CAAC;IAOD,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAGvC"}
@@ -9,7 +9,7 @@ export declare class TaxCode extends SmrtObject {
9
9
  name: string;
10
10
  kind: TaxCodeKind;
11
11
  appliesTo: TaxCodeAppliesTo;
12
- /** Ordered component IDs; compound is reserved and deliberately unsupported. */
12
+ /** Ordered component IDs; compound includes every preceding component in this code. */
13
13
  /** Stored JSON is guarded through the typed accessor below. */
14
14
  componentsJson: string;
15
15
  get components(): TaxCodePart[];
@@ -1 +1 @@
1
- {"version":3,"file":"TaxCode.d.ts","sourceRoot":"","sources":["../../src/models/TaxCode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,UAAU,EAAQ,MAAM,0BAA0B,CAAC;AAGnE,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,cAAc,CAAC;AAC/E,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,WAAW,GAAG,MAAM,CAAC;AAE9D,wEAAwE;AACxE,qBAUa,OAAQ,SAAQ,UAAU;IAErC,QAAQ,SAAM;IAGd,IAAI,SAAM;IAGV,IAAI,SAAM;IAGV,IAAI,EAAE,WAAW,CAAa;IAK9B,SAAS,EAAE,gBAAgB,CAAU;IAErC,gFAAgF;IAChF,+DAA+D;IAC/D,cAAc,SAAQ;IAEtB,IAII,UAAU,IAAI,WAAW,EAAE,CAc9B;IAED,IAAI,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,EAG3C;IAKD,MAAM,UAAQ;gBAEF,OAAO,GAAE,cAAmB;IAYzB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiEpC,OAAO,CAAC,gBAAgB;CAoBzB"}
1
+ {"version":3,"file":"TaxCode.d.ts","sourceRoot":"","sources":["../../src/models/TaxCode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,UAAU,EAAQ,MAAM,0BAA0B,CAAC;AAGnE,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,cAAc,CAAC;AAC/E,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,WAAW,GAAG,MAAM,CAAC;AAE9D,wEAAwE;AACxE,qBAUa,OAAQ,SAAQ,UAAU;IAErC,QAAQ,SAAM;IAGd,IAAI,SAAM;IAGV,IAAI,SAAM;IAGV,IAAI,EAAE,WAAW,CAAa;IAK9B,SAAS,EAAE,gBAAgB,CAAU;IAErC,uFAAuF;IACvF,+DAA+D;IAC/D,cAAc,SAAQ;IAEtB,IAII,UAAU,IAAI,WAAW,EAAE,CAc9B;IAED,IAAI,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,EAG3C;IAKD,MAAM,UAAQ;gBAEF,OAAO,GAAE,cAAmB;IAYzB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA2DpC,OAAO,CAAC,gBAAgB;CAoBzB"}
@@ -16,6 +16,7 @@ export { PaymentAllocation } from './PaymentAllocation.js';
16
16
  export { PaymentInstrument } from './PaymentInstrument.js';
17
17
  export { PaymentIntent } from './PaymentIntent.js';
18
18
  export { Payout } from './Payout.js';
19
+ export { PurchasePriceObservation } from './PurchasePriceObservation.js';
19
20
  export { TaxCode, type TaxCodeAppliesTo, type TaxCodeKind } from './TaxCode.js';
20
21
  export { TaxComponent } from './TaxComponent.js';
21
22
  export { type TaxRegistration, TaxSettings } from './TaxSettings.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,cAAc,EACd,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,KAAK,qBAAqB,EAC1B,qBAAqB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,4BAA4B,EACjC,KAAK,+BAA+B,EACpC,kBAAkB,EAClB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,KAAK,qBAAqB,EAC1B,WAAW,EACX,KAAK,EACL,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,aAAa,EACb,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,KAAK,oBAAoB,EACzB,WAAW,EACX,KAAK,kBAAkB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,KAAK,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EACL,gBAAgB,EAChB,KAAK,uBAAuB,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,cAAc,EACd,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,KAAK,qBAAqB,EAC1B,qBAAqB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,4BAA4B,EACjC,KAAK,+BAA+B,EACpC,kBAAkB,EAClB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,KAAK,qBAAqB,EAC1B,WAAW,EACX,KAAK,EACL,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,aAAa,EACb,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,KAAK,oBAAoB,EACzB,WAAW,EACX,KAAK,kBAAkB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,KAAK,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EACL,gBAAgB,EAChB,KAAK,uBAAuB,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
package/dist/money.d.ts CHANGED
@@ -5,7 +5,7 @@ export type LineAmountType = 'exclusive' | 'inclusive' | 'none';
5
5
  export type TaxRoundingScope = 'line' | 'document';
6
6
  export type TaxCodeKind = 'taxable' | 'zero-rated' | 'exempt' | 'out-of-scope';
7
7
  export type TaxCodeAppliesTo = 'sales' | 'purchases' | 'both';
8
- export type MoneyValidationCode = 'DISCOUNT_BOTH_FORMS' | 'DISCOUNT_EXCEEDS_GROSS' | 'DISCOUNT_SIGN' | 'PERCENT_OUT_OF_RANGE' | 'COMPOUND_UNSUPPORTED' | 'INVALID_MONEY_INPUT' | 'TAX_CODE_DUPLICATE_COMPONENT' | 'TAX_CODE_KIND' | 'TAX_CODE_NON_TAXABLE_COMPONENTS' | 'TAX_CODE_NOT_FOUND' | 'TAX_CODE_TAXABLE_EMPTY' | 'TAX_COMPONENT_RATE_CONFLICT' | 'TAX_CODE_INACTIVE' | 'TAX_CODE_SCOPE' | 'UNSAFE_MONEY' | 'FROZEN_DOCUMENT' | 'CURRENCY_MISMATCH' | 'ACCOUNTING_SYNC_IN_PROGRESS' | 'ACCOUNTING_SYNC_RECONCILIATION_REQUIRED' | 'ACCOUNTING_SYNC_UNSUPPORTED' | 'CREDIT_EXCEEDS_LINE' | 'CREDIT_TARGET_NOT_ISSUED';
8
+ export type MoneyValidationCode = 'DISCOUNT_BOTH_FORMS' | 'DISCOUNT_EXCEEDS_GROSS' | 'DISCOUNT_SIGN' | 'PERCENT_OUT_OF_RANGE' | 'COMPOUND_UNSUPPORTED' | 'TAX_COMPONENT_DEPENDENCY_CYCLE' | 'INVALID_MONEY_INPUT' | 'TAX_CODE_DUPLICATE_COMPONENT' | 'TAX_CODE_KIND' | 'TAX_CODE_NON_TAXABLE_COMPONENTS' | 'TAX_CODE_NOT_FOUND' | 'TAX_CODE_TAXABLE_EMPTY' | 'TAX_COMPONENT_RATE_CONFLICT' | 'TAX_CODE_INACTIVE' | 'TAX_CODE_SCOPE' | 'UNSAFE_MONEY' | 'FROZEN_DOCUMENT' | 'CURRENCY_MISMATCH' | 'ACCOUNTING_SYNC_IN_PROGRESS' | 'ACCOUNTING_SYNC_RECONCILIATION_REQUIRED' | 'ACCOUNTING_SYNC_UNSUPPORTED' | 'CREDIT_EXCEEDS_LINE' | 'CREDIT_TARGET_NOT_ISSUED';
9
9
  /** Stable validation error shared by model, editor, and transport adapters. */
10
10
  export declare class MoneyValidationError extends Error {
11
11
  readonly code: MoneyValidationCode;
@@ -58,6 +58,8 @@ export interface MoneyLineResult {
58
58
  components: {
59
59
  taxComponentId: string;
60
60
  taxMinor: number;
61
+ compound?: boolean;
62
+ taxableMinor?: number;
61
63
  }[];
62
64
  taxMinor: number;
63
65
  netMinor: number;
@@ -67,6 +69,8 @@ export interface MoneyDocumentTaxResult {
67
69
  taxCodeId: string | null;
68
70
  taxComponentId: string | null;
69
71
  taxableMinor: number;
72
+ /** Net basis separately from a compound component's actual taxable basis. */
73
+ netMinor?: number;
70
74
  taxMinor: number;
71
75
  }
72
76
  export interface MoneyDocumentResult {
@@ -1 +1 @@
1
- {"version":3,"file":"money.d.ts","sourceRoot":"","sources":["../src/money.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAQtE,kFAAkF;AAClF,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAChD,IAAI,CAUN;AAED,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,WAAW,GAAG,MAAM,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,CAAC;AACnD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,cAAc,CAAC;AAC/E,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,WAAW,GAAG,MAAM,CAAC;AAE9D,MAAM,MAAM,mBAAmB,GAC3B,qBAAqB,GACrB,wBAAwB,GACxB,eAAe,GACf,sBAAsB,GACtB,sBAAsB,GACtB,qBAAqB,GACrB,8BAA8B,GAC9B,eAAe,GACf,iCAAiC,GACjC,oBAAoB,GACpB,wBAAwB,GACxB,6BAA6B,GAC7B,mBAAmB,GACnB,gBAAgB,GAChB,cAAc,GACd,iBAAiB,GACjB,mBAAmB,GACnB,6BAA6B,GAC7B,yCAAyC,GACzC,6BAA6B,GAC7B,qBAAqB,GACrB,0BAA0B,CAAC;AAE/B,+EAA+E;AAC/E,qBAAa,oBAAqB,SAAQ,KAAK;IAM3C,QAAQ,CAAC,IAAI,EAAE,mBAAmB;IALpC,SAAkB,IAAI,0BAA0B;IAChD,gFAAgF;IAChF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAGpB,IAAI,EAAE,mBAAmB,EAClC,OAAO,EAAE,MAAM;CAKlB;AAED,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,uEAAuE;IACvE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iFAAiF;IACjF,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC3D,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,iFAAiF;IACjF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,sBAAsB,EAAE,CAAC;CACjC;AAED,MAAM,MAAM,uBAAuB,GAC/B,MAAM,GACN,iBAAiB,GACjB,SAAS,GACT,UAAU,GACV,KAAK,GACL,MAAM,CAAC;AAEX,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,OAAO,GAAG,WAAW,CAAC;IACjC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC,CAAC;IACxD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACvC,MAAM,EAAE,uBAAuB,CAAC;CACjC;AA+MD,4EAA4E;AAC5E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,cAAc,CAAC;IAC/B,aAAa,EAAE,gBAAgB,CAAC;IAChC,KAAK,EAAE,SAAS,cAAc,EAAE,CAAC;CAClC,GAAG,mBAAmB,CA+LtB;AAgCD,uFAAuF;AACvF,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,uBAAuB,EAC7B,OAAO,EAAE,yBAAyB,GACjC,mBAAmB,CAmErB"}
1
+ {"version":3,"file":"money.d.ts","sourceRoot":"","sources":["../src/money.ts"],"names":[],"mappings":"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"}
package/dist/money.js CHANGED
@@ -69,14 +69,14 @@ function validateTaxCode(code, rates) {
69
69
  if (seen.has(component.taxComponentId)) validationError("TAX_CODE_DUPLICATE_COMPONENT", "Duplicate tax component within code");
70
70
  seen.add(component.taxComponentId);
71
71
  if (typeof component.compound !== "boolean") validationError("INVALID_MONEY_INPUT", "Tax component compound must be boolean");
72
- if (component.compound) validationError("COMPOUND_UNSUPPORTED", "Compound tax components are not supported");
73
72
  const rate = percentUnits(component.percent);
74
73
  const existing = rates.get(component.taxComponentId);
75
74
  if (existing !== void 0 && existing !== rate) validationError("TAX_COMPONENT_RATE_CONFLICT", "Shared tax component has conflicting percentages");
76
75
  rates.set(component.taxComponentId, rate);
77
76
  return {
78
77
  taxComponentId: component.taxComponentId,
79
- rate
78
+ rate,
79
+ compound: component.compound
80
80
  };
81
81
  });
82
82
  }
@@ -123,29 +123,68 @@ function calculateMoneyDocument(input) {
123
123
  if (input.lineAmountType === "none" && !line.taxCode) validationError("TAX_CODE_NOT_FOUND", "None pricing requires an out-of-scope tax code");
124
124
  if (input.lineAmountType === "none" && line.taxCode?.kind !== "out-of-scope") validationError("TAX_CODE_KIND", "None pricing requires an out-of-scope tax code");
125
125
  const components = line.taxCode ? validateTaxCode(line.taxCode, rates) : [];
126
- const totalRate = components.reduce((sum, component) => sum + component.rate, 0n);
127
- const denominator = explicitNet === null && input.lineAmountType === "inclusive" ? PERCENT_DENOMINATOR + totalRate : PERCENT_DENOMINATOR;
126
+ let totalNumerator = 1n;
127
+ let totalDenominator = 1n;
128
+ const factors = components.map((component) => {
129
+ const numerator = component.rate * (component.compound ? totalNumerator : totalDenominator);
130
+ const denominator = PERCENT_DENOMINATOR * totalDenominator;
131
+ totalNumerator = totalNumerator * PERCENT_DENOMINATOR + numerator;
132
+ totalDenominator = denominator;
133
+ return {
134
+ ...component,
135
+ numerator,
136
+ denominator
137
+ };
138
+ });
128
139
  return {
129
140
  input: line,
130
141
  gross,
131
142
  discount,
132
143
  amount,
133
144
  explicitNet,
134
- exact: input.lineAmountType === "none" ? [] : components.map((component) => ({
135
- taxComponentId: component.taxComponentId,
136
- numerator: amount * component.rate,
137
- denominator
145
+ inclusive: explicitNet === null && input.lineAmountType === "inclusive",
146
+ exact: input.lineAmountType === "none" ? [] : factors.map((component, index) => ({
147
+ ...component,
148
+ priorIds: component.compound ? components.slice(0, index).map((prior) => prior.taxComponentId) : [],
149
+ numerator: amount * component.numerator * totalDenominator,
150
+ denominator: component.denominator * totalNumerator
138
151
  })),
139
- taxes: /* @__PURE__ */ new Map()
152
+ taxes: /* @__PURE__ */ new Map(),
153
+ bases: /* @__PURE__ */ new Map()
140
154
  };
141
155
  });
142
- if (input.roundingScope === "line") for (const line of working) for (const component of line.exact) line.taxes.set(component.taxComponentId, roundSignedRational(component.numerator, component.denominator));
143
- else for (const componentId of [...rates.keys()].sort()) {
156
+ const dependencies = new Map([...rates.keys()].map((id) => [id, /* @__PURE__ */ new Set()]));
157
+ for (const line of working) for (const component of line.exact) for (const prior of component.priorIds) dependencies.get(component.taxComponentId)?.add(prior);
158
+ const order = [];
159
+ while (dependencies.size) {
160
+ const ready = [...dependencies].filter(([, prior]) => prior.size === 0).map(([id]) => id).sort();
161
+ if (!ready.length) validationError("TAX_COMPONENT_DEPENDENCY_CYCLE", "Tax codes impose contradictory compound component order");
162
+ for (const id of ready) {
163
+ order.push(id);
164
+ dependencies.delete(id);
165
+ for (const prior of dependencies.values()) prior.delete(id);
166
+ }
167
+ }
168
+ const exactTax = (line, component) => {
169
+ if (line.inclusive) return component;
170
+ const basis = line.amount + component.priorIds.reduce((sum, id) => sum + (line.taxes.get(id) ?? 0n), 0n);
171
+ safeMoney(basis);
172
+ line.bases.set(component.taxComponentId, basis);
173
+ return {
174
+ numerator: basis * component.rate,
175
+ denominator: PERCENT_DENOMINATOR
176
+ };
177
+ };
178
+ if (input.roundingScope === "line") for (const line of working) for (const component of line.exact) {
179
+ const exact = exactTax(line, component);
180
+ line.taxes.set(component.taxComponentId, roundSignedRational(exact.numerator, exact.denominator));
181
+ }
182
+ else for (const componentId of order) {
144
183
  const eligible = working.flatMap((line) => {
145
- const exact = line.exact.find((component) => component.taxComponentId === componentId);
146
- return exact ? [{
184
+ const component = line.exact.find((item) => item.taxComponentId === componentId);
185
+ return component ? [{
147
186
  line,
148
- exact
187
+ exact: exactTax(line, component)
149
188
  }] : [];
150
189
  });
151
190
  const allocated = allocateSignedRationals(eligible.map(({ line, exact }) => ({
@@ -162,6 +201,13 @@ function calculateMoneyDocument(input) {
162
201
  }));
163
202
  const tax2 = components.reduce((sum, component) => sum + BigInt(component.taxMinor), 0n);
164
203
  const net = line.explicitNet ?? (input.lineAmountType === "inclusive" ? line.amount - tax2 : line.amount);
204
+ for (let index = 0; index < components.length; index++) {
205
+ const source = line.exact[index];
206
+ if (source.compound) Object.assign(components[index], {
207
+ compound: true,
208
+ taxableMinor: safeMoney(line.inclusive ? net + source.priorIds.reduce((sum, id) => sum + (line.taxes.get(id) ?? 0n), 0n) : line.bases.get(source.taxComponentId) ?? net)
209
+ });
210
+ }
165
211
  const amount = line.explicitNet !== null && input.lineAmountType === "inclusive" ? net + tax2 : line.amount;
166
212
  return {
167
213
  id: line.input.id,
@@ -198,7 +244,8 @@ function calculateMoneyDocument(input) {
198
244
  taxableMinor: 0,
199
245
  taxMinor: 0
200
246
  };
201
- row.taxableMinor = safeMoney(BigInt(row.taxableMinor) + BigInt(result.netMinor));
247
+ row.taxableMinor = safeMoney(BigInt(row.taxableMinor) + BigInt(component.taxableMinor ?? result.netMinor));
248
+ if (component.compound) row.netMinor = safeMoney(BigInt(row.netMinor ?? 0) + BigInt(result.netMinor));
202
249
  row.taxMinor = safeMoney(BigInt(row.taxMinor) + BigInt(component.taxMinor));
203
250
  taxRows.set(key, row);
204
251
  }