@dereekb/firebase-server 12.6.21 → 13.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 (332) hide show
  1. package/LICENSE +1 -1
  2. package/index.cjs.js +2937 -0
  3. package/index.esm.js +2775 -0
  4. package/mailgun/index.cjs.js +48 -0
  5. package/mailgun/index.esm.js +46 -0
  6. package/mailgun/package.json +26 -6
  7. package/model/index.cjs.js +5298 -0
  8. package/model/index.d.ts +1 -0
  9. package/model/index.esm.js +5161 -0
  10. package/model/package.json +31 -3
  11. package/model/src/lib/notification/notification.module.d.ts +10 -10
  12. package/model/src/lib/storagefile/storagefile.task.service.handler.d.ts +3 -14
  13. package/package.json +48 -27
  14. package/src/lib/auth/auth.context.d.ts +1 -1
  15. package/src/lib/auth/auth.service.d.ts +1 -1
  16. package/src/lib/function/assert.d.ts +2 -2
  17. package/src/lib/function/context.d.ts +1 -1
  18. package/src/lib/index.d.ts +1 -0
  19. package/src/lib/nest/app.d.ts +1 -1
  20. package/src/lib/nest/development/development.app.function.d.ts +1 -2
  21. package/src/lib/nest/function/call.d.ts +1 -1
  22. package/src/lib/nest/function/context.d.ts +0 -4
  23. package/src/lib/nest/function/index.d.ts +0 -1
  24. package/src/lib/nest/function/nest.d.ts +1 -1
  25. package/src/lib/nest/function/v2/blocking.d.ts +3 -2
  26. package/src/lib/nest/model/crud.assert.function.d.ts +0 -4
  27. package/src/lib/storage/storage.d.ts +1 -1
  28. package/src/lib/type.d.ts +9 -0
  29. package/test/index.cjs.js +1324 -0
  30. package/test/index.d.ts +1 -0
  31. package/test/index.esm.js +1247 -0
  32. package/test/package.json +34 -3
  33. package/test/src/lib/firebase/firebase.admin.auth.d.ts +22 -13
  34. package/test/src/lib/firebase/firebase.admin.collection.d.ts +6 -6
  35. package/test/src/lib/firebase/firebase.admin.d.ts +10 -10
  36. package/test/src/lib/firebase/firebase.admin.function.d.ts +9 -9
  37. package/test/src/lib/firebase/firebase.admin.nest.d.ts +8 -8
  38. package/test/src/lib/firebase/firebase.admin.nest.function.d.ts +9 -9
  39. package/test/src/lib/firebase/firebase.test.d.ts +30 -0
  40. package/test/src/lib/firebase/index.d.ts +1 -1
  41. package/test/src/lib/firestore/firestore.admin.d.ts +3 -3
  42. package/test/src/lib/firestore/firestore.d.ts +2 -2
  43. package/test/src/lib/storage/storage.admin.d.ts +3 -3
  44. package/test/src/lib/storage/storage.d.ts +2 -2
  45. package/zoho/LICENSE +1 -1
  46. package/zoho/index.d.ts +1 -0
  47. package/zoho/index.esm.js +2 -2
  48. package/zoho/package.json +12 -8
  49. package/CHANGELOG.md +0 -2233
  50. package/mailgun/src/index.js +0 -5
  51. package/mailgun/src/index.js.map +0 -1
  52. package/mailgun/src/lib/auth.mailgun.js +0 -41
  53. package/mailgun/src/lib/auth.mailgun.js.map +0 -1
  54. package/mailgun/src/lib/index.js +0 -5
  55. package/mailgun/src/lib/index.js.map +0 -1
  56. package/model/src/index.js +0 -5
  57. package/model/src/index.js.map +0 -1
  58. package/model/src/lib/index.js +0 -7
  59. package/model/src/lib/index.js.map +0 -1
  60. package/model/src/lib/mailgun/index.js +0 -5
  61. package/model/src/lib/mailgun/index.js.map +0 -1
  62. package/model/src/lib/mailgun/notification.send.service.mailgun.js +0 -68
  63. package/model/src/lib/mailgun/notification.send.service.mailgun.js.map +0 -1
  64. package/model/src/lib/notification/index.js +0 -20
  65. package/model/src/lib/notification/index.js.map +0 -1
  66. package/model/src/lib/notification/notification.action.init.service.js +0 -230
  67. package/model/src/lib/notification/notification.action.init.service.js.map +0 -1
  68. package/model/src/lib/notification/notification.action.service.js +0 -1487
  69. package/model/src/lib/notification/notification.action.service.js.map +0 -1
  70. package/model/src/lib/notification/notification.config.js +0 -13
  71. package/model/src/lib/notification/notification.config.js.map +0 -1
  72. package/model/src/lib/notification/notification.config.service.js +0 -60
  73. package/model/src/lib/notification/notification.config.service.js.map +0 -1
  74. package/model/src/lib/notification/notification.create.run.js +0 -59
  75. package/model/src/lib/notification/notification.create.run.js.map +0 -1
  76. package/model/src/lib/notification/notification.error.js +0 -87
  77. package/model/src/lib/notification/notification.error.js.map +0 -1
  78. package/model/src/lib/notification/notification.expedite.service.js +0 -112
  79. package/model/src/lib/notification/notification.expedite.service.js.map +0 -1
  80. package/model/src/lib/notification/notification.module.js +0 -106
  81. package/model/src/lib/notification/notification.module.js.map +0 -1
  82. package/model/src/lib/notification/notification.send.js +0 -3
  83. package/model/src/lib/notification/notification.send.js.map +0 -1
  84. package/model/src/lib/notification/notification.send.service.js +0 -10
  85. package/model/src/lib/notification/notification.send.service.js.map +0 -1
  86. package/model/src/lib/notification/notification.send.service.notificationsummary.js +0 -104
  87. package/model/src/lib/notification/notification.send.service.notificationsummary.js.map +0 -1
  88. package/model/src/lib/notification/notification.send.service.text.js +0 -29
  89. package/model/src/lib/notification/notification.send.service.text.js.map +0 -1
  90. package/model/src/lib/notification/notification.task.service.handler.js +0 -65
  91. package/model/src/lib/notification/notification.task.service.handler.js.map +0 -1
  92. package/model/src/lib/notification/notification.task.service.js +0 -10
  93. package/model/src/lib/notification/notification.task.service.js.map +0 -1
  94. package/model/src/lib/notification/notification.task.service.util.js +0 -27
  95. package/model/src/lib/notification/notification.task.service.util.js.map +0 -1
  96. package/model/src/lib/notification/notification.task.subtask.handler.js +0 -256
  97. package/model/src/lib/notification/notification.task.subtask.handler.js.map +0 -1
  98. package/model/src/lib/notification/notification.util.js +0 -478
  99. package/model/src/lib/notification/notification.util.js.map +0 -1
  100. package/model/src/lib/storagefile/index.js +0 -12
  101. package/model/src/lib/storagefile/index.js.map +0 -1
  102. package/model/src/lib/storagefile/storagefile.action.init.service.js +0 -155
  103. package/model/src/lib/storagefile/storagefile.action.init.service.js.map +0 -1
  104. package/model/src/lib/storagefile/storagefile.action.server.js +0 -797
  105. package/model/src/lib/storagefile/storagefile.action.server.js.map +0 -1
  106. package/model/src/lib/storagefile/storagefile.error.js +0 -106
  107. package/model/src/lib/storagefile/storagefile.error.js.map +0 -1
  108. package/model/src/lib/storagefile/storagefile.module.js +0 -64
  109. package/model/src/lib/storagefile/storagefile.module.js.map +0 -1
  110. package/model/src/lib/storagefile/storagefile.task.service.handler.js +0 -287
  111. package/model/src/lib/storagefile/storagefile.task.service.handler.js.map +0 -1
  112. package/model/src/lib/storagefile/storagefile.upload.service.initializer.js +0 -180
  113. package/model/src/lib/storagefile/storagefile.upload.service.initializer.js.map +0 -1
  114. package/model/src/lib/storagefile/storagefile.upload.service.js +0 -10
  115. package/model/src/lib/storagefile/storagefile.upload.service.js.map +0 -1
  116. package/model/src/lib/storagefile/storagefile.util.js +0 -54
  117. package/model/src/lib/storagefile/storagefile.util.js.map +0 -1
  118. package/src/index.js +0 -5
  119. package/src/index.js.map +0 -1
  120. package/src/lib/auth/auth.context.js +0 -13
  121. package/src/lib/auth/auth.context.js.map +0 -1
  122. package/src/lib/auth/auth.service.error.js +0 -34
  123. package/src/lib/auth/auth.service.error.js.map +0 -1
  124. package/src/lib/auth/auth.service.js +0 -427
  125. package/src/lib/auth/auth.service.js.map +0 -1
  126. package/src/lib/auth/auth.util.js +0 -23
  127. package/src/lib/auth/auth.util.js.map +0 -1
  128. package/src/lib/auth/index.js +0 -8
  129. package/src/lib/auth/index.js.map +0 -1
  130. package/src/lib/env/env.service.js +0 -7
  131. package/src/lib/env/env.service.js.map +0 -1
  132. package/src/lib/env/index.js +0 -5
  133. package/src/lib/env/index.js.map +0 -1
  134. package/src/lib/firestore/array.js +0 -34
  135. package/src/lib/firestore/array.js.map +0 -1
  136. package/src/lib/firestore/driver.accessor.batch.js +0 -93
  137. package/src/lib/firestore/driver.accessor.batch.js.map +0 -1
  138. package/src/lib/firestore/driver.accessor.default.js +0 -62
  139. package/src/lib/firestore/driver.accessor.default.js.map +0 -1
  140. package/src/lib/firestore/driver.accessor.js +0 -50
  141. package/src/lib/firestore/driver.accessor.js.map +0 -1
  142. package/src/lib/firestore/driver.accessor.transaction.js +0 -96
  143. package/src/lib/firestore/driver.accessor.transaction.js.map +0 -1
  144. package/src/lib/firestore/driver.js +0 -14
  145. package/src/lib/firestore/driver.js.map +0 -1
  146. package/src/lib/firestore/driver.query.js +0 -55
  147. package/src/lib/firestore/driver.query.js.map +0 -1
  148. package/src/lib/firestore/firestore.js +0 -10
  149. package/src/lib/firestore/firestore.js.map +0 -1
  150. package/src/lib/firestore/increment.js +0 -17
  151. package/src/lib/firestore/increment.js.map +0 -1
  152. package/src/lib/firestore/index.js +0 -9
  153. package/src/lib/firestore/index.js.map +0 -1
  154. package/src/lib/function/assert.js +0 -68
  155. package/src/lib/function/assert.js.map +0 -1
  156. package/src/lib/function/context.js +0 -14
  157. package/src/lib/function/context.js.map +0 -1
  158. package/src/lib/function/error.auth.js +0 -25
  159. package/src/lib/function/error.auth.js.map +0 -1
  160. package/src/lib/function/error.js +0 -221
  161. package/src/lib/function/error.js.map +0 -1
  162. package/src/lib/function/index.js +0 -9
  163. package/src/lib/function/index.js.map +0 -1
  164. package/src/lib/function/type.js +0 -3
  165. package/src/lib/function/type.js.map +0 -1
  166. package/src/lib/index.js +0 -11
  167. package/src/lib/index.js.map +0 -1
  168. package/src/lib/nest/app.js +0 -114
  169. package/src/lib/nest/app.js.map +0 -1
  170. package/src/lib/nest/auth/auth.module.js +0 -60
  171. package/src/lib/nest/auth/auth.module.js.map +0 -1
  172. package/src/lib/nest/auth/auth.util.js +0 -72
  173. package/src/lib/nest/auth/auth.util.js.map +0 -1
  174. package/src/lib/nest/auth/index.js +0 -6
  175. package/src/lib/nest/auth/index.js.map +0 -1
  176. package/src/lib/nest/development/development.app.function.js +0 -38
  177. package/src/lib/nest/development/development.app.function.js.map +0 -1
  178. package/src/lib/nest/development/development.assert.function.js +0 -3
  179. package/src/lib/nest/development/development.assert.function.js.map +0 -1
  180. package/src/lib/nest/development/development.function.js +0 -41
  181. package/src/lib/nest/development/development.function.js.map +0 -1
  182. package/src/lib/nest/development/development.schedule.function.error.js +0 -35
  183. package/src/lib/nest/development/development.schedule.function.error.js.map +0 -1
  184. package/src/lib/nest/development/development.schedule.function.js +0 -54
  185. package/src/lib/nest/development/development.schedule.function.js.map +0 -1
  186. package/src/lib/nest/development/index.js +0 -9
  187. package/src/lib/nest/development/index.js.map +0 -1
  188. package/src/lib/nest/env/env.service.js +0 -19
  189. package/src/lib/nest/env/env.service.js.map +0 -1
  190. package/src/lib/nest/env/env.util.js +0 -12
  191. package/src/lib/nest/env/env.util.js.map +0 -1
  192. package/src/lib/nest/env/index.js +0 -6
  193. package/src/lib/nest/env/index.js.map +0 -1
  194. package/src/lib/nest/firebase/firebase.module.js +0 -17
  195. package/src/lib/nest/firebase/firebase.module.js.map +0 -1
  196. package/src/lib/nest/firebase/index.js +0 -5
  197. package/src/lib/nest/firebase/index.js.map +0 -1
  198. package/src/lib/nest/firestore/firestore.module.js +0 -86
  199. package/src/lib/nest/firestore/firestore.module.js.map +0 -1
  200. package/src/lib/nest/firestore/index.js +0 -5
  201. package/src/lib/nest/firestore/index.js.map +0 -1
  202. package/src/lib/nest/function/call.js +0 -46
  203. package/src/lib/nest/function/call.js.map +0 -1
  204. package/src/lib/nest/function/context.js +0 -79
  205. package/src/lib/nest/function/context.js.map +0 -1
  206. package/src/lib/nest/function/index.js +0 -10
  207. package/src/lib/nest/function/index.js.map +0 -1
  208. package/src/lib/nest/function/nest.js +0 -17
  209. package/src/lib/nest/function/nest.js.map +0 -1
  210. package/src/lib/nest/function/schedule.js +0 -8
  211. package/src/lib/nest/function/schedule.js.map +0 -1
  212. package/src/lib/nest/function/v1/call.d.ts +0 -59
  213. package/src/lib/nest/function/v1/call.js +0 -55
  214. package/src/lib/nest/function/v1/call.js.map +0 -1
  215. package/src/lib/nest/function/v1/event.d.ts +0 -80
  216. package/src/lib/nest/function/v1/event.js +0 -52
  217. package/src/lib/nest/function/v1/event.js.map +0 -1
  218. package/src/lib/nest/function/v1/index.d.ts +0 -3
  219. package/src/lib/nest/function/v1/index.js +0 -7
  220. package/src/lib/nest/function/v1/index.js.map +0 -1
  221. package/src/lib/nest/function/v1/schedule.d.ts +0 -47
  222. package/src/lib/nest/function/v1/schedule.js +0 -68
  223. package/src/lib/nest/function/v1/schedule.js.map +0 -1
  224. package/src/lib/nest/function/v2/blocking.js +0 -38
  225. package/src/lib/nest/function/v2/blocking.js.map +0 -1
  226. package/src/lib/nest/function/v2/call.js +0 -31
  227. package/src/lib/nest/function/v2/call.js.map +0 -1
  228. package/src/lib/nest/function/v2/event.js +0 -25
  229. package/src/lib/nest/function/v2/event.js.map +0 -1
  230. package/src/lib/nest/function/v2/index.js +0 -9
  231. package/src/lib/nest/function/v2/index.js.map +0 -1
  232. package/src/lib/nest/function/v2/schedule.js +0 -56
  233. package/src/lib/nest/function/v2/schedule.js.map +0 -1
  234. package/src/lib/nest/function/v2/taskqueue.js +0 -26
  235. package/src/lib/nest/function/v2/taskqueue.js.map +0 -1
  236. package/src/lib/nest/index.js +0 -15
  237. package/src/lib/nest/index.js.map +0 -1
  238. package/src/lib/nest/middleware/appcheck.decorator.js +0 -12
  239. package/src/lib/nest/middleware/appcheck.decorator.js.map +0 -1
  240. package/src/lib/nest/middleware/appcheck.js +0 -3
  241. package/src/lib/nest/middleware/appcheck.js.map +0 -1
  242. package/src/lib/nest/middleware/appcheck.middleware.js +0 -74
  243. package/src/lib/nest/middleware/appcheck.middleware.js.map +0 -1
  244. package/src/lib/nest/middleware/appcheck.module.js +0 -21
  245. package/src/lib/nest/middleware/appcheck.module.js.map +0 -1
  246. package/src/lib/nest/middleware/globalprefix.js +0 -11
  247. package/src/lib/nest/middleware/globalprefix.js.map +0 -1
  248. package/src/lib/nest/middleware/index.js +0 -10
  249. package/src/lib/nest/middleware/index.js.map +0 -1
  250. package/src/lib/nest/middleware/rawbody.middleware.js +0 -16
  251. package/src/lib/nest/middleware/rawbody.middleware.js.map +0 -1
  252. package/src/lib/nest/middleware/webhook.js +0 -24
  253. package/src/lib/nest/middleware/webhook.js.map +0 -1
  254. package/src/lib/nest/model/call.model.function.js +0 -73
  255. package/src/lib/nest/model/call.model.function.js.map +0 -1
  256. package/src/lib/nest/model/create.model.function.js +0 -27
  257. package/src/lib/nest/model/create.model.function.js.map +0 -1
  258. package/src/lib/nest/model/crud.assert.function.js +0 -3
  259. package/src/lib/nest/model/crud.assert.function.js.map +0 -1
  260. package/src/lib/nest/model/delete.model.function.js +0 -27
  261. package/src/lib/nest/model/delete.model.function.js.map +0 -1
  262. package/src/lib/nest/model/index.js +0 -11
  263. package/src/lib/nest/model/index.js.map +0 -1
  264. package/src/lib/nest/model/permission.error.js +0 -24
  265. package/src/lib/nest/model/permission.error.js.map +0 -1
  266. package/src/lib/nest/model/read.model.function.js +0 -27
  267. package/src/lib/nest/model/read.model.function.js.map +0 -1
  268. package/src/lib/nest/model/specifier.function.js +0 -35
  269. package/src/lib/nest/model/specifier.function.js.map +0 -1
  270. package/src/lib/nest/model/update.model.function.js +0 -27
  271. package/src/lib/nest/model/update.model.function.js.map +0 -1
  272. package/src/lib/nest/nest.provider.js +0 -89
  273. package/src/lib/nest/nest.provider.js.map +0 -1
  274. package/src/lib/nest/storage/index.js +0 -5
  275. package/src/lib/nest/storage/index.js.map +0 -1
  276. package/src/lib/nest/storage/storage.module.js +0 -112
  277. package/src/lib/nest/storage/storage.module.js.map +0 -1
  278. package/src/lib/storage/driver.accessor.js +0 -299
  279. package/src/lib/storage/driver.accessor.js.map +0 -1
  280. package/src/lib/storage/driver.js +0 -12
  281. package/src/lib/storage/driver.js.map +0 -1
  282. package/src/lib/storage/index.js +0 -8
  283. package/src/lib/storage/index.js.map +0 -1
  284. package/src/lib/storage/storage.js +0 -20
  285. package/src/lib/storage/storage.js.map +0 -1
  286. package/src/lib/storage/storage.service.js +0 -26
  287. package/src/lib/storage/storage.service.js.map +0 -1
  288. package/test/src/index.js +0 -5
  289. package/test/src/index.js.map +0 -1
  290. package/test/src/lib/firebase/firebase.admin.auth.js +0 -260
  291. package/test/src/lib/firebase/firebase.admin.auth.js.map +0 -1
  292. package/test/src/lib/firebase/firebase.admin.collection.js +0 -108
  293. package/test/src/lib/firebase/firebase.admin.collection.js.map +0 -1
  294. package/test/src/lib/firebase/firebase.admin.function.js +0 -132
  295. package/test/src/lib/firebase/firebase.admin.function.js.map +0 -1
  296. package/test/src/lib/firebase/firebase.admin.js +0 -174
  297. package/test/src/lib/firebase/firebase.admin.js.map +0 -1
  298. package/test/src/lib/firebase/firebase.admin.nest.function.callable.context.js +0 -42
  299. package/test/src/lib/firebase/firebase.admin.nest.function.callable.context.js.map +0 -1
  300. package/test/src/lib/firebase/firebase.admin.nest.function.cloud.context.js +0 -40
  301. package/test/src/lib/firebase/firebase.admin.nest.function.cloud.context.js.map +0 -1
  302. package/test/src/lib/firebase/firebase.admin.nest.function.js +0 -64
  303. package/test/src/lib/firebase/firebase.admin.nest.function.js.map +0 -1
  304. package/test/src/lib/firebase/firebase.admin.nest.js +0 -107
  305. package/test/src/lib/firebase/firebase.admin.nest.js.map +0 -1
  306. package/test/src/lib/firebase/firebase.admin.test.server.js +0 -37
  307. package/test/src/lib/firebase/firebase.admin.test.server.js.map +0 -1
  308. package/test/src/lib/firebase/firebase.function.js +0 -58
  309. package/test/src/lib/firebase/firebase.function.js.map +0 -1
  310. package/test/src/lib/firebase/firebase.jest.d.ts +0 -21
  311. package/test/src/lib/firebase/firebase.jest.js +0 -45
  312. package/test/src/lib/firebase/firebase.jest.js.map +0 -1
  313. package/test/src/lib/firebase/firebase.js +0 -74
  314. package/test/src/lib/firebase/firebase.js.map +0 -1
  315. package/test/src/lib/firebase/index.js +0 -15
  316. package/test/src/lib/firebase/index.js.map +0 -1
  317. package/test/src/lib/firestore/firestore.admin.js +0 -21
  318. package/test/src/lib/firestore/firestore.admin.js.map +0 -1
  319. package/test/src/lib/firestore/firestore.js +0 -57
  320. package/test/src/lib/firestore/firestore.js.map +0 -1
  321. package/test/src/lib/firestore/index.js +0 -6
  322. package/test/src/lib/firestore/index.js.map +0 -1
  323. package/test/src/lib/index.js +0 -7
  324. package/test/src/lib/index.js.map +0 -1
  325. package/test/src/lib/storage/index.js +0 -6
  326. package/test/src/lib/storage/index.js.map +0 -1
  327. package/test/src/lib/storage/storage.admin.js +0 -21
  328. package/test/src/lib/storage/storage.admin.js.map +0 -1
  329. package/test/src/lib/storage/storage.js +0 -59
  330. package/test/src/lib/storage/storage.js.map +0 -1
  331. /package/{zoho/index.cjs.d.ts → index.d.ts} +0 -0
  332. /package/{zoho/index.esm.d.ts → mailgun/index.d.ts} +0 -0
