@l-v-yonsama/multi-platform-database-drivers 1.2.0 → 2.0.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 (315) hide show
  1. package/README.md +40 -0
  2. package/built/src/drivers/Auth0Driver.js +9 -9
  3. package/built/src/drivers/Auth0Driver.js.map +1 -1
  4. package/built/src/drivers/AwsDriver.d.ts +6 -0
  5. package/built/src/drivers/AwsDriver.js +87 -7
  6. package/built/src/drivers/AwsDriver.js.map +1 -1
  7. package/built/src/drivers/BaseDriver.d.ts +1 -1
  8. package/built/src/drivers/BaseDriver.js +4 -6
  9. package/built/src/drivers/BaseDriver.js.map +1 -1
  10. package/built/src/drivers/DBDriverResolver.js.map +1 -1
  11. package/built/src/drivers/DBError.js.map +1 -1
  12. package/built/src/drivers/KeycloakDriver.d.ts +2 -3
  13. package/built/src/drivers/KeycloakDriver.js +27 -262
  14. package/built/src/drivers/KeycloakDriver.js.map +1 -1
  15. package/built/src/drivers/MemcacheDriver.d.ts +0 -1
  16. package/built/src/drivers/MemcacheDriver.js +5 -5
  17. package/built/src/drivers/MemcacheDriver.js.map +1 -1
  18. package/built/src/drivers/MqttDriver.d.ts +0 -1
  19. package/built/src/drivers/MqttDriver.js +4 -4
  20. package/built/src/drivers/MqttDriver.js.map +1 -1
  21. package/built/src/drivers/MySQLDriver.js +12 -12
  22. package/built/src/drivers/MySQLDriver.js.map +1 -1
  23. package/built/src/drivers/OracleDriver.js +13 -13
  24. package/built/src/drivers/OracleDriver.js.map +1 -1
  25. package/built/src/drivers/PostgresDriver.js +22 -2
  26. package/built/src/drivers/PostgresDriver.js.map +1 -1
  27. package/built/src/drivers/RDSBaseDriver.d.ts +1 -1
  28. package/built/src/drivers/RDSBaseDriver.js +6 -6
  29. package/built/src/drivers/RDSBaseDriver.js.map +1 -1
  30. package/built/src/drivers/RedisDriver.js +2 -2
  31. package/built/src/drivers/RedisDriver.js.map +1 -1
  32. package/built/src/drivers/SQLServerDriver.js +7 -7
  33. package/built/src/drivers/SQLServerDriver.js.map +1 -1
  34. package/built/src/drivers/SQLiteDriver.d.ts +1 -1
  35. package/built/src/drivers/SQLiteDriver.js +7 -7
  36. package/built/src/drivers/SQLiteDriver.js.map +1 -1
  37. package/built/src/drivers/aws/AwsCloudFormationServiceClient.d.ts +35 -0
  38. package/built/src/drivers/aws/AwsCloudFormationServiceClient.js +197 -0
  39. package/built/src/drivers/aws/AwsCloudFormationServiceClient.js.map +1 -0
  40. package/built/src/drivers/aws/AwsCloudwatchServiceClient.js +4 -7
  41. package/built/src/drivers/aws/AwsCloudwatchServiceClient.js.map +1 -1
  42. package/built/src/drivers/aws/AwsDynamoServiceClient.js +8 -11
  43. package/built/src/drivers/aws/AwsDynamoServiceClient.js.map +1 -1
  44. package/built/src/drivers/aws/AwsS3ServiceClient.js +28 -30
  45. package/built/src/drivers/aws/AwsS3ServiceClient.js.map +1 -1
  46. package/built/src/drivers/aws/AwsSESServiceClient.js +23 -0
  47. package/built/src/drivers/aws/AwsSESServiceClient.js.map +1 -1
  48. package/built/src/drivers/aws/AwsSQSServiceClient.d.ts +1 -0
  49. package/built/src/drivers/aws/AwsSQSServiceClient.js +40 -8
  50. package/built/src/drivers/aws/AwsSQSServiceClient.js.map +1 -1
  51. package/built/src/drivers/aws/AwsSecretsManagerServiceClient.d.ts +19 -0
  52. package/built/src/drivers/aws/AwsSecretsManagerServiceClient.js +118 -0
  53. package/built/src/drivers/aws/AwsSecretsManagerServiceClient.js.map +1 -0
  54. package/built/src/drivers/aws/AwsServiceClient.d.ts +1 -0
  55. package/built/src/drivers/aws/AwsServiceClient.js +13 -2
  56. package/built/src/drivers/aws/AwsServiceClient.js.map +1 -1
  57. package/built/src/drivers/aws/AwsSsmServiceClient.d.ts +19 -0
  58. package/built/src/drivers/aws/AwsSsmServiceClient.js +116 -0
  59. package/built/src/drivers/aws/AwsSsmServiceClient.js.map +1 -0
  60. package/built/src/drivers/aws/index.d.ts +3 -0
  61. package/built/src/drivers/aws/index.js +3 -0
  62. package/built/src/drivers/aws/index.js.map +1 -1
  63. package/built/src/drivers/keycloak/resourceTreeBuilder.d.ts +5 -0
  64. package/built/src/drivers/keycloak/resourceTreeBuilder.js +37 -0
  65. package/built/src/drivers/keycloak/resourceTreeBuilder.js.map +1 -0
  66. package/built/src/drivers/keycloak/scanResultBuilder.d.ts +8 -0
  67. package/built/src/drivers/keycloak/scanResultBuilder.js +212 -0
  68. package/built/src/drivers/keycloak/scanResultBuilder.js.map +1 -0
  69. package/built/src/drivers/memcache/helper.d.ts +0 -1
  70. package/built/src/drivers/memcache/helper.js +13 -14
  71. package/built/src/drivers/memcache/helper.js.map +1 -1
  72. package/built/src/helpers/ProposalHelper.js +3 -3
  73. package/built/src/helpers/ProposalHelper.js.map +1 -1
  74. package/built/src/helpers/RdhRecordRuleHelper.js.map +1 -1
  75. package/built/src/helpers/RuleEngine.d.ts +5 -5
  76. package/built/src/helpers/RuleEngine.js +14 -14
  77. package/built/src/helpers/RuleEngine.js.map +1 -1
  78. package/built/src/helpers/SQLHelper.d.ts +8 -115
  79. package/built/src/helpers/SQLHelper.js +35 -1084
  80. package/built/src/helpers/SQLHelper.js.map +1 -1
  81. package/built/src/helpers/prompts/Auth0PromptHelper.js.map +1 -1
  82. package/built/src/helpers/prompts/AwsPromptHelper.js +93 -2
  83. package/built/src/helpers/prompts/AwsPromptHelper.js.map +1 -1
  84. package/built/src/helpers/prompts/KeycloakPromptHelper.js.map +1 -1
  85. package/built/src/helpers/prompts/MemcachePromptHelper.js.map +1 -1
  86. package/built/src/helpers/prompts/MqttPromptHelper.js.map +1 -1
  87. package/built/src/helpers/prompts/RdsPromptHelper.js +1 -1
  88. package/built/src/helpers/prompts/RdsPromptHelper.js.map +1 -1
  89. package/built/src/helpers/prompts/RedisPromptHelper.js.map +1 -1
  90. package/built/src/helpers/prompts/SchemaPromptHelper.js.map +1 -1
  91. package/built/src/helpers/sql/dynamoConversion.d.ts +2 -0
  92. package/built/src/helpers/sql/dynamoConversion.js +27 -0
  93. package/built/src/helpers/sql/dynamoConversion.js.map +1 -0
  94. package/built/src/helpers/sql/formatQuery.d.ts +6 -0
  95. package/built/src/helpers/sql/formatQuery.js +45 -0
  96. package/built/src/helpers/sql/formatQuery.js.map +1 -0
  97. package/built/src/helpers/sql/mutationQuery.d.ts +54 -0
  98. package/built/src/helpers/sql/mutationQuery.js +250 -0
  99. package/built/src/helpers/sql/mutationQuery.js.map +1 -0
  100. package/built/src/helpers/sql/parameterNormalizer.d.ts +16 -0
  101. package/built/src/helpers/sql/parameterNormalizer.js +166 -0
  102. package/built/src/helpers/sql/parameterNormalizer.js.map +1 -0
  103. package/built/src/helpers/sql/queryParser.d.ts +6 -0
  104. package/built/src/helpers/sql/queryParser.js +239 -0
  105. package/built/src/helpers/sql/queryParser.js.map +1 -0
  106. package/built/src/helpers/sql/quote.d.ts +17 -0
  107. package/built/src/helpers/sql/quote.js +140 -0
  108. package/built/src/helpers/sql/quote.js.map +1 -0
  109. package/built/src/helpers/sql/selectQuery.d.ts +24 -0
  110. package/built/src/helpers/sql/selectQuery.js +262 -0
  111. package/built/src/helpers/sql/selectQuery.js.map +1 -0
  112. package/built/src/resource/aws.d.ts +106 -0
  113. package/built/src/resource/aws.js +219 -0
  114. package/built/src/resource/aws.js.map +1 -0
  115. package/built/src/resource/base.d.ts +28 -0
  116. package/built/src/resource/base.js +76 -0
  117. package/built/src/resource/base.js.map +1 -0
  118. package/built/src/resource/connection.d.ts +35 -0
  119. package/built/src/resource/connection.js +52 -0
  120. package/built/src/resource/connection.js.map +1 -0
  121. package/built/src/resource/fromJson.d.ts +2 -0
  122. package/built/src/resource/fromJson.js +125 -0
  123. package/built/src/resource/fromJson.js.map +1 -0
  124. package/built/src/resource/iam.d.ts +70 -0
  125. package/built/src/resource/iam.js +175 -0
  126. package/built/src/resource/iam.js.map +1 -0
  127. package/built/src/resource/index.d.ts +8 -1
  128. package/built/src/resource/index.js +8 -1
  129. package/built/src/resource/index.js.map +1 -1
  130. package/built/src/resource/keyValue.d.ts +85 -0
  131. package/built/src/resource/keyValue.js +74 -0
  132. package/built/src/resource/keyValue.js.map +1 -0
  133. package/built/src/resource/rdb.d.ts +49 -0
  134. package/built/src/resource/rdb.js +155 -0
  135. package/built/src/resource/rdb.js.map +1 -0
  136. package/built/src/resource/types.d.ts +18 -0
  137. package/built/src/resource/types.js +3 -0
  138. package/built/src/resource/types.js.map +1 -0
  139. package/built/src/types/drivers/Keycloak.js +1 -1
  140. package/built/src/types/drivers/Keycloak.js.map +1 -1
  141. package/built/src/types/drivers/MemcachedParams.d.ts +0 -1
  142. package/built/src/types/drivers/ScanParams.d.ts +15 -1
  143. package/built/src/types/helpers/index.js +1 -1
  144. package/built/src/types/helpers/index.js.map +1 -1
  145. package/built/src/types/resource/AwsCfnStackAttributes.d.ts +164 -0
  146. package/built/src/types/resource/AwsCfnStackAttributes.js +56 -0
  147. package/built/src/types/resource/AwsCfnStackAttributes.js.map +1 -0
  148. package/built/src/types/resource/AwsSESIdentityAttributes.d.ts +17 -0
  149. package/built/src/types/resource/AwsSESIdentityAttributes.js +3 -0
  150. package/built/src/types/resource/AwsSESIdentityAttributes.js.map +1 -0
  151. package/built/src/types/resource/AwsSQSAttributes.d.ts +1 -0
  152. package/built/src/types/resource/AwsSecretAttributes.d.ts +6 -0
  153. package/built/src/types/resource/AwsSecretAttributes.js +3 -0
  154. package/built/src/types/resource/AwsSecretAttributes.js.map +1 -0
  155. package/built/src/types/resource/AwsServiceType.d.ts +4 -1
  156. package/built/src/types/resource/AwsServiceType.js +3 -0
  157. package/built/src/types/resource/AwsServiceType.js.map +1 -1
  158. package/built/src/types/resource/AwsSsmParameterAttributes.d.ts +12 -0
  159. package/built/src/types/resource/AwsSsmParameterAttributes.js +3 -0
  160. package/built/src/types/resource/AwsSsmParameterAttributes.js.map +1 -0
  161. package/built/src/types/resource/ConnectionSetting.d.ts +2 -2
  162. package/built/src/types/resource/ConnectionSetting.js.map +1 -1
  163. package/built/src/types/resource/MySQLColumnType.js +2 -2
  164. package/built/src/types/resource/MySQLColumnType.js.map +1 -1
  165. package/built/src/types/resource/OracleColumnType.js +2 -2
  166. package/built/src/types/resource/OracleColumnType.js.map +1 -1
  167. package/built/src/types/resource/PartiQLAttrType.js.map +1 -1
  168. package/built/src/types/resource/PostgresColumnType.js +2 -2
  169. package/built/src/types/resource/PostgresColumnType.js.map +1 -1
  170. package/built/src/types/resource/ResourceType.d.ts +5 -0
  171. package/built/src/types/resource/ResourceType.js +5 -0
  172. package/built/src/types/resource/ResourceType.js.map +1 -1
  173. package/built/src/types/resource/SQLServerColumnType.js +2 -2
  174. package/built/src/types/resource/SQLServerColumnType.js.map +1 -1
  175. package/built/src/types/resource/index.d.ts +4 -0
  176. package/built/src/types/resource/index.js +4 -0
  177. package/built/src/types/resource/index.js.map +1 -1
  178. package/built/src/types/utils/index.js +2 -2
  179. package/built/src/types/utils/index.js.map +1 -1
  180. package/built/src/utils/base.js +1 -1
  181. package/built/src/utils/base.js.map +1 -1
  182. package/built/src/utils/cfn/applicationDiagram.d.ts +2 -0
  183. package/built/src/utils/cfn/applicationDiagram.js +174 -0
  184. package/built/src/utils/cfn/applicationDiagram.js.map +1 -0
  185. package/built/src/utils/cfn/applicationRelations.d.ts +28 -0
  186. package/built/src/utils/cfn/applicationRelations.js +430 -0
  187. package/built/src/utils/cfn/applicationRelations.js.map +1 -0
  188. package/built/src/utils/cfn/cfnDependencyGraphDiagram.d.ts +2 -0
  189. package/built/src/utils/cfn/cfnDependencyGraphDiagram.js +198 -0
  190. package/built/src/utils/cfn/cfnDependencyGraphDiagram.js.map +1 -0
  191. package/built/src/utils/cfn/deploymentTopology.d.ts +132 -0
  192. package/built/src/utils/cfn/deploymentTopology.js +637 -0
  193. package/built/src/utils/cfn/deploymentTopology.js.map +1 -0
  194. package/built/src/utils/cfn/diagramFileModel.d.ts +2 -0
  195. package/built/src/utils/cfn/diagramFileModel.js +178 -0
  196. package/built/src/utils/cfn/diagramFileModel.js.map +1 -0
  197. package/built/src/utils/cfn/drawio/cfnDependencyGraphDiagram.d.ts +3 -0
  198. package/built/src/utils/cfn/drawio/cfnDependencyGraphDiagram.js +174 -0
  199. package/built/src/utils/cfn/drawio/cfnDependencyGraphDiagram.js.map +1 -0
  200. package/built/src/utils/cfn/drawio/commonCells.d.ts +22 -0
  201. package/built/src/utils/cfn/drawio/commonCells.js +83 -0
  202. package/built/src/utils/cfn/drawio/commonCells.js.map +1 -0
  203. package/built/src/utils/cfn/drawio/edgeRouting.d.ts +34 -0
  204. package/built/src/utils/cfn/drawio/edgeRouting.js +77 -0
  205. package/built/src/utils/cfn/drawio/edgeRouting.js.map +1 -0
  206. package/built/src/utils/cfn/drawio/multiAzInfrastructureDiagram.d.ts +3 -0
  207. package/built/src/utils/cfn/drawio/multiAzInfrastructureDiagram.js +812 -0
  208. package/built/src/utils/cfn/drawio/multiAzInfrastructureDiagram.js.map +1 -0
  209. package/built/src/utils/cfn/drawioApplicationDiagram.d.ts +3 -0
  210. package/built/src/utils/cfn/drawioApplicationDiagram.js +455 -0
  211. package/built/src/utils/cfn/drawioApplicationDiagram.js.map +1 -0
  212. package/built/src/utils/cfn/drawioInfrastructureDiagrams.d.ts +2 -0
  213. package/built/src/utils/cfn/drawioInfrastructureDiagrams.js +10 -0
  214. package/built/src/utils/cfn/drawioInfrastructureDiagrams.js.map +1 -0
  215. package/built/src/utils/cfn/drawioXml.d.ts +1 -0
  216. package/built/src/utils/cfn/drawioXml.js +11 -0
  217. package/built/src/utils/cfn/drawioXml.js.map +1 -0
  218. package/built/src/utils/cfn/generateDiagram.d.ts +2 -0
  219. package/built/src/utils/cfn/generateDiagram.js +22 -0
  220. package/built/src/utils/cfn/generateDiagram.js.map +1 -0
  221. package/built/src/utils/cfn/icons.d.ts +1 -0
  222. package/built/src/utils/cfn/icons.js +60 -0
  223. package/built/src/utils/cfn/icons.js.map +1 -0
  224. package/built/src/utils/cfn/index.d.ts +11 -0
  225. package/built/src/utils/cfn/index.js +34 -0
  226. package/built/src/utils/cfn/index.js.map +1 -0
  227. package/built/src/utils/cfn/intrinsics.d.ts +12 -0
  228. package/built/src/utils/cfn/intrinsics.js +158 -0
  229. package/built/src/utils/cfn/intrinsics.js.map +1 -0
  230. package/built/src/utils/cfn/mermaidFlowchart.d.ts +3 -0
  231. package/built/src/utils/cfn/mermaidFlowchart.js +14 -0
  232. package/built/src/utils/cfn/mermaidFlowchart.js.map +1 -0
  233. package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtection.d.ts +27 -0
  234. package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtection.js +409 -0
  235. package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtection.js.map +1 -0
  236. package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtectionDiagram.d.ts +2 -0
  237. package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtectionDiagram.js +286 -0
  238. package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtectionDiagram.js.map +1 -0
  239. package/built/src/utils/cfn/naming.d.ts +7 -0
  240. package/built/src/utils/cfn/naming.js +33 -0
  241. package/built/src/utils/cfn/naming.js.map +1 -0
  242. package/built/src/utils/cfn/resourceDependencies.d.ts +2 -0
  243. package/built/src/utils/cfn/resourceDependencies.js +33 -0
  244. package/built/src/utils/cfn/resourceDependencies.js.map +1 -0
  245. package/built/src/utils/cfn/templateParsing.d.ts +3 -0
  246. package/built/src/utils/cfn/templateParsing.js +58 -0
  247. package/built/src/utils/cfn/templateParsing.js.map +1 -0
  248. package/built/src/utils/cfn/viewpoints.d.ts +3 -0
  249. package/built/src/utils/cfn/viewpoints.js +122 -0
  250. package/built/src/utils/cfn/viewpoints.js.map +1 -0
  251. package/built/src/utils/csv.js.map +1 -1
  252. package/built/src/utils/dbType.js.map +1 -1
  253. package/built/src/utils/diagramLayout/elkLayoutEngine.d.ts +3 -0
  254. package/built/src/utils/diagramLayout/elkLayoutEngine.js +199 -0
  255. package/built/src/utils/diagramLayout/elkLayoutEngine.js.map +1 -0
  256. package/built/src/utils/diagramLayout/index.d.ts +4 -0
  257. package/built/src/utils/diagramLayout/index.js +13 -0
  258. package/built/src/utils/diagramLayout/index.js.map +1 -0
  259. package/built/src/utils/diagramLayout/normalizeLayout.d.ts +33 -0
  260. package/built/src/utils/diagramLayout/normalizeLayout.js +116 -0
  261. package/built/src/utils/diagramLayout/normalizeLayout.js.map +1 -0
  262. package/built/src/utils/diagramLayout/types.d.ts +64 -0
  263. package/built/src/utils/diagramLayout/types.js +3 -0
  264. package/built/src/utils/diagramLayout/types.js.map +1 -0
  265. package/built/src/utils/drawio/drawioXml.d.ts +24 -0
  266. package/built/src/utils/drawio/drawioXml.js +47 -0
  267. package/built/src/utils/drawio/drawioXml.js.map +1 -0
  268. package/built/src/utils/drawio/index.d.ts +2 -0
  269. package/built/src/utils/drawio/index.js +10 -0
  270. package/built/src/utils/drawio/index.js.map +1 -0
  271. package/built/src/utils/driverUtil.d.ts +1 -1
  272. package/built/src/utils/driverUtil.js.map +1 -1
  273. package/built/src/utils/er/erDiagramDrawioGenerator.d.ts +26 -0
  274. package/built/src/utils/er/erDiagramDrawioGenerator.js +99 -0
  275. package/built/src/utils/er/erDiagramDrawioGenerator.js.map +1 -0
  276. package/built/src/utils/er/erDiagramDrawioGeneratorAuto.d.ts +2 -0
  277. package/built/src/utils/er/erDiagramDrawioGeneratorAuto.js +103 -0
  278. package/built/src/utils/er/erDiagramDrawioGeneratorAuto.js.map +1 -0
  279. package/built/src/utils/er/erDiagramGenerator.d.ts +7 -0
  280. package/built/src/utils/er/erDiagramGenerator.js +321 -0
  281. package/built/src/utils/er/erDiagramGenerator.js.map +1 -0
  282. package/built/src/utils/er/index.d.ts +4 -0
  283. package/built/src/utils/er/index.js +13 -0
  284. package/built/src/utils/er/index.js.map +1 -0
  285. package/built/src/utils/er/types.d.ts +31 -0
  286. package/built/src/utils/er/types.js +3 -0
  287. package/built/src/utils/er/types.js.map +1 -0
  288. package/built/src/utils/index.d.ts +2 -0
  289. package/built/src/utils/index.js +2 -0
  290. package/built/src/utils/index.js.map +1 -1
  291. package/built/src/utils/log/LogParser.js.map +1 -1
  292. package/built/src/utils/log/buildSqlExecutions.js +3 -4
  293. package/built/src/utils/log/buildSqlExecutions.js.map +1 -1
  294. package/built/src/utils/log/classify/classifyEvent.js +2 -3
  295. package/built/src/utils/log/classify/classifyEvent.js.map +1 -1
  296. package/built/src/utils/log/detect/presetDetector.js +4 -5
  297. package/built/src/utils/log/detect/presetDetector.js.map +1 -1
  298. package/built/src/utils/log/extract/runExtractors.js +1 -2
  299. package/built/src/utils/log/extract/runExtractors.js.map +1 -1
  300. package/built/src/utils/log/logSummary.js +5 -5
  301. package/built/src/utils/log/logSummary.js.map +1 -1
  302. package/built/src/utils/log/pattern/logEventPattern.js +2 -3
  303. package/built/src/utils/log/pattern/logEventPattern.js.map +1 -1
  304. package/built/src/utils/log/rdh/convertExtractedSqlRdhResult.js +2 -3
  305. package/built/src/utils/log/rdh/convertExtractedSqlRdhResult.js.map +1 -1
  306. package/built/src/utils/log/split/splitLogEvents.js +1 -2
  307. package/built/src/utils/log/split/splitLogEvents.js.map +1 -1
  308. package/built/src/utils/log/sql/removeSqlComments.js +2 -3
  309. package/built/src/utils/log/sql/removeSqlComments.js.map +1 -1
  310. package/built/src/utils/log/validator.js +8 -5
  311. package/built/src/utils/log/validator.js.map +1 -1
  312. package/package.json +21 -9
  313. package/built/src/resource/DbResource.d.ts +0 -355
  314. package/built/src/resource/DbResource.js +0 -755
  315. package/built/src/resource/DbResource.js.map +0 -1
