@owox/backend 0.0.0 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/dist/commands/create-migration-template.js +8 -0
  2. package/dist/public/assets/index-CISA6IwH.css +1 -0
  3. package/dist/public/assets/index-xNsUEA9g.js +550 -0
  4. package/dist/public/index.html +2 -2
  5. package/dist/{app.module.js → src/app.module.js} +2 -5
  6. package/dist/src/common/schemas/google-service-account-key.schema.js +33 -0
  7. package/dist/src/common/zod/zod-transformer.js +14 -0
  8. package/dist/src/config/data-source-options.config.js +49 -0
  9. package/dist/{config → src/config}/express-static.config.js +7 -3
  10. package/dist/src/config/get-sqlite-database-path.js +36 -0
  11. package/dist/src/config/migrations.config.js +30 -0
  12. package/dist/src/data-marts/connector-types/connector-definition.js +11 -0
  13. package/dist/src/data-marts/connector-types/connector-fields-schema.js +18 -0
  14. package/dist/src/data-marts/connector-types/connector-specification.js +20 -0
  15. package/dist/src/data-marts/controllers/connector.controller.js +79 -0
  16. package/dist/src/data-marts/controllers/data-destination.controller.js +124 -0
  17. package/dist/{data-marts → src/data-marts}/controllers/data-mart.controller.js +20 -2
  18. package/dist/src/data-marts/controllers/report.controller.js +159 -0
  19. package/dist/src/data-marts/controllers/spec/connector.api.js +20 -0
  20. package/dist/src/data-marts/controllers/spec/data-destination.api.js +28 -0
  21. package/dist/{data-marts → src/data-marts}/controllers/spec/data-mart.api.js +4 -0
  22. package/dist/src/data-marts/controllers/spec/report.api.js +55 -0
  23. package/dist/src/data-marts/data-destination-types/data-destination-config.guards.js +13 -0
  24. package/dist/src/data-marts/data-destination-types/data-destination-config.type.js +7 -0
  25. package/dist/src/data-marts/data-destination-types/data-destination-credentials.guards.js +13 -0
  26. package/dist/src/data-marts/data-destination-types/data-destination-credentials.type.js +9 -0
  27. package/dist/src/data-marts/data-destination-types/data-destination-facades.js +10 -0
  28. package/dist/src/data-marts/data-destination-types/data-destination-providers.js +40 -0
  29. package/dist/src/data-marts/data-destination-types/enums/data-destination-type.enum.js +17 -0
  30. package/dist/src/data-marts/data-destination-types/facades/data-destination-access-validator.facade.js +40 -0
  31. package/dist/{data-marts/data-storage-types/facades/data-storage-title.facade.js → src/data-marts/data-destination-types/facades/data-destination-credentials-validator.facade.js} +13 -13
  32. package/dist/{data-marts/data-storage-types/athena/services/athena-title.generator.js → src/data-marts/data-destination-types/google-sheets/adapters/google-sheets-api-adapter.factory.js} +9 -12
  33. package/dist/src/data-marts/data-destination-types/google-sheets/adapters/google-sheets-api.adapter.js +104 -0
  34. package/dist/src/data-marts/data-destination-types/google-sheets/schemas/google-sheets-config.schema.js +11 -0
  35. package/dist/src/data-marts/data-destination-types/google-sheets/schemas/google-sheets-credentials.schema.js +13 -0
  36. package/dist/src/data-marts/data-destination-types/google-sheets/services/google-sheets-access-validator.js +59 -0
  37. package/dist/src/data-marts/data-destination-types/google-sheets/services/google-sheets-credentials-validator.js +45 -0
  38. package/dist/src/data-marts/data-destination-types/google-sheets/services/google-sheets-report-writer.js +158 -0
  39. package/dist/src/data-marts/data-destination-types/google-sheets/services/sheet-formatters/sheet-header-formatter.js +54 -0
  40. package/dist/src/data-marts/data-destination-types/google-sheets/services/sheet-formatters/sheet-metadata-formatter.js +60 -0
  41. package/dist/src/data-marts/data-destination-types/interfaces/data-destination-access-validator.interface.js +17 -0
  42. package/dist/src/data-marts/data-destination-types/interfaces/data-destination-credentials-validator.interface.js +15 -0
  43. package/dist/src/data-marts/data-destination-types/interfaces/data-destination-report-writer.interface.js +3 -0
  44. package/dist/src/data-marts/data-marts.module.js +127 -0
  45. package/dist/{data-marts/data-storage-types/bigquery/services/bigquery-title.generator.js → src/data-marts/data-storage-types/athena/adapters/athena-api-adapter.factory.js} +9 -12
  46. package/dist/src/data-marts/data-storage-types/athena/adapters/athena-api.adapter.js +91 -0
  47. package/dist/src/data-marts/data-storage-types/athena/adapters/s3-api-adapter.factory.js +21 -0
  48. package/dist/src/data-marts/data-storage-types/athena/adapters/s3-api.adapter.js +53 -0
  49. package/dist/src/data-marts/data-storage-types/athena/services/athena-report-reader.service.js +158 -0
  50. package/dist/src/data-marts/data-storage-types/bigquery/adapters/bigquery-api-adapter.factory.js +21 -0
  51. package/dist/src/data-marts/data-storage-types/bigquery/adapters/bigquery-api.adapter.js +36 -0
  52. package/dist/src/data-marts/data-storage-types/bigquery/schemas/bigquery-credentials.schema.js +6 -0
  53. package/dist/src/data-marts/data-storage-types/bigquery/services/bigquery-report-reader.service.js +132 -0
  54. package/dist/src/data-marts/data-storage-types/data-storage-config.guards.js +13 -0
  55. package/dist/src/data-marts/data-storage-types/data-storage-credentials.guards.js +13 -0
  56. package/dist/src/data-marts/data-storage-types/data-storage-credentials.type.js +3 -0
  57. package/dist/src/data-marts/data-storage-types/data-storage-facades.js +6 -0
  58. package/dist/src/data-marts/data-storage-types/data-storage-providers.js +32 -0
  59. package/dist/src/data-marts/data-storage-types/interfaces/data-storage-report-reader.interface.js +3 -0
  60. package/dist/src/data-marts/dto/domain/create-data-destination.command.js +17 -0
  61. package/dist/src/data-marts/dto/domain/create-report.command.js +21 -0
  62. package/dist/src/data-marts/dto/domain/data-destination.dto.js +23 -0
  63. package/dist/src/data-marts/dto/domain/delete-data-destination.command.js +13 -0
  64. package/dist/src/data-marts/dto/domain/get-data-destination.command.js +13 -0
  65. package/dist/src/data-marts/dto/domain/get-report.command.js +15 -0
  66. package/dist/src/data-marts/dto/domain/list-data-destinations.command.js +11 -0
  67. package/dist/src/data-marts/dto/domain/list-reports-by-data-mart.command.js +15 -0
  68. package/dist/src/data-marts/dto/domain/list-reports-by-project.command.js +13 -0
  69. package/dist/src/data-marts/dto/domain/report-data-batch.dto.js +13 -0
  70. package/dist/src/data-marts/dto/domain/report-data-description.dto.js +13 -0
  71. package/dist/src/data-marts/dto/domain/report.dto.js +31 -0
  72. package/dist/src/data-marts/dto/domain/run-data-mart.command.js +15 -0
  73. package/dist/src/data-marts/dto/domain/run-report.command.js +3 -0
  74. package/dist/src/data-marts/dto/domain/update-data-destination.command.js +17 -0
  75. package/dist/src/data-marts/dto/domain/update-report.command.js +21 -0
  76. package/dist/src/data-marts/dto/presentation/connector-definition-response-api.dto.js +37 -0
  77. package/dist/src/data-marts/dto/presentation/connector-fields-response-api.dto.js +60 -0
  78. package/dist/src/data-marts/dto/presentation/connector-specification-response-api.dto.js +65 -0
  79. package/dist/src/data-marts/dto/presentation/create-data-destination-api.dto.js +42 -0
  80. package/dist/src/data-marts/dto/presentation/create-report-request-api.dto.js +46 -0
  81. package/dist/src/data-marts/dto/presentation/data-destination-response-api.dto.js +57 -0
  82. package/dist/src/data-marts/dto/presentation/report-response-api.dto.js +75 -0
  83. package/dist/src/data-marts/dto/presentation/update-data-destination-api.dto.js +35 -0
  84. package/dist/src/data-marts/dto/presentation/update-report-request-api.dto.js +39 -0
  85. package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/connector-definition.schema.js +23 -0
  86. package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/data-mart-definition.guards.js +23 -0
  87. package/dist/src/data-marts/entities/data-destination.entity.js +66 -0
  88. package/dist/src/data-marts/entities/data-mart-run.entity.js +63 -0
  89. package/dist/src/data-marts/entities/report.entity.js +85 -0
  90. package/dist/{data-marts → src/data-marts}/enums/data-mart-definition-type.enum.js +1 -0
  91. package/dist/src/data-marts/enums/data-mart-run-status.enum.js +10 -0
  92. package/dist/src/data-marts/enums/report-run-status.enum.js +10 -0
  93. package/dist/src/data-marts/mappers/connector.mapper.js +54 -0
  94. package/dist/src/data-marts/mappers/data-destination.mapper.js +58 -0
  95. package/dist/{data-marts → src/data-marts}/mappers/data-mart.mapper.js +4 -0
  96. package/dist/{data-marts → src/data-marts}/mappers/data-storage.mapper.js +2 -6
  97. package/dist/src/data-marts/mappers/report.mapper.js +81 -0
  98. package/dist/src/data-marts/services/connector-execution.service.js +190 -0
  99. package/dist/src/data-marts/services/connector.service.js +79 -0
  100. package/dist/src/data-marts/services/data-destination.service.js +39 -0
  101. package/dist/src/data-marts/use-cases/connector/available-connector.service.js +29 -0
  102. package/dist/src/data-marts/use-cases/connector/fields-connector.service.js +29 -0
  103. package/dist/src/data-marts/use-cases/connector/specification-connector.service.js +29 -0
  104. package/dist/src/data-marts/use-cases/create-data-destination.service.js +51 -0
  105. package/dist/src/data-marts/use-cases/create-report.service.js +83 -0
  106. package/dist/src/data-marts/use-cases/delete-data-destination.service.js +59 -0
  107. package/dist/src/data-marts/use-cases/delete-report.service.js +46 -0
  108. package/dist/src/data-marts/use-cases/get-data-destination.service.js +34 -0
  109. package/dist/src/data-marts/use-cases/get-report.service.js +51 -0
  110. package/dist/src/data-marts/use-cases/list-data-destinations.service.js +42 -0
  111. package/dist/src/data-marts/use-cases/list-reports-by-data-mart.service.js +47 -0
  112. package/dist/src/data-marts/use-cases/list-reports-by-project.service.js +47 -0
  113. package/dist/src/data-marts/use-cases/run-data-mart.service.js +39 -0
  114. package/dist/src/data-marts/use-cases/run-report.service.js +97 -0
  115. package/dist/src/data-marts/use-cases/update-data-destination.service.js +52 -0
  116. package/dist/src/data-marts/use-cases/update-report.service.js +77 -0
  117. package/dist/src/data-source.js +11 -0
  118. package/dist/src/load-env.js +34 -0
  119. package/dist/{main.js → src/main.js} +7 -1
  120. package/dist/src/migrations/1750350724543-create-data-mart-and-data-storage-tables.js +53 -0
  121. package/dist/src/migrations/helper.js +13 -0
  122. package/package.json +28 -9
  123. package/dist/config/database.config.js +0 -31
  124. package/dist/data-marts/data-marts.module.js +0 -65
  125. package/dist/data-marts/data-storage-types/bigquery/schemas/bigquery-credentials.schema.js +0 -11
  126. package/dist/data-marts/data-storage-types/data-storage-facades.js +0 -7
  127. package/dist/data-marts/data-storage-types/data-storage-providers.js +0 -27
  128. package/dist/data-marts/data-storage-types/interfaces/data-storage-title-generator.interface.js +0 -3
  129. package/dist/public/assets/index-BZJIHZWS.js +0 -502
  130. package/dist/public/assets/index-BpZgB8Pl.css +0 -1
  131. /package/dist/{common → src/common}/authorization-context/authorization.context.js +0 -0
  132. /package/dist/{common → src/common}/common.module.js +0 -0
  133. /package/dist/{common → src/common}/exceptions/access-validation.exception.js +0 -0
  134. /package/dist/{common → src/common}/exceptions/base-exception.filter.js +0 -0
  135. /package/dist/{common → src/common}/exceptions/base.exception.js +0 -0
  136. /package/dist/{common → src/common}/exceptions/business-violation.exception.js +0 -0
  137. /package/dist/{common → src/common}/resolver/type-resolver.js +0 -0
  138. /package/dist/{common → src/common}/resolver/typed-component.resolver.js +0 -0
  139. /package/dist/{common → src/common}/scheduler/facades/scheduler-facade.impl.js +0 -0
  140. /package/dist/{common → src/common}/scheduler/scheduler.module.js +0 -0
  141. /package/dist/{common → src/common}/scheduler/services/fetchers/time-based-trigger-fetcher.factory.js +0 -0
  142. /package/dist/{common → src/common}/scheduler/services/fetchers/time-based-trigger-fetcher.service.js +0 -0
  143. /package/dist/{common → src/common}/scheduler/services/graceful-shutdown.service.js +0 -0
  144. /package/dist/{common → src/common}/scheduler/services/runners/abstract-trigger-runner.service.js +0 -0
  145. /package/dist/{common → src/common}/scheduler/services/runners/direct-trigger-runner.service.js +0 -0
  146. /package/dist/{common → src/common}/scheduler/services/runners/pubsub-trigger-runner.service.js +0 -0
  147. /package/dist/{common → src/common}/scheduler/services/runners/trigger-runner.factory.js +0 -0
  148. /package/dist/{common → src/common}/scheduler/services/runners/trigger-runner.interface.js +0 -0
  149. /package/dist/{common → src/common}/scheduler/services/system-time.service.js +0 -0
  150. /package/dist/{common → src/common}/scheduler/shared/entities/scheduled-trigger.entity.js +0 -0
  151. /package/dist/{common → src/common}/scheduler/shared/entities/time-based-trigger.entity.js +0 -0
  152. /package/dist/{common → src/common}/scheduler/shared/scheduler.facade.js +0 -0
  153. /package/dist/{common → src/common}/scheduler/shared/time-based-trigger-handler.interface.js +0 -0
  154. /package/dist/{config → src/config}/global-pipes.config.js +0 -0
  155. /package/dist/{config → src/config}/swagger.config.js +0 -0
  156. /package/dist/{data-marts → src/data-marts}/controllers/data-storage.controller.js +0 -0
  157. /package/dist/{data-marts → src/data-marts}/controllers/spec/data-storage.api.js +0 -0
  158. /package/dist/{data-marts → src/data-marts}/data-storage-types/athena/schemas/athena-config.schema.js +0 -0
  159. /package/dist/{data-marts → src/data-marts}/data-storage-types/athena/schemas/athena-credentials.schema.js +0 -0
  160. /package/dist/{data-marts → src/data-marts}/data-storage-types/athena/services/athena-access.validator.js +0 -0
  161. /package/dist/{data-marts → src/data-marts}/data-storage-types/bigquery/schemas/bigquery-config.schema.js +0 -0
  162. /package/dist/{data-marts → src/data-marts}/data-storage-types/bigquery/services/bigquery-access.validator.js +0 -0
  163. /package/dist/{data-marts → src/data-marts}/data-storage-types/data-storage-config.type.js +0 -0
  164. /package/dist/{data-marts → src/data-marts}/data-storage-types/enums/data-storage-type.enum.js +0 -0
  165. /package/dist/{data-marts → src/data-marts}/data-storage-types/facades/data-storage-access.facade.js +0 -0
  166. /package/dist/{data-marts → src/data-marts}/data-storage-types/interfaces/data-storage-access-validator.interface.js +0 -0
  167. /package/dist/{data-marts → src/data-marts}/dto/domain/create-data-mart.command.js +0 -0
  168. /package/dist/{data-marts → src/data-marts}/dto/domain/create-data-storage.command.js +0 -0
  169. /package/dist/{data-marts → src/data-marts}/dto/domain/data-mart.dto.js +0 -0
  170. /package/dist/{data-marts → src/data-marts}/dto/domain/data-storage.dto.js +0 -0
  171. /package/dist/{data-marts → src/data-marts}/dto/domain/delete-data-mart.command.js +0 -0
  172. /package/dist/{data-marts → src/data-marts}/dto/domain/delete-data-storage.command.js +0 -0
  173. /package/dist/{data-marts → src/data-marts}/dto/domain/get-data-mart.command.js +0 -0
  174. /package/dist/{data-marts → src/data-marts}/dto/domain/get-data-storage.command.js +0 -0
  175. /package/dist/{data-marts → src/data-marts}/dto/domain/list-data-marts.command.js +0 -0
  176. /package/dist/{data-marts → src/data-marts}/dto/domain/list-data-storages.command.js +0 -0
  177. /package/dist/{data-marts → src/data-marts}/dto/domain/publish-data-mart.command.js +0 -0
  178. /package/dist/{data-marts → src/data-marts}/dto/domain/update-data-mart-definition.command.js +0 -0
  179. /package/dist/{data-marts → src/data-marts}/dto/domain/update-data-mart-description.command.js +0 -0
  180. /package/dist/{data-marts → src/data-marts}/dto/domain/update-data-mart-title.command.js +0 -0
  181. /package/dist/{data-marts → src/data-marts}/dto/domain/update-data-storage.command.js +0 -0
  182. /package/dist/{data-marts → src/data-marts}/dto/presentation/create-data-mart-request-api.dto.js +0 -0
  183. /package/dist/{data-marts → src/data-marts}/dto/presentation/create-data-mart-response-api.dto.js +0 -0
  184. /package/dist/{data-marts → src/data-marts}/dto/presentation/create-data-storage-api.dto.js +0 -0
  185. /package/dist/{data-marts → src/data-marts}/dto/presentation/data-mart-response-api.dto.js +0 -0
  186. /package/dist/{data-marts → src/data-marts}/dto/presentation/data-storage-list-response-api.dto.js +0 -0
  187. /package/dist/{data-marts → src/data-marts}/dto/presentation/data-storage-response-api.dto.js +0 -0
  188. /package/dist/{data-marts → src/data-marts}/dto/presentation/update-data-mart-definition-api.dto.js +0 -0
  189. /package/dist/{data-marts → src/data-marts}/dto/presentation/update-data-mart-description-api.dto.js +0 -0
  190. /package/dist/{data-marts → src/data-marts}/dto/presentation/update-data-mart-title-api.dto.js +0 -0
  191. /package/dist/{data-marts → src/data-marts}/dto/presentation/update-data-storage-api.dto.js +0 -0
  192. /package/dist/{data-marts → src/data-marts}/dto/schemas/data-mart-table-definitions/data-mart-definition.js +0 -0
  193. /package/dist/{data-marts → src/data-marts}/dto/schemas/data-mart-table-definitions/sql-definition.schema.js +0 -0
  194. /package/dist/{data-marts → src/data-marts}/dto/schemas/data-mart-table-definitions/table-definition.schema.js +0 -0
  195. /package/dist/{data-marts → src/data-marts}/dto/schemas/data-mart-table-definitions/table-pattern-definition.schema.js +0 -0
  196. /package/dist/{data-marts → src/data-marts}/dto/schemas/data-mart-table-definitions/view-definition.schema.js +0 -0
  197. /package/dist/{data-marts → src/data-marts}/entities/data-mart.entity.js +0 -0
  198. /package/dist/{data-marts → src/data-marts}/entities/data-storage.entity.js +0 -0
  199. /package/dist/{data-marts → src/data-marts}/enums/data-mart-status.enum.js +0 -0
  200. /package/dist/{data-marts → src/data-marts}/services/data-mart.service.js +0 -0
  201. /package/dist/{data-marts → src/data-marts}/services/data-storage.service.js +0 -0
  202. /package/dist/{data-marts → src/data-marts}/use-cases/create-data-mart.service.js +0 -0
  203. /package/dist/{data-marts → src/data-marts}/use-cases/create-data-storage.service.js +0 -0
  204. /package/dist/{data-marts → src/data-marts}/use-cases/delete-data-mart.service.js +0 -0
  205. /package/dist/{data-marts → src/data-marts}/use-cases/delete-data-storage.service.js +0 -0
  206. /package/dist/{data-marts → src/data-marts}/use-cases/get-data-mart.service.js +0 -0
  207. /package/dist/{data-marts → src/data-marts}/use-cases/get-data-storage.service.js +0 -0
  208. /package/dist/{data-marts → src/data-marts}/use-cases/list-data-marts.service.js +0 -0
  209. /package/dist/{data-marts → src/data-marts}/use-cases/list-data-storages.service.js +0 -0
  210. /package/dist/{data-marts → src/data-marts}/use-cases/publish-data-mart.service.js +0 -0
  211. /package/dist/{data-marts → src/data-marts}/use-cases/update-data-mart-definition.service.js +0 -0
  212. /package/dist/{data-marts → src/data-marts}/use-cases/update-data-mart-description.service.js +0 -0
  213. /package/dist/{data-marts → src/data-marts}/use-cases/update-data-mart-title.service.js +0 -0
  214. /package/dist/{data-marts → src/data-marts}/use-cases/update-data-storage.service.js +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@owox/backend",
