payload 3.0.0-alpha.3 → 3.0.0-alpha.30

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 (774) hide show
  1. package/auth.d.ts +5 -5
  2. package/auth.js +5 -44
  3. package/bin.js +40 -1
  4. package/components.d.ts +14 -0
  5. package/components.js +71 -0
  6. package/config.d.ts +10 -10
  7. package/config.js +10 -59
  8. package/database.d.ts +22 -22
  9. package/database.js +21 -108
  10. package/dist/admin/RichText.d.ts +4 -4
  11. package/dist/admin/RichText.d.ts.map +1 -1
  12. package/dist/admin/RichText.js +2 -5
  13. package/dist/admin/elements/Cell.d.ts +2 -2
  14. package/dist/admin/elements/Cell.d.ts.map +1 -1
  15. package/dist/admin/elements/Cell.js +2 -5
  16. package/dist/admin/elements/DatePicker.js +2 -5
  17. package/dist/admin/elements/PreviewButton.js +2 -5
  18. package/dist/admin/elements/PublishButton.js +2 -5
  19. package/dist/admin/elements/SaveButton.js +2 -5
  20. package/dist/admin/elements/SaveDraftButton.js +2 -5
  21. package/dist/admin/elements/Tab.d.ts +3 -3
  22. package/dist/admin/elements/Tab.d.ts.map +1 -1
  23. package/dist/admin/elements/Tab.js +2 -5
  24. package/dist/admin/forms/Error.js +2 -5
  25. package/dist/admin/forms/FieldDescription.js +2 -5
  26. package/dist/admin/forms/FieldTypes.js +2 -5
  27. package/dist/admin/forms/Form.d.ts +22 -0
  28. package/dist/admin/forms/Form.d.ts.map +1 -1
  29. package/dist/admin/forms/Form.js +2 -5
  30. package/dist/admin/forms/Label.js +2 -5
  31. package/dist/admin/forms/RowLabel.d.ts +1 -1
  32. package/dist/admin/forms/RowLabel.d.ts.map +1 -1
  33. package/dist/admin/forms/RowLabel.js +2 -5
  34. package/dist/admin/types.d.ts +19 -18
  35. package/dist/admin/types.d.ts.map +1 -1
  36. package/dist/admin/types.js +2 -5
  37. package/dist/admin/views/types.d.ts +41 -0
  38. package/dist/admin/views/types.d.ts.map +1 -0
  39. package/dist/admin/views/types.js +3 -0
  40. package/dist/assets/assets.d.js +0 -1
  41. package/dist/auth/baseFields/accountLock.d.ts +1 -1
  42. package/dist/auth/baseFields/accountLock.d.ts.map +1 -1
  43. package/dist/auth/baseFields/accountLock.js +6 -16
  44. package/dist/auth/baseFields/apiKey.d.ts +1 -1
  45. package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
  46. package/dist/auth/baseFields/apiKey.js +6 -21
  47. package/dist/auth/baseFields/auth.d.ts +1 -1
  48. package/dist/auth/baseFields/auth.d.ts.map +1 -1
  49. package/dist/auth/baseFields/auth.js +6 -16
  50. package/dist/auth/baseFields/verification.d.ts +1 -1
  51. package/dist/auth/baseFields/verification.d.ts.map +1 -1
  52. package/dist/auth/baseFields/verification.js +8 -18
  53. package/dist/auth/cookies.d.ts +2 -2
  54. package/dist/auth/cookies.d.ts.map +1 -1
  55. package/dist/auth/cookies.js +6 -33
  56. package/dist/auth/crypto.js +7 -30
  57. package/dist/auth/defaultAccess.d.ts +1 -1
  58. package/dist/auth/defaultAccess.d.ts.map +1 -1
  59. package/dist/auth/defaultAccess.js +2 -12
  60. package/dist/auth/defaultUser.d.ts +1 -1
  61. package/dist/auth/defaultUser.d.ts.map +1 -1
  62. package/dist/auth/defaultUser.js +6 -16
  63. package/dist/auth/executeAccess.d.ts +2 -2
  64. package/dist/auth/executeAccess.d.ts.map +1 -1
  65. package/dist/auth/executeAccess.js +5 -15
  66. package/dist/auth/extractJWT.d.ts +1 -1
  67. package/dist/auth/extractJWT.d.ts.map +1 -1
  68. package/dist/auth/extractJWT.js +4 -14
  69. package/dist/auth/getAccessResults.d.ts +2 -2
  70. package/dist/auth/getAccessResults.d.ts.map +1 -1
  71. package/dist/auth/getAccessResults.js +9 -19
  72. package/dist/auth/getAuthenticatedUser.d.ts +1 -1
  73. package/dist/auth/getAuthenticatedUser.d.ts.map +1 -1
  74. package/dist/auth/getAuthenticatedUser.js +2 -12
  75. package/dist/auth/getFieldsToSign.d.ts +2 -2
  76. package/dist/auth/getFieldsToSign.d.ts.map +1 -1
  77. package/dist/auth/getFieldsToSign.js +5 -15
  78. package/dist/auth/index.d.ts +3 -3
  79. package/dist/auth/index.d.ts.map +1 -1
  80. package/dist/auth/index.js +4 -27
  81. package/dist/auth/isLocked.js +2 -12
  82. package/dist/auth/operations/access.d.ts +2 -2
  83. package/dist/auth/operations/access.d.ts.map +1 -1
  84. package/dist/auth/operations/access.js +12 -22
  85. package/dist/auth/operations/forgotPassword.d.ts +2 -2
  86. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  87. package/dist/auth/operations/forgotPassword.js +17 -32
  88. package/dist/auth/operations/init.d.ts +1 -1
  89. package/dist/auth/operations/init.d.ts.map +1 -1
  90. package/dist/auth/operations/init.js +2 -12
  91. package/dist/auth/operations/local/forgotPassword.d.ts +3 -3
  92. package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
  93. package/dist/auth/operations/local/forgotPassword.js +8 -18
  94. package/dist/auth/operations/local/index.d.ts +5 -5
  95. package/dist/auth/operations/local/index.d.ts.map +1 -1
  96. package/dist/auth/operations/local/index.js +12 -27
  97. package/dist/auth/operations/local/login.d.ts +4 -4
  98. package/dist/auth/operations/local/login.d.ts.map +1 -1
  99. package/dist/auth/operations/local/login.js +8 -18
  100. package/dist/auth/operations/local/resetPassword.d.ts +4 -4
  101. package/dist/auth/operations/local/resetPassword.d.ts.map +1 -1
  102. package/dist/auth/operations/local/resetPassword.js +8 -18
  103. package/dist/auth/operations/local/unlock.d.ts +3 -3
  104. package/dist/auth/operations/local/unlock.d.ts.map +1 -1
  105. package/dist/auth/operations/local/unlock.js +8 -18
  106. package/dist/auth/operations/local/verifyEmail.d.ts +3 -3
  107. package/dist/auth/operations/local/verifyEmail.d.ts.map +1 -1
  108. package/dist/auth/operations/local/verifyEmail.js +8 -18
  109. package/dist/auth/operations/login.d.ts +7 -7
  110. package/dist/auth/operations/login.d.ts.map +1 -1
  111. package/dist/auth/operations/login.js +32 -47
  112. package/dist/auth/operations/logout.d.ts +2 -2
  113. package/dist/auth/operations/logout.d.ts.map +1 -1
  114. package/dist/auth/operations/logout.js +6 -21
  115. package/dist/auth/operations/me.d.ts +3 -3
  116. package/dist/auth/operations/me.d.ts.map +1 -1
  117. package/dist/auth/operations/me.js +4 -19
  118. package/dist/auth/operations/refresh.d.ts +3 -3
  119. package/dist/auth/operations/refresh.d.ts.map +1 -1
  120. package/dist/auth/operations/refresh.js +19 -34
  121. package/dist/auth/operations/registerFirstUser.d.ts +9 -9
  122. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  123. package/dist/auth/operations/registerFirstUser.js +11 -21
  124. package/dist/auth/operations/resetPassword.d.ts +2 -2
  125. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  126. package/dist/auth/operations/resetPassword.js +20 -43
  127. package/dist/auth/operations/unlock.d.ts +2 -2
  128. package/dist/auth/operations/unlock.d.ts.map +1 -1
  129. package/dist/auth/operations/unlock.js +16 -39
  130. package/dist/auth/operations/verifyEmail.d.ts +2 -2
  131. package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
  132. package/dist/auth/operations/verifyEmail.js +14 -37
  133. package/dist/auth/sendVerificationEmail.d.ts +5 -5
  134. package/dist/auth/sendVerificationEmail.d.ts.map +1 -1
  135. package/dist/auth/sendVerificationEmail.js +4 -14
  136. package/dist/auth/strategies/apiKey.d.ts +2 -2
  137. package/dist/auth/strategies/apiKey.d.ts.map +1 -1
  138. package/dist/auth/strategies/apiKey.js +4 -19
  139. package/dist/auth/strategies/jwt.d.ts +1 -1
  140. package/dist/auth/strategies/jwt.d.ts.map +1 -1
  141. package/dist/auth/strategies/jwt.js +6 -21
  142. package/dist/auth/strategies/local/authenticate.d.ts +1 -1
  143. package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
  144. package/dist/auth/strategies/local/authenticate.js +6 -21
  145. package/dist/auth/strategies/local/generatePasswordSaltHash.js +7 -22
  146. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts +3 -3
  147. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
  148. package/dist/auth/strategies/local/incrementLoginAttempts.js +2 -12
  149. package/dist/auth/strategies/local/register.d.ts +3 -3
  150. package/dist/auth/strategies/local/register.d.ts.map +1 -1
  151. package/dist/auth/strategies/local/register.js +6 -16
  152. package/dist/auth/strategies/local/resetLoginAttempts.d.ts +3 -3
  153. package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
  154. package/dist/auth/strategies/local/resetLoginAttempts.js +2 -12
  155. package/dist/auth/types.d.ts +2 -2
  156. package/dist/auth/types.d.ts.map +1 -1
  157. package/dist/auth/types.js +2 -12
  158. package/dist/bin/generateTypes.d.ts +1 -1
  159. package/dist/bin/generateTypes.d.ts.map +1 -1
  160. package/dist/bin/generateTypes.js +12 -27
  161. package/dist/bin/index.js +11 -53
  162. package/dist/bin/loadEnv.js +13 -26
  163. package/dist/bin/migrate.js +15 -30
  164. package/dist/collections/config/build.d.ts +1 -1
  165. package/dist/collections/config/build.d.ts.map +1 -1
  166. package/dist/collections/config/build.js +2 -12
  167. package/dist/collections/config/defaults.d.ts +5 -5
  168. package/dist/collections/config/defaults.js +9 -32
  169. package/dist/collections/config/sanitize.d.ts +2 -2
  170. package/dist/collections/config/sanitize.d.ts.map +1 -1
  171. package/dist/collections/config/sanitize.js +34 -49
  172. package/dist/collections/config/schema.js +157 -172
  173. package/dist/collections/config/types.d.ts +13 -13
  174. package/dist/collections/config/types.d.ts.map +1 -1
  175. package/dist/collections/config/types.js +2 -5
  176. package/dist/collections/dataloader.d.ts +2 -2
  177. package/dist/collections/dataloader.d.ts.map +1 -1
  178. package/dist/collections/dataloader.js +8 -23
  179. package/dist/collections/operations/create.d.ts +9 -9
  180. package/dist/collections/operations/create.d.ts.map +1 -1
  181. package/dist/collections/operations/create.js +38 -53
  182. package/dist/collections/operations/delete.d.ts +9 -10
  183. package/dist/collections/operations/delete.d.ts.map +1 -1
  184. package/dist/collections/operations/delete.js +27 -42
  185. package/dist/collections/operations/deleteByID.d.ts +2 -3
  186. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  187. package/dist/collections/operations/deleteByID.js +27 -42
  188. package/dist/collections/operations/docAccess.d.ts +3 -3
  189. package/dist/collections/operations/docAccess.d.ts.map +1 -1
  190. package/dist/collections/operations/docAccess.js +12 -22
  191. package/dist/collections/operations/find.d.ts +3 -4
  192. package/dist/collections/operations/find.d.ts.map +1 -1
  193. package/dist/collections/operations/find.js +25 -40
  194. package/dist/collections/operations/findByID.d.ts +2 -2
  195. package/dist/collections/operations/findByID.d.ts.map +1 -1
  196. package/dist/collections/operations/findByID.js +21 -36
  197. package/dist/collections/operations/findVersionByID.d.ts +3 -3
  198. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  199. package/dist/collections/operations/findVersionByID.js +19 -34
  200. package/dist/collections/operations/findVersions.d.ts +4 -5
  201. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  202. package/dist/collections/operations/findVersions.js +20 -35
  203. package/dist/collections/operations/local/create.d.ts +4 -5
  204. package/dist/collections/operations/local/create.d.ts.map +1 -1
  205. package/dist/collections/operations/local/create.js +10 -25
  206. package/dist/collections/operations/local/delete.d.ts +5 -5
  207. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  208. package/dist/collections/operations/local/delete.js +10 -20
  209. package/dist/collections/operations/local/find.d.ts +3 -4
  210. package/dist/collections/operations/local/find.d.ts.map +1 -1
  211. package/dist/collections/operations/local/find.js +8 -18
  212. package/dist/collections/operations/local/findByID.d.ts +2 -4
  213. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  214. package/dist/collections/operations/local/findByID.js +8 -18
  215. package/dist/collections/operations/local/findVersionByID.d.ts +3 -4
  216. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  217. package/dist/collections/operations/local/findVersionByID.js +8 -18
  218. package/dist/collections/operations/local/findVersions.d.ts +4 -5
  219. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  220. package/dist/collections/operations/local/findVersions.js +8 -18
  221. package/dist/collections/operations/local/index.d.ts +13 -13
  222. package/dist/collections/operations/local/index.d.ts.map +1 -1
  223. package/dist/collections/operations/local/index.js +20 -35
  224. package/dist/collections/operations/local/restoreVersion.d.ts +2 -3
  225. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  226. package/dist/collections/operations/local/restoreVersion.js +8 -18
  227. package/dist/collections/operations/local/update.d.ts +4 -5
  228. package/dist/collections/operations/local/update.d.ts.map +1 -1
  229. package/dist/collections/operations/local/update.js +12 -27
  230. package/dist/collections/operations/restoreVersion.d.ts +2 -2
  231. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  232. package/dist/collections/operations/restoreVersion.js +26 -41
  233. package/dist/collections/operations/update.d.ts +7 -8
  234. package/dist/collections/operations/update.d.ts.map +1 -1
  235. package/dist/collections/operations/update.js +43 -58
  236. package/dist/collections/operations/updateByID.d.ts +9 -9
  237. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  238. package/dist/collections/operations/updateByID.js +44 -59
  239. package/dist/collections/operations/utils.d.ts +12 -12
  240. package/dist/collections/operations/utils.d.ts.map +1 -1
  241. package/dist/collections/operations/utils.js +3 -12
  242. package/dist/config/build.d.ts +1 -1
  243. package/dist/config/build.d.ts.map +1 -1
  244. package/dist/config/build.js +9 -15
  245. package/dist/config/clientFiles.js +2 -12
  246. package/dist/config/createClientConfig.d.ts +2 -2
  247. package/dist/config/createClientConfig.d.ts.map +1 -1
  248. package/dist/config/createClientConfig.js +12 -25
  249. package/dist/config/defaults.d.ts +1 -1
  250. package/dist/config/defaults.d.ts.map +1 -1
  251. package/dist/config/defaults.js +4 -19
  252. package/dist/config/find.js +18 -33
  253. package/dist/config/load.d.ts +2 -4
  254. package/dist/config/load.d.ts.map +1 -1
  255. package/dist/config/load.js +8 -37
  256. package/dist/config/sanitize.d.ts +1 -1
  257. package/dist/config/sanitize.d.ts.map +1 -1
  258. package/dist/config/sanitize.js +25 -40
  259. package/dist/config/schema.d.ts.map +1 -1
  260. package/dist/config/schema.js +116 -133
  261. package/dist/config/shared/adminViewSchema.js +9 -24
  262. package/dist/config/shared/componentSchema.js +21 -50
  263. package/dist/config/types.d.ts +21 -30
  264. package/dist/config/types.d.ts.map +1 -1
  265. package/dist/config/types.js +9 -21
  266. package/dist/config/validate.d.ts +1 -1
  267. package/dist/config/validate.d.ts.map +1 -1
  268. package/dist/config/validate.js +15 -71
  269. package/dist/database/combineQueries.d.ts +1 -1
  270. package/dist/database/combineQueries.d.ts.map +1 -1
  271. package/dist/database/combineQueries.js +4 -14
  272. package/dist/database/createDatabaseAdapter.d.ts +1 -1
  273. package/dist/database/createDatabaseAdapter.d.ts.map +1 -1
  274. package/dist/database/createDatabaseAdapter.js +14 -24
  275. package/dist/database/flattenWhereToOperators.d.ts +1 -1
  276. package/dist/database/flattenWhereToOperators.d.ts.map +1 -1
  277. package/dist/database/flattenWhereToOperators.js +2 -12
  278. package/dist/database/getLocalizedPaths.d.ts +3 -3
  279. package/dist/database/getLocalizedPaths.d.ts.map +1 -1
  280. package/dist/database/getLocalizedPaths.js +7 -22
  281. package/dist/database/migrations/createMigration.d.ts +1 -1
  282. package/dist/database/migrations/createMigration.d.ts.map +1 -1
  283. package/dist/database/migrations/createMigration.js +7 -22
  284. package/dist/database/migrations/getMigrations.d.ts +2 -2
  285. package/dist/database/migrations/getMigrations.d.ts.map +1 -1
  286. package/dist/database/migrations/getMigrations.js +4 -12
  287. package/dist/database/migrations/migrate.d.ts +1 -1
  288. package/dist/database/migrations/migrate.d.ts.map +1 -1
  289. package/dist/database/migrations/migrate.js +12 -22
  290. package/dist/database/migrations/migrateDown.d.ts +1 -1
  291. package/dist/database/migrations/migrateDown.d.ts.map +1 -1
  292. package/dist/database/migrations/migrateDown.js +12 -22
  293. package/dist/database/migrations/migrateRefresh.d.ts +1 -1
  294. package/dist/database/migrations/migrateRefresh.d.ts.map +1 -1
  295. package/dist/database/migrations/migrateRefresh.js +16 -24
  296. package/dist/database/migrations/migrateReset.d.ts +1 -1
  297. package/dist/database/migrations/migrateReset.d.ts.map +1 -1
  298. package/dist/database/migrations/migrateReset.js +12 -22
  299. package/dist/database/migrations/migrateStatus.d.ts +1 -1
  300. package/dist/database/migrations/migrateStatus.d.ts.map +1 -1
  301. package/dist/database/migrations/migrateStatus.js +8 -18
  302. package/dist/database/migrations/migrationTemplate.js +2 -12
  303. package/dist/database/migrations/migrationsCollection.d.ts +1 -1
  304. package/dist/database/migrations/migrationsCollection.d.ts.map +1 -1
  305. package/dist/database/migrations/migrationsCollection.js +2 -12
  306. package/dist/database/migrations/readMigrationFiles.d.ts +2 -2
  307. package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
  308. package/dist/database/migrations/readMigrationFiles.js +12 -24
  309. package/dist/database/queryValidation/types.d.ts +2 -2
  310. package/dist/database/queryValidation/types.d.ts.map +1 -1
  311. package/dist/database/queryValidation/types.js +2 -5
  312. package/dist/database/queryValidation/validateQueryPaths.d.ts +5 -5
  313. package/dist/database/queryValidation/validateQueryPaths.d.ts.map +1 -1
  314. package/dist/database/queryValidation/validateQueryPaths.js +13 -28
  315. package/dist/database/queryValidation/validateSearchParams.d.ts +5 -5
  316. package/dist/database/queryValidation/validateSearchParams.d.ts.map +1 -1
  317. package/dist/database/queryValidation/validateSearchParams.js +17 -25
  318. package/dist/database/types.d.ts +9 -7
  319. package/dist/database/types.d.ts.map +1 -1
  320. package/dist/database/types.js +2 -5
  321. package/dist/email/build.d.ts +2 -2
  322. package/dist/email/build.d.ts.map +1 -1
  323. package/dist/email/build.js +11 -26
  324. package/dist/email/defaults.d.ts +1 -1
  325. package/dist/email/defaults.d.ts.map +1 -1
  326. package/dist/email/defaults.js +2 -12
  327. package/dist/email/mockHandler.d.ts +2 -2
  328. package/dist/email/mockHandler.d.ts.map +1 -1
  329. package/dist/email/mockHandler.js +8 -23
  330. package/dist/email/sendEmail.js +2 -12
  331. package/dist/email/types.js +2 -5
  332. package/dist/errors/APIError.js +4 -19
  333. package/dist/errors/AuthenticationError.d.ts +1 -1
  334. package/dist/errors/AuthenticationError.d.ts.map +1 -1
  335. package/dist/errors/AuthenticationError.js +7 -22
  336. package/dist/errors/DuplicateCollection.d.ts +1 -1
  337. package/dist/errors/DuplicateCollection.d.ts.map +1 -1
  338. package/dist/errors/DuplicateCollection.js +4 -19
  339. package/dist/errors/DuplicateFieldName.d.ts +1 -1
  340. package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
  341. package/dist/errors/DuplicateFieldName.js +4 -19
  342. package/dist/errors/DuplicateGlobal.d.ts +2 -2
  343. package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
  344. package/dist/errors/DuplicateGlobal.js +4 -19
  345. package/dist/errors/ErrorDeletingFile.d.ts +1 -1
  346. package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
  347. package/dist/errors/ErrorDeletingFile.js +7 -22
  348. package/dist/errors/FileUploadError.d.ts +1 -1
  349. package/dist/errors/FileUploadError.d.ts.map +1 -1
  350. package/dist/errors/FileUploadError.js +7 -22
  351. package/dist/errors/Forbidden.d.ts +1 -1
  352. package/dist/errors/Forbidden.d.ts.map +1 -1
  353. package/dist/errors/Forbidden.js +7 -22
  354. package/dist/errors/InvalidConfiguration.d.ts +1 -1
  355. package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
  356. package/dist/errors/InvalidConfiguration.js +6 -21
  357. package/dist/errors/InvalidFieldName.d.ts +2 -2
  358. package/dist/errors/InvalidFieldName.d.ts.map +1 -1
  359. package/dist/errors/InvalidFieldName.js +4 -19
  360. package/dist/errors/InvalidFieldRelationship.d.ts +2 -2
  361. package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
  362. package/dist/errors/InvalidFieldRelationship.js +4 -19
  363. package/dist/errors/InvalidSchema.d.ts +1 -1
  364. package/dist/errors/InvalidSchema.d.ts.map +1 -1
  365. package/dist/errors/InvalidSchema.js +6 -21
  366. package/dist/errors/LockedAuth.d.ts +1 -1
  367. package/dist/errors/LockedAuth.d.ts.map +1 -1
  368. package/dist/errors/LockedAuth.js +7 -22
  369. package/dist/errors/MissingCollectionLabel.d.ts +1 -1
  370. package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
  371. package/dist/errors/MissingCollectionLabel.js +4 -19
  372. package/dist/errors/MissingFieldInputOptions.d.ts +2 -2
  373. package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
  374. package/dist/errors/MissingFieldInputOptions.js +4 -19
  375. package/dist/errors/MissingFieldType.d.ts +2 -2
  376. package/dist/errors/MissingFieldType.d.ts.map +1 -1
  377. package/dist/errors/MissingFieldType.js +6 -21
  378. package/dist/errors/MissingFile.d.ts +1 -1
  379. package/dist/errors/MissingFile.d.ts.map +1 -1
  380. package/dist/errors/MissingFile.js +7 -22
  381. package/dist/errors/NotFound.d.ts +1 -1
  382. package/dist/errors/NotFound.d.ts.map +1 -1
  383. package/dist/errors/NotFound.js +7 -22
  384. package/dist/errors/QueryError.d.ts +1 -1
  385. package/dist/errors/QueryError.d.ts.map +1 -1
  386. package/dist/errors/QueryError.js +6 -21
  387. package/dist/errors/TimestampsRequired.d.ts +2 -2
  388. package/dist/errors/TimestampsRequired.d.ts.map +1 -1
  389. package/dist/errors/TimestampsRequired.js +4 -19
  390. package/dist/errors/UnathorizedError.d.ts +1 -1
  391. package/dist/errors/UnathorizedError.d.ts.map +1 -1
  392. package/dist/errors/UnathorizedError.js +7 -22
  393. package/dist/errors/ValidationError.d.ts +1 -1
  394. package/dist/errors/ValidationError.d.ts.map +1 -1
  395. package/dist/errors/ValidationError.js +8 -23
  396. package/dist/errors/index.d.ts +19 -19
  397. package/dist/errors/index.d.ts.map +1 -1
  398. package/dist/errors/index.js +20 -94
  399. package/dist/errors/types.d.ts +1 -1
  400. package/dist/errors/types.d.ts.map +1 -1
  401. package/dist/errors/types.js +2 -19
  402. package/dist/exports/auth.d.ts +5 -5
  403. package/dist/exports/auth.d.ts.map +1 -1
  404. package/dist/exports/auth.js +5 -44
  405. package/dist/exports/components/utilities.js +0 -1
  406. package/dist/exports/config.d.ts +10 -10
  407. package/dist/exports/config.d.ts.map +1 -1
  408. package/dist/exports/config.js +10 -59
  409. package/dist/exports/database.d.ts +22 -22
  410. package/dist/exports/database.d.ts.map +1 -1
  411. package/dist/exports/database.js +21 -108
  412. package/dist/exports/errors.d.ts +1 -1
  413. package/dist/exports/errors.d.ts.map +1 -1
  414. package/dist/exports/errors.js +2 -68
  415. package/dist/exports/fields/index.d.ts +2 -2
  416. package/dist/exports/fields/index.d.ts.map +1 -1
  417. package/dist/exports/fields/index.js +3 -26
  418. package/dist/exports/fields/validations.d.ts +1 -1
  419. package/dist/exports/fields/validations.d.ts.map +1 -1
  420. package/dist/exports/fields/validations.js +2 -19
  421. package/dist/exports/operations.d.ts +28 -28
  422. package/dist/exports/operations.d.ts.map +1 -1
  423. package/dist/exports/operations.js +29 -125
  424. package/dist/exports/types.d.ts +11 -11
  425. package/dist/exports/types.d.ts.map +1 -1
  426. package/dist/exports/types.js +4 -74
  427. package/dist/exports/utilities.d.ts +27 -27
  428. package/dist/exports/utilities.d.ts.map +1 -1
  429. package/dist/exports/utilities.js +28 -141
  430. package/dist/exports/versions.d.ts +9 -9
  431. package/dist/exports/versions.d.ts.map +1 -1
  432. package/dist/exports/versions.js +9 -45
  433. package/dist/fields/baseFields/baseBlockFields.d.ts +1 -1
  434. package/dist/fields/baseFields/baseBlockFields.d.ts.map +1 -1
  435. package/dist/fields/baseFields/baseBlockFields.js +6 -16
  436. package/dist/fields/baseFields/baseIDField.d.ts +1 -1
  437. package/dist/fields/baseFields/baseIDField.d.ts.map +1 -1
  438. package/dist/fields/baseFields/baseIDField.js +7 -21
  439. package/dist/fields/config/sanitize.d.ts +2 -2
  440. package/dist/fields/config/sanitize.d.ts.map +1 -1
  441. package/dist/fields/config/sanitize.js +28 -43
  442. package/dist/fields/config/sanitize.spec.js +25 -29
  443. package/dist/fields/config/schema.js +336 -431
  444. package/dist/fields/config/types.d.ts +5 -6
  445. package/dist/fields/config/types.d.ts.map +1 -1
  446. package/dist/fields/config/types.js +15 -69
  447. package/dist/fields/getDefaultValue.d.ts +1 -1
  448. package/dist/fields/getDefaultValue.d.ts.map +1 -1
  449. package/dist/fields/getDefaultValue.js +2 -12
  450. package/dist/fields/hooks/afterChange/index.d.ts +3 -3
  451. package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
  452. package/dist/fields/hooks/afterChange/index.js +6 -16
  453. package/dist/fields/hooks/afterChange/promise.d.ts +4 -4
  454. package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
  455. package/dist/fields/hooks/afterChange/promise.js +14 -22
  456. package/dist/fields/hooks/afterChange/traverseFields.d.ts +4 -4
  457. package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
  458. package/dist/fields/hooks/afterChange/traverseFields.js +4 -14
  459. package/dist/fields/hooks/afterRead/index.d.ts +3 -3
  460. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
  461. package/dist/fields/hooks/afterRead/index.js +6 -16
  462. package/dist/fields/hooks/afterRead/promise.d.ts +4 -4
  463. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  464. package/dist/fields/hooks/afterRead/promise.js +28 -38
  465. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +2 -2
  466. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  467. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +5 -15
  468. package/dist/fields/hooks/afterRead/traverseFields.d.ts +4 -4
  469. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  470. package/dist/fields/hooks/afterRead/traverseFields.js +4 -14
  471. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js +2 -12
  472. package/dist/fields/hooks/beforeChange/getExistingRowDoc.js +2 -12
  473. package/dist/fields/hooks/beforeChange/index.d.ts +3 -4
  474. package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
  475. package/dist/fields/hooks/beforeChange/index.js +8 -18
  476. package/dist/fields/hooks/beforeChange/promise.d.ts +4 -5
  477. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  478. package/dist/fields/hooks/beforeChange/promise.js +26 -35
  479. package/dist/fields/hooks/beforeChange/traverseFields.d.ts +4 -5
  480. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  481. package/dist/fields/hooks/beforeChange/traverseFields.js +4 -14
  482. package/dist/fields/hooks/beforeValidate/index.d.ts +3 -3
  483. package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
  484. package/dist/fields/hooks/beforeValidate/index.js +6 -16
  485. package/dist/fields/hooks/beforeValidate/promise.d.ts +4 -4
  486. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  487. package/dist/fields/hooks/beforeValidate/promise.js +30 -39
  488. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +4 -4
  489. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
  490. package/dist/fields/hooks/beforeValidate/traverseFields.js +4 -14
  491. package/dist/fields/mergeBaseFields.d.ts +1 -1
  492. package/dist/fields/mergeBaseFields.d.ts.map +1 -1
  493. package/dist/fields/mergeBaseFields.js +8 -23
  494. package/dist/fields/sortableFieldTypes.js +2 -12
  495. package/dist/fields/validations.d.ts +6 -6
  496. package/dist/fields/validations.d.ts.map +1 -1
  497. package/dist/fields/validations.js +31 -97
  498. package/dist/fields/validations.spec.js +93 -87
  499. package/dist/globals/config/sanitize.d.ts +2 -2
  500. package/dist/globals/config/sanitize.d.ts.map +1 -1
  501. package/dist/globals/config/sanitize.js +19 -34
  502. package/dist/globals/config/schema.js +55 -70
  503. package/dist/globals/config/types.d.ts +11 -11
  504. package/dist/globals/config/types.d.ts.map +1 -1
  505. package/dist/globals/config/types.js +2 -5
  506. package/dist/globals/operations/docAccess.d.ts +3 -3
  507. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  508. package/dist/globals/operations/docAccess.js +12 -22
  509. package/dist/globals/operations/findOne.d.ts +2 -2
  510. package/dist/globals/operations/findOne.d.ts.map +1 -1
  511. package/dist/globals/operations/findOne.js +14 -29
  512. package/dist/globals/operations/findVersionByID.d.ts +3 -3
  513. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  514. package/dist/globals/operations/findVersionByID.js +18 -33
  515. package/dist/globals/operations/findVersions.d.ts +4 -5
  516. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  517. package/dist/globals/operations/findVersions.js +20 -35
  518. package/dist/globals/operations/local/findOne.d.ts +2 -4
  519. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  520. package/dist/globals/operations/local/findOne.js +11 -21
  521. package/dist/globals/operations/local/findVersionByID.d.ts +3 -5
  522. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  523. package/dist/globals/operations/local/findVersionByID.js +9 -19
  524. package/dist/globals/operations/local/findVersions.d.ts +4 -6
  525. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  526. package/dist/globals/operations/local/findVersions.js +9 -19
  527. package/dist/globals/operations/local/index.d.ts +5 -5
  528. package/dist/globals/operations/local/index.d.ts.map +1 -1
  529. package/dist/globals/operations/local/index.js +12 -27
  530. package/dist/globals/operations/local/restoreVersion.d.ts +2 -4
  531. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  532. package/dist/globals/operations/local/restoreVersion.js +9 -19
  533. package/dist/globals/operations/local/update.d.ts +2 -4
  534. package/dist/globals/operations/local/update.d.ts.map +1 -1
  535. package/dist/globals/operations/local/update.js +9 -19
  536. package/dist/globals/operations/restoreVersion.d.ts +3 -3
  537. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  538. package/dist/globals/operations/restoreVersion.js +16 -31
  539. package/dist/globals/operations/update.d.ts +9 -9
  540. package/dist/globals/operations/update.d.ts.map +1 -1
  541. package/dist/globals/operations/update.js +23 -38
  542. package/dist/index.d.ts +29 -29
  543. package/dist/index.d.ts.map +1 -1
  544. package/dist/index.js +50 -70
  545. package/dist/localization/middleware.js +2 -12
  546. package/dist/localization/sanitizeFallbackLocale.js +2 -12
  547. package/dist/preferences/deleteUserPreferences.d.ts +3 -3
  548. package/dist/preferences/deleteUserPreferences.d.ts.map +1 -1
  549. package/dist/preferences/deleteUserPreferences.js +2 -12
  550. package/dist/preferences/operations/delete.d.ts +2 -2
  551. package/dist/preferences/operations/delete.d.ts.map +1 -1
  552. package/dist/preferences/operations/delete.js +10 -25
  553. package/dist/preferences/operations/findOne.d.ts +2 -2
  554. package/dist/preferences/operations/findOne.d.ts.map +1 -1
  555. package/dist/preferences/operations/findOne.js +2 -12
  556. package/dist/preferences/operations/update.d.ts +1 -1
  557. package/dist/preferences/operations/update.d.ts.map +1 -1
  558. package/dist/preferences/operations/update.js +8 -23
  559. package/dist/preferences/preferencesCollection.d.ts +2 -2
  560. package/dist/preferences/preferencesCollection.d.ts.map +1 -1
  561. package/dist/preferences/preferencesCollection.js +8 -18
  562. package/dist/preferences/requestHandlers/delete.d.ts +1 -1
  563. package/dist/preferences/requestHandlers/delete.d.ts.map +1 -1
  564. package/dist/preferences/requestHandlers/delete.js +6 -21
  565. package/dist/preferences/requestHandlers/findOne.d.ts +1 -1
  566. package/dist/preferences/requestHandlers/findOne.d.ts.map +1 -1
  567. package/dist/preferences/requestHandlers/findOne.js +6 -21
  568. package/dist/preferences/requestHandlers/update.d.ts +1 -1
  569. package/dist/preferences/requestHandlers/update.d.ts.map +1 -1
  570. package/dist/preferences/requestHandlers/update.js +6 -21
  571. package/dist/preferences/types.d.ts +2 -2
  572. package/dist/preferences/types.d.ts.map +1 -1
  573. package/dist/preferences/types.js +2 -5
  574. package/dist/translations/extractTranslations.js +4 -14
  575. package/dist/translations/getLocalI18n.d.ts +1 -1
  576. package/dist/translations/getLocalI18n.d.ts.map +1 -1
  577. package/dist/translations/getLocalI18n.js +5 -15
  578. package/dist/types/constants.js +2 -12
  579. package/dist/types/index.d.ts +8 -6
  580. package/dist/types/index.d.ts.map +1 -1
  581. package/dist/types/index.js +2 -12
  582. package/dist/uploads/canResizeImage.js +2 -12
  583. package/dist/uploads/cropImage.d.ts +3 -7
  584. package/dist/uploads/cropImage.d.ts.map +1 -1
  585. package/dist/uploads/cropImage.js +4 -28
  586. package/dist/uploads/deleteAssociatedFiles.d.ts +4 -4
  587. package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
  588. package/dist/uploads/deleteAssociatedFiles.js +11 -26
  589. package/dist/uploads/docWithFilenameExists.d.ts +1 -1
  590. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  591. package/dist/uploads/docWithFilenameExists.js +2 -12
  592. package/dist/uploads/fileExists.js +4 -19
  593. package/dist/uploads/formatFilesize.js +2 -12
  594. package/dist/uploads/generateFileData.d.ts +4 -4
  595. package/dist/uploads/generateFileData.d.ts.map +1 -1
  596. package/dist/uploads/generateFileData.js +42 -55
  597. package/dist/uploads/getBaseFields.d.ts +3 -3
  598. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  599. package/dist/uploads/getBaseFields.js +6 -16
  600. package/dist/uploads/getExternalFile.d.ts +2 -2
  601. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  602. package/dist/uploads/getExternalFile.js +5 -15
  603. package/dist/uploads/getFileByPath.d.ts +1 -1
  604. package/dist/uploads/getFileByPath.d.ts.map +1 -1
  605. package/dist/uploads/getFileByPath.js +11 -25
  606. package/dist/uploads/getImageSize.d.ts +2 -2
  607. package/dist/uploads/getImageSize.d.ts.map +1 -1
  608. package/dist/uploads/getImageSize.js +7 -22
  609. package/dist/uploads/getSafeFilename.d.ts +1 -1
  610. package/dist/uploads/getSafeFilename.d.ts.map +1 -1
  611. package/dist/uploads/getSafeFilename.js +8 -23
  612. package/dist/uploads/imageResizer.d.ts +6 -5
  613. package/dist/uploads/imageResizer.d.ts.map +1 -1
  614. package/dist/uploads/imageResizer.js +29 -44
  615. package/dist/uploads/isImage.js +2 -12
  616. package/dist/uploads/mimeTypeValidator.d.ts +1 -1
  617. package/dist/uploads/mimeTypeValidator.d.ts.map +1 -1
  618. package/dist/uploads/mimeTypeValidator.js +2 -12
  619. package/dist/uploads/mimeTypeValidator.spec.js +11 -15
  620. package/dist/uploads/saveBufferToFile.d.ts +1 -1
  621. package/dist/uploads/saveBufferToFile.js +6 -21
  622. package/dist/uploads/types.d.ts +8 -2
  623. package/dist/uploads/types.d.ts.map +1 -1
  624. package/dist/uploads/types.js +2 -5
  625. package/dist/uploads/unlinkTempFiles.d.ts +3 -3
  626. package/dist/uploads/unlinkTempFiles.d.ts.map +1 -1
  627. package/dist/uploads/unlinkTempFiles.js +9 -22
  628. package/dist/uploads/uploadFiles.d.ts +3 -3
  629. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  630. package/dist/uploads/uploadFiles.js +6 -21
  631. package/dist/utilities/checkDuplicateCollections.d.ts +1 -1
  632. package/dist/utilities/checkDuplicateCollections.d.ts.map +1 -1
  633. package/dist/utilities/checkDuplicateCollections.js +4 -14
  634. package/dist/utilities/combineMerge.js +4 -19
  635. package/dist/utilities/commitTransaction.d.ts +1 -1
  636. package/dist/utilities/commitTransaction.d.ts.map +1 -1
  637. package/dist/utilities/commitTransaction.js +4 -12
  638. package/dist/utilities/configToJSONSchema.d.ts +4 -4
  639. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  640. package/dist/utilities/configToJSONSchema.js +63 -81
  641. package/dist/utilities/configToJSONSchema.spec.js +5 -9
  642. package/dist/utilities/convertData.js +3 -23
  643. package/dist/utilities/createArrayFromCommaDelineated.js +2 -12
  644. package/dist/utilities/createLocalReq.d.ts +3 -3
  645. package/dist/utilities/createLocalReq.d.ts.map +1 -1
  646. package/dist/utilities/createLocalReq.js +7 -16
  647. package/dist/utilities/deepCopyObject.js +2 -12
  648. package/dist/utilities/deepMerge.js +2 -12
  649. package/dist/utilities/fieldSchemaToJSON.d.ts +2 -2
  650. package/dist/utilities/fieldSchemaToJSON.d.ts.map +1 -1
  651. package/dist/utilities/fieldSchemaToJSON.js +2 -12
  652. package/dist/utilities/flattenTopLevelFields.d.ts +1 -1
  653. package/dist/utilities/flattenTopLevelFields.d.ts.map +1 -1
  654. package/dist/utilities/flattenTopLevelFields.js +6 -16
  655. package/dist/utilities/formatLabels.d.ts +2 -1
  656. package/dist/utilities/formatLabels.d.ts.map +1 -1
  657. package/dist/utilities/formatLabels.js +10 -70
  658. package/dist/utilities/formatLabels.spec.js +8 -12
  659. package/dist/utilities/getCSSVariable.js +2 -12
  660. package/dist/utilities/getEntityPolicies.d.ts +4 -4
  661. package/dist/utilities/getEntityPolicies.d.ts.map +1 -1
  662. package/dist/utilities/getEntityPolicies.js +4 -14
  663. package/dist/utilities/getIDType.d.ts +2 -2
  664. package/dist/utilities/getIDType.d.ts.map +1 -1
  665. package/dist/utilities/getIDType.js +2 -12
  666. package/dist/utilities/getObjectDotNotation.js +2 -12
  667. package/dist/utilities/getUniqueListBy.js +2 -12
  668. package/dist/utilities/initTransaction.d.ts +1 -1
  669. package/dist/utilities/initTransaction.d.ts.map +1 -1
  670. package/dist/utilities/initTransaction.js +5 -12
  671. package/dist/utilities/isEntityHidden.d.ts +2 -2
  672. package/dist/utilities/isEntityHidden.d.ts.map +1 -1
  673. package/dist/utilities/isEntityHidden.js +2 -12
  674. package/dist/utilities/isNumber.js +2 -12
  675. package/dist/utilities/isPlainObject.d.ts +2 -0
  676. package/dist/utilities/isPlainObject.d.ts.map +1 -0
  677. package/dist/utilities/isPlainObject.js +25 -0
  678. package/dist/utilities/isValidID.d.ts.map +1 -1
  679. package/dist/utilities/isValidID.js +6 -20
  680. package/dist/utilities/isolateObjectProperty.js +2 -12
  681. package/dist/utilities/killTransaction.d.ts +1 -1
  682. package/dist/utilities/killTransaction.d.ts.map +1 -1
  683. package/dist/utilities/killTransaction.js +4 -12
  684. package/dist/utilities/logger.d.ts +6 -6
  685. package/dist/utilities/logger.d.ts.map +1 -1
  686. package/dist/utilities/logger.js +18 -37
  687. package/dist/utilities/mapAsync.js +2 -12
  688. package/dist/utilities/overwriteMerge.js +2 -12
  689. package/dist/utilities/parseCookies.js +4 -14
  690. package/dist/utilities/sanitizeInternalFields.js +2 -12
  691. package/dist/utilities/setsAreEqual.js +2 -12
  692. package/dist/utilities/telemetry/events/adminInit.d.ts +2 -2
  693. package/dist/utilities/telemetry/events/adminInit.d.ts.map +1 -1
  694. package/dist/utilities/telemetry/events/adminInit.js +7 -17
  695. package/dist/utilities/telemetry/events/serverInit.d.ts +1 -1
  696. package/dist/utilities/telemetry/events/serverInit.d.ts.map +1 -1
  697. package/dist/utilities/telemetry/events/serverInit.js +4 -14
  698. package/dist/utilities/telemetry/index.d.ts +3 -3
  699. package/dist/utilities/telemetry/index.d.ts.map +1 -1
  700. package/dist/utilities/telemetry/index.js +18 -40
  701. package/dist/utilities/telemetry/oneWayHash.js +4 -14
  702. package/dist/utilities/timestamp.js +2 -12
  703. package/dist/utilities/toKebabCase.js +2 -12
  704. package/dist/utilities/wait.js +2 -12
  705. package/dist/utilities/wordBoundariesRegex.js +3 -13
  706. package/dist/versions/baseFields.d.ts +1 -1
  707. package/dist/versions/baseFields.d.ts.map +1 -1
  708. package/dist/versions/baseFields.js +7 -25
  709. package/dist/versions/buildCollectionFields.d.ts +2 -2
  710. package/dist/versions/buildCollectionFields.d.ts.map +1 -1
  711. package/dist/versions/buildCollectionFields.js +2 -12
  712. package/dist/versions/buildGlobalFields.d.ts +2 -2
  713. package/dist/versions/buildGlobalFields.d.ts.map +1 -1
  714. package/dist/versions/buildGlobalFields.js +12 -22
  715. package/dist/versions/deleteCollectionVersions.d.ts +3 -3
  716. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  717. package/dist/versions/deleteCollectionVersions.js +2 -12
  718. package/dist/versions/drafts/appendVersionToQueryKey.d.ts +1 -1
  719. package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
  720. package/dist/versions/drafts/appendVersionToQueryKey.js +2 -12
  721. package/dist/versions/drafts/getQueryDraftsSort.js +2 -12
  722. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts +4 -4
  723. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  724. package/dist/versions/drafts/replaceWithDraftIfAvailable.js +12 -27
  725. package/dist/versions/enforceMaxVersions.d.ts +3 -3
  726. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  727. package/dist/versions/enforceMaxVersions.js +2 -12
  728. package/dist/versions/getLatestCollectionVersion.d.ts +3 -3
  729. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  730. package/dist/versions/getLatestCollectionVersion.js +4 -14
  731. package/dist/versions/getLatestGlobalVersion.d.ts +3 -3
  732. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  733. package/dist/versions/getLatestGlobalVersion.js +5 -15
  734. package/dist/versions/getVersionsModelName.d.ts +2 -2
  735. package/dist/versions/getVersionsModelName.d.ts.map +1 -1
  736. package/dist/versions/getVersionsModelName.js +2 -12
  737. package/dist/versions/saveVersion.d.ts +4 -4
  738. package/dist/versions/saveVersion.d.ts.map +1 -1
  739. package/dist/versions/saveVersion.js +8 -23
  740. package/dist/versions/types.js +2 -5
  741. package/errors.d.ts +1 -1
  742. package/errors.js +2 -68
  743. package/graphql.d.ts +3 -0
  744. package/graphql.js +27 -0
  745. package/operations.d.ts +28 -28
  746. package/operations.js +29 -125
  747. package/package.json +17 -6
  748. package/types.d.ts +11 -11
  749. package/types.js +4 -74
  750. package/utilities.d.ts +27 -27
  751. package/utilities.js +28 -141
  752. package/versions.d.ts +9 -9
  753. package/versions.js +9 -45
  754. package/.eslintrc.js +0 -58
  755. package/dist/bundlers/mocks/db-mongodb.js +0 -3
  756. package/dist/bundlers/mocks/db-postgres.js +0 -13
  757. package/dist/bundlers/mocks/dotENV.js +0 -15
  758. package/dist/bundlers/mocks/emptyModule.js +0 -13
  759. package/dist/bundlers/mocks/fileMock.js +0 -13
  760. package/dist/bundlers/types.d.ts +0 -8
  761. package/dist/bundlers/types.d.ts.map +0 -1
  762. package/dist/bundlers/types.js +0 -6
  763. package/dist/express/middleware/errorHandler.d.ts +0 -2
  764. package/dist/express/middleware/errorHandler.d.ts.map +0 -1
  765. package/dist/express/middleware/errorHandler.js +0 -3
  766. package/dist/express/middleware/index.d.ts +0 -2
  767. package/dist/express/middleware/index.d.ts.map +0 -1
  768. package/dist/express/middleware/index.js +0 -3
  769. package/dist/globals/config/build.d.ts +0 -2
  770. package/dist/globals/config/build.d.ts.map +0 -1
  771. package/dist/globals/config/build.js +0 -3
  772. package/dist/globals/graphql/resolvers/docAccess.d.ts +0 -2
  773. package/dist/globals/graphql/resolvers/docAccess.d.ts.map +0 -1
  774. package/dist/globals/graphql/resolvers/docAccess.js +0 -3
