@tomei/finance 0.6.21 → 0.6.22
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/.commitlintrc.json +22 -22
- package/.eslintrc.js +72 -72
- package/.husky/commit-msg +4 -4
- package/.husky/pre-commit +4 -4
- package/.prettierrc +4 -4
- package/CONTRIBUTING.md +30 -30
- package/LICENSE +21 -21
- package/README.md +13 -13
- package/configs/config.js +336 -336
- package/dist/account/entities/account.entity.d.ts +26 -0
- package/dist/account/entities/account.entity.js +199 -0
- package/dist/account/entities/account.entity.js.map +1 -0
- package/dist/account/entities/fee-associated-object.entity.d.ts +6 -0
- package/dist/account/entities/fee-associated-object.entity.js +52 -0
- package/dist/account/entities/fee-associated-object.entity.js.map +1 -0
- package/dist/account/index.d.ts +6 -0
- package/dist/account/index.js +10 -0
- package/dist/account/index.js.map +1 -0
- package/dist/account/interfaces/account.repository.interface.d.ts +3 -0
- package/dist/account/interfaces/account.repository.interface.js +3 -0
- package/dist/account/interfaces/account.repository.interface.js.map +1 -0
- package/dist/account-system-entity/index.d.ts +2 -0
- package/dist/account-system-entity/index.js +6 -0
- package/dist/account-system-entity/index.js.map +1 -0
- package/dist/account-system-entity/post-history.entity.d.ts +11 -0
- package/dist/account-system-entity/post-history.entity.js +65 -0
- package/dist/account-system-entity/post-history.entity.js.map +1 -0
- package/dist/base/account-system.interface.d.ts +7 -0
- package/dist/base/account-system.interface.js +3 -0
- package/dist/base/account-system.interface.js.map +1 -0
- package/dist/base/address.base.abstract.d.ts +4 -0
- package/dist/base/address.base.abstract.js +10 -0
- package/dist/base/address.base.abstract.js.map +1 -0
- package/dist/base/base.address.d.ts +8 -0
- package/dist/base/base.address.js +15 -0
- package/dist/base/base.address.js.map +1 -0
- package/dist/base/base.object.d.ts +7 -0
- package/dist/base/base.object.js +14 -0
- package/dist/base/base.object.js.map +1 -0
- package/dist/base/base.owner.d.ts +23 -0
- package/dist/base/base.owner.js +34 -0
- package/dist/base/base.owner.js.map +1 -0
- package/dist/base/base.repository.abstract.d.ts +12 -0
- package/dist/base/base.repository.abstract.js +22 -0
- package/dist/base/base.repository.abstract.js.map +1 -0
- package/dist/base/base.repository.interface.d.ts +9 -0
- package/dist/base/base.repository.interface.js +3 -0
- package/dist/base/base.repository.interface.js.map +1 -0
- package/dist/base/index.d.ts +4 -0
- package/dist/base/index.js +10 -0
- package/dist/base/index.js.map +1 -0
- package/dist/base/object/base.object.abstract.d.ts +5 -0
- package/dist/base/object/base.object.abstract.js +7 -0
- package/dist/base/object/base.object.abstract.js.map +1 -0
- package/dist/base/object/base.object.d.ts +7 -0
- package/dist/base/object/base.object.js +14 -0
- package/dist/base/object/base.object.js.map +1 -0
- package/dist/base/object/object.interface.d.ts +4 -0
- package/dist/base/object/object.interface.js +3 -0
- package/dist/base/object/object.interface.js.map +1 -0
- package/dist/base/object.base.abstract.d.ts +5 -0
- package/dist/base/object.base.abstract.js +11 -0
- package/dist/base/object.base.abstract.js.map +1 -0
- package/dist/base/owner/base.owner.abstract.d.ts +20 -0
- package/dist/base/owner/base.owner.abstract.js +8 -0
- package/dist/base/owner/base.owner.abstract.js.map +1 -0
- package/dist/base/owner/base.owner.d.ts +22 -0
- package/dist/base/owner/base.owner.js +31 -0
- package/dist/base/owner/base.owner.js.map +1 -0
- package/dist/base/owner/owner.interface.d.ts +19 -0
- package/dist/base/owner/owner.interface.js +3 -0
- package/dist/base/owner/owner.interface.js.map +1 -0
- package/dist/base/person.base.abstract.d.ts +21 -0
- package/dist/base/person.base.abstract.js +17 -0
- package/dist/base/person.base.abstract.js.map +1 -0
- package/dist/base/repository/base.repository.abstract.d.ts +12 -0
- package/dist/base/repository/base.repository.abstract.js +22 -0
- package/dist/base/repository/base.repository.abstract.js.map +1 -0
- package/dist/base/repository/base.repository.interface.d.ts +9 -0
- package/dist/base/repository/base.repository.interface.js +3 -0
- package/dist/base/repository/base.repository.interface.js.map +1 -0
- package/dist/customer/customer.repository.d.ts +0 -0
- package/dist/customer/customer.repository.js +1 -0
- package/dist/customer/customer.repository.js.map +1 -0
- package/dist/customer/entities/customer.entity.d.ts +13 -0
- package/dist/customer/entities/customer.entity.js +111 -0
- package/dist/customer/entities/customer.entity.js.map +1 -0
- package/dist/customer/index.d.ts +7 -0
- package/dist/customer/index.js +10 -0
- package/dist/customer/index.js.map +1 -0
- package/dist/document/document.d.ts +1 -1
- package/dist/document/document.js +2 -2
- package/dist/document/document.js.map +1 -1
- package/dist/document/entities/document-item.entity.d.ts +27 -0
- package/dist/document/entities/document-item.entity.js +174 -0
- package/dist/document/entities/document-item.entity.js.map +1 -0
- package/dist/document/entities/document.entity.d.ts +22 -0
- package/dist/document/entities/document.entity.js +139 -0
- package/dist/document/entities/document.entity.js.map +1 -0
- package/dist/document/index.d.ts +11 -0
- package/dist/document/index.js +20 -0
- package/dist/document/index.js.map +1 -0
- package/dist/document/interfaces/document.repository.interface.d.ts +3 -0
- package/dist/document/interfaces/document.repository.interface.js +3 -0
- package/dist/document/interfaces/document.repository.interface.js.map +1 -0
- package/dist/enum/document-type.enum.d.ts +7 -0
- package/dist/enum/document-type.enum.js +12 -0
- package/dist/enum/document-type.enum.js.map +1 -0
- package/dist/enum/intuit-client.enum.d.ts +13 -0
- package/dist/enum/intuit-client.enum.js +19 -0
- package/dist/enum/intuit-client.enum.js.map +1 -0
- package/dist/finance-company/entities/finance-company.entity.d.ts +13 -0
- package/dist/finance-company/entities/finance-company.entity.js +113 -0
- package/dist/finance-company/entities/finance-company.entity.js.map +1 -0
- package/dist/finance-company/finance-company.entity.d.ts +13 -0
- package/dist/finance-company/finance-company.entity.js +66 -0
- package/dist/finance-company/finance-company.entity.js.map +1 -0
- package/dist/finance-company/index.d.ts +3 -0
- package/dist/finance-company/index.js +8 -0
- package/dist/finance-company/index.js.map +1 -0
- package/dist/finance-company/interfaces/finance-company-attr.interface.d.ts +10 -0
- package/dist/finance-company/interfaces/finance-company-attr.interface.js +3 -0
- package/dist/finance-company/interfaces/finance-company-attr.interface.js.map +1 -0
- package/dist/finance-company/interfaces/finance-company.repository.interface.d.ts +3 -0
- package/dist/finance-company/interfaces/finance-company.repository.interface.js +3 -0
- package/dist/finance-company/interfaces/finance-company.repository.interface.js.map +1 -0
- package/dist/interfaces/account-system-entity.interface.d.ts +7 -0
- package/dist/interfaces/account-system-entity.interface.js +3 -0
- package/dist/interfaces/account-system-entity.interface.js.map +1 -0
- package/dist/interfaces/customer.repository.interface.d.ts +3 -0
- package/dist/interfaces/customer.repository.interface.js +3 -0
- package/dist/interfaces/customer.repository.interface.js.map +1 -0
- package/dist/interfaces/finance-customer.repository.interface.d.ts +3 -0
- package/dist/interfaces/finance-customer.repository.interface.js +3 -0
- package/dist/interfaces/finance-customer.repository.interface.js.map +1 -0
- package/dist/interfaces/systemConfig.interface.d.ts +0 -0
- package/dist/interfaces/systemConfig.interface.js +1 -0
- package/dist/interfaces/systemConfig.interface.js.map +1 -0
- package/dist/intuit-client/client.d.ts +14 -0
- package/dist/intuit-client/client.js +44 -0
- package/dist/intuit-client/client.js.map +1 -0
- package/dist/journal-entry/entities/journal-entry.entity.d.ts +16 -0
- package/dist/journal-entry/entities/journal-entry.entity.js +129 -0
- package/dist/journal-entry/entities/journal-entry.entity.js.map +1 -0
- package/dist/journal-entry/index.d.ts +6 -0
- package/dist/journal-entry/index.js +10 -0
- package/dist/journal-entry/index.js.map +1 -0
- package/dist/journal-entry/interfaces/journal-entry.repository.interface.d.ts +10 -0
- package/dist/journal-entry/interfaces/journal-entry.repository.interface.js +3 -0
- package/dist/journal-entry/interfaces/journal-entry.repository.interface.js.map +1 -0
- package/dist/ledger-transaction/entities/ledger-transaction.entity.d.ts +19 -0
- package/dist/ledger-transaction/entities/ledger-transaction.entity.js +157 -0
- package/dist/ledger-transaction/entities/ledger-transaction.entity.js.map +1 -0
- package/dist/ledger-transaction/index.d.ts +6 -0
- package/dist/ledger-transaction/index.js +10 -0
- package/dist/ledger-transaction/index.js.map +1 -0
- package/dist/payment/entities/payment-item.entity.d.ts +10 -0
- package/dist/payment/entities/payment-item.entity.js +62 -0
- package/dist/payment/entities/payment-item.entity.js.map +1 -0
- package/dist/payment/entities/payment.entity.d.ts +25 -0
- package/dist/payment/entities/payment.entity.js +152 -0
- package/dist/payment/entities/payment.entity.js.map +1 -0
- package/dist/payment/index.d.ts +10 -0
- package/dist/payment/index.js +18 -0
- package/dist/payment/index.js.map +1 -0
- package/dist/payment/interfaces/payment-item-attr.interface.d.ts +8 -0
- package/dist/payment/interfaces/payment-item-attr.interface.js +7 -0
- package/dist/payment/interfaces/payment-item-attr.interface.js.map +1 -0
- package/dist/payment/interfaces/payment-item.repository.interface.d.ts +3 -0
- package/dist/payment/interfaces/payment-item.repository.interface.js +3 -0
- package/dist/payment/interfaces/payment-item.repository.interface.js.map +1 -0
- package/dist/payment/interfaces/payment.repository.interface.d.ts +3 -0
- package/dist/payment/interfaces/payment.repository.interface.js +3 -0
- package/dist/payment/interfaces/payment.repository.interface.js.map +1 -0
- package/dist/payment/payment-item.repository.d.ts +5 -0
- package/dist/payment/payment-item.repository.js +12 -0
- package/dist/payment/payment-item.repository.js.map +1 -0
- package/dist/payment-item/interfaces/payment-item.repository.interface.d.ts +3 -0
- package/dist/payment-item/interfaces/payment-item.repository.interface.js +3 -0
- package/dist/payment-item/interfaces/payment-item.repository.interface.js.map +1 -0
- package/dist/payment-item/payment-item.js +4 -4
- package/dist/quickbook-client/client.d.ts +39 -0
- package/dist/quickbook-client/client.js +205 -0
- package/dist/quickbook-client/client.js.map +1 -0
- package/dist/quickbook-client/constant.d.ts +1 -0
- package/dist/quickbook-client/constant.js +5 -0
- package/dist/quickbook-client/constant.js.map +1 -0
- package/dist/quickbook-client/index.d.ts +5 -0
- package/dist/quickbook-client/index.js +6 -0
- package/dist/quickbook-client/index.js.map +1 -0
- package/dist/quickbook-client/interfaces/quickbook-client-call-options.interface.d.ts +6 -0
- package/dist/quickbook-client/interfaces/quickbook-client-call-options.interface.js +3 -0
- package/dist/quickbook-client/interfaces/quickbook-client-call-options.interface.js.map +1 -0
- package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.d.ts +9 -0
- package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.js +3 -0
- package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.js.map +1 -0
- package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.d.ts +7 -0
- package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.js +3 -0
- package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.js.map +1 -0
- package/dist/quickbook-client/interfaces/quickbook-client-options.interface.d.ts +8 -0
- package/dist/quickbook-client/interfaces/quickbook-client-options.interface.js +3 -0
- package/dist/quickbook-client/interfaces/quickbook-client-options.interface.js.map +1 -0
- package/dist/quickbook-client/quickbook-client.module-definition.d.ts +2 -0
- package/dist/quickbook-client/quickbook-client.module-definition.js +9 -0
- package/dist/quickbook-client/quickbook-client.module-definition.js.map +1 -0
- package/dist/quickbook-client/quickbook-client.module.d.ts +6 -0
- package/dist/quickbook-client/quickbook-client.module.js +34 -0
- package/dist/quickbook-client/quickbook-client.module.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/invoice-template/assets/css/style.css.map +12 -12
- package/invoice-template/assets/css/style.min.css +1 -1
- package/invoice-template/assets/img/arrow_bg.svg +11 -11
- package/invoice-template/assets/img/coffy_shop_img.svg +18 -18
- package/invoice-template/assets/img/logo_accent.svg +3 -3
- package/invoice-template/assets/img/logo_white.svg +4 -4
- package/invoice-template/assets/img/sign.svg +12 -12
- package/invoice-template/assets/img/tomei-logo.svg +9 -9
- package/invoice-template/assets/js/html2canvas.min.js +10379 -10379
- package/invoice-template/assets/js/jquery.min.js +1 -1
- package/invoice-template/assets/sass/common/_color_variable.scss +12 -12
- package/invoice-template/assets/sass/common/_typography.scss +178 -178
- package/invoice-template/assets/sass/style.scss +12 -12
- package/migrations/finance-account-migration.js +97 -97
- package/migrations/finance-company-migration.js +29 -29
- package/migrations/finance-customer-migration.js +51 -51
- package/migrations/finance-document-item-migration.js +111 -111
- package/migrations/finance-document-migration.js +116 -116
- package/migrations/finance-payment-item-migration.js +52 -52
- package/migrations/finance-payment-method-migration.js +31 -31
- package/migrations/finance-payment-method-type-migration.js +55 -55
- package/migrations/finance-payment-migration.js +96 -96
- package/migrations/finance-post-history-migration.js +45 -45
- package/nest-cli.json +19 -19
- package/package.json +82 -82
- package/src/account/account.repository.ts +11 -11
- package/src/account/account.ts +271 -271
- package/src/account/interfaces/account-attr.interface.ts +31 -31
- package/src/account-system-entity/account-system-entity.ts +65 -65
- package/src/account-system-entity/post-history.repository.ts +11 -11
- package/src/config.ts +382 -382
- package/src/customer/customer.ts +299 -299
- package/src/customer/finance-customer.repository.ts +13 -13
- package/src/customer/interfaces/customer.repository.interface.ts +3 -3
- package/src/customer/interfaces/finance-customer-attr.interface.ts +10 -10
- package/src/customer/interfaces/finance-customer.repository.interface.ts +4 -4
- package/src/database.ts +15 -15
- package/src/document/document-item.repository.ts +11 -11
- package/src/document/document.repository.ts +11 -11
- package/src/document/document.ts +2 -2
- package/src/document/interfaces/document-attr.interface.ts +28 -28
- package/src/document/interfaces/document-item-attr.interface.ts +22 -22
- package/src/document/interfaces/document-item.repository.interface.ts +4 -4
- package/src/enum/doc-type.enum.ts +8 -8
- package/src/enum/index.ts +17 -17
- package/src/enum/payment-method.enum.ts +3 -3
- package/src/enum/payment-type.enum.ts +4 -4
- package/src/finance-company/finance-company.repository.ts +11 -11
- package/src/finance-company/finance-company.ts +1778 -1778
- package/src/helpers/typeof.ts +29 -29
- package/src/index.ts +32 -32
- package/src/interfaces/account-system.interface.ts +20 -20
- package/src/interfaces/index.ts +3 -3
- package/src/models/account.entity.ts +206 -206
- package/src/models/customer.entity.ts +93 -93
- package/src/models/document-item.entity.ts +143 -143
- package/src/models/document.entity.ts +211 -211
- package/src/models/finance-company.entity.ts +25 -25
- package/src/models/journal-entry.entity.ts +110 -110
- package/src/models/ledger-transaction.entity.ts +148 -148
- package/src/models/payment-item.entity.ts +60 -60
- package/src/models/payment-method-type.entity.ts +70 -70
- package/src/models/payment-method.entity.ts +51 -51
- package/src/models/payment.entity.ts +161 -161
- package/src/models/post-history.entity.ts +41 -41
- package/src/payment/interfaces/payment-attr.interface.ts +23 -23
- package/src/payment/interfaces/payment-params.interface.ts +8 -8
- package/src/payment/payment.repository.ts +11 -11
- package/src/payment/payment.ts +217 -217
- package/src/payment-item/interfaces/payment-item-attr.interface.ts +10 -10
- package/src/payment-item/payment-item.repository.ts +11 -11
- package/src/payment-item/payment-item.ts +128 -128
- package/src/payment-method/payment-method.repository.ts +11 -11
- package/src/payment-method-type/payment-method-type.repository.ts +11 -11
- package/src/test-document.ts +25 -25
- package/tsconfig.build.json +4 -4
- package/tsconfig.json +22 -22
- package/tslint.json +18 -18
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QuickBookClient = void 0;
|
|
4
|
+
const OAuthClient = require("intuit-oauth");
|
|
5
|
+
const config_1 = require("../config");
|
|
6
|
+
class QuickBookClient {
|
|
7
|
+
constructor(SysCode, scopes) {
|
|
8
|
+
const config = (0, config_1.getConfig)();
|
|
9
|
+
const clientConfig = {
|
|
10
|
+
apiUrl: config.accountingSystem.quickbooks.API_Url,
|
|
11
|
+
clientId: config.systemConfig[SysCode].API_Key,
|
|
12
|
+
clientSecret: config.systemConfig[SysCode].API_Secret,
|
|
13
|
+
environment: config.environment === 'production' ? 'production' : 'sandbox',
|
|
14
|
+
redirectUri: config.systemConfig[SysCode].redirectUrl,
|
|
15
|
+
logging: config.environment === 'production' ? false : true,
|
|
16
|
+
};
|
|
17
|
+
this.client = new OAuthClient(clientConfig);
|
|
18
|
+
this.apiUrl = config.accountingSystem.quickbooks.API_Url;
|
|
19
|
+
this.authUrl = this.connect(scopes);
|
|
20
|
+
}
|
|
21
|
+
async createAccount(payload) {
|
|
22
|
+
try {
|
|
23
|
+
const companyId = this.getCompanyId();
|
|
24
|
+
const response = await this.callApi({
|
|
25
|
+
endpoint: `/v3/company/${companyId}/account`,
|
|
26
|
+
method: 'POST',
|
|
27
|
+
headers: {
|
|
28
|
+
'Content-Type': 'application/json',
|
|
29
|
+
},
|
|
30
|
+
body: JSON.stringify(payload),
|
|
31
|
+
});
|
|
32
|
+
return response.json.Account.id;
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
throw error;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
async createCustomer(payload) {
|
|
39
|
+
try {
|
|
40
|
+
const requestBody = {
|
|
41
|
+
PrimaryEmailAddr: {
|
|
42
|
+
Address: payload.Email,
|
|
43
|
+
},
|
|
44
|
+
DisplayName: payload.FullName,
|
|
45
|
+
GivenName: payload.FullName,
|
|
46
|
+
FullyQualifiedName: payload.FullName,
|
|
47
|
+
PrimaryPhone: {
|
|
48
|
+
FreeFormNumber: payload.ContractNo,
|
|
49
|
+
},
|
|
50
|
+
BillAddr: {
|
|
51
|
+
CountrySubDivisionCode: '',
|
|
52
|
+
City: payload.Address.City,
|
|
53
|
+
PostalCode: payload.Address.PostalCode,
|
|
54
|
+
Line1: payload.Address.Line1,
|
|
55
|
+
Country: payload.Address.Country,
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
const companyId = this.getCompanyId();
|
|
59
|
+
const response = await this.callApi({
|
|
60
|
+
endpoint: `/v3/company/${companyId}/customer?minorversion=65`,
|
|
61
|
+
method: 'POST',
|
|
62
|
+
headers: {
|
|
63
|
+
'Content-Type': 'application/json',
|
|
64
|
+
},
|
|
65
|
+
body: JSON.stringify(requestBody),
|
|
66
|
+
});
|
|
67
|
+
return response.json.Customer.id;
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
throw error;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
async makePayment(customer, paymentInfo) {
|
|
74
|
+
try {
|
|
75
|
+
const requestBody = {
|
|
76
|
+
TotalAmt: paymentInfo.getAmount(),
|
|
77
|
+
sparse: false,
|
|
78
|
+
DepositToAccountRef: {
|
|
79
|
+
value: await paymentInfo.getDepositAccountNo(),
|
|
80
|
+
},
|
|
81
|
+
ARAccountRef: {
|
|
82
|
+
value: await paymentInfo.getReceivableAccountNo(),
|
|
83
|
+
},
|
|
84
|
+
CustomerRef: {
|
|
85
|
+
value: customer.getCustomerId(),
|
|
86
|
+
name: customer.FullName,
|
|
87
|
+
},
|
|
88
|
+
Line: [],
|
|
89
|
+
};
|
|
90
|
+
paymentInfo.getPaymentItems().forEach((item) => {
|
|
91
|
+
requestBody.Line.push({
|
|
92
|
+
Amount: item.Amount,
|
|
93
|
+
LinkedTxn: [
|
|
94
|
+
{
|
|
95
|
+
TxnId: item.Id,
|
|
96
|
+
TxnType: item.Type,
|
|
97
|
+
},
|
|
98
|
+
],
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
const companyId = this.getCompanyId();
|
|
102
|
+
const response = await this.callApi({
|
|
103
|
+
endpoint: `/v3/company/${companyId}/payment?minorversion=65`,
|
|
104
|
+
method: 'POST',
|
|
105
|
+
headers: {
|
|
106
|
+
'Content-Type': 'application/json',
|
|
107
|
+
},
|
|
108
|
+
body: JSON.stringify(requestBody),
|
|
109
|
+
});
|
|
110
|
+
return response.json.Payment.Id;
|
|
111
|
+
}
|
|
112
|
+
catch (error) { }
|
|
113
|
+
}
|
|
114
|
+
collectPayments(customer, paymentInfo) {
|
|
115
|
+
console.log(customer, paymentInfo);
|
|
116
|
+
throw new Error('Method not implemented.');
|
|
117
|
+
}
|
|
118
|
+
async createInvoice() {
|
|
119
|
+
throw new Error('Method not implemented.');
|
|
120
|
+
}
|
|
121
|
+
async createDebitNote() {
|
|
122
|
+
throw new Error('Method not implemented.');
|
|
123
|
+
}
|
|
124
|
+
async createCreditNote() {
|
|
125
|
+
throw new Error('Method not implemented.');
|
|
126
|
+
}
|
|
127
|
+
async postTransaction() {
|
|
128
|
+
throw new Error('Method not implemented.');
|
|
129
|
+
}
|
|
130
|
+
connect(scopes) {
|
|
131
|
+
try {
|
|
132
|
+
const authUrl = this.client.authorizeUri({
|
|
133
|
+
scope: scopes,
|
|
134
|
+
state: 'testState',
|
|
135
|
+
});
|
|
136
|
+
return authUrl;
|
|
137
|
+
}
|
|
138
|
+
catch (error) {
|
|
139
|
+
throw error;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
async authCallback(url) {
|
|
143
|
+
try {
|
|
144
|
+
await this.client.createToken(url);
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
throw error;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
isTokenValid() {
|
|
151
|
+
try {
|
|
152
|
+
return this.client.isAccessTokenValid();
|
|
153
|
+
}
|
|
154
|
+
catch (error) {
|
|
155
|
+
throw error;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
async refreshAccessToken() {
|
|
159
|
+
try {
|
|
160
|
+
await this.client.refresh();
|
|
161
|
+
}
|
|
162
|
+
catch (error) {
|
|
163
|
+
throw error;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
async logout() {
|
|
167
|
+
try {
|
|
168
|
+
await this.client.revokeToken();
|
|
169
|
+
}
|
|
170
|
+
catch (error) {
|
|
171
|
+
throw error;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
get token() {
|
|
175
|
+
return this.client.token.getToken();
|
|
176
|
+
}
|
|
177
|
+
getCompanyId() {
|
|
178
|
+
return this.client.getToken().realmId;
|
|
179
|
+
}
|
|
180
|
+
async validateAndRefreshToken() {
|
|
181
|
+
if (!this.client.isAccessTokenValid()) {
|
|
182
|
+
await this.client.refresh();
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
async callApi(options) {
|
|
186
|
+
try {
|
|
187
|
+
const headers = {
|
|
188
|
+
'Content-Type': 'application/json',
|
|
189
|
+
};
|
|
190
|
+
const response = this.client.makeApiCall({
|
|
191
|
+
url: this.apiUrl + options.endpoint,
|
|
192
|
+
method: options.method,
|
|
193
|
+
headers: options.headers
|
|
194
|
+
? Object.assign(Object.assign({}, headers), options.headers) : headers,
|
|
195
|
+
body: options.body ? options.body : '',
|
|
196
|
+
});
|
|
197
|
+
return response;
|
|
198
|
+
}
|
|
199
|
+
catch (error) {
|
|
200
|
+
throw error;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
exports.QuickBookClient = QuickBookClient;
|
|
205
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/quickbook-client/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const QUICKBOOK_CLIENT = "quickbook-client";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constant.js","sourceRoot":"","sources":["../../src/quickbook-client/constant.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { QuickBookClient } from './client';
|
|
2
|
+
import { IQuickBookCreateAccountOptions } from './interfaces/quickbook-client-create-account-options.interface';
|
|
3
|
+
import { IQuickBookClientOptions } from './interfaces/quickbook-client-options.interface';
|
|
4
|
+
import { IQuickBookCreateCustomerOptions } from './interfaces/quickbook-client-create-customer-options.interface';
|
|
5
|
+
export { QuickBookClient, IQuickBookCreateAccountOptions, IQuickBookClientOptions, IQuickBookCreateCustomerOptions, };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QuickBookClient = void 0;
|
|
4
|
+
const client_1 = require("./client");
|
|
5
|
+
Object.defineProperty(exports, "QuickBookClient", { enumerable: true, get: function () { return client_1.QuickBookClient; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/quickbook-client/index.ts"],"names":[],"mappings":";;;AAAA,qCAA2C;AAKzC,gGALO,wBAAe,OAKP"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quickbook-client-call-options.interface.js","sourceRoot":"","sources":["../../../src/quickbook-client/interfaces/quickbook-client-call-options.interface.ts"],"names":[],"mappings":""}
|
package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quickbook-client-create-account-options.interface.js","sourceRoot":"","sources":["../../../src/quickbook-client/interfaces/quickbook-client-create-account-options.interface.ts"],"names":[],"mappings":""}
|
package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quickbook-client-create-customer-options.interface.js","sourceRoot":"","sources":["../../../src/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quickbook-client-options.interface.js","sourceRoot":"","sources":["../../../src/quickbook-client/interfaces/quickbook-client-options.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { IQuickBookClientModuleOptions } from './interfaces/quickbook-client-options.interface';
|
|
2
|
+
export declare const ConfigurableModuleClass: import("@nestjs/common").ConfigurableModuleCls<IQuickBookClientModuleOptions, "forRoot", "create", {}>, MODULE_OPTIONS_TOKEN: string | symbol;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.MODULE_OPTIONS_TOKEN = exports.ConfigurableModuleClass = void 0;
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
_a = new common_1.ConfigurableModuleBuilder()
|
|
7
|
+
.setClassMethodName('forRoot')
|
|
8
|
+
.build(), exports.ConfigurableModuleClass = _a.ConfigurableModuleClass, exports.MODULE_OPTIONS_TOKEN = _a.MODULE_OPTIONS_TOKEN;
|
|
9
|
+
//# sourceMappingURL=quickbook-client.module-definition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quickbook-client.module-definition.js","sourceRoot":"","sources":["../../src/quickbook-client/quickbook-client.module-definition.ts"],"names":[],"mappings":";;;;AAAA,2CAA2D;AAG9C,KACX,IAAI,kCAAyB,EAAiC;KAC3D,kBAAkB,CAAC,SAAS,CAAC;KAC7B,KAAK,EAAE,EAHG,+BAAuB,+BAAE,4BAAoB,2BAG/C"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DynamicModule } from '@nestjs/common';
|
|
2
|
+
import { IQuickBookClientModuleOptions } from './interfaces/quickbook-client-options.interface';
|
|
3
|
+
import { ConfigurableModuleClass } from './quickbook-client.module-definition';
|
|
4
|
+
export declare class QuickBookClientModule extends ConfigurableModuleClass {
|
|
5
|
+
static forRoot(options: IQuickBookClientModuleOptions): DynamicModule;
|
|
6
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var QuickBookClientModule_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.QuickBookClientModule = void 0;
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const client_1 = require("./client");
|
|
13
|
+
const constant_1 = require("./constant");
|
|
14
|
+
const quickbook_client_module_definition_1 = require("./quickbook-client.module-definition");
|
|
15
|
+
let QuickBookClientModule = QuickBookClientModule_1 = class QuickBookClientModule extends quickbook_client_module_definition_1.ConfigurableModuleClass {
|
|
16
|
+
static forRoot(options) {
|
|
17
|
+
const client = new client_1.QuickBookClient(options);
|
|
18
|
+
const QuickBookClientProvider = {
|
|
19
|
+
provide: constant_1.QUICKBOOK_CLIENT,
|
|
20
|
+
useValue: client,
|
|
21
|
+
};
|
|
22
|
+
return {
|
|
23
|
+
module: QuickBookClientModule_1,
|
|
24
|
+
providers: [QuickBookClientProvider],
|
|
25
|
+
exports: [QuickBookClientProvider],
|
|
26
|
+
global: true,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
QuickBookClientModule = QuickBookClientModule_1 = __decorate([
|
|
31
|
+
(0, common_1.Module)({})
|
|
32
|
+
], QuickBookClientModule);
|
|
33
|
+
exports.QuickBookClientModule = QuickBookClientModule;
|
|
34
|
+
//# sourceMappingURL=quickbook-client.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quickbook-client.module.js","sourceRoot":"","sources":["../../src/quickbook-client/quickbook-client.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAiE;AACjE,qCAA2C;AAC3C,yCAA8C;AAE9C,6FAA+E;AAGxE,IAAM,qBAAqB,6BAA3B,MAAM,qBAAsB,SAAQ,4DAAuB;IAChE,MAAM,CAAC,OAAO,CAAC,OAAsC;QACnD,MAAM,MAAM,GAAG,IAAI,wBAAe,CAAC,OAAO,CAAC,CAAC;QAE5C,MAAM,uBAAuB,GAAa;YACxC,OAAO,EAAE,2BAAgB;YACzB,QAAQ,EAAE,MAAM;SACjB,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,uBAAqB;YAC7B,SAAS,EAAE,CAAC,uBAAuB,CAAC;YACpC,OAAO,EAAE,CAAC,uBAAuB,CAAC;YAClC,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;CACF,CAAA;AAhBY,qBAAqB;IADjC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,qBAAqB,CAgBjC;AAhBY,sDAAqB"}
|