@dereekb/firebase 2.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/package.json +24 -9
  3. package/src/index.d.ts +0 -1
  4. package/src/index.js +1 -2
  5. package/src/index.js.map +1 -1
  6. package/src/lib/client/firestore/driver.accessor.batch.d.ts +31 -0
  7. package/src/lib/{firestore/accessor.batch.js → client/firestore/driver.accessor.batch.js} +22 -4
  8. package/src/lib/client/firestore/driver.accessor.batch.js.map +1 -0
  9. package/src/lib/client/firestore/driver.accessor.d.ts +2 -0
  10. package/src/lib/{firestore/accessor.default.d.ts → client/firestore/driver.accessor.default.d.ts} +4 -11
  11. package/src/lib/{firestore/accessor.default.js → client/firestore/driver.accessor.default.js} +17 -13
  12. package/src/lib/client/firestore/driver.accessor.default.js.map +1 -0
  13. package/src/lib/client/firestore/driver.accessor.js +23 -0
  14. package/src/lib/client/firestore/driver.accessor.js.map +1 -0
  15. package/src/lib/client/firestore/driver.accessor.transaction.d.ts +31 -0
  16. package/src/lib/{firestore/accessor.transaction.js → client/firestore/driver.accessor.transaction.js} +22 -4
  17. package/src/lib/client/firestore/driver.accessor.transaction.js.map +1 -0
  18. package/src/lib/client/firestore/driver.d.ts +4 -0
  19. package/src/lib/client/firestore/driver.js +15 -0
  20. package/src/lib/client/firestore/driver.js.map +1 -0
  21. package/src/lib/client/firestore/driver.query.d.ts +13 -0
  22. package/src/lib/client/firestore/driver.query.js +47 -0
  23. package/src/lib/client/firestore/driver.query.js.map +1 -0
  24. package/src/lib/client/firestore/firestore.d.ts +5 -0
  25. package/src/lib/client/firestore/firestore.js +10 -0
  26. package/src/lib/client/firestore/firestore.js.map +1 -0
  27. package/src/lib/client/firestore/index.d.ts +4 -0
  28. package/src/lib/client/firestore/index.js +8 -0
  29. package/src/lib/client/firestore/index.js.map +1 -0
  30. package/src/lib/client/function/function.d.ts +28 -0
  31. package/src/lib/client/function/function.factory.d.ts +40 -0
  32. package/src/lib/client/function/function.factory.js +36 -0
  33. package/src/lib/client/function/function.factory.js.map +1 -0
  34. package/src/lib/client/function/function.js +3 -0
  35. package/src/lib/client/function/function.js.map +1 -0
  36. package/src/lib/client/function/index.d.ts +2 -0
  37. package/src/lib/client/function/index.js +6 -0
  38. package/src/lib/client/function/index.js.map +1 -0
  39. package/src/lib/client/index.d.ts +2 -0
  40. package/src/lib/client/index.js +6 -0
  41. package/src/lib/client/index.js.map +1 -0
  42. package/src/lib/common/auth/auth.d.ts +4 -0
  43. package/src/lib/common/auth/auth.js +3 -0
  44. package/src/lib/common/auth/auth.js.map +1 -0
  45. package/src/lib/common/auth/index.d.ts +1 -0
  46. package/src/lib/common/auth/index.js +5 -0
  47. package/src/lib/common/auth/index.js.map +1 -0
  48. package/src/lib/common/firestore/accessor/accessor.batch.d.ts +3 -0
  49. package/src/lib/common/firestore/accessor/accessor.batch.js +3 -0
  50. package/src/lib/common/firestore/accessor/accessor.batch.js.map +1 -0
  51. package/src/lib/common/firestore/accessor/accessor.d.ts +87 -0
  52. package/src/lib/common/firestore/accessor/accessor.default.d.ts +2 -0
  53. package/src/lib/common/firestore/accessor/accessor.default.js +3 -0
  54. package/src/lib/common/firestore/accessor/accessor.default.js.map +1 -0
  55. package/src/lib/{firestore → common/firestore/accessor}/accessor.js +17 -1
  56. package/src/lib/common/firestore/accessor/accessor.js.map +1 -0
  57. package/src/lib/common/firestore/accessor/accessor.transaction.d.ts +3 -0
  58. package/src/lib/common/firestore/accessor/accessor.transaction.js +3 -0
  59. package/src/lib/common/firestore/accessor/accessor.transaction.js.map +1 -0
  60. package/src/lib/common/firestore/accessor/context.batch.d.ts +7 -0
  61. package/src/lib/common/firestore/accessor/context.batch.js +3 -0
  62. package/src/lib/common/firestore/accessor/context.batch.js.map +1 -0
  63. package/src/lib/{firestore → common/firestore/accessor}/context.d.ts +0 -0
  64. package/src/lib/common/firestore/accessor/context.default.d.ts +5 -0
  65. package/src/lib/common/firestore/accessor/context.default.js +3 -0
  66. package/src/lib/common/firestore/accessor/context.default.js.map +1 -0
  67. package/src/lib/{firestore → common/firestore/accessor}/context.js +0 -0
  68. package/src/lib/common/firestore/accessor/context.js.map +1 -0
  69. package/src/lib/common/firestore/accessor/context.transaction.d.ts +7 -0
  70. package/src/lib/common/firestore/accessor/context.transaction.js +3 -0
  71. package/src/lib/common/firestore/accessor/context.transaction.js.map +1 -0
  72. package/src/lib/common/firestore/accessor/document.d.ts +121 -0
  73. package/src/lib/common/firestore/accessor/document.js +106 -0
  74. package/src/lib/common/firestore/accessor/document.js.map +1 -0
  75. package/src/lib/common/firestore/accessor/document.utility.d.ts +43 -0
  76. package/src/lib/common/firestore/accessor/document.utility.js +74 -0
  77. package/src/lib/common/firestore/accessor/document.utility.js.map +1 -0
  78. package/src/lib/{firestore → common/firestore/accessor}/index.d.ts +3 -5
  79. package/src/lib/common/firestore/accessor/index.js +14 -0
  80. package/src/lib/common/firestore/accessor/index.js.map +1 -0
  81. package/src/lib/common/firestore/collection/collection.d.ts +27 -0
  82. package/src/lib/common/firestore/collection/collection.js +26 -0
  83. package/src/lib/common/firestore/collection/collection.js.map +1 -0
  84. package/src/lib/common/firestore/collection/collection.query.d.ts +36 -0
  85. package/src/lib/common/firestore/collection/collection.query.js +27 -0
  86. package/src/lib/common/firestore/collection/collection.query.js.map +1 -0
  87. package/src/lib/common/firestore/collection/index.d.ts +3 -0
  88. package/src/lib/common/firestore/collection/index.js +7 -0
  89. package/src/lib/common/firestore/collection/index.js.map +1 -0
  90. package/src/lib/common/firestore/collection/subcollection.d.ts +25 -0
  91. package/src/lib/common/firestore/collection/subcollection.js +14 -0
  92. package/src/lib/common/firestore/collection/subcollection.js.map +1 -0
  93. package/src/lib/common/firestore/collection/subcollection.single.d.ts +12 -0
  94. package/src/lib/common/firestore/collection/subcollection.single.js +14 -0
  95. package/src/lib/common/firestore/collection/subcollection.single.js.map +1 -0
  96. package/src/lib/common/firestore/context.d.ts +36 -0
  97. package/src/lib/common/firestore/context.js +36 -0
  98. package/src/lib/common/firestore/context.js.map +1 -0
  99. package/src/lib/common/firestore/driver/accessor.d.ts +26 -0
  100. package/src/lib/common/firestore/driver/accessor.js +3 -0
  101. package/src/lib/common/firestore/driver/accessor.js.map +1 -0
  102. package/src/lib/common/firestore/driver/batch.d.ts +22 -0
  103. package/src/lib/common/firestore/driver/batch.js +3 -0
  104. package/src/lib/common/firestore/driver/batch.js.map +1 -0
  105. package/src/lib/common/firestore/driver/driver.d.ts +11 -0
  106. package/src/lib/common/firestore/driver/driver.js +3 -0
  107. package/src/lib/common/firestore/driver/driver.js.map +1 -0
  108. package/src/lib/common/firestore/driver/index.d.ts +6 -0
  109. package/src/lib/common/firestore/driver/index.js +10 -0
  110. package/src/lib/common/firestore/driver/index.js.map +1 -0
  111. package/src/lib/common/firestore/driver/query.d.ts +31 -0
  112. package/src/lib/common/firestore/driver/query.handler.d.ts +9 -0
  113. package/src/lib/common/firestore/driver/query.handler.js +26 -0
  114. package/src/lib/common/firestore/driver/query.handler.js.map +1 -0
  115. package/src/lib/common/firestore/driver/query.js +3 -0
  116. package/src/lib/common/firestore/driver/query.js.map +1 -0
  117. package/src/lib/common/firestore/driver/transaction.d.ts +23 -0
  118. package/src/lib/common/firestore/driver/transaction.js +3 -0
  119. package/src/lib/common/firestore/driver/transaction.js.map +1 -0
  120. package/src/lib/common/firestore/index.d.ts +8 -0
  121. package/src/lib/common/firestore/index.js +12 -0
  122. package/src/lib/common/firestore/index.js.map +1 -0
  123. package/src/lib/common/firestore/query/accumulator.d.ts +24 -0
  124. package/src/lib/common/firestore/query/accumulator.js +22 -0
  125. package/src/lib/common/firestore/query/accumulator.js.map +1 -0
  126. package/src/lib/common/firestore/query/constraint.d.ts +112 -0
  127. package/src/lib/common/firestore/query/constraint.js +133 -0
  128. package/src/lib/common/firestore/query/constraint.js.map +1 -0
  129. package/src/lib/common/firestore/query/index.d.ts +6 -0
  130. package/src/lib/common/firestore/query/index.js +10 -0
  131. package/src/lib/common/firestore/query/index.js.map +1 -0
  132. package/src/lib/{firestore → common/firestore/query}/iterator.d.ts +37 -11
  133. package/src/lib/common/firestore/query/iterator.js +108 -0
  134. package/src/lib/common/firestore/query/iterator.js.map +1 -0
  135. package/src/lib/common/firestore/query/query.d.ts +49 -0
  136. package/src/lib/common/firestore/query/query.js +37 -0
  137. package/src/lib/common/firestore/query/query.js.map +1 -0
  138. package/src/lib/common/firestore/query/query.util.d.ts +16 -0
  139. package/src/lib/common/firestore/query/query.util.js +27 -0
  140. package/src/lib/common/firestore/query/query.util.js.map +1 -0
  141. package/src/lib/common/firestore/query/watcher.d.ts +34 -0
  142. package/src/lib/common/firestore/query/watcher.js +58 -0
  143. package/src/lib/common/firestore/query/watcher.js.map +1 -0
  144. package/src/lib/common/firestore/reference.d.ts +20 -0
  145. package/src/lib/{firestore → common/firestore}/reference.js +0 -0
  146. package/src/lib/common/firestore/reference.js.map +1 -0
  147. package/src/lib/common/firestore/snapshot/index.d.ts +2 -0
  148. package/src/lib/common/firestore/snapshot/index.js +6 -0
  149. package/src/lib/common/firestore/snapshot/index.js.map +1 -0
  150. package/src/lib/common/firestore/snapshot/snapshot.d.ts +13 -0
  151. package/src/lib/common/firestore/snapshot/snapshot.field.d.ts +25 -0
  152. package/src/lib/common/firestore/snapshot/snapshot.field.js +57 -0
  153. package/src/lib/common/firestore/snapshot/snapshot.field.js.map +1 -0
  154. package/src/lib/common/firestore/snapshot/snapshot.js +35 -0
  155. package/src/lib/common/firestore/snapshot/snapshot.js.map +1 -0
  156. package/src/lib/common/firestore/types.d.ts +145 -0
  157. package/src/lib/common/firestore/types.js +23 -0
  158. package/src/lib/common/firestore/types.js.map +1 -0
  159. package/src/lib/common/function/action.d.ts +3 -0
  160. package/src/lib/common/function/action.js +3 -0
  161. package/src/lib/common/function/action.js.map +1 -0
  162. package/src/lib/common/function/index.d.ts +1 -0
  163. package/src/lib/common/function/index.js +5 -0
  164. package/src/lib/common/function/index.js.map +1 -0
  165. package/src/lib/common/index.d.ts +3 -0
  166. package/src/lib/common/index.js +7 -0
  167. package/src/lib/common/index.js.map +1 -0
  168. package/src/lib/index.d.ts +3 -1
  169. package/src/lib/index.js +3 -1
  170. package/src/lib/index.js.map +1 -1
  171. package/src/lib/model/index.d.ts +1 -0
  172. package/src/lib/model/index.js +5 -0
  173. package/src/lib/model/index.js.map +1 -0
  174. package/src/lib/model/user.d.ts +12 -0
  175. package/src/lib/model/user.js +3 -0
  176. package/src/lib/model/user.js.map +1 -0
  177. package/test/CHANGELOG.md +5 -0
  178. package/test/README.md +11 -0
  179. package/test/package.json +28 -0
  180. package/test/src/index.d.ts +1 -0
  181. package/test/src/index.js +5 -0
  182. package/test/src/index.js.map +1 -0
  183. package/test/src/lib/client/firestore.authorized.d.ts +5 -0
  184. package/{src/test/firebase.context.js → test/src/lib/client/firestore.authorized.js} +4 -4
  185. package/test/src/lib/client/firestore.authorized.js.map +1 -0
  186. package/test/src/lib/client/firestore.d.ts +39 -0
  187. package/test/src/lib/client/firestore.js +90 -0
  188. package/test/src/lib/client/firestore.js.map +1 -0
  189. package/test/src/lib/client/firestore.mock.item.fixture.authorized.d.ts +6 -0
  190. package/test/src/lib/client/firestore.mock.item.fixture.authorized.js +12 -0
  191. package/test/src/lib/client/firestore.mock.item.fixture.authorized.js.map +1 -0
  192. package/test/src/lib/client/index.d.ts +3 -0
  193. package/test/src/lib/client/index.js +7 -0
  194. package/test/src/lib/client/index.js.map +1 -0
  195. package/test/src/lib/common/firestore.d.ts +35 -0
  196. package/test/src/lib/common/firestore.js +50 -0
  197. package/test/src/lib/common/firestore.js.map +1 -0
  198. package/test/src/lib/common/firestore.mock.d.ts +14 -0
  199. package/test/src/lib/common/firestore.mock.item.d.ts +95 -0
  200. package/test/src/lib/common/firestore.mock.item.fixture.d.ts +21 -0
  201. package/test/src/lib/common/firestore.mock.item.fixture.js +43 -0
  202. package/test/src/lib/common/firestore.mock.item.fixture.js.map +1 -0
  203. package/test/src/lib/common/firestore.mock.item.js +138 -0
  204. package/test/src/lib/common/firestore.mock.item.js.map +1 -0
  205. package/test/src/lib/common/firestore.mock.item.query.d.ts +3 -0
  206. package/test/src/lib/common/firestore.mock.item.query.js +13 -0
  207. package/test/src/lib/common/firestore.mock.item.query.js.map +1 -0
  208. package/test/src/lib/common/firestore.mock.js +29 -0
  209. package/test/src/lib/common/firestore.mock.js.map +1 -0
  210. package/test/src/lib/common/index.d.ts +8 -0
  211. package/test/src/lib/common/index.js +12 -0
  212. package/test/src/lib/common/index.js.map +1 -0
  213. package/test/src/lib/common/test.driver.accessor.d.ts +17 -0
  214. package/test/src/lib/common/test.driver.accessor.js +278 -0
  215. package/test/src/lib/common/test.driver.accessor.js.map +1 -0
  216. package/test/src/lib/common/test.driver.query.d.ts +7 -0
  217. package/test/src/lib/common/test.driver.query.js +189 -0
  218. package/test/src/lib/common/test.driver.query.js.map +1 -0
  219. package/test/src/lib/common/test.iterator.d.ts +7 -0
  220. package/test/src/lib/common/test.iterator.js +222 -0
  221. package/test/src/lib/common/test.iterator.js.map +1 -0
  222. package/test/src/lib/index.d.ts +2 -0
  223. package/test/src/lib/index.js +6 -0
  224. package/test/src/lib/index.js.map +1 -0
  225. package/src/lib/firestore/accessor.batch.d.ts +0 -23
  226. package/src/lib/firestore/accessor.batch.js.map +0 -1
  227. package/src/lib/firestore/accessor.d.ts +0 -62
  228. package/src/lib/firestore/accessor.default.js.map +0 -1
  229. package/src/lib/firestore/accessor.js.map +0 -1
  230. package/src/lib/firestore/accessor.transaction.d.ts +0 -23
  231. package/src/lib/firestore/accessor.transaction.js.map +0 -1
  232. package/src/lib/firestore/context.batch.d.ts +0 -9
  233. package/src/lib/firestore/context.batch.js +0 -19
  234. package/src/lib/firestore/context.batch.js.map +0 -1
  235. package/src/lib/firestore/context.default.d.ts +0 -2
  236. package/src/lib/firestore/context.default.js +0 -13
  237. package/src/lib/firestore/context.default.js.map +0 -1
  238. package/src/lib/firestore/context.js.map +0 -1
  239. package/src/lib/firestore/context.transaction.d.ts +0 -9
  240. package/src/lib/firestore/context.transaction.js +0 -19
  241. package/src/lib/firestore/context.transaction.js.map +0 -1
  242. package/src/lib/firestore/document.d.ts +0 -69
  243. package/src/lib/firestore/document.js +0 -49
  244. package/src/lib/firestore/document.js.map +0 -1
  245. package/src/lib/firestore/firestore.d.ts +0 -29
  246. package/src/lib/firestore/firestore.js +0 -37
  247. package/src/lib/firestore/firestore.js.map +0 -1
  248. package/src/lib/firestore/index.js +0 -16
  249. package/src/lib/firestore/index.js.map +0 -1
  250. package/src/lib/firestore/iterator.js +0 -91
  251. package/src/lib/firestore/iterator.js.map +0 -1
  252. package/src/lib/firestore/reference.d.ts +0 -13
  253. package/src/lib/firestore/reference.js.map +0 -1
  254. package/src/test/firebase.context.d.ts +0 -5
  255. package/src/test/firebase.context.item.d.ts +0 -41
  256. package/src/test/firebase.context.item.js +0 -75
  257. package/src/test/firebase.context.item.js.map +0 -1
  258. package/src/test/firebase.context.js.map +0 -1
  259. package/src/test/firebase.d.ts +0 -29
  260. package/src/test/firebase.js +0 -67
  261. package/src/test/firebase.js.map +0 -1
  262. package/src/test/index.d.ts +0 -3
  263. package/src/test/index.js +0 -7
  264. package/src/test/index.js.map +0 -1
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeMockItemCollections = exports.MockItemCollections = exports.mockItemSubItemFirestoreCollection = exports.mockItemSubItemCollectionReferenceFactory = exports.mockItemSubItemConverter = exports.mockItemSubItemCollectionPath = exports.MockItemSubItemDocument = exports.mockItemPrivateDataFirestoreCollection = exports.mockItemPrivateDataCollectionReferenceFactory = exports.mockItemPrivateDataConverter = exports.mockItemPrivateDataIdentifier = exports.mockItemPrivateDataCollectionPath = exports.MockItemPrivateDataDocument = exports.mockItemFirestoreCollection = exports.mockItemCollectionReference = exports.mockItemConverter = exports.mockItemCollectionPath = exports.MockItemDocument = void 0;
4
+ const firebase_1 = require("@dereekb/firebase");
5
+ /**
6
+ * FirestoreDocument for MockItem
7
+ */
8
+ class MockItemDocument extends firebase_1.AbstractFirestoreDocument {
9
+ }
10
+ exports.MockItemDocument = MockItemDocument;
11
+ /**
12
+ * Firestore collection path name.
13
+ */
14
+ exports.mockItemCollectionPath = 'test';
15
+ /**
16
+ * Used to build a FirestoreDataConverter. Fields are configured via configuration. See the SnapshotConverterFunctions for more info.
17
+ */
18
+ exports.mockItemConverter = (0, firebase_1.makeSnapshotConverterFunctions)({
19
+ fields: {
20
+ test: (0, firebase_1.firestoreBoolean)({ default: false, defaultBeforeSave: false }),
21
+ value: (0, firebase_1.firestoreString)()
22
+ }
23
+ });
24
+ /**
25
+ * Used to build a mockItemCollection from a firestore instance with a converter setup.
26
+ *
27
+ * @param firestore
28
+ * @returns
29
+ */
30
+ function mockItemCollectionReference(context) {
31
+ return context.collection(exports.mockItemCollectionPath).withConverter(exports.mockItemConverter);
32
+ }
33
+ exports.mockItemCollectionReference = mockItemCollectionReference;
34
+ function mockItemFirestoreCollection(firestoreContext) {
35
+ return firestoreContext.firestoreCollection({
36
+ itemsPerPage: 50,
37
+ collection: mockItemCollectionReference(firestoreContext),
38
+ makeDocument: (a, d) => new MockItemDocument(a, d),
39
+ firestoreContext
40
+ });
41
+ }
42
+ exports.mockItemFirestoreCollection = mockItemFirestoreCollection;
43
+ /**
44
+ * FirestoreDocument for MockItem
45
+ */
46
+ class MockItemPrivateDataDocument extends firebase_1.AbstractFirestoreDocument {
47
+ }
48
+ exports.MockItemPrivateDataDocument = MockItemPrivateDataDocument;
49
+ /**
50
+ * Firestore collection path name.
51
+ */
52
+ exports.mockItemPrivateDataCollectionPath = 'private';
53
+ exports.mockItemPrivateDataIdentifier = '0';
54
+ /**
55
+ * Used to build a FirestoreDataConverter. Fields are configured via configuration. See the SnapshotConverterFunctions for more info.
56
+ */
57
+ exports.mockItemPrivateDataConverter = (0, firebase_1.makeSnapshotConverterFunctions)({
58
+ fields: {
59
+ comments: (0, firebase_1.firestoreString)(),
60
+ createdAt: (0, firebase_1.firestoreDate)({ saveDefaultAsNow: true })
61
+ }
62
+ });
63
+ /**
64
+ * Used to build a mockItemCollection from a firestore instance with a converter setup.
65
+ *
66
+ * @param firestore
67
+ * @returns
68
+ */
69
+ function mockItemPrivateDataCollectionReferenceFactory(context) {
70
+ return (parent) => {
71
+ return context.subcollection(parent.documentRef, exports.mockItemPrivateDataCollectionPath).withConverter(exports.mockItemPrivateDataConverter);
72
+ };
73
+ }
74
+ exports.mockItemPrivateDataCollectionReferenceFactory = mockItemPrivateDataCollectionReferenceFactory;
75
+ function mockItemPrivateDataFirestoreCollection(firestoreContext) {
76
+ const factory = mockItemPrivateDataCollectionReferenceFactory(firestoreContext);
77
+ return (parent) => {
78
+ return firestoreContext.singleItemFirestoreCollection({
79
+ itemsPerPage: 50,
80
+ collection: factory(parent),
81
+ makeDocument: (a, d) => new MockItemPrivateDataDocument(a, d),
82
+ firestoreContext,
83
+ parent,
84
+ singleItemIdentifier: exports.mockItemPrivateDataIdentifier
85
+ });
86
+ };
87
+ }
88
+ exports.mockItemPrivateDataFirestoreCollection = mockItemPrivateDataFirestoreCollection;
89
+ /**
90
+ * FirestoreDocument for MockItem
91
+ */
92
+ class MockItemSubItemDocument extends firebase_1.AbstractFirestoreDocumentWithParent {
93
+ }
94
+ exports.MockItemSubItemDocument = MockItemSubItemDocument;
95
+ /**
96
+ * Firestore collection path name.
97
+ */
98
+ exports.mockItemSubItemCollectionPath = 'sub';
99
+ /**
100
+ * Used to build a FirestoreDataConverter. Fields are configured via configuration. See the SnapshotConverterFunctions for more info.
101
+ */
102
+ exports.mockItemSubItemConverter = (0, firebase_1.makeSnapshotConverterFunctions)({
103
+ fields: {
104
+ value: (0, firebase_1.firestoreNumber)()
105
+ }
106
+ });
107
+ function mockItemSubItemCollectionReferenceFactory(context) {
108
+ return (parent) => {
109
+ return context.subcollection(parent.documentRef, exports.mockItemSubItemCollectionPath).withConverter(exports.mockItemSubItemConverter);
110
+ };
111
+ }
112
+ exports.mockItemSubItemCollectionReferenceFactory = mockItemSubItemCollectionReferenceFactory;
113
+ function mockItemSubItemFirestoreCollection(firestoreContext) {
114
+ const factory = mockItemSubItemCollectionReferenceFactory(firestoreContext);
115
+ return (parent) => {
116
+ return firestoreContext.firestoreCollectionWithParent({
117
+ itemsPerPage: 50,
118
+ collection: factory(parent),
119
+ makeDocument: (a, d) => new MockItemSubItemDocument(parent.documentRef, a, d),
120
+ firestoreContext,
121
+ parent
122
+ });
123
+ };
124
+ }
125
+ exports.mockItemSubItemFirestoreCollection = mockItemSubItemFirestoreCollection;
126
+ // MARK: Collection
127
+ class MockItemCollections {
128
+ }
129
+ exports.MockItemCollections = MockItemCollections;
130
+ function makeMockItemCollections(firestoreContext) {
131
+ return {
132
+ mockItem: mockItemFirestoreCollection(firestoreContext),
133
+ mockItemPrivateData: mockItemPrivateDataFirestoreCollection(firestoreContext),
134
+ mockItemSubItem: mockItemSubItemFirestoreCollection(firestoreContext)
135
+ };
136
+ }
137
+ exports.makeMockItemCollections = makeMockItemCollections;
138
+ //# sourceMappingURL=firestore.mock.item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firestore.mock.item.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/firestore.mock.item.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { FirestoreQueryConstraint } from '@dereekb/firebase';
2
+ export declare function mockItemWithValue(value: string): FirestoreQueryConstraint;
3
+ export declare function mockItemWithTestValue(test: boolean): FirestoreQueryConstraint;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mockItemWithTestValue = exports.mockItemWithValue = void 0;
4
+ const firebase_1 = require("@dereekb/firebase");
5
+ function mockItemWithValue(value) {
6
+ return (0, firebase_1.where)('value', '==', value);
7
+ }
8
+ exports.mockItemWithValue = mockItemWithValue;
9
+ function mockItemWithTestValue(test) {
10
+ return (0, firebase_1.where)('test', '==', test);
11
+ }
12
+ exports.mockItemWithTestValue = mockItemWithTestValue;
13
+ //# sourceMappingURL=firestore.mock.item.query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firestore.mock.item.query.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/firestore.mock.item.query.ts"],"names":[],"mappings":";;;AACA,gDAAoE;AAEpE,SAAgB,iBAAiB,CAAC,KAAa;IAC7C,OAAO,IAAA,gBAAK,EAAW,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAFD,8CAEC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IACjD,OAAO,IAAA,gBAAK,EAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACnC,CAAC;AAFD,sDAEC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TestFirestoreContextFixture = exports.TestFirestoreInstance = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const test_1 = require("@dereekb/util/test");
6
+ class TestFirestoreInstance {
7
+ constructor(context) {
8
+ this.context = context;
9
+ }
10
+ get firestore() {
11
+ return this.context.firestore;
12
+ }
13
+ clearFirestore() {
14
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
+ // return this.context.clearFirestore();
16
+ });
17
+ }
18
+ }
19
+ exports.TestFirestoreInstance = TestFirestoreInstance;
20
+ class TestFirestoreContextFixture extends test_1.AbstractJestTestContextFixture {
21
+ get firestore() {
22
+ return this.instance.firestore;
23
+ }
24
+ get context() {
25
+ return this.instance.context;
26
+ }
27
+ }
28
+ exports.TestFirestoreContextFixture = TestFirestoreContextFixture;
29
+ //# sourceMappingURL=firestore.mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firestore.mock.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/firestore.mock.ts"],"names":[],"mappings":";;;;AAAA,6CAA4F;AAI5F,MAAa,qBAAqB;IAEhC,YAAqB,OAA6B;QAA7B,YAAO,GAAP,OAAO,CAAsB;IAAI,CAAC;IAEvD,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IAChC,CAAC;IAEK,cAAc;;YAElB,wCAAwC;QAC1C,CAAC;KAAA;CAIF;AAfD,sDAeC;AAED,MAAa,2BAAqF,SAAQ,qCAAiC;IAEzI,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;IACjC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;IAC/B,CAAC;CAEF;AAVD,kEAUC"}
@@ -0,0 +1,8 @@
1
+ export * from './firestore.mock.item.fixture';
2
+ export * from './firestore.mock.item.query';
3
+ export * from './firestore.mock.item';
4
+ export * from './firestore.mock';
5
+ export * from './firestore';
6
+ export * from './test.driver.accessor';
7
+ export * from './test.driver.query';
8
+ export * from './test.iterator';
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./firestore.mock.item.fixture"), exports);
5
+ tslib_1.__exportStar(require("./firestore.mock.item.query"), exports);
6
+ tslib_1.__exportStar(require("./firestore.mock.item"), exports);
7
+ tslib_1.__exportStar(require("./firestore.mock"), exports);
8
+ tslib_1.__exportStar(require("./firestore"), exports);
9
+ tslib_1.__exportStar(require("./test.driver.accessor"), exports);
10
+ tslib_1.__exportStar(require("./test.driver.query"), exports);
11
+ tslib_1.__exportStar(require("./test.iterator"), exports);
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/index.ts"],"names":[],"mappings":";;;AAAA,wEAA8C;AAC9C,sEAA4C;AAC5C,gEAAsC;AACtC,2DAAiC;AACjC,sDAA4B;AAC5B,iEAAuC;AACvC,8DAAoC;AACpC,0DAAgC"}
@@ -0,0 +1,17 @@
1
+ import { Transaction, DocumentReference, WriteBatch, FirestoreDocumentDataAccessor, FirestoreContext, FirestoreDocument } from '@dereekb/firebase';
2
+ import { MockItemCollectionFixture } from "./firestore.mock.item.fixture";
3
+ /**
4
+ * Describes accessor driver tests, using a MockItemCollectionFixture.
5
+ *
6
+ * @param f
7
+ */
8
+ export declare function describeAccessorDriverTests(f: MockItemCollectionFixture): void;
9
+ export interface DescribeAccessorTests<T> {
10
+ context: FirestoreContext;
11
+ accessor: FirestoreDocumentDataAccessor<any>;
12
+ dataForUpdate: () => Partial<T>;
13
+ hasDataFromUpdate: (data: T) => boolean;
14
+ loadDocumentForTransaction: (transaction: Transaction, ref?: DocumentReference<T>) => FirestoreDocument<T>;
15
+ loadDocumentForWriteBatch: (writeBatch: WriteBatch, ref?: DocumentReference<T>) => FirestoreDocument<T>;
16
+ }
17
+ export declare function describeAccessorTests<T>(init: () => DescribeAccessorTests<T>): void;
@@ -0,0 +1,278 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.describeAccessorTests = exports.describeAccessorDriverTests = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const rxjs_1 = require("@dereekb/rxjs");
6
+ const firebase_1 = require("@dereekb/firebase");
7
+ /**
8
+ * Describes accessor driver tests, using a MockItemCollectionFixture.
9
+ *
10
+ * @param f
11
+ */
12
+ function describeAccessorDriverTests(f) {
13
+ describe('FirestoreAccessorDriver', () => {
14
+ const testDocumentCount = 5;
15
+ let firestoreDocumentAccessor;
16
+ let items;
17
+ beforeEach(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
18
+ firestoreDocumentAccessor = f.instance.firestoreCollection.documentAccessor();
19
+ items = yield (0, firebase_1.makeDocuments)(f.instance.firestoreCollection.documentAccessor(), {
20
+ count: testDocumentCount,
21
+ init: (i) => {
22
+ return {
23
+ value: `${i}`,
24
+ test: true
25
+ };
26
+ }
27
+ });
28
+ }));
29
+ describe('MockItem', () => {
30
+ let itemDocument;
31
+ let accessor;
32
+ beforeEach(() => {
33
+ itemDocument = items[0];
34
+ accessor = itemDocument.accessor;
35
+ });
36
+ describe('accessor', () => {
37
+ describeAccessorTests(() => ({
38
+ context: f.parent.context,
39
+ accessor,
40
+ dataForUpdate: () => ({ test: false }),
41
+ hasDataFromUpdate: (data) => (data.test === false),
42
+ loadDocumentForTransaction: (transaction, ref) => f.instance.firestoreCollection.documentAccessorForTransaction(transaction).loadDocument(ref),
43
+ loadDocumentForWriteBatch: (writeBatch, ref) => f.instance.firestoreCollection.documentAccessorForWriteBatch(writeBatch).loadDocument(ref),
44
+ }));
45
+ });
46
+ describe('Subcollections', () => {
47
+ describe('singleItemFirestoreCollection (MockItemPrivateData)', () => {
48
+ let mockItemPrivateDataFirestoreCollection;
49
+ let itemPrivateDataDocument;
50
+ let privateDataAccessor;
51
+ let privateSub;
52
+ beforeEach(() => {
53
+ mockItemPrivateDataFirestoreCollection = f.instance.collections.mockItemPrivateData(itemDocument);
54
+ itemPrivateDataDocument = mockItemPrivateDataFirestoreCollection.loadDocument();
55
+ privateDataAccessor = itemPrivateDataDocument.accessor;
56
+ privateSub = new rxjs_1.SubscriptionObject();
57
+ });
58
+ afterEach(() => {
59
+ privateSub.destroy();
60
+ });
61
+ describe('set()', () => {
62
+ it('should create the item', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
63
+ let exists = yield privateDataAccessor.exists();
64
+ expect(exists).toBe(false);
65
+ yield privateDataAccessor.set({});
66
+ exists = yield privateDataAccessor.exists();
67
+ expect(exists).toBe(true);
68
+ }));
69
+ });
70
+ describe('with item', () => {
71
+ beforeEach(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
72
+ yield privateDataAccessor.set({});
73
+ }));
74
+ describe('accessor', () => {
75
+ const TEST_COMMENTS = 'test';
76
+ describeAccessorTests(() => ({
77
+ context: f.parent.context,
78
+ accessor: privateDataAccessor,
79
+ dataForUpdate: () => ({ comments: TEST_COMMENTS }),
80
+ hasDataFromUpdate: (data) => (data.comments === TEST_COMMENTS),
81
+ loadDocumentForTransaction: (transaction, ref) => mockItemPrivateDataFirestoreCollection.loadDocumentForTransaction(transaction),
82
+ loadDocumentForWriteBatch: (writeBatch, ref) => mockItemPrivateDataFirestoreCollection.loadDocumentForWriteBatch(writeBatch),
83
+ }));
84
+ });
85
+ });
86
+ });
87
+ describe('singleItemFirestoreCollection (MockItemSubItem)', () => {
88
+ let mockItemSubItemFirestoreCollection;
89
+ let subItemAccessor;
90
+ beforeEach(() => {
91
+ mockItemSubItemFirestoreCollection = f.instance.collections.mockItemSubItem(itemDocument);
92
+ subItemAccessor = mockItemSubItemFirestoreCollection.documentAccessor();
93
+ });
94
+ describe('with item', () => {
95
+ let subItemDocument;
96
+ beforeEach(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
97
+ subItemDocument = subItemAccessor.newDocument();
98
+ yield subItemDocument.accessor.set({ value: 0 });
99
+ }));
100
+ describe('accessor', () => {
101
+ const TEST_VALUE = 1234;
102
+ describeAccessorTests(() => ({
103
+ context: f.parent.context,
104
+ accessor: subItemDocument.accessor,
105
+ dataForUpdate: () => ({ value: TEST_VALUE }),
106
+ hasDataFromUpdate: (data) => (data.value === TEST_VALUE),
107
+ loadDocumentForTransaction: (transaction, ref) => mockItemSubItemFirestoreCollection.documentAccessorForTransaction(transaction).loadDocument(ref),
108
+ loadDocumentForWriteBatch: (writeBatch, ref) => mockItemSubItemFirestoreCollection.documentAccessorForWriteBatch(writeBatch).loadDocument(ref),
109
+ }));
110
+ });
111
+ });
112
+ });
113
+ });
114
+ });
115
+ describe('documentAccessor()', () => {
116
+ describe('loadDocumentForPath()', () => {
117
+ it('should return a document at the given path.', () => {
118
+ const document = firestoreDocumentAccessor.loadDocumentForPath('path');
119
+ expect(document).toBeDefined();
120
+ });
121
+ it('should throw an exception if the path is empty.', () => {
122
+ try {
123
+ firestoreDocumentAccessor.loadDocumentForPath('');
124
+ fail();
125
+ }
126
+ catch (e) {
127
+ expect(e).toBeDefined();
128
+ }
129
+ });
130
+ it('should throw an exception if the path is undefined.', () => {
131
+ try {
132
+ firestoreDocumentAccessor.loadDocumentForPath(undefined);
133
+ fail();
134
+ }
135
+ catch (e) {
136
+ expect(e).toBeDefined();
137
+ }
138
+ });
139
+ });
140
+ });
141
+ });
142
+ }
143
+ exports.describeAccessorDriverTests = describeAccessorDriverTests;
144
+ function describeAccessorTests(init) {
145
+ let c;
146
+ let sub;
147
+ beforeEach(() => {
148
+ sub = new rxjs_1.SubscriptionObject();
149
+ c = init();
150
+ });
151
+ afterEach(() => {
152
+ sub.destroy();
153
+ });
154
+ describe('stream()', () => {
155
+ it('should return a snapshot stream', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
156
+ const result = yield c.accessor.stream();
157
+ expect(result).toBeDefined();
158
+ }));
159
+ it('should emit values on updates from the observable.', (done) => {
160
+ let count = 0;
161
+ sub.subscription = c.accessor.stream().subscribe((item) => {
162
+ count += 1;
163
+ if (count === 1) {
164
+ expect(c.hasDataFromUpdate(item.data())).toBe(false);
165
+ }
166
+ else if (count === 2) {
167
+ expect(c.hasDataFromUpdate(item.data())).toBe(true);
168
+ done();
169
+ }
170
+ });
171
+ setTimeout(() => {
172
+ c.accessor.update(c.dataForUpdate());
173
+ }, 100);
174
+ });
175
+ describe('in transition context', () => {
176
+ let runTransaction;
177
+ beforeEach(() => {
178
+ runTransaction = c.context.runTransaction;
179
+ });
180
+ it('should not stream values (observable completes immediately)', (done) => {
181
+ runTransaction((transaction) => tslib_1.__awaiter(this, void 0, void 0, function* () {
182
+ const transactionItemDocument = c.loadDocumentForTransaction(transaction, c.accessor.documentRef);
183
+ return new Promise((resolve) => {
184
+ sub.subscription = transactionItemDocument.accessor.stream().subscribe({
185
+ complete: () => {
186
+ resolve();
187
+ done();
188
+ }
189
+ });
190
+ });
191
+ }));
192
+ });
193
+ });
194
+ describe('in batch context', () => {
195
+ it('should not stream values (observable completes immediately)', (done) => {
196
+ let writeBatch = c.context.batch();
197
+ const batchItemDocument = c.loadDocumentForWriteBatch(writeBatch, c.accessor.documentRef);
198
+ sub.subscription = batchItemDocument.accessor.stream().subscribe({
199
+ complete: () => {
200
+ done();
201
+ }
202
+ });
203
+ });
204
+ });
205
+ });
206
+ describe('get()', () => {
207
+ it('should return a snapshot', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
208
+ const result = yield c.accessor.get();
209
+ expect(result).toBeDefined();
210
+ expect(result.id).toBeDefined();
211
+ }));
212
+ });
213
+ describe('exists()', () => {
214
+ it('should return true if the document exists', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
215
+ const exists = yield c.accessor.exists();
216
+ expect(exists).toBe(true);
217
+ }));
218
+ it('should return false if the document does not exist', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
219
+ yield c.accessor.delete();
220
+ const exists = yield c.accessor.exists();
221
+ expect(exists).toBe(false);
222
+ }));
223
+ });
224
+ describe('update()', () => {
225
+ it('should update the data if the document exists.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
226
+ const data = c.dataForUpdate();
227
+ yield c.accessor.update(data);
228
+ const snapshot = yield c.accessor.get();
229
+ expect(c.hasDataFromUpdate(snapshot.data())).toBe(true);
230
+ }));
231
+ it('should fail if the document does not exist.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
232
+ yield c.accessor.delete();
233
+ const snapshot = yield c.accessor.get();
234
+ expect(snapshot.data()).toBe(undefined);
235
+ const exists = yield c.accessor.exists();
236
+ expect(exists).toBe(false);
237
+ try {
238
+ yield c.accessor.update(c.dataForUpdate());
239
+ fail();
240
+ }
241
+ catch (e) {
242
+ expect(e).toBeDefined();
243
+ }
244
+ }));
245
+ // todo: test that update does not call the converter when setting values.
246
+ });
247
+ describe('set()', () => {
248
+ it('should create the object if it does not exist.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
249
+ yield c.accessor.delete();
250
+ let exists = yield c.accessor.exists();
251
+ expect(exists).toBe(false);
252
+ const data = c.dataForUpdate();
253
+ yield c.accessor.set(data);
254
+ exists = yield c.accessor.exists();
255
+ expect(exists).toBe(true);
256
+ const snapshot = yield c.accessor.get();
257
+ expect(c.hasDataFromUpdate(snapshot.data())).toBe(true);
258
+ }));
259
+ it('should update the data on the document for fields that are not undefined.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
260
+ const data = c.dataForUpdate();
261
+ yield c.accessor.set(data);
262
+ const snapshot = yield c.accessor.get();
263
+ expect(c.hasDataFromUpdate(snapshot.data())).toBe(true);
264
+ }));
265
+ // todo: test that set calls the converter when setting values.
266
+ });
267
+ describe('delete()', () => {
268
+ it('should delete the document.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
269
+ yield c.accessor.delete();
270
+ const snapshot = yield c.accessor.get();
271
+ expect(snapshot.data()).toBe(undefined);
272
+ const exists = yield c.accessor.exists();
273
+ expect(exists).toBe(false);
274
+ }));
275
+ });
276
+ }
277
+ exports.describeAccessorTests = describeAccessorTests;
278
+ //# sourceMappingURL=test.driver.accessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.driver.accessor.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/test.driver.accessor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { MockItemCollectionFixture } from "./firestore.mock.item.fixture";
2
+ /**
3
+ * Describes query driver tests, using a MockItemCollectionFixture.
4
+ *
5
+ * @param f
6
+ */
7
+ export declare function describeQueryDriverTests(f: MockItemCollectionFixture): void;