3
- "version": "0.0.0",
3
+ "version": "0.1.0",
4
4
  "description": "OWOX Data Marts Backend - Full-stack data orchestration platform",
5
5
  "author": "OWOX",
6
6
  "license": "ELv2",
@@ -19,7 +19,7 @@
19
19
  "engines": {
20
20
  "node": ">=22.16.0"
21
21
  },
22
- "main": "./dist/main.js",
22
+ "main": "./dist/src/main.js",
23
23
  "files": [
24
24
  "dist/**/*.js",
25
25
  "dist/**/*.json",
@@ -43,18 +43,25 @@
43
43
  "start": "nest start",
44
44
  "start:dev": "nest start --watch",
45
45
  "start:debug": "nest start --debug --watch",
46
- "start:prod": "node dist/main",
46
+ "start:prod": "node dist/src/main",
47
47
  "serve": "npm run start:prod",
48
48
  "lint": "eslint . --config ./eslint.config.mjs",
49
49
  "lint:fix": "eslint . --fix --config ./eslint.config.mjs",
50
+ "lint:md": "markdownlint-cli2 --config ../../.markdownlint-cli2.mjs",
51
+ "lint:md:fix": "markdownlint-cli2 --config ../../.markdownlint-cli2.mjs --fix",
50
52
  "dev": "npm run start:dev",
51
53
  "test": "jest",
52
54
  "test:watch": "jest --watch",
53
55
  "test:cov": "jest --coverage",
54
56
  "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
55
- "test:e2e": "jest --config ./test/jest-e2e.json"
57
+ "test:e2e": "jest --config ./test/jest-e2e.json",
58
+ "migration:run": "npx typeorm-ts-node-commonjs migration:run -d ./src/data-source.ts",
59
+ "migration:revert": "npx typeorm-ts-node-commonjs migration:revert -d ./src/data-source.ts",
60
+ "migration:create-template": "ts-node commands/create-migration-template.ts"
56
61
  },
