@strapi/database 5.12.0 → 5.12.2

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 (321) hide show
  1. package/dist/connection.js +43 -0
  2. package/dist/connection.js.map +1 -0
  3. package/dist/connection.mjs +41 -0
  4. package/dist/connection.mjs.map +1 -0
  5. package/dist/dialects/dialect.js +54 -0
  6. package/dist/dialects/dialect.js.map +1 -0
  7. package/dist/dialects/dialect.mjs +52 -0
  8. package/dist/dialects/dialect.mjs.map +1 -0
  9. package/dist/dialects/index.js +44 -0
  10. package/dist/dialects/index.js.map +1 -0
  11. package/dist/dialects/index.mjs +42 -0
  12. package/dist/dialects/index.mjs.map +1 -0
  13. package/dist/dialects/mysql/constants.js +8 -0
  14. package/dist/dialects/mysql/constants.js.map +1 -0
  15. package/dist/dialects/mysql/constants.mjs +5 -0
  16. package/dist/dialects/mysql/constants.mjs.map +1 -0
  17. package/dist/dialects/mysql/database-inspector.js +35 -0
  18. package/dist/dialects/mysql/database-inspector.js.map +1 -0
  19. package/dist/dialects/mysql/database-inspector.mjs +33 -0
  20. package/dist/dialects/mysql/database-inspector.mjs.map +1 -0
  21. package/dist/dialects/mysql/index.js +75 -0
  22. package/dist/dialects/mysql/index.js.map +1 -0
  23. package/dist/dialects/mysql/index.mjs +73 -0
  24. package/dist/dialects/mysql/index.mjs.map +1 -0
  25. package/dist/dialects/mysql/schema-inspector.js +297 -0
  26. package/dist/dialects/mysql/schema-inspector.js.map +1 -0
  27. package/dist/dialects/mysql/schema-inspector.mjs +295 -0
  28. package/dist/dialects/mysql/schema-inspector.mjs.map +1 -0
  29. package/dist/dialects/postgresql/index.js +62 -0
  30. package/dist/dialects/postgresql/index.js.map +1 -0
  31. package/dist/dialects/postgresql/index.mjs +60 -0
  32. package/dist/dialects/postgresql/index.mjs.map +1 -0
  33. package/dist/dialects/postgresql/schema-inspector.js +316 -0
  34. package/dist/dialects/postgresql/schema-inspector.js.map +1 -0
  35. package/dist/dialects/postgresql/schema-inspector.mjs +314 -0
  36. package/dist/dialects/postgresql/schema-inspector.mjs.map +1 -0
  37. package/dist/dialects/sqlite/index.js +82 -0
  38. package/dist/dialects/sqlite/index.js.map +1 -0
  39. package/dist/dialects/sqlite/index.mjs +80 -0
  40. package/dist/dialects/sqlite/index.mjs.map +1 -0
  41. package/dist/dialects/sqlite/schema-inspector.js +211 -0
  42. package/dist/dialects/sqlite/schema-inspector.js.map +1 -0
  43. package/dist/dialects/sqlite/schema-inspector.mjs +209 -0
  44. package/dist/dialects/sqlite/schema-inspector.mjs.map +1 -0
  45. package/dist/entity-manager/entity-repository.js +139 -0
  46. package/dist/entity-manager/entity-repository.js.map +1 -0
  47. package/dist/entity-manager/entity-repository.mjs +137 -0
  48. package/dist/entity-manager/entity-repository.mjs.map +1 -0
  49. package/dist/entity-manager/index.js +1186 -0
  50. package/dist/entity-manager/index.js.map +1 -0
  51. package/dist/entity-manager/index.mjs +1184 -0
  52. package/dist/entity-manager/index.mjs.map +1 -0
  53. package/dist/entity-manager/morph-relations.js +73 -0
  54. package/dist/entity-manager/morph-relations.js.map +1 -0
  55. package/dist/entity-manager/morph-relations.mjs +69 -0
  56. package/dist/entity-manager/morph-relations.mjs.map +1 -0
  57. package/dist/entity-manager/regular-relations.js +247 -0
  58. package/dist/entity-manager/regular-relations.js.map +1 -0
  59. package/dist/entity-manager/regular-relations.mjs +242 -0
  60. package/dist/entity-manager/regular-relations.mjs.map +1 -0
  61. package/dist/entity-manager/relations-orderer.js +221 -0
  62. package/dist/entity-manager/relations-orderer.js.map +1 -0
  63. package/dist/entity-manager/relations-orderer.mjs +218 -0
  64. package/dist/entity-manager/relations-orderer.mjs.map +1 -0
  65. package/dist/errors/database.js +13 -0
  66. package/dist/errors/database.js.map +1 -0
  67. package/dist/errors/database.mjs +11 -0
  68. package/dist/errors/database.mjs.map +1 -0
  69. package/dist/errors/index.js +18 -0
  70. package/dist/errors/index.js.map +1 -0
  71. package/dist/errors/index.mjs +7 -0
  72. package/dist/errors/index.mjs.map +1 -0
  73. package/dist/errors/invalid-date.js +13 -0
  74. package/dist/errors/invalid-date.js.map +1 -0
  75. package/dist/errors/invalid-date.mjs +11 -0
  76. package/dist/errors/invalid-date.mjs.map +1 -0
  77. package/dist/errors/invalid-datetime.js +13 -0
  78. package/dist/errors/invalid-datetime.js.map +1 -0
  79. package/dist/errors/invalid-datetime.mjs +11 -0
  80. package/dist/errors/invalid-datetime.mjs.map +1 -0
  81. package/dist/errors/invalid-relation.js +13 -0
  82. package/dist/errors/invalid-relation.js.map +1 -0
  83. package/dist/errors/invalid-relation.mjs +11 -0
  84. package/dist/errors/invalid-relation.mjs.map +1 -0
  85. package/dist/errors/invalid-time.js +13 -0
  86. package/dist/errors/invalid-time.js.map +1 -0
  87. package/dist/errors/invalid-time.mjs +11 -0
  88. package/dist/errors/invalid-time.mjs.map +1 -0
  89. package/dist/errors/not-null.js +17 -0
  90. package/dist/errors/not-null.js.map +1 -0
  91. package/dist/errors/not-null.mjs +15 -0
  92. package/dist/errors/not-null.mjs.map +1 -0
  93. package/dist/fields/biginteger.js +9 -0
  94. package/dist/fields/biginteger.js.map +1 -0
  95. package/dist/fields/biginteger.mjs +7 -0
  96. package/dist/fields/biginteger.mjs.map +1 -0
  97. package/dist/fields/boolean.js +48 -0
  98. package/dist/fields/boolean.js.map +1 -0
  99. package/dist/fields/boolean.mjs +46 -0
  100. package/dist/fields/boolean.mjs.map +1 -0
  101. package/dist/fields/date.js +16 -0
  102. package/dist/fields/date.js.map +1 -0
  103. package/dist/fields/date.mjs +14 -0
  104. package/dist/fields/date.mjs.map +1 -0
  105. package/dist/fields/datetime.js +37 -0
  106. package/dist/fields/datetime.js.map +1 -0
  107. package/dist/fields/datetime.mjs +16 -0
  108. package/dist/fields/datetime.mjs.map +1 -0
  109. package/dist/fields/field.js +16 -0
  110. package/dist/fields/field.js.map +1 -0
  111. package/dist/fields/field.mjs +14 -0
  112. package/dist/fields/field.mjs.map +1 -0
  113. package/dist/fields/index.js +45 -0
  114. package/dist/fields/index.js.map +1 -0
  115. package/dist/fields/index.mjs +43 -0
  116. package/dist/fields/index.mjs.map +1 -0
  117. package/dist/fields/json.js +36 -0
  118. package/dist/fields/json.js.map +1 -0
  119. package/dist/fields/json.mjs +34 -0
  120. package/dist/fields/json.mjs.map +1 -0
  121. package/dist/fields/number.js +20 -0
  122. package/dist/fields/number.js.map +1 -0
  123. package/dist/fields/number.mjs +18 -0
  124. package/dist/fields/number.mjs.map +1 -0
  125. package/dist/fields/shared/parsers.js +91 -0
  126. package/dist/fields/shared/parsers.js.map +1 -0
  127. package/dist/fields/shared/parsers.mjs +68 -0
  128. package/dist/fields/shared/parsers.mjs.map +1 -0
  129. package/dist/fields/string.js +16 -0
  130. package/dist/fields/string.js.map +1 -0
  131. package/dist/fields/string.mjs +14 -0
  132. package/dist/fields/string.mjs.map +1 -0
  133. package/dist/fields/time.js +17 -0
  134. package/dist/fields/time.js.map +1 -0
  135. package/dist/fields/time.mjs +15 -0
  136. package/dist/fields/time.mjs.map +1 -0
  137. package/dist/fields/timestamp.js +37 -0
  138. package/dist/fields/timestamp.js.map +1 -0
  139. package/dist/fields/timestamp.mjs +16 -0
  140. package/dist/fields/timestamp.mjs.map +1 -0
  141. package/dist/index.js +33 -8569
  142. package/dist/index.js.map +1 -1
  143. package/dist/index.mjs +16 -8532
  144. package/dist/index.mjs.map +1 -1
  145. package/dist/lifecycles/index.js +73 -0
  146. package/dist/lifecycles/index.js.map +1 -0
  147. package/dist/lifecycles/index.mjs +71 -0
  148. package/dist/lifecycles/index.mjs.map +1 -0
  149. package/dist/lifecycles/subscribers/index.js +10 -0
  150. package/dist/lifecycles/subscribers/index.js.map +1 -0
  151. package/dist/lifecycles/subscribers/index.mjs +8 -0
  152. package/dist/lifecycles/subscribers/index.mjs.map +1 -0
  153. package/dist/lifecycles/subscribers/models-lifecycles.js +13 -0
  154. package/dist/lifecycles/subscribers/models-lifecycles.js.map +1 -0
  155. package/dist/lifecycles/subscribers/models-lifecycles.mjs +11 -0
  156. package/dist/lifecycles/subscribers/models-lifecycles.mjs.map +1 -0
  157. package/dist/lifecycles/subscribers/timestamps.js +55 -0
  158. package/dist/lifecycles/subscribers/timestamps.js.map +1 -0
  159. package/dist/lifecycles/subscribers/timestamps.mjs +53 -0
  160. package/dist/lifecycles/subscribers/timestamps.mjs.map +1 -0
  161. package/dist/metadata/index.js +24 -0
  162. package/dist/metadata/index.js.map +1 -0
  163. package/dist/metadata/index.mjs +16 -0
  164. package/dist/metadata/index.mjs.map +1 -0
  165. package/dist/metadata/metadata.js +100 -0
  166. package/dist/metadata/metadata.js.map +1 -0
  167. package/dist/metadata/metadata.mjs +98 -0
  168. package/dist/metadata/metadata.mjs.map +1 -0
  169. package/dist/metadata/relations.js +545 -0
  170. package/dist/metadata/relations.js.map +1 -0
  171. package/dist/metadata/relations.mjs +536 -0
  172. package/dist/metadata/relations.mjs.map +1 -0
  173. package/dist/migrations/common.js +8 -0
  174. package/dist/migrations/common.js.map +1 -0
  175. package/dist/migrations/common.mjs +6 -0
  176. package/dist/migrations/common.mjs.map +1 -0
  177. package/dist/migrations/index.js +39 -0
  178. package/dist/migrations/index.js.map +1 -0
  179. package/dist/migrations/index.mjs +37 -0
  180. package/dist/migrations/index.mjs.map +1 -0
  181. package/dist/migrations/internal-migrations/5.0.0-01-convert-identifiers-long-than-max-length.js +179 -0
  182. package/dist/migrations/internal-migrations/5.0.0-01-convert-identifiers-long-than-max-length.js.map +1 -0
  183. package/dist/migrations/internal-migrations/5.0.0-01-convert-identifiers-long-than-max-length.mjs +177 -0
  184. package/dist/migrations/internal-migrations/5.0.0-01-convert-identifiers-long-than-max-length.mjs.map +1 -0
  185. package/dist/migrations/internal-migrations/5.0.0-02-document-id.js +125 -0
  186. package/dist/migrations/internal-migrations/5.0.0-02-document-id.js.map +1 -0
  187. package/dist/migrations/internal-migrations/5.0.0-02-document-id.mjs +123 -0
  188. package/dist/migrations/internal-migrations/5.0.0-02-document-id.mjs.map +1 -0
  189. package/dist/migrations/internal-migrations/5.0.0-03-locale.js +41 -0
  190. package/dist/migrations/internal-migrations/5.0.0-03-locale.js.map +1 -0
  191. package/dist/migrations/internal-migrations/5.0.0-03-locale.mjs +39 -0
  192. package/dist/migrations/internal-migrations/5.0.0-03-locale.mjs.map +1 -0
  193. package/dist/migrations/internal-migrations/5.0.0-04-published-at.js +45 -0
  194. package/dist/migrations/internal-migrations/5.0.0-04-published-at.js.map +1 -0
  195. package/dist/migrations/internal-migrations/5.0.0-04-published-at.mjs +43 -0
  196. package/dist/migrations/internal-migrations/5.0.0-04-published-at.mjs.map +1 -0
  197. package/dist/migrations/internal-migrations/5.0.0-05-drop-slug-unique-index.js +43 -0
  198. package/dist/migrations/internal-migrations/5.0.0-05-drop-slug-unique-index.js.map +1 -0
  199. package/dist/migrations/internal-migrations/5.0.0-05-drop-slug-unique-index.mjs +41 -0
  200. package/dist/migrations/internal-migrations/5.0.0-05-drop-slug-unique-index.mjs.map +1 -0
  201. package/dist/migrations/internal-migrations/index.js +26 -0
  202. package/dist/migrations/internal-migrations/index.js.map +1 -0
  203. package/dist/migrations/internal-migrations/index.mjs +24 -0
  204. package/dist/migrations/internal-migrations/index.mjs.map +1 -0
  205. package/dist/migrations/internal.js +63 -0
  206. package/dist/migrations/internal.js.map +1 -0
  207. package/dist/migrations/internal.mjs +61 -0
  208. package/dist/migrations/internal.mjs.map +1 -0
  209. package/dist/migrations/logger.js +24 -0
  210. package/dist/migrations/logger.js.map +1 -0
  211. package/dist/migrations/logger.mjs +22 -0
  212. package/dist/migrations/logger.mjs.map +1 -0
  213. package/dist/migrations/storage.js +39 -0
  214. package/dist/migrations/storage.js.map +1 -0
  215. package/dist/migrations/storage.mjs +37 -0
  216. package/dist/migrations/storage.mjs.map +1 -0
  217. package/dist/migrations/users.js +87 -0
  218. package/dist/migrations/users.js.map +1 -0
  219. package/dist/migrations/users.mjs +85 -0
  220. package/dist/migrations/users.mjs.map +1 -0
  221. package/dist/query/helpers/join.js +127 -0
  222. package/dist/query/helpers/join.js.map +1 -0
  223. package/dist/query/helpers/join.mjs +122 -0
  224. package/dist/query/helpers/join.mjs.map +1 -0
  225. package/dist/query/helpers/order-by.js +167 -0
  226. package/dist/query/helpers/order-by.js.map +1 -0
  227. package/dist/query/helpers/order-by.mjs +163 -0
  228. package/dist/query/helpers/order-by.mjs.map +1 -0
  229. package/dist/query/helpers/populate/apply.js +592 -0
  230. package/dist/query/helpers/populate/apply.js.map +1 -0
  231. package/dist/query/helpers/populate/apply.mjs +590 -0
  232. package/dist/query/helpers/populate/apply.mjs.map +1 -0
  233. package/dist/query/helpers/populate/process.js +92 -0
  234. package/dist/query/helpers/populate/process.js.map +1 -0
  235. package/dist/query/helpers/populate/process.mjs +90 -0
  236. package/dist/query/helpers/populate/process.mjs.map +1 -0
  237. package/dist/query/helpers/search.js +67 -0
  238. package/dist/query/helpers/search.js.map +1 -0
  239. package/dist/query/helpers/search.mjs +65 -0
  240. package/dist/query/helpers/search.mjs.map +1 -0
  241. package/dist/query/helpers/streams/readable.js +131 -0
  242. package/dist/query/helpers/streams/readable.js.map +1 -0
  243. package/dist/query/helpers/streams/readable.mjs +129 -0
  244. package/dist/query/helpers/streams/readable.mjs.map +1 -0
  245. package/dist/query/helpers/transform.js +77 -0
  246. package/dist/query/helpers/transform.js.map +1 -0
  247. package/dist/query/helpers/transform.mjs +73 -0
  248. package/dist/query/helpers/transform.mjs.map +1 -0
  249. package/dist/query/helpers/where.js +372 -0
  250. package/dist/query/helpers/where.js.map +1 -0
  251. package/dist/query/helpers/where.mjs +369 -0
  252. package/dist/query/helpers/where.mjs.map +1 -0
  253. package/dist/query/query-builder.js +507 -0
  254. package/dist/query/query-builder.js.map +1 -0
  255. package/dist/query/query-builder.mjs +505 -0
  256. package/dist/query/query-builder.mjs.map +1 -0
  257. package/dist/repairs/index.js +13 -0
  258. package/dist/repairs/index.js.map +1 -0
  259. package/dist/repairs/index.mjs +11 -0
  260. package/dist/repairs/index.mjs.map +1 -0
  261. package/dist/repairs/operations/remove-orphan-morph-types.js +54 -0
  262. package/dist/repairs/operations/remove-orphan-morph-types.js.map +1 -0
  263. package/dist/repairs/operations/remove-orphan-morph-types.mjs +52 -0
  264. package/dist/repairs/operations/remove-orphan-morph-types.mjs.map +1 -0
  265. package/dist/schema/builder.js +354 -0
  266. package/dist/schema/builder.js.map +1 -0
  267. package/dist/schema/builder.mjs +352 -0
  268. package/dist/schema/builder.mjs.map +1 -0
  269. package/dist/schema/diff.js +379 -0
  270. package/dist/schema/diff.js.map +1 -0
  271. package/dist/schema/diff.mjs +377 -0
  272. package/dist/schema/diff.mjs.map +1 -0
  273. package/dist/schema/index.js +93 -0
  274. package/dist/schema/index.js.map +1 -0
  275. package/dist/schema/index.mjs +91 -0
  276. package/dist/schema/index.mjs.map +1 -0
  277. package/dist/schema/schema.js +266 -0
  278. package/dist/schema/schema.js.map +1 -0
  279. package/dist/schema/schema.mjs +264 -0
  280. package/dist/schema/schema.mjs.map +1 -0
  281. package/dist/schema/storage.js +58 -0
  282. package/dist/schema/storage.js.map +1 -0
  283. package/dist/schema/storage.mjs +56 -0
  284. package/dist/schema/storage.mjs.map +1 -0
  285. package/dist/transaction-context.js +65 -0
  286. package/dist/transaction-context.js.map +1 -0
  287. package/dist/transaction-context.mjs +63 -0
  288. package/dist/transaction-context.mjs.map +1 -0
  289. package/dist/utils/async-curry.js +19 -0
  290. package/dist/utils/async-curry.js.map +1 -0
  291. package/dist/utils/async-curry.mjs +17 -0
  292. package/dist/utils/async-curry.mjs.map +1 -0
  293. package/dist/utils/identifiers/hash.js +30 -0
  294. package/dist/utils/identifiers/hash.js.map +1 -0
  295. package/dist/utils/identifiers/hash.mjs +28 -0
  296. package/dist/utils/identifiers/hash.mjs.map +1 -0
  297. package/dist/utils/identifiers/index.js +414 -0
  298. package/dist/utils/identifiers/index.js.map +1 -0
  299. package/dist/utils/identifiers/index.mjs +411 -0
  300. package/dist/utils/identifiers/index.mjs.map +1 -0
  301. package/dist/utils/knex.js +21 -0
  302. package/dist/utils/knex.js.map +1 -0
  303. package/dist/utils/knex.mjs +18 -0
  304. package/dist/utils/knex.mjs.map +1 -0
  305. package/dist/utils/types.js +51 -0
  306. package/dist/utils/types.js.map +1 -0
  307. package/dist/utils/types.mjs +44 -0
  308. package/dist/utils/types.mjs.map +1 -0
  309. package/dist/validations/index.js +12 -0
  310. package/dist/validations/index.js.map +1 -0
  311. package/dist/validations/index.mjs +10 -0
  312. package/dist/validations/index.mjs.map +1 -0
  313. package/dist/validations/relations/bidirectional.js +64 -0
  314. package/dist/validations/relations/bidirectional.js.map +1 -0
  315. package/dist/validations/relations/bidirectional.mjs +62 -0
  316. package/dist/validations/relations/bidirectional.mjs.map +1 -0
  317. package/dist/validations/relations/index.js +13 -0
  318. package/dist/validations/relations/index.js.map +1 -0
  319. package/dist/validations/relations/index.mjs +11 -0
  320. package/dist/validations/relations/index.mjs.map +1 -0
  321. package/package.json +4 -4
