@tomei/finance 0.6.79 → 0.6.80

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 (106) hide show
  1. package/.commitlintrc.json +22 -22
  2. package/.eslintrc.js +72 -72
  3. package/.gitlab-ci.yml +16 -16
  4. package/.husky/commit-msg +4 -4
  5. package/.husky/pre-commit +4 -4
  6. package/.prettierrc +4 -4
  7. package/CONTRIBUTING.md +30 -30
  8. package/LICENSE +21 -21
  9. package/README.md +13 -13
  10. package/configs/config.js +348 -348
  11. package/dist/document/document.d.ts +1 -1
  12. package/dist/document/document.js +6 -2
  13. package/dist/document/document.js.map +1 -1
  14. package/dist/payment-item/payment-item.js +4 -4
  15. package/dist/tsconfig.tsbuildinfo +1 -1
  16. package/invoice-template/assets/css/style.css.map +12 -12
  17. package/invoice-template/assets/css/style.min.css +1 -1
  18. package/invoice-template/assets/img/arrow_bg.svg +11 -11
  19. package/invoice-template/assets/img/coffy_shop_img.svg +18 -18
  20. package/invoice-template/assets/img/logo_accent.svg +3 -3
  21. package/invoice-template/assets/img/logo_white.svg +4 -4
  22. package/invoice-template/assets/img/sign.svg +12 -12
  23. package/invoice-template/assets/img/tomei-logo.svg +9 -9
  24. package/invoice-template/assets/js/html2canvas.min.js +10379 -10379
  25. package/invoice-template/assets/js/jquery.min.js +1 -1
  26. package/invoice-template/assets/sass/common/_color_variable.scss +12 -12
  27. package/invoice-template/assets/sass/common/_typography.scss +178 -178
  28. package/invoice-template/assets/sass/style.scss +12 -12
  29. package/migrations/finance-account-migration.js +97 -97
  30. package/migrations/finance-company-migration.js +29 -29
  31. package/migrations/finance-customer-migration.js +51 -51
  32. package/migrations/finance-document-item-migration.js +111 -111
  33. package/migrations/finance-document-migration.js +122 -122
  34. package/migrations/finance-journal-entry-migration.js +59 -59
  35. package/migrations/finance-ledger-transaction-migration.js +89 -89
  36. package/migrations/finance-payment-item-migration.js +52 -52
  37. package/migrations/finance-payment-method-migration.js +31 -31
  38. package/migrations/finance-payment-method-type-migration.js +55 -55
  39. package/migrations/finance-payment-migration.js +96 -96
  40. package/migrations/finance-post-history-migration.js +45 -45
  41. package/migrations/finance-tax-migration.js +52 -52
  42. package/migrations/refactor-finance-document-migration.js +71 -71
  43. package/nest-cli.json +19 -19
  44. package/package.json +82 -82
  45. package/sonar-project.properties +12 -12
  46. package/src/account/account.repository.ts +11 -11
  47. package/src/account/account.ts +276 -276
  48. package/src/account/interfaces/account-attr.interface.ts +31 -31
  49. package/src/account-system-entity/account-system-entity.ts +66 -66
  50. package/src/account-system-entity/post-history.repository.ts +11 -11
  51. package/src/config.ts +382 -382
  52. package/src/customer/customer.ts +299 -299
  53. package/src/customer/finance-customer.repository.ts +13 -13
  54. package/src/customer/interfaces/customer.repository.interface.ts +3 -3
  55. package/src/customer/interfaces/finance-customer-attr.interface.ts +10 -10
  56. package/src/customer/interfaces/finance-customer.repository.interface.ts +4 -4
  57. package/src/database.ts +48 -48
  58. package/src/document/document-item.repository.ts +11 -11
  59. package/src/document/document.repository.ts +11 -11
  60. package/src/document/document.ts +17 -13
  61. package/src/document/interfaces/document-attr.interface.ts +28 -28
  62. package/src/document/interfaces/document-item-attr.interface.ts +22 -22
  63. package/src/document/interfaces/document-item.repository.interface.ts +4 -4
  64. package/src/enum/collect-payment-type.ts +3 -3
  65. package/src/enum/doc-type.enum.ts +8 -8
  66. package/src/enum/index.ts +19 -19
  67. package/src/enum/payment-method.enum.ts +3 -3
  68. package/src/enum/payment-type.enum.ts +4 -4
  69. package/src/enum/quick-book-client-scopes.enum.ts +14 -14
  70. package/src/finance-company/finance-company.repository.ts +11 -11
  71. package/src/finance-company/finance-company.ts +2229 -2229
  72. package/src/helpers/login-user.ts +38 -38
  73. package/src/helpers/typeof.ts +35 -35
  74. package/src/index.ts +32 -32
  75. package/src/interfaces/account-system.interface.ts +20 -20
  76. package/src/interfaces/index.ts +3 -3
  77. package/src/models/account.entity.ts +206 -206
  78. package/src/models/customer.entity.ts +93 -93
  79. package/src/models/document-item.entity.ts +143 -143
  80. package/src/models/document.entity.ts +211 -211
  81. package/src/models/finance-company.entity.ts +29 -29
  82. package/src/models/journal-entry.entity.ts +110 -110
  83. package/src/models/ledger-transaction.entity.ts +148 -148
  84. package/src/models/payment-item.entity.ts +60 -60
  85. package/src/models/payment-method-type.entity.ts +70 -70
  86. package/src/models/payment-method.entity.ts +51 -51
  87. package/src/models/payment.entity.ts +165 -165
  88. package/src/models/post-history.entity.ts +41 -41
  89. package/src/models/tax.entity.ts +75 -75
  90. package/src/payment/interfaces/payment-attr.interface.ts +23 -23
  91. package/src/payment/interfaces/payment-params.interface.ts +8 -8
  92. package/src/payment/payment.repository.ts +11 -11
  93. package/src/payment/payment.ts +236 -236
  94. package/src/payment-item/interfaces/payment-item-attr.interface.ts +10 -10
  95. package/src/payment-item/payment-item.repository.ts +11 -11
  96. package/src/payment-item/payment-item.ts +134 -134
  97. package/src/payment-method/payment-method.repository.ts +11 -11
  98. package/src/payment-method-type/payment-method-type.repository.ts +11 -11
  99. package/src/tax/interfaces/tax-attr.interface.ts +10 -10
  100. package/src/tax/tax.repository.ts +11 -11
  101. package/src/tax/tax.ts +69 -69
  102. package/src/test-document.ts +25 -25
  103. package/src/test.ts +3 -3
  104. package/tsconfig.build.json +4 -4
  105. package/tsconfig.json +22 -22
  106. package/tslint.json +18 -18
