apeframework 0.0.0-dev.2 → 0.0.0-dev.3

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 (575) hide show
  1. package/README.md +8 -36
  2. package/cipher/Algorithm.d.ts +6 -0
  3. package/cipher/Algorithm.js +9 -0
  4. package/cipher/Algorithm.ts +9 -0
  5. package/cipher/Cipher.d.ts +12 -0
  6. package/cipher/Cipher.js +38 -0
  7. package/cipher/Cipher.ts +46 -0
  8. package/cipher/errors/CipherDecryptError.d.ts +5 -0
  9. package/cipher/errors/CipherDecryptError.js +10 -0
  10. package/cipher/errors/CipherDecryptError.ts +11 -0
  11. package/cipher/errors/CipherSecretLengthError.d.ts +5 -0
  12. package/cipher/errors/CipherSecretLengthError.js +10 -0
  13. package/cipher/errors/CipherSecretLengthError.ts +11 -0
  14. package/cipher/validateSecretLength.d.ts +3 -0
  15. package/cipher/validateSecretLength.js +16 -0
  16. package/cipher/validateSecretLength.ts +18 -0
  17. package/cli/Args.d.ts +5 -0
  18. package/cli/Args.ts +8 -0
  19. package/cli/Command.d.ts +3 -0
  20. package/cli/Command.ts +7 -0
  21. package/cli/getArgs.d.ts +3 -0
  22. package/cli/getArgs.js +8 -0
  23. package/cli/getArgs.ts +10 -0
  24. package/cli/parseArgs.d.ts +3 -0
  25. package/cli/parseArgs.js +31 -0
  26. package/cli/parseArgs.ts +34 -0
  27. package/cli/utils/exit.d.ts +2 -0
  28. package/cli/utils/exit.js +7 -0
  29. package/cli/utils/exit.ts +7 -0
  30. package/cli/utils/formatList.d.ts +2 -0
  31. package/cli/utils/formatList.js +10 -0
  32. package/cli/utils/formatList.ts +11 -0
  33. package/cli/utils/formatTable.d.ts +2 -0
  34. package/cli/utils/formatTable.js +22 -0
  35. package/cli/utils/formatTable.ts +25 -0
  36. package/cli/utils/formatText.d.ts +2 -0
  37. package/cli/utils/formatText.js +8 -0
  38. package/cli/utils/formatText.ts +9 -0
  39. package/cli/utils/write.d.ts +2 -0
  40. package/cli/utils/write.js +7 -0
  41. package/cli/utils/write.ts +7 -0
  42. package/cli/utils/writeLn.d.ts +2 -0
  43. package/cli/utils/writeLn.js +8 -0
  44. package/cli/utils/writeLn.ts +9 -0
  45. package/config/Config.d.ts +2 -0
  46. package/config/Config.ts +5 -0
  47. package/config/Properties.d.ts +8 -0
  48. package/config/Properties.ts +12 -0
  49. package/config/errors/ConfigFileReadError.d.ts +5 -0
  50. package/config/errors/ConfigFileReadError.js +10 -0
  51. package/config/errors/ConfigFileReadError.ts +11 -0
  52. package/config/errors/ConfigParseError.d.ts +5 -0
  53. package/config/errors/ConfigParseError.js +10 -0
  54. package/config/errors/ConfigParseError.ts +11 -0
  55. package/config/errors/ConfigPropertyNameError.d.ts +5 -0
  56. package/config/errors/ConfigPropertyNameError.js +10 -0
  57. package/config/errors/ConfigPropertyNameError.ts +11 -0
  58. package/config/getConfig.d.ts +14 -0
  59. package/config/getConfig.js +21 -0
  60. package/config/getConfig.ts +47 -0
  61. package/config/getPropertyEnvVar.d.ts +2 -0
  62. package/config/getPropertyEnvVar.js +13 -0
  63. package/config/getPropertyEnvVar.ts +15 -0
  64. package/config/parseProperty.d.ts +3 -0
  65. package/config/parseProperty.js +37 -0
  66. package/config/parseProperty.ts +47 -0
  67. package/config/readFile.d.ts +2 -0
  68. package/config/readFile.js +31 -0
  69. package/config/readFile.ts +34 -0
  70. package/config/validatePropertyName.d.ts +2 -0
  71. package/config/validatePropertyName.js +11 -0
  72. package/config/validatePropertyName.ts +13 -0
  73. package/db/ColumnBuilder.d.ts +13 -0
  74. package/db/ColumnBuilder.js +42 -0
  75. package/db/ColumnBuilder.ts +61 -0
  76. package/db/Database.d.ts +19 -0
  77. package/db/Database.js +49 -0
  78. package/db/Database.ts +74 -0
  79. package/db/Driver.d.ts +30 -0
  80. package/db/Driver.ts +33 -0
  81. package/db/NullConstraint.d.ts +2 -0
  82. package/db/NullConstraint.ts +5 -0
  83. package/db/ReferentialAction.d.ts +2 -0
  84. package/db/ReferentialAction.ts +5 -0
  85. package/db/TableBuilder.d.ts +49 -0
  86. package/db/TableBuilder.js +234 -0
  87. package/db/TableBuilder.ts +367 -0
  88. package/db/adapters/mysql/createMysqlDatabase.d.ts +12 -0
  89. package/db/adapters/mysql/createMysqlDatabase.js +32 -0
  90. package/db/adapters/mysql/createMysqlDatabase.ts +39 -0
  91. package/db/adapters/mysql/driver.d.ts +3 -0
  92. package/db/adapters/mysql/driver.js +43 -0
  93. package/db/adapters/mysql/driver.ts +45 -0
  94. package/db/adapters/mysql/typeCast.d.ts +2 -0
  95. package/db/adapters/mysql/typeCast.js +17 -0
  96. package/db/adapters/mysql/typeCast.ts +18 -0
  97. package/db/adapters/postgres/driver.d.ts +3 -0
  98. package/db/adapters/postgres/driver.js +43 -0
  99. package/db/adapters/postgres/driver.ts +45 -0
  100. package/db/adapters/sqlite/driver.d.ts +3 -0
  101. package/db/adapters/sqlite/driver.js +43 -0
  102. package/db/adapters/sqlite/driver.ts +45 -0
  103. package/db/errors/DbColumnLengthError.d.ts +5 -0
  104. package/db/errors/DbColumnLengthError.js +10 -0
  105. package/db/errors/DbColumnLengthError.ts +11 -0
  106. package/db/errors/DbColumnMaxLengthError.d.ts +5 -0
  107. package/db/errors/DbColumnMaxLengthError.js +10 -0
  108. package/db/errors/DbColumnMaxLengthError.ts +11 -0
  109. package/db/errors/DbColumnPrecisionError.d.ts +5 -0
  110. package/db/errors/DbColumnPrecisionError.js +10 -0
  111. package/db/errors/DbColumnPrecisionError.ts +11 -0
  112. package/db/errors/DbColumnScaleError.d.ts +5 -0
  113. package/db/errors/DbColumnScaleError.js +10 -0
  114. package/db/errors/DbColumnScaleError.ts +11 -0
  115. package/db/getConstraintName.d.ts +2 -0
  116. package/db/getConstraintName.js +15 -0
  117. package/db/getConstraintName.ts +18 -0
  118. package/db/getReferentialActionSql.d.ts +3 -0
  119. package/db/getReferentialActionSql.js +12 -0
  120. package/db/getReferentialActionSql.ts +17 -0
  121. package/db/setNullConstraint.d.ts +4 -0
  122. package/db/setNullConstraint.js +9 -0
  123. package/db/setNullConstraint.ts +15 -0
  124. package/db/validateColumnLength.d.ts +2 -0
  125. package/db/validateColumnLength.js +10 -0
  126. package/db/validateColumnLength.ts +11 -0
  127. package/db/validateColumnMaxLength.d.ts +2 -0
  128. package/db/validateColumnMaxLength.js +10 -0
  129. package/db/validateColumnMaxLength.ts +11 -0
  130. package/db/validateColumnPrecision.d.ts +2 -0
  131. package/db/validateColumnPrecision.js +14 -0
  132. package/db/validateColumnPrecision.ts +15 -0
  133. package/env/Env.d.ts +2 -0
  134. package/env/Env.ts +5 -0
  135. package/env/errors/EnvFileReadError.d.ts +5 -0
  136. package/env/errors/EnvFileReadError.js +10 -0
  137. package/env/errors/EnvFileReadError.ts +11 -0
  138. package/env/getEnv.d.ts +8 -0
  139. package/env/getEnv.js +15 -0
  140. package/env/getEnv.ts +24 -0
  141. package/env/readFile.d.ts +3 -0
  142. package/env/readFile.js +24 -0
  143. package/env/readFile.ts +24 -0
  144. package/error/BaseError.d.ts +4 -0
  145. package/error/BaseError.js +12 -0
  146. package/error/BaseError.ts +12 -0
  147. package/jwt/Algorithm.d.ts +6 -0
  148. package/jwt/Algorithm.js +9 -0
  149. package/jwt/Algorithm.ts +9 -0
  150. package/jwt/Jwt.d.ts +19 -0
  151. package/jwt/Jwt.js +61 -0
  152. package/jwt/Jwt.ts +92 -0
  153. package/jwt/Payload.d.ts +7 -0
  154. package/jwt/Payload.ts +10 -0
  155. package/jwt/errors/JwtSecretLengthError.d.ts +5 -0
  156. package/jwt/errors/JwtSecretLengthError.js +10 -0
  157. package/jwt/errors/JwtSecretLengthError.ts +11 -0
  158. package/jwt/validateSecretLength.d.ts +3 -0
  159. package/jwt/validateSecretLength.js +16 -0
  160. package/jwt/validateSecretLength.ts +18 -0
  161. package/logger/Level.d.ts +9 -0
  162. package/logger/Level.js +12 -0
  163. package/logger/Level.ts +12 -0
  164. package/logger/Logger.d.ts +10 -0
  165. package/logger/Logger.ts +13 -0
  166. package/logger/Severity.d.ts +10 -0
  167. package/logger/Severity.js +13 -0
  168. package/logger/Severity.ts +13 -0
  169. package/logger/adapters/file/FileLogger.d.ts +20 -0
  170. package/logger/adapters/file/FileLogger.js +70 -0
  171. package/logger/adapters/file/FileLogger.ts +87 -0
  172. package/logger/adapters/file/errors/FileInitError.d.ts +5 -0
  173. package/logger/adapters/file/errors/FileInitError.js +10 -0
  174. package/logger/adapters/file/errors/FileInitError.ts +11 -0
  175. package/logger/adapters/file/initFile.d.ts +2 -0
  176. package/logger/adapters/file/initFile.js +20 -0
  177. package/logger/adapters/file/initFile.ts +18 -0
  178. package/logger/adapters/noop/NoopLogger.d.ts +11 -0
  179. package/logger/adapters/noop/NoopLogger.js +13 -0
  180. package/logger/adapters/noop/NoopLogger.ts +21 -0
  181. package/logger/adapters/stdio/StdioLogger.d.ts +20 -0
  182. package/logger/adapters/stdio/StdioLogger.js +71 -0
  183. package/logger/adapters/stdio/StdioLogger.ts +87 -0
  184. package/mailer/Address.d.ts +5 -0
  185. package/mailer/Address.ts +8 -0
  186. package/mailer/Attachment.d.ts +7 -0
  187. package/mailer/Attachment.ts +11 -0
  188. package/mailer/Event.d.ts +16 -0
  189. package/mailer/Event.ts +20 -0
  190. package/mailer/EventLocation.d.ts +9 -0
  191. package/mailer/EventLocation.ts +12 -0
  192. package/mailer/EventMethod.d.ts +5 -0
  193. package/mailer/EventMethod.js +8 -0
  194. package/mailer/EventMethod.ts +8 -0
  195. package/mailer/List.d.ts +7 -0
  196. package/mailer/List.ts +10 -0
  197. package/mailer/Mail.d.ts +19 -0
  198. package/mailer/Mail.ts +23 -0
  199. package/mailer/Mailer.d.ts +6 -0
  200. package/mailer/Mailer.ts +10 -0
  201. package/mailer/adapters/noop/NoopMailer.d.ts +7 -0
  202. package/mailer/adapters/noop/NoopMailer.js +11 -0
  203. package/mailer/adapters/noop/NoopMailer.ts +15 -0
  204. package/mailer/adapters/smtp/SmtpMailer.d.ts +18 -0
  205. package/mailer/adapters/smtp/SmtpMailer.js +58 -0
  206. package/mailer/adapters/smtp/SmtpMailer.ts +72 -0
  207. package/mailer/adapters/smtp/getAddress.d.ts +4 -0
  208. package/mailer/adapters/smtp/getAddress.js +12 -0
  209. package/mailer/adapters/smtp/getAddress.ts +15 -0
  210. package/mailer/adapters/smtp/getAddresses.d.ts +4 -0
  211. package/mailer/adapters/smtp/getAddresses.js +14 -0
  212. package/mailer/adapters/smtp/getAddresses.ts +17 -0
  213. package/mailer/adapters/smtp/getAttachments.d.ts +4 -0
  214. package/mailer/adapters/smtp/getAttachments.js +17 -0
  215. package/mailer/adapters/smtp/getAttachments.ts +20 -0
  216. package/mailer/errors/MailerAddressEmailError.d.ts +5 -0
  217. package/mailer/errors/MailerAddressEmailError.js +10 -0
  218. package/mailer/errors/MailerAddressEmailError.ts +11 -0
  219. package/mailer/errors/MailerEventAttachmentUrlError.d.ts +5 -0
  220. package/mailer/errors/MailerEventAttachmentUrlError.js +10 -0
  221. package/mailer/errors/MailerEventAttachmentUrlError.ts +11 -0
  222. package/mailer/errors/MailerEventGeolocationError.d.ts +5 -0
  223. package/mailer/errors/MailerEventGeolocationError.js +10 -0
  224. package/mailer/errors/MailerEventGeolocationError.ts +11 -0
  225. package/mailer/errors/MailerEventUrlError.d.ts +5 -0
  226. package/mailer/errors/MailerEventUrlError.js +10 -0
  227. package/mailer/errors/MailerEventUrlError.ts +11 -0
  228. package/mailer/errors/MailerListUrlError.d.ts +5 -0
  229. package/mailer/errors/MailerListUrlError.js +10 -0
  230. package/mailer/errors/MailerListUrlError.ts +11 -0
  231. package/mailer/getIcalendar.d.ts +3 -0
  232. package/mailer/getIcalendar.js +35 -0
  233. package/mailer/getIcalendar.ts +39 -0
  234. package/mailer/validateAddressEmail.d.ts +2 -0
  235. package/mailer/validateAddressEmail.js +11 -0
  236. package/mailer/validateAddressEmail.ts +12 -0
  237. package/mailer/validateEventAttachmentUrl.d.ts +2 -0
  238. package/mailer/validateEventAttachmentUrl.js +11 -0
  239. package/mailer/validateEventAttachmentUrl.ts +12 -0
  240. package/mailer/validateEventGeolocation.d.ts +2 -0
  241. package/mailer/validateEventGeolocation.js +11 -0
  242. package/mailer/validateEventGeolocation.ts +15 -0
  243. package/mailer/validateEventUrl.d.ts +2 -0
  244. package/mailer/validateEventUrl.js +11 -0
  245. package/mailer/validateEventUrl.ts +12 -0
  246. package/mailer/validateListUrl.d.ts +2 -0
  247. package/mailer/validateListUrl.js +11 -0
  248. package/mailer/validateListUrl.ts +12 -0
  249. package/package.json +26 -28
  250. package/parser/Parser.d.ts +2 -0
  251. package/parser/Parser.ts +5 -0
  252. package/parser/errors/ParserInputError.d.ts +5 -0
  253. package/parser/errors/ParserInputError.js +10 -0
  254. package/parser/errors/ParserInputError.ts +11 -0
  255. package/parser/factories/unit/Unit.d.ts +5 -0
  256. package/parser/factories/unit/Unit.ts +8 -0
  257. package/parser/factories/unit/createUnitParser.d.ts +7 -0
  258. package/parser/factories/unit/createUnitParser.js +36 -0
  259. package/parser/factories/unit/createUnitParser.ts +50 -0
  260. package/parser/parseBoolean.d.ts +3 -0
  261. package/parser/parseBoolean.js +14 -0
  262. package/parser/parseBoolean.ts +16 -0
  263. package/parser/parseBytes.d.ts +2 -0
  264. package/parser/parseBytes.js +54 -0
  265. package/parser/parseBytes.ts +55 -0
  266. package/parser/parseInteger.d.ts +3 -0
  267. package/parser/parseInteger.js +19 -0
  268. package/parser/parseInteger.ts +23 -0
  269. package/parser/parseMilliseconds.d.ts +2 -0
  270. package/parser/parseMilliseconds.js +30 -0
  271. package/parser/parseMilliseconds.ts +31 -0
  272. package/parser/parseNumber.d.ts +3 -0
  273. package/parser/parseNumber.js +18 -0
  274. package/parser/parseNumber.ts +22 -0
  275. package/parser/parseString.d.ts +3 -0
  276. package/parser/parseString.js +20 -0
  277. package/parser/parseString.ts +20 -0
  278. package/pwd/Pwd.d.ts +9 -0
  279. package/pwd/Pwd.js +22 -0
  280. package/pwd/Pwd.ts +31 -0
  281. package/pwd/errors/PwdHashRoundsError.d.ts +5 -0
  282. package/pwd/errors/PwdHashRoundsError.js +10 -0
  283. package/pwd/errors/PwdHashRoundsError.ts +11 -0
  284. package/pwd/validateHashRounds.d.ts +2 -0
  285. package/pwd/validateHashRounds.js +10 -0
  286. package/pwd/validateHashRounds.ts +11 -0
  287. package/tls/Tls.d.ts +7 -0
  288. package/tls/Tls.ts +10 -0
  289. package/tls/errors/TlsFileReadError.d.ts +5 -0
  290. package/tls/errors/TlsFileReadError.js +10 -0
  291. package/tls/errors/TlsFileReadError.ts +11 -0
  292. package/tls/getTls.d.ts +8 -0
  293. package/tls/getTls.js +17 -0
  294. package/tls/getTls.ts +24 -0
  295. package/tls/readFile.d.ts +2 -0
  296. package/tls/readFile.js +20 -0
  297. package/tls/readFile.ts +18 -0
  298. package/utils/getRandomHexString.d.ts +2 -0
  299. package/utils/getRandomHexString.js +8 -0
  300. package/utils/getRandomHexString.ts +9 -0
  301. package/utils/getTimestamp.d.ts +2 -0
  302. package/utils/getTimestamp.js +7 -0
  303. package/utils/getTimestamp.ts +7 -0
  304. package/utils/isValidEmail.d.ts +2 -0
  305. package/utils/isValidEmail.js +8 -0
  306. package/utils/isValidEmail.ts +9 -0
  307. package/utils/isValidGeolocation.d.ts +2 -0
  308. package/utils/isValidGeolocation.js +10 -0
  309. package/utils/isValidGeolocation.ts +10 -0
  310. package/utils/isValidHexString.d.ts +2 -0
  311. package/utils/isValidHexString.js +8 -0
  312. package/utils/isValidHexString.ts +9 -0
  313. package/utils/isValidJwtToken.d.ts +2 -0
  314. package/utils/isValidJwtToken.js +8 -0
  315. package/utils/isValidJwtToken.ts +9 -0
  316. package/utils/isValidUrl.d.ts +2 -0
  317. package/utils/isValidUrl.js +19 -0
  318. package/utils/isValidUrl.ts +21 -0
  319. package/utils/isValidUuid.d.ts +2 -0
  320. package/utils/isValidUuid.js +8 -0
  321. package/utils/isValidUuid.ts +10 -0
  322. package/utils/wait.d.ts +2 -0
  323. package/utils/wait.js +9 -0
  324. package/utils/wait.ts +9 -0
  325. package/api/api.d.ts +0 -7
  326. package/api/api.ts +0 -8
  327. package/api/auth.d.ts +0 -9
  328. package/api/auth.js +0 -11
  329. package/api/auth.ts +0 -9
  330. package/api/config.d.ts +0 -13
  331. package/api/config.js +0 -59
  332. package/api/config.ts +0 -69
  333. package/api/endpoint.d.ts +0 -20
  334. package/api/endpoint.js +0 -5
  335. package/api/endpoint.ts +0 -23
  336. package/api/handler.d.ts +0 -8
  337. package/api/handler.js +0 -13
  338. package/api/handler.ts +0 -23
  339. package/api/index.d.ts +0 -7
  340. package/api/index.js +0 -187
  341. package/api/index.ts +0 -97
  342. package/api/route.d.ts +0 -6
  343. package/api/route.ts +0 -4
  344. package/api/router.d.ts +0 -4
  345. package/api/router.js +0 -111
  346. package/api/router.ts +0 -36
  347. package/api/schema.d.ts +0 -29
  348. package/api/schema.js +0 -69
  349. package/api/schema.ts +0 -98
  350. package/app/app.d.ts +0 -6
  351. package/app/app.ts +0 -7
  352. package/app/boot.d.ts +0 -4
  353. package/app/boot.ts +0 -5
  354. package/app/bundle.d.ts +0 -14
  355. package/app/bundle.ts +0 -15
  356. package/app/config.d.ts +0 -4
  357. package/app/config.js +0 -9
  358. package/app/config.ts +0 -9
  359. package/app/index.d.ts +0 -9
  360. package/app/index.js +0 -103
  361. package/app/index.ts +0 -32
  362. package/bin/ape-cli-ts.js +0 -4
  363. package/bin/ape-cli.js +0 -2
  364. package/cli/command.d.ts +0 -4
  365. package/cli/command.ts +0 -7
  366. package/cli/index.d.ts +0 -2
  367. package/cli/index.js +0 -103
  368. package/cli/index.ts +0 -41
  369. package/cli/internal/api.d.ts +0 -3
  370. package/cli/internal/api.js +0 -110
  371. package/cli/internal/api.ts +0 -38
  372. package/cli/internal/index.d.ts +0 -2
  373. package/cli/internal/index.js +0 -13
  374. package/cli/internal/index.ts +0 -9
  375. package/cli/internal/migration.d.ts +0 -3
  376. package/cli/internal/migration.js +0 -214
  377. package/cli/internal/migration.ts +0 -110
  378. package/cli/internal/queue.d.ts +0 -3
  379. package/cli/internal/queue.js +0 -147
  380. package/cli/internal/queue.ts +0 -60
  381. package/cli/utils.d.ts +0 -18
  382. package/cli/utils.js +0 -52
  383. package/cli/utils.ts +0 -48
  384. package/config/config.d.ts +0 -5
  385. package/config/config.ts +0 -6
  386. package/config/configuration.d.ts +0 -63
  387. package/config/configuration.ts +0 -72
  388. package/config/default.d.ts +0 -33
  389. package/config/default.js +0 -34
  390. package/config/default.ts +0 -40
  391. package/config/env.d.ts +0 -66
  392. package/config/env.js +0 -72
  393. package/config/env.ts +0 -79
  394. package/config/index.d.ts +0 -8
  395. package/config/index.js +0 -91
  396. package/config/index.ts +0 -101
  397. package/config/loadFile.d.ts +0 -2
  398. package/config/loadFile.js +0 -13
  399. package/config/loadFile.ts +0 -9
  400. package/config/node.d.ts +0 -5
  401. package/config/node.js +0 -11
  402. package/config/node.ts +0 -7
  403. package/config/store.d.ts +0 -6
  404. package/config/store.js +0 -20
  405. package/config/store.ts +0 -15
  406. package/db/config/index.d.ts +0 -10
  407. package/db/config/index.js +0 -43
  408. package/db/config/index.ts +0 -35
  409. package/db/config/memory.d.ts +0 -3
  410. package/db/config/memory.js +0 -15
  411. package/db/config/memory.ts +0 -13
  412. package/db/config/mysql.d.ts +0 -3
  413. package/db/config/mysql.js +0 -56
  414. package/db/config/mysql.ts +0 -58
  415. package/db/config/postgres.d.ts +0 -3
  416. package/db/config/postgres.js +0 -59
  417. package/db/config/postgres.ts +0 -61
  418. package/db/config/sqlite.d.ts +0 -3
  419. package/db/config/sqlite.js +0 -21
  420. package/db/config/sqlite.ts +0 -20
  421. package/db/database.d.ts +0 -3
  422. package/db/database.js +0 -3
  423. package/db/database.ts +0 -5
  424. package/db/index.d.ts +0 -10
  425. package/db/index.js +0 -32
  426. package/db/index.ts +0 -26
  427. package/db/postProcess.d.ts +0 -3
  428. package/db/postProcess.js +0 -25
  429. package/db/postProcess.ts +0 -27
  430. package/db/schema/builder/_.d.ts +0 -30
  431. package/db/schema/builder/_.js +0 -87
  432. package/db/schema/builder/_.ts +0 -101
  433. package/db/schema/builder/columnBuilder.d.ts +0 -7
  434. package/db/schema/builder/columnBuilder.js +0 -14
  435. package/db/schema/builder/columnBuilder.ts +0 -15
  436. package/db/schema/builder/dataType.d.ts +0 -28
  437. package/db/schema/builder/dataType.js +0 -170
  438. package/db/schema/builder/dataType.ts +0 -184
  439. package/db/schema/builder/index.d.ts +0 -15
  440. package/db/schema/builder/index.js +0 -42
  441. package/db/schema/builder/index.ts +0 -50
  442. package/db/schema/builder/tableBuilder.d.ts +0 -45
  443. package/db/schema/builder/tableBuilder.js +0 -307
  444. package/db/schema/builder/tableBuilder.ts +0 -409
  445. package/db/schema/config.d.ts +0 -4
  446. package/db/schema/config.js +0 -5
  447. package/db/schema/config.ts +0 -3
  448. package/db/schema/index.d.ts +0 -7
  449. package/db/schema/index.js +0 -252
  450. package/db/schema/index.ts +0 -88
  451. package/db/schema/migration.d.ts +0 -6
  452. package/db/schema/migration.ts +0 -7
  453. package/db/schema/migrationList.d.ts +0 -5
  454. package/db/schema/migrationList.ts +0 -5
  455. package/db/schema/migrationSource.d.ts +0 -10
  456. package/db/schema/migrationSource.js +0 -60
  457. package/db/schema/migrationSource.ts +0 -24
  458. package/db/schema/schema.d.ts +0 -6
  459. package/db/schema/schema.ts +0 -7
  460. package/db/utils/index.d.ts +0 -7
  461. package/db/utils/index.js +0 -10
  462. package/db/utils/index.ts +0 -8
  463. package/db/utils/insertGetKey.d.ts +0 -8
  464. package/db/utils/insertGetKey.js +0 -109
  465. package/db/utils/insertGetKey.ts +0 -80
  466. package/i18n/config.d.ts +0 -4
  467. package/i18n/config.js +0 -9
  468. package/i18n/config.ts +0 -9
  469. package/i18n/i18n.d.ts +0 -5
  470. package/i18n/i18n.ts +0 -6
  471. package/i18n/index.d.ts +0 -8
  472. package/i18n/index.js +0 -155
  473. package/i18n/index.ts +0 -42
  474. package/i18n/internationalization.d.ts +0 -3
  475. package/i18n/internationalization.ts +0 -5
  476. package/i18n/translation.d.ts +0 -4
  477. package/i18n/translation.ts +0 -4
  478. package/jwt/config.d.ts +0 -5
  479. package/jwt/config.js +0 -12
  480. package/jwt/config.ts +0 -11
  481. package/jwt/index.d.ts +0 -8
  482. package/jwt/index.js +0 -90
  483. package/jwt/index.ts +0 -60
  484. package/jwt/jwt.d.ts +0 -6
  485. package/jwt/jwt.ts +0 -19
  486. package/jwt/user.d.ts +0 -4
  487. package/jwt/user.ts +0 -4
  488. package/log/config.d.ts +0 -23
  489. package/log/config.js +0 -47
  490. package/log/config.ts +0 -43
  491. package/log/index.d.ts +0 -4
  492. package/log/index.js +0 -9
  493. package/log/index.ts +0 -9
  494. package/log/logger.d.ts +0 -3
  495. package/log/logger.ts +0 -5
  496. package/mail/config.d.ts +0 -4
  497. package/mail/config.js +0 -5
  498. package/mail/config.ts +0 -3
  499. package/mail/email.d.ts +0 -20
  500. package/mail/email.ts +0 -21
  501. package/mail/index.d.ts +0 -2
  502. package/mail/index.js +0 -4
  503. package/mail/index.ts +0 -3
  504. package/mail/mail.d.ts +0 -12
  505. package/mail/mail.ts +0 -13
  506. package/mail/module/bypass/index.d.ts +0 -6
  507. package/mail/module/bypass/index.js +0 -74
  508. package/mail/module/bypass/index.ts +0 -9
  509. package/mail/module/config.d.ts +0 -11
  510. package/mail/module/config.js +0 -24
  511. package/mail/module/config.ts +0 -25
  512. package/mail/module/index.d.ts +0 -8
  513. package/mail/module/index.js +0 -107
  514. package/mail/module/index.ts +0 -61
  515. package/mail/module/smtp/config.d.ts +0 -6
  516. package/mail/module/smtp/config.js +0 -25
  517. package/mail/module/smtp/config.ts +0 -25
  518. package/mail/module/smtp/index.d.ts +0 -9
  519. package/mail/module/smtp/index.js +0 -104
  520. package/mail/module/smtp/index.ts +0 -36
  521. package/mq/index.d.ts +0 -3
  522. package/mq/index.js +0 -27
  523. package/mq/index.ts +0 -4
  524. package/mq/module/bypass/index.d.ts +0 -13
  525. package/mq/module/bypass/index.js +0 -86
  526. package/mq/module/bypass/index.ts +0 -20
  527. package/mq/module/config.d.ts +0 -6
  528. package/mq/module/config.js +0 -15
  529. package/mq/module/config.ts +0 -14
  530. package/mq/module/index.d.ts +0 -9
  531. package/mq/module/index.js +0 -93
  532. package/mq/module/index.ts +0 -24
  533. package/mq/module/redis/config.d.ts +0 -27
  534. package/mq/module/redis/config.js +0 -37
  535. package/mq/module/redis/config.ts +0 -34
  536. package/mq/module/redis/index.d.ts +0 -15
  537. package/mq/module/redis/index.js +0 -132
  538. package/mq/module/redis/index.ts +0 -60
  539. package/mq/mq.d.ts +0 -15
  540. package/mq/mq.ts +0 -18
  541. package/mq/queue.d.ts +0 -9
  542. package/mq/queue.js +0 -2
  543. package/mq/queue.ts +0 -11
  544. package/pwd/config.d.ts +0 -4
  545. package/pwd/config.js +0 -9
  546. package/pwd/config.ts +0 -9
  547. package/pwd/index.d.ts +0 -6
  548. package/pwd/index.js +0 -21
  549. package/pwd/index.ts +0 -20
  550. package/pwd/pwd.d.ts +0 -4
  551. package/pwd/pwd.js +0 -2
  552. package/pwd/pwd.ts +0 -4
  553. package/utils/index.d.ts +0 -25
  554. package/utils/index.js +0 -72
  555. package/utils/index.ts +0 -56
  556. /package/{api/api.js → cli/Args.js} +0 -0
  557. /package/{api/route.js → cli/Command.js} +0 -0
  558. /package/{app/app.js → config/Config.js} +0 -0
  559. /package/{app/boot.js → config/Properties.js} +0 -0
  560. /package/{app/bundle.js → db/Driver.js} +0 -0
  561. /package/{cli/command.js → db/NullConstraint.js} +0 -0
  562. /package/{config/config.js → db/ReferentialAction.js} +0 -0
  563. /package/{config/configuration.js → env/Env.js} +0 -0
  564. /package/{db/schema/migration.js → jwt/Payload.js} +0 -0
  565. /package/{db/schema/migrationList.js → logger/Logger.js} +0 -0
  566. /package/{db/schema/schema.js → mailer/Address.js} +0 -0
  567. /package/{i18n/i18n.js → mailer/Attachment.js} +0 -0
  568. /package/{i18n/internationalization.js → mailer/Event.js} +0 -0
  569. /package/{i18n/translation.js → mailer/EventLocation.js} +0 -0
  570. /package/{jwt/jwt.js → mailer/List.js} +0 -0
  571. /package/{jwt/user.js → mailer/Mail.js} +0 -0
  572. /package/{log/logger.js → mailer/Mailer.js} +0 -0
  573. /package/{mail/email.js → parser/Parser.js} +0 -0
  574. /package/{mail/mail.js → parser/factories/unit/Unit.js} +0 -0
  575. /package/{mq/mq.js → tls/Tls.js} +0 -0
