@sprucelabs/spruce-cli 17.1.14 → 17.1.15

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 (229) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/package.json +26 -26
  3. package/node_modules/@sprucelabs/data-stores/README.md +0 -24
  4. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/databaseNotConnected.schema.d.ts +0 -3
  5. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/databaseNotConnected.schema.js +0 -23
  6. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/duplicateKey.schema.d.ts +0 -3
  7. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/duplicateKey.schema.js +0 -11
  8. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/duplicateRecord.schema.d.ts +0 -3
  9. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/duplicateRecord.schema.js +0 -40
  10. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/failedToLoadStore.schema.d.ts +0 -3
  11. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/failedToLoadStore.schema.js +0 -18
  12. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/failedToLoadStores.schema.d.ts +0 -3
  13. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/failedToLoadStores.schema.js +0 -19
  14. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/indexExists.schema.d.ts +0 -3
  15. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/indexExists.schema.js +0 -20
  16. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/indexNotFound.schema.d.ts +0 -3
  17. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/indexNotFound.schema.js +0 -20
  18. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidDatabaseName.schema.d.ts +0 -3
  19. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidDatabaseName.schema.js +0 -18
  20. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidDbConnectionString.schema.d.ts +0 -3
  21. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidDbConnectionString.schema.js +0 -11
  22. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidStore.schema copy.d.ts +0 -3
  23. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidStore.schema copy.js +0 -25
  24. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidStore.schema.d.ts +0 -3
  25. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidStore.schema.js +0 -11
  26. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidStoreName.schema.d.ts +0 -3
  27. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/invalidStoreName.schema.js +0 -25
  28. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/mongoIdMappingError.schema.d.ts +0 -3
  29. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/mongoIdMappingError.schema.js +0 -11
  30. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/record-not-found-query.schema.d.ts +0 -3
  31. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/record-not-found-query.schema.js +0 -15
  32. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/recordNotFound.schema.d.ts +0 -3
  33. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/recordNotFound.schema.js +0 -30
  34. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/scrambleNotConfigured.schema.d.ts +0 -3
  35. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/scrambleNotConfigured.schema.js +0 -11
  36. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/unableToConnectToDb.schema.d.ts +0 -3
  37. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/unableToConnectToDb.schema.js +0 -11
  38. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/unknownDatabaseError.schema.d.ts +0 -3
  39. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/unknownDatabaseError.schema.js +0 -18
  40. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/unknownError.schema.d.ts +0 -3
  41. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/unknownError.schema.js +0 -11
  42. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/unknownStoreError.schema.d.ts +0 -3
  43. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/dataStores/unknownStoreError.schema.js +0 -27
  44. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/errors.types.d.ts +0 -383
  45. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/errors.types.js +0 -4
  46. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/options.types.d.ts +0 -58
  47. package/node_modules/@sprucelabs/data-stores/build/.spruce/errors/options.types.js +0 -2
  48. package/node_modules/@sprucelabs/data-stores/build/.spruce/schemas/fields/fieldClassMap.d.ts +0 -2
  49. package/node_modules/@sprucelabs/data-stores/build/.spruce/schemas/fields/fieldClassMap.js +0 -4
  50. package/node_modules/@sprucelabs/data-stores/build/.spruce/schemas/fields/fields.types.d.ts +0 -1
  51. package/node_modules/@sprucelabs/data-stores/build/.spruce/schemas/fields/fields.types.js +0 -2
  52. package/node_modules/@sprucelabs/data-stores/build/.spruce/settings.json +0 -22
  53. package/node_modules/@sprucelabs/data-stores/build/constants.d.ts +0 -1
  54. package/node_modules/@sprucelabs/data-stores/build/constants.js +0 -4
  55. package/node_modules/@sprucelabs/data-stores/build/cursors/CursorPager.d.ts +0 -29
  56. package/node_modules/@sprucelabs/data-stores/build/cursors/CursorPager.js +0 -129
  57. package/node_modules/@sprucelabs/data-stores/build/cursors/CursorPagerFaker.d.ts +0 -6
  58. package/node_modules/@sprucelabs/data-stores/build/cursors/CursorPagerFaker.js +0 -25
  59. package/node_modules/@sprucelabs/data-stores/build/databases/MongoDatabase.d.ts +0 -44
  60. package/node_modules/@sprucelabs/data-stores/build/databases/MongoDatabase.js +0 -432
  61. package/node_modules/@sprucelabs/data-stores/build/databases/NeDbDatabase.d.ts +0 -41
  62. package/node_modules/@sprucelabs/data-stores/build/databases/NeDbDatabase.js +0 -447
  63. package/node_modules/@sprucelabs/data-stores/build/databases/mongo.types.d.ts +0 -3163
  64. package/node_modules/@sprucelabs/data-stores/build/databases/mongo.types.js +0 -50
  65. package/node_modules/@sprucelabs/data-stores/build/errors/SpruceError.d.ts +0 -5
  66. package/node_modules/@sprucelabs/data-stores/build/errors/SpruceError.js +0 -103
  67. package/node_modules/@sprucelabs/data-stores/build/errors/databaseNotConnected.builder.d.ts +0 -15
  68. package/node_modules/@sprucelabs/data-stores/build/errors/databaseNotConnected.builder.js +0 -17
  69. package/node_modules/@sprucelabs/data-stores/build/errors/duplicateKey.builder.d.ts +0 -6
  70. package/node_modules/@sprucelabs/data-stores/build/errors/duplicateKey.builder.js +0 -8
  71. package/node_modules/@sprucelabs/data-stores/build/errors/duplicateRecord.builder.d.ts +0 -28
  72. package/node_modules/@sprucelabs/data-stores/build/errors/duplicateRecord.builder.js +0 -30
  73. package/node_modules/@sprucelabs/data-stores/build/errors/failedToLoadStore.builder.d.ts +0 -12
  74. package/node_modules/@sprucelabs/data-stores/build/errors/failedToLoadStore.builder.js +0 -14
  75. package/node_modules/@sprucelabs/data-stores/build/errors/failedToLoadStores.builder.d.ts +0 -16
  76. package/node_modules/@sprucelabs/data-stores/build/errors/failedToLoadStores.builder.js +0 -21
  77. package/node_modules/@sprucelabs/data-stores/build/errors/indexExists.builder.d.ts +0 -14
  78. package/node_modules/@sprucelabs/data-stores/build/errors/indexExists.builder.js +0 -16
  79. package/node_modules/@sprucelabs/data-stores/build/errors/indexNotFound.builder.d.ts +0 -14
  80. package/node_modules/@sprucelabs/data-stores/build/errors/indexNotFound.builder.js +0 -16
  81. package/node_modules/@sprucelabs/data-stores/build/errors/invalidDatabaseName.builder.d.ts +0 -12
  82. package/node_modules/@sprucelabs/data-stores/build/errors/invalidDatabaseName.builder.js +0 -14
  83. package/node_modules/@sprucelabs/data-stores/build/errors/invalidDbConnectionString.builder.d.ts +0 -7
  84. package/node_modules/@sprucelabs/data-stores/build/errors/invalidDbConnectionString.builder.js +0 -9
  85. package/node_modules/@sprucelabs/data-stores/build/errors/invalidStore.builder.d.ts +0 -6
  86. package/node_modules/@sprucelabs/data-stores/build/errors/invalidStore.builder.js +0 -8
  87. package/node_modules/@sprucelabs/data-stores/build/errors/invalidStoreName.builder.d.ts +0 -16
  88. package/node_modules/@sprucelabs/data-stores/build/errors/invalidStoreName.builder.js +0 -18
  89. package/node_modules/@sprucelabs/data-stores/build/errors/mongoIdMappingError.builder.d.ts +0 -7
  90. package/node_modules/@sprucelabs/data-stores/build/errors/mongoIdMappingError.builder.js +0 -12
  91. package/node_modules/@sprucelabs/data-stores/build/errors/recordNotFound.builder.d.ts +0 -31
  92. package/node_modules/@sprucelabs/data-stores/build/errors/recordNotFound.builder.js +0 -33
  93. package/node_modules/@sprucelabs/data-stores/build/errors/scrambleNotConfigured.builder.d.ts +0 -7
  94. package/node_modules/@sprucelabs/data-stores/build/errors/scrambleNotConfigured.builder.js +0 -12
  95. package/node_modules/@sprucelabs/data-stores/build/errors/unableToConnectToDb.builder.d.ts +0 -7
  96. package/node_modules/@sprucelabs/data-stores/build/errors/unableToConnectToDb.builder.js +0 -9
  97. package/node_modules/@sprucelabs/data-stores/build/errors/unknownDatabaseError.builder.d.ts +0 -12
  98. package/node_modules/@sprucelabs/data-stores/build/errors/unknownDatabaseError.builder.js +0 -14
  99. package/node_modules/@sprucelabs/data-stores/build/errors/unknownError.builder.d.ts +0 -6
  100. package/node_modules/@sprucelabs/data-stores/build/errors/unknownError.builder.js +0 -8
  101. package/node_modules/@sprucelabs/data-stores/build/errors/unknownStoreError.builder.d.ts +0 -19
  102. package/node_modules/@sprucelabs/data-stores/build/errors/unknownStoreError.builder.js +0 -21
  103. package/node_modules/@sprucelabs/data-stores/build/esm/.spruce/errors/errors.types.d.ts +0 -383
  104. package/node_modules/@sprucelabs/data-stores/build/esm/.spruce/errors/errors.types.js +0 -3
  105. package/node_modules/@sprucelabs/data-stores/build/esm/.spruce/errors/options.types.d.ts +0 -58
  106. package/node_modules/@sprucelabs/data-stores/build/esm/.spruce/errors/options.types.js +0 -1
  107. package/node_modules/@sprucelabs/data-stores/build/esm/constants.d.ts +0 -1
  108. package/node_modules/@sprucelabs/data-stores/build/esm/constants.js +0 -1
  109. package/node_modules/@sprucelabs/data-stores/build/esm/cursors/CursorPager.d.ts +0 -29
  110. package/node_modules/@sprucelabs/data-stores/build/esm/cursors/CursorPager.js +0 -134
  111. package/node_modules/@sprucelabs/data-stores/build/esm/cursors/CursorPagerFaker.d.ts +0 -6
  112. package/node_modules/@sprucelabs/data-stores/build/esm/cursors/CursorPagerFaker.js +0 -30
  113. package/node_modules/@sprucelabs/data-stores/build/esm/databases/MongoDatabase.d.ts +0 -44
  114. package/node_modules/@sprucelabs/data-stores/build/esm/databases/MongoDatabase.js +0 -476
  115. package/node_modules/@sprucelabs/data-stores/build/esm/databases/NeDbDatabase.d.ts +0 -41
  116. package/node_modules/@sprucelabs/data-stores/build/esm/databases/NeDbDatabase.js +0 -496
  117. package/node_modules/@sprucelabs/data-stores/build/esm/databases/mongo.types.d.ts +0 -3163
  118. package/node_modules/@sprucelabs/data-stores/build/esm/databases/mongo.types.js +0 -36
  119. package/node_modules/@sprucelabs/data-stores/build/esm/errors/SpruceError.d.ts +0 -5
  120. package/node_modules/@sprucelabs/data-stores/build/esm/errors/SpruceError.js +0 -97
  121. package/node_modules/@sprucelabs/data-stores/build/esm/errors/databaseNotConnected.builder.d.ts +0 -15
  122. package/node_modules/@sprucelabs/data-stores/build/esm/errors/databaseNotConnected.builder.js +0 -15
  123. package/node_modules/@sprucelabs/data-stores/build/esm/errors/duplicateKey.builder.d.ts +0 -6
  124. package/node_modules/@sprucelabs/data-stores/build/esm/errors/duplicateKey.builder.js +0 -6
  125. package/node_modules/@sprucelabs/data-stores/build/esm/errors/duplicateRecord.builder.d.ts +0 -28
  126. package/node_modules/@sprucelabs/data-stores/build/esm/errors/duplicateRecord.builder.js +0 -28
  127. package/node_modules/@sprucelabs/data-stores/build/esm/errors/failedToLoadStore.builder.d.ts +0 -12
  128. package/node_modules/@sprucelabs/data-stores/build/esm/errors/failedToLoadStore.builder.js +0 -12
  129. package/node_modules/@sprucelabs/data-stores/build/esm/errors/failedToLoadStores.builder.d.ts +0 -16
  130. package/node_modules/@sprucelabs/data-stores/build/esm/errors/failedToLoadStores.builder.js +0 -19
  131. package/node_modules/@sprucelabs/data-stores/build/esm/errors/indexExists.builder.d.ts +0 -14
  132. package/node_modules/@sprucelabs/data-stores/build/esm/errors/indexExists.builder.js +0 -14
  133. package/node_modules/@sprucelabs/data-stores/build/esm/errors/indexNotFound.builder.d.ts +0 -14
  134. package/node_modules/@sprucelabs/data-stores/build/esm/errors/indexNotFound.builder.js +0 -14
  135. package/node_modules/@sprucelabs/data-stores/build/esm/errors/invalidDatabaseName.builder.d.ts +0 -12
  136. package/node_modules/@sprucelabs/data-stores/build/esm/errors/invalidDatabaseName.builder.js +0 -12
  137. package/node_modules/@sprucelabs/data-stores/build/esm/errors/invalidDbConnectionString.builder.d.ts +0 -7
  138. package/node_modules/@sprucelabs/data-stores/build/esm/errors/invalidDbConnectionString.builder.js +0 -7
  139. package/node_modules/@sprucelabs/data-stores/build/esm/errors/invalidStore.builder.d.ts +0 -6
  140. package/node_modules/@sprucelabs/data-stores/build/esm/errors/invalidStore.builder.js +0 -6
  141. package/node_modules/@sprucelabs/data-stores/build/esm/errors/invalidStoreName.builder.d.ts +0 -16
  142. package/node_modules/@sprucelabs/data-stores/build/esm/errors/invalidStoreName.builder.js +0 -16
  143. package/node_modules/@sprucelabs/data-stores/build/esm/errors/mongoIdMappingError.builder.d.ts +0 -7
  144. package/node_modules/@sprucelabs/data-stores/build/esm/errors/mongoIdMappingError.builder.js +0 -10
  145. package/node_modules/@sprucelabs/data-stores/build/esm/errors/recordNotFound.builder.d.ts +0 -31
  146. package/node_modules/@sprucelabs/data-stores/build/esm/errors/recordNotFound.builder.js +0 -31
  147. package/node_modules/@sprucelabs/data-stores/build/esm/errors/scrambleNotConfigured.builder.d.ts +0 -7
  148. package/node_modules/@sprucelabs/data-stores/build/esm/errors/scrambleNotConfigured.builder.js +0 -10
  149. package/node_modules/@sprucelabs/data-stores/build/esm/errors/unableToConnectToDb.builder.d.ts +0 -7
  150. package/node_modules/@sprucelabs/data-stores/build/esm/errors/unableToConnectToDb.builder.js +0 -7
  151. package/node_modules/@sprucelabs/data-stores/build/esm/errors/unknownDatabaseError.builder.d.ts +0 -12
  152. package/node_modules/@sprucelabs/data-stores/build/esm/errors/unknownDatabaseError.builder.js +0 -12
  153. package/node_modules/@sprucelabs/data-stores/build/esm/errors/unknownError.builder.d.ts +0 -6
  154. package/node_modules/@sprucelabs/data-stores/build/esm/errors/unknownError.builder.js +0 -6
  155. package/node_modules/@sprucelabs/data-stores/build/esm/errors/unknownStoreError.builder.d.ts +0 -19
  156. package/node_modules/@sprucelabs/data-stores/build/esm/errors/unknownStoreError.builder.js +0 -19
  157. package/node_modules/@sprucelabs/data-stores/build/esm/factories/DatabaseFactory.d.ts +0 -10
  158. package/node_modules/@sprucelabs/data-stores/build/esm/factories/DatabaseFactory.js +0 -32
  159. package/node_modules/@sprucelabs/data-stores/build/esm/factories/StoreFactory.d.ts +0 -25
  160. package/node_modules/@sprucelabs/data-stores/build/esm/factories/StoreFactory.js +0 -72
  161. package/node_modules/@sprucelabs/data-stores/build/esm/fixtures/DatabaseFixture.d.ts +0 -22
  162. package/node_modules/@sprucelabs/data-stores/build/esm/fixtures/DatabaseFixture.js +0 -99
  163. package/node_modules/@sprucelabs/data-stores/build/esm/fixtures/StoreFixture.d.ts +0 -5
  164. package/node_modules/@sprucelabs/data-stores/build/esm/fixtures/StoreFixture.js +0 -25
  165. package/node_modules/@sprucelabs/data-stores/build/esm/index.d.ts +0 -21
  166. package/node_modules/@sprucelabs/data-stores/build/esm/index.js +0 -21
  167. package/node_modules/@sprucelabs/data-stores/build/esm/loaders/StoreLoader.d.ts +0 -25
  168. package/node_modules/@sprucelabs/data-stores/build/esm/loaders/StoreLoader.js +0 -120
  169. package/node_modules/@sprucelabs/data-stores/build/esm/mutexers/AbstractMutexer.d.ts +0 -6
  170. package/node_modules/@sprucelabs/data-stores/build/esm/mutexers/AbstractMutexer.js +0 -56
  171. package/node_modules/@sprucelabs/data-stores/build/esm/stores/AbstractStore.d.ts +0 -48
  172. package/node_modules/@sprucelabs/data-stores/build/esm/stores/AbstractStore.js +0 -293
  173. package/node_modules/@sprucelabs/data-stores/build/esm/tests/AbstractDatabaseTest.d.ts +0 -12
  174. package/node_modules/@sprucelabs/data-stores/build/esm/tests/AbstractDatabaseTest.js +0 -54
  175. package/node_modules/@sprucelabs/data-stores/build/esm/types/database.types.d.ts +0 -29
  176. package/node_modules/@sprucelabs/data-stores/build/esm/types/database.types.js +0 -1
  177. package/node_modules/@sprucelabs/data-stores/build/esm/types/query.types.d.ts +0 -29
  178. package/node_modules/@sprucelabs/data-stores/build/esm/types/query.types.js +0 -2
  179. package/node_modules/@sprucelabs/data-stores/build/esm/types/stores.types.d.ts +0 -24
  180. package/node_modules/@sprucelabs/data-stores/build/esm/types/stores.types.js +0 -10
  181. package/node_modules/@sprucelabs/data-stores/build/esm/utilities/error.utility.d.ts +0 -5
  182. package/node_modules/@sprucelabs/data-stores/build/esm/utilities/error.utility.js +0 -23
  183. package/node_modules/@sprucelabs/data-stores/build/esm/utilities/generateId.d.ts +0 -1
  184. package/node_modules/@sprucelabs/data-stores/build/esm/utilities/generateId.js +0 -4
  185. package/node_modules/@sprucelabs/data-stores/build/esm/utilities/generateIdDeprecated.d.ts +0 -6
  186. package/node_modules/@sprucelabs/data-stores/build/esm/utilities/generateIdDeprecated.js +0 -6
  187. package/node_modules/@sprucelabs/data-stores/build/esm/utilities/mongo.utility.d.ts +0 -12
  188. package/node_modules/@sprucelabs/data-stores/build/esm/utilities/mongo.utility.js +0 -104
  189. package/node_modules/@sprucelabs/data-stores/build/factories/DatabaseFactory.d.ts +0 -10
  190. package/node_modules/@sprucelabs/data-stores/build/factories/DatabaseFactory.js +0 -38
  191. package/node_modules/@sprucelabs/data-stores/build/factories/StoreFactory.d.ts +0 -25
  192. package/node_modules/@sprucelabs/data-stores/build/factories/StoreFactory.js +0 -65
  193. package/node_modules/@sprucelabs/data-stores/build/fixtures/DatabaseFixture.d.ts +0 -22
  194. package/node_modules/@sprucelabs/data-stores/build/fixtures/DatabaseFixture.js +0 -86
  195. package/node_modules/@sprucelabs/data-stores/build/fixtures/StoreFixture.d.ts +0 -5
  196. package/node_modules/@sprucelabs/data-stores/build/fixtures/StoreFixture.js +0 -20
  197. package/node_modules/@sprucelabs/data-stores/build/index.d.ts +0 -21
  198. package/node_modules/@sprucelabs/data-stores/build/index.js +0 -53
  199. package/node_modules/@sprucelabs/data-stores/build/loaders/StoreLoader.d.ts +0 -25
  200. package/node_modules/@sprucelabs/data-stores/build/loaders/StoreLoader.js +0 -107
  201. package/node_modules/@sprucelabs/data-stores/build/mutexers/AbstractMutexer.d.ts +0 -6
  202. package/node_modules/@sprucelabs/data-stores/build/mutexers/AbstractMutexer.js +0 -46
  203. package/node_modules/@sprucelabs/data-stores/build/stores/AbstractStore.d.ts +0 -48
  204. package/node_modules/@sprucelabs/data-stores/build/stores/AbstractStore.js +0 -285
  205. package/node_modules/@sprucelabs/data-stores/build/tests/AbstractDatabaseTest.d.ts +0 -12
  206. package/node_modules/@sprucelabs/data-stores/build/tests/AbstractDatabaseTest.js +0 -37
  207. package/node_modules/@sprucelabs/data-stores/build/types/database.types.d.ts +0 -29
  208. package/node_modules/@sprucelabs/data-stores/build/types/database.types.js +0 -2
  209. package/node_modules/@sprucelabs/data-stores/build/types/query.types.d.ts +0 -29
  210. package/node_modules/@sprucelabs/data-stores/build/types/query.types.js +0 -3
  211. package/node_modules/@sprucelabs/data-stores/build/types/stores.types.d.ts +0 -24
  212. package/node_modules/@sprucelabs/data-stores/build/types/stores.types.js +0 -13
  213. package/node_modules/@sprucelabs/data-stores/build/utilities/error.utility.d.ts +0 -5
  214. package/node_modules/@sprucelabs/data-stores/build/utilities/error.utility.js +0 -28
  215. package/node_modules/@sprucelabs/data-stores/build/utilities/generateId.d.ts +0 -1
  216. package/node_modules/@sprucelabs/data-stores/build/utilities/generateId.js +0 -7
  217. package/node_modules/@sprucelabs/data-stores/build/utilities/generateIdDeprecated.d.ts +0 -6
  218. package/node_modules/@sprucelabs/data-stores/build/utilities/generateIdDeprecated.js +0 -11
  219. package/node_modules/@sprucelabs/data-stores/build/utilities/mongo.utility.d.ts +0 -12
  220. package/node_modules/@sprucelabs/data-stores/build/utilities/mongo.utility.js +0 -109
  221. package/node_modules/@sprucelabs/data-stores/node_modules/globby/gitignore.js +0 -120
  222. package/node_modules/@sprucelabs/data-stores/node_modules/globby/index.d.ts +0 -186
  223. package/node_modules/@sprucelabs/data-stores/node_modules/globby/index.js +0 -181
  224. package/node_modules/@sprucelabs/data-stores/node_modules/globby/license +0 -9
  225. package/node_modules/@sprucelabs/data-stores/node_modules/globby/package.json +0 -82
  226. package/node_modules/@sprucelabs/data-stores/node_modules/globby/readme.md +0 -170
  227. package/node_modules/@sprucelabs/data-stores/node_modules/globby/stream-utils.js +0 -46
  228. package/node_modules/@sprucelabs/data-stores/package.json +0 -144
  229. package/node_modules/@sprucelabs/data-stores/tsconfig.json +0 -39