@@ -1,72 +1,72 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- up: async (queryInterface, Sequelize) => {
5
- const transaction = await queryInterface.sequelize.transaction();
6
- try {
7
- //Update column type to string
8
- await queryInterface.changeColumn('finance_Document', 'Status', {
9
- type: Sequelize.STRING(30),
10
- allowNull: false,
11
- }, { transaction });
12
- // Update inconsistent data before changing the enum values
13
- await queryInterface.sequelize.query(`
14
- UPDATE finance_Document
15
- SET Status = 'Settled'
16
- WHERE Status = 'Paid'
17
- `, { transaction });
18
-
19
- await queryInterface.sequelize.query(`
20
- UPDATE finance_Document
21
- SET Status = 'Partial Settled'
22
- WHERE Status = 'Partial Paid'
23
- `, { transaction });
24
-
25
- // Change the column to the new enum values
26
- await queryInterface.changeColumn('finance_Document', 'Status', {
27
- type: Sequelize.ENUM(['Unpaid', 'Settled', 'Partial Settled', 'Cancelled']), // new enum values
28
- allowNull: false,
29
- }, { transaction });
30
-
31
- await transaction.commit();
32
- } catch (error) {
33
- await transaction.rollback();
34
- throw error;
35
- }
36
- },
37
-
38
- down: async (queryInterface, Sequelize) => {
39
- const transaction = await queryInterface.sequelize.transaction();
40
- try {
41
- //Update column type to string
42
- await queryInterface.changeColumn('finance_Document', 'Status', {
43
- type: Sequelize.STRING(30),
44
- allowNull: false,
45
- }, { transaction });
46
-
47
- // Update inconsistent data before changing the enum values
48
- await queryInterface.sequelize.query(`
49
- UPDATE finance_Document
50
- SET Status = 'Paid'
51
- WHERE Status = 'Settled'
52
- `, { transaction });
53
-
54
- await queryInterface.sequelize.query(`
55
- UPDATE finance_Document
56
- SET Status = 'Partial Paid'
57
- WHERE Status = 'Partial Settled'
58
- `, { transaction });
59
-
60
- // Change the column to the new enum values
61
- await queryInterface.changeColumn('finance_Document', 'Status', {
62
- type: Sequelize.ENUM(['Unpaid', 'Paid', 'Partial Paid', 'Cancelled']), // new enum values
63
- allowNull: false,
64
- }, { transaction });
65
-
66
- await transaction.commit();
67
- } catch (error) {
68
- await transaction.rollback();
69
- throw error;
70
- }
71
- }
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ up: async (queryInterface, Sequelize) => {
5
+ const transaction = await queryInterface.sequelize.transaction();
6
+ try {
7
+ //Update column type to string
8
+ await queryInterface.changeColumn('finance_Document', 'Status', {
9
+ type: Sequelize.STRING(30),
10
+ allowNull: false,
11
+ }, { transaction });
12
+ // Update inconsistent data before changing the enum values
13
+ await queryInterface.sequelize.query(`
14
+ UPDATE finance_Document
15
+ SET Status = 'Settled'
16
+ WHERE Status = 'Paid'
17
+ `, { transaction });
18
+
19
+ await queryInterface.sequelize.query(`
20
+ UPDATE finance_Document
21
+ SET Status = 'Partial Settled'
22
+ WHERE Status = 'Partial Paid'
23
+ `, { transaction });
24
+
25
+ // Change the column to the new enum values
26
+ await queryInterface.changeColumn('finance_Document', 'Status', {
27
+ type: Sequelize.ENUM(['Unpaid', 'Settled', 'Partial Settled', 'Cancelled']), // new enum values
28
+ allowNull: false,
29
+ }, { transaction });
30
+
31
+ await transaction.commit();
32
+ } catch (error) {
33
+ await transaction.rollback();
34
+ throw error;
35
+ }
36
+ },
37
+
38
+ down: async (queryInterface, Sequelize) => {
39
+ const transaction = await queryInterface.sequelize.transaction();
40
+ try {
41
+ //Update column type to string
42
+ await queryInterface.changeColumn('finance_Document', 'Status', {
43
+ type: Sequelize.STRING(30),
44
+ allowNull: false,
45
+ }, { transaction });
46
+
47
+ // Update inconsistent data before changing the enum values
48
+ await queryInterface.sequelize.query(`
49
+ UPDATE finance_Document
50
+ SET Status = 'Paid'
51
+ WHERE Status = 'Settled'
52
+ `, { transaction });
53
+
54
+ await queryInterface.sequelize.query(`
55
+ UPDATE finance_Document
56
+ SET Status = 'Partial Paid'
57
+ WHERE Status = 'Partial Settled'
58
+ `, { transaction });
59
+
60
+ // Change the column to the new enum values
61
+ await queryInterface.changeColumn('finance_Document', 'Status', {
62
+ type: Sequelize.ENUM(['Unpaid', 'Paid', 'Partial Paid', 'Cancelled']), // new enum values
63
+ allowNull: false,
64
+ }, { transaction });
65
+
66
+ await transaction.commit();
67
+ } catch (error) {
68
+ await transaction.rollback();
69
+ throw error;
70
+ }
71
+ }
72
72
  };