57
62
  "dependencies": {
63
+ "@aws-sdk/client-athena": "^3.839.0",
64
+ "@google-cloud/bigquery": "^8.1.0",
58
65
  "@google-cloud/pubsub": "^4.0.7",
59
66
  "@nestjs/common": "^11.0.1",
60
67
  "@nestjs/config": "^4.0.2",
@@ -65,13 +72,18 @@
65
72
  "@nestjs/typeorm": "^11.0.0",
66
73
  "class-transformer": "^0.5.1",
67
74
  "class-validator": "^0.14.2",
68
- "mysql": "^2.18.1",
75
+ "env-paths": "^3.0.0",
76
+ "googleapis": "^150.0.1",
77
+ "luxon": "^3.6.1",
78
+ "mysql2": "^3.14.1",
69
79
  "reflect-metadata": "^0.2.2",
70
80
  "rxjs": "^7.8.1",
71
81
  "sqlite3": "^5.1.7",
72
82
  "swagger-ui-express": "^5.0.1",
73
83
  "typeorm": "^0.3.24",
74
- "zod": "^3.25.64"
84
+ "zod": "^3.25.64",
85
+ "@owox/connectors": "0.1.0",
86
+ "@owox/connector-runner": "0.1.0"
75
87
  },
76
88
  "devDependencies": {
77
89
  "@nestjs/cli": "^11.0.0",
@@ -90,16 +102,23 @@
90
102
  "ts-jest": "^29.2.5",
91
103
  "ts-loader": "^9.5.2",
92
104
  "ts-node": "^10.9.2",
93
- "tsconfig-paths": "^4.2.0"
105
+ "tsconfig-paths": "^4.2.0",
106
+ "typeorm-ts-node-commonjs": "^0.3.20"
94
107
  },