@@ -1,755 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DbS3Owner = exports.DbLogStream = exports.DbLogGroup = exports.DbSQSQueue = exports.DbSubscription = exports.DbS3Bucket = exports.DbDynamoTableColumn = exports.DbDynamoTable = exports.AwsDbResource = exports.DbColumn = exports.DbKey = exports.DbTable = exports.DbSchema = exports.IamRole = exports.IamOrganization = exports.IamGroup = exports.IamUser = exports.IamClient = exports.IamRealm = exports.Auth0Database = exports.KeycloakDatabase = exports.MqttDatabase = exports.MemcacheDatabase = exports.RedisDatabase = exports.AwsDatabase = exports.RdsDatabase = exports.DbConnection = exports.DbResource = exports.fromJson = void 0;
4
- const tslib_1 = require("tslib");
5
- const rdh_1 = require("@l-v-yonsama/rdh");
6
- const bytes_1 = require("bytes");
7
- const short_unique_id_1 = tslib_1.__importDefault(require("short-unique-id"));
8
- const types_1 = require("../types");
9
- const uid = new short_unique_id_1.default();
10
- function fromJson(json) {
11
- const resourceType = json.resourceType;
12
- const { name } = json;
13
- let res;
14
- switch (resourceType) {
15
- case types_1.ResourceType.Connection:
16
- res = Object.assign(new DbConnection(name), json);
17
- break;
18
- case types_1.ResourceType.RdsDatabase:
19
- res = Object.assign(new RdsDatabase(name), json);
20
- break;
21
- case types_1.ResourceType.AwsDatabase:
22
- res = Object.assign(new AwsDatabase(name, (0, rdh_1.castTo)(json).serviceType), json);
23
- break;
24
- case types_1.ResourceType.RedisDatabase:
25
- res = Object.assign(new RedisDatabase(name, (0, rdh_1.castTo)(json).numOfKeys), json);
26
- break;
27
- case types_1.ResourceType.MemcacheDatabase:
28
- res = Object.assign(new MemcacheDatabase(name), json);
29
- break;
30
- case types_1.ResourceType.MqttDatabase:
31
- res = Object.assign(new MqttDatabase(name), json);
32
- break;
33
- case types_1.ResourceType.Subscription:
34
- res = Object.assign(new DbSubscription(name, (0, rdh_1.castTo)(json).qos), json);
35
- break;
36
- case types_1.ResourceType.Schema:
37
- res = Object.assign(new DbSchema(name), json);
38
- break;
39
- case types_1.ResourceType.Table:
40
- res = Object.assign(new DbTable(name, (0, rdh_1.castTo)(json).tableType), json);
41
- break;
42
- case types_1.ResourceType.Column:
43
- res = Object.assign(new DbColumn(name, (0, rdh_1.castTo)(json).colType, null), json);
44
- break;
45
- case types_1.ResourceType.Key:
46
- res = Object.assign(new DbKey(name, json.params), json);
47
- break;
48
- case types_1.ResourceType.Bucket:
49
- res = Object.assign(new DbS3Bucket(name), json);
50
- break;
51
- case types_1.ResourceType.Queue:
52
- res = Object.assign(new DbSQSQueue(name, (0, rdh_1.castTo)(json).url, (0, rdh_1.castTo)(json).attr), json);
53
- break;
54
- case types_1.ResourceType.Owner:
55
- res = Object.assign(new DbS3Owner(json.id, name), json);
56
- break;
57
- case types_1.ResourceType.LogGroup:
58
- res = Object.assign(new DbLogGroup(name, (0, rdh_1.castTo)(json).attr), json);
59
- break;
60
- case types_1.ResourceType.LogStream:
61
- res = Object.assign(new DbLogStream(name, (0, rdh_1.castTo)(json).attr), json);
62
- break;
63
- case types_1.ResourceType.DynamoTable:
64
- res = Object.assign(new DbDynamoTable(name, (0, rdh_1.castTo)(json).attr), json);
65
- break;
66
- case types_1.ResourceType.DynamoColumn:
67
- {
68
- const params = (0, rdh_1.castTo)(json);
69
- res = Object.assign(new DbDynamoTableColumn(name, params.attrType, params.pk, params.sk), json);
70
- }
71
- break;
72
- }
73
- if (json.children) {
74
- const children = json.children.map((child) => fromJson(child));
75
- res['children'] = children;
76
- }
77
- return res;
78
- }
79
- exports.fromJson = fromJson;
80
- class DbResource {
81
- constructor(resourceType, name) {
82
- this.id = uid.randomUUID(8);
83
- this.resourceType = resourceType;
84
- this.name = name;
85
- this.children = [];
86
- }
87
- getProperties() {
88
- return {
89
- name: this.name,
90
- comment: this.comment,
91
- };
92
- }
93
- addChild(res) {
94
- this.children.push(res);
95
- return res;
96
- }
97
- hasChildren() {
98
- return this.children.length > 0;
99
- }
100
- clearChildren() {
101
- this.children.splice(0, this.children.length);
102
- }
103
- getChildByName(name, insensitive) {
104
- if (insensitive === true) {
105
- const uname = name.toUpperCase();
106
- return this.children.find((it) => it.name.toUpperCase() == uname);
107
- }
108
- return this.children.find((it) => it.name == name);
109
- }
110
- findChildren({ keyword, resourceType, recursively, }) {
111
- var _a, _b;
112
- if (this.children.some((it) => it.resourceType === resourceType)) {
113
- const children2 = this.children.filter((it) => it.resourceType === resourceType);
114
- if (keyword == undefined) {
115
- return (children2 !== null && children2 !== void 0 ? children2 : []);
116
- }
117
- if (typeof keyword === 'string') {
118
- const k = keyword.toUpperCase();
119
- return ((_a = children2.filter((it) => it.name.toUpperCase() == k)) !== null && _a !== void 0 ? _a : []);
120
- }
121
- return ((_b = children2.filter((it) => keyword.test(it.name))) !== null && _b !== void 0 ? _b : []);
122
- }
123
- if (recursively === true) {
124
- const ret = [];
125
- this.children.forEach((it) => {
126
- ret.push(...it.findChildren({
127
- keyword,
128
- resourceType,
129
- recursively,
130
- }));
131
- });
132
- return ret;
133
- }
134
- return [];
135
- }
136
- toString() {
137
- return `[${this.resourceType}]:${this.name}`;
138
- }
139
- toJsonStringify(space = 0) {
140
- return JSON.stringify(this, (k, v) => {
141
- if (['disabled'].includes(k)) {
142
- return undefined;
143
- }
144
- return v;
145
- }, space);
146
- }
147
- }
148
- exports.DbResource = DbResource;
149
- class DbConnection extends DbResource {
150
- constructor(prop) {
151
- super(types_1.ResourceType.Connection, prop.name);
152
- this.dbType = prop.dbType;
153
- this.comment = prop.comment;
154
- this.environment = prop.environment;
155
- this.host = prop.host;
156
- this.port = prop.port;
157
- this.user = prop.user;
158
- this.password = prop.password;
159
- this.database = prop.database;
160
- this.databaseVersion = prop.databaseVersion;
161
- this.ds = prop.ds;
162
- this.url = prop.url;
163
- this.apiVersion = prop.apiVersion;
164
- this.ssh = prop.ssh;
165
- this.ssl = prop.ssl;
166
- this.awsSetting = prop.awsSetting;
167
- this.iamSolution = prop.iamSolution;
168
- this.mqttSetting = prop.mqttSetting;
169
- this.firebase = prop.firebase;
170
- this.sqlServer = prop.sqlServer;
171
- this.timezone = prop.timezone;
172
- this.readOnly = prop.readOnly;
173
- this.transactionIsolationLevel = prop.transactionIsolationLevel;
174
- this.connectTimeoutMs = prop.connectTimeoutMs;
175
- this.queryTimeoutMs = prop.queryTimeoutMs;
176
- this.lockWaitTimeoutMs = prop.lockWaitTimeoutMs;
177
- this.resourceFilter = prop.resourceFilter;
178
- this.isConnected = false;
179
- this.isInProgress = false;
180
- }
181
- hasUrl() {
182
- if (this.url && this.url.length > 0) {
183
- return true;
184
- }
185
- return false;
186
- }
187
- hasSshSetting() {
188
- if (this.ssh && this.ssh.use === true) {
189
- return true;
190
- }
191
- return false;
192
- }
193
- }
194
- exports.DbConnection = DbConnection;
195
- class RdsDatabase extends DbResource {
196
- constructor(name) {
197
- super(types_1.ResourceType.RdsDatabase, name);
198
- }
199
- getProperties() {
200
- return Object.assign(Object.assign({}, super.getProperties()), { version: this.version });
201
- }
202
- getSchema(option) {
203
- const { name, isDefault } = option;
204
- for (const child of this.children) {
205
- if (child.resourceType !== types_1.ResourceType.Schema) {
206
- continue;
207
- }
208
- const currentSchema = child;
209
- if (name && name === child.name) {
210
- return currentSchema;
211
- }
212
- if (isDefault && currentSchema.isDefault) {
213
- return currentSchema;
214
- }
215
- }
216
- return null;
217
- }
218
- }
219
- exports.RdsDatabase = RdsDatabase;
220
- class AwsDatabase extends DbResource {
221
- constructor(name, serviceType) {
222
- super(types_1.ResourceType.AwsDatabase, name);
223
- this.serviceType = serviceType;
224
- }
225
- }
226
- exports.AwsDatabase = AwsDatabase;
227
- class RedisDatabase extends DbResource {
228
- constructor(name, numOfKeys) {
229
- super(types_1.ResourceType.RedisDatabase, name);
230
- this.numOfKeys = numOfKeys;
231
- }
232
- getDBIndex() {
233
- return parseInt(this.name, 10);
234
- }
235
- getProperties() {
236
- return Object.assign(Object.assign({}, super.getProperties()), { 'number of keys': this.numOfKeys });
237
- }
238
- }
239
- exports.RedisDatabase = RedisDatabase;
240
- class MemcacheDatabase extends DbResource {
241
- constructor(name) {
242
- super(types_1.ResourceType.MemcacheDatabase, name);
243
- }
244
- getProperties() {
245
- return Object.assign(Object.assign({}, super.getProperties()), { servers: this.servers, hot: this.hot, warm: this.warm, cold: this.cold });
246
- }
247
- }
248
- exports.MemcacheDatabase = MemcacheDatabase;
249
- class MqttDatabase extends DbResource {
250
- constructor(name) {
251
- super(types_1.ResourceType.MqttDatabase, name);
252
- }
253
- getProperties() {
254
- return Object.assign({}, super.getProperties());
255
- }
256
- }
257
- exports.MqttDatabase = MqttDatabase;
258
- class KeycloakDatabase extends DbResource {
259
- constructor(name) {
260
- super(types_1.ResourceType.KeycloakDatabase, name);
261
- }
262
- getProperties() {
263
- return Object.assign({}, super.getProperties());
264
- }
265
- getRealm(option) {
266
- const { name, isDefault } = option;
267
- for (const child of this.children) {
268
- if (child.resourceType !== types_1.ResourceType.IamRealm) {
269
- continue;
270
- }
271
- const currentRealm = child;
272
- if (name && name === child.name) {
273
- return currentRealm;
274
- }
275
- if (isDefault && currentRealm.isDefault) {
276
- return currentRealm;
277
- }
278
- }
279
- return null;
280
- }
281
- }
282
- exports.KeycloakDatabase = KeycloakDatabase;
283
- class Auth0Database extends DbResource {
284
- constructor(name) {
285
- super(types_1.ResourceType.Auth0Database, name);
286
- this.isDefault = false;
287
- this.numOfUsers = 0;
288
- this.numOfOrganizations = 0;
289
- }
290
- getClientByName(name) {
291
- var _a;
292
- return (_a = this.findChildren({
293
- keyword: name,
294
- resourceType: types_1.ResourceType.IamClient,
295
- recursively: false,
296
- })) === null || _a === void 0 ? void 0 : _a[0];
297
- }
298
- getUserByName(name) {
299
- var _a;
300
- return (_a = this.findChildren({
301
- keyword: name,
302
- resourceType: types_1.ResourceType.IamUser,
303
- recursively: false,
304
- })) === null || _a === void 0 ? void 0 : _a[0];
305
- }
306
- getGroupByName(name) {
307
- var _a;
308
- return (_a = this.findChildren({
309
- keyword: name,
310
- resourceType: types_1.ResourceType.IamGroup,
311
- recursively: false,
312
- })) === null || _a === void 0 ? void 0 : _a[0];
313
- }
314
- getRoleByName(name) {
315
- var _a;
316
- return (_a = this.findChildren({
317
- keyword: name,
318
- resourceType: types_1.ResourceType.IamRole,
319
- recursively: false,
320
- })) === null || _a === void 0 ? void 0 : _a[0];
321
- }
322
- getProperties() {
323
- const { id, numOfOrganizations, numOfUsers } = this;
324
- return Object.assign({ id,
325
- numOfUsers,
326
- numOfOrganizations }, super.getProperties());
327
- }
328
- }
329
- exports.Auth0Database = Auth0Database;
330
- class IamRealm extends DbResource {
331
- constructor(name) {
332
- super(types_1.ResourceType.IamRealm, name);
333
- this.isDefault = false;
334
- this.numOfUsers = 0;
335
- this.numOfGroups = 0;
336
- }
337
- getClientByName(name) {
338
- var _a;
339
- return (_a = this.findChildren({
340
- keyword: name,
341
- resourceType: types_1.ResourceType.IamClient,
342
- recursively: false,
343
- })) === null || _a === void 0 ? void 0 : _a[0];
344
- }
345
- getUserByName(name) {
346
- var _a;
347
- return (_a = this.findChildren({
348
- keyword: name,
349
- resourceType: types_1.ResourceType.IamUser,
350
- recursively: false,
351
- })) === null || _a === void 0 ? void 0 : _a[0];
352
- }
353
- getGroupByName(name) {
354
- var _a;
355
- return (_a = this.findChildren({
356
- keyword: name,
357
- resourceType: types_1.ResourceType.IamGroup,
358
- recursively: false,
359
- })) === null || _a === void 0 ? void 0 : _a[0];
360
- }
361
- getRoleByName(name) {
362
- var _a;
363
- return (_a = this.findChildren({
364
- keyword: name,
365
- resourceType: types_1.ResourceType.IamRole,
366
- recursively: false,
367
- })) === null || _a === void 0 ? void 0 : _a[0];
368
- }
369
- getProperties() {
370
- const { id, numOfGroups, numOfUsers } = this;
371
- return Object.assign({ id,
372
- numOfUsers,
373
- numOfGroups }, super.getProperties());
374
- }
375
- }
376
- exports.IamRealm = IamRealm;
377
- class IamClient extends DbResource {
378
- constructor(name) {
379
- super(types_1.ResourceType.IamClient, name);
380
- }
381
- getProperties() {
382
- const { id, protocol, clientId, appType, standardFlowEnabled, implicitFlowEnabled, directAccessGrantsEnabled, numOfUserSessions, numOfOfflineSessions, } = this;
383
- return Object.assign({ id,
384
- protocol,
385
- clientId,
386
- appType,
387
- standardFlowEnabled,
388
- implicitFlowEnabled,
389
- directAccessGrantsEnabled,
390
- numOfUserSessions,
391
- numOfOfflineSessions }, super.getProperties());
392
- }
393
- }
394
- exports.IamClient = IamClient;
395
- class IamUser extends DbResource {
396
- constructor(name) {
397
- super(types_1.ResourceType.IamUser, name);
398
- }
399
- getProperties() {
400
- const { id } = this;
401
- return Object.assign({ id }, super.getProperties());
402
- }
403
- }
404
- exports.IamUser = IamUser;
405
- class IamGroup extends DbResource {
406
- constructor(name) {
407
- super(types_1.ResourceType.IamGroup, name);
408
- }
409
- }
410
- exports.IamGroup = IamGroup;
411
- class IamOrganization extends DbResource {
412
- constructor(name) {
413
- super(types_1.ResourceType.IamOrganization, name);
414
- }
415
- }
416
- exports.IamOrganization = IamOrganization;
417
- class IamRole extends DbResource {
418
- constructor(name) {
419
- super(types_1.ResourceType.IamRole, name);
420
- }
421
- getProperties() {
422
- const { id } = this;
423
- return Object.assign({ id }, super.getProperties());
424
- }
425
- }
426
- exports.IamRole = IamRole;
427
- class DbSchema extends DbResource {
428
- constructor(name) {
429
- super(types_1.ResourceType.Schema, name);
430
- this.isDefault = false;
431
- }
432
- getUniqColumnNameWithComments() {
433
- const ret = [];
434
- this.children.forEach((table) => {
435
- table.children.forEach((column) => {
436
- const c = ret.find((it) => it.name === column.name);
437
- if (c) {
438
- if (c.comment === undefined) {
439
- c.comment = column.comment;
440
- }
441
- }
442
- else {
443
- ret.push({
444
- name: column.name,
445
- comment: column.comment,
446
- });
447
- }
448
- });
449
- });
450
- return ret.sort((a, b) => {
451
- const nameA = a.name.toUpperCase();
452
- const nameB = b.name.toUpperCase();
453
- if (nameA < nameB) {
454
- return -1;
455
- }
456
- if (nameA > nameB) {
457
- return 1;
458
- }
459
- return 0;
460
- });
461
- }
462
- }
463
- exports.DbSchema = DbSchema;
464
- class DbTable extends DbResource {
465
- constructor(name, tableType, comment) {
466
- super(types_1.ResourceType.Table, name);
467
- this.foreignKeys = {};
468
- this.tableType = tableType;
469
- this.comment = comment;
470
- this.isInProgress = false;
471
- }
472
- getCompareKeys(availableColumnNames) {
473
- var _a;
474
- const ret = [];
475
- const pks = this.getPrimaryColumnNames();
476
- if (pks.length) {
477
- if (availableColumnNames) {
478
- if (pks.every((pk) => availableColumnNames.some((ac) => (0, rdh_1.equalsIgnoreCase)(ac, pk)))) {
479
- ret.push({
480
- kind: 'primary',
481
- names: pks.map((pk) => availableColumnNames.find((ac) => (0, rdh_1.equalsIgnoreCase)(ac, pk))),
482
- });
483
- }
484
- }
485
- else {
486
- ret.push({
487
- kind: 'primary',
488
- names: pks,
489
- });
490
- }
491
- }
492
- (_a = this.uniqueKeys) === null || _a === void 0 ? void 0 : _a.forEach((it) => {
493
- if (availableColumnNames) {
494
- if (it.columns.every((uk) => availableColumnNames.some((ac) => (0, rdh_1.equalsIgnoreCase)(ac, uk)))) {
495
- ret.push({
496
- kind: 'uniq',
497
- names: it.columns.map((uk) => availableColumnNames.find((ac) => (0, rdh_1.equalsIgnoreCase)(ac, uk))),
498
- });
499
- }
500
- }
501
- else {
502
- ret.push({
503
- kind: 'uniq',
504
- names: it.columns,
505
- });
506
- }
507
- });
508
- return ret;
509
- }
510
- getPrimaryColumnNames() {
511
- var _a;
512
- return ((_a = this.children.filter((it) => it.primaryKey).map((it) => it.name)) !== null && _a !== void 0 ? _a : []);
513
- }
514
- getUniqColumnNames() {
515
- var _a;
516
- return (_a = this.children.filter((it) => it.uniqKey).map((it) => it.name)) !== null && _a !== void 0 ? _a : [];
517
- }
518
- toString() {
519
- return `[${super.toString()}]: Type[${this.tableType}]`;
520
- }
521
- getProperties() {
522
- return Object.assign(Object.assign({}, super.getProperties()), { 'table type': this.tableType });
523
- }
524
- }
525
- exports.DbTable = DbTable;
526
- class DbKey extends DbResource {
527
- constructor(name, params) {
528
- super(types_1.ResourceType.Key, name);
529
- this.params = params;
530
- }
531
- getProperties() {
532
- return Object.assign(Object.assign({ 'id or key': this.id }, super.getProperties()), this.params);
533
- }
534
- }
535
- exports.DbKey = DbKey;
536
- class DbColumn extends DbResource {
537
- constructor(name, colType, params, comment) {
538
- super(types_1.ResourceType.Column, name);
539
- this.colType = colType;
540
- this.comment = comment;
541
- if (params) {
542
- this.nullable = params.nullable || false;
543
- this.primaryKey = params.key === 'PRI';
544
- this.uniqKey = params.key === 'UNI' || params.key === 'MUL';
545
- this.default = params.default;
546
- this.extra = params.extra;
547
- }
548
- else {
549
- this.nullable = true;
550
- }
551
- }
552
- toString() {
553
- return `[${super.toString()}]: Nullable[${this.nullable}]]`;
554
- }
555
- getProperties() {
556
- return Object.assign(Object.assign({}, super.getProperties()), { 'column type': (0, rdh_1.displayGeneralColumnType)(this.colType), nullable: this.nullable, primaryKey: this.primaryKey, uniqKey: this.uniqKey, default: this.default });
557
- }
558
- }
559
- exports.DbColumn = DbColumn;
560
- class AwsDbResource extends DbResource {
561
- constructor(resourceType, name, attr) {
562
- super(resourceType, name);
563
- this.attr = attr;
564
- }
565
- setPropertyFormat({ dates, bytes, }) {
566
- this.dateProperties = dates;
567
- this.byteProperties = bytes;
568
- }
569
- getProperties() {
570
- var _a, _b;
571
- const props = Object.assign(Object.assign({}, super.getProperties()), this.attr);
572
- (_a = this.dateProperties) === null || _a === void 0 ? void 0 : _a.forEach((name) => {
573
- var _a;
574
- const v = props[name];
575
- props[name] = (_a = (0, rdh_1.toDate)(v)) === null || _a === void 0 ? void 0 : _a.toISOString();
576
- });
577
- (_b = this.byteProperties) === null || _b === void 0 ? void 0 : _b.forEach((name) => {
578
- const v = props[name];
579
- props[name] = (0, bytes_1.format)(v);
580
- });
581
- return props;
582
- }
583
- }
584
- exports.AwsDbResource = AwsDbResource;
585
- class DbDynamoTable extends AwsDbResource {
586
- constructor(name, attr) {
587
- super(types_1.ResourceType.DynamoTable, name, attr);
588
- this.setPropertyFormat({
589
- dates: ['CreationDateTime'],
590
- bytes: ['TableSizeBytes'],
591
- });
592
- }
593
- getProperties() {
594
- const props = Object.assign(Object.assign({}, super.getProperties()), { lsi: this.attr.lsi.length, gsi: this.attr.gsi.length });
595
- if (this.attr.ttl) {
596
- props.ttl = `${this.attr.ttl.AttributeName} (${this.attr.ttl.TimeToLiveStatus})`;
597
- }
598
- if (this.attr.lsi) {
599
- this.attr.lsi.forEach((it, idx) => {
600
- props[`lsi${idx + 1}_${it.IndexName}`] = it.KeySchema.map((ks) => `${ks.AttributeName}(${ks.KeyType})`).join(', ');
601
- });
602
- }
603
- if (this.attr.gsi) {
604
- this.attr.gsi.forEach((it, idx) => {
605
- props[`gsi${idx + 1}_${it.IndexName}`] = it.KeySchema.map((ks) => `${ks.AttributeName}(${ks.KeyType})`).join(', ');
606
- });
607
- }
608
- return props;
609
- }
610
- getPrimaryColumnNames() {
611
- var _a;
612
- return ((_a = this.children.filter((it) => it.pk || it.sk).map((it) => it.name)) !== null && _a !== void 0 ? _a : []);
613
- }
614
- getPkAndSkByIndex(indexName) {
615
- var _a, _b, _c, _d;
616
- if (!indexName) {
617
- return {
618
- pk: (_a = this.children.find((it) => it.pk)) === null || _a === void 0 ? void 0 : _a.name,
619
- sk: (_b = this.children.find((it) => it.sk)) === null || _b === void 0 ? void 0 : _b.name,
620
- };
621
- }
622
- let index = this.attr.lsi.find((it) => it.IndexName === indexName);
623
- if (index === undefined) {
624
- index = this.attr.gsi.find((it) => it.IndexName === indexName);
625
- }
626
- if (index) {
627
- return {
628
- pk: (_c = index.KeySchema.find((it) => it.KeyType === 'HASH')) === null || _c === void 0 ? void 0 : _c.AttributeName,
629
- sk: (_d = index.KeySchema.find((it) => it.KeyType === 'RANGE')) === null || _d === void 0 ? void 0 : _d.AttributeName,
630
- };
631
- }
632
- return {
633
- pk: undefined,
634
- sk: undefined,
635
- };
636
- }
637
- getCompareKeys(availableColumnNames) {
638
- const ret = [];
639
- const pks = this.getPrimaryColumnNames();
640
- if (pks.length) {
641
- if (availableColumnNames) {
642
- if (pks.every((pk) => availableColumnNames.some((ac) => (0, rdh_1.equalsIgnoreCase)(ac, pk)))) {
643
- ret.push({
644
- kind: 'primary',
645
- names: pks.map((pk) => availableColumnNames.find((ac) => (0, rdh_1.equalsIgnoreCase)(ac, pk))),
646
- });
647
- }
648
- }
649
- else {
650
- ret.push({
651
- kind: 'primary',
652
- names: pks,
653
- });
654
- }
655
- }
656
- return ret;
657
- }
658
- }
659
- exports.DbDynamoTable = DbDynamoTable;
660
- class DbDynamoTableColumn extends DbResource {
661
- constructor(name, attrType, pk, sk) {
662
- super(types_1.ResourceType.DynamoColumn, name);
663
- this.attrType = attrType;
664
- this.pk = pk;
665
- this.sk = sk;
666
- }
667
- toString() {
668
- return `[${super.toString()}]: Pk[${this.pk}]]`;
669
- }
670
- getProperties() {
671
- return Object.assign(Object.assign({}, super.getProperties()), { 'attribute type': this.attrType, 'partial key': this.pk, 'sort key': this.sk });
672
- }
673
- }
674
- exports.DbDynamoTableColumn = DbDynamoTableColumn;
675
- class DbS3Bucket extends AwsDbResource {
676
- constructor(name, CreationDate) {
677
- super(types_1.ResourceType.Bucket, name === undefined ? '' : name, {
678
- CreationDate,
679
- });
680
- this.setPropertyFormat({ dates: ['CreationDate'] });
681
- }
682
- }
683
- exports.DbS3Bucket = DbS3Bucket;
684
- class DbSubscription extends DbResource {
685
- constructor(name, qos, options) {
686
- super(types_1.ResourceType.Subscription, name);
687
- this.qos = qos;
688
- this.isSubscribed = false;
689
- this.comment = '';
690
- if (options) {
691
- this.nl = options.nl;
692
- this.rap = options.rap;
693
- this.rh = options.rh;
694
- }
695
- }
696
- getProperties() {
697
- const prop = Object.assign(Object.assign({}, super.getProperties()), { isSubscribed: this.isSubscribed, QoS: this.qos });
698
- if (this.nl !== undefined) {
699
- prop['No Local'] = this.nl;
700
- }
701
- if (this.rap !== undefined) {
702
- prop['Retain As Published'] = this.rap;
703
- }
704
- if (this.rh !== undefined) {
705
- prop['Retain Handling'] = this.rh;
706
- }
707
- return prop;
708
- }
709
- }
710
- exports.DbSubscription = DbSubscription;
711
- class DbSQSQueue extends AwsDbResource {
712
- constructor(name, url, attr) {
713
- super(types_1.ResourceType.Queue, name, attr);
714
- this.url = url;
715
- this.setPropertyFormat({
716
- dates: ['CreatedTimestamp', 'LastModifiedTimestamp'],
717
- });
718
- }
719
- getProperties() {
720
- return Object.assign(Object.assign({}, super.getProperties()), { url: this.url });
721
- }
722
- }
723
- exports.DbSQSQueue = DbSQSQueue;
724
- class DbLogGroup extends AwsDbResource {
725
- constructor(name, attr) {
726
- super(types_1.ResourceType.LogGroup, name, attr);
727
- this.setPropertyFormat({ dates: ['creationTime'], bytes: ['storedBytes'] });
728
- }
729
- }
730
- exports.DbLogGroup = DbLogGroup;
731
- class DbLogStream extends AwsDbResource {
732
- constructor(name, attr) {
733
- super(types_1.ResourceType.LogStream, name, attr);
734
- this.setPropertyFormat({
735
- dates: [
736
- 'creationTime',
737
- 'firstEventTimestamp',
738
- 'lastEventTimestamp',
739
- 'lastIngestionTime',
740
- ],
741
- });
742
- }
743
- }
744
- exports.DbLogStream = DbLogStream;
745
- class DbS3Owner extends AwsDbResource {
746
- constructor(ownerId, name) {
747
- super(types_1.ResourceType.Owner, name === undefined ? '' : name, {});
748
- this.ownerId = ownerId;
749
- }
750
- getProperties() {
751
- return Object.assign(Object.assign({}, super.getProperties()), { 'Owner id': this.ownerId });
752
- }
753
- }
754
- exports.DbS3Owner = DbS3Owner;
755
- //# sourceMappingURL=DbResource.js.map