@@ -1,5 +1,5 @@
1
- import type { PayloadRequest } from '../../../types';
2
- import type { RelationshipField, UploadField } from '../../config/types';
1
+ import type { PayloadRequest } from '../../../types/index.d.ts';
2
+ import type { RelationshipField, UploadField } from '../../config/types.d.ts';
3
3
  type PromiseArgs = {
4
4
  currentDepth: number;
5
5
  depth: number;
@@ -1 +1 @@
1
- {"version":3,"file":"relationshipPopulationPromise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterRead/relationshipPopulationPromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AA4FxE,KAAK,WAAW,GAAG;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,KAAK,EAAE,iBAAiB,GAAG,WAAW,CAAA;IACtC,MAAM,EAAE,IAAI,GAAG,MAAM,CAAA;IACrB,cAAc,EAAE,OAAO,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;IACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAChC,CAAA;AAED,eAAO,MAAM,6BAA6B,+GAUvC,WAAW,KAAG,QAAQ,IAAI,CAiG5B,CAAA"}
1
+ {"version":3,"file":"relationshipPopulationPromise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterRead/relationshipPopulationPromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AA4F7E,KAAK,WAAW,GAAG;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,KAAK,EAAE,iBAAiB,GAAG,WAAW,CAAA;IACtC,MAAM,EAAE,IAAI,GAAG,MAAM,CAAA;IACrB,cAAc,EAAE,OAAO,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;IACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAChC,CAAA;AAED,eAAO,MAAM,6BAA6B,+GAUvC,WAAW,KAAG,QAAQ,IAAI,CAiG5B,CAAA"}
@@ -1,14 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "relationshipPopulationPromise", {
6
- enumerable: true,
7
- get: function() {
8
- return relationshipPopulationPromise;
9
- }
10
- });
11
- const _types = require("../../config/types");
1
+ import { fieldHasMaxDepth, fieldSupportsMany } from '../../config/types.js';
12
2
  const populate = async ({ currentDepth, data, dataReference, depth, fallbackLocale, field, index, key, locale, overrideAccess, req, showHiddenFields })=>{
13
3
  const dataToUpdate = dataReference;
14
4
  const relation = Array.isArray(field.relationTo) ? data.relationTo : field.relationTo;
@@ -56,11 +46,11 @@ const populate = async ({ currentDepth, data, dataReference, depth, fallbackLoca
56
46
  }
57
47
  }
58
48
  };