95
108
  "jest": {
96
- "moduleFileExtensions": ["js", "json", "ts"],
109
+ "moduleFileExtensions": [
110
+ "js",
111
+ "json",
112
+ "ts"
113
+ ],
97
114
  "rootDir": "src",
98
115
  "testRegex": ".*\\.spec\\.ts$",
99
116
  "transform": {
100
117
  "^.+\\.(t|j)s$": "ts-jest"
101
118
  },
102
- "collectCoverageFrom": ["**/*.(t|j)s"],
119
+ "collectCoverageFrom": [
120
+ "**/*.(t|j)s"
121
+ ],
103
122
  "coverageDirectory": "../coverage",
104
123
  "testEnvironment": "node"
105
124
  }
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDatabaseConfig = getDatabaseConfig;
4
- var DbType;
5
- (function (DbType) {
6
- DbType["sqlite"] = "sqlite";
7
- DbType["mysql"] = "mysql";
8
- })(DbType || (DbType = {}));
9
- function getDatabaseConfig(config) {
10
- const type = config.get('DB_TYPE', DbType.sqlite);
11
- const dbConfigs = {
12
- [DbType.sqlite]: {
13
- type: DbType.sqlite,
14
- database: config.get('DB_NAME', 'var/sqlite/backend.db'),
15
- entities: [__dirname + '/../**/*.entity{.ts,.js}'],
16
- synchronize: true,
17
- },
18
- [DbType.mysql]: {
19
- type: DbType.mysql,
20
- host: config.get('DB_HOST'),
21
- port: config.get('DB_PORT'),
22
- username: config.get('DB_USERNAME'),
23
- password: config.get('DB_PASSWORD'),
24
- database: config.get('DB_DATABASE'),
25
- entities: [__dirname + '/../**/*.entity{.ts,.js}'],
26
- synchronize: true,
27
- },
28
- };
29
- return dbConfigs[type];
30
- }
31
- //# sourceMappingURL=database.config.js.map
@@ -1,65 +0,0 @@
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
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.DataMartsModule = void 0;
10
- const typeorm_1 = require("@nestjs/typeorm");
11
- const common_1 = require("@nestjs/common");
12
- const data_mart_controller_1 = require("./controllers/data-mart.controller");
13
- const data_storage_controller_1 = require("./controllers/data-storage.controller");
14
- const create_data_mart_service_1 = require("./use-cases/create-data-mart.service");
15
- const list_data_marts_service_1 = require("./use-cases/list-data-marts.service");
16
- const get_data_mart_service_1 = require("./use-cases/get-data-mart.service");
17
- const data_mart_mapper_1 = require("./mappers/data-mart.mapper");
18
- const data_storage_service_1 = require("./services/data-storage.service");
19
- const data_storage_mapper_1 = require("./mappers/data-storage.mapper");
20
- const get_data_storage_service_1 = require("./use-cases/get-data-storage.service");
21
- const create_data_storage_service_1 = require("./use-cases/create-data-storage.service");
22
- const update_data_storage_service_1 = require("./use-cases/update-data-storage.service");
23
- const data_mart_entity_1 = require("./entities/data-mart.entity");
24
- const data_storage_entity_1 = require("./entities/data-storage.entity");
25
- const data_storage_facades_1 = require("./data-storage-types/data-storage-facades");
26
- const data_storage_providers_1 = require("./data-storage-types/data-storage-providers");
27
- const update_data_mart_definition_service_1 = require("./use-cases/update-data-mart-definition.service");
28
- const data_mart_service_1 = require("./services/data-mart.service");
29
- const publish_data_mart_service_1 = require("./use-cases/publish-data-mart.service");
30
- const update_data_mart_description_service_1 = require("./use-cases/update-data-mart-description.service");
31
- const update_data_mart_title_service_1 = require("./use-cases/update-data-mart-title.service");
32
- const list_data_storages_service_1 = require("./use-cases/list-data-storages.service");
33
- const delete_data_storage_service_1 = require("./use-cases/delete-data-storage.service");
34
- const delete_data_mart_service_1 = require("./use-cases/delete-data-mart.service");
35
- let DataMartsModule = class DataMartsModule {
36
- };
37
- exports.DataMartsModule = DataMartsModule;
38
- exports.DataMartsModule = DataMartsModule = __decorate([
39
- (0, common_1.Module)({
40
- imports: [typeorm_1.TypeOrmModule.forFeature([data_mart_entity_1.DataMart, data_storage_entity_1.DataStorage])],
41
- controllers: [data_mart_controller_1.DataMartController, data_storage_controller_1.DataStorageController],
42
- providers: [
43
- ...data_storage_providers_1.dataStorageResolverProviders,
44
- ...data_storage_facades_1.dataStorageFacadesProviders,
45
- data_mart_service_1.DataMartService,
46
- create_data_mart_service_1.CreateDataMartService,
47
- list_data_marts_service_1.ListDataMartsService,
48
- get_data_mart_service_1.GetDataMartService,
49
- update_data_mart_definition_service_1.UpdateDataMartDefinitionService,
50
- publish_data_mart_service_1.PublishDataMartService,
51
- update_data_mart_description_service_1.UpdateDataMartDescriptionService,
52
- update_data_mart_title_service_1.UpdateDataMartTitleService,
53
- data_mart_mapper_1.DataMartMapper,
54
- data_storage_service_1.DataStorageService,
55
- data_storage_mapper_1.DataStorageMapper,
56
- list_data_storages_service_1.ListDataStoragesService,
57
- delete_data_storage_service_1.DeleteDataStorageService,
58
- delete_data_mart_service_1.DeleteDataMartService,
59
- get_data_storage_service_1.GetDataStorageService,
60
- create_data_storage_service_1.CreateDataStorageService,
61
- update_data_storage_service_1.UpdateDataStorageService,
62
- ],
63
- })
64
- ], DataMartsModule);
65
- //# sourceMappingURL=data-marts.module.js.map
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BigQueryCredentialsSchema = void 0;
4
- const zod_1 = require("zod");
5
- exports.BigQueryCredentialsSchema = zod_1.z
6
- .object({
7
- private_key: zod_1.z.string().min(1, 'private_key is required'),
8
- client_email: zod_1.z.string().min(1, 'client_email is required'),
9
- })
10
- .passthrough();
11
- //# sourceMappingURL=bigquery-credentials.schema.js.map
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dataStorageFacadesProviders = void 0;
4
- const data_storage_title_facade_1 = require("./facades/data-storage-title.facade");
5
- const data_storage_access_facade_1 = require("./facades/data-storage-access.facade");
6
- exports.dataStorageFacadesProviders = [data_storage_title_facade_1.DataStorageTitleFacade, data_storage_access_facade_1.DataStorageAccessFacade];
7
- //# sourceMappingURL=data-storage-facades.js.map
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dataStorageResolverProviders = exports.DATA_STORAGE_ACCESS_VALIDATOR_RESOLVER = exports.DATA_STORAGE_TITLE_GENERATOR_RESOLVER = void 0;
4
- const bigquery_title_generator_1 = require("./bigquery/services/bigquery-title.generator");
5
- const athena_title_generator_1 = require("./athena/services/athena-title.generator");
6
- const bigquery_access_validator_1 = require("./bigquery/services/bigquery-access.validator");
7
- const athena_access_validator_1 = require("./athena/services/athena-access.validator");
8
- const type_resolver_1 = require("../../common/resolver/type-resolver");
9
- exports.DATA_STORAGE_TITLE_GENERATOR_RESOLVER = Symbol('DATA_STORAGE_TITLE_GENERATOR_RESOLVER');
10
- exports.DATA_STORAGE_ACCESS_VALIDATOR_RESOLVER = Symbol('DATA_STORAGE_ACCESS_VALIDATOR_RESOLVER');
11
- const titleGeneratorProviders = [bigquery_title_generator_1.BigQueryTitleGenerator, athena_title_generator_1.AthenaTitleGenerator];
12
- const accessValidatorProviders = [bigquery_access_validator_1.BigQueryAccessValidator, athena_access_validator_1.AthenaAccessValidator];
13
- exports.dataStorageResolverProviders = [
14
- ...titleGeneratorProviders,
15
- ...accessValidatorProviders,
16
- {
17
- provide: exports.DATA_STORAGE_TITLE_GENERATOR_RESOLVER,
18
- useFactory: (...titleGenerators) => new type_resolver_1.TypeResolver(titleGenerators),
19
- inject: titleGeneratorProviders,
20
- },
21
- {
22
- provide: exports.DATA_STORAGE_ACCESS_VALIDATOR_RESOLVER,
23
- useFactory: (...validators) => new type_resolver_1.TypeResolver(validators),
24
- inject: accessValidatorProviders,
25
- },
26
- ];
27
- //# sourceMappingURL=data-storage-providers.js.map
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data-storage-title-generator.interface.js.map