@@ -0,0 +1,367 @@
1
+ import { ColumnBuilder } from './ColumnBuilder'
2
+ import { getConstraintName } from './getConstraintName'
3
+ import { getReferentialActionSql } from './getReferentialActionSql'
4
+ import { setNullConstraint } from './setNullConstraint'
5
+ import { validateColumnLength } from './validateColumnLength'
6
+ import { validateColumnMaxLength } from './validateColumnMaxLength'
7
+ import { validateColumnPrecision } from './validateColumnPrecision'
8
+ import type { Driver } from './Driver'
9
+ import type { NullConstraint } from './NullConstraint'
10
+ import type { ReferentialAction } from './ReferentialAction'
11
+ import type { Knex } from 'knex'
12
+
13
+ class TableBuilder {
14
+ private readonly table: string
15
+
16
+ private readonly knexTableBuilder: Knex.TableBuilder
17
+
18
+ private readonly driver: Driver
19
+
20
+ public constructor(
21
+ table: string,
22
+ knexTableBuilder: Knex.TableBuilder,
23
+ driver: Driver,
24
+ ) {
25
+ this.table = table
26
+ this.knexTableBuilder = knexTableBuilder
27
+ this.driver = driver
28
+ }
29
+
30
+ public boolean(
31
+ column: string,
32
+ nullConstraint: NullConstraint,
33
+ ): ColumnBuilder {
34
+ const knexColumnBuilder = this.knexTableBuilder
35
+ .specificType(column, this.driver.dataType.boolean)
36
+ setNullConstraint(knexColumnBuilder, nullConstraint)
37
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
38
+ }
39
+
40
+ public tinyInt(
41
+ column: string,
42
+ nullConstraint: NullConstraint,
43
+ ): ColumnBuilder {
44
+ const knexColumnBuilder = this.knexTableBuilder
45
+ .specificType(column, this.driver.dataType.tinyInt)
46
+ setNullConstraint(knexColumnBuilder, nullConstraint)
47
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
48
+ }
49
+
50
+ public smallInt(
51
+ column: string,
52
+ nullConstraint: NullConstraint,
53
+ ): ColumnBuilder {
54
+ const knexColumnBuilder = this.knexTableBuilder
55
+ .specificType(column, this.driver.dataType.smallInt)
56
+ setNullConstraint(knexColumnBuilder, nullConstraint)
57
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
58
+ }
59
+
60
+ public smallIntPrimaryAutoIncrement(
61
+ column: string,
62
+ ): ColumnBuilder {
63
+ const knexColumnBuilder = this.knexTableBuilder
64
+ .specificType(column, this.driver.dataType.smallIntPrimaryAutoIncrement)
65
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
66
+ }
67
+
68
+ public int(
69
+ column: string,
70
+ nullConstraint: NullConstraint,
71
+ ): ColumnBuilder {
72
+ const knexColumnBuilder = this.knexTableBuilder
73
+ .specificType(column, this.driver.dataType.int)
74
+ setNullConstraint(knexColumnBuilder, nullConstraint)
75
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
76
+ }
77
+
78
+ public intPrimaryAutoIncrement(
79
+ column: string,
80
+ ): ColumnBuilder {
81
+ const knexColumnBuilder = this.knexTableBuilder
82
+ .specificType(column, this.driver.dataType.intPrimaryAutoIncrement)
83
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
84
+ }
85
+
86
+ public bigInt(
87
+ column: string,
88
+ nullConstraint: NullConstraint,
89
+ ): ColumnBuilder {
90
+ const knexColumnBuilder = this.knexTableBuilder
91
+ .specificType(column, this.driver.dataType.bigInt)
92
+ setNullConstraint(knexColumnBuilder, nullConstraint)
93
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
94
+ }
95
+
96
+ public bigIntPrimaryAutoIncrement(
97
+ column: string,
98
+ ): ColumnBuilder {
99
+ const knexColumnBuilder = this.knexTableBuilder
100
+ .specificType(column, this.driver.dataType.bigIntPrimaryAutoIncrement)
101
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
102
+ }
103
+
104
+ public float(
105
+ column: string,
106
+ nullConstraint: NullConstraint,
107
+ ): ColumnBuilder {
108
+ const knexColumnBuilder = this.knexTableBuilder
109
+ .specificType(column, this.driver.dataType.float)
110
+ setNullConstraint(knexColumnBuilder, nullConstraint)
111
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
112
+ }
113
+
114
+ public double(
115
+ column: string,
116
+ nullConstraint: NullConstraint,
117
+ ): ColumnBuilder {
118
+ const knexColumnBuilder = this.knexTableBuilder
119
+ .specificType(column, this.driver.dataType.double)
120
+ setNullConstraint(knexColumnBuilder, nullConstraint)
121
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
122
+ }
123
+
124
+ public numeric(
125
+ column: string,
126
+ precision: number,
127
+ scale: number,
128
+ nullConstraint: NullConstraint,
129
+ ): ColumnBuilder {
130
+ validateColumnPrecision(precision, scale)
131
+ const knexColumnBuilder = this.knexTableBuilder
132
+ .specificType(column, this.driver.dataType.numeric(precision, scale))
133
+ setNullConstraint(knexColumnBuilder, nullConstraint)
134
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
135
+ }
136
+
137
+ public char(
138
+ column: string,
139
+ length: number,
140
+ nullConstraint: NullConstraint,
141
+ ): ColumnBuilder {
142
+ validateColumnLength(length)
143
+ const knexColumnBuilder = this.knexTableBuilder
144
+ .specificType(column, this.driver.dataType.char(length))
145
+ setNullConstraint(knexColumnBuilder, nullConstraint)
146
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
147
+ }
148
+
149
+ public varChar(
150
+ column: string,
151
+ maxLength: number,
152
+ nullConstraint: NullConstraint,
153
+ ): ColumnBuilder {
154
+ validateColumnMaxLength(maxLength)
155
+ const knexColumnBuilder = this.knexTableBuilder
156
+ .specificType(column, this.driver.dataType.varChar(maxLength))
157
+ setNullConstraint(knexColumnBuilder, nullConstraint)
158
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
159
+ }
160
+
161
+ public tinyText(
162
+ column: string,
163
+ nullConstraint: NullConstraint,
164
+ ): ColumnBuilder {
165
+ const knexColumnBuilder = this.knexTableBuilder
166
+ .specificType(column, this.driver.dataType.tinyText)
167
+ setNullConstraint(knexColumnBuilder, nullConstraint)
168
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
169
+ }
170
+
171
+ public text(
172
+ column: string,
173
+ nullConstraint: NullConstraint,
174
+ ): ColumnBuilder {
175
+ const knexColumnBuilder = this.knexTableBuilder
176
+ .specificType(column, this.driver.dataType.text)
177
+ setNullConstraint(knexColumnBuilder, nullConstraint)
178
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
179
+ }
180
+
181
+ public longText(
182
+ column: string,
183
+ nullConstraint: NullConstraint,
184
+ ): ColumnBuilder {
185
+ const knexColumnBuilder = this.knexTableBuilder
186
+ .specificType(column, this.driver.dataType.longText)
187
+ setNullConstraint(knexColumnBuilder, nullConstraint)
188
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
189
+ }
190
+
191
+ public binary(
192
+ column: string,
193
+ length: number,
194
+ nullConstraint: NullConstraint,
195
+ ): ColumnBuilder {
196
+ validateColumnLength(length)
197
+ const knexColumnBuilder = this.knexTableBuilder
198
+ .specificType(column, this.driver.dataType.binary(length))
199
+ setNullConstraint(knexColumnBuilder, nullConstraint)
200
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
201
+ }
202
+
203
+ public varBinary(
204
+ column: string,
205
+ maxLength: number,
206
+ nullConstraint: NullConstraint,
207
+ ): ColumnBuilder {
208
+ validateColumnMaxLength(maxLength)
209
+ const knexColumnBuilder = this.knexTableBuilder
210
+ .specificType(column, this.driver.dataType.varBinary(maxLength))
211
+ setNullConstraint(knexColumnBuilder, nullConstraint)
212
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
213
+ }
214
+
215
+ public tinyBlob(
216
+ column: string,
217
+ nullConstraint: NullConstraint,
218
+ ): ColumnBuilder {
219
+ const knexColumnBuilder = this.knexTableBuilder
220
+ .specificType(column, this.driver.dataType.tinyBlob)
221
+ setNullConstraint(knexColumnBuilder, nullConstraint)
222
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
223
+ }
224
+
225
+ public blob(
226
+ column: string,
227
+ nullConstraint: NullConstraint,
228
+ ): ColumnBuilder {
229
+ const knexColumnBuilder = this.knexTableBuilder
230
+ .specificType(column, this.driver.dataType.blob)
231
+ setNullConstraint(knexColumnBuilder, nullConstraint)
232
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
233
+ }
234
+
235
+ public longBlob(
236
+ column: string,
237
+ nullConstraint: NullConstraint,
238
+ ): ColumnBuilder {
239
+ const knexColumnBuilder = this.knexTableBuilder
240
+ .specificType(column, this.driver.dataType.longBlob)
241
+ setNullConstraint(knexColumnBuilder, nullConstraint)
242
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
243
+ }
244
+
245
+ public timestamp(
246
+ column: string,
247
+ nullConstraint: NullConstraint,
248
+ ): ColumnBuilder {
249
+ const knexColumnBuilder = this.knexTableBuilder
250
+ .specificType(column, this.driver.dataType.timestamp)
251
+ setNullConstraint(knexColumnBuilder, nullConstraint)
252
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
253
+ }
254
+
255
+ public dateTime(
256
+ column: string,
257
+ nullConstraint: NullConstraint,
258
+ ): ColumnBuilder {
259
+ const knexColumnBuilder = this.knexTableBuilder
260
+ .specificType(column, this.driver.dataType.dateTime)
261
+ setNullConstraint(knexColumnBuilder, nullConstraint)
262
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
263
+ }
264
+
265
+ public date(
266
+ column: string,
267
+ nullConstraint: NullConstraint,
268
+ ): ColumnBuilder {
269
+ const knexColumnBuilder = this.knexTableBuilder
270
+ .specificType(column, this.driver.dataType.date)
271
+ setNullConstraint(knexColumnBuilder, nullConstraint)
272
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
273
+ }
274
+
275
+ public time(
276
+ column: string,
277
+ nullConstraint: NullConstraint,
278
+ ): ColumnBuilder {
279
+ const knexColumnBuilder = this.knexTableBuilder
280
+ .specificType(column, this.driver.dataType.time)
281
+ setNullConstraint(knexColumnBuilder, nullConstraint)
282
+ return new ColumnBuilder(this.table, column, knexColumnBuilder)
283
+ }
284
+
285
+ public dropColumn(column: string): this {
286
+ this.knexTableBuilder.dropColumn(column)
287
+ return this
288
+ }
289
+
290
+ public renameColumn(column: string, newName: string): this {
291
+ this.knexTableBuilder.renameColumn(column, newName)
292
+ return this
293
+ }
294
+
295
+ public setNull(column: string): this {
296
+ this.knexTableBuilder.setNullable(column)
297
+ return this
298
+ }
299
+
300
+ public setNotNull(column: string): this {
301
+ this.knexTableBuilder.dropNullable(column)
302
+ return this
303
+ }
304
+
305
+ public setPrimary(columns: string[]): this {
306
+ this.knexTableBuilder.primary(columns, {
307
+ constraintName: 'PRIMARY',
308
+ })
309
+ return this
310
+ }
311
+
312
+ public dropPrimary(): this {
313
+ this.knexTableBuilder.dropPrimary('PRIMARY')
314
+ return this
315
+ }
316
+
317
+ public addForeign(
318
+ columns: string[],
319
+ referencedTable: string,
320
+ referencedColumns: string[],
321
+ onUpdate: ReferentialAction,
322
+ onDelete: ReferentialAction,
323
+ ): this {
324
+ this.knexTableBuilder
325
+ .foreign(columns, getConstraintName('FOREIGN', this.table, columns))
326
+ .references(referencedColumns)
327
+ .inTable(referencedTable)
328
+ .onUpdate(getReferentialActionSql(onUpdate))
329
+ .onDelete(getReferentialActionSql(onDelete))
330
+ return this
331
+ }
332
+
333
+ public dropForeign(columns: string[]): this {
334
+ this.knexTableBuilder
335
+ .dropForeign(columns, getConstraintName('FOREIGN', this.table, columns))
336
+ return this
337
+ }
338
+
339
+ public addIndex(columns: string[]): this {
340
+ this.knexTableBuilder
341
+ .index(columns, getConstraintName('INDEX', this.table, columns))
342
+ return this
343
+ }
344
+
345
+ public dropIndex(columns: string[]): this {
346
+ this.knexTableBuilder
347
+ .dropIndex(columns, getConstraintName('INDEX', this.table, columns))
348
+ return this
349
+ }
350
+
351
+ public addUnique(columns: string[]): this {
352
+ this.knexTableBuilder.unique(columns, {
353
+ indexName: getConstraintName('UNIQUE', this.table, columns),
354
+ })
355
+ return this
356
+ }
357
+
358
+ public dropUnique(columns: string[]): this {
359
+ this.knexTableBuilder
360
+ .dropUnique(columns, getConstraintName('UNIQUE', this.table, columns))
361
+ return this
362
+ }
363
+ }
364
+
365
+ export {
366
+ TableBuilder,
367
+ }
@@ -0,0 +1,12 @@
1
+ import { Database } from '../../Database';
2
+ import type { Tls } from '../../../tls/Tls';
3
+ declare const createMysqlDatabase: (params: {
4
+ host: string;
5
+ port: number;
6
+ tls?: Tls;
7
+ user: string;
8
+ password?: string;
9
+ database: string;
10
+ maxConnections?: number;
11
+ }) => Database;
12
+ export { createMysqlDatabase, };
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createMysqlDatabase = void 0;
7
+ const knex_1 = __importDefault(require("knex"));
8
+ const getTls_1 = require("../../../tls/getTls");
9
+ const Database_1 = require("../../Database");
10
+ const driver_1 = require("./driver");
11
+ const typeCast_1 = require("./typeCast");
12
+ const createMysqlDatabase = (params) => {
13
+ return new Database_1.Database((0, knex_1.default)({
14
+ client: 'mysql2',
15
+ connection: {
16
+ host: params.host,
17
+ port: params.port,
18
+ ssl: (0, getTls_1.getTls)(params.tls),
19
+ user: params.user,
20
+ password: params.password,
21
+ database: params.database,
22
+ dateStrings: true,
23
+ typeCast: typeCast_1.typeCast,
24
+ },
25
+ pool: {
26
+ min: 0,
27
+ max: params.maxConnections,
28
+ },
29
+ useNullAsDefault: true,
30
+ }), driver_1.driver);
31
+ };
32
+ exports.createMysqlDatabase = createMysqlDatabase;
@@ -0,0 +1,39 @@
1
+ import knex from 'knex'
2
+ import { getTls } from '../../../tls/getTls'
3
+ import { Database } from '../../Database'
4
+ import { driver } from './driver'
5
+ import { typeCast } from './typeCast'
6
+ import type { Tls } from '../../../tls/Tls'
7
+
8
+ const createMysqlDatabase = (params: {
9
+ host: string,
10
+ port: number,
11
+ tls?: Tls,
12
+ user: string,
13
+ password?: string,
14
+ database: string,
15
+ maxConnections?: number,
16
+ }): Database => {
17
+ return new Database(knex({
18
+ client: 'mysql2',
19
+ connection: {
20
+ host: params.host,
21
+ port: params.port,
22
+ ssl: getTls(params.tls),
23
+ user: params.user,
24
+ password: params.password,
25
+ database: params.database,
26
+ dateStrings: true,
27
+ typeCast,
28
+ },
29
+ pool: {
30
+ min: 0,
31
+ max: params.maxConnections,
32
+ },
33
+ useNullAsDefault: true,
34
+ }), driver)
35
+ }
36
+
37
+ export {
38
+ createMysqlDatabase,
39
+ }
@@ -0,0 +1,3 @@
1
+ import type { Driver } from '../../Driver';
2
+ declare const driver: Driver;
3
+ export { driver, };
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.driver = void 0;
4
+ const driver = {
5
+ dataType: {
6
+ boolean: 'BIT',
7
+ tinyInt: 'TINYINT',
8
+ smallInt: 'SMALLINT',
9
+ smallIntPrimaryAutoIncrement: 'SMALLINT PRIMARY KEY AUTO_INCREMENT',
10
+ int: 'INTEGER',
11
+ intPrimaryAutoIncrement: 'INTEGER PRIMARY KEY AUTO_INCREMENT',
12
+ bigInt: 'BIGINT',
13
+ bigIntPrimaryAutoIncrement: 'BIGINT PRIMARY KEY AUTO_INCREMENT',
14
+ float: 'FLOAT',
15
+ double: 'DOUBLE',
16
+ numeric: (precision, scale) => {
17
+ return `NUMERIC(${precision}, ${scale})`;
18
+ },
19
+ char: (length) => {
20
+ return `CHAR(${length})`;
21
+ },
22
+ varChar: (maxLength) => {
23
+ return `VARCHAR(${maxLength})`;
24
+ },
25
+ tinyText: 'TINYTEXT',
26
+ text: 'TEXT',
27
+ longText: 'LONGTEXT',
28
+ binary: (length) => {
29
+ return `BINARY(${length})`;
30
+ },
31
+ varBinary: (maxLength) => {
32
+ return `VARBINARY(${maxLength})`;
33
+ },
34
+ tinyBlob: 'TINYBLOB',
35
+ blob: 'BLOB',
36
+ longBlob: 'LONGBLOB',
37
+ timestamp: 'TIMESTAMP(3)',
38
+ dateTime: 'DATETIME(3)',
39
+ date: 'DATE',
40
+ time: 'TIME(3)',
41
+ },
42
+ };
43
+ exports.driver = driver;
@@ -0,0 +1,45 @@
1
+ import type { Driver } from '../../Driver'
2
+
3
+ const driver: Driver = {
4
+ dataType: {
5
+ boolean: 'BIT',
6
+ tinyInt: 'TINYINT',
7
+ smallInt: 'SMALLINT',
8
+ smallIntPrimaryAutoIncrement: 'SMALLINT PRIMARY KEY AUTO_INCREMENT',
9
+ int: 'INTEGER',
10
+ intPrimaryAutoIncrement: 'INTEGER PRIMARY KEY AUTO_INCREMENT',
11
+ bigInt: 'BIGINT',
12
+ bigIntPrimaryAutoIncrement: 'BIGINT PRIMARY KEY AUTO_INCREMENT',
13
+ float: 'FLOAT',
14
+ double: 'DOUBLE',
15
+ numeric: (precision: number, scale: number) => {
16
+ return `NUMERIC(${precision}, ${scale})`
17
+ },
18
+ char: (length: number) => {
19
+ return `CHAR(${length})`
20
+ },
21
+ varChar: (maxLength: number) => {
22
+ return `VARCHAR(${maxLength})`
23
+ },
24
+ tinyText: 'TINYTEXT',
25
+ text: 'TEXT',
26
+ longText: 'LONGTEXT',
27
+ binary: (length: number) => {
28
+ return `BINARY(${length})`
29
+ },
30
+ varBinary: (maxLength: number) => {
31
+ return `VARBINARY(${maxLength})`
32
+ },
33
+ tinyBlob: 'TINYBLOB',
34
+ blob: 'BLOB',
35
+ longBlob: 'LONGBLOB',
36
+ timestamp: 'TIMESTAMP(3)',
37
+ dateTime: 'DATETIME(3)',
38
+ date: 'DATE',
39
+ time: 'TIME(3)',
40
+ },
41
+ }
42
+
43
+ export {
44
+ driver,
45
+ }
@@ -0,0 +1,2 @@
1
+ declare const typeCast: (field: any, next: any) => any;
2
+ export { typeCast, };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.typeCast = void 0;
4
+ let value;
5
+ const typeCast = (field, next) => {
6
+ switch (field.type) {
7
+ case 'BIT':
8
+ value = field.buffer();
9
+ return value === null ? null : Boolean(value[0]);
10
+ case 'NEWDECIMAL':
11
+ value = field.string();
12
+ return value === null ? null : parseFloat(value);
13
+ default:
14
+ return next();
15
+ }
16
+ };
17
+ exports.typeCast = typeCast;
@@ -0,0 +1,18 @@
1
+ let value: any
2
+
3
+ const typeCast = (field: any, next: any): any => {
4
+ switch (field.type) {
5
+ case 'BIT':
6
+ value = field.buffer()
7
+ return value === null ? null : Boolean(value[0])
8
+ case 'NEWDECIMAL':
9
+ value = field.string()
10
+ return value === null ? null : parseFloat(value)
11
+ default:
12
+ return next()
13
+ }
14
+ }
15
+
16
+ export {
17
+ typeCast,
18
+ }
@@ -0,0 +1,3 @@
1
+ import type { Driver } from '../../Driver';
2
+ declare const driver: Driver;
3
+ export { driver, };
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.driver = void 0;
4
+ const driver = {
5
+ dataType: {
6
+ boolean: 'BOOLEAN',
7
+ tinyInt: 'SMALLINT',
8
+ smallInt: 'SMALLINT',
9
+ smallIntPrimaryAutoIncrement: 'SMALLSERIAL PRIMARY KEY',
10
+ int: 'INTEGER',
11
+ intPrimaryAutoIncrement: 'SERIAL PRIMARY KEY',
12
+ bigInt: 'BIGINT',
13
+ bigIntPrimaryAutoIncrement: 'BIGSERIAL PRIMARY KEY',
14
+ float: 'REAL',
15
+ double: 'DOUBLE PRECISION',
16
+ numeric: (precision, scale) => {
17
+ return `NUMERIC(${precision}, ${scale})`;
18
+ },
19
+ char: (length) => {
20
+ return `CHAR(${length})`;
21
+ },
22
+ varChar: (maxLength) => {
23
+ return `VARCHAR(${maxLength})`;
24
+ },
25
+ tinyText: 'TEXT',
26
+ text: 'TEXT',
27
+ longText: 'TEXT',
28
+ binary: () => {
29
+ return 'BYTEA';
30
+ },
31
+ varBinary: () => {
32
+ return 'BYTEA';
33
+ },
34
+ tinyBlob: 'BYTEA',
35
+ blob: 'BYTEA',
36
+ longBlob: 'BYTEA',
37
+ timestamp: 'TIMESTAMP(3)',
38
+ dateTime: 'TIMESTAMP(3)',
39
+ date: 'DATE',
40
+ time: 'TIME(3)',
41
+ },
42
+ };
43
+ exports.driver = driver;
@@ -0,0 +1,45 @@
1
+ import type { Driver } from '../../Driver'
2
+
3
+ const driver: Driver = {
4
+ dataType: {
5
+ boolean: 'BOOLEAN',
6
+ tinyInt: 'SMALLINT',
7
+ smallInt: 'SMALLINT',
8
+ smallIntPrimaryAutoIncrement: 'SMALLSERIAL PRIMARY KEY',
9
+ int: 'INTEGER',
10
+ intPrimaryAutoIncrement: 'SERIAL PRIMARY KEY',
11
+ bigInt: 'BIGINT',
12
+ bigIntPrimaryAutoIncrement: 'BIGSERIAL PRIMARY KEY',
13
+ float: 'REAL',
14
+ double: 'DOUBLE PRECISION',
15
+ numeric: (precision: number, scale: number) => {
16
+ return `NUMERIC(${precision}, ${scale})`
17
+ },
18
+ char: (length: number) => {
19
+ return `CHAR(${length})`
20
+ },
21
+ varChar: (maxLength: number) => {
22
+ return `VARCHAR(${maxLength})`
23
+ },
24
+ tinyText: 'TEXT',
25
+ text: 'TEXT',
26
+ longText: 'TEXT',
27
+ binary: () => {
28
+ return 'BYTEA'
29
+ },
30
+ varBinary: () => {
31
+ return 'BYTEA'
32
+ },
33
+ tinyBlob: 'BYTEA',
34
+ blob: 'BYTEA',
35
+ longBlob: 'BYTEA',
36
+ timestamp: 'TIMESTAMP(3)',
37
+ dateTime: 'TIMESTAMP(3)',
38
+ date: 'DATE',
39
+ time: 'TIME(3)',
40
+ },
41
+ }
42
+
43
+ export {
44
+ driver,
45
+ }
@@ -0,0 +1,3 @@
1
+ import type { Driver } from '../../Driver';
2
+ declare const driver: Driver;
3
+ export { driver, };