@stamhoofd/structures 2.111.0 → 2.112.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.
- package/LICENSE.md +32 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/src/BalanceItem.d.ts +10 -0
- package/dist/src/BalanceItem.d.ts.map +1 -1
- package/dist/src/BalanceItem.js +35 -4
- package/dist/src/BalanceItem.js.map +1 -1
- package/dist/src/BalanceItemDetailed.d.ts +8 -0
- package/dist/src/BalanceItemDetailed.d.ts.map +1 -1
- package/dist/src/BalanceItemDetailed.js +11 -4
- package/dist/src/BalanceItemDetailed.js.map +1 -1
- package/dist/src/Company.d.ts +1 -0
- package/dist/src/Company.d.ts.map +1 -1
- package/dist/src/Company.js +23 -0
- package/dist/src/Company.js.map +1 -1
- package/dist/src/PaymentCustomer.d.ts +1 -0
- package/dist/src/PaymentCustomer.d.ts.map +1 -1
- package/dist/src/PaymentCustomer.js +23 -0
- package/dist/src/PaymentCustomer.js.map +1 -1
- package/dist/src/Version.d.ts +1 -1
- package/dist/src/Version.js +1 -1
- package/dist/src/addresses/Address.d.ts +1 -0
- package/dist/src/addresses/Address.d.ts.map +1 -1
- package/dist/src/addresses/Address.js +3 -0
- package/dist/src/addresses/Address.js.map +1 -1
- package/dist/src/billing/Invoice.d.ts +31 -2
- package/dist/src/billing/Invoice.d.ts.map +1 -1
- package/dist/src/billing/Invoice.js +152 -4
- package/dist/src/billing/Invoice.js.map +1 -1
- package/dist/src/billing/InvoicedBalanceItem.d.ts.map +1 -1
- package/dist/src/billing/InvoicedBalanceItem.js +11 -5
- package/dist/src/billing/InvoicedBalanceItem.js.map +1 -1
- package/dist/src/billing/index.d.ts +1 -0
- package/dist/src/billing/index.d.ts.map +1 -1
- package/dist/src/billing/index.js +4 -0
- package/dist/src/billing/index.js.map +1 -1
- package/dist/src/email/Email.d.ts +2 -1
- package/dist/src/email/Email.d.ts.map +1 -1
- package/dist/src/email/Email.js +2 -1
- package/dist/src/email/Email.js.map +1 -1
- package/dist/src/email/EmailTemplate.d.ts +2 -0
- package/dist/src/email/EmailTemplate.d.ts.map +1 -1
- package/dist/src/email/EmailTemplate.js +20 -0
- package/dist/src/email/EmailTemplate.js.map +1 -1
- package/dist/src/endpoints/UitpasNumbersGetDetailsRequest.d.ts +10 -0
- package/dist/src/endpoints/UitpasNumbersGetDetailsRequest.d.ts.map +1 -0
- package/dist/src/endpoints/UitpasNumbersGetDetailsRequest.js +38 -0
- package/dist/src/endpoints/UitpasNumbersGetDetailsRequest.js.map +1 -0
- package/dist/src/members/MemberDetails.d.ts +4 -1
- package/dist/src/members/MemberDetails.d.ts.map +1 -1
- package/dist/src/members/MemberDetails.js +39 -10
- package/dist/src/members/MemberDetails.js.map +1 -1
- package/dist/src/members/MemberDetails.test.js +144 -0
- package/dist/src/members/MemberDetails.test.js.map +1 -1
- package/dist/src/members/Payment.d.ts +1 -0
- package/dist/src/members/Payment.d.ts.map +1 -1
- package/dist/src/members/Payment.js +4 -0
- package/dist/src/members/Payment.js.map +1 -1
- package/dist/src/members/PlatformMember.d.ts.map +1 -1
- package/dist/src/members/PlatformMember.js +1 -1
- package/dist/src/members/PlatformMember.js.map +1 -1
- package/dist/src/members/ReviewTime.d.ts.map +1 -1
- package/dist/src/members/ReviewTime.js +1 -1
- package/dist/src/members/ReviewTime.js.map +1 -1
- package/dist/src/members/UitpasNumberDetails.d.ts +40 -0
- package/dist/src/members/UitpasNumberDetails.d.ts.map +1 -0
- package/dist/src/members/UitpasNumberDetails.js +95 -0
- package/dist/src/members/UitpasNumberDetails.js.map +1 -0
- package/dist/src/members/checkout/RegisterItem.d.ts +0 -1
- package/dist/src/members/checkout/RegisterItem.d.ts.map +1 -1
- package/dist/src/members/checkout/RegisterItem.js +0 -4
- package/dist/src/members/checkout/RegisterItem.js.map +1 -1
- package/esm/dist/index.d.ts +2 -0
- package/esm/dist/index.d.ts.map +1 -1
- package/esm/dist/index.js +2 -0
- package/esm/dist/index.js.map +1 -1
- package/esm/dist/src/BalanceItem.d.ts +10 -0
- package/esm/dist/src/BalanceItem.d.ts.map +1 -1
- package/esm/dist/src/BalanceItem.js +36 -5
- package/esm/dist/src/BalanceItem.js.map +1 -1
- package/esm/dist/src/BalanceItemDetailed.d.ts +8 -0
- package/esm/dist/src/BalanceItemDetailed.d.ts.map +1 -1
- package/esm/dist/src/BalanceItemDetailed.js +11 -4
- package/esm/dist/src/BalanceItemDetailed.js.map +1 -1
- package/esm/dist/src/Company.d.ts +1 -0
- package/esm/dist/src/Company.d.ts.map +1 -1
- package/esm/dist/src/Company.js +23 -0
- package/esm/dist/src/Company.js.map +1 -1
- package/esm/dist/src/PaymentCustomer.d.ts +1 -0
- package/esm/dist/src/PaymentCustomer.d.ts.map +1 -1
- package/esm/dist/src/PaymentCustomer.js +23 -0
- package/esm/dist/src/PaymentCustomer.js.map +1 -1
- package/esm/dist/src/Version.d.ts +1 -1
- package/esm/dist/src/Version.js +1 -1
- package/esm/dist/src/addresses/Address.d.ts +1 -0
- package/esm/dist/src/addresses/Address.d.ts.map +1 -1
- package/esm/dist/src/addresses/Address.js +3 -0
- package/esm/dist/src/addresses/Address.js.map +1 -1
- package/esm/dist/src/billing/Invoice.d.ts +31 -2
- package/esm/dist/src/billing/Invoice.d.ts.map +1 -1
- package/esm/dist/src/billing/Invoice.js +151 -4
- package/esm/dist/src/billing/Invoice.js.map +1 -1
- package/esm/dist/src/billing/InvoicedBalanceItem.d.ts.map +1 -1
- package/esm/dist/src/billing/InvoicedBalanceItem.js +11 -5
- package/esm/dist/src/billing/InvoicedBalanceItem.js.map +1 -1
- package/esm/dist/src/billing/index.d.ts +1 -0
- package/esm/dist/src/billing/index.d.ts.map +1 -1
- package/esm/dist/src/billing/index.js +2 -0
- package/esm/dist/src/billing/index.js.map +1 -1
- package/esm/dist/src/email/Email.d.ts +2 -1
- package/esm/dist/src/email/Email.d.ts.map +1 -1
- package/esm/dist/src/email/Email.js +2 -1
- package/esm/dist/src/email/Email.js.map +1 -1
- package/esm/dist/src/email/EmailTemplate.d.ts +2 -0
- package/esm/dist/src/email/EmailTemplate.d.ts.map +1 -1
- package/esm/dist/src/email/EmailTemplate.js +20 -0
- package/esm/dist/src/email/EmailTemplate.js.map +1 -1
- package/esm/dist/src/endpoints/UitpasNumbersGetDetailsRequest.d.ts +10 -0
- package/esm/dist/src/endpoints/UitpasNumbersGetDetailsRequest.d.ts.map +1 -0
- package/esm/dist/src/endpoints/UitpasNumbersGetDetailsRequest.js +34 -0
- package/esm/dist/src/endpoints/UitpasNumbersGetDetailsRequest.js.map +1 -0
- package/esm/dist/src/members/MemberDetails.d.ts +4 -1
- package/esm/dist/src/members/MemberDetails.d.ts.map +1 -1
- package/esm/dist/src/members/MemberDetails.js +39 -10
- package/esm/dist/src/members/MemberDetails.js.map +1 -1
- package/esm/dist/src/members/Payment.d.ts +1 -0
- package/esm/dist/src/members/Payment.d.ts.map +1 -1
- package/esm/dist/src/members/Payment.js +4 -0
- package/esm/dist/src/members/Payment.js.map +1 -1
- package/esm/dist/src/members/PlatformMember.d.ts.map +1 -1
- package/esm/dist/src/members/PlatformMember.js +1 -1
- package/esm/dist/src/members/PlatformMember.js.map +1 -1
- package/esm/dist/src/members/ReviewTime.d.ts.map +1 -1
- package/esm/dist/src/members/ReviewTime.js +1 -1
- package/esm/dist/src/members/ReviewTime.js.map +1 -1
- package/esm/dist/src/members/UitpasNumberDetails.d.ts +40 -0
- package/esm/dist/src/members/UitpasNumberDetails.d.ts.map +1 -0
- package/esm/dist/src/members/UitpasNumberDetails.js +90 -0
- package/esm/dist/src/members/UitpasNumberDetails.js.map +1 -0
- package/esm/dist/src/members/checkout/RegisterItem.d.ts +0 -1
- package/esm/dist/src/members/checkout/RegisterItem.d.ts.map +1 -1
- package/esm/dist/src/members/checkout/RegisterItem.js +0 -4
- package/esm/dist/src/members/checkout/RegisterItem.js.map +1 -1
- package/package.json +2 -2
- package/LICENSE +0 -665
package/dist/src/Version.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// -------------------------------------------------------------
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.Version = void 0;
|
|
10
|
-
exports.Version =
|
|
10
|
+
exports.Version = 392;
|
|
11
11
|
/**
|
|
12
12
|
* Use this in development when making changes to fields.
|
|
13
13
|
* On release, the version will get bumped and the usages of NextVersion will be replaced by that version.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Address.d.ts","sourceRoot":"","sources":["../../../src/addresses/Address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAoC,MAAM,6BAA6B,CAAC;AAG5F,OAAO,EAAE,OAAO,EAAiC,MAAM,qBAAqB,CAAC;AAE7E,qBAAa,OAAQ,SAAQ,WAAW;IACpC,IAAI,EAAE,WAEL;IAED,MAAM,CAAC,eAAe;;;;;IAKtB,MAAM,SAAM;IAGZ,MAAM,SAAM;IAGZ,UAAU,SAAM;IAGhB,IAAI,SAAM;IAGV,OAAO,EAAE,OAAO,CAAC;IAEjB,QAAQ,IAAI,MAAM;IAIlB,WAAW,IAAI,MAAM;IAIrB,WAAW;IAIX,eAAe,CAAC,cAAc,GAAE,OAAuB,GAAG,MAAM;IAOhE;;;OAGG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,GAAE,OAAuB,GAAG,OAAO;IAU/D;;OAEG;IACH,SAAS,IAAI,IAAI;IAejB,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAoFzG,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM;;;;IA4C5C,iBAAiB;CAyCpB;AAED,qBAAa,gBAAiB,SAAQ,OAAO;IAEzC,MAAM,EAAE,MAAM,CAAC;IAGf,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5B,UAAU,EAAE,MAAM,CAAC;CACtB"}
|
|
1
|
+
{"version":3,"file":"Address.d.ts","sourceRoot":"","sources":["../../../src/addresses/Address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAoC,MAAM,6BAA6B,CAAC;AAG5F,OAAO,EAAE,OAAO,EAAiC,MAAM,qBAAqB,CAAC;AAE7E,qBAAa,OAAQ,SAAQ,WAAW;IACpC,IAAI,EAAE,WAEL;IAED,MAAM,CAAC,eAAe;;;;;IAKtB,MAAM,SAAM;IAGZ,MAAM,SAAM;IAGZ,UAAU,SAAM;IAGhB,IAAI,SAAM;IAGV,OAAO,EAAE,OAAO,CAAC;IAEjB,QAAQ,IAAI,MAAM;IAIlB,WAAW,IAAI,MAAM;IAIrB,WAAW;IAIX,eAAe,CAAC,cAAc,GAAE,OAAuB,GAAG,MAAM;IAOhE,MAAM,CAAC,KAAK,EAAE,OAAO;IAIrB;;;OAGG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,GAAE,OAAuB,GAAG,OAAO;IAU/D;;OAEG;IACH,SAAS,IAAI,IAAI;IAejB,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAoFzG,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM;;;;IA4C5C,iBAAiB;CAyCpB;AAED,qBAAa,gBAAiB,SAAQ,OAAO;IAEzC,MAAM,EAAE,MAAM,CAAC;IAGf,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5B,UAAU,EAAE,MAAM,CAAC;CACtB"}
|
|
@@ -35,6 +35,9 @@ class Address extends simple_encoding_1.AutoEncoder {
|
|
|
35
35
|
}
|
|
36
36
|
return this.street + ', ' + this.city + ' (' + CountryDecoder_js_1.CountryHelper.getName(this.country) + ')';
|
|
37
37
|
}
|
|
38
|
+
equals(other) {
|
|
39
|
+
return this.toString() === other.toString();
|
|
40
|
+
}
|
|
38
41
|
/**
|
|
39
42
|
* @deprecated
|
|
40
43
|
* Use .create({}) instead
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Address.js","sourceRoot":"","sources":["../../../src/addresses/Address.ts"],"names":[],"mappings":";;;;AAAA,iEAA4F;AAC5F,6DAAwD;AACxD,gDAA8D;AAC9D,2DAA6E;AAE7E,MAAa,OAAQ,SAAQ,6BAAW;IAAxC;;QAUI,WAAM,GAAG,EAAE,CAAC;QAGZ,WAAM,GAAG,EAAE,CAAC;QAGZ,eAAU,GAAG,EAAE,CAAC;QAGhB,SAAI,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Address.js","sourceRoot":"","sources":["../../../src/addresses/Address.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { AutoEncoder } from '@simonbackx/simple-encoding';
|
|
2
|
+
import { VATExcemptReason } from '../BalanceItem.js';
|
|
2
3
|
import { Company } from '../Company.js';
|
|
3
4
|
import { PaymentCustomer } from '../PaymentCustomer.js';
|
|
5
|
+
import { PriceBreakdown } from '../PriceBreakdown.js';
|
|
4
6
|
import { File } from '../files/File.js';
|
|
7
|
+
import { PaymentGeneral } from '../members/PaymentGeneral.js';
|
|
5
8
|
import { InvoicedBalanceItem } from './InvoicedBalanceItem.js';
|
|
6
|
-
import { VATExcemptReason } from '../BalanceItem.js';
|
|
7
9
|
export declare class VATSubtotal extends AutoEncoder {
|
|
8
10
|
/**
|
|
9
11
|
* For tax ecempt items, this should be zero but it is ignored anyway
|
|
@@ -16,6 +18,13 @@ export declare class VATSubtotal extends AutoEncoder {
|
|
|
16
18
|
taxablePrice: number;
|
|
17
19
|
VAT: number;
|
|
18
20
|
}
|
|
21
|
+
export declare enum InvoiceType {
|
|
22
|
+
Invoice = "Invoice",
|
|
23
|
+
CreditNote = "CreditNote"
|
|
24
|
+
}
|
|
25
|
+
export declare class InvoiceTypeHelper {
|
|
26
|
+
static getName(type: InvoiceType): string;
|
|
27
|
+
}
|
|
19
28
|
export declare class Invoice extends AutoEncoder {
|
|
20
29
|
id: string;
|
|
21
30
|
/**
|
|
@@ -46,6 +55,14 @@ export declare class Invoice extends AutoEncoder {
|
|
|
46
55
|
* The balance items that are invoiced, with their original price. This does not always correspond to the total price of the invoice, or the item prices on the invoice because prices are converted to prices excluding VAT and with PEPPOL rounding rules.
|
|
47
56
|
*/
|
|
48
57
|
items: InvoicedBalanceItem[];
|
|
58
|
+
/**
|
|
59
|
+
* The total sum of an invoice should always match the total sum of the payments connected to it.
|
|
60
|
+
* On top of that, the amounts related to each balance item in the payments, should match the invoiced balance amount in each item in the invoice.
|
|
61
|
+
*
|
|
62
|
+
* Note, that this is a limitation. A payment can only be related to a single invoice. But an invoice can be for multiple payments.
|
|
63
|
+
* More flexibility is often unneeded and makes reconciliation unnecessary complex.
|
|
64
|
+
*/
|
|
65
|
+
payments: PaymentGeneral[];
|
|
49
66
|
get totalWithoutVAT(): number;
|
|
50
67
|
get totalBalanceInvoicedAmount(): number;
|
|
51
68
|
/**
|
|
@@ -71,7 +88,7 @@ export declare class Invoice extends AutoEncoder {
|
|
|
71
88
|
* Best viewed as a virtual extra balance item linked to the invoice to compensate.
|
|
72
89
|
*
|
|
73
90
|
* This is used to explain and report why there is a difference between the sum of the balance item's prices and the actually invoiced price, comparable with roundingAmount on payments.
|
|
74
|
-
* - Say we invoice 3 items of 0,242 euro. The sum would be 0,726. The invoice total price might be 0,73 because of rounding rules. Then the balanceRoundingAmount would be
|
|
91
|
+
* - Say we invoice 3 items of 0,242 euro. The sum would be 0,726. The invoice total price might be 0,73 because of rounding rules. Then the balanceRoundingAmount would be 0,004.
|
|
75
92
|
*/
|
|
76
93
|
get balanceRoundingAmount(): number;
|
|
77
94
|
/**
|
|
@@ -98,7 +115,19 @@ export declare class Invoice extends AutoEncoder {
|
|
|
98
115
|
xml: File | null;
|
|
99
116
|
negativeInvoiceId: string | null;
|
|
100
117
|
didSendPeppol: boolean;
|
|
118
|
+
invoicedAt: Date | null;
|
|
119
|
+
dueAt: Date | null;
|
|
120
|
+
createdAt: Date;
|
|
121
|
+
updatedAt: Date;
|
|
122
|
+
validateVATRates(): void;
|
|
101
123
|
calculateVAT(): void;
|
|
102
124
|
addItem(item: InvoicedBalanceItem): void;
|
|
125
|
+
get type(): InvoiceType;
|
|
126
|
+
get theme(): "theme-error" | undefined;
|
|
127
|
+
get priceBreakdown(): PriceBreakdown;
|
|
128
|
+
/**
|
|
129
|
+
* Call this method after changing the payments related to an invoice.
|
|
130
|
+
*/
|
|
131
|
+
buildFromPayments(): void;
|
|
103
132
|
}
|
|
104
133
|
//# sourceMappingURL=Invoice.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../../src/billing/Invoice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,WAAW,
|
|
1
|
+
{"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../../src/billing/Invoice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,WAAW,EAAkF,MAAM,6BAA6B,CAAC;AAGxJ,OAAO,EAAe,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,qBAAa,WAAY,SAAQ,WAAW;IACxC;;OAEG;IAEH,aAAa,EAAE,MAAM,CAAK;IAG1B,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAE3C;;OAEG;IAEH,YAAY,EAAE,MAAM,CAAK;IAGzB,GAAG,EAAE,MAAM,CAAK;CACnB;AAED,oBAAY,WAAW;IACnB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC5B;AAED,qBAAa,iBAAiB;IAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM;CAM5C;AAED,qBAAa,OAAQ,SAAQ,WAAW;IAEpC,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IAEH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE7B;;OAEG;IAEH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;OAKG;IAEH,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE3C;;;OAGG;IAEH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IAEH,QAAQ,EAAE,eAAe,CAAC;IAE1B;;OAEG;IAEH,KAAK,EAAE,mBAAmB,EAAE,CAAM;IAElC;;;;;;OAMG;IAEH,QAAQ,EAAE,cAAc,EAAE,CAAM;IAEhC,IAAI,eAAe,WAElB;IAED,IAAI,0BAA0B,WAE7B;IAED;;;;;;;;;;;;;;OAcG;IAEH,qBAAqB,EAAE,MAAM,CAAK;IAElC;;;;;;;;OAQG;IACH,IAAI,qBAAqB,WAExB;IAED;;OAEG;IAEH,QAAQ,EAAE,WAAW,EAAE,CAAM;IAE7B,IAAI,cAAc,WAEjB;IAED;;;;;;OAMG;IACH,IAAI,YAAY,WAEf;IAGD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGhC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEhC;;OAEG;IAEH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGtC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGhC,GAAG,EAAE,IAAI,GAAG,IAAI,CAAQ;IAGxB,GAAG,EAAE,IAAI,GAAG,IAAI,CAAQ;IAGxB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGxC,aAAa,UAAS;IAGtB,UAAU,EAAE,IAAI,GAAG,IAAI,CAAQ;IAG/B,KAAK,EAAE,IAAI,GAAG,IAAI,CAAQ;IAG1B,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,CAAc;IAE7B,gBAAgB;IAmChB,YAAY;IAoCZ,OAAO,CAAC,IAAI,EAAE,mBAAmB;IAKjC,IAAI,IAAI,gBAKP;IAED,IAAI,KAAK,8BAIR;IAED,IAAI,cAAc,IAAI,cAAc,CAuBnC;IAED;;OAEG;IACH,iBAAiB;CA0CpB"}
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Invoice = exports.VATSubtotal = void 0;
|
|
3
|
+
exports.Invoice = exports.InvoiceTypeHelper = exports.InvoiceType = exports.VATSubtotal = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const simple_encoding_1 = require("@simonbackx/simple-encoding");
|
|
6
|
+
const simple_errors_1 = require("@simonbackx/simple-errors");
|
|
6
7
|
const uuid_1 = require("uuid");
|
|
8
|
+
const BalanceItem_js_1 = require("../BalanceItem.js");
|
|
7
9
|
const Company_js_1 = require("../Company.js");
|
|
8
10
|
const PaymentCustomer_js_1 = require("../PaymentCustomer.js");
|
|
9
11
|
const File_js_1 = require("../files/File.js");
|
|
12
|
+
const PaymentGeneral_js_1 = require("../members/PaymentGeneral.js");
|
|
10
13
|
const InvoicedBalanceItem_js_1 = require("./InvoicedBalanceItem.js");
|
|
11
|
-
const
|
|
14
|
+
const utility_1 = require("@stamhoofd/utility");
|
|
12
15
|
class VATSubtotal extends simple_encoding_1.AutoEncoder {
|
|
13
16
|
constructor() {
|
|
14
17
|
super(...arguments);
|
|
@@ -37,6 +40,20 @@ tslib_1.__decorate([
|
|
|
37
40
|
tslib_1.__decorate([
|
|
38
41
|
(0, simple_encoding_1.field)({ decoder: simple_encoding_1.IntegerDecoder })
|
|
39
42
|
], VATSubtotal.prototype, "VAT", void 0);
|
|
43
|
+
var InvoiceType;
|
|
44
|
+
(function (InvoiceType) {
|
|
45
|
+
InvoiceType["Invoice"] = "Invoice";
|
|
46
|
+
InvoiceType["CreditNote"] = "CreditNote";
|
|
47
|
+
})(InvoiceType || (exports.InvoiceType = InvoiceType = {}));
|
|
48
|
+
class InvoiceTypeHelper {
|
|
49
|
+
static getName(type) {
|
|
50
|
+
switch (type) {
|
|
51
|
+
case InvoiceType.Invoice: return $t('fbf8fca6-33f0-4ecc-8317-0033f256827e');
|
|
52
|
+
case InvoiceType.CreditNote: return $t('4578aaf4-a15a-4c53-ad46-768b91d96a4e');
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.InvoiceTypeHelper = InvoiceTypeHelper;
|
|
40
57
|
class Invoice extends simple_encoding_1.AutoEncoder {
|
|
41
58
|
constructor() {
|
|
42
59
|
super(...arguments);
|
|
@@ -55,6 +72,14 @@ class Invoice extends simple_encoding_1.AutoEncoder {
|
|
|
55
72
|
* The balance items that are invoiced, with their original price. This does not always correspond to the total price of the invoice, or the item prices on the invoice because prices are converted to prices excluding VAT and with PEPPOL rounding rules.
|
|
56
73
|
*/
|
|
57
74
|
this.items = [];
|
|
75
|
+
/**
|
|
76
|
+
* The total sum of an invoice should always match the total sum of the payments connected to it.
|
|
77
|
+
* On top of that, the amounts related to each balance item in the payments, should match the invoiced balance amount in each item in the invoice.
|
|
78
|
+
*
|
|
79
|
+
* Note, that this is a limitation. A payment can only be related to a single invoice. But an invoice can be for multiple payments.
|
|
80
|
+
* More flexibility is often unneeded and makes reconciliation unnecessary complex.
|
|
81
|
+
*/
|
|
82
|
+
this.payments = [];
|
|
58
83
|
/**
|
|
59
84
|
* This is the rounding amount in cents that is applied to the normal calculation of the invoiced balance items (prices exluding VAT) to come to the actual total price of the invoice.
|
|
60
85
|
*
|
|
@@ -86,6 +111,10 @@ class Invoice extends simple_encoding_1.AutoEncoder {
|
|
|
86
111
|
this.xml = null;
|
|
87
112
|
this.negativeInvoiceId = null;
|
|
88
113
|
this.didSendPeppol = false;
|
|
114
|
+
this.invoicedAt = null;
|
|
115
|
+
this.dueAt = null;
|
|
116
|
+
this.createdAt = new Date();
|
|
117
|
+
this.updatedAt = new Date();
|
|
89
118
|
}
|
|
90
119
|
get totalWithoutVAT() {
|
|
91
120
|
return this.items.reduce((sum, item) => sum + item.totalWithoutVAT, 0);
|
|
@@ -100,7 +129,7 @@ class Invoice extends simple_encoding_1.AutoEncoder {
|
|
|
100
129
|
* Best viewed as a virtual extra balance item linked to the invoice to compensate.
|
|
101
130
|
*
|
|
102
131
|
* This is used to explain and report why there is a difference between the sum of the balance item's prices and the actually invoiced price, comparable with roundingAmount on payments.
|
|
103
|
-
* - Say we invoice 3 items of 0,242 euro. The sum would be 0,726. The invoice total price might be 0,73 because of rounding rules. Then the balanceRoundingAmount would be
|
|
132
|
+
* - Say we invoice 3 items of 0,242 euro. The sum would be 0,726. The invoice total price might be 0,73 because of rounding rules. Then the balanceRoundingAmount would be 0,004.
|
|
104
133
|
*/
|
|
105
134
|
get balanceRoundingAmount() {
|
|
106
135
|
return this.totalWithVAT - this.totalBalanceInvoicedAmount;
|
|
@@ -118,6 +147,39 @@ class Invoice extends simple_encoding_1.AutoEncoder {
|
|
|
118
147
|
get totalWithVAT() {
|
|
119
148
|
return this.totalWithoutVAT + this.VATTotalAmount + this.payableRoundingAmount;
|
|
120
149
|
}
|
|
150
|
+
validateVATRates() {
|
|
151
|
+
let intra = false;
|
|
152
|
+
if (this.customer.company && this.customer.company.VATNumber && this.customer.company.address) {
|
|
153
|
+
if (this.seller.VATNumber && this.seller.address) {
|
|
154
|
+
// Reverse charged vat applicable?
|
|
155
|
+
if (this.customer.company.address.country !== this.seller.address.country) {
|
|
156
|
+
intra = true;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
if (intra) {
|
|
161
|
+
for (const item of this.items) {
|
|
162
|
+
if (item.VATExcempt !== BalanceItem_js_1.VATExcemptReason.IntraCommunity) {
|
|
163
|
+
throw new simple_errors_1.SimpleError({
|
|
164
|
+
code: 'missing_vat_excemption',
|
|
165
|
+
message: 'Missing IntraCommunity VAT excemption',
|
|
166
|
+
human: $t('8b562a1d-e7c0-4110-b320-db535f0ea0e9'),
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
for (const item of this.items) {
|
|
173
|
+
if (item.VATExcempt === BalanceItem_js_1.VATExcemptReason.IntraCommunity) {
|
|
174
|
+
throw new simple_errors_1.SimpleError({
|
|
175
|
+
code: 'erroneous_vat_excemption',
|
|
176
|
+
message: 'IntraCommunity VAT excemption should not apply to this item',
|
|
177
|
+
human: $t('d2c3f57f-ffae-45ea-97ce-3f4f30839cd6'),
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
121
183
|
calculateVAT() {
|
|
122
184
|
// For every VAT category, calculate the taxable amount and VAT amount
|
|
123
185
|
const categories = new Map();
|
|
@@ -141,7 +203,7 @@ class Invoice extends simple_encoding_1.AutoEncoder {
|
|
|
141
203
|
// Calculate VAT amount for each category and round to 1 cent
|
|
142
204
|
for (const category of categories.values()) {
|
|
143
205
|
if (!category.VATExcempt) {
|
|
144
|
-
category.VAT =
|
|
206
|
+
category.VAT = utility_1.STMath.round(category.taxablePrice * category.VATPercentage / 10000) * 100;
|
|
145
207
|
}
|
|
146
208
|
else {
|
|
147
209
|
category.VAT = 0;
|
|
@@ -153,6 +215,77 @@ class Invoice extends simple_encoding_1.AutoEncoder {
|
|
|
153
215
|
this.items.push(item);
|
|
154
216
|
this.calculateVAT();
|
|
155
217
|
}
|
|
218
|
+
get type() {
|
|
219
|
+
if (this.totalWithVAT < 0) {
|
|
220
|
+
return InvoiceType.CreditNote;
|
|
221
|
+
}
|
|
222
|
+
return InvoiceType.Invoice;
|
|
223
|
+
}
|
|
224
|
+
get theme() {
|
|
225
|
+
if (this.type === InvoiceType.CreditNote) {
|
|
226
|
+
return 'theme-error';
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
get priceBreakdown() {
|
|
230
|
+
return [
|
|
231
|
+
{
|
|
232
|
+
name: $t(`d642f190-1607-4f54-8530-7af2f15c651b`),
|
|
233
|
+
price: this.totalWithoutVAT,
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
name: $t(`13c04b8f-80f5-4274-9ea1-badb0f88a091`),
|
|
237
|
+
price: this.VATTotalAmount,
|
|
238
|
+
},
|
|
239
|
+
...(this.payableRoundingAmount !== 0
|
|
240
|
+
? [
|
|
241
|
+
{
|
|
242
|
+
name: $t(`dafd5091-0698-4117-bc5a-db8ba05cefcd`),
|
|
243
|
+
price: this.payableRoundingAmount,
|
|
244
|
+
},
|
|
245
|
+
]
|
|
246
|
+
: []),
|
|
247
|
+
{
|
|
248
|
+
name: $t(`0376551a-9af8-44b7-8ab3-d343384dc900`),
|
|
249
|
+
price: this.totalWithVAT,
|
|
250
|
+
},
|
|
251
|
+
];
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Call this method after changing the payments related to an invoice.
|
|
255
|
+
*/
|
|
256
|
+
buildFromPayments() {
|
|
257
|
+
if (this.number) {
|
|
258
|
+
throw new simple_errors_1.SimpleError({
|
|
259
|
+
code: 'invoice_has_number',
|
|
260
|
+
message: 'An invoice is immutable after it has been generated',
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
// Keep the sum of all balance items.
|
|
264
|
+
const balanceItemsMap = new Map();
|
|
265
|
+
for (const payment of this.payments) {
|
|
266
|
+
for (const item of payment.balanceItemPayments) {
|
|
267
|
+
let data = balanceItemsMap.get(item.balanceItem.id);
|
|
268
|
+
if (!data) {
|
|
269
|
+
data = {
|
|
270
|
+
balanceItem: item.balanceItem,
|
|
271
|
+
amount: 0,
|
|
272
|
+
};
|
|
273
|
+
balanceItemsMap.set(item.balanceItem.id, data);
|
|
274
|
+
}
|
|
275
|
+
data.amount += item.price;
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
const invoicedItems = [];
|
|
279
|
+
for (const item of balanceItemsMap.values()) {
|
|
280
|
+
const invoiced = InvoicedBalanceItem_js_1.InvoicedBalanceItem.createFor(item.balanceItem, item.amount);
|
|
281
|
+
invoicedItems.push(invoiced);
|
|
282
|
+
}
|
|
283
|
+
invoicedItems.sort((a, b) => {
|
|
284
|
+
return utility_1.Sorter.stack(utility_1.Sorter.byNumberValue(a.totalWithoutVAT, b.totalWithoutVAT), utility_1.Sorter.byStringValue(a.name || a.description, b.name || b.description));
|
|
285
|
+
});
|
|
286
|
+
this.items = invoicedItems;
|
|
287
|
+
this.calculateVAT();
|
|
288
|
+
}
|
|
156
289
|
}
|
|
157
290
|
exports.Invoice = Invoice;
|
|
158
291
|
tslib_1.__decorate([
|
|
@@ -176,6 +309,9 @@ tslib_1.__decorate([
|
|
|
176
309
|
tslib_1.__decorate([
|
|
177
310
|
(0, simple_encoding_1.field)({ decoder: new simple_encoding_1.ArrayDecoder(InvoicedBalanceItem_js_1.InvoicedBalanceItem) })
|
|
178
311
|
], Invoice.prototype, "items", void 0);
|
|
312
|
+
tslib_1.__decorate([
|
|
313
|
+
(0, simple_encoding_1.field)({ decoder: new simple_encoding_1.ArrayDecoder(PaymentGeneral_js_1.PaymentGeneral) })
|
|
314
|
+
], Invoice.prototype, "payments", void 0);
|
|
179
315
|
tslib_1.__decorate([
|
|
180
316
|
(0, simple_encoding_1.field)({ decoder: simple_encoding_1.IntegerDecoder })
|
|
181
317
|
], Invoice.prototype, "payableRoundingAmount", void 0);
|
|
@@ -206,4 +342,16 @@ tslib_1.__decorate([
|
|
|
206
342
|
tslib_1.__decorate([
|
|
207
343
|
(0, simple_encoding_1.field)({ decoder: simple_encoding_1.BooleanDecoder, optional: true })
|
|
208
344
|
], Invoice.prototype, "didSendPeppol", void 0);
|
|
345
|
+
tslib_1.__decorate([
|
|
346
|
+
(0, simple_encoding_1.field)({ decoder: simple_encoding_1.DateDecoder, nullable: true })
|
|
347
|
+
], Invoice.prototype, "invoicedAt", void 0);
|
|
348
|
+
tslib_1.__decorate([
|
|
349
|
+
(0, simple_encoding_1.field)({ decoder: simple_encoding_1.DateDecoder, nullable: true })
|
|
350
|
+
], Invoice.prototype, "dueAt", void 0);
|
|
351
|
+
tslib_1.__decorate([
|
|
352
|
+
(0, simple_encoding_1.field)({ decoder: simple_encoding_1.DateDecoder })
|
|
353
|
+
], Invoice.prototype, "createdAt", void 0);
|
|
354
|
+
tslib_1.__decorate([
|
|
355
|
+
(0, simple_encoding_1.field)({ decoder: simple_encoding_1.DateDecoder })
|
|
356
|
+
], Invoice.prototype, "updatedAt", void 0);
|
|
209
357
|
//# sourceMappingURL=Invoice.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invoice.js","sourceRoot":"","sources":["../../../src/billing/Invoice.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"Invoice.js","sourceRoot":"","sources":["../../../src/billing/Invoice.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoicedBalanceItem.d.ts","sourceRoot":"","sources":["../../../src/billing/InvoicedBalanceItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqE,MAAM,6BAA6B,CAAC;AAE7H,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"InvoicedBalanceItem.d.ts","sourceRoot":"","sources":["../../../src/billing/InvoicedBalanceItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqE,MAAM,6BAA6B,CAAC;AAE7H,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAIlE,qBAAa,mBAAoB,SAAQ,WAAW;IAEhD,EAAE,EAAE,MAAM,CAAC;IAGX,aAAa,SAAM;IAGnB,IAAI,SAAM;IAGV,WAAW,SAAM;IAEjB;;;;;;;;;;OAUG;IAEH,qBAAqB,SAAK;IAE1B;;;;;OAKG;IAEH,QAAQ,SAAW;IAEnB;;;OAGG;IAEH,SAAS,SAAK;IAEd;;;OAGG;IAEH,aAAa,EAAE,MAAM,CAAK;IAE1B;;OAEG;IAEH,WAAW,UAAS;IAEpB;;;OAGG;IAEH,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAE3C;;;OAGG;IACH,IAAI,eAAe,WAElB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;CAiD5D"}
|
|
@@ -6,6 +6,7 @@ const simple_encoding_1 = require("@simonbackx/simple-encoding");
|
|
|
6
6
|
const uuid_1 = require("uuid");
|
|
7
7
|
const BalanceItem_js_1 = require("../BalanceItem.js");
|
|
8
8
|
const simple_errors_1 = require("@simonbackx/simple-errors");
|
|
9
|
+
const utility_1 = require("@stamhoofd/utility");
|
|
9
10
|
class InvoicedBalanceItem extends simple_encoding_1.AutoEncoder {
|
|
10
11
|
constructor() {
|
|
11
12
|
super(...arguments);
|
|
@@ -56,7 +57,7 @@ class InvoicedBalanceItem extends simple_encoding_1.AutoEncoder {
|
|
|
56
57
|
* = LineExtensionAmount
|
|
57
58
|
*/
|
|
58
59
|
get totalWithoutVAT() {
|
|
59
|
-
return
|
|
60
|
+
return utility_1.STMath.round(this.unitPrice * this.quantity / 1000000) * 100;
|
|
60
61
|
}
|
|
61
62
|
/**
|
|
62
63
|
* Creates a default configuration for a balance item that needs to be invoiced. The result can still be adjusted to correct rounding issues, because
|
|
@@ -83,9 +84,9 @@ class InvoicedBalanceItem extends simple_encoding_1.AutoEncoder {
|
|
|
83
84
|
item.VATExcempt = balanceItem.VATExcempt;
|
|
84
85
|
item.VATIncluded = balanceItem.VATIncluded;
|
|
85
86
|
// Calculate amount and unit price
|
|
86
|
-
const balanceItemUnitPriceWithVAT =
|
|
87
|
-
const quantity =
|
|
88
|
-
if (quantity
|
|
87
|
+
const balanceItemUnitPriceWithVAT = utility_1.STMath.round(balanceItem.priceWithVAT / balanceItem.quantity);
|
|
88
|
+
const quantity = utility_1.STMath.round(item.balanceInvoicedAmount * 10000 / balanceItemUnitPriceWithVAT); // Amount per ten thousand
|
|
89
|
+
if (quantity === 0) {
|
|
89
90
|
throw new simple_errors_1.SimpleError({
|
|
90
91
|
message: 'Invoiced amount is too low to create an invoiced balance item',
|
|
91
92
|
human: $t('551f6cc0-0b1a-4a62-8e09-cef159f5f7d5'),
|
|
@@ -102,7 +103,12 @@ class InvoicedBalanceItem extends simple_encoding_1.AutoEncoder {
|
|
|
102
103
|
// so this is disabled for now. Rounding will happen on line level though
|
|
103
104
|
// item.unitPrice = Math.round(item.unitPrice / 100) * 100;
|
|
104
105
|
// round as integer instead (0.0001):
|
|
105
|
-
item.unitPrice =
|
|
106
|
+
item.unitPrice = utility_1.STMath.round(item.unitPrice);
|
|
107
|
+
// Make sure unit price is always positive, and quantity is negative instead
|
|
108
|
+
if (item.unitPrice < 0) {
|
|
109
|
+
item.unitPrice = -item.unitPrice;
|
|
110
|
+
item.quantity = -item.quantity;
|
|
111
|
+
}
|
|
106
112
|
return item;
|
|
107
113
|
}
|
|
108
114
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoicedBalanceItem.js","sourceRoot":"","sources":["../../../src/billing/InvoicedBalanceItem.ts"],"names":[],"mappings":";;;;AAAA,iEAA6H;AAC7H,+BAAoC;AACpC,sDAAkE;AAClE,6DAAwD;
|
|
1
|
+
{"version":3,"file":"InvoicedBalanceItem.js","sourceRoot":"","sources":["../../../src/billing/InvoicedBalanceItem.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,5 +11,6 @@ export * from './STPackageBundle.js';
|
|
|
11
11
|
export * from './OrganizationPackagesStatus.js';
|
|
12
12
|
export * from './STPendingInvoice.js';
|
|
13
13
|
export * from './Invoice.js';
|
|
14
|
+
export { Invoice as InvoiceStruct } from './Invoice.js';
|
|
14
15
|
export * from './InvoicedBalanceItem.js';
|
|
15
16
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/billing/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AAEtC,cAAc,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/billing/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AAEtC,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,cAAc,CAAC;AAExD,cAAc,0BAA0B,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InvoiceStruct = void 0;
|
|
3
4
|
const tslib_1 = require("tslib");
|
|
4
5
|
tslib_1.__exportStar(require("./OrganizationPaymentMandate.js"), exports);
|
|
5
6
|
tslib_1.__exportStar(require("./STBillingStatus.js"), exports);
|
|
@@ -14,5 +15,8 @@ tslib_1.__exportStar(require("./STPackageBundle.js"), exports);
|
|
|
14
15
|
tslib_1.__exportStar(require("./OrganizationPackagesStatus.js"), exports);
|
|
15
16
|
tslib_1.__exportStar(require("./STPendingInvoice.js"), exports);
|
|
16
17
|
tslib_1.__exportStar(require("./Invoice.js"), exports);
|
|
18
|
+
// Alias
|
|
19
|
+
var Invoice_js_1 = require("./Invoice.js");
|
|
20
|
+
Object.defineProperty(exports, "InvoiceStruct", { enumerable: true, get: function () { return Invoice_js_1.Invoice; } });
|
|
17
21
|
tslib_1.__exportStar(require("./InvoicedBalanceItem.js"), exports);
|
|
18
22
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/billing/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/billing/index.ts"],"names":[],"mappings":";;;;AAAA,0EAAgD;AAChD,+DAAqC;AACrC,wDAA8B;AAC9B,yDAA+B;AAC/B,6DAAmC;AACnC,6DAAmC;AACnC,+DAAqC;AACrC,gEAAsC;AACtC,yDAA+B;AAC/B,+DAAqC;AACrC,0EAAgD;AAChD,gEAAsC;AAEtC,uDAA6B;AAC7B,QAAQ;AACR,2CAAwD;AAA/C,2GAAA,OAAO,OAAiB;AAEjC,mEAAyC"}
|
|
@@ -16,7 +16,8 @@ export declare enum EmailRecipientFilterType {
|
|
|
16
16
|
MemberParents = "MemberParents",
|
|
17
17
|
MemberUnverified = "MemberUnverified",
|
|
18
18
|
Orders = "Orders",
|
|
19
|
-
ReceivableBalances = "ReceivableBalances"
|
|
19
|
+
ReceivableBalances = "ReceivableBalances",
|
|
20
|
+
Documents = "Documents"
|
|
20
21
|
}
|
|
21
22
|
export declare function getExampleRecipient(type?: EmailRecipientFilterType | null): EmailRecipient;
|
|
22
23
|
export declare enum EmailStatus {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Email.d.ts","sourceRoot":"","sources":["../../../src/email/Email.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,WAAW,EAAkF,MAAM,6BAA6B,CAAC;AAIpK,OAAO,EAAE,eAAe,EAAE,SAAS,EAAoB,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEzG,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,oBAAY,wBAAwB;IAChC,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAC3C,sBAAsB,2BAA2B;IACjD,OAAO,YAAY;IACnB,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,MAAM,WAAW;IACjB,kBAAkB,uBAAuB;
|
|
1
|
+
{"version":3,"file":"Email.d.ts","sourceRoot":"","sources":["../../../src/email/Email.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,WAAW,EAAkF,MAAM,6BAA6B,CAAC;AAIpK,OAAO,EAAE,eAAe,EAAE,SAAS,EAAoB,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEzG,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,oBAAY,wBAAwB;IAChC,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAC3C,sBAAsB,2BAA2B;IACjD,OAAO,YAAY;IACnB,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,MAAM,WAAW;IACjB,kBAAkB,uBAAuB;IACzC,SAAS,cAAc;CAC1B;AAED,wBAAgB,mBAAmB,CAAC,IAAI,GAAE,wBAAwB,GAAG,IAAW,kBAQ/E;AAED,oBAAY,WAAW;IACnB,KAAK,UAAU;IACf;;OAEG;IACH,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,MAAM,WAAW;CACpB;AAED,oBAAY,qBAAqB;IAC7B,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACtB;AAED,qBAAa,uBAAwB,SAAQ,WAAW;IAEpD,IAAI,2BAAoC;IAGxC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAQ;IAGtC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE7B;;;OAGG;IAEH,SAAS,EAAE,eAAe,GAAG,IAAI,CAAQ;CAC5C;AAED,qBAAa,oBAAqB,SAAQ,WAAW;IAEjD,OAAO,EAAE,uBAAuB,EAAE,CAAM;IAExC;;;OAGG;IAEH,YAAY,UAAS;IAErB,IAAI,qBAAqB,YAOxB;CACJ;AAED,qBAAa,KAAM,SAAQ,WAAW;IAElC,EAAE,EAAE,MAAM,CAAC;IAGX,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGrC,eAAe,uBAAmC;IAGlD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG9B,MAAM,cAAqB;IAG3B,WAAW,EAAE,YAAY,GAAG,IAAI,CAAQ;IAGxC,gBAAgB,wBAAoC;IAGpD,gBAAgB,EAAE,YAAY,GAAG,IAAI,CAAQ;IAG7C,IAAI,KAAM;IAGV,IAAI,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG3B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGlC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAI/B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG3C,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG3C,cAAc,SAAK;IAGnB,eAAe,SAAK;IAGpB,WAAW,SAAK;IAGhB,YAAY,SAAK;IAGjB,gBAAgB,SAAK;IAGrB,gBAAgB,SAAK;IAGrB,mBAAmB,SAAK;IAGxB,WAAW,EAAE,eAAe,EAAE,CAAM;IAGpC,MAAM,EAAE,IAAI,GAAG,IAAI,CAAQ;IAG3B,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAQ;IAG9B,WAAW,UAAQ;IAGnB,kBAAkB,UAAS;IAE3B,eAAe;IAUf,aAAa,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IAI9C,aAAa,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;CAmDjD;AAED,qBAAa,cAAe,SAAQ,WAAW;IAE3C,EAAE,EAAE,MAAM,CAAC;IAGX,OAAO,EAAE,MAAM,CAAM;IAGrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG/B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGhC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGhC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAW/B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG/B,MAAM,EAAE,UAAU,GAAG,IAAI,CAAQ;IAGjC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG7B,YAAY,EAAE,WAAW,EAAE,CAAM;IAGjC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGvC,SAAS,SAAK;IAGd,SAAS,EAAE,YAAY,GAAG,IAAI,CAAQ;IAGtC,iBAAiB,EAAE,YAAY,GAAG,IAAI,CAAQ;IAG9C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGtC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGtC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGzC,aAAa,EAAE,IAAI,GAAG,IAAI,CAAQ;IAGlC,YAAY,EAAE,IAAI,GAAG,IAAI,CAAQ;IAGjC,MAAM,EAAE,IAAI,GAAG,IAAI,CAAQ;IAG3B,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,CAAc;IAE7B,IAAI,IAAI,kBAQP;IAED,sBAAsB;IAOtB,eAAe,CAAC,YAAY,EAAE;QAAE,IAAI,EAAE,oBAAoB,CAAC;QAAC,WAAW,EAAE,2BAA2B,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,QAAQ;IAStJ,YAAY;CAMf;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,YAAY,WAQ5D;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,sBAqBjD;AAED,qBAAa,YAAa,SAAQ,KAAK;IAEnC,gBAAgB,EAAE,cAAc,GAAG,IAAI,CAAQ;IAG/C,IAAI,EAAE,IAAI,GAAG,IAAI,CAAQ;IAGzB,YAAY,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAE7C,IAAI,eAAe,WAElB;IAED,IAAI,OAAO,WAEV;CACJ;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAE1C,UAAU,EAAE,cAAc,EAAE,CAAM;IAGlC,YAAY,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAE7C,IAAI,gBAAgB,mBAEnB;IAED,IAAI,eAAe,WAElB;IAED,IAAI,OAAO,WAEV;CACJ"}
|
package/dist/src/email/Email.js
CHANGED
|
@@ -26,6 +26,7 @@ var EmailRecipientFilterType;
|
|
|
26
26
|
EmailRecipientFilterType["MemberUnverified"] = "MemberUnverified";
|
|
27
27
|
EmailRecipientFilterType["Orders"] = "Orders";
|
|
28
28
|
EmailRecipientFilterType["ReceivableBalances"] = "ReceivableBalances";
|
|
29
|
+
EmailRecipientFilterType["Documents"] = "Documents";
|
|
29
30
|
})(EmailRecipientFilterType || (exports.EmailRecipientFilterType = EmailRecipientFilterType = {}));
|
|
30
31
|
function getExampleRecipient(type = null) {
|
|
31
32
|
return MemberWithRegistrationsBlob_js_1.MemberWithRegistrationsBlob.create({
|
|
@@ -92,7 +93,7 @@ class EmailRecipientFilter extends simple_encoding_1.AutoEncoder {
|
|
|
92
93
|
}
|
|
93
94
|
get canShowInMemberPortal() {
|
|
94
95
|
for (const filter of this.filters) {
|
|
95
|
-
if (filter.type === EmailRecipientFilterType.Members || filter.type === EmailRecipientFilterType.MemberParents || filter.type === EmailRecipientFilterType.MemberUnverified || filter.type === EmailRecipientFilterType.RegistrationMembers || filter.type === EmailRecipientFilterType.RegistrationParents || filter.type === EmailRecipientFilterType.RegistrationUnverified) {
|
|
96
|
+
if (filter.type === EmailRecipientFilterType.Members || filter.type === EmailRecipientFilterType.MemberParents || filter.type === EmailRecipientFilterType.MemberUnverified || filter.type === EmailRecipientFilterType.RegistrationMembers || filter.type === EmailRecipientFilterType.RegistrationParents || filter.type === EmailRecipientFilterType.RegistrationUnverified || filter.type === EmailRecipientFilterType.Documents) {
|
|
96
97
|
return true;
|
|
97
98
|
}
|
|
98
99
|
}
|