59
- const relationshipPopulationPromise = async ({ currentDepth, depth, fallbackLocale, field, locale, overrideAccess, req, showHiddenFields, siblingDoc })=>{
49
+ export const relationshipPopulationPromise = async ({ currentDepth, depth, fallbackLocale, field, locale, overrideAccess, req, showHiddenFields, siblingDoc })=>{
60
50
  const resultingDoc = siblingDoc;
61
- const populateDepth = (0, _types.fieldHasMaxDepth)(field) && field.maxDepth < depth ? field.maxDepth : depth;
51
+ const populateDepth = fieldHasMaxDepth(field) && field.maxDepth < depth ? field.maxDepth : depth;
62
52
  const rowPromises = [];
63
- if ((0, _types.fieldSupportsMany)(field) && field.hasMany) {
53
+ if (fieldSupportsMany(field) && field.hasMany) {
64
54
  if (locale === 'all' && typeof siblingDoc[field.name] === 'object' && siblingDoc[field.name] !== null) {
65
55
  Object.keys(siblingDoc[field.name]).forEach((key)=>{
66
56
  if (Array.isArray(siblingDoc[field.name][key])) {
@@ -144,4 +134,4 @@ const relationshipPopulationPromise = async ({ currentDepth, depth, fallbackLoca
144
134
  await Promise.all(rowPromises);
145
135
  };
146
136
 
147
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJSZWFkL3JlbGF0aW9uc2hpcFBvcHVsYXRpb25Qcm9taXNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QgfSBmcm9tICcuLi8uLi8uLi90eXBlcydcbmltcG9ydCB0eXBlIHsgUmVsYXRpb25zaGlwRmllbGQsIFVwbG9hZEZpZWxkIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzJ1xuXG5pbXBvcnQgeyBmaWVsZEhhc01heERlcHRoLCBmaWVsZFN1cHBvcnRzTWFueSB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcydcblxudHlwZSBQb3B1bGF0ZUFyZ3MgPSB7XG4gIGN1cnJlbnREZXB0aDogbnVtYmVyXG4gIGRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGRhdGFSZWZlcmVuY2U6IFJlY29yZDxzdHJpbmcsIGFueT5cbiAgZGVwdGg6IG51bWJlclxuICBmYWxsYmFja0xvY2FsZTogbnVsbCB8IHN0cmluZ1xuICBmaWVsZDogUmVsYXRpb25zaGlwRmllbGQgfCBVcGxvYWRGaWVsZFxuICBpbmRleD86IG51bWJlclxuICBrZXk/OiBzdHJpbmdcbiAgbG9jYWxlOiBudWxsIHwgc3RyaW5nXG4gIG92ZXJyaWRlQWNjZXNzOiBib29sZWFuXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkczogYm9vbGVhblxufVxuXG5jb25zdCBwb3B1bGF0ZSA9IGFzeW5jICh7XG4gIGN1cnJlbnREZXB0aCxcbiAgZGF0YSxcbiAgZGF0YVJlZmVyZW5jZSxcbiAgZGVwdGgsXG4gIGZhbGxiYWNrTG9jYWxlLFxuICBmaWVsZCxcbiAgaW5kZXgsXG4gIGtleSxcbiAgbG9jYWxlLFxuICBvdmVycmlkZUFjY2VzcyxcbiAgcmVxLFxuICBzaG93SGlkZGVuRmllbGRzLFxufTogUG9wdWxhdGVBcmdzKSA9PiB7XG4gIGNvbnN0IGRhdGFUb1VwZGF0ZSA9IGRhdGFSZWZlcmVuY2VcbiAgY29uc3QgcmVsYXRpb24gPSBBcnJheS5pc0FycmF5KGZpZWxkLnJlbGF0aW9uVG8pID8gKGRhdGEucmVsYXRpb25UbyBhcyBzdHJpbmcpIDogZmllbGQucmVsYXRpb25Ub1xuICBjb25zdCByZWxhdGVkQ29sbGVjdGlvbiA9IHJlcS5wYXlsb2FkLmNvbGxlY3Rpb25zW3JlbGF0aW9uXVxuXG4gIGlmIChyZWxhdGVkQ29sbGVjdGlvbikge1xuICAgIGxldCBpZCA9IEFycmF5LmlzQXJyYXkoZmllbGQucmVsYXRpb25UbykgPyBkYXRhLnZhbHVlIDogZGF0YVxuICAgIGxldCByZWxhdGlvbnNoaXBWYWx1ZVxuICAgIGNvbnN0IHNob3VsZFBvcHVsYXRlID0gZGVwdGggJiYgY3VycmVudERlcHRoIDw9IGRlcHRoXG5cbiAgICBpZiAoXG4gICAgICB0eXBlb2YgaWQgIT09ICdzdHJpbmcnICYmXG4gICAgICB0eXBlb2YgaWQgIT09ICdudW1iZXInICYmXG4gICAgICB0eXBlb2YgaWQ/LnRvU3RyaW5nID09PSAnZnVuY3Rpb24nICYmXG4gICAgICB0eXBlb2YgaWQgIT09ICdvYmplY3QnXG4gICAgKSB7XG4gICAgICBpZCA9IGlkLnRvU3RyaW5nKClcbiAgICB9XG5cbiAgICBpZiAoc2hvdWxkUG9wdWxhdGUpIHtcbiAgICAgIHJlbGF0aW9uc2hpcFZhbHVlID0gYXdhaXQgcmVxLnBheWxvYWREYXRhTG9hZGVyLmxvYWQoXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KFtcbiAgICAgICAgICByZXEudHJhbnNhY3Rpb25JRCxcbiAgICAgICAgICByZWxhdGVkQ29sbGVjdGlvbi5jb25maWcuc2x1ZyxcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICBjdXJyZW50RGVwdGggKyAxLFxuICAgICAgICAgIGxvY2FsZSxcbiAgICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICBdKSxcbiAgICAgIClcbiAgICB9XG5cbiAgICBpZiAoIXJlbGF0aW9uc2hpcFZhbHVlKSB7XG4gICAgICAvLyBpZHMgYXJlIHZpc2libGUgcmVnYXJkbGVzcyBvZiBhY2Nlc3MgY29udHJvbHNcbiAgICAgIHJlbGF0aW9uc2hpcFZhbHVlID0gaWRcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGluZGV4ID09PSAnbnVtYmVyJyAmJiB0eXBlb2Yga2V5ID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZmllbGQucmVsYXRpb25UbykpIHtcbiAgICAgICAgZGF0YVRvVXBkYXRlW2ZpZWxkLm5hbWVdW2tleV1baW5kZXhdLnZhbHVlID0gcmVsYXRpb25zaGlwVmFsdWVcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRhdGFUb1VwZGF0ZVtmaWVsZC5uYW1lXVtrZXldW2luZGV4XSA9IHJlbGF0aW9uc2hpcFZhbHVlXG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgaW5kZXggPT09ICdudW1iZXInIHx8IHR5cGVvZiBrZXkgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZC5yZWxhdGlvblRvKSkge1xuICAgICAgICBkYXRhVG9VcGRhdGVbZmllbGQubmFtZV1baW5kZXggPz8ga2V5XS52YWx1ZSA9IHJlbGF0aW9uc2hpcFZhbHVlXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkYXRhVG9VcGRhdGVbZmllbGQubmFtZV1baW5kZXggPz8ga2V5XSA9IHJlbGF0aW9uc2hpcFZhbHVlXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KGZpZWxkLnJlbGF0aW9uVG8pKSB7XG4gICAgICBkYXRhVG9VcGRhdGVbZmllbGQubmFtZV0udmFsdWUgPSByZWxhdGlvbnNoaXBWYWx1ZVxuICAgIH0gZWxzZSB7XG4gICAgICBkYXRhVG9VcGRhdGVbZmllbGQubmFtZV0gPSByZWxhdGlvbnNoaXBWYWx1ZVxuICAgIH1cbiAgfVxufVxuXG50eXBlIFByb21pc2VBcmdzID0ge1xuICBjdXJyZW50RGVwdGg6IG51bWJlclxuICBkZXB0aDogbnVtYmVyXG4gIGZhbGxiYWNrTG9jYWxlOiBudWxsIHwgc3RyaW5nXG4gIGZpZWxkOiBSZWxhdGlvbnNoaXBGaWVsZCB8IFVwbG9hZEZpZWxkXG4gIGxvY2FsZTogbnVsbCB8IHN0cmluZ1xuICBvdmVycmlkZUFjY2VzczogYm9vbGVhblxuICByZXE6IFBheWxvYWRSZXF1ZXN0XG4gIHNob3dIaWRkZW5GaWVsZHM6IGJvb2xlYW5cbiAgc2libGluZ0RvYzogUmVjb3JkPHN0cmluZywgYW55PlxufVxuXG5leHBvcnQgY29uc3QgcmVsYXRpb25zaGlwUG9wdWxhdGlvblByb21pc2UgPSBhc3luYyAoe1xuICBjdXJyZW50RGVwdGgsXG4gIGRlcHRoLFxuICBmYWxsYmFja0xvY2FsZSxcbiAgZmllbGQsXG4gIGxvY2FsZSxcbiAgb3ZlcnJpZGVBY2Nlc3MsXG4gIHJlcSxcbiAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgc2libGluZ0RvYyxcbn06IFByb21pc2VBcmdzKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHJlc3VsdGluZ0RvYyA9IHNpYmxpbmdEb2NcbiAgY29uc3QgcG9wdWxhdGVEZXB0aCA9IGZpZWxkSGFzTWF4RGVwdGgoZmllbGQpICYmIGZpZWxkLm1heERlcHRoIDwgZGVwdGggPyBmaWVsZC5tYXhEZXB0aCA6IGRlcHRoXG4gIGNvbnN0IHJvd1Byb21pc2VzID0gW11cblxuICBpZiAoZmllbGRTdXBwb3J0c01hbnkoZmllbGQpICYmIGZpZWxkLmhhc01hbnkpIHtcbiAgICBpZiAoXG4gICAgICBsb2NhbGUgPT09ICdhbGwnICYmXG4gICAgICB0eXBlb2Ygc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9PT0gJ29iamVjdCcgJiZcbiAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gIT09IG51bGxcbiAgICApIHtcbiAgICAgIE9iamVjdC5rZXlzKHNpYmxpbmdEb2NbZmllbGQubmFtZV0pLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdW2tleV0pKSB7XG4gICAgICAgICAgc2libGluZ0RvY1tmaWVsZC5uYW1lXVtrZXldLmZvckVhY2goKHJlbGF0ZWREb2MsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCByb3dQcm9taXNlID0gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICBhd2FpdCBwb3B1bGF0ZSh7XG4gICAgICAgICAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICAgICAgICAgIGRhdGE6IHNpYmxpbmdEb2NbZmllbGQubmFtZV1ba2V5XVtpbmRleF0sXG4gICAgICAgICAgICAgICAgZGF0YVJlZmVyZW5jZTogcmVzdWx0aW5nRG9jLFxuICAgICAgICAgICAgICAgIGRlcHRoOiBwb3B1bGF0ZURlcHRoLFxuICAgICAgICAgICAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgICAgICAgIGluZGV4LFxuICAgICAgICAgICAgICAgIGtleSxcbiAgICAgICAgICAgICAgICBsb2NhbGUsXG4gICAgICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByb3dQcm9taXNlcy5wdXNoKHJvd1Byb21pc2UoKSlcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdKSkge1xuICAgICAgc2libGluZ0RvY1tmaWVsZC5uYW1lXS5mb3JFYWNoKChyZWxhdGVkRG9jLCBpbmRleCkgPT4ge1xuICAgICAgICBjb25zdCByb3dQcm9taXNlID0gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIGlmIChyZWxhdGVkRG9jKSB7XG4gICAgICAgICAgICBhd2FpdCBwb3B1bGF0ZSh7XG4gICAgICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICAgICAgZGF0YTogcmVsYXRlZERvYyxcbiAgICAgICAgICAgICAgZGF0YVJlZmVyZW5jZTogcmVzdWx0aW5nRG9jLFxuICAgICAgICAgICAgICBkZXB0aDogcG9wdWxhdGVEZXB0aCxcbiAgICAgICAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByb3dQcm9taXNlcy5wdXNoKHJvd1Byb21pc2UoKSlcbiAgICAgIH0pXG4gICAgfVxuICB9IGVsc2UgaWYgKFxuICAgIHR5cGVvZiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID09PSAnb2JqZWN0JyAmJlxuICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gIT09IG51bGwgJiZcbiAgICBsb2NhbGUgPT09ICdhbGwnXG4gICkge1xuICAgIE9iamVjdC5rZXlzKHNpYmxpbmdEb2NbZmllbGQubmFtZV0pLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgY29uc3Qgcm93UHJvbWlzZSA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgYXdhaXQgcG9wdWxhdGUoe1xuICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICBkYXRhOiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdW2tleV0sXG4gICAgICAgICAgZGF0YVJlZmVyZW5jZTogcmVzdWx0aW5nRG9jLFxuICAgICAgICAgIGRlcHRoOiBwb3B1bGF0ZURlcHRoLFxuICAgICAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgIGtleSxcbiAgICAgICAgICBsb2NhbGUsXG4gICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICByb3dQcm9taXNlcy5wdXNoKHJvd1Byb21pc2UoKSlcbiAgICB9KVxuXG4gICAgYXdhaXQgUHJvbWlzZS5hbGwocm93UHJvbWlzZXMpXG4gIH0gZWxzZSBpZiAoc2libGluZ0RvY1tmaWVsZC5uYW1lXSkge1xuICAgIGF3YWl0IHBvcHVsYXRlKHtcbiAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgIGRhdGE6IHNpYmxpbmdEb2NbZmllbGQubmFtZV0sXG4gICAgICBkYXRhUmVmZXJlbmNlOiByZXN1bHRpbmdEb2MsXG4gICAgICBkZXB0aDogcG9wdWxhdGVEZXB0aCxcbiAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgZmllbGQsXG4gICAgICBsb2NhbGUsXG4gICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgIHJlcSxcbiAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgfSlcbiAgfVxuICBhd2FpdCBQcm9taXNlLmFsbChyb3dQcm9taXNlcylcbn1cbiJdLCJuYW1lcyI6WyJyZWxhdGlvbnNoaXBQb3B1bGF0aW9uUHJvbWlzZSIsInBvcHVsYXRlIiwiY3VycmVudERlcHRoIiwiZGF0YSIsImRhdGFSZWZlcmVuY2UiLCJkZXB0aCIsImZhbGxiYWNrTG9jYWxlIiwiZmllbGQiLCJpbmRleCIsImtleSIsImxvY2FsZSIsIm92ZXJyaWRlQWNjZXNzIiwicmVxIiwic2hvd0hpZGRlbkZpZWxkcyIsImRhdGFUb1VwZGF0ZSIsInJlbGF0aW9uIiwiQXJyYXkiLCJpc0FycmF5IiwicmVsYXRpb25UbyIsInJlbGF0ZWRDb2xsZWN0aW9uIiwicGF5bG9hZCIsImNvbGxlY3Rpb25zIiwiaWQiLCJ2YWx1ZSIsInJlbGF0aW9uc2hpcFZhbHVlIiwic2hvdWxkUG9wdWxhdGUiLCJ0b1N0cmluZyIsInBheWxvYWREYXRhTG9hZGVyIiwibG9hZCIsIkpTT04iLCJzdHJpbmdpZnkiLCJ0cmFuc2FjdGlvbklEIiwiY29uZmlnIiwic2x1ZyIsIm5hbWUiLCJzaWJsaW5nRG9jIiwicmVzdWx0aW5nRG9jIiwicG9wdWxhdGVEZXB0aCIsImZpZWxkSGFzTWF4RGVwdGgiLCJtYXhEZXB0aCIsInJvd1Byb21pc2VzIiwiZmllbGRTdXBwb3J0c01hbnkiLCJoYXNNYW55IiwiT2JqZWN0Iiwia2V5cyIsImZvckVhY2giLCJyZWxhdGVkRG9jIiwicm93UHJvbWlzZSIsInB1c2giLCJQcm9taXNlIiwiYWxsIl0sIm1hcHBpbmdzIjoiOzs7OytCQXlHYUE7OztlQUFBQTs7O3VCQXRHdUM7QUFpQnBELE1BQU1DLFdBQVcsT0FBTyxFQUN0QkMsWUFBWSxFQUNaQyxJQUFJLEVBQ0pDLGFBQWEsRUFDYkMsS0FBSyxFQUNMQyxjQUFjLEVBQ2RDLEtBQUssRUFDTEMsS0FBSyxFQUNMQyxHQUFHLEVBQ0hDLE1BQU0sRUFDTkMsY0FBYyxFQUNkQyxHQUFHLEVBQ0hDLGdCQUFnQixFQUNIO0lBQ2IsTUFBTUMsZUFBZVY7SUFDckIsTUFBTVcsV0FBV0MsTUFBTUMsT0FBTyxDQUFDVixNQUFNVyxVQUFVLElBQUtmLEtBQUtlLFVBQVUsR0FBY1gsTUFBTVcsVUFBVTtJQUNqRyxNQUFNQyxvQkFBb0JQLElBQUlRLE9BQU8sQ0FBQ0MsV0FBVyxDQUFDTixTQUFTO0lBRTNELElBQUlJLG1CQUFtQjtRQUNyQixJQUFJRyxLQUFLTixNQUFNQyxPQUFPLENBQUNWLE1BQU1XLFVBQVUsSUFBSWYsS0FBS29CLEtBQUssR0FBR3BCO1FBQ3hELElBQUlxQjtRQUNKLE1BQU1DLGlCQUFpQnBCLFNBQVNILGdCQUFnQkc7UUFFaEQsSUFDRSxPQUFPaUIsT0FBTyxZQUNkLE9BQU9BLE9BQU8sWUFDZCxPQUFPQSxJQUFJSSxhQUFhLGNBQ3hCLE9BQU9KLE9BQU8sVUFDZDtZQUNBQSxLQUFLQSxHQUFHSSxRQUFRO1FBQ2xCO1FBRUEsSUFBSUQsZ0JBQWdCO1lBQ2xCRCxvQkFBb0IsTUFBTVosSUFBSWUsaUJBQWlCLENBQUNDLElBQUksQ0FDbERDLEtBQUtDLFNBQVMsQ0FBQztnQkFDYmxCLElBQUltQixhQUFhO2dCQUNqQlosa0JBQWtCYSxNQUFNLENBQUNDLElBQUk7Z0JBQzdCWDtnQkFDQWpCO2dCQUNBSCxlQUFlO2dCQUNmUTtnQkFDQUo7Z0JBQ0FLO2dCQUNBRTthQUNEO1FBRUw7UUFFQSxJQUFJLENBQUNXLG1CQUFtQjtZQUN0QixnREFBZ0Q7WUFDaERBLG9CQUFvQkY7UUFDdEI7UUFFQSxJQUFJLE9BQU9kLFVBQVUsWUFBWSxPQUFPQyxRQUFRLFVBQVU7WUFDeEQsSUFBSU8sTUFBTUMsT0FBTyxDQUFDVixNQUFNVyxVQUFVLEdBQUc7Z0JBQ25DSixZQUFZLENBQUNQLE1BQU0yQixJQUFJLENBQUMsQ0FBQ3pCLElBQUksQ0FBQ0QsTUFBTSxDQUFDZSxLQUFLLEdBQUdDO1lBQy9DLE9BQU87Z0JBQ0xWLFlBQVksQ0FBQ1AsTUFBTTJCLElBQUksQ0FBQyxDQUFDekIsSUFBSSxDQUFDRCxNQUFNLEdBQUdnQjtZQUN6QztRQUNGLE9BQU8sSUFBSSxPQUFPaEIsVUFBVSxZQUFZLE9BQU9DLFFBQVEsVUFBVTtZQUMvRCxJQUFJTyxNQUFNQyxPQUFPLENBQUNWLE1BQU1XLFVBQVUsR0FBRztnQkFDbkNKLFlBQVksQ0FBQ1AsTUFBTTJCLElBQUksQ0FBQyxDQUFDMUIsU0FBU0MsSUFBSSxDQUFDYyxLQUFLLEdBQUdDO1lBQ2pELE9BQU87Z0JBQ0xWLFlBQVksQ0FBQ1AsTUFBTTJCLElBQUksQ0FBQyxDQUFDMUIsU0FBU0MsSUFBSSxHQUFHZTtZQUMzQztRQUNGLE9BQU8sSUFBSVIsTUFBTUMsT0FBTyxDQUFDVixNQUFNVyxVQUFVLEdBQUc7WUFDMUNKLFlBQVksQ0FBQ1AsTUFBTTJCLElBQUksQ0FBQyxDQUFDWCxLQUFLLEdBQUdDO1FBQ25DLE9BQU87WUFDTFYsWUFBWSxDQUFDUCxNQUFNMkIsSUFBSSxDQUFDLEdBQUdWO1FBQzdCO0lBQ0Y7QUFDRjtBQWNPLE1BQU14QixnQ0FBZ0MsT0FBTyxFQUNsREUsWUFBWSxFQUNaRyxLQUFLLEVBQ0xDLGNBQWMsRUFDZEMsS0FBSyxFQUNMRyxNQUFNLEVBQ05DLGNBQWMsRUFDZEMsR0FBRyxFQUNIQyxnQkFBZ0IsRUFDaEJzQixVQUFVLEVBQ0U7SUFDWixNQUFNQyxlQUFlRDtJQUNyQixNQUFNRSxnQkFBZ0JDLElBQUFBLHVCQUFnQixFQUFDL0IsVUFBVUEsTUFBTWdDLFFBQVEsR0FBR2xDLFFBQVFFLE1BQU1nQyxRQUFRLEdBQUdsQztJQUMzRixNQUFNbUMsY0FBYyxFQUFFO0lBRXRCLElBQUlDLElBQUFBLHdCQUFpQixFQUFDbEMsVUFBVUEsTUFBTW1DLE9BQU8sRUFBRTtRQUM3QyxJQUNFaEMsV0FBVyxTQUNYLE9BQU95QixVQUFVLENBQUM1QixNQUFNMkIsSUFBSSxDQUFDLEtBQUssWUFDbENDLFVBQVUsQ0FBQzVCLE1BQU0yQixJQUFJLENBQUMsS0FBSyxNQUMzQjtZQUNBUyxPQUFPQyxJQUFJLENBQUNULFVBQVUsQ0FBQzVCLE1BQU0yQixJQUFJLENBQUMsRUFBRVcsT0FBTyxDQUFDLENBQUNwQztnQkFDM0MsSUFBSU8sTUFBTUMsT0FBTyxDQUFDa0IsVUFBVSxDQUFDNUIsTUFBTTJCLElBQUksQ0FBQyxDQUFDekIsSUFBSSxHQUFHO29CQUM5QzBCLFVBQVUsQ0FBQzVCLE1BQU0yQixJQUFJLENBQUMsQ0FBQ3pCLElBQUksQ0FBQ29DLE9BQU8sQ0FBQyxDQUFDQyxZQUFZdEM7d0JBQy9DLE1BQU11QyxhQUFhOzRCQUNqQixNQUFNOUMsU0FBUztnQ0FDYkM7Z0NBQ0FDLE1BQU1nQyxVQUFVLENBQUM1QixNQUFNMkIsSUFBSSxDQUFDLENBQUN6QixJQUFJLENBQUNELE1BQU07Z0NBQ3hDSixlQUFlZ0M7Z0NBQ2YvQixPQUFPZ0M7Z0NBQ1AvQjtnQ0FDQUM7Z0NBQ0FDO2dDQUNBQztnQ0FDQUM7Z0NBQ0FDO2dDQUNBQztnQ0FDQUM7NEJBQ0Y7d0JBQ0Y7d0JBQ0EyQixZQUFZUSxJQUFJLENBQUNEO29CQUNuQjtnQkFDRjtZQUNGO1FBQ0YsT0FBTyxJQUFJL0IsTUFBTUMsT0FBTyxDQUFDa0IsVUFBVSxDQUFDNUIsTUFBTTJCLElBQUksQ0FBQyxHQUFHO1lBQ2hEQyxVQUFVLENBQUM1QixNQUFNMkIsSUFBSSxDQUFDLENBQUNXLE9BQU8sQ0FBQyxDQUFDQyxZQUFZdEM7Z0JBQzFDLE1BQU11QyxhQUFhO29CQUNqQixJQUFJRCxZQUFZO3dCQUNkLE1BQU03QyxTQUFTOzRCQUNiQzs0QkFDQUMsTUFBTTJDOzRCQUNOMUMsZUFBZWdDOzRCQUNmL0IsT0FBT2dDOzRCQUNQL0I7NEJBQ0FDOzRCQUNBQzs0QkFDQUU7NEJBQ0FDOzRCQUNBQzs0QkFDQUM7d0JBQ0Y7b0JBQ0Y7Z0JBQ0Y7Z0JBRUEyQixZQUFZUSxJQUFJLENBQUNEO1lBQ25CO1FBQ0Y7SUFDRixPQUFPLElBQ0wsT0FBT1osVUFBVSxDQUFDNUIsTUFBTTJCLElBQUksQ0FBQyxLQUFLLFlBQ2xDQyxVQUFVLENBQUM1QixNQUFNMkIsSUFBSSxDQUFDLEtBQUssUUFDM0J4QixXQUFXLE9BQ1g7UUFDQWlDLE9BQU9DLElBQUksQ0FBQ1QsVUFBVSxDQUFDNUIsTUFBTTJCLElBQUksQ0FBQyxFQUFFVyxPQUFPLENBQUMsQ0FBQ3BDO1lBQzNDLE1BQU1zQyxhQUFhO2dCQUNqQixNQUFNOUMsU0FBUztvQkFDYkM7b0JBQ0FDLE1BQU1nQyxVQUFVLENBQUM1QixNQUFNMkIsSUFBSSxDQUFDLENBQUN6QixJQUFJO29CQUNqQ0wsZUFBZWdDO29CQUNmL0IsT0FBT2dDO29CQUNQL0I7b0JBQ0FDO29CQUNBRTtvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7Z0JBQ0Y7WUFDRjtZQUNBMkIsWUFBWVEsSUFBSSxDQUFDRDtRQUNuQjtRQUVBLE1BQU1FLFFBQVFDLEdBQUcsQ0FBQ1Y7SUFDcEIsT0FBTyxJQUFJTCxVQUFVLENBQUM1QixNQUFNMkIsSUFBSSxDQUFDLEVBQUU7UUFDakMsTUFBTWpDLFNBQVM7WUFDYkM7WUFDQUMsTUFBTWdDLFVBQVUsQ0FBQzVCLE1BQU0yQixJQUFJLENBQUM7WUFDNUI5QixlQUFlZ0M7WUFDZi9CLE9BQU9nQztZQUNQL0I7WUFDQUM7WUFDQUc7WUFDQUM7WUFDQUM7WUFDQUM7UUFDRjtJQUNGO0lBQ0EsTUFBTW9DLFFBQVFDLEdBQUcsQ0FBQ1Y7QUFDcEIifQ==
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJSZWFkL3JlbGF0aW9uc2hpcFBvcHVsYXRpb25Qcm9taXNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9pbmRleC5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBSZWxhdGlvbnNoaXBGaWVsZCwgVXBsb2FkRmllbGQgfSBmcm9tICcuLi8uLi9jb25maWcvdHlwZXMuZC50cydcblxuaW1wb3J0IHsgZmllbGRIYXNNYXhEZXB0aCwgZmllbGRTdXBwb3J0c01hbnkgfSBmcm9tICcuLi8uLi9jb25maWcvdHlwZXMuanMnXG5cbnR5cGUgUG9wdWxhdGVBcmdzID0ge1xuICBjdXJyZW50RGVwdGg6IG51bWJlclxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBkYXRhUmVmZXJlbmNlOiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gIGRlcHRoOiBudW1iZXJcbiAgZmFsbGJhY2tMb2NhbGU6IG51bGwgfCBzdHJpbmdcbiAgZmllbGQ6IFJlbGF0aW9uc2hpcEZpZWxkIHwgVXBsb2FkRmllbGRcbiAgaW5kZXg/OiBudW1iZXJcbiAga2V5Pzogc3RyaW5nXG4gIGxvY2FsZTogbnVsbCB8IHN0cmluZ1xuICBvdmVycmlkZUFjY2VzczogYm9vbGVhblxuICByZXE6IFBheWxvYWRSZXF1ZXN0XG4gIHNob3dIaWRkZW5GaWVsZHM6IGJvb2xlYW5cbn1cblxuY29uc3QgcG9wdWxhdGUgPSBhc3luYyAoe1xuICBjdXJyZW50RGVwdGgsXG4gIGRhdGEsXG4gIGRhdGFSZWZlcmVuY2UsXG4gIGRlcHRoLFxuICBmYWxsYmFja0xvY2FsZSxcbiAgZmllbGQsXG4gIGluZGV4LFxuICBrZXksXG4gIGxvY2FsZSxcbiAgb3ZlcnJpZGVBY2Nlc3MsXG4gIHJlcSxcbiAgc2hvd0hpZGRlbkZpZWxkcyxcbn06IFBvcHVsYXRlQXJncykgPT4ge1xuICBjb25zdCBkYXRhVG9VcGRhdGUgPSBkYXRhUmVmZXJlbmNlXG4gIGNvbnN0IHJlbGF0aW9uID0gQXJyYXkuaXNBcnJheShmaWVsZC5yZWxhdGlvblRvKSA/IChkYXRhLnJlbGF0aW9uVG8gYXMgc3RyaW5nKSA6IGZpZWxkLnJlbGF0aW9uVG9cbiAgY29uc3QgcmVsYXRlZENvbGxlY3Rpb24gPSByZXEucGF5bG9hZC5jb2xsZWN0aW9uc1tyZWxhdGlvbl1cblxuICBpZiAocmVsYXRlZENvbGxlY3Rpb24pIHtcbiAgICBsZXQgaWQgPSBBcnJheS5pc0FycmF5KGZpZWxkLnJlbGF0aW9uVG8pID8gZGF0YS52YWx1ZSA6IGRhdGFcbiAgICBsZXQgcmVsYXRpb25zaGlwVmFsdWVcbiAgICBjb25zdCBzaG91bGRQb3B1bGF0ZSA9IGRlcHRoICYmIGN1cnJlbnREZXB0aCA8PSBkZXB0aFxuXG4gICAgaWYgKFxuICAgICAgdHlwZW9mIGlkICE9PSAnc3RyaW5nJyAmJlxuICAgICAgdHlwZW9mIGlkICE9PSAnbnVtYmVyJyAmJlxuICAgICAgdHlwZW9mIGlkPy50b1N0cmluZyA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgICAgdHlwZW9mIGlkICE9PSAnb2JqZWN0J1xuICAgICkge1xuICAgICAgaWQgPSBpZC50b1N0cmluZygpXG4gICAgfVxuXG4gICAgaWYgKHNob3VsZFBvcHVsYXRlKSB7XG4gICAgICByZWxhdGlvbnNoaXBWYWx1ZSA9IGF3YWl0IHJlcS5wYXlsb2FkRGF0YUxvYWRlci5sb2FkKFxuICAgICAgICBKU09OLnN0cmluZ2lmeShbXG4gICAgICAgICAgcmVxLnRyYW5zYWN0aW9uSUQsXG4gICAgICAgICAgcmVsYXRlZENvbGxlY3Rpb24uY29uZmlnLnNsdWcsXG4gICAgICAgICAgaWQsXG4gICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgY3VycmVudERlcHRoICsgMSxcbiAgICAgICAgICBsb2NhbGUsXG4gICAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgXSksXG4gICAgICApXG4gICAgfVxuXG4gICAgaWYgKCFyZWxhdGlvbnNoaXBWYWx1ZSkge1xuICAgICAgLy8gaWRzIGFyZSB2aXNpYmxlIHJlZ2FyZGxlc3Mgb2YgYWNjZXNzIGNvbnRyb2xzXG4gICAgICByZWxhdGlvbnNoaXBWYWx1ZSA9IGlkXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBpbmRleCA9PT0gJ251bWJlcicgJiYgdHlwZW9mIGtleSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGZpZWxkLnJlbGF0aW9uVG8pKSB7XG4gICAgICAgIGRhdGFUb1VwZGF0ZVtmaWVsZC5uYW1lXVtrZXldW2luZGV4XS52YWx1ZSA9IHJlbGF0aW9uc2hpcFZhbHVlXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkYXRhVG9VcGRhdGVbZmllbGQubmFtZV1ba2V5XVtpbmRleF0gPSByZWxhdGlvbnNoaXBWYWx1ZVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIGluZGV4ID09PSAnbnVtYmVyJyB8fCB0eXBlb2Yga2V5ID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZmllbGQucmVsYXRpb25UbykpIHtcbiAgICAgICAgZGF0YVRvVXBkYXRlW2ZpZWxkLm5hbWVdW2luZGV4ID8/IGtleV0udmFsdWUgPSByZWxhdGlvbnNoaXBWYWx1ZVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGF0YVRvVXBkYXRlW2ZpZWxkLm5hbWVdW2luZGV4ID8/IGtleV0gPSByZWxhdGlvbnNoaXBWYWx1ZVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShmaWVsZC5yZWxhdGlvblRvKSkge1xuICAgICAgZGF0YVRvVXBkYXRlW2ZpZWxkLm5hbWVdLnZhbHVlID0gcmVsYXRpb25zaGlwVmFsdWVcbiAgICB9IGVsc2Uge1xuICAgICAgZGF0YVRvVXBkYXRlW2ZpZWxkLm5hbWVdID0gcmVsYXRpb25zaGlwVmFsdWVcbiAgICB9XG4gIH1cbn1cblxudHlwZSBQcm9taXNlQXJncyA9IHtcbiAgY3VycmVudERlcHRoOiBudW1iZXJcbiAgZGVwdGg6IG51bWJlclxuICBmYWxsYmFja0xvY2FsZTogbnVsbCB8IHN0cmluZ1xuICBmaWVsZDogUmVsYXRpb25zaGlwRmllbGQgfCBVcGxvYWRGaWVsZFxuICBsb2NhbGU6IG51bGwgfCBzdHJpbmdcbiAgb3ZlcnJpZGVBY2Nlc3M6IGJvb2xlYW5cbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxuICBzaG93SGlkZGVuRmllbGRzOiBib29sZWFuXG4gIHNpYmxpbmdEb2M6IFJlY29yZDxzdHJpbmcsIGFueT5cbn1cblxuZXhwb3J0IGNvbnN0IHJlbGF0aW9uc2hpcFBvcHVsYXRpb25Qcm9taXNlID0gYXN5bmMgKHtcbiAgY3VycmVudERlcHRoLFxuICBkZXB0aCxcbiAgZmFsbGJhY2tMb2NhbGUsXG4gIGZpZWxkLFxuICBsb2NhbGUsXG4gIG92ZXJyaWRlQWNjZXNzLFxuICByZXEsXG4gIHNob3dIaWRkZW5GaWVsZHMsXG4gIHNpYmxpbmdEb2MsXG59OiBQcm9taXNlQXJncyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICBjb25zdCByZXN1bHRpbmdEb2MgPSBzaWJsaW5nRG9jXG4gIGNvbnN0IHBvcHVsYXRlRGVwdGggPSBmaWVsZEhhc01heERlcHRoKGZpZWxkKSAmJiBmaWVsZC5tYXhEZXB0aCA8IGRlcHRoID8gZmllbGQubWF4RGVwdGggOiBkZXB0aFxuICBjb25zdCByb3dQcm9taXNlcyA9IFtdXG5cbiAgaWYgKGZpZWxkU3VwcG9ydHNNYW55KGZpZWxkKSAmJiBmaWVsZC5oYXNNYW55KSB7XG4gICAgaWYgKFxuICAgICAgbG9jYWxlID09PSAnYWxsJyAmJlxuICAgICAgdHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPT09ICdvYmplY3QnICYmXG4gICAgICBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSBudWxsXG4gICAgKSB7XG4gICAgICBPYmplY3Qua2V5cyhzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc2libGluZ0RvY1tmaWVsZC5uYW1lXVtrZXldKSkge1xuICAgICAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV1ba2V5XS5mb3JFYWNoKChyZWxhdGVkRG9jLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgcm93UHJvbWlzZSA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgYXdhaXQgcG9wdWxhdGUoe1xuICAgICAgICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICAgICAgICBkYXRhOiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdW2tleV1baW5kZXhdLFxuICAgICAgICAgICAgICAgIGRhdGFSZWZlcmVuY2U6IHJlc3VsdGluZ0RvYyxcbiAgICAgICAgICAgICAgICBkZXB0aDogcG9wdWxhdGVEZXB0aCxcbiAgICAgICAgICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgICAgICBrZXksXG4gICAgICAgICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcm93UHJvbWlzZXMucHVzaChyb3dQcm9taXNlKCkpXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoc2libGluZ0RvY1tmaWVsZC5uYW1lXSkpIHtcbiAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0uZm9yRWFjaCgocmVsYXRlZERvYywgaW5kZXgpID0+IHtcbiAgICAgICAgY29uc3Qgcm93UHJvbWlzZSA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgICBpZiAocmVsYXRlZERvYykge1xuICAgICAgICAgICAgYXdhaXQgcG9wdWxhdGUoe1xuICAgICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICAgIGRhdGE6IHJlbGF0ZWREb2MsXG4gICAgICAgICAgICAgIGRhdGFSZWZlcmVuY2U6IHJlc3VsdGluZ0RvYyxcbiAgICAgICAgICAgICAgZGVwdGg6IHBvcHVsYXRlRGVwdGgsXG4gICAgICAgICAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICAgIGxvY2FsZSxcbiAgICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcm93UHJvbWlzZXMucHVzaChyb3dQcm9taXNlKCkpXG4gICAgICB9KVxuICAgIH1cbiAgfSBlbHNlIGlmIChcbiAgICB0eXBlb2Ygc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9PT0gJ29iamVjdCcgJiZcbiAgICBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSBudWxsICYmXG4gICAgbG9jYWxlID09PSAnYWxsJ1xuICApIHtcbiAgICBPYmplY3Qua2V5cyhzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGNvbnN0IHJvd1Byb21pc2UgPSBhc3luYyAoKSA9PiB7XG4gICAgICAgIGF3YWl0IHBvcHVsYXRlKHtcbiAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgZGF0YTogc2libGluZ0RvY1tmaWVsZC5uYW1lXVtrZXldLFxuICAgICAgICAgIGRhdGFSZWZlcmVuY2U6IHJlc3VsdGluZ0RvYyxcbiAgICAgICAgICBkZXB0aDogcG9wdWxhdGVEZXB0aCxcbiAgICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICBrZXksXG4gICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgcm93UHJvbWlzZXMucHVzaChyb3dQcm9taXNlKCkpXG4gICAgfSlcblxuICAgIGF3YWl0IFByb21pc2UuYWxsKHJvd1Byb21pc2VzKVxuICB9IGVsc2UgaWYgKHNpYmxpbmdEb2NbZmllbGQubmFtZV0pIHtcbiAgICBhd2FpdCBwb3B1bGF0ZSh7XG4gICAgICBjdXJyZW50RGVwdGgsXG4gICAgICBkYXRhOiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdLFxuICAgICAgZGF0YVJlZmVyZW5jZTogcmVzdWx0aW5nRG9jLFxuICAgICAgZGVwdGg6IHBvcHVsYXRlRGVwdGgsXG4gICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgIGZpZWxkLFxuICAgICAgbG9jYWxlLFxuICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICByZXEsXG4gICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgIH0pXG4gIH1cbiAgYXdhaXQgUHJvbWlzZS5hbGwocm93UHJvbWlzZXMpXG59XG4iXSwibmFtZXMiOlsiZmllbGRIYXNNYXhEZXB0aCIsImZpZWxkU3VwcG9ydHNNYW55IiwicG9wdWxhdGUiLCJjdXJyZW50RGVwdGgiLCJkYXRhIiwiZGF0YVJlZmVyZW5jZSIsImRlcHRoIiwiZmFsbGJhY2tMb2NhbGUiLCJmaWVsZCIsImluZGV4Iiwia2V5IiwibG9jYWxlIiwib3ZlcnJpZGVBY2Nlc3MiLCJyZXEiLCJzaG93SGlkZGVuRmllbGRzIiwiZGF0YVRvVXBkYXRlIiwicmVsYXRpb24iLCJBcnJheSIsImlzQXJyYXkiLCJyZWxhdGlvblRvIiwicmVsYXRlZENvbGxlY3Rpb24iLCJwYXlsb2FkIiwiY29sbGVjdGlvbnMiLCJpZCIsInZhbHVlIiwicmVsYXRpb25zaGlwVmFsdWUiLCJzaG91bGRQb3B1bGF0ZSIsInRvU3RyaW5nIiwicGF5bG9hZERhdGFMb2FkZXIiLCJsb2FkIiwiSlNPTiIsInN0cmluZ2lmeSIsInRyYW5zYWN0aW9uSUQiLCJjb25maWciLCJzbHVnIiwibmFtZSIsInJlbGF0aW9uc2hpcFBvcHVsYXRpb25Qcm9taXNlIiwic2libGluZ0RvYyIsInJlc3VsdGluZ0RvYyIsInBvcHVsYXRlRGVwdGgiLCJtYXhEZXB0aCIsInJvd1Byb21pc2VzIiwiaGFzTWFueSIsIk9iamVjdCIsImtleXMiLCJmb3JFYWNoIiwicmVsYXRlZERvYyIsInJvd1Byb21pc2UiLCJwdXNoIiwiUHJvbWlzZSIsImFsbCJdLCJtYXBwaW5ncyI6IkFBR0EsU0FBU0EsZ0JBQWdCLEVBQUVDLGlCQUFpQixRQUFRLHdCQUF1QjtBQWlCM0UsTUFBTUMsV0FBVyxPQUFPLEVBQ3RCQyxZQUFZLEVBQ1pDLElBQUksRUFDSkMsYUFBYSxFQUNiQyxLQUFLLEVBQ0xDLGNBQWMsRUFDZEMsS0FBSyxFQUNMQyxLQUFLLEVBQ0xDLEdBQUcsRUFDSEMsTUFBTSxFQUNOQyxjQUFjLEVBQ2RDLEdBQUcsRUFDSEMsZ0JBQWdCLEVBQ0g7SUFDYixNQUFNQyxlQUFlVjtJQUNyQixNQUFNVyxXQUFXQyxNQUFNQyxPQUFPLENBQUNWLE1BQU1XLFVBQVUsSUFBS2YsS0FBS2UsVUFBVSxHQUFjWCxNQUFNVyxVQUFVO0lBQ2pHLE1BQU1DLG9CQUFvQlAsSUFBSVEsT0FBTyxDQUFDQyxXQUFXLENBQUNOLFNBQVM7SUFFM0QsSUFBSUksbUJBQW1CO1FBQ3JCLElBQUlHLEtBQUtOLE1BQU1DLE9BQU8sQ0FBQ1YsTUFBTVcsVUFBVSxJQUFJZixLQUFLb0IsS0FBSyxHQUFHcEI7UUFDeEQsSUFBSXFCO1FBQ0osTUFBTUMsaUJBQWlCcEIsU0FBU0gsZ0JBQWdCRztRQUVoRCxJQUNFLE9BQU9pQixPQUFPLFlBQ2QsT0FB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
@@ -1,7 +1,7 @@
1
- import type { SanitizedCollectionConfig } from '../../../collections/config/types';
2
- import type { SanitizedGlobalConfig } from '../../../globals/config/types';
3
- import type { PayloadRequest, RequestContext } from '../../../types';
4
- import type { Field, TabAsField } from '../../config/types';
1
+ import type { SanitizedCollectionConfig } from '../../../collections/config/types.d.ts';
2
+ import type { SanitizedGlobalConfig } from '../../../globals/config/types.d.ts';
3
+ import type { PayloadRequest, RequestContext } from '../../../types/index.d.ts';
4
+ import type { Field, TabAsField } from '../../config/types.d.ts';
5
5
  type Args = {
6
6
  collection: SanitizedCollectionConfig | null;
7
7
  context: RequestContext;
@@ -1 +1 @@
1
- {"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterRead/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpE,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAI3D,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IAC9B,MAAM,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE,CAAA;IAC9B,QAAQ,EAAE,OAAO,CAAA;IACjB,cAAc,EAAE,OAAO,CAAA;IACvB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,MAAM,EAAE,IAAI,GAAG,MAAM,CAAA;IACrB,cAAc,EAAE,OAAO,CAAA;IACvB,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACnC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;IACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,cAAc,mPAoBxB,IAAI,KAAG,IA0BT,CAAA"}
1
+ {"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterRead/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC/E,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAIhE,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IAC9B,MAAM,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE,CAAA;IAC9B,QAAQ,EAAE,OAAO,CAAA;IACjB,cAAc,EAAE,OAAO,CAAA;IACvB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,MAAM,EAAE,IAAI,GAAG,MAAM,CAAA;IACrB,cAAc,EAAE,OAAO,CAAA;IACvB,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACnC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;IACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,cAAc,mPAoBxB,IAAI,KAAG,IA0BT,CAAA"}
@@ -1,17 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "traverseFields", {
6
- enumerable: true,
7
- get: function() {
8
- return traverseFields;
9
- }
10
- });
11
- const _promise = require("./promise");
12
- const traverseFields = ({ collection, context, currentDepth, depth, doc, fallbackLocale, fieldPromises, fields, findMany, flattenLocales, global, locale, overrideAccess, populationPromises, req, showHiddenFields, siblingDoc, triggerAccessControl = true, triggerHooks = true })=>{
1
+ import { promise } from './promise.js';
2
+ export const traverseFields = ({ collection, context, currentDepth, depth, doc, fallbackLocale, fieldPromises, fields, findMany, flattenLocales, global, locale, overrideAccess, populationPromises, req, showHiddenFields, siblingDoc, triggerAccessControl = true, triggerHooks = true })=>{
13
3
  fields.forEach((field)=>{
14
- fieldPromises.push((0, _promise.promise)({
4
+ fieldPromises.push(promise({
15
5
  collection,
16
6
  context,
17
7
  currentDepth,
@@ -35,4 +25,4 @@ const traverseFields = ({ collection, context, currentDepth, depth, doc, fallbac
35
25
  });
36
26
  };
37
27
 
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJSZWFkL3RyYXZlcnNlRmllbGRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcydcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkR2xvYmFsQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vZ2xvYmFscy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0LCBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBGaWVsZCwgVGFiQXNGaWVsZCB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcydcblxuaW1wb3J0IHsgcHJvbWlzZSB9IGZyb20gJy4vcHJvbWlzZSdcblxudHlwZSBBcmdzID0ge1xuICBjb2xsZWN0aW9uOiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIHwgbnVsbFxuICBjb250ZXh0OiBSZXF1ZXN0Q29udGV4dFxuICBjdXJyZW50RGVwdGg6IG51bWJlclxuICBkZXB0aDogbnVtYmVyXG4gIGRvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgZmFsbGJhY2tMb2NhbGU6IG51bGwgfCBzdHJpbmdcbiAgZmllbGRQcm9taXNlczogUHJvbWlzZTx2b2lkPltdXG4gIGZpZWxkczogKEZpZWxkIHwgVGFiQXNGaWVsZClbXVxuICBmaW5kTWFueTogYm9vbGVhblxuICBmbGF0dGVuTG9jYWxlczogYm9vbGVhblxuICBnbG9iYWw6IFNhbml0aXplZEdsb2JhbENvbmZpZyB8IG51bGxcbiAgbG9jYWxlOiBudWxsIHwgc3RyaW5nXG4gIG92ZXJyaWRlQWNjZXNzOiBib29sZWFuXG4gIHBvcHVsYXRpb25Qcm9taXNlczogUHJvbWlzZTx2b2lkPltdXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkczogYm9vbGVhblxuICBzaWJsaW5nRG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICB0cmlnZ2VyQWNjZXNzQ29udHJvbD86IGJvb2xlYW5cbiAgdHJpZ2dlckhvb2tzPzogYm9vbGVhblxufVxuXG5leHBvcnQgY29uc3QgdHJhdmVyc2VGaWVsZHMgPSAoe1xuICBjb2xsZWN0aW9uLFxuICBjb250ZXh0LFxuICBjdXJyZW50RGVwdGgsXG4gIGRlcHRoLFxuICBkb2MsXG4gIGZhbGxiYWNrTG9jYWxlLFxuICBmaWVsZFByb21pc2VzLFxuICBmaWVsZHMsXG4gIGZpbmRNYW55LFxuICBmbGF0dGVuTG9jYWxlcyxcbiAgZ2xvYmFsLFxuICBsb2NhbGUsXG4gIG92ZXJyaWRlQWNjZXNzLFxuICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gIHJlcSxcbiAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgc2libGluZ0RvYyxcbiAgdHJpZ2dlckFjY2Vzc0NvbnRyb2wgPSB0cnVlLFxuICB0cmlnZ2VySG9va3MgPSB0cnVlLFxufTogQXJncyk6IHZvaWQgPT4ge1xuICBmaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICBmaWVsZFByb21pc2VzLnB1c2goXG4gICAgICBwcm9taXNlKHtcbiAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICBkZXB0aCxcbiAgICAgICAgZG9jLFxuICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgZmllbGQsXG4gICAgICAgIGZpZWxkUHJvbWlzZXMsXG4gICAgICAgIGZpbmRNYW55LFxuICAgICAgICBmbGF0dGVuTG9jYWxlcyxcbiAgICAgICAgZ2xvYmFsLFxuICAgICAgICBsb2NhbGUsXG4gICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgc2libGluZ0RvYyxcbiAgICAgICAgdHJpZ2dlckFjY2Vzc0NvbnRyb2wsXG4gICAgICAgIHRyaWdnZXJIb29rcyxcbiAgICAgIH0pLFxuICAgIClcbiAgfSlcbn1cbiJdLCJuYW1lcyI6WyJ0cmF2ZXJzZUZpZWxkcyIsImNvbGxlY3Rpb24iLCJjb250ZXh0IiwiY3VycmVudERlcHRoIiwiZGVwdGgiLCJkb2MiLCJmYWxsYmFja0xvY2FsZSIsImZpZWxkUHJvbWlzZXMiLCJmaWVsZHMiLCJmaW5kTWFueSIsImZsYXR0ZW5Mb2NhbGVzIiwiZ2xvYmFsIiwibG9jYWxlIiwib3ZlcnJpZGVBY2Nlc3MiLCJwb3B1bGF0aW9uUHJvbWlzZXMiLCJyZXEiLCJzaG93SGlkZGVuRmllbGRzIiwic2libGluZ0RvYyIsInRyaWdnZXJBY2Nlc3NDb250cm9sIiwidHJpZ2dlckhvb2tzIiwiZm9yRWFjaCIsImZpZWxkIiwicHVzaCIsInByb21pc2UiXSwibWFwcGluZ3MiOiI7Ozs7K0JBNkJhQTs7O2VBQUFBOzs7eUJBeEJXO0FBd0JqQixNQUFNQSxpQkFBaUIsQ0FBQyxFQUM3QkMsVUFBVSxFQUNWQyxPQUFPLEVBQ1BDLFlBQVksRUFDWkMsS0FBSyxFQUNMQyxHQUFHLEVBQ0hDLGNBQWMsRUFDZEMsYUFBYSxFQUNiQyxNQUFNLEVBQ05DLFFBQVEsRUFDUkMsY0FBYyxFQUNkQyxNQUFNLEVBQ05DLE1BQU0sRUFDTkMsY0FBYyxFQUNkQyxrQkFBa0IsRUFDbEJDLEdBQUcsRUFDSEMsZ0JBQWdCLEVBQ2hCQyxVQUFVLEVBQ1ZDLHVCQUF1QixJQUFJLEVBQzNCQyxlQUFlLElBQUksRUFDZDtJQUNMWCxPQUFPWSxPQUFPLENBQUMsQ0FBQ0M7UUFDZGQsY0FBY2UsSUFBSSxDQUNoQkMsSUFBQUEsZ0JBQU8sRUFBQztZQUNOdEI7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQWU7WUFDQWQ7WUFDQUU7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQUM7WUFDQUM7UUFDRjtJQUVKO0FBQ0YifQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJSZWFkL3RyYXZlcnNlRmllbGRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcy5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRHbG9iYWxDb25maWcgfSBmcm9tICcuLi8uLi8uLi9nbG9iYWxzL2NvbmZpZy90eXBlcy5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCwgUmVxdWVzdENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9pbmRleC5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBGaWVsZCwgVGFiQXNGaWVsZCB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcy5kLnRzJ1xuXG5pbXBvcnQgeyBwcm9taXNlIH0gZnJvbSAnLi9wcm9taXNlLmpzJ1xuXG50eXBlIEFyZ3MgPSB7XG4gIGNvbGxlY3Rpb246IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfCBudWxsXG4gIGNvbnRleHQ6IFJlcXVlc3RDb250ZXh0XG4gIGN1cnJlbnREZXB0aDogbnVtYmVyXG4gIGRlcHRoOiBudW1iZXJcbiAgZG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBmYWxsYmFja0xvY2FsZTogbnVsbCB8IHN0cmluZ1xuICBmaWVsZFByb21pc2VzOiBQcm9taXNlPHZvaWQ+W11cbiAgZmllbGRzOiAoRmllbGQgfCBUYWJBc0ZpZWxkKVtdXG4gIGZpbmRNYW55OiBib29sZWFuXG4gIGZsYXR0ZW5Mb2NhbGVzOiBib29sZWFuXG4gIGdsb2JhbDogU2FuaXRpemVkR2xvYmFsQ29uZmlnIHwgbnVsbFxuICBsb2NhbGU6IG51bGwgfCBzdHJpbmdcbiAgb3ZlcnJpZGVBY2Nlc3M6IGJvb2xlYW5cbiAgcG9wdWxhdGlvblByb21pc2VzOiBQcm9taXNlPHZvaWQ+W11cbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxuICBzaG93SGlkZGVuRmllbGRzOiBib29sZWFuXG4gIHNpYmxpbmdEb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIHRyaWdnZXJBY2Nlc3NDb250cm9sPzogYm9vbGVhblxuICB0cmlnZ2VySG9va3M/OiBib29sZWFuXG59XG5cbmV4cG9ydCBjb25zdCB0cmF2ZXJzZUZpZWxkcyA9ICh7XG4gIGNvbGxlY3Rpb24sXG4gIGNvbnRleHQsXG4gIGN1cnJlbnREZXB0aCxcbiAgZGVwdGgsXG4gIGRvYyxcbiAgZmFsbGJhY2tMb2NhbGUsXG4gIGZpZWxkUHJvbWlzZXMsXG4gIGZpZWxkcyxcbiAgZmluZE1hbnksXG4gIGZsYXR0ZW5Mb2NhbGVzLFxuICBnbG9iYWwsXG4gIGxvY2FsZSxcbiAgb3ZlcnJpZGVBY2Nlc3MsXG4gIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgcmVxLFxuICBzaG93SGlkZGVuRmllbGRzLFxuICBzaWJsaW5nRG9jLFxuICB0cmlnZ2VyQWNjZXNzQ29udHJvbCA9IHRydWUsXG4gIHRyaWdnZXJIb29rcyA9IHRydWUsXG59OiBBcmdzKTogdm9pZCA9PiB7XG4gIGZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgIGZpZWxkUHJvbWlzZXMucHVzaChcbiAgICAgIHByb21pc2Uoe1xuICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgIGRlcHRoLFxuICAgICAgICBkb2MsXG4gICAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgICBmaWVsZCxcbiAgICAgICAgZmllbGRQcm9taXNlcyxcbiAgICAgICAgZmluZE1hbnksXG4gICAgICAgIGZsYXR0ZW5Mb2NhbGVzLFxuICAgICAgICBnbG9iYWwsXG4gICAgICAgIGxvY2FsZSxcbiAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICBzaWJsaW5nRG9jLFxuICAgICAgICB0cmlnZ2VyQWNjZXNzQ29udHJvbCxcbiAgICAgICAgdHJpZ2dlckhvb2tzLFxuICAgICAgfSksXG4gICAgKVxuICB9KVxufVxuIl0sIm5hbWVzIjpbInByb21pc2UiLCJ0cmF2ZXJzZUZpZWxkcyIsImNvbGxlY3Rpb24iLCJjb250ZXh0IiwiY3VycmVudERlcHRoIiwiZGVwdGgiLCJkb2MiLCJmYWxsYmFja0xvY2FsZSIsImZpZWxkUHJvbWlzZXMiLCJmaWVsZHMiLCJmaW5kTWFueSIsImZsYXR0ZW5Mb2NhbGVzIiwiZ2xvYmFsIiwibG9jYWxlIiwib3ZlcnJpZGVBY2Nlc3MiLCJwb3B1bGF0aW9uUHJvbWlzZXMiLCJyZXEiLCJzaG93SGlkZGVuRmllbGRzIiwic2libGluZ0RvYyIsInRyaWdnZXJBY2Nlc3NDb250cm9sIiwidHJpZ2dlckhvb2tzIiwiZm9yRWFjaCIsImZpZWxkIiwicHVzaCJdLCJtYXBwaW5ncyI6IkFBS0EsU0FBU0EsT0FBTyxRQUFRLGVBQWM7QUF3QnRDLE9BQU8sTUFBTUMsaUJBQWlCLENBQUMsRUFDN0JDLFVBQVUsRUFDVkMsT0FBTyxFQUNQQyxZQUFZLEVBQ1pDLEtBQUssRUFDTEMsR0FBRyxFQUNIQyxjQUFjLEVBQ2RDLGFBQWEsRUFDYkMsTUFBTSxFQUNOQyxRQUFRLEVBQ1JDLGNBQWMsRUFDZEMsTUFBTSxFQUNOQyxNQUFNLEVBQ05DLGNBQWMsRUFDZEMsa0JBQWtCLEVBQ2xCQyxHQUFHLEVBQ0hDLGdCQUFnQixFQUNoQkMsVUFBVSxFQUNWQyx1QkFBdUIsSUFBSSxFQUMzQkMsZUFBZSxJQUFJLEVBQ2Q7SUFDTFgsT0FBT1ksT0FBTyxDQUFDLENBQUNDO1FBQ2RkLGNBQWNlLElBQUksQ0FDaEJ2QixRQUFRO1lBQ05FO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FlO1lBQ0FkO1lBQ0FFO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1FBQ0Y7SUFFSjtBQUNGLEVBQUMifQ==
@@ -1,14 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "cloneDataFromOriginalDoc", {
6
- enumerable: true,
7
- get: function() {
8
- return cloneDataFromOriginalDoc;
9
- }
10
- });
11
- const cloneDataFromOriginalDoc = (originalDocData)=>{
1
+ export const cloneDataFromOriginalDoc = (originalDocData)=>{
12
2
  if (Array.isArray(originalDocData)) {
13
3
  return originalDocData.map((row)=>{
14
4
  if (typeof row === 'object' && row != null) {
@@ -27,4 +17,4 @@ const cloneDataFromOriginalDoc = (originalDocData)=>{
27
17
  return originalDocData;
28
18
  };
29
19
 
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL2Nsb25lRGF0YUZyb21PcmlnaW5hbERvYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgY2xvbmVEYXRhRnJvbU9yaWdpbmFsRG9jID0gKG9yaWdpbmFsRG9jRGF0YTogdW5rbm93bik6IHVua25vd24gPT4ge1xuICBpZiAoQXJyYXkuaXNBcnJheShvcmlnaW5hbERvY0RhdGEpKSB7XG4gICAgcmV0dXJuIG9yaWdpbmFsRG9jRGF0YS5tYXAoKHJvdykgPT4ge1xuICAgICAgaWYgKHR5cGVvZiByb3cgPT09ICdvYmplY3QnICYmIHJvdyAhPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4ucm93LFxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByb3dcbiAgICB9KVxuICB9XG5cbiAgaWYgKHR5cGVvZiBvcmlnaW5hbERvY0RhdGEgPT09ICdvYmplY3QnICYmIG9yaWdpbmFsRG9jRGF0YSAhPT0gbnVsbCkge1xuICAgIHJldHVybiB7IC4uLm9yaWdpbmFsRG9jRGF0YSB9XG4gIH1cblxuICByZXR1cm4gb3JpZ2luYWxEb2NEYXRhXG59XG4iXSwibmFtZXMiOlsiY2xvbmVEYXRhRnJvbU9yaWdpbmFsRG9jIiwib3JpZ2luYWxEb2NEYXRhIiwiQXJyYXkiLCJpc0FycmF5IiwibWFwIiwicm93Il0sIm1hcHBpbmdzIjoiOzs7OytCQUFhQTs7O2VBQUFBOzs7QUFBTixNQUFNQSwyQkFBMkIsQ0FBQ0M7SUFDdkMsSUFBSUMsTUFBTUMsT0FBTyxDQUFDRixrQkFBa0I7UUFDbEMsT0FBT0EsZ0JBQWdCRyxHQUFHLENBQUMsQ0FBQ0M7WUFDMUIsSUFBSSxPQUFPQSxRQUFRLFlBQVlBLE9BQU8sTUFBTTtnQkFDMUMsT0FBTztvQkFDTCxHQUFHQSxHQUFHO2dCQUNSO1lBQ0Y7WUFFQSxPQUFPQTtRQUNUO0lBQ0Y7SUFFQSxJQUFJLE9BQU9KLG9CQUFvQixZQUFZQSxvQkFBb0IsTUFBTTtRQUNuRSxPQUFPO1lBQUUsR0FBR0EsZUFBZTtRQUFDO0lBQzlCO0lBRUEsT0FBT0E7QUFDVCJ9
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL2Nsb25lRGF0YUZyb21PcmlnaW5hbERvYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgY2xvbmVEYXRhRnJvbU9yaWdpbmFsRG9jID0gKG9yaWdpbmFsRG9jRGF0YTogdW5rbm93bik6IHVua25vd24gPT4ge1xuICBpZiAoQXJyYXkuaXNBcnJheShvcmlnaW5hbERvY0RhdGEpKSB7XG4gICAgcmV0dXJuIG9yaWdpbmFsRG9jRGF0YS5tYXAoKHJvdykgPT4ge1xuICAgICAgaWYgKHR5cGVvZiByb3cgPT09ICdvYmplY3QnICYmIHJvdyAhPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4ucm93LFxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByb3dcbiAgICB9KVxuICB9XG5cbiAgaWYgKHR5cGVvZiBvcmlnaW5hbERvY0RhdGEgPT09ICdvYmplY3QnICYmIG9yaWdpbmFsRG9jRGF0YSAhPT0gbnVsbCkge1xuICAgIHJldHVybiB7IC4uLm9yaWdpbmFsRG9jRGF0YSB9XG4gIH1cblxuICByZXR1cm4gb3JpZ2luYWxEb2NEYXRhXG59XG4iXSwibmFtZXMiOlsiY2xvbmVEYXRhRnJvbU9yaWdpbmFsRG9jIiwib3JpZ2luYWxEb2NEYXRhIiwiQXJyYXkiLCJpc0FycmF5IiwibWFwIiwicm93Il0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU1BLDJCQUEyQixDQUFDQztJQUN2QyxJQUFJQyxNQUFNQyxPQUFPLENBQUNGLGtCQUFrQjtRQUNsQyxPQUFPQSxnQkFBZ0JHLEdBQUcsQ0FBQyxDQUFDQztZQUMxQixJQUFJLE9BQU9BLFFBQVEsWUFBWUEsT0FBTyxNQUFNO2dCQUMxQyxPQUFPO29CQUNMLEdBQUdBLEdBQUc7Z0JBQ1I7WUFDRjtZQUVBLE9BQU9BO1FBQ1Q7SUFDRjtJQUVBLElBQUksT0FBT0osb0JBQW9CLFlBQVlBLG9CQUFvQixNQUFNO1FBQ25FLE9BQU87WUFBRSxHQUFHQSxlQUFlO1FBQUM7SUFDOUI7SUFFQSxPQUFPQTtBQUNULEVBQUMifQ==
@@ -3,17 +3,7 @@
3
3
  * and it matches the existing sibling doc id,
4
4
  * this is an existing row, so it should be merged.
5
5
  * Otherwise, return an empty object.
6
- */ "use strict";
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- Object.defineProperty(exports, "getExistingRowDoc", {
11
- enumerable: true,
12
- get: function() {
13
- return getExistingRowDoc;
14
- }
15
- });
16
- const getExistingRowDoc = (incomingRow, existingRows)=>{
6
+ */ export const getExistingRowDoc = (incomingRow, existingRows)=>{
17
7
  if (incomingRow.id && Array.isArray(existingRows)) {
18
8
  const matchedExistingRow = existingRows.find((existingRow)=>{
19
9
  if (typeof existingRow === 'object' && 'id' in existingRow) {
@@ -26,4 +16,4 @@ const getExistingRowDoc = (incomingRow, existingRows)=>{
26
16
  return {};
27
17
  };
28
18
 
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL2dldEV4aXN0aW5nUm93RG9jLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSWYgdGhlcmUgaXMgYW4gaW5jb21pbmcgcm93IGlkLFxuICogYW5kIGl0IG1hdGNoZXMgdGhlIGV4aXN0aW5nIHNpYmxpbmcgZG9jIGlkLFxuICogdGhpcyBpcyBhbiBleGlzdGluZyByb3csIHNvIGl0IHNob3VsZCBiZSBtZXJnZWQuXG4gKiBPdGhlcndpc2UsIHJldHVybiBhbiBlbXB0eSBvYmplY3QuXG4gKi9cblxuZXhwb3J0IGNvbnN0IGdldEV4aXN0aW5nUm93RG9jID0gKFxuICBpbmNvbWluZ1JvdzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIGV4aXN0aW5nUm93cz86IHVua25vd24sXG4pOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9PiB7XG4gIGlmIChpbmNvbWluZ1Jvdy5pZCAmJiBBcnJheS5pc0FycmF5KGV4aXN0aW5nUm93cykpIHtcbiAgICBjb25zdCBtYXRjaGVkRXhpc3RpbmdSb3cgPSBleGlzdGluZ1Jvd3MuZmluZCgoZXhpc3RpbmdSb3cpID0+IHtcbiAgICAgIGlmICh0eXBlb2YgZXhpc3RpbmdSb3cgPT09ICdvYmplY3QnICYmICdpZCcgaW4gZXhpc3RpbmdSb3cpIHtcbiAgICAgICAgaWYgKGV4aXN0aW5nUm93LmlkID09PSBpbmNvbWluZ1Jvdy5pZCkgcmV0dXJuIGV4aXN0aW5nUm93XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH0pXG5cbiAgICBpZiAobWF0Y2hlZEV4aXN0aW5nUm93KSByZXR1cm4gbWF0Y2hlZEV4aXN0aW5nUm93XG4gIH1cblxuICByZXR1cm4ge31cbn1cbiJdLCJuYW1lcyI6WyJnZXRFeGlzdGluZ1Jvd0RvYyIsImluY29taW5nUm93IiwiZXhpc3RpbmdSb3dzIiwiaWQiLCJBcnJheSIsImlzQXJyYXkiLCJtYXRjaGVkRXhpc3RpbmdSb3ciLCJmaW5kIiwiZXhpc3RpbmdSb3ciXSwibWFwcGluZ3MiOiJBQUFBOzs7OztDQUtDOzs7OytCQUVZQTs7O2VBQUFBOzs7QUFBTixNQUFNQSxvQkFBb0IsQ0FDL0JDLGFBQ0FDO0lBRUEsSUFBSUQsWUFBWUUsRUFBRSxJQUFJQyxNQUFNQyxPQUFPLENBQUNILGVBQWU7UUFDakQsTUFBTUkscUJBQXFCSixhQUFhSyxJQUFJLENBQUMsQ0FBQ0M7WUFDNUMsSUFBSSxPQUFPQSxnQkFBZ0IsWUFBWSxRQUFRQSxhQUFhO2dCQUMxRCxJQUFJQSxZQUFZTCxFQUFFLEtBQUtGLFlBQVlFLEVBQUUsRUFBRSxPQUFPSztZQUNoRDtZQUVBLE9BQU87UUFDVDtRQUVBLElBQUlGLG9CQUFvQixPQUFPQTtJQUNqQztJQUVBLE9BQU8sQ0FBQztBQUNWIn0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL2dldEV4aXN0aW5nUm93RG9jLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSWYgdGhlcmUgaXMgYW4gaW5jb21pbmcgcm93IGlkLFxuICogYW5kIGl0IG1hdGNoZXMgdGhlIGV4aXN0aW5nIHNpYmxpbmcgZG9jIGlkLFxuICogdGhpcyBpcyBhbiBleGlzdGluZyByb3csIHNvIGl0IHNob3VsZCBiZSBtZXJnZWQuXG4gKiBPdGhlcndpc2UsIHJldHVybiBhbiBlbXB0eSBvYmplY3QuXG4gKi9cblxuZXhwb3J0IGNvbnN0IGdldEV4aXN0aW5nUm93RG9jID0gKFxuICBpbmNvbWluZ1JvdzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIGV4aXN0aW5nUm93cz86IHVua25vd24sXG4pOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9PiB7XG4gIGlmIChpbmNvbWluZ1Jvdy5pZCAmJiBBcnJheS5pc0FycmF5KGV4aXN0aW5nUm93cykpIHtcbiAgICBjb25zdCBtYXRjaGVkRXhpc3RpbmdSb3cgPSBleGlzdGluZ1Jvd3MuZmluZCgoZXhpc3RpbmdSb3cpID0+IHtcbiAgICAgIGlmICh0eXBlb2YgZXhpc3RpbmdSb3cgPT09ICdvYmplY3QnICYmICdpZCcgaW4gZXhpc3RpbmdSb3cpIHtcbiAgICAgICAgaWYgKGV4aXN0aW5nUm93LmlkID09PSBpbmNvbWluZ1Jvdy5pZCkgcmV0dXJuIGV4aXN0aW5nUm93XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH0pXG5cbiAgICBpZiAobWF0Y2hlZEV4aXN0aW5nUm93KSByZXR1cm4gbWF0Y2hlZEV4aXN0aW5nUm93XG4gIH1cblxuICByZXR1cm4ge31cbn1cbiJdLCJuYW1lcyI6WyJnZXRFeGlzdGluZ1Jvd0RvYyIsImluY29taW5nUm93IiwiZXhpc3RpbmdSb3dzIiwiaWQiLCJBcnJheSIsImlzQXJyYXkiLCJtYXRjaGVkRXhpc3RpbmdSb3ciLCJmaW5kIiwiZXhpc3RpbmdSb3ciXSwibWFwcGluZ3MiOiJBQUFBOzs7OztDQUtDLEdBRUQsT0FBTyxNQUFNQSxvQkFBb0IsQ0FDL0JDLGFBQ0FDO0lBRUEsSUFBSUQsWUFBWUUsRUFBRSxJQUFJQyxNQUFNQyxPQUFPLENBQUNILGVBQWU7UUFDakQsTUFBTUkscUJBQXFCSixhQUFhSyxJQUFJLENBQUMsQ0FBQ0M7WUFDNUMsSUFBSSxPQUFPQSxnQkFBZ0IsWUFBWSxRQUFRQSxhQUFhO2dCQUMxRCxJQUFJQSxZQUFZTCxFQUFFLEtBQUtGLFlBQVlFLEVBQUUsRUFBRSxPQUFPSztZQUNoRDtZQUVBLE9BQU87UUFDVDtRQUVBLElBQUlGLG9CQUFvQixPQUFPQTtJQUNqQztJQUVBLE9BQU8sQ0FBQztBQUNWLEVBQUMifQ==
@@ -1,7 +1,6 @@
1
- import type { SanitizedCollectionConfig } from '../../../collections/config/types';
2
- import type { SanitizedGlobalConfig } from '../../../globals/config/types';
3
- import type { PayloadRequest, RequestContext } from '../../../types';
4
- import type { Operation } from '../../../types';
1
+ import type { SanitizedCollectionConfig } from '../../../collections/config/types.d.ts';
2
+ import type { SanitizedGlobalConfig } from '../../../globals/config/types.d.ts';
3
+ import type { Operation, PayloadRequest, RequestContext } from '../../../types/index.d.ts';
5
4
  type Args<T> = {
6
5
  collection: SanitizedCollectionConfig | null;
7
6
  context: RequestContext;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/beforeChange/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAM/C,KAAK,IAAI,CAAC,CAAC,IAAI;IACb,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IACjC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IAChC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,SAAS,EAAE,SAAS,CAAA;IACpB,GAAG,EAAE,cAAc,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,YAAY,2KA2CxB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/beforeChange/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAM1F,KAAK,IAAI,CAAC,CAAC,IAAI;IACb,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IACjC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IAChC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,SAAS,EAAE,SAAS,CAAA;IACpB,GAAG,EAAE,cAAc,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,YAAY,2KA2CxB,CAAA"}
@@ -1,21 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "beforeChange", {
6
- enumerable: true,
7
- get: function() {
8
- return beforeChange;
9
- }
10
- });
11
- const _errors = require("../../../errors");
12
- const _deepCopyObject = require("../../../utilities/deepCopyObject");
13
- const _traverseFields = require("./traverseFields");
14
- const beforeChange = async ({ id, collection, context, data: incomingData, doc, docWithLocales, global, operation, req, skipValidation })=>{
15
- const data = (0, _deepCopyObject.deepCopyObject)(incomingData);
1
+ import { ValidationError } from '../../../errors/index.js';
2
+ import { deepCopyObject } from '../../../utilities/deepCopyObject.js';
3
+ import { traverseFields } from './traverseFields.js';
4
+ export const beforeChange = async ({ id, collection, context, data: incomingData, doc, docWithLocales, global, operation, req, skipValidation })=>{
5
+ const data = deepCopyObject(incomingData);
16
6
  const mergeLocaleActions = [];
17
7
  const errors = [];
18
- await (0, _traverseFields.traverseFields)({
8
+ await traverseFields({
19
9
  id,
20
10
  collection,
21
11
  context,
@@ -35,10 +25,10 @@ const beforeChange = async ({ id, collection, context, data: incomingData, doc,
35
25
  skipValidation
36
26
  });
37
27
  if (errors.length > 0) {
38
- throw new _errors.ValidationError(errors, req.t);
28
+ throw new ValidationError(errors, req.t);
39
29
  }
40
30
  mergeLocaleActions.forEach((action)=>action());
41
31
  return data;
42
32
  };
43
33
 
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcydcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkR2xvYmFsQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vZ2xvYmFscy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0LCBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBPcGVyYXRpb24gfSBmcm9tICcuLi8uLi8uLi90eXBlcydcblxuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi4vLi4vLi4vZXJyb3JzJ1xuaW1wb3J0IHsgZGVlcENvcHlPYmplY3QgfSBmcm9tICcuLi8uLi8uLi91dGlsaXRpZXMvZGVlcENvcHlPYmplY3QnXG5pbXBvcnQgeyB0cmF2ZXJzZUZpZWxkcyB9IGZyb20gJy4vdHJhdmVyc2VGaWVsZHMnXG5cbnR5cGUgQXJnczxUPiA9IHtcbiAgY29sbGVjdGlvbjogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB8IG51bGxcbiAgY29udGV4dDogUmVxdWVzdENvbnRleHRcbiAgZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBUXG4gIGRvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBUXG4gIGRvY1dpdGhMb2NhbGVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBnbG9iYWw6IFNhbml0aXplZEdsb2JhbENvbmZpZyB8IG51bGxcbiAgaWQ/OiBudW1iZXIgfCBzdHJpbmdcbiAgb3BlcmF0aW9uOiBPcGVyYXRpb25cbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxuICBza2lwVmFsaWRhdGlvbj86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGNvbnN0IGJlZm9yZUNoYW5nZSA9IGFzeW5jIDxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4+KHtcbiAgaWQsXG4gIGNvbGxlY3Rpb24sXG4gIGNvbnRleHQsXG4gIGRhdGE6IGluY29taW5nRGF0YSxcbiAgZG9jLFxuICBkb2NXaXRoTG9jYWxlcyxcbiAgZ2xvYmFsLFxuICBvcGVyYXRpb24sXG4gIHJlcSxcbiAgc2tpcFZhbGlkYXRpb24sXG59OiBBcmdzPFQ+KTogUHJvbWlzZTxUPiA9PiB7XG4gIGNvbnN0IGRhdGEgPSBkZWVwQ29weU9iamVjdChpbmNvbWluZ0RhdGEpXG4gIGNvbnN0IG1lcmdlTG9jYWxlQWN0aW9ucyA9IFtdXG4gIGNvbnN0IGVycm9yczogeyBmaWVsZDogc3RyaW5nOyBtZXNzYWdlOiBzdHJpbmcgfVtdID0gW11cblxuICBhd2FpdCB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgaWQsXG4gICAgY29sbGVjdGlvbixcbiAgICBjb250ZXh0LFxuICAgIGRhdGEsXG4gICAgZG9jLFxuICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgIGVycm9ycyxcbiAgICBmaWVsZHM6IGNvbGxlY3Rpb24/LmZpZWxkcyB8fCBnbG9iYWw/LmZpZWxkcyxcbiAgICBnbG9iYWwsXG4gICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgIG9wZXJhdGlvbixcbiAgICBwYXRoOiAnJyxcbiAgICByZXEsXG4gICAgc2libGluZ0RhdGE6IGRhdGEsXG4gICAgc2libGluZ0RvYzogZG9jLFxuICAgIHNpYmxpbmdEb2NXaXRoTG9jYWxlczogZG9jV2l0aExvY2FsZXMsXG4gICAgc2tpcFZhbGlkYXRpb24sXG4gIH0pXG5cbiAgaWYgKGVycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihlcnJvcnMsIHJlcS50KVxuICB9XG5cbiAgbWVyZ2VMb2NhbGVBY3Rpb25zLmZvckVhY2goKGFjdGlvbikgPT4gYWN0aW9uKCkpXG5cbiAgcmV0dXJuIGRhdGFcbn1cbiJdLCJuYW1lcyI6WyJiZWZvcmVDaGFuZ2UiLCJpZCIsImNvbGxlY3Rpb24iLCJjb250ZXh0IiwiZGF0YSIsImluY29taW5nRGF0YSIsImRvYyIsImRvY1dpdGhMb2NhbGVzIiwiZ2xvYmFsIiwib3BlcmF0aW9uIiwicmVxIiwic2tpcFZhbGlkYXRpb24iLCJkZWVwQ29weU9iamVjdCIsIm1lcmdlTG9jYWxlQWN0aW9ucyIsImVycm9ycyIsInRyYXZlcnNlRmllbGRzIiwiZmllbGRzIiwicGF0aCIsInNpYmxpbmdEYXRhIiwic2libGluZ0RvYyIsInNpYmxpbmdEb2NXaXRoTG9jYWxlcyIsImxlbmd0aCIsIlZhbGlkYXRpb25FcnJvciIsInQiLCJmb3JFYWNoIiwiYWN0aW9uIl0sIm1hcHBpbmdzIjoiOzs7OytCQXNCYUE7OztlQUFBQTs7O3dCQWpCbUI7Z0NBQ0Q7Z0NBQ0E7QUFleEIsTUFBTUEsZUFBZSxPQUEwQyxFQUNwRUMsRUFBRSxFQUNGQyxVQUFVLEVBQ1ZDLE9BQU8sRUFDUEMsTUFBTUMsWUFBWSxFQUNsQkMsR0FBRyxFQUNIQyxjQUFjLEVBQ2RDLE1BQU0sRUFDTkMsU0FBUyxFQUNUQyxHQUFHLEVBQ0hDLGNBQWMsRUFDTjtJQUNSLE1BQU1QLE9BQU9RLElBQUFBLDhCQUFjLEVBQUNQO0lBQzVCLE1BQU1RLHFCQUFxQixFQUFFO0lBQzdCLE1BQU1DLFNBQStDLEVBQUU7SUFFdkQsTUFBTUMsSUFBQUEsOEJBQWMsRUFBQztRQUNuQmQ7UUFDQUM7UUFDQUM7UUFDQUM7UUFDQUU7UUFDQUM7UUFDQU87UUFDQUUsUUFBUWQsWUFBWWMsVUFBVVIsUUFBUVE7UUFDdENSO1FBQ0FLO1FBQ0FKO1FBQ0FRLE1BQU07UUFDTlA7UUFDQVEsYUFBYWQ7UUFDYmUsWUFBWWI7UUFDWmMsdUJBQXVCYjtRQUN2Qkk7SUFDRjtJQUVBLElBQUlHLE9BQU9PLE1BQU0sR0FBRyxHQUFHO1FBQ3JCLE1BQU0sSUFBSUMsdUJBQWUsQ0FBQ1IsUUFBUUosSUFBSWEsQ0FBQztJQUN6QztJQUVBVixtQkFBbUJXLE9BQU8sQ0FBQyxDQUFDQyxTQUFXQTtJQUV2QyxPQUFPckI7QUFDVCJ9
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcy5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRHbG9iYWxDb25maWcgfSBmcm9tICcuLi8uLi8uLi9nbG9iYWxzL2NvbmZpZy90eXBlcy5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBPcGVyYXRpb24sIFBheWxvYWRSZXF1ZXN0LCBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2luZGV4LmQudHMnXG5cbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycy9pbmRleC5qcydcbmltcG9ydCB7IGRlZXBDb3B5T2JqZWN0IH0gZnJvbSAnLi4vLi4vLi4vdXRpbGl0aWVzL2RlZXBDb3B5T2JqZWN0LmpzJ1xuaW1wb3J0IHsgdHJhdmVyc2VGaWVsZHMgfSBmcm9tICcuL3RyYXZlcnNlRmllbGRzLmpzJ1xuXG50eXBlIEFyZ3M8VD4gPSB7XG4gIGNvbGxlY3Rpb246IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfCBudWxsXG4gIGNvbnRleHQ6IFJlcXVlc3RDb250ZXh0XG4gIGRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgVFxuICBkb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgVFxuICBkb2NXaXRoTG9jYWxlczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgZ2xvYmFsOiBTYW5pdGl6ZWRHbG9iYWxDb25maWcgfCBudWxsXG4gIGlkPzogbnVtYmVyIHwgc3RyaW5nXG4gIG9wZXJhdGlvbjogT3BlcmF0aW9uXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2tpcFZhbGlkYXRpb24/OiBib29sZWFuXG59XG5cbmV4cG9ydCBjb25zdCBiZWZvcmVDaGFuZ2UgPSBhc3luYyA8VCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+Pih7XG4gIGlkLFxuICBjb2xsZWN0aW9uLFxuICBjb250ZXh0LFxuICBkYXRhOiBpbmNvbWluZ0RhdGEsXG4gIGRvYyxcbiAgZG9jV2l0aExvY2FsZXMsXG4gIGdsb2JhbCxcbiAgb3BlcmF0aW9uLFxuICByZXEsXG4gIHNraXBWYWxpZGF0aW9uLFxufTogQXJnczxUPik6IFByb21pc2U8VD4gPT4ge1xuICBjb25zdCBkYXRhID0gZGVlcENvcHlPYmplY3QoaW5jb21pbmdEYXRhKVxuICBjb25zdCBtZXJnZUxvY2FsZUFjdGlvbnMgPSBbXVxuICBjb25zdCBlcnJvcnM6IHsgZmllbGQ6IHN0cmluZzsgbWVzc2FnZTogc3RyaW5nIH1bXSA9IFtdXG5cbiAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgIGlkLFxuICAgIGNvbGxlY3Rpb24sXG4gICAgY29udGV4dCxcbiAgICBkYXRhLFxuICAgIGRvYyxcbiAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICBlcnJvcnMsXG4gICAgZmllbGRzOiBjb2xsZWN0aW9uPy5maWVsZHMgfHwgZ2xvYmFsPy5maWVsZHMsXG4gICAgZ2xvYmFsLFxuICAgIG1lcmdlTG9jYWxlQWN0aW9ucyxcbiAgICBvcGVyYXRpb24sXG4gICAgcGF0aDogJycsXG4gICAgcmVxLFxuICAgIHNpYmxpbmdEYXRhOiBkYXRhLFxuICAgIHNpYmxpbmdEb2M6IGRvYyxcbiAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXM6IGRvY1dpdGhMb2NhbGVzLFxuICAgIHNraXBWYWxpZGF0aW9uLFxuICB9KVxuXG4gIGlmIChlcnJvcnMubGVuZ3RoID4gMCkge1xuICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoZXJyb3JzLCByZXEudClcbiAgfVxuXG4gIG1lcmdlTG9jYWxlQWN0aW9ucy5mb3JFYWNoKChhY3Rpb24pID0+IGFjdGlvbigpKVxuXG4gIHJldHVybiBkYXRhXG59XG4iXSwibmFtZXMiOlsiVmFsaWRhdGlvbkVycm9yIiwiZGVlcENvcHlPYmplY3QiLCJ0cmF2ZXJzZUZpZWxkcyIsImJlZm9yZUNoYW5nZSIsImlkIiwiY29sbGVjdGlvbiIsImNvbnRleHQiLCJkYXRhIiwiaW5jb21pbmdEYXRhIiwiZG9jIiwiZG9jV2l0aExvY2FsZXMiLCJnbG9iYWwiLCJvcGVyYXRpb24iLCJyZXEiLCJza2lwVmFsaWRhdGlvbiIsIm1lcmdlTG9jYWxlQWN0aW9ucyIsImVycm9ycyIsImZpZWxkcyIsInBhdGgiLCJzaWJsaW5nRGF0YSIsInNpYmxpbmdEb2MiLCJzaWJsaW5nRG9jV2l0aExvY2FsZXMiLCJsZW5ndGgiLCJ0IiwiZm9yRWFjaCIsImFjdGlvbiJdLCJtYXBwaW5ncyI6IkFBSUEsU0FBU0EsZUFBZSxRQUFRLDJCQUEwQjtBQUMxRCxTQUFTQyxjQUFjLFFBQVEsdUNBQXNDO0FBQ3JFLFNBQVNDLGNBQWMsUUFBUSxzQkFBcUI7QUFlcEQsT0FBTyxNQUFNQyxlQUFlLE9BQTBDLEVBQ3BFQyxFQUFFLEVBQ0ZDLFVBQVUsRUFDVkMsT0FBTyxFQUNQQyxNQUFNQyxZQUFZLEVBQ2xCQyxHQUFHLEVBQ0hDLGNBQWMsRUFDZEMsTUFBTSxFQUNOQyxTQUFTLEVBQ1RDLEdBQUcsRUFDSEMsY0FBYyxFQUNOO0lBQ1IsTUFBTVAsT0FBT04sZUFBZU87SUFDNUIsTUFBTU8scUJBQXFCLEVBQUU7SUFDN0IsTUFBTUMsU0FBK0MsRUFBRTtJQUV2RCxNQUFNZCxlQUFlO1FBQ25CRTtRQUNBQztRQUNBQztRQUNBQztRQUNBRTtRQUNBQztRQUNBTTtRQUNBQyxRQUFRWixZQUFZWSxVQUFVTixRQUFRTTtRQUN0Q047UUFDQUk7UUFDQUg7UUFDQU0sTUFBTTtRQUNOTDtRQUNBTSxhQUFhWjtRQUNiYSxZQUFZWDtRQUNaWSx1QkFBdUJYO1FBQ3ZCSTtJQUNGO0lBRUEsSUFBSUUsT0FBT00sTUFBTSxHQUFHLEdBQUc7UUFDckIsTUFBTSxJQUFJdEIsZ0JBQWdCZ0IsUUFBUUgsSUFBSVUsQ0FBQztJQUN6QztJQUVBUixtQkFBbUJTLE9BQU8sQ0FBQyxDQUFDQyxTQUFXQTtJQUV2QyxPQUFPbEI7QUFDVCxFQUFDIn0=
@@ -1,8 +1,7 @@
1
- import type { SanitizedCollectionConfig } from '../../../collections/config/types';
2
- import type { SanitizedGlobalConfig } from '../../../globals/config/types';
3
- import type { PayloadRequest, RequestContext } from '../../../types';
4
- import type { Operation } from '../../../types';
5
- import type { Field, TabAsField } from '../../config/types';
1
+ import type { SanitizedCollectionConfig } from '../../../collections/config/types.d.ts';
2
+ import type { SanitizedGlobalConfig } from '../../../globals/config/types.d.ts';
3
+ import type { Operation, PayloadRequest, RequestContext } from '../../../types/index.d.ts';
4
+ import type { Field, TabAsField } from '../../config/types.d.ts';
6
5
  type Args = {
7
6
  collection: SanitizedCollectionConfig | null;
8
7
  context: RequestContext;
@@ -1 +1 @@
1
- {"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/beforeChange/promise.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAM3D,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC5C,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,kBAAkB,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAA;IAClC,SAAS,EAAE,SAAS,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/C,cAAc,EAAE,OAAO,CAAA;CACxB,CAAA;AASD,eAAO,MAAM,OAAO,6LAkBjB,IAAI,KAAG,QAAQ,IAAI,CAyUrB,CAAA"}
1
+ {"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/beforeChange/promise.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1F,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAMhE,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC5C,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,kBAAkB,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAA;IAClC,SAAS,EAAE,SAAS,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/C,cAAc,EAAE,OAAO,CAAA;CACxB,CAAA;AASD,eAAO,MAAM,OAAO,6LAkBjB,IAAI,KAAG,QAAQ,IAAI,CAyUrB,CAAA"}
@@ -1,30 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "promise", {
6
- enumerable: true,
7
- get: function() {
8
- return promise;
9
- }
10
- });
11
- const _deepmerge = /*#__PURE__*/ _interop_require_default(require("deepmerge"));
12
- const _types = require("../../config/types");
13
- const _getExistingRowDoc = require("./getExistingRowDoc");
14
- const _traverseFields = require("./traverseFields");
15
- function _interop_require_default(obj) {
16
- return obj && obj.__esModule ? obj : {
17
- default: obj
18
- };
19
- }
20
- const promise = async ({ id, collection, context, data, doc, docWithLocales, errors, field, global, mergeLocaleActions, operation, path, req, siblingData, siblingDoc, siblingDocWithLocales, skipValidation })=>{
1
+ import merge from 'deepmerge';
2
+ import { fieldAffectsData, tabHasName } from '../../config/types.js';
3
+ import { getExistingRowDoc } from './getExistingRowDoc.js';
4
+ import { traverseFields } from './traverseFields.js';
5
+ // This function is responsible for the following actions, in order:
6
+ // - Run condition
7
+ // - Execute field hooks
8
+ // - Validate data
9
+ // - Transform data for storage
10
+ // - Unflatten locales
11
+ export const promise = async ({ id, collection, context, data, doc, docWithLocales, errors, field, global, mergeLocaleActions, operation, path, req, siblingData, siblingDoc, siblingDocWithLocales, skipValidation })=>{
21
12
  const passesCondition = field.admin?.condition ? Boolean(field.admin.condition(data, siblingData, {
22
13
  user: req.user
23
14
  })) : true;
24
15
  let skipValidationFromHere = skipValidation || !passesCondition;
25
16
  const defaultLocale = req.payload.config?.localization ? req.payload.config.localization?.defaultLocale : 'en';
26
17
  const operationLocale = req.locale || defaultLocale;
27
- if ((0, _types.fieldAffectsData)(field)) {
18
+ if (fieldAffectsData(field)) {
28
19
  // skip validation if the field is localized and the incoming data is null
29
20
  if (field.localized && operationLocale !== defaultLocale) {
30
21
  if ([
@@ -71,14 +62,14 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
71
62
  const validationResult = await field.validate(valueToValidate, {
72
63
  ...field,
73
64
  id,
74
- data: (0, _deepmerge.default)(doc, data, {
65
+ data: merge(doc, data, {
75
66
  arrayMerge: (_, source)=>source
76
67
  }),
77
68
  // @ts-expect-error-next-line
78
69
  jsonError,
79
70
  operation,
80
71
  req,
81
- siblingData: (0, _deepmerge.default)(siblingDoc, siblingData, {
72
+ siblingData: merge(siblingDoc, siblingData, {
82
73
  arrayMerge: (_, source)=>source
83
74
  })
84
75
  });
@@ -133,7 +124,7 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
133
124
  if (typeof siblingData[field.name] !== 'object') siblingData[field.name] = {};
134
125
  if (typeof siblingDoc[field.name] !== 'object') siblingDoc[field.name] = {};
135
126
  if (typeof siblingDocWithLocales[field.name] !== 'object') siblingDocWithLocales[field.name] = {};
136
- await (0, _traverseFields.traverseFields)({
127
+ await traverseFields({
137
128
  id,
138
129
  collection,
139
130
  context,
@@ -160,7 +151,7 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
160
151
  if (Array.isArray(rows)) {
161
152
  const promises = [];
162
153
  rows.forEach((row, i)=>{
163
- promises.push((0, _traverseFields.traverseFields)({
154
+ promises.push(traverseFields({
164
155
  id,
165
156
  collection,
166
157
  context,
@@ -175,8 +166,8 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
175
166
  path: `${path}${field.name}.${i}.`,
176
167
  req,
177
168
  siblingData: row,
178
- siblingDoc: (0, _getExistingRowDoc.getExistingRowDoc)(row, siblingDoc[field.name]),
179
- siblingDocWithLocales: (0, _getExistingRowDoc.getExistingRowDoc)(row, siblingDocWithLocales[field.name]),
169
+ siblingDoc: getExistingRowDoc(row, siblingDoc[field.name]),
170
+ siblingDocWithLocales: getExistingRowDoc(row, siblingDocWithLocales[field.name]),
180
171
  skipValidation: skipValidationFromHere
181
172
  }));
182
173
  });
@@ -190,12 +181,12 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
190
181
  if (Array.isArray(rows)) {
191
182
  const promises = [];
192
183
  rows.forEach((row, i)=>{
193
- const rowSiblingDoc = (0, _getExistingRowDoc.getExistingRowDoc)(row, siblingDoc[field.name]);
194
- const rowSiblingDocWithLocales = (0, _getExistingRowDoc.getExistingRowDoc)(row, siblingDocWithLocales[field.name]);
184
+ const rowSiblingDoc = getExistingRowDoc(row, siblingDoc[field.name]);
185
+ const rowSiblingDocWithLocales = getExistingRowDoc(row, siblingDocWithLocales[field.name]);
195
186
  const blockTypeToMatch = row.blockType || rowSiblingDoc.blockType;
196
187
  const block = field.blocks.find((blockType)=>blockType.slug === blockTypeToMatch);
197
188
  if (block) {
198
- promises.push((0, _traverseFields.traverseFields)({
189
+ promises.push(traverseFields({
199
190
  id,
200
191
  collection,
201
192
  context,
@@ -223,7 +214,7 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
223
214
  case 'row':
224
215
  case 'collapsible':
225
216
  {
226
- await (0, _traverseFields.traverseFields)({
217
+ await traverseFields({
227
218
  id,
228
219
  collection,
229
220
  context,
@@ -250,7 +241,7 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
250
241
  let tabSiblingData = siblingData;
251
242
  let tabSiblingDoc = siblingDoc;
252
243
  let tabSiblingDocWithLocales = siblingDocWithLocales;
253
- if ((0, _types.tabHasName)(field)) {
244
+ if (tabHasName(field)) {
254
245
  tabPath = `${path}${field.name}.`;
255
246
  if (typeof siblingData[field.name] !== 'object') siblingData[field.name] = {};
256
247
  if (typeof siblingDoc[field.name] !== 'object') siblingDoc[field.name] = {};
@@ -259,7 +250,7 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
259
250
  tabSiblingDoc = siblingDoc[field.name];
260
251
  tabSiblingDocWithLocales = siblingDocWithLocales[field.name];
261
252
  }
262
- await (0, _traverseFields.traverseFields)({
253
+ await traverseFields({
263
254
  id,
264
255
  collection,
265
256
  context,
@@ -282,7 +273,7 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
282
273
  }
283
274
  case 'tabs':
284
275
  {
285
- await (0, _traverseFields.traverseFields)({
276
+ await traverseFields({
286
277
  id,
287
278
  collection,
288
279
  context,
@@ -313,4 +304,4 @@ const promise = async ({ id, collection, context, data, doc, docWithLocales, err
313
304
  }
314
305
  };
315
306
 
316
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL3Byb21pc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1lcmdlIGZyb20gJ2RlZXBtZXJnZSdcblxuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRHbG9iYWxDb25maWcgfSBmcm9tICcuLi8uLi8uLi9nbG9iYWxzL2NvbmZpZy90eXBlcydcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFJlcXVlc3RDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IE9wZXJhdGlvbiB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBGaWVsZCwgVGFiQXNGaWVsZCB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcydcblxuaW1wb3J0IHsgZmllbGRBZmZlY3RzRGF0YSwgdGFiSGFzTmFtZSB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcydcbmltcG9ydCB7IGdldEV4aXN0aW5nUm93RG9jIH0gZnJvbSAnLi9nZXRFeGlzdGluZ1Jvd0RvYydcbmltcG9ydCB7IHRyYXZlcnNlRmllbGRzIH0gZnJvbSAnLi90cmF2ZXJzZUZpZWxkcydcblxudHlwZSBBcmdzID0ge1xuICBjb2xsZWN0aW9uOiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIHwgbnVsbFxuICBjb250ZXh0OiBSZXF1ZXN0Q29udGV4dFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBkb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGRvY1dpdGhMb2NhbGVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBlcnJvcnM6IHsgZmllbGQ6IHN0cmluZzsgbWVzc2FnZTogc3RyaW5nIH1bXVxuICBmaWVsZDogRmllbGQgfCBUYWJBc0ZpZWxkXG4gIGdsb2JhbDogU2FuaXRpemVkR2xvYmFsQ29uZmlnIHwgbnVsbFxuICBpZD86IG51bWJlciB8IHN0cmluZ1xuICBtZXJnZUxvY2FsZUFjdGlvbnM6ICgoKSA9PiB2b2lkKVtdXG4gIG9wZXJhdGlvbjogT3BlcmF0aW9uXG4gIHBhdGg6IHN0cmluZ1xuICByZXE6IFBheWxvYWRSZXF1ZXN0XG4gIHNpYmxpbmdEYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBzaWJsaW5nRG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBzaWJsaW5nRG9jV2l0aExvY2FsZXM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBza2lwVmFsaWRhdGlvbjogYm9vbGVhblxufVxuXG4vLyBUaGlzIGZ1bmN0aW9uIGlzIHJlc3BvbnNpYmxlIGZvciB0aGUgZm9sbG93aW5nIGFjdGlvbnMsIGluIG9yZGVyOlxuLy8gLSBSdW4gY29uZGl0aW9uXG4vLyAtIEV4ZWN1dGUgZmllbGQgaG9va3Ncbi8vIC0gVmFsaWRhdGUgZGF0YVxuLy8gLSBUcmFuc2Zvcm0gZGF0YSBmb3Igc3RvcmFnZVxuLy8gLSBVbmZsYXR0ZW4gbG9jYWxlc1xuXG5leHBvcnQgY29uc3QgcHJvbWlzZSA9IGFzeW5jICh7XG4gIGlkLFxuICBjb2xsZWN0aW9uLFxuICBjb250ZXh0LFxuICBkYXRhLFxuICBkb2MsXG4gIGRvY1dpdGhMb2NhbGVzLFxuICBlcnJvcnMsXG4gIGZpZWxkLFxuICBnbG9iYWwsXG4gIG1lcmdlTG9jYWxlQWN0aW9ucyxcbiAgb3BlcmF0aW9uLFxuICBwYXRoLFxuICByZXEsXG4gIHNpYmxpbmdEYXRhLFxuICBzaWJsaW5nRG9jLFxuICBzaWJsaW5nRG9jV2l0aExvY2FsZXMsXG4gIHNraXBWYWxpZGF0aW9uLFxufTogQXJncyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICBjb25zdCBwYXNzZXNDb25kaXRpb24gPSBmaWVsZC5hZG1pbj8uY29uZGl0aW9uXG4gICAgPyBCb29sZWFuKGZpZWxkLmFkbWluLmNvbmRpdGlvbihkYXRhLCBzaWJsaW5nRGF0YSwgeyB1c2VyOiByZXEudXNlciB9KSlcbiAgICA6IHRydWVcbiAgbGV0IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUgPSBza2lwVmFsaWRhdGlvbiB8fCAhcGFzc2VzQ29uZGl0aW9uXG5cbiAgY29uc3QgZGVmYXVsdExvY2FsZSA9IHJlcS5wYXlsb2FkLmNvbmZpZz8ubG9jYWxpemF0aW9uXG4gICAgPyByZXEucGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uPy5kZWZhdWx0TG9jYWxlXG4gICAgOiAnZW4nXG4gIGNvbnN0IG9wZXJhdGlvbkxvY2FsZSA9IHJlcS5sb2NhbGUgfHwgZGVmYXVsdExvY2FsZVxuXG4gIGlmIChmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSkge1xuICAgIC8vIHNraXAgdmFsaWRhdGlvbiBpZiB0aGUgZmllbGQgaXMgbG9jYWxpemVkIGFuZCB0aGUgaW5jb21pbmcgZGF0YSBpcyBudWxsXG4gICAgaWYgKGZpZWxkLmxvY2FsaXplZCAmJiBvcGVyYXRpb25Mb2NhbGUgIT09IGRlZmF1bHRMb2NhbGUpIHtcbiAgICAgIGlmIChbJ2FycmF5JywgJ2Jsb2NrcyddLmluY2x1ZGVzKGZpZWxkLnR5cGUpICYmIHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdID09PSBudWxsKSB7XG4gICAgICAgIHNraXBWYWxpZGF0aW9uRnJvbUhlcmUgPSB0cnVlXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhlY3V0ZSBob29rc1xuICAgIGlmIChmaWVsZC5ob29rcz8uYmVmb3JlQ2hhbmdlKSB7XG4gICAgICBhd2FpdCBmaWVsZC5ob29rcy5iZWZvcmVDaGFuZ2UucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGN1cnJlbnRIb29rKSA9PiB7XG4gICAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICAgIGNvbnN0IGhvb2tlZFZhbHVlID0gYXdhaXQgY3VycmVudEhvb2soe1xuICAgICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgIGdsb2JhbCxcbiAgICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgICAgb3JpZ2luYWxEb2M6IGRvYyxcbiAgICAgICAgICBwcmV2aW91c1NpYmxpbmdEb2M6IHNpYmxpbmdEb2MsXG4gICAgICAgICAgcHJldmlvdXNWYWx1ZTogc2libGluZ0RvY1tmaWVsZC5uYW1lXSxcbiAgICAgICAgICByZXEsXG4gICAgICAgICAgc2libGluZ0RhdGEsXG4gICAgICAgICAgdmFsdWU6IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdLFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmIChob29rZWRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV0gPSBob29rZWRWYWx1ZVxuICAgICAgICB9XG4gICAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcbiAgICB9XG5cbiAgICAvLyBWYWxpZGF0ZVxuICAgIGlmICghc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSAmJiBmaWVsZC52YWxpZGF0ZSkge1xuICAgICAgY29uc3QgdmFsdWVUb1ZhbGlkYXRlID0gc2libGluZ0RhdGFbZmllbGQubmFtZV1cbiAgICAgIGxldCBqc29uRXJyb3JcblxuICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdqc29uJyAmJiB0eXBlb2Ygc2libGluZ0RhdGFbZmllbGQubmFtZV0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgSlNPTi5wYXJzZShzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSBhcyBzdHJpbmcpXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICBqc29uRXJyb3IgPSBlXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IGF3YWl0IGZpZWxkLnZhbGlkYXRlKHZhbHVlVG9WYWxpZGF0ZSwge1xuICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgaWQsXG4gICAgICAgIGRhdGE6IG1lcmdlKGRvYywgZGF0YSwgeyBhcnJheU1lcmdlOiAoXywgc291cmNlKSA9PiBzb3VyY2UgfSksXG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3ItbmV4dC1saW5lXG4gICAgICAgIGpzb25FcnJvcixcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICByZXEsXG4gICAgICAgIHNpYmxpbmdEYXRhOiBtZXJnZShzaWJsaW5nRG9jLCBzaWJsaW5nRGF0YSwgeyBhcnJheU1lcmdlOiAoXywgc291cmNlKSA9PiBzb3VyY2UgfSksXG4gICAgICB9KVxuXG4gICAgICBpZiAodHlwZW9mIHZhbGlkYXRpb25SZXN1bHQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGVycm9ycy5wdXNoKHtcbiAgICAgICAgICBmaWVsZDogYCR7cGF0aH0ke2ZpZWxkLm5hbWV9YCxcbiAgICAgICAgICBtZXNzYWdlOiB2YWxpZGF0aW9uUmVzdWx0LFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFB1c2ggbWVyZ2UgbG9jYWxlIGFjdGlvbiBpZiBhcHBsaWNhYmxlXG4gICAgaWYgKGZpZWxkLmxvY2FsaXplZCkge1xuICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLnB1c2goKCkgPT4ge1xuICAgICAgICBpZiAocmVxLnBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvbikge1xuICAgICAgICAgIGNvbnN0IHsgbG9jYWxpemF0aW9uIH0gPSByZXEucGF5bG9hZC5jb25maWdcbiAgICAgICAgICBjb25zdCBsb2NhbGVEYXRhID0gbG9jYWxpemF0aW9uLmxvY2FsZUNvZGVzLnJlZHVjZSgobG9jYWxpemVkVmFsdWVzLCBsb2NhbGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkVmFsdWUgPVxuICAgICAgICAgICAgICBsb2NhbGUgPT09IHJlcS5sb2NhbGVcbiAgICAgICAgICAgICAgICA/IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdXG4gICAgICAgICAgICAgICAgOiBzaWJsaW5nRG9jV2l0aExvY2FsZXM/LltmaWVsZC5uYW1lXT8uW2xvY2FsZV1cblxuICAgICAgICAgICAgLy8gdXBkYXRlIGxvY2FsZSB2YWx1ZSBpZiBpdCdzIG5vdCB1bmRlZmluZWRcbiAgICAgICAgICAgIGlmICh0eXBlb2YgZmllbGRWYWx1ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi5sb2NhbGl6ZWRWYWx1ZXMsXG4gICAgICAgICAgICAgICAgW2xvY2FsZV06IGZpZWxkVmFsdWUsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGxvY2FsaXplZFZhbHVlc1xuICAgICAgICAgIH0sIHt9KVxuXG4gICAgICAgICAgLy8gSWYgdGhlcmUgYXJlIGxvY2FsZXMgd2l0aCBkYXRhLCBzZXQgdGhlIGRhdGFcbiAgICAgICAgICBpZiAoT2JqZWN0LmtleXMobG9jYWxlRGF0YSkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV0gPSBsb2NhbGVEYXRhXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgIGNhc2UgJ3BvaW50Jzoge1xuICAgICAgLy8gVHJhbnNmb3JtIHBvaW50IGRhdGEgZm9yIHN0b3JhZ2VcbiAgICAgIGlmIChcbiAgICAgICAgQXJyYXkuaXNBcnJheShzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSkgJiZcbiAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV1bMF0gIT09IG51bGwgJiZcbiAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV1bMV0gIT09IG51bGxcbiAgICAgICkge1xuICAgICAgICBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9IHtcbiAgICAgICAgICB0eXBlOiAnUG9pbnQnLFxuICAgICAgICAgIGNvb3JkaW5hdGVzOiBbXG4gICAgICAgICAgICBwYXJzZUZsb2F0KHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdWzBdKSxcbiAgICAgICAgICAgIHBhcnNlRmxvYXQoc2libGluZ0RhdGFbZmllbGQubmFtZV1bMV0pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdncm91cCc6IHtcbiAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RhdGFbZmllbGQubmFtZV0gIT09ICdvYmplY3QnKSBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9IHt9XG4gICAgICBpZiAodHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gIT09ICdvYmplY3QnKSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID0ge31cbiAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0JylcbiAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdID0ge31cblxuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBpZCxcbiAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZG9jLFxuICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgZXJyb3JzLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgZ2xvYmFsLFxuICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcGF0aDogYCR7cGF0aH0ke2ZpZWxkLm5hbWV9LmAsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGE6IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICAgICBzaWJsaW5nRG9jOiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXM6IHNpYmxpbmdEb2NXaXRoTG9jYWxlc1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ2FycmF5Jzoge1xuICAgICAgY29uc3Qgcm93cyA9IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdXG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpKSB7XG4gICAgICAgIGNvbnN0IHByb21pc2VzID0gW11cbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIGkpID0+IHtcbiAgICAgICAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgICAgICAgZXJyb3JzLFxuICAgICAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICAgICAgcGF0aDogYCR7cGF0aH0ke2ZpZWxkLm5hbWV9LiR7aX0uYCxcbiAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICBzaWJsaW5nRGF0YTogcm93LFxuICAgICAgICAgICAgICBzaWJsaW5nRG9jOiBnZXRFeGlzdGluZ1Jvd0RvYyhyb3csIHNpYmxpbmdEb2NbZmllbGQubmFtZV0pLFxuICAgICAgICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXM6IGdldEV4aXN0aW5nUm93RG9jKHJvdywgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdKSxcbiAgICAgICAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApXG4gICAgICAgIH0pXG5cbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpXG4gICAgICB9XG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAnYmxvY2tzJzoge1xuICAgICAgY29uc3Qgcm93cyA9IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdXG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpKSB7XG4gICAgICAgIGNvbnN0IHByb21pc2VzID0gW11cbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIGkpID0+IHtcbiAgICAgICAgICBjb25zdCByb3dTaWJsaW5nRG9jID0gZ2V0RXhpc3RpbmdSb3dEb2Mocm93LCBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdKVxuICAgICAgICAgIGNvbnN0IHJvd1NpYmxpbmdEb2NXaXRoTG9jYWxlcyA9IGdldEV4aXN0aW5nUm93RG9jKHJvdywgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdKVxuXG4gICAgICAgICAgY29uc3QgYmxvY2tUeXBlVG9NYXRjaCA9IHJvdy5ibG9ja1R5cGUgfHwgcm93U2libGluZ0RvYy5ibG9ja1R5cGVcbiAgICAgICAgICBjb25zdCBibG9jayA9IGZpZWxkLmJsb2Nrcy5maW5kKChibG9ja1R5cGUpID0+IGJsb2NrVHlwZS5zbHVnID09PSBibG9ja1R5cGVUb01hdGNoKVxuXG4gICAgICAgICAgaWYgKGJsb2NrKSB7XG4gICAgICAgICAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgICAgICAgICAgIGVycm9ycyxcbiAgICAgICAgICAgICAgICBmaWVsZHM6IGJsb2NrLmZpZWxkcyxcbiAgICAgICAgICAgICAgICBnbG9iYWwsXG4gICAgICAgICAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICAgICAgICBwYXRoOiBgJHtwYXRofSR7ZmllbGQubmFtZX0uJHtpfS5gLFxuICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICBzaWJsaW5nRGF0YTogcm93LFxuICAgICAgICAgICAgICAgIHNpYmxpbmdEb2M6IHJvd1NpYmxpbmdEb2MsXG4gICAgICAgICAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzOiByb3dTaWJsaW5nRG9jV2l0aExvY2FsZXMsXG4gICAgICAgICAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcblxuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcylcbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdyb3cnOlxuICAgIGNhc2UgJ2NvbGxhcHNpYmxlJzoge1xuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBpZCxcbiAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZG9jLFxuICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgZXJyb3JzLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgZ2xvYmFsLFxuICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcGF0aCxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaWJsaW5nRGF0YSxcbiAgICAgICAgc2libGluZ0RvYyxcbiAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzLFxuICAgICAgICBza2lwVmFsaWRhdGlvbjogc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSxcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAndGFiJzoge1xuICAgICAgbGV0IHRhYlBhdGggPSBwYXRoXG4gICAgICBsZXQgdGFiU2libGluZ0RhdGEgPSBzaWJsaW5nRGF0YVxuICAgICAgbGV0IHRhYlNpYmxpbmdEb2MgPSBzaWJsaW5nRG9jXG4gICAgICBsZXQgdGFiU2libGluZ0RvY1dpdGhMb2NhbGVzID0gc2libGluZ0RvY1dpdGhMb2NhbGVzXG5cbiAgICAgIGlmICh0YWJIYXNOYW1lKGZpZWxkKSkge1xuICAgICAgICB0YWJQYXRoID0gYCR7cGF0aH0ke2ZpZWxkLm5hbWV9LmBcbiAgICAgICAgaWYgKHR5cGVvZiBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSAhPT0gJ29iamVjdCcpIHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdID0ge31cbiAgICAgICAgaWYgKHR5cGVvZiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0Jykgc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9IHt9XG4gICAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0JylcbiAgICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXNbZmllbGQubmFtZV0gPSB7fVxuXG4gICAgICAgIHRhYlNpYmxpbmdEYXRhID0gc2libGluZ0RhdGFbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgdGFiU2libGluZ0RvYyA9IHNpYmxpbmdEb2NbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgdGFiU2libGluZ0RvY1dpdGhMb2NhbGVzID0gc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgaWQsXG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZG9jV2l0aExvY2FsZXMsXG4gICAgICAgIGVycm9ycyxcbiAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIHBhdGg6IHRhYlBhdGgsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGE6IHRhYlNpYmxpbmdEYXRhLFxuICAgICAgICBzaWJsaW5nRG9jOiB0YWJTaWJsaW5nRG9jLFxuICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXM6IHRhYlNpYmxpbmdEb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ3RhYnMnOiB7XG4gICAgICBhd2FpdCB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGlkLFxuICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBkYXRhLFxuICAgICAgICBkb2MsXG4gICAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgICBlcnJvcnMsXG4gICAgICAgIGZpZWxkczogZmllbGQudGFicy5tYXAoKHRhYikgPT4gKHsgLi4udGFiLCB0eXBlOiAndGFiJyB9KSksXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIHBhdGgsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGEsXG4gICAgICAgIHNpYmxpbmdEb2MsXG4gICAgICAgIHNpYmxpbmdEb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOlsicHJvbWlzZSIsImlkIiwiY29sbGVjdGlvbiIsImNvbnRleHQiLCJkYXRhIiwiZG9jIiwiZG9jV2l0aExvY2FsZXMiLCJlcnJvcnMiLCJmaWVsZCIsImdsb2JhbCIsIm1lcmdlTG9jYWxlQWN0aW9ucyIsIm9wZXJhdGlvbiIsInBhdGgiLCJyZXEiLCJzaWJsaW5nRGF0YSIsInNpYmxpbmdEb2MiLCJzaWJsaW5nRG9jV2l0aExvY2FsZXMiLCJza2lwVmFsaWRhdGlvbiIsInBhc3Nlc0NvbmRpdGlvbiIsImFkbWluIiwiY29uZGl0aW9uIiwiQm9vbGVhbiIsInVzZXIiLCJza2lwVmFsaWRhdGlvbkZyb21IZXJlIiwiZGVmYXVsdExvY2FsZSIsInBheWxvYWQiLCJjb25maWciLCJsb2NhbGl6YXRpb24iLCJvcGVyYXRpb25Mb2NhbGUiLCJsb2NhbGUiLCJmaWVsZEFmZmVjdHNEYXRhIiwibG9jYWxpemVkIiwiaW5jbHVkZXMiLCJ0eXBlIiwibmFtZSIsImhvb2tzIiwiYmVmb3JlQ2hhbmdlIiwicmVkdWNlIiwicHJpb3JIb29rIiwiY3VycmVudEhvb2siLCJob29rZWRWYWx1ZSIsIm9yaWdpbmFsRG9jIiwicHJldmlvdXNTaWJsaW5nRG9jIiwicHJldmlvdXNWYWx1ZSIsInZhbHVlIiwidW5kZWZpbmVkIiwiUHJvbWlzZSIsInJlc29sdmUiLCJ2YWxpZGF0ZSIsInZhbHVlVG9WYWxpZGF0ZSIsImpzb25FcnJvciIsIkpTT04iLCJwYXJzZSIsImUiLCJ2YWxpZGF0aW9uUmVzdWx0IiwibWVyZ2UiLCJhcnJheU1lcmdlIiwiXyIsInNvdXJjZSIsInB1c2giLCJtZXNzYWdlIiwibG9jYWxlRGF0YSIsImxvY2FsZUNvZGVzIiwibG9jYWxpemVkVmFsdWVzIiwiZmllbGRWYWx1ZSIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJBcnJheSIsImlzQXJyYXkiLCJjb29yZGluYXRlcyIsInBhcnNlRmxvYXQiLCJ0cmF2ZXJzZUZpZWxkcyIsImZpZWxkcyIsInJvd3MiLCJwcm9taXNlcyIsImZvckVhY2giLCJyb3ciLCJpIiwiZ2V0RXhpc3RpbmdSb3dEb2MiLCJhbGwiLCJyb3dTaWJsaW5nRG9jIiwicm93U2libGluZ0RvY1dpdGhMb2NhbGVzIiwiYmxvY2tUeXBlVG9NYXRjaCIsImJsb2NrVHlwZSIsImJsb2NrIiwiYmxvY2tzIiwiZmluZCIsInNsdWciLCJ0YWJQYXRoIiwidGFiU2libGluZ0RhdGEiLCJ0YWJTaWJsaW5nRG9jIiwidGFiU2libGluZ0RvY1dpdGhMb2NhbGVzIiwidGFiSGFzTmFtZSIsInRhYnMiLCJtYXAiLCJ0YWIiXSwibWFwcGluZ3MiOiI7Ozs7K0JBdUNhQTs7O2VBQUFBOzs7a0VBdkNLO3VCQVEyQjttQ0FDWDtnQ0FDSDs7Ozs7O0FBNkJ4QixNQUFNQSxVQUFVLE9BQU8sRUFDNUJDLEVBQUUsRUFDRkMsVUFBVSxFQUNWQyxPQUFPLEVBQ1BDLElBQUksRUFDSkMsR0FBRyxFQUNIQyxjQUFjLEVBQ2RDLE1BQU0sRUFDTkMsS0FBSyxFQUNMQyxNQUFNLEVBQ05DLGtCQUFrQixFQUNsQkMsU0FBUyxFQUNUQyxJQUFJLEVBQ0pDLEdBQUcsRUFDSEMsV0FBVyxFQUNYQyxVQUFVLEVBQ1ZDLHFCQUFxQixFQUNyQkMsY0FBYyxFQUNUO0lBQ0wsTUFBTUMsa0JBQWtCVixN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
307
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL3Byb21pc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1lcmdlIGZyb20gJ2RlZXBtZXJnZSdcblxuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzLmQudHMnXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZEdsb2JhbENvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzLmQudHMnXG5pbXBvcnQgdHlwZSB7IE9wZXJhdGlvbiwgUGF5bG9hZFJlcXVlc3QsIFJlcXVlc3RDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvaW5kZXguZC50cydcbmltcG9ydCB0eXBlIHsgRmllbGQsIFRhYkFzRmllbGQgfSBmcm9tICcuLi8uLi9jb25maWcvdHlwZXMuZC50cydcblxuaW1wb3J0IHsgZmllbGRBZmZlY3RzRGF0YSwgdGFiSGFzTmFtZSB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcy5qcydcbmltcG9ydCB7IGdldEV4aXN0aW5nUm93RG9jIH0gZnJvbSAnLi9nZXRFeGlzdGluZ1Jvd0RvYy5qcydcbmltcG9ydCB7IHRyYXZlcnNlRmllbGRzIH0gZnJvbSAnLi90cmF2ZXJzZUZpZWxkcy5qcydcblxudHlwZSBBcmdzID0ge1xuICBjb2xsZWN0aW9uOiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIHwgbnVsbFxuICBjb250ZXh0OiBSZXF1ZXN0Q29udGV4dFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBkb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGRvY1dpdGhMb2NhbGVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBlcnJvcnM6IHsgZmllbGQ6IHN0cmluZzsgbWVzc2FnZTogc3RyaW5nIH1bXVxuICBmaWVsZDogRmllbGQgfCBUYWJBc0ZpZWxkXG4gIGdsb2JhbDogU2FuaXRpemVkR2xvYmFsQ29uZmlnIHwgbnVsbFxuICBpZD86IG51bWJlciB8IHN0cmluZ1xuICBtZXJnZUxvY2FsZUFjdGlvbnM6ICgoKSA9PiB2b2lkKVtdXG4gIG9wZXJhdGlvbjogT3BlcmF0aW9uXG4gIHBhdGg6IHN0cmluZ1xuICByZXE6IFBheWxvYWRSZXF1ZXN0XG4gIHNpYmxpbmdEYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBzaWJsaW5nRG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBzaWJsaW5nRG9jV2l0aExvY2FsZXM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBza2lwVmFsaWRhdGlvbjogYm9vbGVhblxufVxuXG4vLyBUaGlzIGZ1bmN0aW9uIGlzIHJlc3BvbnNpYmxlIGZvciB0aGUgZm9sbG93aW5nIGFjdGlvbnMsIGluIG9yZGVyOlxuLy8gLSBSdW4gY29uZGl0aW9uXG4vLyAtIEV4ZWN1dGUgZmllbGQgaG9va3Ncbi8vIC0gVmFsaWRhdGUgZGF0YVxuLy8gLSBUcmFuc2Zvcm0gZGF0YSBmb3Igc3RvcmFnZVxuLy8gLSBVbmZsYXR0ZW4gbG9jYWxlc1xuXG5leHBvcnQgY29uc3QgcHJvbWlzZSA9IGFzeW5jICh7XG4gIGlkLFxuICBjb2xsZWN0aW9uLFxuICBjb250ZXh0LFxuICBkYXRhLFxuICBkb2MsXG4gIGRvY1dpdGhMb2NhbGVzLFxuICBlcnJvcnMsXG4gIGZpZWxkLFxuICBnbG9iYWwsXG4gIG1lcmdlTG9jYWxlQWN0aW9ucyxcbiAgb3BlcmF0aW9uLFxuICBwYXRoLFxuICByZXEsXG4gIHNpYmxpbmdEYXRhLFxuICBzaWJsaW5nRG9jLFxuICBzaWJsaW5nRG9jV2l0aExvY2FsZXMsXG4gIHNraXBWYWxpZGF0aW9uLFxufTogQXJncyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICBjb25zdCBwYXNzZXNDb25kaXRpb24gPSBmaWVsZC5hZG1pbj8uY29uZGl0aW9uXG4gICAgPyBCb29sZWFuKGZpZWxkLmFkbWluLmNvbmRpdGlvbihkYXRhLCBzaWJsaW5nRGF0YSwgeyB1c2VyOiByZXEudXNlciB9KSlcbiAgICA6IHRydWVcbiAgbGV0IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUgPSBza2lwVmFsaWRhdGlvbiB8fCAhcGFzc2VzQ29uZGl0aW9uXG5cbiAgY29uc3QgZGVmYXVsdExvY2FsZSA9IHJlcS5wYXlsb2FkLmNvbmZpZz8ubG9jYWxpemF0aW9uXG4gICAgPyByZXEucGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uPy5kZWZhdWx0TG9jYWxlXG4gICAgOiAnZW4nXG4gIGNvbnN0IG9wZXJhdGlvbkxvY2FsZSA9IHJlcS5sb2NhbGUgfHwgZGVmYXVsdExvY2FsZVxuXG4gIGlmIChmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSkge1xuICAgIC8vIHNraXAgdmFsaWRhdGlvbiBpZiB0aGUgZmllbGQgaXMgbG9jYWxpemVkIGFuZCB0aGUgaW5jb21pbmcgZGF0YSBpcyBudWxsXG4gICAgaWYgKGZpZWxkLmxvY2FsaXplZCAmJiBvcGVyYXRpb25Mb2NhbGUgIT09IGRlZmF1bHRMb2NhbGUpIHtcbiAgICAgIGlmIChbJ2FycmF5JywgJ2Jsb2NrcyddLmluY2x1ZGVzKGZpZWxkLnR5cGUpICYmIHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdID09PSBudWxsKSB7XG4gICAgICAgIHNraXBWYWxpZGF0aW9uRnJvbUhlcmUgPSB0cnVlXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhlY3V0ZSBob29rc1xuICAgIGlmIChmaWVsZC5ob29rcz8uYmVmb3JlQ2hhbmdlKSB7XG4gICAgICBhd2FpdCBmaWVsZC5ob29rcy5iZWZvcmVDaGFuZ2UucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGN1cnJlbnRIb29rKSA9PiB7XG4gICAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICAgIGNvbnN0IGhvb2tlZFZhbHVlID0gYXdhaXQgY3VycmVudEhvb2soe1xuICAgICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgIGdsb2JhbCxcbiAgICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgICAgb3JpZ2luYWxEb2M6IGRvYyxcbiAgICAgICAgICBwcmV2aW91c1NpYmxpbmdEb2M6IHNpYmxpbmdEb2MsXG4gICAgICAgICAgcHJldmlvdXNWYWx1ZTogc2libGluZ0RvY1tmaWVsZC5uYW1lXSxcbiAgICAgICAgICByZXEsXG4gICAgICAgICAgc2libGluZ0RhdGEsXG4gICAgICAgICAgdmFsdWU6IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdLFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmIChob29rZWRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV0gPSBob29rZWRWYWx1ZVxuICAgICAgICB9XG4gICAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcbiAgICB9XG5cbiAgICAvLyBWYWxpZGF0ZVxuICAgIGlmICghc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSAmJiBmaWVsZC52YWxpZGF0ZSkge1xuICAgICAgY29uc3QgdmFsdWVUb1ZhbGlkYXRlID0gc2libGluZ0RhdGFbZmllbGQubmFtZV1cbiAgICAgIGxldCBqc29uRXJyb3JcblxuICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdqc29uJyAmJiB0eXBlb2Ygc2libGluZ0RhdGFbZmllbGQubmFtZV0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgSlNPTi5wYXJzZShzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSBhcyBzdHJpbmcpXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICBqc29uRXJyb3IgPSBlXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IGF3YWl0IGZpZWxkLnZhbGlkYXRlKHZhbHVlVG9WYWxpZGF0ZSwge1xuICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgaWQsXG4gICAgICAgIGRhdGE6IG1lcmdlKGRvYywgZGF0YSwgeyBhcnJheU1lcmdlOiAoXywgc291cmNlKSA9PiBzb3VyY2UgfSksXG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3ItbmV4dC1saW5lXG4gICAgICAgIGpzb25FcnJvcixcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICByZXEsXG4gICAgICAgIHNpYmxpbmdEYXRhOiBtZXJnZShzaWJsaW5nRG9jLCBzaWJsaW5nRGF0YSwgeyBhcnJheU1lcmdlOiAoXywgc291cmNlKSA9PiBzb3VyY2UgfSksXG4gICAgICB9KVxuXG4gICAgICBpZiAodHlwZW9mIHZhbGlkYXRpb25SZXN1bHQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGVycm9ycy5wdXNoKHtcbiAgICAgICAgICBmaWVsZDogYCR7cGF0aH0ke2ZpZWxkLm5hbWV9YCxcbiAgICAgICAgICBtZXNzYWdlOiB2YWxpZGF0aW9uUmVzdWx0LFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFB1c2ggbWVyZ2UgbG9jYWxlIGFjdGlvbiBpZiBhcHBsaWNhYmxlXG4gICAgaWYgKGZpZWxkLmxvY2FsaXplZCkge1xuICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLnB1c2goKCkgPT4ge1xuICAgICAgICBpZiAocmVxLnBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvbikge1xuICAgICAgICAgIGNvbnN0IHsgbG9jYWxpemF0aW9uIH0gPSByZXEucGF5bG9hZC5jb25maWdcbiAgICAgICAgICBjb25zdCBsb2NhbGVEYXRhID0gbG9jYWxpemF0aW9uLmxvY2FsZUNvZGVzLnJlZHVjZSgobG9jYWxpemVkVmFsdWVzLCBsb2NhbGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkVmFsdWUgPVxuICAgICAgICAgICAgICBsb2NhbGUgPT09IHJlcS5sb2NhbGVcbiAgICAgICAgICAgICAgICA/IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdXG4gICAgICAgICAgICAgICAgOiBzaWJsaW5nRG9jV2l0aExvY2FsZXM/LltmaWVsZC5uYW1lXT8uW2xvY2FsZV1cblxuICAgICAgICAgICAgLy8gdXBkYXRlIGxvY2FsZSB2YWx1ZSBpZiBpdCdzIG5vdCB1bmRlZmluZWRcbiAgICAgICAgICAgIGlmICh0eXBlb2YgZmllbGRWYWx1ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi5sb2NhbGl6ZWRWYWx1ZXMsXG4gICAgICAgICAgICAgICAgW2xvY2FsZV06IGZpZWxkVmFsdWUsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGxvY2FsaXplZFZhbHVlc1xuICAgICAgICAgIH0sIHt9KVxuXG4gICAgICAgICAgLy8gSWYgdGhlcmUgYXJlIGxvY2FsZXMgd2l0aCBkYXRhLCBzZXQgdGhlIGRhdGFcbiAgICAgICAgICBpZiAoT2JqZWN0LmtleXMobG9jYWxlRGF0YSkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV0gPSBsb2NhbGVEYXRhXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgIGNhc2UgJ3BvaW50Jzoge1xuICAgICAgLy8gVHJhbnNmb3JtIHBvaW50IGRhdGEgZm9yIHN0b3JhZ2VcbiAgICAgIGlmIChcbiAgICAgICAgQXJyYXkuaXNBcnJheShzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSkgJiZcbiAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV1bMF0gIT09IG51bGwgJiZcbiAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV1bMV0gIT09IG51bGxcbiAgICAgICkge1xuICAgICAgICBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9IHtcbiAgICAgICAgICB0eXBlOiAnUG9pbnQnLFxuICAgICAgICAgIGNvb3JkaW5hdGVzOiBbXG4gICAgICAgICAgICBwYXJzZUZsb2F0KHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdWzBdKSxcbiAgICAgICAgICAgIHBhcnNlRmxvYXQoc2libGluZ0RhdGFbZmllbGQubmFtZV1bMV0pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdncm91cCc6IHtcbiAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RhdGFbZmllbGQubmFtZV0gIT09ICdvYmplY3QnKSBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9IHt9XG4gICAgICBpZiAodHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gIT09ICdvYmplY3QnKSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID0ge31cbiAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0JylcbiAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdID0ge31cblxuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBpZCxcbiAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZG9jLFxuICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgZXJyb3JzLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgZ2xvYmFsLFxuICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcGF0aDogYCR7cGF0aH0ke2ZpZWxkLm5hbWV9LmAsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGE6IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICAgICBzaWJsaW5nRG9jOiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXM6IHNpYmxpbmdEb2NXaXRoTG9jYWxlc1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ2FycmF5Jzoge1xuICAgICAgY29uc3Qgcm93cyA9IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdXG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpKSB7XG4gICAgICAgIGNvbnN0IHByb21pc2VzID0gW11cbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIGkpID0+IHtcbiAgICAgICAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgICAgICAgZXJyb3JzLFxuICAgICAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICAgICAgcGF0aDogYCR7cGF0aH0ke2ZpZWxkLm5hbWV9LiR7aX0uYCxcbiAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICBzaWJsaW5nRGF0YTogcm93LFxuICAgICAgICAgICAgICBzaWJsaW5nRG9jOiBnZXRFeGlzdGluZ1Jvd0RvYyhyb3csIHNpYmxpbmdEb2NbZmllbGQubmFtZV0pLFxuICAgICAgICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXM6IGdldEV4aXN0aW5nUm93RG9jKHJvdywgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdKSxcbiAgICAgICAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApXG4gICAgICAgIH0pXG5cbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpXG4gICAgICB9XG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAnYmxvY2tzJzoge1xuICAgICAgY29uc3Qgcm93cyA9IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdXG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpKSB7XG4gICAgICAgIGNvbnN0IHByb21pc2VzID0gW11cbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIGkpID0+IHtcbiAgICAgICAgICBjb25zdCByb3dTaWJsaW5nRG9jID0gZ2V0RXhpc3RpbmdSb3dEb2Mocm93LCBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdKVxuICAgICAgICAgIGNvbnN0IHJvd1NpYmxpbmdEb2NXaXRoTG9jYWxlcyA9IGdldEV4aXN0aW5nUm93RG9jKHJvdywgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdKVxuXG4gICAgICAgICAgY29uc3QgYmxvY2tUeXBlVG9NYXRjaCA9IHJvdy5ibG9ja1R5cGUgfHwgcm93U2libGluZ0RvYy5ibG9ja1R5cGVcbiAgICAgICAgICBjb25zdCBibG9jayA9IGZpZWxkLmJsb2Nrcy5maW5kKChibG9ja1R5cGUpID0+IGJsb2NrVHlwZS5zbHVnID09PSBibG9ja1R5cGVUb01hdGNoKVxuXG4gICAgICAgICAgaWYgKGJsb2NrKSB7XG4gICAgICAgICAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgICAgICAgICAgIGVycm9ycyxcbiAgICAgICAgICAgICAgICBmaWVsZHM6IGJsb2NrLmZpZWxkcyxcbiAgICAgICAgICAgICAgICBnbG9iYWwsXG4gICAgICAgICAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICAgICAgICBwYXRoOiBgJHtwYXRofSR7ZmllbGQubmFtZX0uJHtpfS5gLFxuICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICBzaWJsaW5nRGF0YTogcm93LFxuICAgICAgICAgICAgICAgIHNpYmxpbmdEb2M6IHJvd1NpYmxpbmdEb2MsXG4gICAgICAgICAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzOiByb3dTaWJsaW5nRG9jV2l0aExvY2FsZXMsXG4gICAgICAgICAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcblxuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcylcbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdyb3cnOlxuICAgIGNhc2UgJ2NvbGxhcHNpYmxlJzoge1xuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBpZCxcbiAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZG9jLFxuICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgZXJyb3JzLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgZ2xvYmFsLFxuICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcGF0aCxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaWJsaW5nRGF0YSxcbiAgICAgICAgc2libGluZ0RvYyxcbiAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzLFxuICAgICAgICBza2lwVmFsaWRhdGlvbjogc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSxcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAndGFiJzoge1xuICAgICAgbGV0IHRhYlBhdGggPSBwYXRoXG4gICAgICBsZXQgdGFiU2libGluZ0RhdGEgPSBzaWJsaW5nRGF0YVxuICAgICAgbGV0IHRhYlNpYmxpbmdEb2MgPSBzaWJsaW5nRG9jXG4gICAgICBsZXQgdGFiU2libGluZ0RvY1dpdGhMb2NhbGVzID0gc2libGluZ0RvY1dpdGhMb2NhbGVzXG5cbiAgICAgIGlmICh0YWJIYXNOYW1lKGZpZWxkKSkge1xuICAgICAgICB0YWJQYXRoID0gYCR7cGF0aH0ke2ZpZWxkLm5hbWV9LmBcbiAgICAgICAgaWYgKHR5cGVvZiBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSAhPT0gJ29iamVjdCcpIHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdID0ge31cbiAgICAgICAgaWYgKHR5cGVvZiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0Jykgc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9IHt9XG4gICAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0JylcbiAgICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXNbZmllbGQubmFtZV0gPSB7fVxuXG4gICAgICAgIHRhYlNpYmxpbmdEYXRhID0gc2libGluZ0RhdGFbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgdGFiU2libGluZ0RvYyA9IHNpYmxpbmdEb2NbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgdGFiU2libGluZ0RvY1dpdGhMb2NhbGVzID0gc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgaWQsXG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZG9jV2l0aExvY2FsZXMsXG4gICAgICAgIGVycm9ycyxcbiAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIHBhdGg6IHRhYlBhdGgsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGE6IHRhYlNpYmxpbmdEYXRhLFxuICAgICAgICBzaWJsaW5nRG9jOiB0YWJTaWJsaW5nRG9jLFxuICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXM6IHRhYlNpYmxpbmdEb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ3RhYnMnOiB7XG4gICAgICBhd2FpdCB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGlkLFxuICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBkYXRhLFxuICAgICAgICBkb2MsXG4gICAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgICBlcnJvcnMsXG4gICAgICAgIGZpZWxkczogZmllbGQudGFicy5tYXAoKHRhYikgPT4gKHsgLi4udGFiLCB0eXBlOiAndGFiJyB9KSksXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIHBhdGgsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGEsXG4gICAgICAgIHNpYmxpbmdEb2MsXG4gICAgICAgIHNpYmxpbmdEb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOlsibWVyZ2UiLCJmaWVsZEFmZmVjdHNEYXRhIiwidGFiSGFzTmFtZSIsImdldEV4aXN0aW5nUm93RG9jIiwidHJhdmVyc2VGaWVsZHMiLCJwcm9taXNlIiwiaWQiLCJjb2xsZWN0aW9uIiwiY29udGV4dCIsImRhdGEiLCJkb2MiLCJkb2NXaXRoTG9jYWxlcyIsImVycm9ycyIsImZpZWxkIiwiZ2xvYmFsIiwibWVyZ2VMb2NhbGVBY3Rpb25zIiwib3BlcmF0aW9uIiwicGF0aCIsInJlcSIsInNpYmxpbmdEYXRhIiwic2libGluZ0RvYyIsInNpYmxpbmdEb2NXaXRoTG9jYWxlcyIsInNraXBWYWxpZGF0aW9uIiwicGFzc2VzQ29uZGl0aW9uIiwiYWRtaW4iLCJjb25kaXRpb24iLCJCb29sZWFuIiwidXNlciIsInNraXBWYWxpZGF0aW9uRnJvbUhlcmUiLCJkZWZhdWx0TG9jYWxlIiwicGF5bG9hZCIsImNvbmZpZyIsImxvY2FsaXphdGlvbiIsIm9wZXJhdGlvbkxvY2FsZSIsImxvY2FsZSIsImxvY2FsaXplZCIsImluY2x1ZGVzIiwidHlwZSIsIm5hbWUiLCJob29rcyIsImJlZm9yZUNoYW5nZSIsInJlZHVjZSIsInByaW9ySG9vayIsImN1cnJlbnRIb29rIiwiaG9va2VkVmFsdWUiLCJvcmlnaW5hbERvYyIsInByZXZpb3VzU2libGluZ0RvYyIsInByZXZpb3VzVmFsdWUiLCJ2YWx1ZSIsInVuZGVmaW5lZCIsIlByb21pc2UiLCJyZXNvbHZlIiwidmFsaWRhdGUiLCJ2YWx1ZVRvVmFsaWRhdGUiLCJqc29uRXJyb3IiLCJKU09OIiwicGFyc2UiLCJlIiwidmFsaWRhdGlvblJlc3VsdCIsImFycmF5TWVyZ2UiLCJfIiwic291cmNlIiwicHVzaCIsIm1lc3NhZ2UiLCJsb2NhbGVEYXRhIiwibG9jYWxlQ29kZXMiLCJsb2NhbGl6ZWRWYWx1ZXMiLCJmaWVsZFZhbHVlIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsIkFycmF5IiwiaXNBcnJheSIsImNvb3JkaW5hdGVzIiwicGFyc2VGbG9hdCIsImZpZWxkcyIsInJvd3MiLCJwcm9taXNlcyIsImZvckVhY2giLCJyb3ciLCJpIiwiYWxsIiwicm93U2libGluZ0RvYyIsInJvd1NpYmxpbmdEb2NXaXRoTG9jYWxlcyIsImJsb2NrVHlwZVRvTWF0Y2giLCJibG9ja1R5cGUiLCJibG9jayIsImJsb2NrcyIsImZpbmQiLCJzbHVnIiwidGFiUGF0aCIsInRhYlNpYmxpbmdEYXRhIiwidGFiU2libGluZ0RvYyIsInRhYlNpYmxpbmdEb2NXaXRoTG9jYWxlcyIsInRhYnMiLCJtYXAiLCJ0YWIiXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLFdBQVcsWUFBVztBQU83QixTQUFTQyxnQkFBZ0IsRUFBRUMsVUFBVSxRQUFRLHdCQUF1QjtBQUNwRSxTQUFTQyxpQkFBaUIsUUFBUSx5QkFBd0I7QUFDMUQsU0FBU0MsY0FBYyxRQUFRLHNCQUFxQjtBQXNCcEQsb0VBQW9FO0FBQ3BFLGtCQUFrQjtBQUNsQix3QkFBd0I7QUFDeEIsa0JBQWtCO0FBQ2xCLCtCQUErQjtBQUMvQixzQkFBc0I7QUFFdEIsT0FBTyxNQUFNQyxVQUFVLE9BQU8sRUFDNUJDLEVBQUUsRUFDRkMsVUFBVSxFQUNWQyxPQUFPLEVBQ1BDLElBQUksRUFDSkMsR0FBRyxFQUNIQyxjQUFjLEVB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