@tomei/finance 0.6.21 → 0.6.23

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 (290) hide show
  1. package/.commitlintrc.json +22 -22
  2. package/.eslintrc.js +72 -72
  3. package/.husky/commit-msg +4 -4
  4. package/.husky/pre-commit +4 -4
  5. package/.prettierrc +4 -4
  6. package/CONTRIBUTING.md +30 -30
  7. package/LICENSE +21 -21
  8. package/README.md +13 -13
  9. package/configs/config.js +336 -336
  10. package/dist/account/entities/account.entity.d.ts +26 -0
  11. package/dist/account/entities/account.entity.js +199 -0
  12. package/dist/account/entities/account.entity.js.map +1 -0
  13. package/dist/account/entities/fee-associated-object.entity.d.ts +6 -0
  14. package/dist/account/entities/fee-associated-object.entity.js +52 -0
  15. package/dist/account/entities/fee-associated-object.entity.js.map +1 -0
  16. package/dist/account/index.d.ts +6 -0
  17. package/dist/account/index.js +10 -0
  18. package/dist/account/index.js.map +1 -0
  19. package/dist/account/interfaces/account.repository.interface.d.ts +3 -0
  20. package/dist/account/interfaces/account.repository.interface.js +3 -0
  21. package/dist/account/interfaces/account.repository.interface.js.map +1 -0
  22. package/dist/account-system-entity/index.d.ts +2 -0
  23. package/dist/account-system-entity/index.js +6 -0
  24. package/dist/account-system-entity/index.js.map +1 -0
  25. package/dist/account-system-entity/post-history.entity.d.ts +11 -0
  26. package/dist/account-system-entity/post-history.entity.js +65 -0
  27. package/dist/account-system-entity/post-history.entity.js.map +1 -0
  28. package/dist/base/account-system.interface.d.ts +7 -0
  29. package/dist/base/account-system.interface.js +3 -0
  30. package/dist/base/account-system.interface.js.map +1 -0
  31. package/dist/base/address.base.abstract.d.ts +4 -0
  32. package/dist/base/address.base.abstract.js +10 -0
  33. package/dist/base/address.base.abstract.js.map +1 -0
  34. package/dist/base/base.address.d.ts +8 -0
  35. package/dist/base/base.address.js +15 -0
  36. package/dist/base/base.address.js.map +1 -0
  37. package/dist/base/base.object.d.ts +7 -0
  38. package/dist/base/base.object.js +14 -0
  39. package/dist/base/base.object.js.map +1 -0
  40. package/dist/base/base.owner.d.ts +23 -0
  41. package/dist/base/base.owner.js +34 -0
  42. package/dist/base/base.owner.js.map +1 -0
  43. package/dist/base/base.repository.abstract.d.ts +12 -0
  44. package/dist/base/base.repository.abstract.js +22 -0
  45. package/dist/base/base.repository.abstract.js.map +1 -0
  46. package/dist/base/base.repository.interface.d.ts +9 -0
  47. package/dist/base/base.repository.interface.js +3 -0
  48. package/dist/base/base.repository.interface.js.map +1 -0
  49. package/dist/base/index.d.ts +4 -0
  50. package/dist/base/index.js +10 -0
  51. package/dist/base/index.js.map +1 -0
  52. package/dist/base/object/base.object.abstract.d.ts +5 -0
  53. package/dist/base/object/base.object.abstract.js +7 -0
  54. package/dist/base/object/base.object.abstract.js.map +1 -0
  55. package/dist/base/object/base.object.d.ts +7 -0
  56. package/dist/base/object/base.object.js +14 -0
  57. package/dist/base/object/base.object.js.map +1 -0
  58. package/dist/base/object/object.interface.d.ts +4 -0
  59. package/dist/base/object/object.interface.js +3 -0
  60. package/dist/base/object/object.interface.js.map +1 -0
  61. package/dist/base/object.base.abstract.d.ts +5 -0
  62. package/dist/base/object.base.abstract.js +11 -0
  63. package/dist/base/object.base.abstract.js.map +1 -0
  64. package/dist/base/owner/base.owner.abstract.d.ts +20 -0
  65. package/dist/base/owner/base.owner.abstract.js +8 -0
  66. package/dist/base/owner/base.owner.abstract.js.map +1 -0
  67. package/dist/base/owner/base.owner.d.ts +22 -0
  68. package/dist/base/owner/base.owner.js +31 -0
  69. package/dist/base/owner/base.owner.js.map +1 -0
  70. package/dist/base/owner/owner.interface.d.ts +19 -0
  71. package/dist/base/owner/owner.interface.js +3 -0
  72. package/dist/base/owner/owner.interface.js.map +1 -0
  73. package/dist/base/person.base.abstract.d.ts +21 -0
  74. package/dist/base/person.base.abstract.js +17 -0
  75. package/dist/base/person.base.abstract.js.map +1 -0
  76. package/dist/base/repository/base.repository.abstract.d.ts +12 -0
  77. package/dist/base/repository/base.repository.abstract.js +22 -0
  78. package/dist/base/repository/base.repository.abstract.js.map +1 -0
  79. package/dist/base/repository/base.repository.interface.d.ts +9 -0
  80. package/dist/base/repository/base.repository.interface.js +3 -0
  81. package/dist/base/repository/base.repository.interface.js.map +1 -0
  82. package/dist/customer/customer.repository.d.ts +0 -0
  83. package/dist/customer/customer.repository.js +1 -0
  84. package/dist/customer/customer.repository.js.map +1 -0
  85. package/dist/customer/entities/customer.entity.d.ts +13 -0
  86. package/dist/customer/entities/customer.entity.js +111 -0
  87. package/dist/customer/entities/customer.entity.js.map +1 -0
  88. package/dist/customer/index.d.ts +7 -0
  89. package/dist/customer/index.js +10 -0
  90. package/dist/customer/index.js.map +1 -0
  91. package/dist/document/document.d.ts +1 -1
  92. package/dist/document/document.js +2 -2
  93. package/dist/document/document.js.map +1 -1
  94. package/dist/document/entities/document-item.entity.d.ts +27 -0
  95. package/dist/document/entities/document-item.entity.js +174 -0
  96. package/dist/document/entities/document-item.entity.js.map +1 -0
  97. package/dist/document/entities/document.entity.d.ts +22 -0
  98. package/dist/document/entities/document.entity.js +139 -0
  99. package/dist/document/entities/document.entity.js.map +1 -0
  100. package/dist/document/index.d.ts +11 -0
  101. package/dist/document/index.js +20 -0
  102. package/dist/document/index.js.map +1 -0
  103. package/dist/document/interfaces/document.repository.interface.d.ts +3 -0
  104. package/dist/document/interfaces/document.repository.interface.js +3 -0
  105. package/dist/document/interfaces/document.repository.interface.js.map +1 -0
  106. package/dist/enum/document-type.enum.d.ts +7 -0
  107. package/dist/enum/document-type.enum.js +12 -0
  108. package/dist/enum/document-type.enum.js.map +1 -0
  109. package/dist/enum/intuit-client.enum.d.ts +13 -0
  110. package/dist/enum/intuit-client.enum.js +19 -0
  111. package/dist/enum/intuit-client.enum.js.map +1 -0
  112. package/dist/finance-company/entities/finance-company.entity.d.ts +13 -0
  113. package/dist/finance-company/entities/finance-company.entity.js +113 -0
  114. package/dist/finance-company/entities/finance-company.entity.js.map +1 -0
  115. package/dist/finance-company/finance-company.d.ts +5 -0
  116. package/dist/finance-company/finance-company.entity.d.ts +13 -0
  117. package/dist/finance-company/finance-company.entity.js +66 -0
  118. package/dist/finance-company/finance-company.entity.js.map +1 -0
  119. package/dist/finance-company/finance-company.js +124 -0
  120. package/dist/finance-company/finance-company.js.map +1 -1
  121. package/dist/finance-company/index.d.ts +3 -0
  122. package/dist/finance-company/index.js +8 -0
  123. package/dist/finance-company/index.js.map +1 -0
  124. package/dist/finance-company/interfaces/finance-company-attr.interface.d.ts +10 -0
  125. package/dist/finance-company/interfaces/finance-company-attr.interface.js +3 -0
  126. package/dist/finance-company/interfaces/finance-company-attr.interface.js.map +1 -0
  127. package/dist/finance-company/interfaces/finance-company.repository.interface.d.ts +3 -0
  128. package/dist/finance-company/interfaces/finance-company.repository.interface.js +3 -0
  129. package/dist/finance-company/interfaces/finance-company.repository.interface.js.map +1 -0
  130. package/dist/interfaces/account-system-entity.interface.d.ts +7 -0
  131. package/dist/interfaces/account-system-entity.interface.js +3 -0
  132. package/dist/interfaces/account-system-entity.interface.js.map +1 -0
  133. package/dist/interfaces/customer.repository.interface.d.ts +3 -0
  134. package/dist/interfaces/customer.repository.interface.js +3 -0
  135. package/dist/interfaces/customer.repository.interface.js.map +1 -0
  136. package/dist/interfaces/finance-customer.repository.interface.d.ts +3 -0
  137. package/dist/interfaces/finance-customer.repository.interface.js +3 -0
  138. package/dist/interfaces/finance-customer.repository.interface.js.map +1 -0
  139. package/dist/interfaces/systemConfig.interface.d.ts +0 -0
  140. package/dist/interfaces/systemConfig.interface.js +1 -0
  141. package/dist/interfaces/systemConfig.interface.js.map +1 -0
  142. package/dist/intuit-client/client.d.ts +14 -0
  143. package/dist/intuit-client/client.js +44 -0
  144. package/dist/intuit-client/client.js.map +1 -0
  145. package/dist/journal-entry/entities/journal-entry.entity.d.ts +16 -0
  146. package/dist/journal-entry/entities/journal-entry.entity.js +129 -0
  147. package/dist/journal-entry/entities/journal-entry.entity.js.map +1 -0
  148. package/dist/journal-entry/index.d.ts +6 -0
  149. package/dist/journal-entry/index.js +10 -0
  150. package/dist/journal-entry/index.js.map +1 -0
  151. package/dist/journal-entry/interfaces/journal-entry.repository.interface.d.ts +10 -0
  152. package/dist/journal-entry/interfaces/journal-entry.repository.interface.js +3 -0
  153. package/dist/journal-entry/interfaces/journal-entry.repository.interface.js.map +1 -0
  154. package/dist/ledger-transaction/entities/ledger-transaction.entity.d.ts +19 -0
  155. package/dist/ledger-transaction/entities/ledger-transaction.entity.js +157 -0
  156. package/dist/ledger-transaction/entities/ledger-transaction.entity.js.map +1 -0
  157. package/dist/ledger-transaction/index.d.ts +6 -0
  158. package/dist/ledger-transaction/index.js +10 -0
  159. package/dist/ledger-transaction/index.js.map +1 -0
  160. package/dist/payment/entities/payment-item.entity.d.ts +10 -0
  161. package/dist/payment/entities/payment-item.entity.js +62 -0
  162. package/dist/payment/entities/payment-item.entity.js.map +1 -0
  163. package/dist/payment/entities/payment.entity.d.ts +25 -0
  164. package/dist/payment/entities/payment.entity.js +152 -0
  165. package/dist/payment/entities/payment.entity.js.map +1 -0
  166. package/dist/payment/index.d.ts +10 -0
  167. package/dist/payment/index.js +18 -0
  168. package/dist/payment/index.js.map +1 -0
  169. package/dist/payment/interfaces/payment-item-attr.interface.d.ts +8 -0
  170. package/dist/payment/interfaces/payment-item-attr.interface.js +7 -0
  171. package/dist/payment/interfaces/payment-item-attr.interface.js.map +1 -0
  172. package/dist/payment/interfaces/payment-item.repository.interface.d.ts +3 -0
  173. package/dist/payment/interfaces/payment-item.repository.interface.js +3 -0
  174. package/dist/payment/interfaces/payment-item.repository.interface.js.map +1 -0
  175. package/dist/payment/interfaces/payment.repository.interface.d.ts +3 -0
  176. package/dist/payment/interfaces/payment.repository.interface.js +3 -0
  177. package/dist/payment/interfaces/payment.repository.interface.js.map +1 -0
  178. package/dist/payment/payment-item.repository.d.ts +5 -0
  179. package/dist/payment/payment-item.repository.js +12 -0
  180. package/dist/payment/payment-item.repository.js.map +1 -0
  181. package/dist/payment-item/interfaces/payment-item.repository.interface.d.ts +3 -0
  182. package/dist/payment-item/interfaces/payment-item.repository.interface.js +3 -0
  183. package/dist/payment-item/interfaces/payment-item.repository.interface.js.map +1 -0
  184. package/dist/payment-item/payment-item.js +4 -4
  185. package/dist/quickbook-client/client.d.ts +39 -0
  186. package/dist/quickbook-client/client.js +205 -0
  187. package/dist/quickbook-client/client.js.map +1 -0
  188. package/dist/quickbook-client/constant.d.ts +1 -0
  189. package/dist/quickbook-client/constant.js +5 -0
  190. package/dist/quickbook-client/constant.js.map +1 -0
  191. package/dist/quickbook-client/index.d.ts +5 -0
  192. package/dist/quickbook-client/index.js +6 -0
  193. package/dist/quickbook-client/index.js.map +1 -0
  194. package/dist/quickbook-client/interfaces/quickbook-client-call-options.interface.d.ts +6 -0
  195. package/dist/quickbook-client/interfaces/quickbook-client-call-options.interface.js +3 -0
  196. package/dist/quickbook-client/interfaces/quickbook-client-call-options.interface.js.map +1 -0
  197. package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.d.ts +9 -0
  198. package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.js +3 -0
  199. package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.js.map +1 -0
  200. package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.d.ts +7 -0
  201. package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.js +3 -0
  202. package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.js.map +1 -0
  203. package/dist/quickbook-client/interfaces/quickbook-client-options.interface.d.ts +8 -0
  204. package/dist/quickbook-client/interfaces/quickbook-client-options.interface.js +3 -0
  205. package/dist/quickbook-client/interfaces/quickbook-client-options.interface.js.map +1 -0
  206. package/dist/quickbook-client/quickbook-client.module-definition.d.ts +2 -0
  207. package/dist/quickbook-client/quickbook-client.module-definition.js +9 -0
  208. package/dist/quickbook-client/quickbook-client.module-definition.js.map +1 -0
  209. package/dist/quickbook-client/quickbook-client.module.d.ts +6 -0
  210. package/dist/quickbook-client/quickbook-client.module.js +34 -0
  211. package/dist/quickbook-client/quickbook-client.module.js.map +1 -0
  212. package/dist/tsconfig.tsbuildinfo +1 -1
  213. package/invoice-template/assets/css/style.css.map +12 -12
  214. package/invoice-template/assets/css/style.min.css +1 -1
  215. package/invoice-template/assets/img/arrow_bg.svg +11 -11
  216. package/invoice-template/assets/img/coffy_shop_img.svg +18 -18
  217. package/invoice-template/assets/img/logo_accent.svg +3 -3
  218. package/invoice-template/assets/img/logo_white.svg +4 -4
  219. package/invoice-template/assets/img/sign.svg +12 -12
  220. package/invoice-template/assets/img/tomei-logo.svg +9 -9
  221. package/invoice-template/assets/js/html2canvas.min.js +10379 -10379
  222. package/invoice-template/assets/js/jquery.min.js +1 -1
  223. package/invoice-template/assets/sass/common/_color_variable.scss +12 -12
  224. package/invoice-template/assets/sass/common/_typography.scss +178 -178
  225. package/invoice-template/assets/sass/style.scss +12 -12
  226. package/migrations/finance-account-migration.js +97 -97
  227. package/migrations/finance-company-migration.js +29 -29
  228. package/migrations/finance-customer-migration.js +51 -51
  229. package/migrations/finance-document-item-migration.js +111 -111
  230. package/migrations/finance-document-migration.js +116 -116
  231. package/migrations/finance-payment-item-migration.js +52 -52
  232. package/migrations/finance-payment-method-migration.js +31 -31
  233. package/migrations/finance-payment-method-type-migration.js +55 -55
  234. package/migrations/finance-payment-migration.js +96 -96
  235. package/migrations/finance-post-history-migration.js +45 -45
  236. package/nest-cli.json +19 -19
  237. package/package.json +82 -82
  238. package/src/account/account.repository.ts +11 -11
  239. package/src/account/account.ts +271 -271
  240. package/src/account/interfaces/account-attr.interface.ts +31 -31
  241. package/src/account-system-entity/account-system-entity.ts +65 -65
  242. package/src/account-system-entity/post-history.repository.ts +11 -11
  243. package/src/config.ts +382 -382
  244. package/src/customer/customer.ts +299 -299
  245. package/src/customer/finance-customer.repository.ts +13 -13
  246. package/src/customer/interfaces/customer.repository.interface.ts +3 -3
  247. package/src/customer/interfaces/finance-customer-attr.interface.ts +10 -10
  248. package/src/customer/interfaces/finance-customer.repository.interface.ts +4 -4
  249. package/src/database.ts +15 -15
  250. package/src/document/document-item.repository.ts +11 -11
  251. package/src/document/document.repository.ts +11 -11
  252. package/src/document/document.ts +2 -2
  253. package/src/document/interfaces/document-attr.interface.ts +28 -28
  254. package/src/document/interfaces/document-item-attr.interface.ts +22 -22
  255. package/src/document/interfaces/document-item.repository.interface.ts +4 -4
  256. package/src/enum/doc-type.enum.ts +8 -8
  257. package/src/enum/index.ts +17 -17
  258. package/src/enum/payment-method.enum.ts +3 -3
  259. package/src/enum/payment-type.enum.ts +4 -4
  260. package/src/finance-company/finance-company.repository.ts +11 -11
  261. package/src/finance-company/finance-company.ts +1980 -1778
  262. package/src/helpers/typeof.ts +29 -29
  263. package/src/index.ts +32 -32
  264. package/src/interfaces/account-system.interface.ts +20 -20
  265. package/src/interfaces/index.ts +3 -3
  266. package/src/models/account.entity.ts +206 -206
  267. package/src/models/customer.entity.ts +93 -93
  268. package/src/models/document-item.entity.ts +143 -143
  269. package/src/models/document.entity.ts +211 -211
  270. package/src/models/finance-company.entity.ts +25 -25
  271. package/src/models/journal-entry.entity.ts +110 -110
  272. package/src/models/ledger-transaction.entity.ts +148 -148
  273. package/src/models/payment-item.entity.ts +60 -60
  274. package/src/models/payment-method-type.entity.ts +70 -70
  275. package/src/models/payment-method.entity.ts +51 -51
  276. package/src/models/payment.entity.ts +161 -161
  277. package/src/models/post-history.entity.ts +41 -41
  278. package/src/payment/interfaces/payment-attr.interface.ts +23 -23
  279. package/src/payment/interfaces/payment-params.interface.ts +8 -8
  280. package/src/payment/payment.repository.ts +11 -11
  281. package/src/payment/payment.ts +217 -217
  282. package/src/payment-item/interfaces/payment-item-attr.interface.ts +10 -10
  283. package/src/payment-item/payment-item.repository.ts +11 -11
  284. package/src/payment-item/payment-item.ts +128 -128
  285. package/src/payment-method/payment-method.repository.ts +11 -11
  286. package/src/payment-method-type/payment-method-type.repository.ts +11 -11
  287. package/src/test-document.ts +25 -25
  288. package/tsconfig.build.json +4 -4
  289. package/tsconfig.json +22 -22
  290. package/tslint.json +18 -18