package/nest-cli.json CHANGED
@@ -1,19 +1,19 @@
1
- {
2
- "language": "ts",
3
- "collection": "@nestjs/schematics",
4
- "sourceRoot": "src",
5
- "projects": {
6
- "media": {
7
- "type": "library",
8
- "root": "libs/finance",
9
- "entryFile": "index",
10
- "sourceRoot": "libs/finance/src",
11
- "compilerOptions": {
12
- "tsConfigPath": "libs/finance/tsconfig.lib.json"
13
- }
14
- }
15
- },
16
- "compilerOptions": {
17
- "webpack": true
18
- }
19
- }
1
+ {
2
+ "language": "ts",
3
+ "collection": "@nestjs/schematics",
4
+ "sourceRoot": "src",
5
+ "projects": {
6
+ "media": {
7
+ "type": "library",
8
+ "root": "libs/finance",
9
+ "entryFile": "index",
10
+ "sourceRoot": "libs/finance/src",
11
+ "compilerOptions": {
12
+ "tsConfigPath": "libs/finance/tsconfig.lib.json"
13
+ }
14
+ }
15
+ },
16
+ "compilerOptions": {
17
+ "webpack": true
18
+ }
19
+ }
package/package.json CHANGED
@@ -1,82 +1,82 @@
1
- {
2
- "name": "@tomei/finance",
3
- "version": "0.6.79",
4
- "description": "NestJS package for finance module",
5
- "main": "dist/index.js",
6
- "scripts": {
7
- "start:dev": "tsc -w",
8
- "build": "tsc",
9
- "prepare": "npm run build",
10
- "format": "prettier --write \"src/**/*.ts\"",
11
- "lint": "tslint -p tsconfig.json -c tslint.json",
12
- "test": "jest",
13
- "test:watch": "jest --watch",
14
- "test:cov": "jest --coverage",
15
- "test:e2e": "jest --config ./test/jest-e2e.json"
16
- },
17
- "keywords": [
18
- "nestjs",
19
- "tomei",
20
- "finance"
21
- ],
22
- "author": "Fadhil Muhammad <fadhil@tomei.com.my>",
23
- "license": "ISC",
24
- "repository": {
25
- "type": "git",
26
- "url": "https://gitlab.com/tomei-package/finance.git"
27
- },
28
- "publishConfig": {
29
- "access": "public"
30
- },
31
- "peerDependencies": {
32
- "@nestjs/common": ">=9.0.5",
33
- "@nestjs/config": ">=2.2.0",
34
- "@nestjs/core": ">=9.0.8",
35
- "@nestjs/platform-express": ">=9.0.8",
36
- "@nestjs/sequelize": ">=9.0.0",
37
- "@nestjs/swagger": ">=6.1.4",
38
- "@tomei/activity-history": "^0.2.15",
39
- "@tomei/config": "^0.3.10",
40
- "@tomei/general": "^0.11.8",
41
- "@tomei/media": "^0.7.0",
42
- "@tomei/sso": "^0.21.13",
43
- "axios": "^1.6.0",
44
- "class-transformer": "^0.5.1",
45
- "class-validator": "^0.14.0",
46
- "cuid": "^3.0.0",
47
- "dotenv": "^16.0.3",
48
- "intuit-oauth": "^4.0.0",
49
- "mariadb": "^3.0.2",
50
- "puppeteer": "^18.1.0",
51
- "sequelize-typescript": "^2.1.5",
52
- "uniqid": "^5.4.0"
53
- },
54
- "devDependencies": {
55
- "@types/multer": "^1.4.7",
56
- "@types/node": "^18.0.6",
57
- "@types/sequelize": "^4.28.14",
58
- "@types/uniqid": "^5.3.2",
59
- "@typescript-eslint/eslint-plugin": "^5.33.0",
60
- "eslint": "^8.21.0",
61
- "eslint-config-prettier": "^8.5.0",
62
- "eslint-plugin-prettier": "^4.2.1",
63
- "husky": "^8.0.3",
64
- "lint-staged": "^11.1.2",
65
- "mariadb": "^3.0.2",
66
- "prettier": "^2.7.1",
67
- "ts-node": "^10.9.1",
68
- "tsc-watch": "^5.0.3",
69
- "tsconfig-paths": "^4.0.0",
70
- "tslint": "^6.1.3",
71
- "typescript": "^4.7.4"
72
- },
73
- "lint-staged": {
74
- "*/**/*.{js,ts,tsx}": [
75
- "npm run lint",
76
- "npm run eslint",
77
- "npm run format",
78
- "npm run build",
79
- "git add ."
80
- ]
81
- }
82
- }
1
+ {
2
+ "name": "@tomei/finance",
3
+ "version": "0.6.80",
4
+ "description": "NestJS package for finance module",
5
+ "main": "dist/index.js",
6
+ "scripts": {
7
+ "start:dev": "tsc -w",
8
+ "build": "tsc",
9
+ "prepare": "npm run build",
10
+ "format": "prettier --write \"src/**/*.ts\"",
11
+ "lint": "tslint -p tsconfig.json -c tslint.json",
12
+ "test": "jest",
13
+ "test:watch": "jest --watch",
14
+ "test:cov": "jest --coverage",
15
+ "test:e2e": "jest --config ./test/jest-e2e.json"
16
+ },
17
+ "keywords": [
18
+ "nestjs",
19
+ "tomei",
20
+ "finance"
21
+ ],
22
+ "author": "Fadhil Muhammad <fadhil@tomei.com.my>",
23
+ "license": "ISC",
24
+ "repository": {
25
+ "type": "git",
26
+ "url": "https://gitlab.com/tomei-package/finance.git"
27
+ },
28
+ "publishConfig": {
29
+ "access": "public"
30
+ },
31
+ "peerDependencies": {
32
+ "@nestjs/common": ">=9.0.5",
33
+ "@nestjs/config": ">=2.2.0",
34
+ "@nestjs/core": ">=9.0.8",
35
+ "@nestjs/platform-express": ">=9.0.8",
36
+ "@nestjs/sequelize": ">=9.0.0",
37
+ "@nestjs/swagger": ">=6.1.4",
38
+ "@tomei/activity-history": "^0.2.15",
39
+ "@tomei/config": "^0.3.10",
40
+ "@tomei/general": "^0.11.8",
41
+ "@tomei/media": "^0.7.0",
42
+ "@tomei/sso": "^0.21.13",
43
+ "axios": "^1.6.0",
44
+ "class-transformer": "^0.5.1",
45
+ "class-validator": "^0.14.0",
46
+ "cuid": "^3.0.0",
47
+ "dotenv": "^16.0.3",
48
+ "intuit-oauth": "^4.0.0",
49
+ "mariadb": "^3.0.2",
50
+ "puppeteer": "^18.1.0",
51
+ "sequelize-typescript": "^2.1.5",
52
+ "uniqid": "^5.4.0"
53
+ },
54
+ "devDependencies": {
55
+ "@types/multer": "^1.4.7",
56
+ "@types/node": "^18.0.6",
57
+ "@types/sequelize": "^4.28.14",
58
+ "@types/uniqid": "^5.3.2",
59
+ "@typescript-eslint/eslint-plugin": "^5.33.0",
60
+ "eslint": "^8.21.0",
61
+ "eslint-config-prettier": "^8.5.0",
62
+ "eslint-plugin-prettier": "^4.2.1",
63
+ "husky": "^8.0.3",
64
+ "lint-staged": "^11.1.2",
65
+ "mariadb": "^3.0.2",
66
+ "prettier": "^2.7.1",
67
+ "ts-node": "^10.9.1",
68
+ "tsc-watch": "^5.0.3",
69
+ "tsconfig-paths": "^4.0.0",
70
+ "tslint": "^6.1.3",
71
+ "typescript": "^4.7.4"
72
+ },
73
+ "lint-staged": {
74
+ "*/**/*.{js,ts,tsx}": [
75
+ "npm run lint",
76
+ "npm run eslint",
77
+ "npm run format",
78
+ "npm run build",
79
+ "git add ."
80
+ ]
81
+ }
82
+ }
@@ -1,13 +1,13 @@
1
- sonar.projectKey=all-tomei-projects_finance
2
- sonar.organization=all-tomei-projects
3
-
4
- # This is the name and version displayed in the SonarCloud UI.
5
- #sonar.projectName=Finance
6
- #sonar.projectVersion=1.0
7
-
8
-
9
- # Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
10
- #sonar.sources=.
11
-
12
- # Encoding of the source code. Default is default system encoding
1
+ sonar.projectKey=all-tomei-projects_finance
2
+ sonar.organization=all-tomei-projects
3
+
4
+ # This is the name and version displayed in the SonarCloud UI.
5
+ #sonar.projectName=Finance
6
+ #sonar.projectVersion=1.0
7
+
8
+
9
+ # Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
10
+ #sonar.sources=.
11
+
12
+ # Encoding of the source code. Default is default system encoding
13
13
  #sonar.sourceEncoding=UTF-8
@@ -1,11 +1,11 @@
1
- import { RepositoryBase, IRepositoryBase } from '@tomei/general';
2
- import AccountModel from '../models/account.entity';
3
-
4
- export class AccountRepository
5
- extends RepositoryBase<AccountModel>
6
- implements IRepositoryBase<AccountModel>
7
- {
8
- constructor() {
9
- super(AccountModel);
10
- }
11
- }
1
+ import { RepositoryBase, IRepositoryBase } from '@tomei/general';
2
+ import AccountModel from '../models/account.entity';
3
+
4
+ export class AccountRepository
5
+ extends RepositoryBase<AccountModel>
6
+ implements IRepositoryBase<AccountModel>
7
+ {
8
+ constructor() {
9
+ super(AccountModel);
10
+ }
11
+ }