@@ -0,0 +1,11 @@
1
+ import DatabaseError from './database.mjs';
2
+
3
+ class InvalidDateTimeError extends DatabaseError {
4
+ constructor(message = 'Invalid relation format'){
5
+ super(message);
6
+ this.name = 'InvalidDatetimeFormat';
7
+ }
8
+ }
9
+
10
+ export { InvalidDateTimeError as default };
11
+ //# sourceMappingURL=invalid-datetime.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invalid-datetime.mjs","sources":["../../src/errors/invalid-datetime.ts"],"sourcesContent":["import DatabaseError from './database';\n\nexport default class InvalidDateTimeError extends DatabaseError {\n constructor(message = 'Invalid relation format') {\n super(message);\n this.name = 'InvalidDatetimeFormat';\n }\n}\n"],"names":["InvalidDateTimeError","DatabaseError","constructor","message","name"],"mappings":";;AAEe,MAAMA,oBAA6BC,SAAAA,aAAAA,CAAAA;IAChDC,WAAYC,CAAAA,OAAAA,GAAU,yBAAyB,CAAE;AAC/C,QAAA,KAAK,CAACA,OAAAA,CAAAA;QACN,IAAI,CAACC,IAAI,GAAG,uBAAA;AACd;AACF;;;;"}
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var database = require('./database.js');
4
+
5
+ class InvalidRelationError extends database {
6
+ constructor(message = 'Invalid relation format'){
7
+ super(message);
8
+ this.name = 'InvalidRelationFormat';
9
+ }
10
+ }
11
+
12
+ module.exports = InvalidRelationError;
13
+ //# sourceMappingURL=invalid-relation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invalid-relation.js","sources":["../../src/errors/invalid-relation.ts"],"sourcesContent":["import DatabaseError from './database';\n\nexport default class InvalidRelationError extends DatabaseError {\n constructor(message = 'Invalid relation format') {\n super(message);\n this.name = 'InvalidRelationFormat';\n }\n}\n"],"names":["InvalidRelationError","DatabaseError","constructor","message","name"],"mappings":";;;;AAEe,MAAMA,oBAA6BC,SAAAA,QAAAA,CAAAA;IAChDC,WAAYC,CAAAA,OAAAA,GAAU,yBAAyB,CAAE;AAC/C,QAAA,KAAK,CAACA,OAAAA,CAAAA;QACN,IAAI,CAACC,IAAI,GAAG,uBAAA;AACd;AACF;;;;"}
@@ -0,0 +1,11 @@
1
+ import DatabaseError from './database.mjs';
2
+
3
+ class InvalidRelationError extends DatabaseError {
4
+ constructor(message = 'Invalid relation format'){
5
+ super(message);
6
+ this.name = 'InvalidRelationFormat';
7
+ }
8
+ }
9
+
10
+ export { InvalidRelationError as default };
11
+ //# sourceMappingURL=invalid-relation.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invalid-relation.mjs","sources":["../../src/errors/invalid-relation.ts"],"sourcesContent":["import DatabaseError from './database';\n\nexport default class InvalidRelationError extends DatabaseError {\n constructor(message = 'Invalid relation format') {\n super(message);\n this.name = 'InvalidRelationFormat';\n }\n}\n"],"names":["InvalidRelationError","DatabaseError","constructor","message","name"],"mappings":";;AAEe,MAAMA,oBAA6BC,SAAAA,aAAAA,CAAAA;IAChDC,WAAYC,CAAAA,OAAAA,GAAU,yBAAyB,CAAE;AAC/C,QAAA,KAAK,CAACA,OAAAA,CAAAA;QACN,IAAI,CAACC,IAAI,GAAG,uBAAA;AACd;AACF;;;;"}
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var database = require('./database.js');
4
+
5
+ class InvalidTimeError extends database {
6
+ constructor(message = 'Invalid time format, expected HH:mm:ss.SSS'){
7
+ super(message);
8
+ this.name = 'InvalidTimeFormat';
9
+ }
10
+ }
11
+
12
+ module.exports = InvalidTimeError;
13
+ //# sourceMappingURL=invalid-time.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invalid-time.js","sources":["../../src/errors/invalid-time.ts"],"sourcesContent":["import DatabaseError from './database';\n\nexport default class InvalidTimeError extends DatabaseError {\n constructor(message = 'Invalid time format, expected HH:mm:ss.SSS') {\n super(message);\n this.name = 'InvalidTimeFormat';\n }\n}\n"],"names":["InvalidTimeError","DatabaseError","constructor","message","name"],"mappings":";;;;AAEe,MAAMA,gBAAyBC,SAAAA,QAAAA,CAAAA;IAC5CC,WAAYC,CAAAA,OAAAA,GAAU,4CAA4C,CAAE;AAClE,QAAA,KAAK,CAACA,OAAAA,CAAAA;QACN,IAAI,CAACC,IAAI,GAAG,mBAAA;AACd;AACF;;;;"}
@@ -0,0 +1,11 @@
1
+ import DatabaseError from './database.mjs';
2
+
3
+ class InvalidTimeError extends DatabaseError {
4
+ constructor(message = 'Invalid time format, expected HH:mm:ss.SSS'){
5
+ super(message);
6
+ this.name = 'InvalidTimeFormat';
7
+ }
8
+ }
9
+
10
+ export { InvalidTimeError as default };
11
+ //# sourceMappingURL=invalid-time.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invalid-time.mjs","sources":["../../src/errors/invalid-time.ts"],"sourcesContent":["import DatabaseError from './database';\n\nexport default class InvalidTimeError extends DatabaseError {\n constructor(message = 'Invalid time format, expected HH:mm:ss.SSS') {\n super(message);\n this.name = 'InvalidTimeFormat';\n }\n}\n"],"names":["InvalidTimeError","DatabaseError","constructor","message","name"],"mappings":";;AAEe,MAAMA,gBAAyBC,SAAAA,aAAAA,CAAAA;IAC5CC,WAAYC,CAAAA,OAAAA,GAAU,4CAA4C,CAAE;AAClE,QAAA,KAAK,CAACA,OAAAA,CAAAA;QACN,IAAI,CAACC,IAAI,GAAG,mBAAA;AACd;AACF;;;;"}
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var database = require('./database.js');
4
+
5
+ class NotNullError extends database {
6
+ constructor({ column = '' } = {}){
7
+ super(`Not null constraint violation${column ? ` on column ${column}` : ''}.`);
8
+ this.name = 'NotNullError';
9
+ this.details = {
10
+ column
11
+ };
12
+ this.stack = '';
13
+ }
14
+ }
15
+
16
+ module.exports = NotNullError;
17
+ //# sourceMappingURL=not-null.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-null.js","sources":["../../src/errors/not-null.ts"],"sourcesContent":["import DatabaseError from './database';\n\nexport default class NotNullError extends DatabaseError {\n constructor({ column = '' } = {}) {\n super(`Not null constraint violation${column ? ` on column ${column}` : ''}.`);\n this.name = 'NotNullError';\n this.details = { column };\n this.stack = '';\n }\n}\n"],"names":["NotNullError","DatabaseError","constructor","column","name","details","stack"],"mappings":";;;;AAEe,MAAMA,YAAqBC,SAAAA,QAAAA,CAAAA;AACxCC,IAAAA,WAAAA,CAAY,EAAEC,MAAS,GAAA,EAAE,EAAE,GAAG,EAAE,CAAE;AAChC,QAAA,KAAK,CAAC,CAAC,6BAA6B,EAAEA,MAAS,GAAA,CAAC,WAAW,EAAEA,MAAO,CAAA,CAAC,GAAG,EAAA,CAAG,CAAC,CAAC,CAAA;QAC7E,IAAI,CAACC,IAAI,GAAG,cAAA;QACZ,IAAI,CAACC,OAAO,GAAG;AAAEF,YAAAA;AAAO,SAAA;QACxB,IAAI,CAACG,KAAK,GAAG,EAAA;AACf;AACF;;;;"}
@@ -0,0 +1,15 @@
1
+ import DatabaseError from './database.mjs';
2
+
3
+ class NotNullError extends DatabaseError {
4
+ constructor({ column = '' } = {}){
5
+ super(`Not null constraint violation${column ? ` on column ${column}` : ''}.`);
6
+ this.name = 'NotNullError';
7
+ this.details = {
8
+ column
9
+ };
10
+ this.stack = '';
11
+ }
12
+ }
13
+
14
+ export { NotNullError as default };
15
+ //# sourceMappingURL=not-null.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-null.mjs","sources":["../../src/errors/not-null.ts"],"sourcesContent":["import DatabaseError from './database';\n\nexport default class NotNullError extends DatabaseError {\n constructor({ column = '' } = {}) {\n super(`Not null constraint violation${column ? ` on column ${column}` : ''}.`);\n this.name = 'NotNullError';\n this.details = { column };\n this.stack = '';\n }\n}\n"],"names":["NotNullError","DatabaseError","constructor","column","name","details","stack"],"mappings":";;AAEe,MAAMA,YAAqBC,SAAAA,aAAAA,CAAAA;AACxCC,IAAAA,WAAAA,CAAY,EAAEC,MAAS,GAAA,EAAE,EAAE,GAAG,EAAE,CAAE;AAChC,QAAA,KAAK,CAAC,CAAC,6BAA6B,EAAEA,MAAS,GAAA,CAAC,WAAW,EAAEA,MAAO,CAAA,CAAC,GAAG,EAAA,CAAG,CAAC,CAAC,CAAA;QAC7E,IAAI,CAACC,IAAI,GAAG,cAAA;QACZ,IAAI,CAACC,OAAO,GAAG;AAAEF,YAAAA;AAAO,SAAA;QACxB,IAAI,CAACG,KAAK,GAAG,EAAA;AACf;AACF;;;;"}
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ var string = require('./string.js');
4
+
5
+ class BigIntegerField extends string {
6
+ }
7
+
8
+ module.exports = BigIntegerField;
9
+ //# sourceMappingURL=biginteger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"biginteger.js","sources":["../../src/fields/biginteger.ts"],"sourcesContent":["import StringField from './string';\n\nexport default class BigIntegerField extends StringField {}\n"],"names":["BigIntegerField","StringField"],"mappings":";;;;AAEe,MAAMA,eAAwBC,SAAAA,MAAAA,CAAAA;AAAa;;;;"}
@@ -0,0 +1,7 @@
1
+ import StringField from './string.mjs';
2
+
3
+ class BigIntegerField extends StringField {
4
+ }
5
+
6
+ export { BigIntegerField as default };
7
+ //# sourceMappingURL=biginteger.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"biginteger.mjs","sources":["../../src/fields/biginteger.ts"],"sourcesContent":["import StringField from './string';\n\nexport default class BigIntegerField extends StringField {}\n"],"names":["BigIntegerField","StringField"],"mappings":";;AAEe,MAAMA,eAAwBC,SAAAA,WAAAA,CAAAA;AAAa;;;;"}
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ var _ = require('lodash/fp');
4
+ var field = require('./field.js');
5
+
6
+ function isStringOrNumber(value) {
7
+ return typeof value === 'string' || typeof value === 'number';
8
+ }
9
+ class BooleanField extends field {
10
+ toDB(value) {
11
+ if (typeof value === 'boolean') {
12
+ return value;
13
+ }
14
+ if (isStringOrNumber(value) && [
15
+ 'true',
16
+ 't',
17
+ '1',
18
+ 1
19
+ ].includes(value)) {
20
+ return true;
21
+ }
22
+ if (isStringOrNumber(value) && [
23
+ 'false',
24
+ 'f',
25
+ '0',
26
+ 0
27
+ ].includes(value)) {
28
+ return false;
29
+ }
30
+ return Boolean(value);
31
+ }
32
+ fromDB(value) {
33
+ if (typeof value === 'boolean') {
34
+ return value;
35
+ }
36
+ const strVal = _.toString(value);
37
+ if (strVal === '1') {
38
+ return true;
39
+ }
40
+ if (strVal === '0') {
41
+ return false;
42
+ }
43
+ return null;
44
+ }
45
+ }
46
+
47
+ module.exports = BooleanField;
48
+ //# sourceMappingURL=boolean.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boolean.js","sources":["../../src/fields/boolean.ts"],"sourcesContent":["import { toString } from 'lodash/fp';\nimport Field from './field';\n\nfunction isStringOrNumber(value: unknown): value is string | number {\n return typeof value === 'string' || typeof value === 'number';\n}\n\nexport default class BooleanField extends Field {\n toDB(value: unknown) {\n if (typeof value === 'boolean') {\n return value;\n }\n\n if (isStringOrNumber(value) && ['true', 't', '1', 1].includes(value)) {\n return true;\n }\n\n if (isStringOrNumber(value) && ['false', 'f', '0', 0].includes(value)) {\n return false;\n }\n\n return Boolean(value);\n }\n\n fromDB(value: unknown) {\n if (typeof value === 'boolean') {\n return value;\n }\n\n const strVal = toString(value);\n\n if (strVal === '1') {\n return true;\n }\n if (strVal === '0') {\n return false;\n }\n return null;\n }\n}\n"],"names":["isStringOrNumber","value","BooleanField","Field","toDB","includes","Boolean","fromDB","strVal","toString"],"mappings":";;;;;AAGA,SAASA,iBAAiBC,KAAc,EAAA;AACtC,IAAA,OAAO,OAAOA,KAAAA,KAAU,QAAY,IAAA,OAAOA,KAAU,KAAA,QAAA;AACvD;AAEe,MAAMC,YAAqBC,SAAAA,KAAAA,CAAAA;AACxCC,IAAAA,IAAAA,CAAKH,KAAc,EAAE;QACnB,IAAI,OAAOA,UAAU,SAAW,EAAA;YAC9B,OAAOA,KAAAA;AACT;AAEA,QAAA,IAAID,iBAAiBC,KAAU,CAAA,IAAA;AAAC,YAAA,MAAA;AAAQ,YAAA,GAAA;AAAK,YAAA,GAAA;AAAK,YAAA;SAAE,CAACI,QAAQ,CAACJ,KAAQ,CAAA,EAAA;YACpE,OAAO,IAAA;AACT;AAEA,QAAA,IAAID,iBAAiBC,KAAU,CAAA,IAAA;AAAC,YAAA,OAAA;AAAS,YAAA,GAAA;AAAK,YAAA,GAAA;AAAK,YAAA;SAAE,CAACI,QAAQ,CAACJ,KAAQ,CAAA,EAAA;YACrE,OAAO,KAAA;AACT;AAEA,QAAA,OAAOK,OAAQL,CAAAA,KAAAA,CAAAA;AACjB;AAEAM,IAAAA,MAAAA,CAAON,KAAc,EAAE;QACrB,IAAI,OAAOA,UAAU,SAAW,EAAA;YAC9B,OAAOA,KAAAA;AACT;AAEA,QAAA,MAAMO,SAASC,UAASR,CAAAA,KAAAA,CAAAA;AAExB,QAAA,IAAIO,WAAW,GAAK,EAAA;YAClB,OAAO,IAAA;AACT;AACA,QAAA,IAAIA,WAAW,GAAK,EAAA;YAClB,OAAO,KAAA;AACT;QACA,OAAO,IAAA;AACT;AACF;;;;"}
@@ -0,0 +1,46 @@
1
+ import { toString } from 'lodash/fp';
2
+ import Field from './field.mjs';
3
+
4
+ function isStringOrNumber(value) {
5
+ return typeof value === 'string' || typeof value === 'number';
6
+ }
7
+ class BooleanField extends Field {
8
+ toDB(value) {
9
+ if (typeof value === 'boolean') {
10
+ return value;
11
+ }
12
+ if (isStringOrNumber(value) && [
13
+ 'true',
14
+ 't',
15
+ '1',
16
+ 1
17
+ ].includes(value)) {
18
+ return true;
19
+ }
20
+ if (isStringOrNumber(value) && [
21
+ 'false',
22
+ 'f',
23
+ '0',
24
+ 0
25
+ ].includes(value)) {
26
+ return false;
27
+ }
28
+ return Boolean(value);
29
+ }
30
+ fromDB(value) {
31
+ if (typeof value === 'boolean') {
32
+ return value;
33
+ }
34
+ const strVal = toString(value);
35
+ if (strVal === '1') {
36
+ return true;
37
+ }
38
+ if (strVal === '0') {
39
+ return false;
40
+ }
41
+ return null;
42
+ }
43
+ }
44
+
45
+ export { BooleanField as default };
46
+ //# sourceMappingURL=boolean.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boolean.mjs","sources":["../../src/fields/boolean.ts"],"sourcesContent":["import { toString } from 'lodash/fp';\nimport Field from './field';\n\nfunction isStringOrNumber(value: unknown): value is string | number {\n return typeof value === 'string' || typeof value === 'number';\n}\n\nexport default class BooleanField extends Field {\n toDB(value: unknown) {\n if (typeof value === 'boolean') {\n return value;\n }\n\n if (isStringOrNumber(value) && ['true', 't', '1', 1].includes(value)) {\n return true;\n }\n\n if (isStringOrNumber(value) && ['false', 'f', '0', 0].includes(value)) {\n return false;\n }\n\n return Boolean(value);\n }\n\n fromDB(value: unknown) {\n if (typeof value === 'boolean') {\n return value;\n }\n\n const strVal = toString(value);\n\n if (strVal === '1') {\n return true;\n }\n if (strVal === '0') {\n return false;\n }\n return null;\n }\n}\n"],"names":["isStringOrNumber","value","BooleanField","Field","toDB","includes","Boolean","fromDB","strVal","toString"],"mappings":";;;AAGA,SAASA,iBAAiBC,KAAc,EAAA;AACtC,IAAA,OAAO,OAAOA,KAAAA,KAAU,QAAY,IAAA,OAAOA,KAAU,KAAA,QAAA;AACvD;AAEe,MAAMC,YAAqBC,SAAAA,KAAAA,CAAAA;AACxCC,IAAAA,IAAAA,CAAKH,KAAc,EAAE;QACnB,IAAI,OAAOA,UAAU,SAAW,EAAA;YAC9B,OAAOA,KAAAA;AACT;AAEA,QAAA,IAAID,iBAAiBC,KAAU,CAAA,IAAA;AAAC,YAAA,MAAA;AAAQ,YAAA,GAAA;AAAK,YAAA,GAAA;AAAK,YAAA;SAAE,CAACI,QAAQ,CAACJ,KAAQ,CAAA,EAAA;YACpE,OAAO,IAAA;AACT;AAEA,QAAA,IAAID,iBAAiBC,KAAU,CAAA,IAAA;AAAC,YAAA,OAAA;AAAS,YAAA,GAAA;AAAK,YAAA,GAAA;AAAK,YAAA;SAAE,CAACI,QAAQ,CAACJ,KAAQ,CAAA,EAAA;YACrE,OAAO,KAAA;AACT;AAEA,QAAA,OAAOK,OAAQL,CAAAA,KAAAA,CAAAA;AACjB;AAEAM,IAAAA,MAAAA,CAAON,KAAc,EAAE;QACrB,IAAI,OAAOA,UAAU,SAAW,EAAA;YAC9B,OAAOA,KAAAA;AACT;AAEA,QAAA,MAAMO,SAASC,QAASR,CAAAA,KAAAA,CAAAA;AAExB,QAAA,IAAIO,WAAW,GAAK,EAAA;YAClB,OAAO,IAAA;AACT;AACA,QAAA,IAAIA,WAAW,GAAK,EAAA;YAClB,OAAO,KAAA;AACT;QACA,OAAO,IAAA;AACT;AACF;;;;"}
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var parsers = require('./shared/parsers.js');
4
+ var field = require('./field.js');
5
+
6
+ class DateField extends field {
7
+ toDB(value) {
8
+ return parsers.parseDate(value);
9
+ }
10
+ fromDB(value) {
11
+ return value;
12
+ }
13
+ }
14
+
15
+ module.exports = DateField;
16
+ //# sourceMappingURL=date.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date.js","sources":["../../src/fields/date.ts"],"sourcesContent":["import { parseDate } from './shared/parsers';\nimport Field from './field';\n\nexport default class DateField extends Field {\n toDB(value: unknown) {\n return parseDate(value);\n }\n\n fromDB(value: unknown) {\n return value;\n }\n}\n"],"names":["DateField","Field","toDB","value","parseDate","fromDB"],"mappings":";;;;;AAGe,MAAMA,SAAkBC,SAAAA,KAAAA,CAAAA;AACrCC,IAAAA,IAAAA,CAAKC,KAAc,EAAE;AACnB,QAAA,OAAOC,iBAAUD,CAAAA,KAAAA,CAAAA;AACnB;AAEAE,IAAAA,MAAAA,CAAOF,KAAc,EAAE;QACrB,OAAOA,KAAAA;AACT;AACF;;;;"}
@@ -0,0 +1,14 @@
1
+ import { parseDate } from './shared/parsers.mjs';
2
+ import Field from './field.mjs';
3
+
4
+ class DateField extends Field {
5
+ toDB(value) {
6
+ return parseDate(value);
7
+ }
8
+ fromDB(value) {
9
+ return value;
10
+ }
11
+ }
12
+
13
+ export { DateField as default };
14
+ //# sourceMappingURL=date.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date.mjs","sources":["../../src/fields/date.ts"],"sourcesContent":["import { parseDate } from './shared/parsers';\nimport Field from './field';\n\nexport default class DateField extends Field {\n toDB(value: unknown) {\n return parseDate(value);\n }\n\n fromDB(value: unknown) {\n return value;\n }\n}\n"],"names":["DateField","Field","toDB","value","parseDate","fromDB"],"mappings":";;;AAGe,MAAMA,SAAkBC,SAAAA,KAAAA,CAAAA;AACrCC,IAAAA,IAAAA,CAAKC,KAAc,EAAE;AACnB,QAAA,OAAOC,SAAUD,CAAAA,KAAAA,CAAAA;AACnB;AAEAE,IAAAA,MAAAA,CAAOF,KAAc,EAAE;QACrB,OAAOA,KAAAA;AACT;AACF;;;;"}
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ var dateFns = require('date-fns');
4
+ var parsers = require('./shared/parsers.js');
5
+ var field = require('./field.js');
6
+
7
+ function _interopNamespaceDefault(e) {
8
+ var n = Object.create(null);
9
+ if (e) {
10
+ Object.keys(e).forEach(function (k) {
11
+ if (k !== 'default') {
12
+ var d = Object.getOwnPropertyDescriptor(e, k);
13
+ Object.defineProperty(n, k, d.get ? d : {
14
+ enumerable: true,
15
+ get: function () { return e[k]; }
16
+ });
17
+ }
18
+ });
19
+ }
20
+ n.default = e;
21
+ return Object.freeze(n);
22
+ }
23
+
24
+ var dateFns__namespace = /*#__PURE__*/_interopNamespaceDefault(dateFns);
25
+
26
+ class DatetimeField extends field {
27
+ toDB(value) {
28
+ return parsers.parseDateTimeOrTimestamp(value);
29
+ }
30
+ fromDB(value) {
31
+ const cast = new Date(value);
32
+ return dateFns__namespace.isValid(cast) ? cast.toISOString() : null;
33
+ }
34
+ }
35
+
36
+ module.exports = DatetimeField;
37
+ //# sourceMappingURL=datetime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datetime.js","sources":["../../src/fields/datetime.ts"],"sourcesContent":["import * as dateFns from 'date-fns';\n\nimport { parseDateTimeOrTimestamp } from './shared/parsers';\nimport Field from './field';\n\nexport default class DatetimeField extends Field {\n toDB(value: unknown) {\n return parseDateTimeOrTimestamp(value);\n }\n\n fromDB(value: unknown) {\n const cast = new Date(value as any);\n return dateFns.isValid(cast) ? cast.toISOString() : null;\n }\n}\n"],"names":["DatetimeField","Field","toDB","value","parseDateTimeOrTimestamp","fromDB","cast","Date","dateFns","isValid","toISOString"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAKe,MAAMA,aAAsBC,SAAAA,KAAAA,CAAAA;AACzCC,IAAAA,IAAAA,CAAKC,KAAc,EAAE;AACnB,QAAA,OAAOC,gCAAyBD,CAAAA,KAAAA,CAAAA;AAClC;AAEAE,IAAAA,MAAAA,CAAOF,KAAc,EAAE;QACrB,MAAMG,IAAAA,GAAO,IAAIC,IAAKJ,CAAAA,KAAAA,CAAAA;AACtB,QAAA,OAAOK,mBAAQC,OAAO,CAACH,IAAQA,CAAAA,GAAAA,IAAAA,CAAKI,WAAW,EAAK,GAAA,IAAA;AACtD;AACF;;;;"}
@@ -0,0 +1,16 @@
1
+ import * as dateFns from 'date-fns';
2
+ import { parseDateTimeOrTimestamp } from './shared/parsers.mjs';
3
+ import Field from './field.mjs';
4
+
5
+ class DatetimeField extends Field {
6
+ toDB(value) {
7
+ return parseDateTimeOrTimestamp(value);
8
+ }
9
+ fromDB(value) {
10
+ const cast = new Date(value);
11
+ return dateFns.isValid(cast) ? cast.toISOString() : null;
12
+ }
13
+ }
14
+
15
+ export { DatetimeField as default };
16
+ //# sourceMappingURL=datetime.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datetime.mjs","sources":["../../src/fields/datetime.ts"],"sourcesContent":["import * as dateFns from 'date-fns';\n\nimport { parseDateTimeOrTimestamp } from './shared/parsers';\nimport Field from './field';\n\nexport default class DatetimeField extends Field {\n toDB(value: unknown) {\n return parseDateTimeOrTimestamp(value);\n }\n\n fromDB(value: unknown) {\n const cast = new Date(value as any);\n return dateFns.isValid(cast) ? cast.toISOString() : null;\n }\n}\n"],"names":["DatetimeField","Field","toDB","value","parseDateTimeOrTimestamp","fromDB","cast","Date","dateFns","isValid","toISOString"],"mappings":";;;;AAKe,MAAMA,aAAsBC,SAAAA,KAAAA,CAAAA;AACzCC,IAAAA,IAAAA,CAAKC,KAAc,EAAE;AACnB,QAAA,OAAOC,wBAAyBD,CAAAA,KAAAA,CAAAA;AAClC;AAEAE,IAAAA,MAAAA,CAAOF,KAAc,EAAE;QACrB,MAAMG,IAAAA,GAAO,IAAIC,IAAKJ,CAAAA,KAAAA,CAAAA;AACtB,QAAA,OAAOK,QAAQC,OAAO,CAACH,IAAQA,CAAAA,GAAAA,IAAAA,CAAKI,WAAW,EAAK,GAAA,IAAA;AACtD;AACF;;;;"}
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ class Field {
4
+ toDB(value) {
5
+ return value;
6
+ }
7
+ fromDB(value) {
8
+ return value;
9
+ }
10
+ constructor(config){
11
+ this.config = config;
12
+ }
13
+ }
14
+
15
+ module.exports = Field;
16
+ //# sourceMappingURL=field.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.js","sources":["../../src/fields/field.ts"],"sourcesContent":["export default class Field {\n config: unknown;\n\n constructor(config: unknown) {\n this.config = config;\n }\n\n toDB(value: unknown) {\n return value;\n }\n\n fromDB(value: unknown) {\n return value;\n }\n}\n"],"names":["Field","toDB","value","fromDB","constructor","config"],"mappings":";;AAAe,MAAMA,KAAAA,CAAAA;AAOnBC,IAAAA,IAAAA,CAAKC,KAAc,EAAE;QACnB,OAAOA,KAAAA;AACT;AAEAC,IAAAA,MAAAA,CAAOD,KAAc,EAAE;QACrB,OAAOA,KAAAA;AACT;AAVAE,IAAAA,WAAAA,CAAYC,MAAe,CAAE;QAC3B,IAAI,CAACA,MAAM,GAAGA,MAAAA;AAChB;AASF;;;;"}
@@ -0,0 +1,14 @@
1
+ class Field {
2
+ toDB(value) {
3
+ return value;
4
+ }
5
+ fromDB(value) {
6
+ return value;
7
+ }
8
+ constructor(config){
9
+ this.config = config;
10
+ }
11
+ }
12
+
13
+ export { Field as default };
14
+ //# sourceMappingURL=field.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.mjs","sources":["../../src/fields/field.ts"],"sourcesContent":["export default class Field {\n config: unknown;\n\n constructor(config: unknown) {\n this.config = config;\n }\n\n toDB(value: unknown) {\n return value;\n }\n\n fromDB(value: unknown) {\n return value;\n }\n}\n"],"names":["Field","toDB","value","fromDB","constructor","config"],"mappings":"AAAe,MAAMA,KAAAA,CAAAA;AAOnBC,IAAAA,IAAAA,CAAKC,KAAc,EAAE;QACnB,OAAOA,KAAAA;AACT;AAEAC,IAAAA,MAAAA,CAAOD,KAAc,EAAE;QACrB,OAAOA,KAAAA;AACT;AAVAE,IAAAA,WAAAA,CAAYC,MAAe,CAAE;QAC3B,IAAI,CAACA,MAAM,GAAGA,MAAAA;AAChB;AASF;;;;"}
@@ -0,0 +1,45 @@
1
+ 'use strict';
2
+
3
+ var _ = require('lodash/fp');
4
+ var field = require('./field.js');
5
+ var string = require('./string.js');
6
+ var json = require('./json.js');
7
+ var biginteger = require('./biginteger.js');
8
+ var number = require('./number.js');
9
+ var date = require('./date.js');
10
+ var time = require('./time.js');
11
+ var datetime = require('./datetime.js');
12
+ var timestamp = require('./timestamp.js');
13
+ var boolean = require('./boolean.js');
14
+
15
+ const typeToFieldMap = {
16
+ increments: field,
17
+ password: string,
18
+ email: string,
19
+ string: string,
20
+ uid: string,
21
+ richtext: string,
22
+ text: string,
23
+ enumeration: string,
24
+ json: json,
25
+ biginteger: biginteger,
26
+ integer: number,
27
+ float: number,
28
+ decimal: number,
29
+ date: date,
30
+ time: time,
31
+ datetime: datetime,
32
+ timestamp: timestamp,
33
+ boolean: boolean,
34
+ blocks: json
35
+ };
36
+ const createField = (attribute)=>{
37
+ const { type } = attribute;
38
+ if (_.has(type, typeToFieldMap)) {
39
+ return new typeToFieldMap[type]({});
40
+ }
41
+ throw new Error(`Undefined field for type ${type}`);
42
+ };
43
+
44
+ exports.createField = createField;
45
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../src/fields/index.ts"],"sourcesContent":["import _ from 'lodash/fp';\n\nimport Field from './field';\nimport StringField from './string';\nimport JSONField from './json';\nimport BigIntegerField from './biginteger';\nimport NumberField from './number';\nimport DateField from './date';\nimport TimeField from './time';\nimport DatetimeField from './datetime';\nimport TimestampField from './timestamp';\nimport BooleanField from './boolean';\n\nimport type { Attribute } from '../types';\n\nconst typeToFieldMap: Record<string, typeof Field> = {\n increments: Field,\n password: StringField,\n email: StringField,\n string: StringField,\n uid: StringField,\n richtext: StringField,\n text: StringField,\n enumeration: StringField,\n json: JSONField,\n biginteger: BigIntegerField,\n integer: NumberField,\n float: NumberField,\n decimal: NumberField,\n date: DateField,\n time: TimeField,\n datetime: DatetimeField,\n timestamp: TimestampField,\n boolean: BooleanField,\n blocks: JSONField,\n};\n\nexport const createField = (attribute: Attribute): Field => {\n const { type } = attribute;\n\n if (_.has(type, typeToFieldMap)) {\n return new typeToFieldMap[type]({});\n }\n\n throw new Error(`Undefined field for type ${type}`);\n};\n"],"names":["typeToFieldMap","increments","Field","password","StringField","email","string","uid","richtext","text","enumeration","json","JSONField","biginteger","BigIntegerField","integer","NumberField","float","decimal","date","DateField","time","TimeField","datetime","DatetimeField","timestamp","TimestampField","boolean","BooleanField","blocks","createField","attribute","type","_","has","Error"],"mappings":";;;;;;;;;;;;;;AAeA,MAAMA,cAA+C,GAAA;IACnDC,UAAYC,EAAAA,KAAAA;IACZC,QAAUC,EAAAA,MAAAA;IACVC,KAAOD,EAAAA,MAAAA;IACPE,MAAQF,EAAAA,MAAAA;IACRG,GAAKH,EAAAA,MAAAA;IACLI,QAAUJ,EAAAA,MAAAA;IACVK,IAAML,EAAAA,MAAAA;IACNM,WAAaN,EAAAA,MAAAA;IACbO,IAAMC,EAAAA,IAAAA;IACNC,UAAYC,EAAAA,UAAAA;IACZC,OAASC,EAAAA,MAAAA;IACTC,KAAOD,EAAAA,MAAAA;IACPE,OAASF,EAAAA,MAAAA;IACTG,IAAMC,EAAAA,IAAAA;IACNC,IAAMC,EAAAA,IAAAA;IACNC,QAAUC,EAAAA,QAAAA;IACVC,SAAWC,EAAAA,SAAAA;IACXC,OAASC,EAAAA,OAAAA;IACTC,MAAQjB,EAAAA;AACV,CAAA;AAEO,MAAMkB,cAAc,CAACC,SAAAA,GAAAA;IAC1B,MAAM,EAAEC,IAAI,EAAE,GAAGD,SAAAA;AAEjB,IAAA,IAAIE,CAAEC,CAAAA,GAAG,CAACF,IAAAA,EAAMhC,cAAiB,CAAA,EAAA;AAC/B,QAAA,OAAO,IAAIA,cAAc,CAACgC,IAAAA,CAAK,CAAC,EAAC,CAAA;AACnC;AAEA,IAAA,MAAM,IAAIG,KAAM,CAAA,CAAC,yBAAyB,EAAEH,KAAK,CAAC,CAAA;AACpD;;;;"}
@@ -0,0 +1,43 @@
1
+ import _ from 'lodash/fp';
2
+ import Field from './field.mjs';
3
+ import StringField from './string.mjs';
4
+ import JSONField from './json.mjs';
5
+ import BigIntegerField from './biginteger.mjs';
6
+ import NumberField from './number.mjs';
7
+ import DateField from './date.mjs';
8
+ import TimeField from './time.mjs';
9
+ import DatetimeField from './datetime.mjs';
10
+ import TimestampField from './timestamp.mjs';
11
+ import BooleanField from './boolean.mjs';
12
+
13
+ const typeToFieldMap = {
14
+ increments: Field,
15
+ password: StringField,
16
+ email: StringField,
17
+ string: StringField,
18
+ uid: StringField,
19
+ richtext: StringField,
20
+ text: StringField,
21
+ enumeration: StringField,
22
+ json: JSONField,
23
+ biginteger: BigIntegerField,
24
+ integer: NumberField,
25
+ float: NumberField,
26
+ decimal: NumberField,
27
+ date: DateField,
28
+ time: TimeField,
29
+ datetime: DatetimeField,
30
+ timestamp: TimestampField,
31
+ boolean: BooleanField,
32
+ blocks: JSONField
33
+ };
34
+ const createField = (attribute)=>{
35
+ const { type } = attribute;
36
+ if (_.has(type, typeToFieldMap)) {
37
+ return new typeToFieldMap[type]({});
38
+ }
39
+ throw new Error(`Undefined field for type ${type}`);
40
+ };
41
+
42
+ export { createField };
43
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../src/fields/index.ts"],"sourcesContent":["import _ from 'lodash/fp';\n\nimport Field from './field';\nimport StringField from './string';\nimport JSONField from './json';\nimport BigIntegerField from './biginteger';\nimport NumberField from './number';\nimport DateField from './date';\nimport TimeField from './time';\nimport DatetimeField from './datetime';\nimport TimestampField from './timestamp';\nimport BooleanField from './boolean';\n\nimport type { Attribute } from '../types';\n\nconst typeToFieldMap: Record<string, typeof Field> = {\n increments: Field,\n password: StringField,\n email: StringField,\n string: StringField,\n uid: StringField,\n richtext: StringField,\n text: StringField,\n enumeration: StringField,\n json: JSONField,\n biginteger: BigIntegerField,\n integer: NumberField,\n float: NumberField,\n decimal: NumberField,\n date: DateField,\n time: TimeField,\n datetime: DatetimeField,\n timestamp: TimestampField,\n boolean: BooleanField,\n blocks: JSONField,\n};\n\nexport const createField = (attribute: Attribute): Field => {\n const { type } = attribute;\n\n if (_.has(type, typeToFieldMap)) {\n return new typeToFieldMap[type]({});\n }\n\n throw new Error(`Undefined field for type ${type}`);\n};\n"],"names":["typeToFieldMap","increments","Field","password","StringField","email","string","uid","richtext","text","enumeration","json","JSONField","biginteger","BigIntegerField","integer","NumberField","float","decimal","date","DateField","time","TimeField","datetime","DatetimeField","timestamp","TimestampField","boolean","BooleanField","blocks","createField","attribute","type","_","has","Error"],"mappings":";;;;;;;;;;;;AAeA,MAAMA,cAA+C,GAAA;IACnDC,UAAYC,EAAAA,KAAAA;IACZC,QAAUC,EAAAA,WAAAA;IACVC,KAAOD,EAAAA,WAAAA;IACPE,MAAQF,EAAAA,WAAAA;IACRG,GAAKH,EAAAA,WAAAA;IACLI,QAAUJ,EAAAA,WAAAA;IACVK,IAAML,EAAAA,WAAAA;IACNM,WAAaN,EAAAA,WAAAA;IACbO,IAAMC,EAAAA,SAAAA;IACNC,UAAYC,EAAAA,eAAAA;IACZC,OAASC,EAAAA,WAAAA;IACTC,KAAOD,EAAAA,WAAAA;IACPE,OAASF,EAAAA,WAAAA;IACTG,IAAMC,EAAAA,SAAAA;IACNC,IAAMC,EAAAA,SAAAA;IACNC,QAAUC,EAAAA,aAAAA;IACVC,SAAWC,EAAAA,cAAAA;IACXC,OAASC,EAAAA,YAAAA;IACTC,MAAQjB,EAAAA;AACV,CAAA;AAEO,MAAMkB,cAAc,CAACC,SAAAA,GAAAA;IAC1B,MAAM,EAAEC,IAAI,EAAE,GAAGD,SAAAA;AAEjB,IAAA,IAAIE,CAAEC,CAAAA,GAAG,CAACF,IAAAA,EAAMhC,cAAiB,CAAA,EAAA;AAC/B,QAAA,OAAO,IAAIA,cAAc,CAACgC,IAAAA,CAAK,CAAC,EAAC,CAAA;AACnC;AAEA,IAAA,MAAM,IAAIG,KAAM,CAAA,CAAC,yBAAyB,EAAEH,KAAK,CAAC,CAAA;AACpD;;;;"}
@@ -0,0 +1,36 @@
1
+ 'use strict';
2
+
3
+ var field = require('./field.js');
4
+
5
+ class JSONField extends field {
6
+ toDB(value) {
7
+ if (value == null) {
8
+ return null;
9
+ }
10
+ if (typeof value === 'object') {
11
+ return JSON.stringify(value);
12
+ }
13
+ return value;
14
+ }
15
+ fromDB(value) {
16
+ try {
17
+ if (typeof value === 'string') {
18
+ const parsedValue = JSON.parse(value);
19
+ /**
20
+ * On Strapi 5 until 5.0.0-rc.7, the values were accidentally stringified twice when saved,
21
+ * so in those cases we need to parse them twice to retrieve the actual value.
22
+ */ if (typeof parsedValue === 'string') {
23
+ return JSON.parse(parsedValue);
24
+ }
25
+ return parsedValue;
26
+ }
27
+ } catch (error) {
28
+ // Just return the value if it's not a valid JSON string
29
+ return value;
30
+ }
31
+ return value;
32
+ }
33
+ }
34
+
35
+ module.exports = JSONField;
36
+ //# sourceMappingURL=json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.js","sources":["../../src/fields/json.ts"],"sourcesContent":["import Field from './field';\n\nexport default class JSONField extends Field {\n toDB(value: unknown) {\n if (value == null) {\n return null;\n }\n\n if (typeof value === 'object') {\n return JSON.stringify(value);\n }\n\n return value;\n }\n\n fromDB(value: unknown) {\n try {\n if (typeof value === 'string') {\n const parsedValue = JSON.parse(value);\n\n /**\n * On Strapi 5 until 5.0.0-rc.7, the values were accidentally stringified twice when saved,\n * so in those cases we need to parse them twice to retrieve the actual value.\n */\n if (typeof parsedValue === 'string') {\n return JSON.parse(parsedValue);\n }\n\n return parsedValue;\n }\n } catch (error) {\n // Just return the value if it's not a valid JSON string\n return value;\n }\n\n return value;\n }\n}\n"],"names":["JSONField","Field","toDB","value","JSON","stringify","fromDB","parsedValue","parse","error"],"mappings":";;;;AAEe,MAAMA,SAAkBC,SAAAA,KAAAA,CAAAA;AACrCC,IAAAA,IAAAA,CAAKC,KAAc,EAAE;AACnB,QAAA,IAAIA,SAAS,IAAM,EAAA;YACjB,OAAO,IAAA;AACT;QAEA,IAAI,OAAOA,UAAU,QAAU,EAAA;YAC7B,OAAOC,IAAAA,CAAKC,SAAS,CAACF,KAAAA,CAAAA;AACxB;QAEA,OAAOA,KAAAA;AACT;AAEAG,IAAAA,MAAAA,CAAOH,KAAc,EAAE;QACrB,IAAI;YACF,IAAI,OAAOA,UAAU,QAAU,EAAA;gBAC7B,MAAMI,WAAAA,GAAcH,IAAKI,CAAAA,KAAK,CAACL,KAAAA,CAAAA;AAE/B;;;YAIA,IAAI,OAAOI,WAAAA,KAAgB,QAAU,EAAA;oBACnC,OAAOH,IAAAA,CAAKI,KAAK,CAACD,WAAAA,CAAAA;AACpB;gBAEA,OAAOA,WAAAA;AACT;AACF,SAAA,CAAE,OAAOE,KAAO,EAAA;;YAEd,OAAON,KAAAA;AACT;QAEA,OAAOA,KAAAA;AACT;AACF;;;;"}
@@ -0,0 +1,34 @@
1
+ import Field from './field.mjs';
2
+
3
+ class JSONField extends Field {
4
+ toDB(value) {
5
+ if (value == null) {
6
+ return null;
7
+ }
8
+ if (typeof value === 'object') {
9
+ return JSON.stringify(value);
10
+ }
11
+ return value;
12
+ }
13
+ fromDB(value) {
14
+ try {
15
+ if (typeof value === 'string') {
16
+ const parsedValue = JSON.parse(value);
17
+ /**
18
+ * On Strapi 5 until 5.0.0-rc.7, the values were accidentally stringified twice when saved,
19
+ * so in those cases we need to parse them twice to retrieve the actual value.
20
+ */ if (typeof parsedValue === 'string') {
21
+ return JSON.parse(parsedValue);
22
+ }
23
+ return parsedValue;
24
+ }
25
+ } catch (error) {
26
+ // Just return the value if it's not a valid JSON string
27
+ return value;
28
+ }
29
+ return value;
30
+ }
31
+ }
32
+
33
+ export { JSONField as default };
34
+ //# sourceMappingURL=json.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.mjs","sources":["../../src/fields/json.ts"],"sourcesContent":["import Field from './field';\n\nexport default class JSONField extends Field {\n toDB(value: unknown) {\n if (value == null) {\n return null;\n }\n\n if (typeof value === 'object') {\n return JSON.stringify(value);\n }\n\n return value;\n }\n\n fromDB(value: unknown) {\n try {\n if (typeof value === 'string') {\n const parsedValue = JSON.parse(value);\n\n /**\n * On Strapi 5 until 5.0.0-rc.7, the values were accidentally stringified twice when saved,\n * so in those cases we need to parse them twice to retrieve the actual value.\n */\n if (typeof parsedValue === 'string') {\n return JSON.parse(parsedValue);\n }\n\n return parsedValue;\n }\n } catch (error) {\n // Just return the value if it's not a valid JSON string\n return value;\n }\n\n return value;\n }\n}\n"],"names":["JSONField","Field","toDB","value","JSON","stringify","fromDB","parsedValue","parse","error"],"mappings":";;AAEe,MAAMA,SAAkBC,SAAAA,KAAAA,CAAAA;AACrCC,IAAAA,IAAAA,CAAKC,KAAc,EAAE;AACnB,QAAA,IAAIA,SAAS,IAAM,EAAA;YACjB,OAAO,IAAA;AACT;QAEA,IAAI,OAAOA,UAAU,QAAU,EAAA;YAC7B,OAAOC,IAAAA,CAAKC,SAAS,CAACF,KAAAA,CAAAA;AACxB;QAEA,OAAOA,KAAAA;AACT;AAEAG,IAAAA,MAAAA,CAAOH,KAAc,EAAE;QACrB,IAAI;YACF,IAAI,OAAOA,UAAU,QAAU,EAAA;gBAC7B,MAAMI,WAAAA,GAAcH,IAAKI,CAAAA,KAAK,CAACL,KAAAA,CAAAA;AAE/B;;;YAIA,IAAI,OAAOI,WAAAA,KAAgB,QAAU,EAAA;oBACnC,OAAOH,IAAAA,CAAKI,KAAK,CAACD,WAAAA,CAAAA;AACpB;gBAEA,OAAOA,WAAAA;AACT;AACF,SAAA,CAAE,OAAOE,KAAO,EAAA;;YAEd,OAAON,KAAAA;AACT;QAEA,OAAOA,KAAAA;AACT;AACF;;;;"}
@@ -0,0 +1,20 @@
1
+ 'use strict';
2
+
3
+ var _ = require('lodash/fp');
4
+ var field = require('./field.js');
5
+
6
+ class NumberField extends field {
7
+ toDB(value) {
8
+ const numberValue = _.toNumber(value);
9
+ if (Number.isNaN(numberValue)) {
10
+ throw new Error(`Expected a valid Number, got ${value}`);
11
+ }
12
+ return numberValue;
13
+ }
14
+ fromDB(value) {
15
+ return _.toNumber(value);
16
+ }
17
+ }
18
+
19
+ module.exports = NumberField;
20
+ //# sourceMappingURL=number.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number.js","sources":["../../src/fields/number.ts"],"sourcesContent":["import { toNumber } from 'lodash/fp';\nimport Field from './field';\n\nexport default class NumberField extends Field {\n toDB(value: unknown) {\n const numberValue = toNumber(value);\n\n if (Number.isNaN(numberValue)) {\n throw new Error(`Expected a valid Number, got ${value}`);\n }\n\n return numberValue;\n }\n\n fromDB(value: unknown) {\n return toNumber(value);\n }\n}\n"],"names":["NumberField","Field","toDB","value","numberValue","toNumber","Number","isNaN","Error","fromDB"],"mappings":";;;;;AAGe,MAAMA,WAAoBC,SAAAA,KAAAA,CAAAA;AACvCC,IAAAA,IAAAA,CAAKC,KAAc,EAAE;AACnB,QAAA,MAAMC,cAAcC,UAASF,CAAAA,KAAAA,CAAAA;QAE7B,IAAIG,MAAAA,CAAOC,KAAK,CAACH,WAAc,CAAA,EAAA;AAC7B,YAAA,MAAM,IAAII,KAAM,CAAA,CAAC,6BAA6B,EAAEL,MAAM,CAAC,CAAA;AACzD;QAEA,OAAOC,WAAAA;AACT;AAEAK,IAAAA,MAAAA,CAAON,KAAc,EAAE;AACrB,QAAA,OAAOE,UAASF,CAAAA,KAAAA,CAAAA;AAClB;AACF;;;;"}