@@ -1,476 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __rest = (this && this.__rest) || function (s, e) {
11
- var t = {};
12
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
13
- t[p] = s[p];
14
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
15
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
16
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
17
- t[p[i]] = s[p[i]];
18
- }
19
- return t;
20
- };
21
- import differenceWith from 'lodash/differenceWith.js';
22
- import isEqual from 'lodash/isEqual.js';
23
- import { MongoClient, MongoError } from 'mongodb';
24
- import SpruceError from '../errors/SpruceError.js';
25
- import generateId from '../utilities/generateId.js';
26
- import mongoUtil from '../utilities/mongo.utility.js';
27
- export const MONGO_TEST_URI = 'mongodb://localhost:27017';
28
- export default class MongoDatabase {
29
- constructor(url, options) {
30
- this.disableAutoGeneratedIdsOnTheseCollections = [];
31
- this._isConnected = false;
32
- const _a = options !== null && options !== void 0 ? options : {}, { dbName } = _a, rest = __rest(_a, ["dbName"]);
33
- if (dbName === 'undefined') {
34
- throw new SpruceError({
35
- code: 'INVALID_DATABASE_NAME',
36
- suppliedName: dbName,
37
- });
38
- }
39
- try {
40
- this.mongo = new MongoClient(url, Object.assign(Object.assign({}, (rest || {})), { serverSelectionTimeoutMS: 5000 }));
41
- }
42
- catch (err) {
43
- if (err.message.includes('Invalid scheme')) {
44
- throw new SpruceError({ code: 'INVALID_DB_CONNECTION_STRING' });
45
- }
46
- throw err;
47
- }
48
- this.dbName = dbName !== null && dbName !== void 0 ? dbName : 'mercury';
49
- }
50
- count(collection, query) {
51
- const col = this.assertDbWhileAttempingTo('count records', collection).collection(collection);
52
- return col.countDocuments(query ? this.toMongoIdAndNull(collection, query) : {});
53
- }
54
- generateId() {
55
- return generateId();
56
- }
57
- delete(collection, query) {
58
- var _a;
59
- return __awaiter(this, void 0, void 0, function* () {
60
- const results = yield this.assertDbWhileAttempingTo('delete many records', collection)
61
- .collection(collection)
62
- .deleteMany(this.toMongoIdAndNull(collection, query));
63
- return (_a = results.deletedCount) !== null && _a !== void 0 ? _a : 0;
64
- });
65
- }
66
- deleteOne(collection, query) {
67
- var _a;
68
- return __awaiter(this, void 0, void 0, function* () {
69
- const results = yield this.assertDbWhileAttempingTo('delete one record', collection)
70
- .collection(collection)
71
- .deleteOne(this.toMongoIdAndNull(collection, query));
72
- return (_a = results.deletedCount) !== null && _a !== void 0 ? _a : 0;
73
- });
74
- }
75
- assertDbWhileAttempingTo(attempt, collectionName) {
76
- if (!this.isConnected() || !this.db) {
77
- throw new SpruceError({
78
- code: 'DATABASE_NOT_CONNECTED',
79
- operationAttempted: attempt,
80
- collectionName,
81
- });
82
- }
83
- return this.db;
84
- }
85
- findOne(collection, query, options) {
86
- return __awaiter(this, void 0, void 0, function* () {
87
- let q;
88
- try {
89
- q = this.toMongoIdAndNull(collection, query || {});
90
- }
91
- catch (err) {
92
- return null;
93
- }
94
- const match = yield this.assertDbWhileAttempingTo('found one record.', collection)
95
- .collection(collection)
96
- //@ts-ignore
97
- .findOne(q, mongoUtil.queryOptionsToMongoFindOptions(options));
98
- //@ts-ignore
99
- return match ? this.normalizeRecord(match) : null;
100
- });
101
- }
102
- find(collection, query, options) {
103
- return __awaiter(this, void 0, void 0, function* () {
104
- let q;
105
- try {
106
- q = this.toMongoIdAndNull(collection, query || {});
107
- }
108
- catch (err) {
109
- return [];
110
- }
111
- if ((options === null || options === void 0 ? void 0 : options.limit) === 0) {
112
- return [];
113
- }
114
- const matches = yield this.assertDbWhileAttempingTo('find many records.', collection)
115
- .collection(collection)
116
- //@ts-ignore
117
- .find(q, mongoUtil.queryOptionsToMongoFindOptions(options))
118
- .toArray();
119
- return matches.map((match) => this.normalizeRecord(match));
120
- });
121
- }
122
- toMongoIdAndNull(collection, query) {
123
- const isAutoGeneratingIds = this.disableAutoGeneratedIdsOnTheseCollections.indexOf(collection) === -1;
124
- const q = mongoUtil.mapQuery(query, {
125
- shouldTransformToObjectId: isAutoGeneratingIds,
126
- });
127
- Object.keys(q).forEach((key) => {
128
- if (q[key] === undefined) {
129
- q[key] = null;
130
- }
131
- });
132
- return q;
133
- }
134
- createOne(collection, values) {
135
- return __awaiter(this, void 0, void 0, function* () {
136
- const record = this.toMongoIdAndNull(collection, values);
137
- try {
138
- const created = yield this.assertDbWhileAttempingTo('create a new record.', collection)
139
- .collection(collection)
140
- .insertOne(record);
141
- return this.findOne(collection, {
142
- id: created.insertedId.toHexString(),
143
- });
144
- }
145
- catch (err) {
146
- if (err instanceof MongoError) {
147
- if (err.code === 11000) {
148
- throw new SpruceError(Object.assign(Object.assign({ code: 'DUPLICATE_RECORD', collectionName: collection }, this.generateDuplicateFieldsForError(
149
- //@ts-ignore
150
- err.keyValue)), { action: 'create', originalError: err }));
151
- }
152
- }
153
- throw err;
154
- }
155
- });
156
- }
157
- create(collection, values) {
158
- return __awaiter(this, void 0, void 0, function* () {
159
- const records = values.map((v) => this.toMongoIdAndNull(collection, v));
160
- try {
161
- const created = yield this.assertDbWhileAttempingTo('create many records.', collection)
162
- .collection(collection)
163
- .insertMany(records);
164
- const ids = Object.values(created.insertedIds).map((i) => i.toHexString());
165
- return this.find(collection, {
166
- id: { $in: ids },
167
- });
168
- }
169
- catch (err) {
170
- if (err instanceof MongoError) {
171
- if (err.code === 11000) {
172
- throw new SpruceError(Object.assign(Object.assign({ code: 'DUPLICATE_RECORD', collectionName: collection }, this.generateDuplicateFieldsForError(
173
- //@ts-ignore
174
- err.keyValue)), { action: 'create', originalError: err }));
175
- }
176
- }
177
- throw err;
178
- }
179
- });
180
- }
181
- normalizeRecord(record) {
182
- const { _id } = record, rest = __rest(record, ["_id"]);
183
- if (!_id) {
184
- return rest;
185
- }
186
- return Object.assign({ id: _id.toString() }, rest);
187
- }
188
- close() {
189
- return __awaiter(this, void 0, void 0, function* () {
190
- if (this.isConnected()) {
191
- this._isConnected = false;
192
- yield this.mongo.close(true);
193
- }
194
- });
195
- }
196
- connect() {
197
- return __awaiter(this, void 0, void 0, function* () {
198
- if (!this.isConnected()) {
199
- try {
200
- this._isConnected = true;
201
- yield this.mongo.connect();
202
- }
203
- catch (err) {
204
- if (err.name === 'MongoParseError') {
205
- throw new SpruceError({ code: 'INVALID_DB_CONNECTION_STRING' });
206
- }
207
- else if (err.message.includes('ECONNREFUSED')) {
208
- throw new SpruceError({ code: 'UNABLE_TO_CONNECT_TO_DB' });
209
- }
210
- else {
211
- throw new SpruceError({
212
- code: 'UNKNOWN_DATABASE_ERROR',
213
- originalError: err,
214
- databaseErrorMessage: err.message,
215
- });
216
- }
217
- }
218
- }
219
- this.db = this.mongo.db(this.dbName);
220
- });
221
- }
222
- isConnected() {
223
- return this._isConnected;
224
- }
225
- dropCollection(name) {
226
- return __awaiter(this, void 0, void 0, function* () {
227
- const collections = yield this.assertDbWhileAttempingTo('drop an entire collection.', '')
228
- .listCollections()
229
- .toArray();
230
- const doesExist = !!collections.find((collection) => collection.name === name);
231
- if (doesExist) {
232
- const collection = this.assertDbWhileAttempingTo('drop the collection.', '').collection(name);
233
- yield collection.drop();
234
- }
235
- });
236
- }
237
- dropDatabase() {
238
- return __awaiter(this, void 0, void 0, function* () {
239
- yield this.assertDbWhileAttempingTo('drop the entire database.').dropDatabase();
240
- });
241
- }
242
- listIndexes(collection) {
243
- return __awaiter(this, void 0, void 0, function* () {
244
- try {
245
- return yield this.assertDbWhileAttempingTo('get indexes.', collection)
246
- .collection(collection)
247
- .listIndexes()
248
- .toArray();
249
- }
250
- catch (err) {
251
- return [];
252
- }
253
- });
254
- }
255
- dropIndex(collection, fields) {
256
- return __awaiter(this, void 0, void 0, function* () {
257
- const indexes = yield this.listIndexes(collection);
258
- let found = false;
259
- for (const index of indexes) {
260
- if (isEqual(Object.keys(index.key), fields)) {
261
- yield this.assertDbWhileAttempingTo('drop a index.', collection)
262
- .collection(collection)
263
- .dropIndex(index.name);
264
- found = true;
265
- }
266
- }
267
- if (!found) {
268
- throw new SpruceError({ code: 'INDEX_NOT_FOUND', missingIndex: fields });
269
- }
270
- });
271
- }
272
- getUniqueIndexes(collection) {
273
- return __awaiter(this, void 0, void 0, function* () {
274
- try {
275
- const indexes = yield this.listIndexes(collection);
276
- const uniqueIndexes = [];
277
- for (const index of indexes) {
278
- if (index.unique) {
279
- uniqueIndexes.push(Object.keys(index.key));
280
- }
281
- }
282
- return uniqueIndexes;
283
- }
284
- catch (err) {
285
- return [];
286
- }
287
- });
288
- }
289
- getIndexes(collection, shouldIncludeUnique = false) {
290
- return __awaiter(this, void 0, void 0, function* () {
291
- try {
292
- const indexes = yield this.listIndexes(collection);
293
- if (shouldIncludeUnique) {
294
- return indexes;
295
- }
296
- const nonUniqueIndexes = [];
297
- for (const index of indexes) {
298
- if (!index.unique) {
299
- nonUniqueIndexes.push(Object.keys(index.key));
300
- }
301
- }
302
- return nonUniqueIndexes;
303
- }
304
- catch (err) {
305
- return [];
306
- }
307
- });
308
- }
309
- createIndex(collection, fields) {
310
- return __awaiter(this, void 0, void 0, function* () {
311
- const currentIndexes = yield this.getIndexes(collection);
312
- yield this.assertIndexDoesNotExist(currentIndexes, fields);
313
- const index = {};
314
- fields.forEach((name) => {
315
- index[name] = 1;
316
- });
317
- try {
318
- yield this.assertDbWhileAttempingTo('create an index.', collection)
319
- .collection(collection)
320
- .createIndex(index);
321
- }
322
- catch (err) {
323
- if ((err === null || err === void 0 ? void 0 : err.code) === 11000) {
324
- throw new SpruceError({
325
- code: 'DUPLICATE_KEY',
326
- friendlyMessage: `Could not create index! Index on '${collection}' has duplicate key for "${fields.join(',')}"`,
327
- });
328
- }
329
- else {
330
- throw err;
331
- }
332
- }
333
- });
334
- }
335
- assertIndexDoesNotExist(currentIndexes, fields) {
336
- if (this.doesIndexExist(currentIndexes, fields)) {
337
- throw new SpruceError({ code: 'INDEX_EXISTS', index: fields });
338
- }
339
- }
340
- doesIndexExist(currentIndexes, fields) {
341
- for (const index of currentIndexes !== null && currentIndexes !== void 0 ? currentIndexes : []) {
342
- if (isEqual(index, fields)) {
343
- return true;
344
- }
345
- }
346
- return false;
347
- }
348
- syncIndexes(collectionName, indexes) {
349
- return __awaiter(this, void 0, void 0, function* () {
350
- const currentIndexes = yield this.getIndexes(collectionName);
351
- const extraIndexes = differenceWith(currentIndexes, indexes, isEqual).filter((i) => !(i.length === 1 && i[0] === '_id'));
352
- for (const index of indexes) {
353
- if (!this.doesIndexExist(currentIndexes, index)) {
354
- yield this.createIndex(collectionName, index);
355
- }
356
- }
357
- for (const extra of extraIndexes) {
358
- yield this.dropIndex(collectionName, extra);
359
- }
360
- });
361
- }
362
- createUniqueIndex(collection, fields) {
363
- return __awaiter(this, void 0, void 0, function* () {
364
- const currentIndexes = yield this.getUniqueIndexes(collection);
365
- yield this.assertIndexDoesNotExist(currentIndexes, fields);
366
- const index = {};
367
- fields.forEach((name) => {
368
- index[name] = 1;
369
- });
370
- try {
371
- yield this.assertDbWhileAttempingTo('create a unique index.', collection)
372
- .collection(collection)
373
- .createIndex(index, { unique: true });
374
- }
375
- catch (err) {
376
- if ((err === null || err === void 0 ? void 0 : err.code) === 11000) {
377
- throw new SpruceError({
378
- code: 'DUPLICATE_KEY',
379
- friendlyMessage: `Could not create index! Unique index on '${collection}' has duplicate key for "${fields.join(',')}"`,
380
- });
381
- }
382
- else {
383
- throw err;
384
- }
385
- }
386
- });
387
- }
388
- syncUniqueIndexes(collectionName, indexes) {
389
- return __awaiter(this, void 0, void 0, function* () {
390
- const currentIndexes = yield this.getUniqueIndexes(collectionName);
391
- const extraIndexes = differenceWith(currentIndexes, indexes, isEqual);
392
- for (const index of indexes) {
393
- if (!this.doesIndexExist(currentIndexes, index)) {
394
- yield this.createUniqueIndex(collectionName, index);
395
- }
396
- }
397
- for (const extra of extraIndexes) {
398
- yield this.dropIndex(collectionName, extra);
399
- }
400
- });
401
- }
402
- update(collection, query, updates) {
403
- return __awaiter(this, void 0, void 0, function* () {
404
- const q = this.toMongoIdAndNull(collection, query);
405
- const values = mongoUtil.prepareUpdates(updates);
406
- const { modifiedCount } = yield this.assertDbWhileAttempingTo('update many records.', collection)
407
- .collection(collection)
408
- .updateMany(q, values);
409
- return modifiedCount;
410
- });
411
- }
412
- updateOne(collection, query, updates) {
413
- return __awaiter(this, void 0, void 0, function* () {
414
- const q = this.toMongoIdAndNull(collection, query);
415
- const values = mongoUtil.prepareUpdates(updates);
416
- try {
417
- const results = yield this.assertDbWhileAttempingTo('update one record.', collection)
418
- .collection(collection)
419
- .findOneAndUpdate(q, values, { returnDocument: 'after' });
420
- if (!results.value) {
421
- throw new SpruceError({
422
- code: 'RECORD_NOT_FOUND',
423
- storeName: 'MongoDatabase',
424
- query: q,
425
- });
426
- }
427
- return this.normalizeRecord(results.value);
428
- }
429
- catch (err) {
430
- if (err instanceof MongoError) {
431
- if (err.code === 11000) {
432
- throw new SpruceError(Object.assign(Object.assign({ code: 'DUPLICATE_RECORD', collectionName: collection }, this.generateDuplicateFieldsForError(
433
- //@ts-ignore
434
- err.keyValue)), { action: 'updateOne', originalError: err }));
435
- }
436
- }
437
- throw err;
438
- }
439
- });
440
- }
441
- upsertOne(collection, query, updates) {
442
- return __awaiter(this, void 0, void 0, function* () {
443
- const q = this.toMongoIdAndNull(collection, query);
444
- const values = this.toMongoIdAndNull(collection, updates);
445
- try {
446
- const results = yield this.assertDbWhileAttempingTo('upsert one record.', collection)
447
- .collection(collection)
448
- .findOneAndUpdate(q, { $set: values }, { upsert: true, returnDocument: 'after' });
449
- //@ts-ignore
450
- return this.normalizeRecord(results.value);
451
- }
452
- catch (err) {
453
- if (err instanceof MongoError) {
454
- if (err.code === 11000) {
455
- throw new SpruceError(Object.assign(Object.assign({ code: 'DUPLICATE_RECORD', collectionName: collection }, this.generateDuplicateFieldsForError(
456
- //@ts-ignore
457
- err.keyValue)), { action: 'upsertOne', originalError: err }));
458
- }
459
- }
460
- throw err;
461
- }
462
- });
463
- }
464
- generateDuplicateFieldsForError(mongoIndexKeyValue) {
465
- const duplicateFields = [];
466
- const duplicateValues = [];
467
- Object.keys(mongoIndexKeyValue !== null && mongoIndexKeyValue !== void 0 ? mongoIndexKeyValue : {}).forEach((name) => {
468
- duplicateFields.push(name);
469
- duplicateValues.push(mongoIndexKeyValue[name]);
470
- });
471
- return {
472
- duplicateFields,
473
- duplicateValues,
474
- };
475
- }
476
- }
@@ -1,41 +0,0 @@
1
- import AbstractMutexer from '../mutexers/AbstractMutexer';
2
- import { Database } from '../types/database.types';
3
- import { QueryOptions } from '../types/query.types';
4
- export default class NeDbDatabase extends AbstractMutexer implements Database {
5
- private collections;
6
- private _isConnected;
7
- generateId(): string;
8
- connect(): Promise<void>;
9
- close(): Promise<void>;
10
- private toMongoId;
11
- private prepQuery;
12
- private valuesToDocument;
13
- setShouldAutoGenerateIds(collection: string, shouldAutoGenerateIds: boolean): Promise<void>;
14
- private randomDelay;
15
- isConnected(): boolean;
16
- private normalizeRecord;
17
- private handlePlaceholders;
18
- count(collection: string, query?: Record<string, any>): Promise<number>;
19
- createOne(collection: string, values: Record<string, any>): Promise<Record<string, any>>;
20
- create(collection: string, values: Record<string, any>[]): Promise<Record<string, any>[]>;
21
- private loadCollection;
22
- dropCollection(name: string): Promise<void>;
23
- dropDatabase(): Promise<void>;
24
- findOne(collection: string, query?: Record<string, any>, options?: QueryOptions): Promise<Record<string, any> | null>;
25
- find(collection: string, query?: Record<string, any>, options?: QueryOptions): Promise<Record<string, any>[]>;
26
- update(collection: string, query: Record<string, any>, updates: Record<string, any>, neDbOptions?: Record<string, any>): Promise<number>;
27
- updateOne(collection: string, query: Record<string, any>, updates: Record<string, any>, neDbOptions?: Record<string, any>, action?: string): Promise<Record<string, any>>;
28
- upsertOne(collection: string, query: Record<string, any>, updates: Record<string, any>): Promise<Record<string, any>>;
29
- delete(collection: string, query: Record<string, any>): Promise<number>;
30
- deleteOne(collection: string, query: Record<string, any>): Promise<number>;
31
- private assertPassesUniqueIndexes;
32
- getUniqueIndexes(collection: string): Promise<string[][]>;
33
- getIndexes(collection: string, shouldIncludeUnique?: boolean): Promise<string[][]>;
34
- dropIndex(collection: string, fields: string[]): Promise<void>;
35
- private assertIndexDoesNotExist;
36
- private doesIndexExist;
37
- createUniqueIndex(collection: string, fields: string[]): Promise<void>;
38
- createIndex(collection: string, fields: string[]): Promise<void>;
39
- syncUniqueIndexes(collectionName: string, indexes: string[][]): Promise<void>;
40
- syncIndexes(collectionName: string, indexes: string[][]): Promise<void>;
41
- }