@@ -0,0 +1,152 @@
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 __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PaymentModel = void 0;
13
+ const sequelize_typescript_1 = require("sequelize-typescript");
14
+ const payment_type_enum_1 = require("../../enum/payment-type.enum");
15
+ const account_entity_1 = require("../../account/entities/account.entity");
16
+ const payment_item_entity_1 = require("./payment-item.entity");
17
+ let PaymentModel = class PaymentModel extends sequelize_typescript_1.Model {
18
+ };
19
+ __decorate([
20
+ (0, sequelize_typescript_1.Column)({
21
+ primaryKey: true,
22
+ allowNull: false,
23
+ type: sequelize_typescript_1.DataType.STRING(30),
24
+ }),
25
+ __metadata("design:type", String)
26
+ ], PaymentModel.prototype, "PaymentId", void 0);
27
+ __decorate([
28
+ (0, sequelize_typescript_1.ForeignKey)(() => account_entity_1.AccountModel),
29
+ (0, sequelize_typescript_1.Column)({
30
+ allowNull: false,
31
+ type: sequelize_typescript_1.DataType.STRING(30),
32
+ }),
33
+ __metadata("design:type", String)
34
+ ], PaymentModel.prototype, "AccountNo", void 0);
35
+ __decorate([
36
+ (0, sequelize_typescript_1.Column)({
37
+ allowNull: false,
38
+ type: sequelize_typescript_1.DataType.STRING(30),
39
+ }),
40
+ __metadata("design:type", String)
41
+ ], PaymentModel.prototype, "PaymentType", void 0);
42
+ __decorate([
43
+ (0, sequelize_typescript_1.Column)({
44
+ allowNull: false,
45
+ type: sequelize_typescript_1.DataType.DATE,
46
+ }),
47
+ __metadata("design:type", Date)
48
+ ], PaymentModel.prototype, "PaymentDate", void 0);
49
+ __decorate([
50
+ (0, sequelize_typescript_1.Column)({
51
+ allowNull: false,
52
+ type: sequelize_typescript_1.DataType.CHAR(3),
53
+ }),
54
+ __metadata("design:type", String)
55
+ ], PaymentModel.prototype, "Currency", void 0);
56
+ __decorate([
57
+ (0, sequelize_typescript_1.Column)({
58
+ allowNull: false,
59
+ type: sequelize_typescript_1.DataType.DECIMAL(10, 2),
60
+ }),
61
+ __metadata("design:type", Number)
62
+ ], PaymentModel.prototype, "Amount", void 0);
63
+ __decorate([
64
+ (0, sequelize_typescript_1.Column)({
65
+ allowNull: false,
66
+ type: sequelize_typescript_1.DataType.STRING(30),
67
+ }),
68
+ __metadata("design:type", String)
69
+ ], PaymentModel.prototype, "Status", void 0);
70
+ __decorate([
71
+ (0, sequelize_typescript_1.Column)({
72
+ allowNull: false,
73
+ type: sequelize_typescript_1.DataType.STRING,
74
+ }),
75
+ __metadata("design:type", String)
76
+ ], PaymentModel.prototype, "Method", void 0);
77
+ __decorate([
78
+ (0, sequelize_typescript_1.Column)({
79
+ allowNull: false,
80
+ type: sequelize_typescript_1.DataType.STRING(255),
81
+ }),
82
+ __metadata("design:type", String)
83
+ ], PaymentModel.prototype, "MethodParty", void 0);
84
+ __decorate([
85
+ (0, sequelize_typescript_1.Column)({
86
+ allowNull: true,
87
+ type: sequelize_typescript_1.DataType.STRING(100),
88
+ }),
89
+ __metadata("design:type", String)
90
+ ], PaymentModel.prototype, "MethodAccountName", void 0);
91
+ __decorate([
92
+ (0, sequelize_typescript_1.Column)({
93
+ allowNull: true,
94
+ type: sequelize_typescript_1.DataType.STRING(100),
95
+ }),
96
+ __metadata("design:type", String)
97
+ ], PaymentModel.prototype, "MethodAccountNo", void 0);
98
+ __decorate([
99
+ (0, sequelize_typescript_1.Column)({
100
+ allowNull: true,
101
+ type: sequelize_typescript_1.DataType.STRING(100),
102
+ }),
103
+ __metadata("design:type", String)
104
+ ], PaymentModel.prototype, "TransactionId", void 0);
105
+ __decorate([
106
+ (0, sequelize_typescript_1.Column)({
107
+ allowNull: true,
108
+ type: sequelize_typescript_1.DataType.STRING(100),
109
+ }),
110
+ __metadata("design:type", String)
111
+ ], PaymentModel.prototype, "ApprovalId", void 0);
112
+ __decorate([
113
+ (0, sequelize_typescript_1.Column)({
114
+ allowNull: false,
115
+ type: sequelize_typescript_1.DataType.STRING(30),
116
+ }),
117
+ __metadata("design:type", String)
118
+ ], PaymentModel.prototype, "ReceivedBy", void 0);
119
+ __decorate([
120
+ (0, sequelize_typescript_1.Column)({
121
+ allowNull: false,
122
+ type: sequelize_typescript_1.DataType.DATE,
123
+ }),
124
+ __metadata("design:type", Date)
125
+ ], PaymentModel.prototype, "UpdatedAt", void 0);
126
+ __decorate([
127
+ (0, sequelize_typescript_1.Column)({
128
+ allowNull: false,
129
+ type: sequelize_typescript_1.DataType.STRING(30),
130
+ }),
131
+ __metadata("design:type", String)
132
+ ], PaymentModel.prototype, "UpdatedBy", void 0);
133
+ __decorate([
134
+ (0, sequelize_typescript_1.Column)({
135
+ allowNull: true,
136
+ type: sequelize_typescript_1.DataType.TEXT,
137
+ }),
138
+ __metadata("design:type", String)
139
+ ], PaymentModel.prototype, "Remarks", void 0);
140
+ __decorate([
141
+ (0, sequelize_typescript_1.BelongsTo)(() => account_entity_1.AccountModel),
142
+ __metadata("design:type", account_entity_1.AccountModel)
143
+ ], PaymentModel.prototype, "Account", void 0);
144
+ __decorate([
145
+ (0, sequelize_typescript_1.HasMany)(() => payment_item_entity_1.PaymentItemModel),
146
+ __metadata("design:type", Array)
147
+ ], PaymentModel.prototype, "PaymentItems", void 0);
148
+ PaymentModel = __decorate([
149
+ (0, sequelize_typescript_1.Table)({ tableName: 'finance_Payment', createdAt: false, updatedAt: false })
150
+ ], PaymentModel);
151
+ exports.PaymentModel = PaymentModel;
152
+ //# sourceMappingURL=payment.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment.entity.js","sourceRoot":"","sources":["../../../src/payment/entities/payment.entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { PaymentModel } from './entities/payment.entity';
2
+ import { IPaymentAttr } from './interfaces/payment-attr.interface';
3
+ import { IPaymentRepository } from './interfaces/payment.repository.interface';
4
+ import { PaymentItemModel } from './entities/payment-item.entity';
5
+ import { IPaymentItemAttr } from './interfaces/payment-item-attr.interface';
6
+ import { IPaymentItemRepository } from './interfaces/payment-item.repository.interface';
7
+ import { Payment } from './payment';
8
+ import { PaymentRepository } from './payment.repository';
9
+ import { PaymentItemRepository } from './payment-item.repository';
10
+ export { PaymentModel, PaymentItemModel, Payment, PaymentRepository, PaymentItemRepository, IPaymentRepository, IPaymentItemRepository, IPaymentAttr, IPaymentItemAttr, };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IPaymentItemAttr = exports.IPaymentAttr = exports.PaymentItemRepository = exports.PaymentRepository = exports.Payment = exports.PaymentItemModel = exports.PaymentModel = void 0;
4
+ const payment_entity_1 = require("./entities/payment.entity");
5
+ Object.defineProperty(exports, "PaymentModel", { enumerable: true, get: function () { return payment_entity_1.PaymentModel; } });
6
+ const payment_attr_interface_1 = require("./interfaces/payment-attr.interface");
7
+ Object.defineProperty(exports, "IPaymentAttr", { enumerable: true, get: function () { return payment_attr_interface_1.IPaymentAttr; } });
8
+ const payment_item_entity_1 = require("./entities/payment-item.entity");
9
+ Object.defineProperty(exports, "PaymentItemModel", { enumerable: true, get: function () { return payment_item_entity_1.PaymentItemModel; } });
10
+ const payment_item_attr_interface_1 = require("./interfaces/payment-item-attr.interface");
11
+ Object.defineProperty(exports, "IPaymentItemAttr", { enumerable: true, get: function () { return payment_item_attr_interface_1.IPaymentItemAttr; } });
12
+ const payment_1 = require("./payment");
13
+ Object.defineProperty(exports, "Payment", { enumerable: true, get: function () { return payment_1.Payment; } });
14
+ const payment_repository_1 = require("./payment.repository");
15
+ Object.defineProperty(exports, "PaymentRepository", { enumerable: true, get: function () { return payment_repository_1.PaymentRepository; } });
16
+ const payment_item_repository_1 = require("./payment-item.repository");
17
+ Object.defineProperty(exports, "PaymentItemRepository", { enumerable: true, get: function () { return payment_item_repository_1.PaymentItemRepository; } });
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/payment/index.ts"],"names":[],"mappings":";;;AAAA,8DAAyD;AAWvD,6FAXO,6BAAY,OAWP;AAVd,gFAAmE;AAiBjE,6FAjBO,qCAAY,OAiBP;AAfd,wEAAkE;AAShE,iGATO,sCAAgB,OASP;AARlB,0FAA4E;AAe1E,iGAfO,8CAAgB,OAeP;AAblB,uCAAoC;AAOlC,wFAPO,iBAAO,OAOP;AANT,6DAAyD;AAOvD,kGAPO,sCAAiB,OAOP;AANnB,uEAAkE;AAOhE,sGAPO,+CAAqB,OAOP"}
@@ -0,0 +1,8 @@
1
+ export declare class IPaymentItemAttr {
2
+ PaymentId: string;
3
+ PayForObjectId: string;
4
+ PayForObjectType: string;
5
+ Currency: string;
6
+ Amount: number;
7
+ TaxCode?: string;
8
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IPaymentItemAttr = void 0;
4
+ class IPaymentItemAttr {
5
+ }
6
+ exports.IPaymentItemAttr = IPaymentItemAttr;
7
+ //# sourceMappingURL=payment-item-attr.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-item-attr.interface.js","sourceRoot":"","sources":["../../../src/payment/interfaces/payment-item-attr.interface.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAgB;CAO5B;AAPD,4CAOC"}
@@ -0,0 +1,3 @@
1
+ import { IBaseRepository } from '@tomei/general';
2
+ import PaymentItemModel from '../../models/payment-item.entity';
3
+ export type IPaymentItemRepository = IBaseRepository<PaymentItemModel>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=payment-item.repository.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-item.repository.interface.js","sourceRoot":"","sources":["../../../src/payment/interfaces/payment-item.repository.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { IBaseRepository } from '@tomei/general';
2
+ import PaymentModel from '../../models/payment.entity';
3
+ export type IPaymentRepository = IBaseRepository<PaymentModel>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=payment.repository.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment.repository.interface.js","sourceRoot":"","sources":["../../../src/payment/interfaces/payment.repository.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { BaseRepository, IBaseRepository } from '@tomei/general';
2
+ import PaymentItemModel from '../models/payment-item.entity';
3
+ export declare class PaymentItemRepository extends BaseRepository<PaymentItemModel> implements IBaseRepository<PaymentItemModel> {
4
+ constructor();
5
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PaymentItemRepository = void 0;
4
+ const general_1 = require("@tomei/general");
5
+ const payment_item_entity_1 = require("../models/payment-item.entity");
6
+ class PaymentItemRepository extends general_1.BaseRepository {
7
+ constructor() {
8
+ super(payment_item_entity_1.default);
9
+ }
10
+ }
11
+ exports.PaymentItemRepository = PaymentItemRepository;
12
+ //# sourceMappingURL=payment-item.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-item.repository.js","sourceRoot":"","sources":["../../src/payment/payment-item.repository.ts"],"names":[],"mappings":";;;AAAA,4CAAiE;AACjE,uEAA6D;AAE7D,MAAa,qBACX,SAAQ,wBAAgC;IAGxC;QACE,KAAK,CAAC,6BAAgB,CAAC,CAAC;IAC1B,CAAC;CACF;AAPD,sDAOC"}
@@ -0,0 +1,3 @@
1
+ import { IBaseRepository } from '@tomei/general';
2
+ import PaymentItemModel from '../../models/payment-item.entity';
3
+ export type IPaymentItemRepository = IBaseRepository<PaymentItemModel>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=payment-item.repository.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-item.repository.interface.js","sourceRoot":"","sources":["../../../src/payment-item/interfaces/payment-item.repository.interface.ts"],"names":[],"mappings":""}
@@ -95,10 +95,10 @@ class PaymentItem extends general_1.ObjectBase {
95
95
  else {
96
96
  throw new Error('Payment Item amount cannot be greater than its PayForObject amount.');
97
97
  }
98
- const updateQuery = `
99
- UPDATE finance_Document
100
- SET Status = '${paidStatus}'
101
- WHERE DocNo = '${this.PayForObjectId}'
98
+ const updateQuery = `
99
+ UPDATE finance_Document
100
+ SET Status = '${paidStatus}'
101
+ WHERE DocNo = '${this.PayForObjectId}'
102
102
  `;
103
103
  yield sequelize.query(updateQuery, {
104
104
  type: sequelize_1.QueryTypes.UPDATE,
@@ -0,0 +1,39 @@
1
+ import * as OAuthClient from 'intuit-oauth';
2
+ import { Customer } from '../customer';
3
+ import { Payment } from '../payment';
4
+ import { ClientScopes } from '../enum/quick-book-client-scopes.enum';
5
+ import { IAccountSystem } from '../interfaces';
6
+ import { IQuickBookAPICallOptions } from './interfaces/quickbook-client-call-options.interface';
7
+ import { IQuickBookCreateAccountOptions } from './interfaces/quickbook-client-create-account-options.interface';
8
+ import { IQuickBookCreateCustomerOptions } from './interfaces/quickbook-client-create-customer-options.interface';
9
+ export declare class QuickBookClient implements IAccountSystem {
10
+ client: OAuthClient;
11
+ apiUrl: string;
12
+ authUrl: string;
13
+ constructor(SysCode: string, scopes: ClientScopes[]);
14
+ createAccount(payload: IQuickBookCreateAccountOptions): Promise<any>;
15
+ createCustomer(payload: IQuickBookCreateCustomerOptions): Promise<any>;
16
+ makePayment(customer: Customer, paymentInfo: Payment): Promise<any>;
17
+ collectPayments(customer: Customer, paymentInfo: Payment): Promise<any>;
18
+ createInvoice(): Promise<void>;
19
+ createDebitNote(): Promise<void>;
20
+ createCreditNote(): Promise<void>;
21
+ postTransaction(): Promise<void>;
22
+ connect(scopes: ClientScopes[]): string;
23
+ authCallback(url: string): Promise<void>;
24
+ isTokenValid(): boolean;
25
+ refreshAccessToken(): Promise<void>;
26
+ logout(): Promise<void>;
27
+ get token(): {
28
+ token_type: string;
29
+ access_token: string;
30
+ refresh_token: string;
31
+ expires_in: number;
32
+ x_refresh_token_expires_in: number;
33
+ id_token: string;
34
+ createdAt: number;
35
+ };
36
+ getCompanyId(): string;
37
+ validateAndRefreshToken(): Promise<void>;
38
+ callApi(options: IQuickBookAPICallOptions): Promise<any>;
39
+ }
@@ -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,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.QUICKBOOK_CLIENT = void 0;
4
+ exports.QUICKBOOK_CLIENT = 'quickbook-client';
5
+ //# sourceMappingURL=constant.js.map
@@ -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,6 @@
1
+ export interface IQuickBookAPICallOptions {
2
+ endpoint: string;
3
+ method: 'GET' | 'POST' | 'PUT' | 'DELETE';
4
+ headers?: object;
5
+ body?: string;
6
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=quickbook-client-call-options.interface.js.map
@@ -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":""}
@@ -0,0 +1,9 @@
1
+ export interface IQuickBookCreateAccountOptions {
2
+ Name: string;
3
+ AcctNum: string;
4
+ AccountType: string;
5
+ AccountSubType: string;
6
+ CurrencyRef?: string;
7
+ ParentRef?: string;
8
+ SubAccount?: boolean;
9
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=quickbook-client-create-account-options.interface.js.map
@@ -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":""}
@@ -0,0 +1,7 @@
1
+ import { AddressBase } from '@tomei/general';
2
+ export interface IQuickBookCreateCustomerOptions {
3
+ FullName: string;
4
+ Email: string;
5
+ ContractNo: string;
6
+ Address: AddressBase;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=quickbook-client-create-customer-options.interface.js.map
@@ -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":""}