@@ -1,427 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AbstractFirebaseServerAuthService = exports.FirebaseServerAuthService = exports.NoSetupContentFirebaseServerNewUserService = exports.AbstractFirebaseServerNewUserService = exports.DEFAULT_SETUP_COM_THROTTLE_TIME = exports.AbstractFirebaseServerAuthContext = exports.AbstractFirebaseServerAuthUserContext = exports.DEFAULT_FIREBASE_PASSWORD_NUMBER_GENERATOR = void 0;
4
- exports.userContextFromUid = userContextFromUid;
5
- const firebase_1 = require("@dereekb/firebase");
6
- const util_1 = require("@dereekb/util");
7
- const context_1 = require("../function/context");
8
- const auth_context_1 = require("./auth.context");
9
- const date_1 = require("@dereekb/date");
10
- const auth_util_1 = require("./auth.util");
11
- const auth_service_error_1 = require("./auth.service.error");
12
- exports.DEFAULT_FIREBASE_PASSWORD_NUMBER_GENERATOR = (0, util_1.randomNumberFactory)({ min: 100000, max: 1000000, round: 'floor' }); // 6 digits
13
- class AbstractFirebaseServerAuthUserContext {
14
- _service;
15
- _uid;
16
- _loadRecord = (0, util_1.cachedGetter)(() => this._service.auth.getUser(this._uid));
17
- constructor(service, uid) {
18
- this._service = service;
19
- this._uid = uid;
20
- }
21
- get service() {
22
- return this._service;
23
- }
24
- get uid() {
25
- return this._uid;
26
- }
27
- async exists() {
28
- return (0, auth_util_1.getAuthUserOrUndefined)(this._loadRecord()).then((x) => Boolean(x));
29
- }
30
- loadRecord() {
31
- return this._loadRecord();
32
- }
33
- loadDetails() {
34
- return this.loadRecord().then((record) => this.service.authDetailsForRecord(record));
35
- }
36
- _generateResetPasswordKey() {
37
- return String((0, exports.DEFAULT_FIREBASE_PASSWORD_NUMBER_GENERATOR)());
38
- }
39
- async beginResetPassword() {
40
- const password = this._generateResetPasswordKey();
41
- const passwordClaimsData = {
42
- [firebase_1.FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY]: password,
43
- [firebase_1.FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY]: (0, date_1.toISODateString)(new Date())
44
- };
45
- // set the claims
46
- await this.updateClaims(passwordClaimsData);
47
- // update the user
48
- await this.updateUser({ password });
49
- return passwordClaimsData;
50
- }
51
- async loadResetPasswordClaims() {
52
- const claims = await this.loadClaims();
53
- if (claims.resetPassword != null) {
54
- return claims;
55
- }
56
- else {
57
- return undefined;
58
- }
59
- }
60
- /**
61
- * Sets the user's password.
62
- */
63
- async setPassword(password) {
64
- const record = await this.updateUser({ password });
65
- // clear password reset claims
66
- await this.updateClaims({
67
- [firebase_1.FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY]: null,
68
- [firebase_1.FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY]: null
69
- });
70
- return record;
71
- }
72
- async updateUser(template) {
73
- return this.service.auth.updateUser(this.uid, template);
74
- }
75
- async loadRoles() {
76
- const claims = await this.loadClaims();
77
- return this.service.readRoles(claims);
78
- }
79
- async addRoles(roles) {
80
- const claims = this._claimsForRolesChange(roles);
81
- return this.updateClaims(claims);
82
- }
83
- async removeRoles(roles) {
84
- const baseClaims = this._claimsForRolesChange(roles);
85
- const claims = {};
86
- (0, util_1.forEachKeyValue)(baseClaims, {
87
- forEach: ([key]) => {
88
- claims[key] = null; // set null on every key
89
- },
90
- filter: util_1.KeyValueTypleValueFilter.NONE // don't skip any key/value
91
- });
92
- return this.updateClaims(claims);
93
- }
94
- /**
95
- * Sets the claims using the input roles and roles set.
96
- *
97
- * All other claims are cleared.
98
- *
99
- * Use the claimsToRetain input to retain other claims that are outside of the roles.
100
- *
101
- * @param roles
102
- * @param claimsToRetain
103
- * @returns
104
- */
105
- async setRoles(roles, claimsToRetain) {
106
- const claims = {
107
- ...claimsToRetain,
108
- ...this._claimsForRolesChange(Array.from(roles))
109
- };
110
- return this.setClaims(claims);
111
- }
112
- _claimsForRolesChange(roles) {
113
- // filter null/undefined since the claims will contain null values for claims that are not related.
114
- return (0, util_1.filterNullAndUndefinedValues)(this.service.claimsForRoles((0, util_1.asSet)(roles)));
115
- }
116
- loadClaims() {
117
- return this.loadRecord().then((x) => (x.customClaims ?? {}));
118
- }
119
- async updateClaims(claims) {
120
- const currentClaims = await this.loadClaims();
121
- let newClaims;
122
- if (currentClaims) {
123
- newClaims = {
124
- ...currentClaims,
125
- ...(0, util_1.filterUndefinedValues)(claims, false)
126
- };
127
- newClaims = (0, util_1.filterNullAndUndefinedValues)(newClaims);
128
- }
129
- else {
130
- newClaims = claims;
131
- }
132
- return this.setClaims(newClaims);
133
- }
134
- clearClaims() {
135
- return this.setClaims(null);
136
- }
137
- setClaims(claims) {
138
- return this.service.auth.setCustomUserClaims(this.uid, claims).then(() => {
139
- this._loadRecord.reset(); // reset the cache
140
- });
141
- }
142
- }
143
- exports.AbstractFirebaseServerAuthUserContext = AbstractFirebaseServerAuthUserContext;
144
- class AbstractFirebaseServerAuthContext {
145
- _service;
146
- _context;
147
- _authRoles = (0, util_1.cachedGetter)(() => this.service.readRoles(this.claims));
148
- _isAdmin = (0, util_1.cachedGetter)(() => this.service.isAdminInRoles(this._authRoles()));
149
- _hasSignedTos = (0, util_1.cachedGetter)(() => this.service.hasSignedTosInRoles(this._authRoles()));
150
- _userContext = (0, util_1.cachedGetter)(() => this.service.userContext(this.context.auth.uid));
151
- constructor(service, context) {
152
- this._service = service;
153
- this._context = context;
154
- }
155
- get service() {
156
- return this._service;
157
- }
158
- get context() {
159
- return this._context;
160
- }
161
- get userContext() {
162
- return this._userContext();
163
- }
164
- get isAdmin() {
165
- return this._isAdmin();
166
- }
167
- get hasSignedTos() {
168
- return this._hasSignedTos();
169
- }
170
- get authRoles() {
171
- return this._authRoles();
172
- }
173
- get token() {
174
- return this.context.auth.token;
175
- }
176
- get claims() {
177
- return this.context.auth.token;
178
- }
179
- // MARK: FirebaseServerAuthUserContext
180
- get uid() {
181
- return this.userContext.uid;
182
- }
183
- }
184
- exports.AbstractFirebaseServerAuthContext = AbstractFirebaseServerAuthContext;
185
- /**
186
- * 1 hour
187
- */
188
- exports.DEFAULT_SETUP_COM_THROTTLE_TIME = (0, date_1.hoursToMs)(1);
189
- function userContextFromUid(authService, userContextOrUid) {
190
- const userContext = typeof userContextOrUid === 'string' ? authService.userContext(userContextOrUid) : userContextOrUid;
191
- return userContext;
192
- }
193
- class AbstractFirebaseServerNewUserService {
194
- _authService;
195
- setupThrottleTime = exports.DEFAULT_SETUP_COM_THROTTLE_TIME;
196
- constructor(authService) {
197
- this._authService = authService;
198
- }
199
- get authService() {
200
- return this._authService;
201
- }
202
- async initializeNewUser(input) {
203
- const { uid, email, phone, sendSetupContent, sendSetupContentIfUserExists, sendSetupDetailsOnce, sendSetupIgnoreThrottle, sendSetupThrowErrors, data, sendDetailsInTestEnvironment } = input;
204
- let userRecordPromise;
205
- if (uid) {
206
- userRecordPromise = this.authService.auth.getUser(uid);
207
- }
208
- else if (email) {
209
- userRecordPromise = this.authService.auth.getUserByEmail(email);
210
- }
211
- else if (phone) {
212
- userRecordPromise = this.authService.auth.getUserByPhoneNumber(phone);
213
- }
214
- else {
215
- throw new Error('email or phone is required to initialize a new user.');
216
- }
217
- let userRecord = await (0, auth_util_1.getAuthUserOrUndefined)(userRecordPromise);
218
- let userRecordId;
219
- let createdUser = false;
220
- if (!userRecord) {
221
- const createResult = await this.createNewUser(input);
222
- // add the setup password to the user's credentials
223
- const userContext = this.authService.userContext(createResult.user.uid);
224
- await this.addNewUserSetupClaims(userContext, createResult.password);
225
- createdUser = true;
226
- userRecordId = userContext.uid;
227
- userRecord = await userContext.loadRecord();
228
- }
229
- else {
230
- userRecordId = userRecord.uid;
231
- }
232
- // send content if necessary
233
- if ((createdUser && sendSetupContent === true) || sendSetupContentIfUserExists) {
234
- const sentEmail = await this.sendSetupContent(userRecordId, { data, sendSetupDetailsOnce, ignoreSendThrottleTime: sendSetupIgnoreThrottle, throwErrors: sendSetupThrowErrors, sendDetailsInTestEnvironment });
235
- // reload the user record
236
- if (sentEmail) {
237
- const userContext = this.authService.userContext(userRecordId);
238
- userRecord = await userContext.loadRecord();
239
- }
240
- }
241
- return userRecord;
242
- }
243
- async addNewUserSetupClaims(userContextOrUid, setupPassword) {
244
- const password = setupPassword ?? this.generateRandomSetupPassword();
245
- const userContext = userContextFromUid(this.authService, userContextOrUid);
246
- await userContext.updateClaims({
247
- [firebase_1.FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY]: password
248
- });
249
- return userContext;
250
- }
251
- async sendSetupContent(userContextOrUid, config) {
252
- const setupDetails = await this.loadSetupDetails(userContextOrUid, config);
253
- let sentContent = false;
254
- if (setupDetails) {
255
- const { setupCommunicationAt } = setupDetails.claims;
256
- const hasSentCommunication = Boolean(setupCommunicationAt);
257
- if (config?.sendSetupDetailsOnce && hasSentCommunication) {
258
- // do not send.
259
- if (config?.throwErrors) {
260
- throw new auth_service_error_1.FirebaseServerAuthNewUserSendSetupDetailsSendOnceError();
261
- }
262
- }
263
- else {
264
- const lastSentAt = setupCommunicationAt ? new Date(setupCommunicationAt) : undefined;
265
- const sendIsThrottled = hasSentCommunication && !config?.ignoreSendThrottleTime && (0, util_1.isThrottled)(this.setupThrottleTime, lastSentAt);
266
- if (!sendIsThrottled) {
267
- await this.sendSetupContentToUser(setupDetails);
268
- await this.updateSetupContentSentTime(setupDetails);
269
- sentContent = true;
270
- }
271
- else if (config?.throwErrors) {
272
- throw new auth_service_error_1.FirebaseServerAuthNewUserSendSetupDetailsThrottleError(lastSentAt);
273
- }
274
- }
275
- }
276
- else if (config?.throwErrors) {
277
- throw new auth_service_error_1.FirebaseServerAuthNewUserSendSetupDetailsNoSetupConfigError();
278
- }
279
- return sentContent;
280
- }
281
- async loadSetupDetails(userContextOrUid, config) {
282
- const userContext = userContextFromUid(this.authService, userContextOrUid);
283
- const userExists = await userContext.exists();
284
- let details;
285
- if (userExists) {
286
- details = await this.loadSetupDetailsForUserContext(userContext, config);
287
- }
288
- return details;
289
- }
290
- async loadSetupDetailsForUserContext(userContext, config) {
291
- let details;
292
- const { setupPassword, setupCommunicationAt } = await userContext.loadClaims();
293
- if (setupPassword) {
294
- details = {
295
- userContext,
296
- claims: {
297
- setupPassword,
298
- setupCommunicationAt
299
- },
300
- data: config?.data,
301
- sendDetailsInTestEnvironment: config?.sendDetailsInTestEnvironment
302
- };
303
- }
304
- return details;
305
- }
306
- async updateSetupContentSentTime(details) {
307
- const setupCommunicationAt = (0, date_1.toISODateString)(new Date());
308
- await details.userContext.updateClaims({
309
- setupCommunicationAt
310
- });
311
- }
312
- /**
313
- * Update a user's claims to clear any setup-related content.
314
- *
315
- * Returns true if a user was updated.
316
- *
317
- * @param uid
318
- */
319
- async markUserSetupAsComplete(uid) {
320
- const userContext = this.authService.userContext(uid);
321
- const userExists = await userContext.exists();
322
- if (userExists) {
323
- await this.updateClaimsToClearUser(userContext);
324
- }
325
- return userExists;
326
- }
327
- async createNewUser(input) {
328
- const { uid, displayName, email, phone: phoneNumber, setupPassword: inputPassword } = input;
329
- const password = inputPassword ?? this.generateRandomSetupPassword();
330
- const user = await this.authService.auth.createUser({
331
- uid,
332
- displayName,
333
- email,
334
- phoneNumber,
335
- password
336
- });
337
- return {
338
- user,
339
- password
340
- };
341
- }
342
- generateRandomSetupPassword() {
343
- return `${(0, exports.DEFAULT_FIREBASE_PASSWORD_NUMBER_GENERATOR)()}`;
344
- }
345
- async updateClaimsToClearUser(userContext) {
346
- await userContext.updateClaims({
347
- [firebase_1.FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY]: null,
348
- [firebase_1.FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY]: null
349
- });
350
- }
351
- }
352
- exports.AbstractFirebaseServerNewUserService = AbstractFirebaseServerNewUserService;
353
- class NoSetupContentFirebaseServerNewUserService extends AbstractFirebaseServerNewUserService {
354
- async sendSetupContentToUser(user) {
355
- // send nothing.
356
- }
357
- }
358
- exports.NoSetupContentFirebaseServerNewUserService = NoSetupContentFirebaseServerNewUserService;
359
- /**
360
- * FirebaseServer auth service that provides accessors to auth-related components.
361
- */
362
- class FirebaseServerAuthService {
363
- }
364
- exports.FirebaseServerAuthService = FirebaseServerAuthService;
365
- /**
366
- * Abstract FirebaseServerAuthService implementation.
367
- */
368
- class AbstractFirebaseServerAuthService {
369
- _auth;
370
- constructor(auth) {
371
- this._auth = auth;
372
- }
373
- get auth() {
374
- return this._auth;
375
- }
376
- context(context) {
377
- (0, context_1.assertIsContextWithAuthData)(context);
378
- return this._context(context);
379
- }
380
- isAdmin(claims) {
381
- return this.isAdminInRoles(this.readRoles(claims));
382
- }
383
- isAdminInRoles(roles) {
384
- return roles.has(util_1.AUTH_ADMIN_ROLE);
385
- }
386
- hasSignedTos(claims) {
387
- return this.hasSignedTosInRoles(this.readRoles(claims));
388
- }
389
- hasSignedTosInRoles(roles) {
390
- return roles.has(util_1.AUTH_TOS_SIGNED_ROLE);
391
- }
392
- newUser() {
393
- return new NoSetupContentFirebaseServerNewUserService(this);
394
- }
395
- authContextInfo(context) {
396
- const { auth } = context;
397
- let result;
398
- if (auth) {
399
- const _roles = (0, util_1.cachedGetter)(() => this.readRoles(auth.token));
400
- const getClaims = () => auth.token;
401
- result = {
402
- uid: auth.uid,
403
- isAdmin: () => this.isAdminInRoles(_roles()),
404
- getClaims,
405
- getAuthRoles: _roles,
406
- token: (0, auth_context_1.firebaseAuthTokenFromDecodedIdToken)(auth.token)
407
- };
408
- }
409
- return result;
410
- }
411
- authDetailsForRecord(record) {
412
- return {
413
- uid: record.uid,
414
- email: record.email,
415
- emailVerified: record.emailVerified,
416
- phoneNumber: record.phoneNumber,
417
- disabled: record.disabled,
418
- displayName: record.displayName,
419
- photoURL: record.photoURL,
420
- creationTime: record.metadata.creationTime ? new Date(record.metadata.creationTime).toISOString() : undefined,
421
- lastSignInTime: record.metadata.lastSignInTime ? new Date(record.metadata.lastSignInTime).toISOString() : undefined,
422
- lastRefreshTime: record.metadata.lastRefreshTime ? new Date(record.metadata.lastRefreshTime).toISOString() : undefined
423
- };
424
- }
425
- }
426
- exports.AbstractFirebaseServerAuthService = AbstractFirebaseServerAuthService;
427
- //# sourceMappingURL=auth.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/auth/auth.service.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAuthUserOrUndefined = getAuthUserOrUndefined;
4
- const firebase_1 = require("@dereekb/firebase");
5
- /**
6
- * Awaits the load result from the input promise. If it encounters a FIREBASE_AUTH_USER_NOT_FOUND_ERROR, then returns undefined. Throws the error otherwise.
7
- * @param promise
8
- * @returns
9
- */
10
- async function getAuthUserOrUndefined(promise) {
11
- try {
12
- return await promise;
13
- }
14
- catch (error) {
15
- if (error?.code === firebase_1.FIREBASE_AUTH_USER_NOT_FOUND_ERROR) {
16
- return undefined;
17
- }
18
- else {
19
- throw error;
20
- }
21
- }
22
- }
23
- //# sourceMappingURL=auth.util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.util.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/auth/auth.util.ts"],"names":[],"mappings":";;AASA,wDAUC;AAnBD,gDAA+F;AAI/F;;;;GAIG;AACI,KAAK,UAAU,sBAAsB,CAAC,OAAuC;IAClF,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC;IACvB,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAK,KAA2B,EAAE,IAAI,KAAK,6CAAkC,EAAE,CAAC;YAC9E,OAAO,SAAS,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./auth.service"), exports);
5
- tslib_1.__exportStar(require("./auth.service.error"), exports);
6
- tslib_1.__exportStar(require("./auth.context"), exports);
7
- tslib_1.__exportStar(require("./auth.util"), exports);
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/auth/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,+DAAqC;AACrC,yDAA+B;AAC/B,sDAA4B"}
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FirebaseServerEnvService = void 0;
4
- class FirebaseServerEnvService {
5
- }
6
- exports.FirebaseServerEnvService = FirebaseServerEnvService;
7
- //# sourceMappingURL=env.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env.service.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/env/env.service.ts"],"names":[],"mappings":";;;AAOA,MAAsB,wBAAwB;CAM7C;AAND,4DAMC"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./env.service"), exports);
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/env/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B"}
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.firestoreServerArrayUpdateToUpdateData = firestoreServerArrayUpdateToUpdateData;
4
- const util_1 = require("@dereekb/util");
5
- const firestore_1 = require("@google-cloud/firestore");
6
- /**
7
- * Creates UpdateData corresponding to the input array update.
8
- *
9
- * @param input
10
- * @returns
11
- */
12
- function firestoreServerArrayUpdateToUpdateData(input) {
13
- const union = input?.union;
14
- const remove = input?.remove;
15
- function createUpdatesWithArrayFunction(fieldUpdate, arrayUpdateFunction) {
16
- let result;
17
- if (fieldUpdate) {
18
- result = (0, util_1.mapObjectMap)(fieldUpdate, (arrayUpdate) => {
19
- let result;
20
- if (arrayUpdate) {
21
- result = arrayUpdateFunction(...arrayUpdate); // use spread operator to insert each value as an argument, as "nested arrays" are not allowed in the Firestore
22
- }
23
- return result;
24
- });
25
- }
26
- return result;
27
- }
28
- const updateData = {
29
- ...createUpdatesWithArrayFunction(union, firestore_1.FieldValue.arrayUnion),
30
- ...createUpdatesWithArrayFunction(remove, firestore_1.FieldValue.arrayRemove)
31
- };
32
- return updateData;
33
- }
34
- //# sourceMappingURL=array.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/firestore/array.ts"],"names":[],"mappings":";;AAUA,wFA4BC;AAtCD,wCAAyD;AACzD,uDAAqD;AAGrD;;;;;GAKG;AACH,SAAgB,sCAAsC,CAAmB,KAAsC;IAC7G,MAAM,KAAK,GAAG,KAAK,EAAE,KAAK,CAAC;IAC3B,MAAM,MAAM,GAAG,KAAK,EAAE,MAAM,CAAC;IAE7B,SAAS,8BAA8B,CAAC,WAAgE,EAAE,mBAAiF;QACzL,IAAI,MAAiC,CAAC;QAEtC,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,GAAG,IAAA,mBAAY,EAAC,WAAW,EAAE,CAAC,WAAW,EAAE,EAAE;gBACjD,IAAI,MAA8B,CAAC;gBAEnC,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,GAAG,mBAAmB,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,+GAA+G;gBAC/J,CAAC;gBAED,OAAO,MAAM,CAAC;YAChB,CAAC,CAAkB,CAAC;QACtB,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,UAAU,GAAkB;QAChC,GAAG,8BAA8B,CAAC,KAAK,EAAE,sBAAU,CAAC,UAAU,CAAC;QAC/D,GAAG,8BAA8B,CAAC,MAAM,EAAE,sBAAU,CAAC,WAAW,CAAC;KACjD,CAAC;IAEnB,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -1,93 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WriteBatchFirestoreDocumentContext = exports.WriteBatchFirestoreDocumentDataAccessor = void 0;
4
- exports.writeBatchAccessorFactory = writeBatchAccessorFactory;
5
- exports.writeBatchDocumentContext = writeBatchDocumentContext;
6
- const rxjs_1 = require("rxjs");
7
- const firebase_1 = require("@dereekb/firebase");
8
- const increment_1 = require("./increment");
9
- const array_1 = require("./array");
10
- // MARK: Accessor
11
- /**
12
- * FirestoreDocumentDataAccessor implementation for a batch.
13
- */
14
- class WriteBatchFirestoreDocumentDataAccessor {
15
- documentRef;
16
- _batch;
17
- constructor(batch, documentRef) {
18
- this.documentRef = documentRef;
19
- this._batch = batch;
20
- }
21
- get batch() {
22
- return this._batch;
23
- }
24
- stream() {
25
- return (0, rxjs_1.from)(this.get()); // todo
26
- }
27
- create(data) {
28
- this.batch.create(this.documentRef, data);
29
- return Promise.resolve();
30
- }
31
- exists() {
32
- return this.get().then((x) => x.exists);
33
- }
34
- get() {
35
- return this.documentRef.get();
36
- }
37
- getWithConverter(converter) {
38
- return this.documentRef.withConverter(converter).get();
39
- }
40
- delete(params) {
41
- this.batch.delete(this.documentRef, params?.precondition);
42
- return Promise.resolve();
43
- }
44
- set(data) {
45
- this.batch.set(this.documentRef, data);
46
- return Promise.resolve();
47
- }
48
- increment(data, params) {
49
- return this.update((0, increment_1.firestoreServerIncrementUpdateToUpdateData)(data), params);
50
- }
51
- arrayUpdate(data, params) {
52
- return this.update((0, array_1.firestoreServerArrayUpdateToUpdateData)(data), params);
53
- }
54
- update(data, params) {
55
- if (params?.precondition != null) {
56
- this.batch.update(this.documentRef, data, params?.precondition);
57
- }
58
- else {
59
- this.batch.update(this.documentRef, data);
60
- }
61
- return Promise.resolve();
62
- }
63
- }
64
- exports.WriteBatchFirestoreDocumentDataAccessor = WriteBatchFirestoreDocumentDataAccessor;
65
- /**
66
- * Creates a new FirestoreDocumentDataAccessorFactory for a Batch.
67
- *
68
- * @param batch
69
- * @returns
70
- */
71
- function writeBatchAccessorFactory(writeBatch) {
72
- return {
73
- accessorFor: (ref) => new WriteBatchFirestoreDocumentDataAccessor(writeBatch, ref)
74
- };
75
- }
76
- // MARK: Context
77
- class WriteBatchFirestoreDocumentContext {
78
- _batch;
79
- contextType = firebase_1.FirestoreDocumentContextType.BATCH;
80
- accessorFactory;
81
- constructor(batch) {
82
- this._batch = batch;
83
- this.accessorFactory = writeBatchAccessorFactory(batch);
84
- }
85
- get batch() {
86
- return this._batch;
87
- }
88
- }
89
- exports.WriteBatchFirestoreDocumentContext = WriteBatchFirestoreDocumentContext;
90
- function writeBatchDocumentContext(batch) {
91
- return new WriteBatchFirestoreDocumentContext(batch);
92
- }
93
- //# sourceMappingURL=driver.accessor.batch.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"driver.accessor.batch.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/firestore/driver.accessor.batch.ts"],"names":[],"mappings":"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"}