payload 3.0.0-alpha.4 → 3.0.0-alpha.40

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 (797) hide show
  1. package/auth.d.ts +5 -5
  2. package/auth.js +5 -44
  3. package/bin.js +17 -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 +9 -5
  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 +21 -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 +21 -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 +17 -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 +10 -34
  161. package/dist/bin/index.d.ts +1 -1
  162. package/dist/bin/index.d.ts.map +1 -1
  163. package/dist/bin/index.js +25 -69
  164. package/dist/bin/loadEnv.js +13 -26
  165. package/dist/bin/migrate.d.ts +7 -1
  166. package/dist/bin/migrate.d.ts.map +1 -1
  167. package/dist/bin/migrate.js +12 -37
  168. package/dist/bin/register/clientExtensions.d.ts +2 -0
  169. package/dist/bin/register/clientExtensions.d.ts.map +1 -0
  170. package/dist/bin/register/clientExtensions.js +13 -0
  171. package/dist/bin/register/index.d.ts +34 -0
  172. package/dist/bin/register/index.d.ts.map +1 -0
  173. package/dist/bin/register/index.js +95 -0
  174. package/dist/bin/register/read-default-tsconfig.d.ts +4 -0
  175. package/dist/bin/register/read-default-tsconfig.d.ts.map +1 -0
  176. package/dist/bin/register/read-default-tsconfig.js +92 -0
  177. package/dist/bin/register/register.d.ts +15 -0
  178. package/dist/bin/register/register.d.ts.map +1 -0
  179. package/dist/bin/register/register.js +92 -0
  180. package/dist/collections/config/build.d.ts +1 -1
  181. package/dist/collections/config/build.d.ts.map +1 -1
  182. package/dist/collections/config/build.js +2 -12
  183. package/dist/collections/config/defaults.d.ts +5 -5
  184. package/dist/collections/config/defaults.js +9 -32
  185. package/dist/collections/config/sanitize.d.ts +2 -2
  186. package/dist/collections/config/sanitize.d.ts.map +1 -1
  187. package/dist/collections/config/sanitize.js +34 -49
  188. package/dist/collections/config/schema.js +157 -172
  189. package/dist/collections/config/types.d.ts +13 -13
  190. package/dist/collections/config/types.d.ts.map +1 -1
  191. package/dist/collections/config/types.js +2 -5
  192. package/dist/collections/dataloader.d.ts +2 -2
  193. package/dist/collections/dataloader.d.ts.map +1 -1
  194. package/dist/collections/dataloader.js +8 -23
  195. package/dist/collections/operations/create.d.ts +9 -9
  196. package/dist/collections/operations/create.d.ts.map +1 -1
  197. package/dist/collections/operations/create.js +38 -53
  198. package/dist/collections/operations/delete.d.ts +9 -10
  199. package/dist/collections/operations/delete.d.ts.map +1 -1
  200. package/dist/collections/operations/delete.js +27 -42
  201. package/dist/collections/operations/deleteByID.d.ts +2 -3
  202. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  203. package/dist/collections/operations/deleteByID.js +27 -42
  204. package/dist/collections/operations/docAccess.d.ts +3 -3
  205. package/dist/collections/operations/docAccess.d.ts.map +1 -1
  206. package/dist/collections/operations/docAccess.js +12 -22
  207. package/dist/collections/operations/find.d.ts +3 -4
  208. package/dist/collections/operations/find.d.ts.map +1 -1
  209. package/dist/collections/operations/find.js +25 -40
  210. package/dist/collections/operations/findByID.d.ts +2 -2
  211. package/dist/collections/operations/findByID.d.ts.map +1 -1
  212. package/dist/collections/operations/findByID.js +21 -36
  213. package/dist/collections/operations/findVersionByID.d.ts +3 -3
  214. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  215. package/dist/collections/operations/findVersionByID.js +19 -34
  216. package/dist/collections/operations/findVersions.d.ts +4 -5
  217. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  218. package/dist/collections/operations/findVersions.js +20 -35
  219. package/dist/collections/operations/local/create.d.ts +4 -5
  220. package/dist/collections/operations/local/create.d.ts.map +1 -1
  221. package/dist/collections/operations/local/create.js +10 -25
  222. package/dist/collections/operations/local/delete.d.ts +5 -5
  223. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  224. package/dist/collections/operations/local/delete.js +10 -20
  225. package/dist/collections/operations/local/find.d.ts +3 -4
  226. package/dist/collections/operations/local/find.d.ts.map +1 -1
  227. package/dist/collections/operations/local/find.js +8 -18
  228. package/dist/collections/operations/local/findByID.d.ts +2 -4
  229. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  230. package/dist/collections/operations/local/findByID.js +8 -18
  231. package/dist/collections/operations/local/findVersionByID.d.ts +3 -4
  232. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  233. package/dist/collections/operations/local/findVersionByID.js +8 -18
  234. package/dist/collections/operations/local/findVersions.d.ts +4 -5
  235. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  236. package/dist/collections/operations/local/findVersions.js +8 -18
  237. package/dist/collections/operations/local/index.d.ts +13 -13
  238. package/dist/collections/operations/local/index.d.ts.map +1 -1
  239. package/dist/collections/operations/local/index.js +20 -35
  240. package/dist/collections/operations/local/restoreVersion.d.ts +2 -3
  241. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  242. package/dist/collections/operations/local/restoreVersion.js +8 -18
  243. package/dist/collections/operations/local/update.d.ts +4 -5
  244. package/dist/collections/operations/local/update.d.ts.map +1 -1
  245. package/dist/collections/operations/local/update.js +12 -27
  246. package/dist/collections/operations/restoreVersion.d.ts +2 -2
  247. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  248. package/dist/collections/operations/restoreVersion.js +26 -41
  249. package/dist/collections/operations/update.d.ts +7 -8
  250. package/dist/collections/operations/update.d.ts.map +1 -1
  251. package/dist/collections/operations/update.js +43 -58
  252. package/dist/collections/operations/updateByID.d.ts +9 -9
  253. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  254. package/dist/collections/operations/updateByID.js +44 -59
  255. package/dist/collections/operations/utils.d.ts +12 -12
  256. package/dist/collections/operations/utils.d.ts.map +1 -1
  257. package/dist/collections/operations/utils.js +3 -12
  258. package/dist/config/build.d.ts +1 -1
  259. package/dist/config/build.d.ts.map +1 -1
  260. package/dist/config/build.js +9 -15
  261. package/dist/config/createClientConfig.d.ts +1243 -3
  262. package/dist/config/createClientConfig.d.ts.map +1 -1
  263. package/dist/config/createClientConfig.js +107 -72
  264. package/dist/config/defaults.d.ts +1 -1
  265. package/dist/config/defaults.d.ts.map +1 -1
  266. package/dist/config/defaults.js +4 -19
  267. package/dist/config/find.d.ts +1 -2
  268. package/dist/config/find.d.ts.map +1 -1
  269. package/dist/config/find.js +18 -34
  270. package/dist/config/load.d.ts +2 -2
  271. package/dist/config/load.d.ts.map +1 -1
  272. package/dist/config/load.js +17 -30
  273. package/dist/config/sanitize.d.ts +1 -1
  274. package/dist/config/sanitize.d.ts.map +1 -1
  275. package/dist/config/sanitize.js +25 -40
  276. package/dist/config/schema.d.ts.map +1 -1
  277. package/dist/config/schema.js +116 -133
  278. package/dist/config/shared/adminViewSchema.js +9 -24
  279. package/dist/config/shared/componentSchema.js +21 -50
  280. package/dist/config/types.d.ts +28 -34
  281. package/dist/config/types.d.ts.map +1 -1
  282. package/dist/config/types.js +9 -21
  283. package/dist/config/validate.d.ts +1 -1
  284. package/dist/config/validate.d.ts.map +1 -1
  285. package/dist/config/validate.js +15 -71
  286. package/dist/database/combineQueries.d.ts +1 -1
  287. package/dist/database/combineQueries.d.ts.map +1 -1
  288. package/dist/database/combineQueries.js +4 -14
  289. package/dist/database/createDatabaseAdapter.d.ts +1 -1
  290. package/dist/database/createDatabaseAdapter.d.ts.map +1 -1
  291. package/dist/database/createDatabaseAdapter.js +14 -24
  292. package/dist/database/flattenWhereToOperators.d.ts +1 -1
  293. package/dist/database/flattenWhereToOperators.d.ts.map +1 -1
  294. package/dist/database/flattenWhereToOperators.js +2 -12
  295. package/dist/database/getLocalizedPaths.d.ts +3 -3
  296. package/dist/database/getLocalizedPaths.d.ts.map +1 -1
  297. package/dist/database/getLocalizedPaths.js +7 -22
  298. package/dist/database/migrations/createMigration.d.ts +1 -1
  299. package/dist/database/migrations/createMigration.d.ts.map +1 -1
  300. package/dist/database/migrations/createMigration.js +7 -22
  301. package/dist/database/migrations/getMigrations.d.ts +2 -2
  302. package/dist/database/migrations/getMigrations.d.ts.map +1 -1
  303. package/dist/database/migrations/getMigrations.js +4 -12
  304. package/dist/database/migrations/migrate.d.ts +1 -1
  305. package/dist/database/migrations/migrate.d.ts.map +1 -1
  306. package/dist/database/migrations/migrate.js +12 -22
  307. package/dist/database/migrations/migrateDown.d.ts +1 -1
  308. package/dist/database/migrations/migrateDown.d.ts.map +1 -1
  309. package/dist/database/migrations/migrateDown.js +12 -22
  310. package/dist/database/migrations/migrateRefresh.d.ts +1 -1
  311. package/dist/database/migrations/migrateRefresh.d.ts.map +1 -1
  312. package/dist/database/migrations/migrateRefresh.js +16 -24
  313. package/dist/database/migrations/migrateReset.d.ts +1 -1
  314. package/dist/database/migrations/migrateReset.d.ts.map +1 -1
  315. package/dist/database/migrations/migrateReset.js +12 -22
  316. package/dist/database/migrations/migrateStatus.d.ts +1 -1
  317. package/dist/database/migrations/migrateStatus.d.ts.map +1 -1
  318. package/dist/database/migrations/migrateStatus.js +8 -18
  319. package/dist/database/migrations/migrationTemplate.js +2 -12
  320. package/dist/database/migrations/migrationsCollection.d.ts +1 -1
  321. package/dist/database/migrations/migrationsCollection.d.ts.map +1 -1
  322. package/dist/database/migrations/migrationsCollection.js +2 -12
  323. package/dist/database/migrations/readMigrationFiles.d.ts +2 -2
  324. package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
  325. package/dist/database/migrations/readMigrationFiles.js +17 -25
  326. package/dist/database/queryValidation/types.d.ts +2 -2
  327. package/dist/database/queryValidation/types.d.ts.map +1 -1
  328. package/dist/database/queryValidation/types.js +2 -5
  329. package/dist/database/queryValidation/validateQueryPaths.d.ts +5 -5
  330. package/dist/database/queryValidation/validateQueryPaths.d.ts.map +1 -1
  331. package/dist/database/queryValidation/validateQueryPaths.js +13 -28
  332. package/dist/database/queryValidation/validateSearchParams.d.ts +5 -5
  333. package/dist/database/queryValidation/validateSearchParams.d.ts.map +1 -1
  334. package/dist/database/queryValidation/validateSearchParams.js +17 -25
  335. package/dist/database/types.d.ts +11 -9
  336. package/dist/database/types.d.ts.map +1 -1
  337. package/dist/database/types.js +2 -5
  338. package/dist/email/build.d.ts +2 -2
  339. package/dist/email/build.d.ts.map +1 -1
  340. package/dist/email/build.js +11 -26
  341. package/dist/email/defaults.d.ts +1 -1
  342. package/dist/email/defaults.d.ts.map +1 -1
  343. package/dist/email/defaults.js +2 -12
  344. package/dist/email/mockHandler.d.ts +2 -2
  345. package/dist/email/mockHandler.d.ts.map +1 -1
  346. package/dist/email/mockHandler.js +8 -23
  347. package/dist/email/sendEmail.js +2 -12
  348. package/dist/email/types.js +2 -5
  349. package/dist/errors/APIError.js +4 -19
  350. package/dist/errors/AuthenticationError.d.ts +1 -1
  351. package/dist/errors/AuthenticationError.d.ts.map +1 -1
  352. package/dist/errors/AuthenticationError.js +7 -22
  353. package/dist/errors/DuplicateCollection.d.ts +1 -1
  354. package/dist/errors/DuplicateCollection.d.ts.map +1 -1
  355. package/dist/errors/DuplicateCollection.js +4 -19
  356. package/dist/errors/DuplicateFieldName.d.ts +1 -1
  357. package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
  358. package/dist/errors/DuplicateFieldName.js +4 -19
  359. package/dist/errors/DuplicateGlobal.d.ts +2 -2
  360. package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
  361. package/dist/errors/DuplicateGlobal.js +4 -19
  362. package/dist/errors/ErrorDeletingFile.d.ts +1 -1
  363. package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
  364. package/dist/errors/ErrorDeletingFile.js +7 -22
  365. package/dist/errors/FileUploadError.d.ts +1 -1
  366. package/dist/errors/FileUploadError.d.ts.map +1 -1
  367. package/dist/errors/FileUploadError.js +7 -22
  368. package/dist/errors/Forbidden.d.ts +1 -1
  369. package/dist/errors/Forbidden.d.ts.map +1 -1
  370. package/dist/errors/Forbidden.js +7 -22
  371. package/dist/errors/InvalidConfiguration.d.ts +1 -1
  372. package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
  373. package/dist/errors/InvalidConfiguration.js +6 -21
  374. package/dist/errors/InvalidFieldName.d.ts +2 -2
  375. package/dist/errors/InvalidFieldName.d.ts.map +1 -1
  376. package/dist/errors/InvalidFieldName.js +4 -19
  377. package/dist/errors/InvalidFieldRelationship.d.ts +2 -2
  378. package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
  379. package/dist/errors/InvalidFieldRelationship.js +4 -19
  380. package/dist/errors/InvalidSchema.d.ts +1 -1
  381. package/dist/errors/InvalidSchema.d.ts.map +1 -1
  382. package/dist/errors/InvalidSchema.js +6 -21
  383. package/dist/errors/LockedAuth.d.ts +1 -1
  384. package/dist/errors/LockedAuth.d.ts.map +1 -1
  385. package/dist/errors/LockedAuth.js +7 -22
  386. package/dist/errors/MissingCollectionLabel.d.ts +1 -1
  387. package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
  388. package/dist/errors/MissingCollectionLabel.js +4 -19
  389. package/dist/errors/MissingFieldInputOptions.d.ts +2 -2
  390. package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
  391. package/dist/errors/MissingFieldInputOptions.js +4 -19
  392. package/dist/errors/MissingFieldType.d.ts +2 -2
  393. package/dist/errors/MissingFieldType.d.ts.map +1 -1
  394. package/dist/errors/MissingFieldType.js +6 -21
  395. package/dist/errors/MissingFile.d.ts +1 -1
  396. package/dist/errors/MissingFile.d.ts.map +1 -1
  397. package/dist/errors/MissingFile.js +7 -22
  398. package/dist/errors/NotFound.d.ts +1 -1
  399. package/dist/errors/NotFound.d.ts.map +1 -1
  400. package/dist/errors/NotFound.js +7 -22
  401. package/dist/errors/QueryError.d.ts +1 -1
  402. package/dist/errors/QueryError.d.ts.map +1 -1
  403. package/dist/errors/QueryError.js +6 -21
  404. package/dist/errors/TimestampsRequired.d.ts +2 -2
  405. package/dist/errors/TimestampsRequired.d.ts.map +1 -1
  406. package/dist/errors/TimestampsRequired.js +4 -19
  407. package/dist/errors/UnathorizedError.d.ts +1 -1
  408. package/dist/errors/UnathorizedError.d.ts.map +1 -1
  409. package/dist/errors/UnathorizedError.js +7 -22
  410. package/dist/errors/ValidationError.d.ts +1 -1
  411. package/dist/errors/ValidationError.d.ts.map +1 -1
  412. package/dist/errors/ValidationError.js +8 -23
  413. package/dist/errors/index.d.ts +19 -19
  414. package/dist/errors/index.d.ts.map +1 -1
  415. package/dist/errors/index.js +20 -94
  416. package/dist/errors/types.d.ts +1 -1
  417. package/dist/errors/types.d.ts.map +1 -1
  418. package/dist/errors/types.js +2 -19
  419. package/dist/exports/auth.d.ts +5 -5
  420. package/dist/exports/auth.d.ts.map +1 -1
  421. package/dist/exports/auth.js +5 -44
  422. package/dist/exports/components/utilities.js +0 -1
  423. package/dist/exports/config.d.ts +10 -10
  424. package/dist/exports/config.d.ts.map +1 -1
  425. package/dist/exports/config.js +10 -59
  426. package/dist/exports/database.d.ts +22 -22
  427. package/dist/exports/database.d.ts.map +1 -1
  428. package/dist/exports/database.js +21 -108
  429. package/dist/exports/errors.d.ts +1 -1
  430. package/dist/exports/errors.d.ts.map +1 -1
  431. package/dist/exports/errors.js +2 -68
  432. package/dist/exports/fields/index.d.ts +2 -2
  433. package/dist/exports/fields/index.d.ts.map +1 -1
  434. package/dist/exports/fields/index.js +3 -26
  435. package/dist/exports/fields/validations.d.ts +1 -1
  436. package/dist/exports/fields/validations.d.ts.map +1 -1
  437. package/dist/exports/fields/validations.js +2 -19
  438. package/dist/exports/operations.d.ts +28 -28
  439. package/dist/exports/operations.d.ts.map +1 -1
  440. package/dist/exports/operations.js +29 -125
  441. package/dist/exports/types.d.ts +11 -11
  442. package/dist/exports/types.d.ts.map +1 -1
  443. package/dist/exports/types.js +4 -74
  444. package/dist/exports/utilities.d.ts +28 -27
  445. package/dist/exports/utilities.d.ts.map +1 -1
  446. package/dist/exports/utilities.js +29 -141
  447. package/dist/exports/versions.d.ts +9 -9
  448. package/dist/exports/versions.d.ts.map +1 -1
  449. package/dist/exports/versions.js +9 -45
  450. package/dist/fields/baseFields/baseBlockFields.d.ts +1 -1
  451. package/dist/fields/baseFields/baseBlockFields.d.ts.map +1 -1
  452. package/dist/fields/baseFields/baseBlockFields.js +6 -16
  453. package/dist/fields/baseFields/baseIDField.d.ts +1 -1
  454. package/dist/fields/baseFields/baseIDField.d.ts.map +1 -1
  455. package/dist/fields/baseFields/baseIDField.js +7 -21
  456. package/dist/fields/config/sanitize.d.ts +2 -2
  457. package/dist/fields/config/sanitize.d.ts.map +1 -1
  458. package/dist/fields/config/sanitize.js +28 -43
  459. package/dist/fields/config/sanitize.spec.js +25 -29
  460. package/dist/fields/config/schema.js +336 -431
  461. package/dist/fields/config/types.d.ts +5 -6
  462. package/dist/fields/config/types.d.ts.map +1 -1
  463. package/dist/fields/config/types.js +15 -69
  464. package/dist/fields/getDefaultValue.d.ts +1 -1
  465. package/dist/fields/getDefaultValue.d.ts.map +1 -1
  466. package/dist/fields/getDefaultValue.js +2 -12
  467. package/dist/fields/hooks/afterChange/index.d.ts +3 -3
  468. package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
  469. package/dist/fields/hooks/afterChange/index.js +6 -16
  470. package/dist/fields/hooks/afterChange/promise.d.ts +4 -4
  471. package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
  472. package/dist/fields/hooks/afterChange/promise.js +14 -22
  473. package/dist/fields/hooks/afterChange/traverseFields.d.ts +4 -4
  474. package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
  475. package/dist/fields/hooks/afterChange/traverseFields.js +4 -14
  476. package/dist/fields/hooks/afterRead/index.d.ts +3 -3
  477. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
  478. package/dist/fields/hooks/afterRead/index.js +6 -16
  479. package/dist/fields/hooks/afterRead/promise.d.ts +4 -4
  480. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  481. package/dist/fields/hooks/afterRead/promise.js +28 -38
  482. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +2 -2
  483. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  484. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +5 -15
  485. package/dist/fields/hooks/afterRead/traverseFields.d.ts +4 -4
  486. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  487. package/dist/fields/hooks/afterRead/traverseFields.js +4 -14
  488. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js +2 -12
  489. package/dist/fields/hooks/beforeChange/getExistingRowDoc.js +2 -12
  490. package/dist/fields/hooks/beforeChange/index.d.ts +3 -4
  491. package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
  492. package/dist/fields/hooks/beforeChange/index.js +8 -18
  493. package/dist/fields/hooks/beforeChange/promise.d.ts +4 -5
  494. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  495. package/dist/fields/hooks/beforeChange/promise.js +26 -35
  496. package/dist/fields/hooks/beforeChange/traverseFields.d.ts +4 -5
  497. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  498. package/dist/fields/hooks/beforeChange/traverseFields.js +4 -14
  499. package/dist/fields/hooks/beforeValidate/index.d.ts +3 -3
  500. package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
  501. package/dist/fields/hooks/beforeValidate/index.js +6 -16
  502. package/dist/fields/hooks/beforeValidate/promise.d.ts +4 -4
  503. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  504. package/dist/fields/hooks/beforeValidate/promise.js +30 -39
  505. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +4 -4
  506. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
  507. package/dist/fields/hooks/beforeValidate/traverseFields.js +4 -14
  508. package/dist/fields/mergeBaseFields.d.ts +1 -1
  509. package/dist/fields/mergeBaseFields.d.ts.map +1 -1
  510. package/dist/fields/mergeBaseFields.js +8 -23
  511. package/dist/fields/sortableFieldTypes.js +2 -12
  512. package/dist/fields/validations.d.ts +6 -6
  513. package/dist/fields/validations.d.ts.map +1 -1
  514. package/dist/fields/validations.js +31 -97
  515. package/dist/fields/validations.spec.js +93 -87
  516. package/dist/globals/config/sanitize.d.ts +2 -2
  517. package/dist/globals/config/sanitize.d.ts.map +1 -1
  518. package/dist/globals/config/sanitize.js +23 -34
  519. package/dist/globals/config/schema.js +55 -70
  520. package/dist/globals/config/types.d.ts +11 -11
  521. package/dist/globals/config/types.d.ts.map +1 -1
  522. package/dist/globals/config/types.js +2 -5
  523. package/dist/globals/operations/docAccess.d.ts +3 -3
  524. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  525. package/dist/globals/operations/docAccess.js +12 -22
  526. package/dist/globals/operations/findOne.d.ts +2 -2
  527. package/dist/globals/operations/findOne.d.ts.map +1 -1
  528. package/dist/globals/operations/findOne.js +14 -29
  529. package/dist/globals/operations/findVersionByID.d.ts +3 -3
  530. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  531. package/dist/globals/operations/findVersionByID.js +18 -33
  532. package/dist/globals/operations/findVersions.d.ts +4 -5
  533. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  534. package/dist/globals/operations/findVersions.js +20 -35
  535. package/dist/globals/operations/local/findOne.d.ts +2 -4
  536. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  537. package/dist/globals/operations/local/findOne.js +11 -21
  538. package/dist/globals/operations/local/findVersionByID.d.ts +3 -5
  539. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  540. package/dist/globals/operations/local/findVersionByID.js +9 -19
  541. package/dist/globals/operations/local/findVersions.d.ts +4 -6
  542. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  543. package/dist/globals/operations/local/findVersions.js +9 -19
  544. package/dist/globals/operations/local/index.d.ts +5 -5
  545. package/dist/globals/operations/local/index.d.ts.map +1 -1
  546. package/dist/globals/operations/local/index.js +12 -27
  547. package/dist/globals/operations/local/restoreVersion.d.ts +2 -4
  548. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  549. package/dist/globals/operations/local/restoreVersion.js +9 -19
  550. package/dist/globals/operations/local/update.d.ts +2 -4
  551. package/dist/globals/operations/local/update.d.ts.map +1 -1
  552. package/dist/globals/operations/local/update.js +9 -19
  553. package/dist/globals/operations/restoreVersion.d.ts +3 -3
  554. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  555. package/dist/globals/operations/restoreVersion.js +16 -31
  556. package/dist/globals/operations/update.d.ts +9 -9
  557. package/dist/globals/operations/update.d.ts.map +1 -1
  558. package/dist/globals/operations/update.js +23 -38
  559. package/dist/index.d.ts +29 -29
  560. package/dist/index.d.ts.map +1 -1
  561. package/dist/index.js +50 -71
  562. package/dist/localization/middleware.js +2 -12
  563. package/dist/localization/sanitizeFallbackLocale.js +2 -12
  564. package/dist/preferences/deleteUserPreferences.d.ts +3 -3
  565. package/dist/preferences/deleteUserPreferences.d.ts.map +1 -1
  566. package/dist/preferences/deleteUserPreferences.js +2 -12
  567. package/dist/preferences/operations/delete.d.ts +2 -2
  568. package/dist/preferences/operations/delete.d.ts.map +1 -1
  569. package/dist/preferences/operations/delete.js +10 -25
  570. package/dist/preferences/operations/findOne.d.ts +2 -2
  571. package/dist/preferences/operations/findOne.d.ts.map +1 -1
  572. package/dist/preferences/operations/findOne.js +2 -12
  573. package/dist/preferences/operations/update.d.ts +1 -1
  574. package/dist/preferences/operations/update.d.ts.map +1 -1
  575. package/dist/preferences/operations/update.js +8 -23
  576. package/dist/preferences/preferencesCollection.d.ts +2 -2
  577. package/dist/preferences/preferencesCollection.d.ts.map +1 -1
  578. package/dist/preferences/preferencesCollection.js +8 -18
  579. package/dist/preferences/requestHandlers/delete.d.ts +1 -1
  580. package/dist/preferences/requestHandlers/delete.d.ts.map +1 -1
  581. package/dist/preferences/requestHandlers/delete.js +6 -21
  582. package/dist/preferences/requestHandlers/findOne.d.ts +1 -1
  583. package/dist/preferences/requestHandlers/findOne.d.ts.map +1 -1
  584. package/dist/preferences/requestHandlers/findOne.js +6 -21
  585. package/dist/preferences/requestHandlers/update.d.ts +1 -1
  586. package/dist/preferences/requestHandlers/update.d.ts.map +1 -1
  587. package/dist/preferences/requestHandlers/update.js +6 -21
  588. package/dist/preferences/types.d.ts +2 -2
  589. package/dist/preferences/types.d.ts.map +1 -1
  590. package/dist/preferences/types.js +2 -5
  591. package/dist/translations/extractTranslations.js +4 -14
  592. package/dist/translations/getLocalI18n.d.ts +1 -1
  593. package/dist/translations/getLocalI18n.d.ts.map +1 -1
  594. package/dist/translations/getLocalI18n.js +5 -15
  595. package/dist/types/constants.js +2 -12
  596. package/dist/types/index.d.ts +8 -6
  597. package/dist/types/index.d.ts.map +1 -1
  598. package/dist/types/index.js +2 -12
  599. package/dist/uploads/canResizeImage.js +2 -12
  600. package/dist/uploads/cropImage.d.ts +3 -7
  601. package/dist/uploads/cropImage.d.ts.map +1 -1
  602. package/dist/uploads/cropImage.js +4 -28
  603. package/dist/uploads/deleteAssociatedFiles.d.ts +4 -4
  604. package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
  605. package/dist/uploads/deleteAssociatedFiles.js +11 -26
  606. package/dist/uploads/docWithFilenameExists.d.ts +1 -1
  607. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  608. package/dist/uploads/docWithFilenameExists.js +2 -12
  609. package/dist/uploads/fileExists.js +4 -19
  610. package/dist/uploads/formatFilesize.js +2 -12
  611. package/dist/uploads/generateFileData.d.ts +4 -4
  612. package/dist/uploads/generateFileData.d.ts.map +1 -1
  613. package/dist/uploads/generateFileData.js +42 -55
  614. package/dist/uploads/getBaseFields.d.ts +3 -3
  615. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  616. package/dist/uploads/getBaseFields.js +6 -16
  617. package/dist/uploads/getExternalFile.d.ts +2 -2
  618. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  619. package/dist/uploads/getExternalFile.js +5 -15
  620. package/dist/uploads/getFileByPath.d.ts +1 -1
  621. package/dist/uploads/getFileByPath.d.ts.map +1 -1
  622. package/dist/uploads/getFileByPath.js +11 -25
  623. package/dist/uploads/getImageSize.d.ts +3 -3
  624. package/dist/uploads/getImageSize.d.ts.map +1 -1
  625. package/dist/uploads/getImageSize.js +14 -22
  626. package/dist/uploads/getSafeFilename.d.ts +1 -1
  627. package/dist/uploads/getSafeFilename.d.ts.map +1 -1
  628. package/dist/uploads/getSafeFilename.js +8 -23
  629. package/dist/uploads/imageResizer.d.ts +6 -5
  630. package/dist/uploads/imageResizer.d.ts.map +1 -1
  631. package/dist/uploads/imageResizer.js +29 -44
  632. package/dist/uploads/isImage.js +2 -12
  633. package/dist/uploads/mimeTypeValidator.d.ts +1 -1
  634. package/dist/uploads/mimeTypeValidator.d.ts.map +1 -1
  635. package/dist/uploads/mimeTypeValidator.js +2 -12
  636. package/dist/uploads/mimeTypeValidator.spec.js +11 -15
  637. package/dist/uploads/saveBufferToFile.d.ts +1 -1
  638. package/dist/uploads/saveBufferToFile.js +6 -21
  639. package/dist/uploads/types.d.ts +8 -4
  640. package/dist/uploads/types.d.ts.map +1 -1
  641. package/dist/uploads/types.js +2 -5
  642. package/dist/uploads/unlinkTempFiles.d.ts +3 -3
  643. package/dist/uploads/unlinkTempFiles.d.ts.map +1 -1
  644. package/dist/uploads/unlinkTempFiles.js +9 -22
  645. package/dist/uploads/uploadFiles.d.ts +3 -3
  646. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  647. package/dist/uploads/uploadFiles.js +6 -21
  648. package/dist/utilities/checkDuplicateCollections.d.ts +1 -1
  649. package/dist/utilities/checkDuplicateCollections.d.ts.map +1 -1
  650. package/dist/utilities/checkDuplicateCollections.js +4 -14
  651. package/dist/utilities/combineMerge.js +4 -19
  652. package/dist/utilities/commitTransaction.d.ts +1 -1
  653. package/dist/utilities/commitTransaction.d.ts.map +1 -1
  654. package/dist/utilities/commitTransaction.js +4 -12
  655. package/dist/utilities/configToJSONSchema.d.ts +12 -6
  656. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  657. package/dist/utilities/configToJSONSchema.js +82 -97
  658. package/dist/utilities/configToJSONSchema.spec.js +5 -9
  659. package/dist/utilities/convertData.js +3 -23
  660. package/dist/utilities/createArrayFromCommaDelineated.js +2 -12
  661. package/dist/utilities/createLocalReq.d.ts +3 -3
  662. package/dist/utilities/createLocalReq.d.ts.map +1 -1
  663. package/dist/utilities/createLocalReq.js +7 -16
  664. package/dist/utilities/deepCopyObject.js +2 -12
  665. package/dist/utilities/deepMerge.js +2 -12
  666. package/dist/utilities/fieldSchemaToJSON.d.ts +2 -2
  667. package/dist/utilities/fieldSchemaToJSON.d.ts.map +1 -1
  668. package/dist/utilities/fieldSchemaToJSON.js +2 -12
  669. package/dist/utilities/flattenTopLevelFields.d.ts +1 -1
  670. package/dist/utilities/flattenTopLevelFields.d.ts.map +1 -1
  671. package/dist/utilities/flattenTopLevelFields.js +6 -16
  672. package/dist/utilities/formatLabels.d.ts +2 -1
  673. package/dist/utilities/formatLabels.d.ts.map +1 -1
  674. package/dist/utilities/formatLabels.js +10 -70
  675. package/dist/utilities/formatLabels.spec.js +8 -12
  676. package/dist/utilities/getCSSVariable.js +2 -12
  677. package/dist/utilities/getCollectionIDFieldTypes.d.ts +13 -0
  678. package/dist/utilities/getCollectionIDFieldTypes.d.ts.map +1 -0
  679. package/dist/utilities/getCollectionIDFieldTypes.js +16 -0
  680. package/dist/utilities/getEntityPolicies.d.ts +4 -4
  681. package/dist/utilities/getEntityPolicies.d.ts.map +1 -1
  682. package/dist/utilities/getEntityPolicies.js +4 -14
  683. package/dist/utilities/getIDType.d.ts +2 -2
  684. package/dist/utilities/getIDType.d.ts.map +1 -1
  685. package/dist/utilities/getIDType.js +2 -12
  686. package/dist/utilities/getObjectDotNotation.js +2 -12
  687. package/dist/utilities/getUniqueListBy.js +2 -12
  688. package/dist/utilities/initTransaction.d.ts +1 -1
  689. package/dist/utilities/initTransaction.d.ts.map +1 -1
  690. package/dist/utilities/initTransaction.js +5 -12
  691. package/dist/utilities/isEntityHidden.d.ts +2 -2
  692. package/dist/utilities/isEntityHidden.d.ts.map +1 -1
  693. package/dist/utilities/isEntityHidden.js +2 -12
  694. package/dist/utilities/isNumber.js +2 -12
  695. package/dist/utilities/isPlainObject.d.ts +2 -0
  696. package/dist/utilities/isPlainObject.d.ts.map +1 -0
  697. package/dist/utilities/isPlainObject.js +25 -0
  698. package/dist/utilities/isValidID.d.ts.map +1 -1
  699. package/dist/utilities/isValidID.js +6 -20
  700. package/dist/utilities/isolateObjectProperty.js +2 -12
  701. package/dist/utilities/killTransaction.d.ts +1 -1
  702. package/dist/utilities/killTransaction.d.ts.map +1 -1
  703. package/dist/utilities/killTransaction.js +4 -12
  704. package/dist/utilities/logger.d.ts +6 -6
  705. package/dist/utilities/logger.d.ts.map +1 -1
  706. package/dist/utilities/logger.js +18 -37
  707. package/dist/utilities/mapAsync.js +2 -12
  708. package/dist/utilities/overwriteMerge.js +2 -12
  709. package/dist/utilities/parseCookies.js +4 -14
  710. package/dist/utilities/sanitizeInternalFields.js +2 -12
  711. package/dist/utilities/setsAreEqual.js +2 -12
  712. package/dist/utilities/telemetry/events/adminInit.d.ts +2 -2
  713. package/dist/utilities/telemetry/events/adminInit.d.ts.map +1 -1
  714. package/dist/utilities/telemetry/events/adminInit.js +7 -17
  715. package/dist/utilities/telemetry/events/serverInit.d.ts +1 -1
  716. package/dist/utilities/telemetry/events/serverInit.d.ts.map +1 -1
  717. package/dist/utilities/telemetry/events/serverInit.js +4 -14
  718. package/dist/utilities/telemetry/index.d.ts +3 -3
  719. package/dist/utilities/telemetry/index.d.ts.map +1 -1
  720. package/dist/utilities/telemetry/index.js +23 -41
  721. package/dist/utilities/telemetry/oneWayHash.js +4 -14
  722. package/dist/utilities/timestamp.js +2 -12
  723. package/dist/utilities/toKebabCase.js +2 -12
  724. package/dist/utilities/wait.js +2 -12
  725. package/dist/utilities/wordBoundariesRegex.js +3 -13
  726. package/dist/versions/baseFields.d.ts +1 -1
  727. package/dist/versions/baseFields.d.ts.map +1 -1
  728. package/dist/versions/baseFields.js +7 -25
  729. package/dist/versions/buildCollectionFields.d.ts +2 -2
  730. package/dist/versions/buildCollectionFields.d.ts.map +1 -1
  731. package/dist/versions/buildCollectionFields.js +2 -12
  732. package/dist/versions/buildGlobalFields.d.ts +2 -2
  733. package/dist/versions/buildGlobalFields.d.ts.map +1 -1
  734. package/dist/versions/buildGlobalFields.js +12 -22
  735. package/dist/versions/deleteCollectionVersions.d.ts +3 -3
  736. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  737. package/dist/versions/deleteCollectionVersions.js +2 -12
  738. package/dist/versions/drafts/appendVersionToQueryKey.d.ts +1 -1
  739. package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
  740. package/dist/versions/drafts/appendVersionToQueryKey.js +2 -12
  741. package/dist/versions/drafts/getQueryDraftsSort.js +2 -12
  742. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts +4 -4
  743. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  744. package/dist/versions/drafts/replaceWithDraftIfAvailable.js +12 -27
  745. package/dist/versions/enforceMaxVersions.d.ts +3 -3
  746. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  747. package/dist/versions/enforceMaxVersions.js +2 -12
  748. package/dist/versions/getLatestCollectionVersion.d.ts +3 -3
  749. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  750. package/dist/versions/getLatestCollectionVersion.js +4 -14
  751. package/dist/versions/getLatestGlobalVersion.d.ts +3 -3
  752. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  753. package/dist/versions/getLatestGlobalVersion.js +5 -15
  754. package/dist/versions/getVersionsModelName.d.ts +2 -2
  755. package/dist/versions/getVersionsModelName.d.ts.map +1 -1
  756. package/dist/versions/getVersionsModelName.js +2 -12
  757. package/dist/versions/saveVersion.d.ts +4 -4
  758. package/dist/versions/saveVersion.d.ts.map +1 -1
  759. package/dist/versions/saveVersion.js +8 -23
  760. package/dist/versions/types.js +2 -5
  761. package/errors.d.ts +1 -1
  762. package/errors.js +2 -68
  763. package/graphql.d.ts +3 -0
  764. package/graphql.js +27 -0
  765. package/operations.d.ts +28 -28
  766. package/operations.js +29 -125
  767. package/package.json +10 -7
  768. package/types.d.ts +11 -11
  769. package/types.js +4 -74
  770. package/utilities.d.ts +28 -27
  771. package/utilities.js +29 -141
  772. package/versions.d.ts +9 -9
  773. package/versions.js +9 -45
  774. package/.eslintrc.js +0 -58
  775. package/dist/bundlers/mocks/db-mongodb.js +0 -3
  776. package/dist/bundlers/mocks/db-postgres.js +0 -13
  777. package/dist/bundlers/mocks/dotENV.js +0 -15
  778. package/dist/bundlers/mocks/emptyModule.js +0 -13
  779. package/dist/bundlers/mocks/fileMock.js +0 -13
  780. package/dist/bundlers/types.d.ts +0 -8
  781. package/dist/bundlers/types.d.ts.map +0 -1
  782. package/dist/bundlers/types.js +0 -6
  783. package/dist/config/clientFiles.d.ts +0 -2
  784. package/dist/config/clientFiles.d.ts.map +0 -1
  785. package/dist/config/clientFiles.js +0 -23
  786. package/dist/express/middleware/errorHandler.d.ts +0 -2
  787. package/dist/express/middleware/errorHandler.d.ts.map +0 -1
  788. package/dist/express/middleware/errorHandler.js +0 -3
  789. package/dist/express/middleware/index.d.ts +0 -2
  790. package/dist/express/middleware/index.d.ts.map +0 -1
  791. package/dist/express/middleware/index.js +0 -3
  792. package/dist/globals/config/build.d.ts +0 -2
  793. package/dist/globals/config/build.d.ts.map +0 -1
  794. package/dist/globals/config/build.js +0 -3
  795. package/dist/globals/graphql/resolvers/docAccess.d.ts +0 -2
  796. package/dist/globals/graphql/resolvers/docAccess.d.ts.map +0 -1
  797. package/dist/globals/graphql/resolvers/docAccess.js +0 -3
@@ -1,42 +1,27 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "updateByIDOperation", {
6
- enumerable: true,
7
- get: function() {
8
- return updateByIDOperation;
9
- }
10
- });
11
- const _httpstatus = /*#__PURE__*/ _interop_require_default(require("http-status"));
12
- const _executeAccess = /*#__PURE__*/ _interop_require_default(require("../../auth/executeAccess"));
13
- const _generatePasswordSaltHash = require("../../auth/strategies/local/generatePasswordSaltHash");
14
- const _types = require("../../auth/types");
15
- const _combineQueries = require("../../database/combineQueries");
16
- const _errors = require("../../errors");
17
- const _afterChange = require("../../fields/hooks/afterChange");
18
- const _afterRead = require("../../fields/hooks/afterRead");
19
- const _beforeChange = require("../../fields/hooks/beforeChange");
20
- const _beforeValidate = require("../../fields/hooks/beforeValidate");
21
- const _deleteAssociatedFiles = require("../../uploads/deleteAssociatedFiles");
22
- const _generateFileData = require("../../uploads/generateFileData");
23
- const _unlinkTempFiles = require("../../uploads/unlinkTempFiles");
24
- const _uploadFiles = require("../../uploads/uploadFiles");
25
- const _commitTransaction = require("../../utilities/commitTransaction");
26
- const _initTransaction = require("../../utilities/initTransaction");
27
- const _killTransaction = require("../../utilities/killTransaction");
28
- const _getLatestCollectionVersion = require("../../versions/getLatestCollectionVersion");
29
- const _saveVersion = require("../../versions/saveVersion");
30
- const _utils = require("./utils");
31
- function _interop_require_default(obj) {
32
- return obj && obj.__esModule ? obj : {
33
- default: obj
34
- };
35
- }
36
- const updateByIDOperation = async (incomingArgs)=>{
1
+ import httpStatus from 'http-status';
2
+ import executeAccess from '../../auth/executeAccess.js';
3
+ import { generatePasswordSaltHash } from '../../auth/strategies/local/generatePasswordSaltHash.js';
4
+ import { hasWhereAccessResult } from '../../auth/types.js';
5
+ import { combineQueries } from '../../database/combineQueries.js';
6
+ import { APIError, Forbidden, NotFound } from '../../errors/index.js';
7
+ import { afterChange } from '../../fields/hooks/afterChange/index.js';
8
+ import { afterRead } from '../../fields/hooks/afterRead/index.js';
9
+ import { beforeChange } from '../../fields/hooks/beforeChange/index.js';
10
+ import { beforeValidate } from '../../fields/hooks/beforeValidate/index.js';
11
+ import { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles.js';
12
+ import { generateFileData } from '../../uploads/generateFileData.js';
13
+ import { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js';
14
+ import { uploadFiles } from '../../uploads/uploadFiles.js';
15
+ import { commitTransaction } from '../../utilities/commitTransaction.js';
16
+ import { initTransaction } from '../../utilities/initTransaction.js';
17
+ import { killTransaction } from '../../utilities/killTransaction.js';
18
+ import { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js';
19
+ import { saveVersion } from '../../versions/saveVersion.js';
20
+ import { buildAfterOperation } from './utils.js';
21
+ export const updateByIDOperation = async (incomingArgs)=>{
37
22
  let args = incomingArgs;
38
23
  try {
39
- const shouldCommit = await (0, _initTransaction.initTransaction)(args.req);
24
+ const shouldCommit = await initTransaction(args.req);
40
25
  // /////////////////////////////////////
41
26
  // beforeOperation - Collection
42
27
  // /////////////////////////////////////
@@ -52,7 +37,7 @@ const updateByIDOperation = async (incomingArgs)=>{
52
37
  }, Promise.resolve());
53
38
  const { id, autosave = false, collection: { config: collectionConfig }, collection, depth, draft: draftArg = false, overrideAccess, overwriteExistingFiles = false, req: { fallbackLocale, locale, payload: { config }, payload }, req, showHiddenFields } = args;
54
39
  if (!id) {
55
- throw new _errors.APIError('Missing ID of document to update.', _httpstatus.default.BAD_REQUEST);
40
+ throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST);
56
41
  }
57
42
  let { data } = args;
58
43
  const password = data?.password;
@@ -61,12 +46,12 @@ const updateByIDOperation = async (incomingArgs)=>{
61
46
  // /////////////////////////////////////
62
47
  // Access
63
48
  // /////////////////////////////////////
64
- const accessResults = !overrideAccess ? await (0, _executeAccess.default)({
49
+ const accessResults = !overrideAccess ? await executeAccess({
65
50
  id,
66
51
  data,
67
52
  req
68
53
  }, collectionConfig.access.update) : true;
69
- const hasWherePolicy = (0, _types.hasWhereAccessResult)(accessResults);
54
+ const hasWherePolicy = hasWhereAccessResult(accessResults);
70
55
  // /////////////////////////////////////
71
56
  // Retrieve document
72
57
  // /////////////////////////////////////
@@ -74,22 +59,22 @@ const updateByIDOperation = async (incomingArgs)=>{
74
59
  collection: collectionConfig.slug,
75
60
  locale,
76
61
  req,
77
- where: (0, _combineQueries.combineQueries)({
62
+ where: combineQueries({
78
63
  id: {
79
64
  equals: id
80
65
  }
81
66
  }, accessResults)
82
67
  };
83
- const docWithLocales = await (0, _getLatestCollectionVersion.getLatestCollectionVersion)({
68
+ const docWithLocales = await getLatestCollectionVersion({
84
69
  id,
85
70
  config: collectionConfig,
86
71
  payload,
87
72
  query: findOneArgs,
88
73
  req
89
74
  });
90
- if (!docWithLocales && !hasWherePolicy) throw new _errors.NotFound(req.t);
91
- if (!docWithLocales && hasWherePolicy) throw new _errors.Forbidden(req.t);
92
- const originalDoc = await (0, _afterRead.afterRead)({
75
+ if (!docWithLocales && !hasWherePolicy) throw new NotFound(req.t);
76
+ if (!docWithLocales && hasWherePolicy) throw new Forbidden(req.t);
77
+ const originalDoc = await afterRead({
93
78
  collection: collectionConfig,
94
79
  context: req.context,
95
80
  depth: 0,
@@ -104,7 +89,7 @@ const updateByIDOperation = async (incomingArgs)=>{
104
89
  // /////////////////////////////////////
105
90
  // Generate data for all files and sizes
106
91
  // /////////////////////////////////////
107
- const { data: newFileData, files: filesToUpload } = await (0, _generateFileData.generateFileData)({
92
+ const { data: newFileData, files: filesToUpload } = await generateFileData({
108
93
  collection,
109
94
  config,
110
95
  data,
@@ -116,7 +101,7 @@ const updateByIDOperation = async (incomingArgs)=>{
116
101
  // /////////////////////////////////////
117
102
  // Delete any associated files
118
103
  // /////////////////////////////////////
119
- await (0, _deleteAssociatedFiles.deleteAssociatedFiles)({
104
+ await deleteAssociatedFiles({
120
105
  collectionConfig,
121
106
  config,
122
107
  doc: docWithLocales,
@@ -127,7 +112,7 @@ const updateByIDOperation = async (incomingArgs)=>{
127
112
  // /////////////////////////////////////
128
113
  // beforeValidate - Fields
129
114
  // /////////////////////////////////////
130
- data = await (0, _beforeValidate.beforeValidate)({
115
+ data = await beforeValidate({
131
116
  id,
132
117
  collection: collectionConfig,
133
118
  context: req.context,
@@ -156,7 +141,7 @@ const updateByIDOperation = async (incomingArgs)=>{
156
141
  // Write files to local storage
157
142
  // /////////////////////////////////////
158
143
  if (!collectionConfig.upload.disableLocalStorage) {
159
- await (0, _uploadFiles.uploadFiles)(payload, filesToUpload, req);
144
+ await uploadFiles(payload, filesToUpload, req);
160
145
  }
161
146
  // /////////////////////////////////////
162
147
  // beforeChange - Collection
@@ -175,7 +160,7 @@ const updateByIDOperation = async (incomingArgs)=>{
175
160
  // /////////////////////////////////////
176
161
  // beforeChange - Fields
177
162
  // /////////////////////////////////////
178
- let result = await (0, _beforeChange.beforeChange)({
163
+ let result = await beforeChange({
179
164
  id,
180
165
  collection: collectionConfig,
181
166
  context: req.context,
@@ -194,7 +179,7 @@ const updateByIDOperation = async (incomingArgs)=>{
194
179
  ...result
195
180
  };
196
181
  if (shouldSavePassword && typeof password === 'string') {
197
- const { hash, salt } = await (0, _generatePasswordSaltHash.generatePasswordSaltHash)({
182
+ const { hash, salt } = await generatePasswordSaltHash({
198
183
  password
199
184
  });
200
185
  dataToUpdate.salt = salt;
@@ -218,7 +203,7 @@ const updateByIDOperation = async (incomingArgs)=>{
218
203
  // Create version
219
204
  // /////////////////////////////////////
220
205
  if (collectionConfig.versions) {
221
- result = await (0, _saveVersion.saveVersion)({
206
+ result = await saveVersion({
222
207
  id,
223
208
  autosave,
224
209
  collection: collectionConfig,
@@ -234,7 +219,7 @@ const updateByIDOperation = async (incomingArgs)=>{
234
219
  // /////////////////////////////////////
235
220
  // afterRead - Fields
236
221
  // /////////////////////////////////////
237
- result = await (0, _afterRead.afterRead)({
222
+ result = await afterRead({
238
223
  collection: collectionConfig,
239
224
  context: req.context,
240
225
  depth,
@@ -261,7 +246,7 @@ const updateByIDOperation = async (incomingArgs)=>{
261
246
  // /////////////////////////////////////
262
247
  // afterChange - Fields
263
248
  // /////////////////////////////////////
264
- result = await (0, _afterChange.afterChange)({
249
+ result = await afterChange({
265
250
  collection: collectionConfig,
266
251
  context: req.context,
267
252
  data,
@@ -288,13 +273,13 @@ const updateByIDOperation = async (incomingArgs)=>{
288
273
  // /////////////////////////////////////
289
274
  // afterOperation - Collection
290
275
  // /////////////////////////////////////
291
- result = await (0, _utils.buildAfterOperation)({
276
+ result = await buildAfterOperation({
292
277
  args,
293
278
  collection: collectionConfig,
294
279
  operation: 'updateByID',
295
280
  result
296
281
  });
297
- await (0, _unlinkTempFiles.unlinkTempFiles)({
282
+ await unlinkTempFiles({
298
283
  collectionConfig,
299
284
  config,
300
285
  req
@@ -302,12 +287,12 @@ const updateByIDOperation = async (incomingArgs)=>{
302
287
  // /////////////////////////////////////
303
288
  // Return results
304
289
  // /////////////////////////////////////
305
- if (shouldCommit) await (0, _commitTransaction.commitTransaction)(req);
290
+ if (shouldCommit) await commitTransaction(req);
306
291
  return result;
307
292
  } catch (error) {
308
- await (0, _killTransaction.killTransaction)(args.req);
293
+ await killTransaction(args.req);
309
294
  throw error;
310
295
  }
311
296
  };
312
297
 
313
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3VwZGF0ZUJ5SUQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZWVwUGFydGlhbCB9IGZyb20gJ3RzLWVzc2VudGlhbHMnXG5cbmltcG9ydCBodHRwU3RhdHVzIGZyb20gJ2h0dHAtc3RhdHVzJ1xuXG5pbXBvcnQgdHlwZSB7IEZpbmRPbmVBcmdzIH0gZnJvbSAnLi4vLi4vZGF0YWJhc2UvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEdlbmVyYXRlZFR5cGVzIH0gZnJvbSAnLi4vLi4vaW5kZXgnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb25maWcvdHlwZXMnXG5cbmltcG9ydCBleGVjdXRlQWNjZXNzIGZyb20gJy4uLy4uL2F1dGgvZXhlY3V0ZUFjY2VzcydcbmltcG9ydCB7IGdlbmVyYXRlUGFzc3dvcmRTYWx0SGFzaCB9IGZyb20gJy4uLy4uL2F1dGgvc3RyYXRlZ2llcy9sb2NhbC9nZW5lcmF0ZVBhc3N3b3JkU2FsdEhhc2gnXG5pbXBvcnQgeyBoYXNXaGVyZUFjY2Vzc1Jlc3VsdCB9IGZyb20gJy4uLy4uL2F1dGgvdHlwZXMnXG5pbXBvcnQgeyBjb21iaW5lUXVlcmllcyB9IGZyb20gJy4uLy4uL2RhdGFiYXNlL2NvbWJpbmVRdWVyaWVzJ1xuaW1wb3J0IHsgQVBJRXJyb3IsIEZvcmJpZGRlbiwgTm90Rm91bmQgfSBmcm9tICcuLi8uLi9lcnJvcnMnXG5pbXBvcnQgeyBhZnRlckNoYW5nZSB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9hZnRlckNoYW5nZSdcbmltcG9ydCB7IGFmdGVyUmVhZCB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9hZnRlclJlYWQnXG5pbXBvcnQgeyBiZWZvcmVDaGFuZ2UgfSBmcm9tICcuLi8uLi9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlJ1xuaW1wb3J0IHsgYmVmb3JlVmFsaWRhdGUgfSBmcm9tICcuLi8uLi9maWVsZHMvaG9va3MvYmVmb3JlVmFsaWRhdGUnXG5pbXBvcnQgeyBkZWxldGVBc3NvY2lhdGVkRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL2RlbGV0ZUFzc29jaWF0ZWRGaWxlcydcbmltcG9ydCB7IGdlbmVyYXRlRmlsZURhdGEgfSBmcm9tICcuLi8uLi91cGxvYWRzL2dlbmVyYXRlRmlsZURhdGEnXG5pbXBvcnQgeyB1bmxpbmtUZW1wRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL3VubGlua1RlbXBGaWxlcydcbmltcG9ydCB7IHVwbG9hZEZpbGVzIH0gZnJvbSAnLi4vLi4vdXBsb2Fkcy91cGxvYWRGaWxlcydcbmltcG9ydCB7IGNvbW1pdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2NvbW1pdFRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgaW5pdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2luaXRUcmFuc2FjdGlvbidcbmltcG9ydCB7IGtpbGxUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9raWxsVHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBnZXRMYXRlc3RDb2xsZWN0aW9uVmVyc2lvbiB9IGZyb20gJy4uLy4uL3ZlcnNpb25zL2dldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uJ1xuaW1wb3J0IHsgc2F2ZVZlcnNpb24gfSBmcm9tICcuLi8uLi92ZXJzaW9ucy9zYXZlVmVyc2lvbidcbmltcG9ydCB7IGJ1aWxkQWZ0ZXJPcGVyYXRpb24gfSBmcm9tICcuL3V0aWxzJ1xuXG5leHBvcnQgdHlwZSBBcmd1bWVudHM8VCBleHRlbmRzIHsgW2ZpZWxkOiBudW1iZXIgfCBzdHJpbmcgfCBzeW1ib2xdOiB1bmtub3duIH0+ID0ge1xuICBhdXRvc2F2ZT86IGJvb2xlYW5cbiAgY29sbGVjdGlvbjogQ29sbGVjdGlvblxuICBkYXRhOiBEZWVwUGFydGlhbDxUPlxuICBkZXB0aD86IG51bWJlclxuICBkaXNhYmxlVmVyaWZpY2F0aW9uRW1haWw/OiBib29sZWFuXG4gIGRyYWZ0PzogYm9vbGVhblxuICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gIG92ZXJyaWRlQWNjZXNzPzogYm9vbGVhblxuICBvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzPzogYm9vbGVhblxuICByZXE6IFBheWxvYWRSZXF1ZXN0XG4gIHNob3dIaWRkZW5GaWVsZHM/OiBib29sZWFuXG59XG5cbmV4cG9ydCBjb25zdCB1cGRhdGVCeUlET3BlcmF0aW9uID0gYXN5bmMgPFRTbHVnIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+KFxuICBpbmNvbWluZ0FyZ3M6IEFyZ3VtZW50czxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+LFxuKTogUHJvbWlzZTxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+ID0+IHtcbiAgbGV0IGFyZ3MgPSBpbmNvbWluZ0FyZ3NcblxuICB0cnkge1xuICAgIGNvbnN0IHNob3VsZENvbW1pdCA9IGF3YWl0IGluaXRUcmFuc2FjdGlvbihhcmdzLnJlcSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVPcGVyYXRpb24gLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgYXJncy5jb2xsZWN0aW9uLmNvbmZpZy5ob29rcy5iZWZvcmVPcGVyYXRpb24ucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICBhcmdzID1cbiAgICAgICAgKGF3YWl0IGhvb2soe1xuICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgY29sbGVjdGlvbjogYXJncy5jb2xsZWN0aW9uLmNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiBhcmdzLnJlcS5jb250ZXh0LFxuICAgICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgcmVxOiBhcmdzLnJlcSxcbiAgICAgICAgfSkpIHx8IGFyZ3NcbiAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgIGNvbnN0IHtcbiAgICAgIGlkLFxuICAgICAgYXV0b3NhdmUgPSBmYWxzZSxcbiAgICAgIGNvbGxlY3Rpb246IHsgY29uZmlnOiBjb2xsZWN0aW9uQ29uZmlnIH0sXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgZGVwdGgsXG4gICAgICBkcmFmdDogZHJhZnRBcmcgPSBmYWxzZSxcbiAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyA9IGZhbHNlLFxuICAgICAgcmVxOiB7XG4gICAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgICBsb2NhbGUsXG4gICAgICAgIHBheWxvYWQ6IHsgY29uZmlnIH0sXG4gICAgICAgIHBheWxvYWQsXG4gICAgICB9LFxuICAgICAgcmVxLFxuICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICB9ID0gYXJnc1xuXG4gICAgaWYgKCFpZCkge1xuICAgICAgdGhyb3cgbmV3IEFQSUVycm9yKCdNaXNzaW5nIElEIG9mIGRvY3VtZW50IHRvIHVwZGF0ZS4nLCBodHRwU3RhdHVzLkJBRF9SRVFVRVNUKVxuICAgIH1cblxuICAgIGxldCB7IGRhdGEgfSA9IGFyZ3NcbiAgICBjb25zdCBwYXNzd29yZCA9IGRhdGE/LnBhc3N3b3JkXG4gICAgY29uc3Qgc2hvdWxkU2F2ZURyYWZ0ID0gQm9vbGVhbihkcmFmdEFyZyAmJiBjb2xsZWN0aW9uQ29uZmlnLnZlcnNpb25zLmRyYWZ0cylcbiAgICBjb25zdCBzaG91bGRTYXZlUGFzc3dvcmQgPSBCb29sZWFuKHBhc3N3b3JkICYmIGNvbGxlY3Rpb25Db25maWcuYXV0aCAmJiAhc2hvdWxkU2F2ZURyYWZ0KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEFjY2Vzc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGNvbnN0IGFjY2Vzc1Jlc3VsdHMgPSAhb3ZlcnJpZGVBY2Nlc3NcbiAgICAgID8gYXdhaXQgZXhlY3V0ZUFjY2Vzcyh7IGlkLCBkYXRhLCByZXEgfSwgY29sbGVjdGlvbkNvbmZpZy5hY2Nlc3MudXBkYXRlKVxuICAgICAgOiB0cnVlXG4gICAgY29uc3QgaGFzV2hlcmVQb2xpY3kgPSBoYXNXaGVyZUFjY2Vzc1Jlc3VsdChhY2Nlc3NSZXN1bHRzKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJldHJpZXZlIGRvY3VtZW50XG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgY29uc3QgZmluZE9uZUFyZ3M6IEZpbmRPbmVBcmdzID0ge1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZy5zbHVnLFxuICAgICAgbG9jYWxlLFxuICAgICAgcmVxLFxuICAgICAgd2hlcmU6IGNvbWJpbmVRdWVyaWVzKHsgaWQ6IHsgZXF1YWxzOiBpZCB9IH0sIGFjY2Vzc1Jlc3VsdHMpLFxuICAgIH1cblxuICAgIGNvbnN0IGRvY1dpdGhMb2NhbGVzID0gYXdhaXQgZ2V0TGF0ZXN0Q29sbGVjdGlvblZlcnNpb24oe1xuICAgICAgaWQsXG4gICAgICBjb25maWc6IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICBwYXlsb2FkLFxuICAgICAgcXVlcnk6IGZpbmRPbmVBcmdzLFxuICAgICAgcmVxLFxuICAgIH0pXG5cbiAgICBpZiAoIWRvY1dpdGhMb2NhbGVzICYmICFoYXNXaGVyZVBvbGljeSkgdGhyb3cgbmV3IE5vdEZvdW5kKHJlcS50KVxuICAgIGlmICghZG9jV2l0aExvY2FsZXMgJiYgaGFzV2hlcmVQb2xpY3kpIHRocm93IG5ldyBGb3JiaWRkZW4ocmVxLnQpXG5cbiAgICBjb25zdCBvcmlnaW5hbERvYyA9IGF3YWl0IGFmdGVyUmVhZCh7XG4gICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICBkZXB0aDogMCxcbiAgICAgIGRvYzogZG9jV2l0aExvY2FsZXMsXG4gICAgICBmYWxsYmFja0xvY2FsZTogbnVsbCxcbiAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgIGxvY2FsZSxcbiAgICAgIG92ZXJyaWRlQWNjZXNzOiB0cnVlLFxuICAgICAgcmVxLFxuICAgICAgc2hvd0hpZGRlbkZpZWxkczogdHJ1ZSxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEdlbmVyYXRlIGRhdGEgZm9yIGFsbCBmaWxlcyBhbmQgc2l6ZXNcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBjb25zdCB7IGRhdGE6IG5ld0ZpbGVEYXRhLCBmaWxlczogZmlsZXNUb1VwbG9hZCB9ID0gYXdhaXQgZ2VuZXJhdGVGaWxlRGF0YSh7XG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgY29uZmlnLFxuICAgICAgZGF0YSxcbiAgICAgIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXMsXG4gICAgICByZXEsXG4gICAgICB0aHJvd09uTWlzc2luZ0ZpbGU6IGZhbHNlLFxuICAgIH0pXG5cbiAgICBkYXRhID0gbmV3RmlsZURhdGFcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBEZWxldGUgYW55IGFzc29jaWF0ZWQgZmlsZXNcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBkZWxldGVBc3NvY2lhdGVkRmlsZXMoe1xuICAgICAgY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbmZpZyxcbiAgICAgIGRvYzogZG9jV2l0aExvY2FsZXMsXG4gICAgICBmaWxlczogZmlsZXNUb1VwbG9hZCxcbiAgICAgIG92ZXJyaWRlRGVsZXRlOiBmYWxzZSxcbiAgICAgIHJlcSxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGJlZm9yZVZhbGlkYXRlIC0gRmllbGRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgZGF0YSA9IGF3YWl0IGJlZm9yZVZhbGlkYXRlPERlZXBQYXJ0aWFsPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4+KHtcbiAgICAgIGlkLFxuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGF0YSxcbiAgICAgIGRvYzogb3JpZ2luYWxEb2MsXG4gICAgICBnbG9iYWw6IG51bGwsXG4gICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICByZXEsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVWYWxpZGF0ZSAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBjb2xsZWN0aW9uQ29uZmlnLmhvb2tzLmJlZm9yZVZhbGlkYXRlLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgZGF0YSA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgICAgICBvcmlnaW5hbERvYyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCBkYXRhXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gV3JpdGUgZmlsZXMgdG8gbG9jYWwgc3RvcmFnZVxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmICghY29sbGVjdGlvbkNvbmZpZy51cGxvYWQuZGlzYWJsZUxvY2FsU3RvcmFnZSkge1xuICAgICAgYXdhaXQgdXBsb2FkRmlsZXMocGF5bG9hZCwgZmlsZXNUb1VwbG9hZCwgcmVxKVxuICAgIH1cblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVDaGFuZ2UgLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5iZWZvcmVDaGFuZ2UucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICBkYXRhID1cbiAgICAgICAgKGF3YWl0IGhvb2soe1xuICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIG9yaWdpbmFsRG9jLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSkpIHx8IGRhdGFcbiAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVDaGFuZ2UgLSBGaWVsZHNcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYmVmb3JlQ2hhbmdlPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4oe1xuICAgICAgaWQsXG4gICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICBkYXRhLFxuICAgICAgZG9jOiBvcmlnaW5hbERvYyxcbiAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgIHJlcSxcbiAgICAgIHNraXBWYWxpZGF0aW9uOiBzaG91bGRTYXZlRHJhZnQgfHwgZGF0YS5fc3RhdHVzID09PSAnZHJhZnQnLFxuICAgIH0pXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gSGFuZGxlIHBvdGVudGlhbCBwYXNzd29yZCB1cGRhdGVcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBjb25zdCBkYXRhVG9VcGRhdGU6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0geyAuLi5yZXN1bHQgfVxuXG4gICAgaWYgKHNob3VsZFNhdmVQYXNzd29yZCAmJiB0eXBlb2YgcGFzc3dvcmQgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCB7IGhhc2gsIHNhbHQgfSA9IGF3YWl0IGdlbmVyYXRlUGFzc3dvcmRTYWx0SGFzaCh7IHBhc3N3b3JkIH0pXG4gICAgICBkYXRhVG9VcGRhdGUuc2FsdCA9IHNhbHRcbiAgICAgIGRhdGFUb1VwZGF0ZS5oYXNoID0gaGFzaFxuICAgICAgZGVsZXRlIGRhdGFUb1VwZGF0ZS5wYXNzd29yZFxuICAgICAgZGVsZXRlIGRhdGEucGFzc3dvcmRcbiAgICB9XG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gVXBkYXRlXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgaWYgKCFzaG91bGRTYXZlRHJhZnQpIHtcbiAgICAgIHJlc3VsdCA9IGF3YWl0IHJlcS5wYXlsb2FkLmRiLnVwZGF0ZU9uZSh7XG4gICAgICAgIGlkLFxuICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLnNsdWcsXG4gICAgICAgIGRhdGE6IGRhdGFUb1VwZGF0ZSxcbiAgICAgICAgbG9jYWxlLFxuICAgICAgICByZXEsXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBDcmVhdGUgdmVyc2lvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmIChjb2xsZWN0aW9uQ29uZmlnLnZlcnNpb25zKSB7XG4gICAgICByZXN1bHQgPSBhd2FpdCBzYXZlVmVyc2lvbih7XG4gICAgICAgIGlkLFxuICAgICAgICBhdXRvc2F2ZSxcbiAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgZG9jV2l0aExvY2FsZXM6IHtcbiAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgY3JlYXRlZEF0OiBkb2NXaXRoTG9jYWxlcy5jcmVhdGVkQXQsXG4gICAgICAgIH0sXG4gICAgICAgIGRyYWZ0OiBzaG91bGRTYXZlRHJhZnQsXG4gICAgICAgIHBheWxvYWQsXG4gICAgICAgIHJlcSxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyUmVhZCAtIEZpZWxkc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIHJlc3VsdCA9IGF3YWl0IGFmdGVyUmVhZCh7XG4gICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICBkZXB0aCxcbiAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICBnbG9iYWw6IG51bGwsXG4gICAgICBsb2NhbGUsXG4gICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgIHJlcSxcbiAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBhZnRlclJlYWQgLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5hZnRlclJlYWQucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICByZXN1bHQgPVxuICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiByZXEuY29udGV4dCxcbiAgICAgICAgICBkb2M6IHJlc3VsdCxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCByZXN1bHRcbiAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBhZnRlckNoYW5nZSAtIEZpZWxkc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIHJlc3VsdCA9IGF3YWl0IGFmdGVyQ2hhbmdlPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4oe1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGF0YSxcbiAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgIHByZXZpb3VzRG9jOiBvcmlnaW5hbERvYyxcbiAgICAgIHJlcSxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyQ2hhbmdlIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGF3YWl0IGNvbGxlY3Rpb25Db25maWcuaG9va3MuYWZ0ZXJDaGFuZ2UucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICByZXN1bHQgPVxuICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiByZXEuY29udGV4dCxcbiAgICAgICAgICBkb2M6IHJlc3VsdCxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIHByZXZpb3VzRG9jOiBvcmlnaW5hbERvYyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCByZXN1bHRcbiAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBhZnRlck9wZXJhdGlvbiAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICByZXN1bHQgPSBhd2FpdCBidWlsZEFmdGVyT3BlcmF0aW9uPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4oe1xuICAgICAgYXJncyxcbiAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICBvcGVyYXRpb246ICd1cGRhdGVCeUlEJyxcbiAgICAgIHJlc3VsdCxcbiAgICB9KVxuXG4gICAgYXdhaXQgdW5saW5rVGVtcEZpbGVzKHtcbiAgICAgIGNvbGxlY3Rpb25Db25maWcsXG4gICAgICBjb25maWcsXG4gICAgICByZXEsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBSZXR1cm4gcmVzdWx0c1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmIChzaG91bGRDb21taXQpIGF3YWl0IGNvbW1pdFRyYW5zYWN0aW9uKHJlcSlcblxuICAgIHJldHVybiByZXN1bHRcbiAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICBhd2FpdCBraWxsVHJhbnNhY3Rpb24oYXJncy5yZXEpXG4gICAgdGhyb3cgZXJyb3JcbiAgfVxufVxuIl0sIm5hbWVzIjpbInVwZGF0ZUJ5SURPcGVyYXRpb24iLCJpbmNvbWluZ0FyZ3MiLCJhcmdzIiwic2hvdWxkQ29tbWl0IiwiaW5pdFRyYW5zYWN0aW9uIiwicmVxIiwiY29sbGVjdGlvbiIsImNvbmZpZyIsImhvb2tzIiwiYmVmb3JlT3BlcmF0aW9uIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImNvbnRleHQiLCJvcGVyYXRpb24iLCJQcm9taXNlIiwicmVzb2x2ZSIsImlkIiwiYXV0b3NhdmUiLCJjb2xsZWN0aW9uQ29uZmlnIiwiZGVwdGgiLCJkcmFmdCIsImRyYWZ0QXJnIiwib3ZlcnJpZGVBY2Nlc3MiLCJvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzIiwiZmFsbGJhY2tMb2NhbGUiLCJsb2NhbGUiLCJwYXlsb2FkIiwic2hvd0hpZGRlbkZpZWxkcyIsIkFQSUVycm9yIiwiaHR0cFN0YXR1cyIsIkJBRF9SRVFVRVNUIiwiZGF0YSIsInBhc3N3b3JkIiwic2hvdWxkU2F2ZURyYWZ0IiwiQm9vbGVhbiIsInZlcnNpb25zIiwiZHJhZnRzIiwic2hvdWxkU2F2ZVBhc3N3b3JkIiwiYXV0aCIsImFjY2Vzc1Jlc3VsdHMiLCJleGVjdXRlQWNjZXNzIiwiYWNjZXNzIiwidXBkYXRlIiwiaGFzV2hlcmVQb2xpY3kiLCJoYXNXaGVyZUFjY2Vzc1Jlc3VsdCIsImZpbmRPbmVBcmdzIiwic2x1ZyIsIndoZXJlIiwiY29tYmluZVF1ZXJpZXMiLCJlcXVhbHMiLCJkb2NXaXRoTG9jYWxlcyIsImdldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uIiwicXVlcnkiLCJOb3RGb3VuZCIsInQiLCJGb3JiaWRkZW4iLCJvcmlnaW5hbERvYyIsImFmdGVyUmVhZCIsImRvYyIsImdsb2JhbCIsIm5ld0ZpbGVEYXRhIiwiZmlsZXMiLCJmaWxlc1RvVXBsb2FkIiwiZ2VuZXJhdGVGaWxlRGF0YSIsInRocm93T25NaXNzaW5nRmlsZSIsImRlbGV0ZUFzc29jaWF0ZWRGaWxlcyIsIm92ZXJyaWRlRGVsZXRlIiwiYmVmb3JlVmFsaWRhdGUiLCJ1cGxvYWQiLCJkaXNhYmxlTG9jYWxTdG9yYWdlIiwidXBsb2FkRmlsZXMiLCJiZWZvcmVDaGFuZ2UiLCJyZXN1bHQiLCJza2lwVmFsaWRhdGlvbiIsIl9zdGF0dXMiLCJkYXRhVG9VcGRhdGUiLCJoYXNoIiwic2FsdCIsImdlbmVyYXRlUGFzc3dvcmRTYWx0SGFzaCIsImRiIiwidXBkYXRlT25lIiwic2F2ZVZlcnNpb24iLCJjcmVhdGVkQXQiLCJhZnRlckNoYW5nZSIsInByZXZpb3VzRG9jIiwiYnVpbGRBZnRlck9wZXJhdGlvbiIsInVubGlua1RlbXBGaWxlcyIsImNvbW1pdFRyYW5zYWN0aW9uIiwiZXJyb3IiLCJraWxsVHJhbnNhY3Rpb24iXSwibWFwcGluZ3MiOiI7Ozs7K0JBMkNhQTs7O2VBQUFBOzs7bUVBekNVO3NFQU9HOzBDQUNlO3VCQUNKO2dDQUNOO3dCQUNlOzZC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
298
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3VwZGF0ZUJ5SUQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZWVwUGFydGlhbCB9IGZyb20gJ3RzLWVzc2VudGlhbHMnXG5cbmltcG9ydCBodHRwU3RhdHVzIGZyb20gJ2h0dHAtc3RhdHVzJ1xuXG5pbXBvcnQgdHlwZSB7IEZpbmRPbmVBcmdzIH0gZnJvbSAnLi4vLi4vZGF0YWJhc2UvdHlwZXMuanMnXG5pbXBvcnQgdHlwZSB7IEdlbmVyYXRlZFR5cGVzIH0gZnJvbSAnLi4vLi4vaW5kZXguanMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vdHlwZXMvaW5kZXguanMnXG5pbXBvcnQgdHlwZSB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb25maWcvdHlwZXMuanMnXG5cbmltcG9ydCBleGVjdXRlQWNjZXNzIGZyb20gJy4uLy4uL2F1dGgvZXhlY3V0ZUFjY2Vzcy5qcydcbmltcG9ydCB7IGdlbmVyYXRlUGFzc3dvcmRTYWx0SGFzaCB9IGZyb20gJy4uLy4uL2F1dGgvc3RyYXRlZ2llcy9sb2NhbC9nZW5lcmF0ZVBhc3N3b3JkU2FsdEhhc2guanMnXG5pbXBvcnQgeyBoYXNXaGVyZUFjY2Vzc1Jlc3VsdCB9IGZyb20gJy4uLy4uL2F1dGgvdHlwZXMuanMnXG5pbXBvcnQgeyBjb21iaW5lUXVlcmllcyB9IGZyb20gJy4uLy4uL2RhdGFiYXNlL2NvbWJpbmVRdWVyaWVzLmpzJ1xuaW1wb3J0IHsgQVBJRXJyb3IsIEZvcmJpZGRlbiwgTm90Rm91bmQgfSBmcm9tICcuLi8uLi9lcnJvcnMvaW5kZXguanMnXG5pbXBvcnQgeyBhZnRlckNoYW5nZSB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9hZnRlckNoYW5nZS9pbmRleC5qcydcbmltcG9ydCB7IGFmdGVyUmVhZCB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9hZnRlclJlYWQvaW5kZXguanMnXG5pbXBvcnQgeyBiZWZvcmVDaGFuZ2UgfSBmcm9tICcuLi8uLi9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL2luZGV4LmpzJ1xuaW1wb3J0IHsgYmVmb3JlVmFsaWRhdGUgfSBmcm9tICcuLi8uLi9maWVsZHMvaG9va3MvYmVmb3JlVmFsaWRhdGUvaW5kZXguanMnXG5pbXBvcnQgeyBkZWxldGVBc3NvY2lhdGVkRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL2RlbGV0ZUFzc29jaWF0ZWRGaWxlcy5qcydcbmltcG9ydCB7IGdlbmVyYXRlRmlsZURhdGEgfSBmcm9tICcuLi8uLi91cGxvYWRzL2dlbmVyYXRlRmlsZURhdGEuanMnXG5pbXBvcnQgeyB1bmxpbmtUZW1wRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL3VubGlua1RlbXBGaWxlcy5qcydcbmltcG9ydCB7IHVwbG9hZEZpbGVzIH0gZnJvbSAnLi4vLi4vdXBsb2Fkcy91cGxvYWRGaWxlcy5qcydcbmltcG9ydCB7IGNvbW1pdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2NvbW1pdFRyYW5zYWN0aW9uLmpzJ1xuaW1wb3J0IHsgaW5pdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2luaXRUcmFuc2FjdGlvbi5qcydcbmltcG9ydCB7IGtpbGxUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9raWxsVHJhbnNhY3Rpb24uanMnXG5pbXBvcnQgeyBnZXRMYXRlc3RDb2xsZWN0aW9uVmVyc2lvbiB9IGZyb20gJy4uLy4uL3ZlcnNpb25zL2dldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uLmpzJ1xuaW1wb3J0IHsgc2F2ZVZlcnNpb24gfSBmcm9tICcuLi8uLi92ZXJzaW9ucy9zYXZlVmVyc2lvbi5qcydcbmltcG9ydCB7IGJ1aWxkQWZ0ZXJPcGVyYXRpb24gfSBmcm9tICcuL3V0aWxzLmpzJ1xuXG5leHBvcnQgdHlwZSBBcmd1bWVudHM8VCBleHRlbmRzIHsgW2ZpZWxkOiBudW1iZXIgfCBzdHJpbmcgfCBzeW1ib2xdOiB1bmtub3duIH0+ID0ge1xuICBhdXRvc2F2ZT86IGJvb2xlYW5cbiAgY29sbGVjdGlvbjogQ29sbGVjdGlvblxuICBkYXRhOiBEZWVwUGFydGlhbDxUPlxuICBkZXB0aD86IG51bWJlclxuICBkaXNhYmxlVmVyaWZpY2F0aW9uRW1haWw/OiBib29sZWFuXG4gIGRyYWZ0PzogYm9vbGVhblxuICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gIG92ZXJyaWRlQWNjZXNzPzogYm9vbGVhblxuICBvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzPzogYm9vbGVhblxuICByZXE6IFBheWxvYWRSZXF1ZXN0XG4gIHNob3dIaWRkZW5GaWVsZHM/OiBib29sZWFuXG59XG5cbmV4cG9ydCBjb25zdCB1cGRhdGVCeUlET3BlcmF0aW9uID0gYXN5bmMgPFRTbHVnIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+KFxuICBpbmNvbWluZ0FyZ3M6IEFyZ3VtZW50czxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+LFxuKTogUHJvbWlzZTxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+ID0+IHtcbiAgbGV0IGFyZ3MgPSBpbmNvbWluZ0FyZ3NcblxuICB0cnkge1xuICAgIGNvbnN0IHNob3VsZENvbW1pdCA9IGF3YWl0IGluaXRUcmFuc2FjdGlvbihhcmdzLnJlcSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVPcGVyYXRpb24gLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgYXJncy5jb2xsZWN0aW9uLmNvbmZpZy5ob29rcy5iZWZvcmVPcGVyYXRpb24ucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICBhcmdzID1cbiAgICAgICAgKGF3YWl0IGhvb2soe1xuICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgY29sbGVjdGlvbjogYXJncy5jb2xsZWN0aW9uLmNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiBhcmdzLnJlcS5jb250ZXh0LFxuICAgICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgcmVxOiBhcmdzLnJlcSxcbiAgICAgICAgfSkpIHx8IGFyZ3NcbiAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgIGNvbnN0IHtcbiAgICAgIGlkLFxuICAgICAgYXV0b3NhdmUgPSBmYWxzZSxcbiAgICAgIGNvbGxlY3Rpb246IHsgY29uZmlnOiBjb2xsZWN0aW9uQ29uZmlnIH0sXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgZGVwdGgsXG4gICAgICBkcmFmdDogZHJhZnRBcmcgPSBmYWxzZSxcbiAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyA9IGZhbHNlLFxuICAgICAgcmVxOiB7XG4gICAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgICBsb2NhbGUsXG4gICAgICAgIHBheWxvYWQ6IHsgY29uZmlnIH0sXG4gICAgICAgIHBheWxvYWQsXG4gICAgICB9LFxuICAgICAgcmVxLFxuICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICB9ID0gYXJnc1xuXG4gICAgaWYgKCFpZCkge1xuICAgICAgdGhyb3cgbmV3IEFQSUVycm9yKCdNaXNzaW5nIElEIG9mIGRvY3VtZW50IHRvIHVwZGF0ZS4nLCBodHRwU3RhdHVzLkJBRF9SRVFVRVNUKVxuICAgIH1cblxuICAgIGxldCB7IGRhdGEgfSA9IGFyZ3NcbiAgICBjb25zdCBwYXNzd29yZCA9IGRhdGE/LnBhc3N3b3JkXG4gICAgY29uc3Qgc2hvdWxkU2F2ZURyYWZ0ID0gQm9vbGVhbihkcmFmdEFyZyAmJiBjb2xsZWN0aW9uQ29uZmlnLnZlcnNpb25zLmRyYWZ0cylcbiAgICBjb25zdCBzaG91bGRTYXZlUGFzc3dvcmQgPSBCb29sZWFuKHBhc3N3b3JkICYmIGNvbGxlY3Rpb25Db25maWcuYXV0aCAmJiAhc2hvdWxkU2F2ZURyYWZ0KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEFjY2Vzc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGNvbnN0IGFjY2Vzc1Jlc3VsdHMgPSAhb3ZlcnJpZGVBY2Nlc3NcbiAgICAgID8gYXdhaXQgZXhlY3V0ZUFjY2Vzcyh7IGlkLCBkYXRhLCByZXEgfSwgY29sbGVjdGlvbkNvbmZpZy5hY2Nlc3MudXBkYXRlKVxuICAgICAgOiB0cnVlXG4gICAgY29uc3QgaGFzV2hlcmVQb2xpY3kgPSBoYXNXaGVyZUFjY2Vzc1Jlc3VsdChhY2Nlc3NSZXN1bHRzKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJldHJpZXZlIGRvY3VtZW50XG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgY29uc3QgZmluZE9uZUFyZ3M6IEZpbmRPbmVBcmdzID0ge1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZy5zbHVnLFxuICAgICAgbG9jYWxlLFxuICAgICAgcmVxLFxuICAgICAgd2hlcmU6IGNvbWJpbmVRdWVyaWVzKHsgaWQ6IHsgZXF1YWxzOiBpZCB9IH0sIGFjY2Vzc1Jlc3VsdHMpLFxuICAgIH1cblxuICAgIGNvbnN0IGRvY1dpdGhMb2NhbGVzID0gYXdhaXQgZ2V0TGF0ZXN0Q29sbGVjdGlvblZlcnNpb24oe1xuICAgICAgaWQsXG4gICAgICBjb25maWc6IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICBwYXlsb2FkLFxuICAgICAgcXVlcnk6IGZpbmRPbmVBcmdzLFxuICAgICAgcmVxLFxuICAgIH0pXG5cbiAgICBpZiAoIWRvY1dpdGhMb2NhbGVzICYmICFoYXNXaGVyZVBvbGljeSkgdGhyb3cgbmV3IE5vdEZvdW5kKHJlcS50KVxuICAgIGlmICghZG9jV2l0aExvY2FsZXMgJiYgaGFzV2hlcmVQb2xpY3kpIHRocm93IG5ldyBGb3JiaWRkZW4ocmVxLnQpXG5cbiAgICBjb25zdCBvcmlnaW5hbERvYyA9IGF3YWl0IGFmdGVyUmVhZCh7XG4gICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICBkZXB0aDogMCxcbiAgICAgIGRvYzogZG9jV2l0aExvY2FsZXMsXG4gICAgICBmYWxsYmFja0xvY2FsZTogbnVsbCxcbiAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgIGxvY2FsZSxcbiAgICAgIG92ZXJyaWRlQWNjZXNzOiB0cnVlLFxuICAgICAgcmVxLFxuICAgICAgc2hvd0hpZGRlbkZpZWxkczogdHJ1ZSxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEdlbmVyYXRlIGRhdGEgZm9yIGFsbCBmaWxlcyBhbmQgc2l6ZXNcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBjb25zdCB7IGRhdGE6IG5ld0ZpbGVEYXRhLCBmaWxlczogZmlsZXNUb1VwbG9hZCB9ID0gYXdhaXQgZ2VuZXJhdGVGaWxlRGF0YSh7XG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgY29uZmlnLFxuICAgICAgZGF0YSxcbiAgICAgIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXMsXG4gICAgICByZXEsXG4gICAgICB0aHJvd09uTWlzc2luZ0ZpbGU6IGZhbHNlLFxuICAgIH0pXG5cbiAgICBkYXRhID0gbmV3RmlsZURhdGFcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBEZWxldGUgYW55IGFzc29jaWF0ZWQgZmlsZXNcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBkZWxldGVBc3NvY2lhdGVkRmlsZXMoe1xuICAgICAgY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbmZpZyxcbiAgICAgIGRvYzogZG9jV2l0aExvY2FsZXMsXG4gICAgICBmaWxlczogZmlsZXNUb1VwbG9hZCxcbiAgICAgIG92ZXJyaWRlRGVsZXRlOiBmYWxzZSxcbiAgICAgIHJlcSxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGJlZm9yZVZhbGlkYXRlIC0gRmllbGRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgZGF0YSA9IGF3YWl0IGJlZm9yZVZhbGlkYXRlPERlZXBQYXJ0aWFsPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4+KHtcbiAgICAgIGlkLFxuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGF0YSxcbiAgICAgIGRvYzogb3JpZ2luYWxEb2MsXG4gICAgICBnbG9iYWw6IG51bGwsXG4gICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICByZXEsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVWYWxpZGF0ZSAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBjb2xsZWN0aW9uQ29uZmlnLmhvb2tzLmJlZm9yZVZhbGlkYXRlLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgZGF0YSA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgICAgICBvcmlnaW5hbERvYyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCBkYXRhXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gV3JpdGUgZmlsZXMgdG8gbG9jYWwgc3RvcmFnZVxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmICghY29sbGVjdGlvbkNvbmZpZy51cGxvYWQuZGlzYWJsZUxvY2FsU3RvcmFnZSkge1xuICAgICAgYXdhaXQgdXBsb2FkRmlsZXMocGF5bG9hZCwgZmlsZXNUb1VwbG9hZCwgcmVxKVxuICAgIH1cblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVDaGFuZ2UgLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5iZWZvcmVDaGFuZ2UucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICBkYXRhID1cbiAgICAgICAgKGF3YWl0IGhvb2soe1xuICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIG9yaWdpbmFsRG9jLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSkpIHx8IGRhdGFcbiAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVDaGFuZ2UgLSBGaWVsZHNcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYmVmb3JlQ2hhbmdlPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4oe1xuICAgICAgaWQsXG4gICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICBkYXRhLFxuICAgICAgZG9jOiBvcmlnaW5hbERvYyxcbiAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgIHJlcSxcbiAgICAgIHNraXBWYWxpZGF0aW9uOiBzaG91bGRTYXZlRHJhZnQgfHwgZGF0YS5fc3RhdHVzID09PSAnZHJhZnQnLFxuICAgIH0pXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gSGFuZGxlIHBvdGVudGlhbCBwYXNzd29yZCB1cGRhdGVcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBjb25zdCBkYXRhVG9VcGRhdGU6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0geyAuLi5yZXN1bHQgfVxuXG4gICAgaWYgKHNob3VsZFNhdmVQYXNzd29yZCAmJiB0eXBlb2YgcGFzc3dvcmQgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCB7IGhhc2gsIHNhbHQgfSA9IGF3YWl0IGdlbmVyYXRlUGFzc3dvcmRTYWx0SGFzaCh7IHBhc3N3b3JkIH0pXG4gICAgICBkYXRhVG9VcGRhdGUuc2FsdCA9IHNhbHRcbiAgICAgIGRhdGFUb1VwZGF0ZS5oYXNoID0gaGFzaFxuICAgICAgZGVsZXRlIGRhdGFUb1VwZGF0ZS5wYXNzd29yZFxuICAgICAgZGVsZXRlIGRhdGEucGFzc3dvcmRcbiAgICB9XG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gVXBkYXRlXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgaWYgKCFzaG91bGRTYXZlRHJhZnQpIHtcbiAgICAgIHJlc3VsdCA9IGF3YWl0IHJlcS5wYXlsb2FkLmRiLnVwZGF0ZU9uZSh7XG4gICAgICAgIGlkLFxuICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLnNsdWcsXG4gICAgICAgIGRhdGE6IGRhdGFUb1VwZGF0ZSxcbiAgICAgICAgbG9jYWxlLFxuICAgICAgICByZXEsXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBDcmVhdGUgdmVyc2lvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmIChjb2xsZWN0aW9uQ29uZmlnLnZlcnNpb25zKSB7XG4gICAgICByZXN1bHQgPSBhd2FpdCBzYXZlVmVyc2lvbih7XG4gICAgICAgIGlkLFxuICAgICAgICBhdXRvc2F2ZSxcbiAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgZG9jV2l0aExvY2FsZXM6IHtcbiAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgY3JlYXRlZEF0OiBkb2NXaXRoTG9jYWxlcy5jcmVhdGVkQXQsXG4gICAgICAgIH0sXG4gICAgICAgIGRyYWZ0OiBzaG91bGRTYXZlRHJhZnQsXG4gICAgICAgIHBheWxvYWQsXG4gICAgICAgIHJlcSxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyUmVhZCAtIEZpZWxkc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIHJlc3VsdCA9IGF3YWl0IGFmdGVyUmVhZCh7XG4gICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICBkZXB0aCxcbiAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICBnbG9iYWw6IG51bGwsXG4gICAgICBsb2NhbGUsXG4gICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgIHJlcSxcbiAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBhZnRlclJlYWQgLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5hZnRlclJlYWQucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICByZXN1bHQgPVxuICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiByZXEuY29udGV4dCxcbiAgICAgICAgICBkb2M6IHJlc3VsdCxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCByZXN1bHRcbiAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBhZnRlckNoYW5nZSAtIEZpZWxkc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIHJlc3VsdCA9IGF3YWl0IGFmdGVyQ2hhbmdlPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4oe1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGF0YSxcbiAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgIHByZXZpb3VzRG9jOiBvcmlnaW5hbERvYyxcbiAgICAgIHJlcSxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyQ2hhbmdlIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGF3YWl0IGNvbGxlY3Rpb25Db25maWcuaG9va3MuYWZ0ZXJDaGFuZ2UucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICByZXN1bHQgPVxuICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiByZXEuY29udGV4dCxcbiAgICAgICAgICBkb2M6IHJlc3VsdCxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIHByZXZpb3VzRG9jOiBvcmlnaW5hbERvYyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCByZXN1bHRcbiAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBhZnRlck9wZXJhdGlvbiAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICByZXN1bHQgPSBhd2FpdCBidWlsZEFmdGVyT3BlcmF0aW9uPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4oe1xuICAgICAgYXJncyxcbiAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICBvcGVyYXRpb246ICd1cGRhdGVCeUlEJyxcbiAgICAgIHJlc3VsdCxcbiAgICB9KVxuXG4gICAgYXdhaXQgdW5saW5rVGVtcEZpbGVzKHtcbiAgICAgIGNvbGxlY3Rpb25Db25maWcsXG4gICAgICBjb25maWcsXG4gICAgICByZXEsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBSZXR1cm4gcmVzdWx0c1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmIChzaG91bGRDb21taXQpIGF3YWl0IGNvbW1pdFRyYW5zYWN0aW9uKHJlcSlcblxuICAgIHJldHVybiByZXN1bHRcbiAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICBhd2FpdCBraWxsVHJhbnNhY3Rpb24oYXJncy5yZXEpXG4gICAgdGhyb3cgZXJyb3JcbiAgfVxufVxuIl0sIm5hbWVzIjpbImh0dHBTdGF0dXMiLCJleGVjdXRlQWNjZXNzIiwiZ2VuZXJhdGVQYXNzd29yZFNhbHRIYXNoIiwiaGFzV2hlcmVBY2Nlc3NSZXN1bHQiLCJjb21iaW5lUXVlcmllcyIsIkFQSUVycm9yIiwiRm9yYmlkZGVuIiwiTm90Rm91bmQiLCJhZnRlckNoYW5nZSIsImFmdGVyUmVhZCIsImJlZm9yZUNoYW5nZSIsImJlZm9yZVZhbGlkYXRlIiwiZGVsZXRlQXNzb2NpYXRlZEZpbGVzIiwiZ2VuZXJhdGVGaWxlRGF0YSIsInVubGlua1RlbXBGaWxlcyIsInVwbG9hZEZpbGVzIiwiY29tbWl0VHJhbnNhY3Rpb24iLCJpbml0VHJhbnNhY3Rpb24iLCJraWxsVHJhbnNhY3Rpb24iLCJnZXRMYXRlc3RDb2xsZWN0aW9uVmVyc2lvbiIsInNhdmVWZXJzaW9uIiwiYnVpbGRBZnRlck9wZXJhdGlvbiIsInVwZGF0ZUJ5SURPcGVyYXRpb24iLCJpbmNvbWluZ0FyZ3MiLCJhcmdzIiwic2hvdWxkQ29tbWl0IiwicmVxIiwiY29sbGVjdGlvbiIsImNvbmZpZyIsImhvb2tzIiwiYmVmb3JlT3BlcmF0aW9uIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImNvbnRleHQiLCJvcGVyYXRpb24iLCJQcm9taXNlIiwicmVzb2x2ZSIsImlkIiwiYXV0b3NhdmUiLCJjb2xsZWN0aW9uQ29uZmlnIiwiZGVwdGgiLCJkcmFmdCIsImRyYWZ0QXJnIiwib3ZlcnJpZGVBY2Nlc3MiLCJvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzIiwiZmFsbGJhY2tMb2NhbGUiLCJsb2NhbGUiLCJwYXlsb2FkIiwic2hvd0hpZGRlbkZpZWxkcyIsIkJBRF9SRVFVRVNUIiwiZGF0YSIsInBhc3N3b3JkIiwic2hvdWxkU2F2ZURyYWZ0IiwiQm9vbGVhbiIsInZlcnNpb25zIiwiZHJhZnRzIiwic2hvdWxkU2F2ZVBhc3N3b3JkIiwiYXV0aCIsImFjY2Vzc1Jlc3VsdHMiLCJhY2Nlc3MiLCJ1cGRhdGUiLCJoYXNXaGVyZVBvbGljeSIsImZpbmRPbmVBcmdzIiwic2x1ZyIsIndoZXJlIiwiZXF1YWxzIiwiZG9jV2l0aExvY2FsZXMiLCJxdWVyeSIsInQiLCJvcmlnaW5hbERvYyIsImRvYyIsImdsb2JhbCIsIm5ld0ZpbGVEYXRhIiwiZmlsZXMiLCJmaWxlc1RvVXBsb2FkIiwidGhyb3dPbk1pc3NpbmdGaWxlIiwib3ZlcnJpZGVEZWxldGUiLCJ1cGxvYWQiLCJkaXNhYmxlTG9jYWxTdG9yYWdlIiwicmVzdWx0Iiwic2tpcFZhbGlkYXRpb24iLCJfc3RhdHVzIiwiZGF0YVRvVXBkYXRlIiwiaGFzaCIsInNhbHQiLCJkYiIsInVwZGF0ZU9uZSIsImNy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
@@ -1,15 +1,15 @@
1
- import type { forgotPasswordOperation } from '../../auth/operations/forgotPassword';
2
- import type { loginOperation } from '../../auth/operations/login';
3
- import type { refreshOperation } from '../../auth/operations/refresh';
4
- import type { PayloadRequest } from '../../exports/types';
5
- import type { SanitizedCollectionConfig, TypeWithID } from '../config/types';
6
- import type { createOperation } from './create';
7
- import type { deleteOperation } from './delete';
8
- import type { deleteByIDOperation } from './deleteByID';
9
- import type { findOperation } from './find';
10
- import type { findByIDOperation } from './findByID';
11
- import type { updateOperation } from './update';
12
- import type { updateByIDOperation } from './updateByID';
1
+ import type { forgotPasswordOperation } from '../../auth/operations/forgotPassword.js';
2
+ import type { loginOperation } from '../../auth/operations/login.js';
3
+ import type { refreshOperation } from '../../auth/operations/refresh.js';
4
+ import type { PayloadRequest } from '../../exports/types.js';
5
+ import type { SanitizedCollectionConfig, TypeWithID } from '../config/types.js';
6
+ import type { createOperation } from './create.js';
7
+ import type { deleteOperation } from './delete.js';
8
+ import type { deleteByIDOperation } from './deleteByID.js';
9
+ import type { findOperation } from './find.js';
10
+ import type { findByIDOperation } from './findByID.js';
11
+ import type { updateOperation } from './update.js';
12
+ import type { updateByIDOperation } from './updateByID.js';
13
13
  export type AfterOperationMap<T extends TypeWithID> = {
14
14
  create: typeof createOperation;
15
15
  delete: typeof deleteOperation;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/utils.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "buildAfterOperation", {
6
- enumerable: true,
7
- get: function() {
8
- return buildAfterOperation;
9
- }
10
- });
11
- const buildAfterOperation = async (operationArgs)=>{
1
+ // export type AfterOperationHook = typeof buildAfterOperation;
2
+ export const buildAfterOperation = async (operationArgs)=>{
12
3
  const { args, collection, operation, result } = operationArgs;
13
4
  let newResult = result;
14
5
  await args.collection.config.hooks.afterOperation.reduce(async (priorHook, hook)=>{
@@ -27,4 +18,4 @@ const buildAfterOperation = async (operationArgs)=>{
27
18
  return newResult;
28
19
  };
29
20
 
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgZm9yZ290UGFzc3dvcmRPcGVyYXRpb24gfSBmcm9tICcuLi8uLi9hdXRoL29wZXJhdGlvbnMvZm9yZ290UGFzc3dvcmQnXG5pbXBvcnQgdHlwZSB7IGxvZ2luT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vYXV0aC9vcGVyYXRpb25zL2xvZ2luJ1xuaW1wb3J0IHR5cGUgeyByZWZyZXNoT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vYXV0aC9vcGVyYXRpb25zL3JlZnJlc2gnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZXhwb3J0cy90eXBlcydcbmltcG9ydCB0eXBlIHsgQWZ0ZXJPcGVyYXRpb25Ib29rLCBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnLCBUeXBlV2l0aElEIH0gZnJvbSAnLi4vY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBjcmVhdGVPcGVyYXRpb24gfSBmcm9tICcuL2NyZWF0ZSdcbmltcG9ydCB0eXBlIHsgZGVsZXRlT3BlcmF0aW9uIH0gZnJvbSAnLi9kZWxldGUnXG5pbXBvcnQgdHlwZSB7IGRlbGV0ZUJ5SURPcGVyYXRpb24gfSBmcm9tICcuL2RlbGV0ZUJ5SUQnXG5pbXBvcnQgdHlwZSB7IGZpbmRPcGVyYXRpb24gfSBmcm9tICcuL2ZpbmQnXG5pbXBvcnQgdHlwZSB7IGZpbmRCeUlET3BlcmF0aW9uIH0gZnJvbSAnLi9maW5kQnlJRCdcbmltcG9ydCB0eXBlIHsgdXBkYXRlT3BlcmF0aW9uIH0gZnJvbSAnLi91cGRhdGUnXG5pbXBvcnQgdHlwZSB7IHVwZGF0ZUJ5SURPcGVyYXRpb24gfSBmcm9tICcuL3VwZGF0ZUJ5SUQnXG5cbmV4cG9ydCB0eXBlIEFmdGVyT3BlcmF0aW9uTWFwPFQgZXh0ZW5kcyBUeXBlV2l0aElEPiA9IHtcbiAgY3JlYXRlOiB0eXBlb2YgY3JlYXRlT3BlcmF0aW9uIC8vIHRvZG86IHBhc3MgY29ycmVjdCBnZW5lcmljXG4gIGRlbGV0ZTogdHlwZW9mIGRlbGV0ZU9wZXJhdGlvbiAvLyB0b2RvOiBwYXNzIGNvcnJlY3QgZ2VuZXJpY1xuICBkZWxldGVCeUlEOiB0eXBlb2YgZGVsZXRlQnlJRE9wZXJhdGlvbiAvLyB0b2RvOiBwYXNzIGNvcnJlY3QgZ2VuZXJpY1xuICBmaW5kOiB0eXBlb2YgZmluZE9wZXJhdGlvbjxUPlxuICBmaW5kQnlJRDogdHlwZW9mIGZpbmRCeUlET3BlcmF0aW9uPFQ+XG4gIGZvcmdvdFBhc3N3b3JkOiB0eXBlb2YgZm9yZ290UGFzc3dvcmRPcGVyYXRpb25cbiAgbG9naW46IHR5cGVvZiBsb2dpbk9wZXJhdGlvblxuICByZWZyZXNoOiB0eXBlb2YgcmVmcmVzaE9wZXJhdGlvblxuICB1cGRhdGU6IHR5cGVvZiB1cGRhdGVPcGVyYXRpb24gLy8gdG9kbzogcGFzcyBjb3JyZWN0IGdlbmVyaWNcbiAgdXBkYXRlQnlJRDogdHlwZW9mIHVwZGF0ZUJ5SURPcGVyYXRpb24gLy8gdG9kbzogcGFzcyBjb3JyZWN0IGdlbmVyaWNcbn1cbmV4cG9ydCB0eXBlIEFmdGVyT3BlcmF0aW9uQXJnPFQgZXh0ZW5kcyBUeXBlV2l0aElEPiA9IHtcbiAgLyoqIFRoZSBjb2xsZWN0aW9uIHdoaWNoIHRoaXMgaG9vayBpcyBiZWluZyBydW4gb24gKi9cbiAgY29sbGVjdGlvbjogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZ1xuICByZXE6IFBheWxvYWRSZXF1ZXN0XG59ICYgKFxuICB8IHtcbiAgICAgIGFyZ3M6IFBhcmFtZXRlcnM8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2NyZWF0ZSddPlswXVxuICAgICAgb3BlcmF0aW9uOiAnY3JlYXRlJ1xuICAgICAgcmVzdWx0OiBBd2FpdGVkPFJldHVyblR5cGU8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2NyZWF0ZSddPj5cbiAgICB9XG4gIHwge1xuICAgICAgYXJnczogUGFyYW1ldGVyczxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZGVsZXRlJ10+WzBdXG4gICAgICBvcGVyYXRpb246ICdkZWxldGUnXG4gICAgICByZXN1bHQ6IEF3YWl0ZWQ8UmV0dXJuVHlwZTxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZGVsZXRlJ10+PlxuICAgIH1cbiAgfCB7XG4gICAgICBhcmdzOiBQYXJhbWV0ZXJzPEFmdGVyT3BlcmF0aW9uTWFwPFQ+WydkZWxldGVCeUlEJ10+WzBdXG4gICAgICBvcGVyYXRpb246ICdkZWxldGVCeUlEJ1xuICAgICAgcmVzdWx0OiBBd2FpdGVkPFJldHVyblR5cGU8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2RlbGV0ZUJ5SUQnXT4+XG4gICAgfVxuICB8IHtcbiAgICAgIGFyZ3M6IFBhcmFtZXRlcnM8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2ZpbmQnXT5bMF1cbiAgICAgIG9wZXJhdGlvbjogJ2ZpbmQnXG4gICAgICByZXN1bHQ6IEF3YWl0ZWQ8UmV0dXJuVHlwZTxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZmluZCddPj5cbiAgICB9XG4gIHwge1xuICAgICAgYXJnczogUGFyYW1ldGVyczxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZmluZEJ5SUQnXT5bMF1cbiAgICAgIG9wZXJhdGlvbjogJ2ZpbmRCeUlEJ1xuICAgICAgcmVzdWx0OiBBd2FpdGVkPFJldHVyblR5cGU8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2ZpbmRCeUlEJ10+PlxuICAgIH1cbiAgfCB7XG4gICAgICBhcmdzOiBQYXJhbWV0ZXJzPEFmdGVyT3BlcmF0aW9uTWFwPFQ+Wydmb3Jnb3RQYXNzd29yZCddPlswXVxuICAgICAgb3BlcmF0aW9uOiAnZm9yZ290UGFzc3dvcmQnXG4gICAgICByZXN1bHQ6IEF3YWl0ZWQ8UmV0dXJuVHlwZTxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZm9yZ290UGFzc3dvcmQnXT4+XG4gICAgfVxuICB8IHtcbiAgICAgIGFyZ3M6IFBhcmFtZXRlcnM8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2xvZ2luJ10+WzBdXG4gICAgICBvcGVyYXRpb246ICdsb2dpbidcbiAgICAgIHJlc3VsdDogQXdhaXRlZDxSZXR1cm5UeXBlPEFmdGVyT3BlcmF0aW9uTWFwPFQ+Wydsb2dpbiddPj5cbiAgICB9XG4gIHwge1xuICAgICAgYXJnczogUGFyYW1ldGVyczxBZnRlck9wZXJhdGlvbk1hcDxUPlsncmVmcmVzaCddPlswXVxuICAgICAgb3BlcmF0aW9uOiAncmVmcmVzaCdcbiAgICAgIHJlc3VsdDogQXdhaXRlZDxSZXR1cm5UeXBlPEFmdGVyT3BlcmF0aW9uTWFwPFQ+WydyZWZyZXNoJ10+PlxuICAgIH1cbiAgfCB7XG4gICAgICBhcmdzOiBQYXJhbWV0ZXJzPEFmdGVyT3BlcmF0aW9uTWFwPFQ+Wyd1cGRhdGUnXT5bMF1cbiAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZSdcbiAgICAgIHJlc3VsdDogQXdhaXRlZDxSZXR1cm5UeXBlPEFmdGVyT3BlcmF0aW9uTWFwPFQ+Wyd1cGRhdGUnXT4+XG4gICAgfVxuICB8IHtcbiAgICAgIGFyZ3M6IFBhcmFtZXRlcnM8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ3VwZGF0ZUJ5SUQnXT5bMF1cbiAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZUJ5SUQnXG4gICAgICByZXN1bHQ6IEF3YWl0ZWQ8UmV0dXJuVHlwZTxBZnRlck9wZXJhdGlvbk1hcDxUPlsndXBkYXRlQnlJRCddPj5cbiAgICB9XG4pXG5cbi8vIGV4cG9ydCB0eXBlIEFmdGVyT3BlcmF0aW9uSG9vayA9IHR5cGVvZiBidWlsZEFmdGVyT3BlcmF0aW9uO1xuXG5leHBvcnQgY29uc3QgYnVpbGRBZnRlck9wZXJhdGlvbiA9IGFzeW5jIDxcbiAgVCBleHRlbmRzIFR5cGVXaXRoSUQgPSBhbnksXG4gIE8gZXh0ZW5kcyBrZXlvZiBBZnRlck9wZXJhdGlvbk1hcDxUPiA9IGtleW9mIEFmdGVyT3BlcmF0aW9uTWFwPFQ+LFxuPihcbiAgb3BlcmF0aW9uQXJnczogT21pdDxBZnRlck9wZXJhdGlvbkFyZzxUPiwgJ3JlcSc+ICYgeyBvcGVyYXRpb246IE8gfSxcbik6IFByb21pc2U8QXdhaXRlZDxSZXR1cm5UeXBlPEFmdGVyT3BlcmF0aW9uTWFwPFQ+W09dPj4+ID0+IHtcbiAgY29uc3QgeyBhcmdzLCBjb2xsZWN0aW9uLCBvcGVyYXRpb24sIHJlc3VsdCB9ID0gb3BlcmF0aW9uQXJnc1xuXG4gIGxldCBuZXdSZXN1bHQgPSByZXN1bHRcblxuICBhd2FpdCBhcmdzLmNvbGxlY3Rpb24uY29uZmlnLmhvb2tzLmFmdGVyT3BlcmF0aW9uLnJlZHVjZShcbiAgICBhc3luYyAocHJpb3JIb29rLCBob29rOiBBZnRlck9wZXJhdGlvbkhvb2s8VD4pID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICBjb25zdCBob29rUmVzdWx0ID0gYXdhaXQgaG9vayh7XG4gICAgICAgIGFyZ3MsXG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcmVxOiBhcmdzLnJlcSxcbiAgICAgICAgcmVzdWx0OiBuZXdSZXN1bHQsXG4gICAgICB9IGFzIEFmdGVyT3BlcmF0aW9uQXJnPFQ+KVxuXG4gICAgICBpZiAoaG9va1Jlc3VsdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIG5ld1Jlc3VsdCA9IGhvb2tSZXN1bHRcbiAgICAgIH1cbiAgICB9LFxuICAgIFByb21pc2UucmVzb2x2ZSgpLFxuICApXG5cbiAgcmV0dXJuIG5ld1Jlc3VsdFxufVxuIl0sIm5hbWVzIjpbImJ1aWxkQWZ0ZXJPcGVyYXRpb24iLCJvcGVyYXRpb25BcmdzIiwiYXJncyIsImNvbGxlY3Rpb24iLCJvcGVyYXRpb24iLCJyZXN1bHQiLCJuZXdSZXN1bHQiLCJjb25maWciLCJob29rcyIsImFmdGVyT3BlcmF0aW9uIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImhvb2tSZXN1bHQiLCJyZXEiLCJ1bmRlZmluZWQiLCJQcm9taXNlIiwicmVzb2x2ZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFvRmFBOzs7ZUFBQUE7OztBQUFOLE1BQU1BLHNCQUFzQixPQUlqQ0M7SUFFQSxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxTQUFTLEVBQUVDLE1BQU0sRUFBRSxHQUFHSjtJQUVoRCxJQUFJSyxZQUFZRDtJQUVoQixNQUFNSCxLQUFLQyxVQUFVLENBQUNJLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDQyxjQUFjLENBQUNDLE1BQU0sQ0FDdEQsT0FBT0MsV0FBV0M7UUFDaEIsTUFBTUQ7UUFFTixNQUFNRSxhQUFhLE1BQU1ELEtBQUs7WUFDNUJWO1lBQ0FDO1lBQ0FDO1lBQ0FVLEtBQUtaLEtBQUtZLEdBQUc7WUFDYlQsUUFBUUM7UUFDVjtRQUVBLElBQUlPLGVBQWVFLFdBQVc7WUFDNUJULFlBQVlPO1FBQ2Q7SUFDRixHQUNBRyxRQUFRQyxPQUFPO0lBR2pCLE9BQU9YO0FBQ1QifQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgZm9yZ290UGFzc3dvcmRPcGVyYXRpb24gfSBmcm9tICcuLi8uLi9hdXRoL29wZXJhdGlvbnMvZm9yZ290UGFzc3dvcmQuanMnXG5pbXBvcnQgdHlwZSB7IGxvZ2luT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vYXV0aC9vcGVyYXRpb25zL2xvZ2luLmpzJ1xuaW1wb3J0IHR5cGUgeyByZWZyZXNoT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vYXV0aC9vcGVyYXRpb25zL3JlZnJlc2guanMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZXhwb3J0cy90eXBlcy5qcydcbmltcG9ydCB0eXBlIHsgQWZ0ZXJPcGVyYXRpb25Ib29rLCBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnLCBUeXBlV2l0aElEIH0gZnJvbSAnLi4vY29uZmlnL3R5cGVzLmpzJ1xuaW1wb3J0IHR5cGUgeyBjcmVhdGVPcGVyYXRpb24gfSBmcm9tICcuL2NyZWF0ZS5qcydcbmltcG9ydCB0eXBlIHsgZGVsZXRlT3BlcmF0aW9uIH0gZnJvbSAnLi9kZWxldGUuanMnXG5pbXBvcnQgdHlwZSB7IGRlbGV0ZUJ5SURPcGVyYXRpb24gfSBmcm9tICcuL2RlbGV0ZUJ5SUQuanMnXG5pbXBvcnQgdHlwZSB7IGZpbmRPcGVyYXRpb24gfSBmcm9tICcuL2ZpbmQuanMnXG5pbXBvcnQgdHlwZSB7IGZpbmRCeUlET3BlcmF0aW9uIH0gZnJvbSAnLi9maW5kQnlJRC5qcydcbmltcG9ydCB0eXBlIHsgdXBkYXRlT3BlcmF0aW9uIH0gZnJvbSAnLi91cGRhdGUuanMnXG5pbXBvcnQgdHlwZSB7IHVwZGF0ZUJ5SURPcGVyYXRpb24gfSBmcm9tICcuL3VwZGF0ZUJ5SUQuanMnXG5cbmV4cG9ydCB0eXBlIEFmdGVyT3BlcmF0aW9uTWFwPFQgZXh0ZW5kcyBUeXBlV2l0aElEPiA9IHtcbiAgY3JlYXRlOiB0eXBlb2YgY3JlYXRlT3BlcmF0aW9uIC8vIHRvZG86IHBhc3MgY29ycmVjdCBnZW5lcmljXG4gIGRlbGV0ZTogdHlwZW9mIGRlbGV0ZU9wZXJhdGlvbiAvLyB0b2RvOiBwYXNzIGNvcnJlY3QgZ2VuZXJpY1xuICBkZWxldGVCeUlEOiB0eXBlb2YgZGVsZXRlQnlJRE9wZXJhdGlvbiAvLyB0b2RvOiBwYXNzIGNvcnJlY3QgZ2VuZXJpY1xuICBmaW5kOiB0eXBlb2YgZmluZE9wZXJhdGlvbjxUPlxuICBmaW5kQnlJRDogdHlwZW9mIGZpbmRCeUlET3BlcmF0aW9uPFQ+XG4gIGZvcmdvdFBhc3N3b3JkOiB0eXBlb2YgZm9yZ290UGFzc3dvcmRPcGVyYXRpb25cbiAgbG9naW46IHR5cGVvZiBsb2dpbk9wZXJhdGlvblxuICByZWZyZXNoOiB0eXBlb2YgcmVmcmVzaE9wZXJhdGlvblxuICB1cGRhdGU6IHR5cGVvZiB1cGRhdGVPcGVyYXRpb24gLy8gdG9kbzogcGFzcyBjb3JyZWN0IGdlbmVyaWNcbiAgdXBkYXRlQnlJRDogdHlwZW9mIHVwZGF0ZUJ5SURPcGVyYXRpb24gLy8gdG9kbzogcGFzcyBjb3JyZWN0IGdlbmVyaWNcbn1cbmV4cG9ydCB0eXBlIEFmdGVyT3BlcmF0aW9uQXJnPFQgZXh0ZW5kcyBUeXBlV2l0aElEPiA9IHtcbiAgLyoqIFRoZSBjb2xsZWN0aW9uIHdoaWNoIHRoaXMgaG9vayBpcyBiZWluZyBydW4gb24gKi9cbiAgY29sbGVjdGlvbjogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZ1xuICByZXE6IFBheWxvYWRSZXF1ZXN0XG59ICYgKFxuICB8IHtcbiAgICAgIGFyZ3M6IFBhcmFtZXRlcnM8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2NyZWF0ZSddPlswXVxuICAgICAgb3BlcmF0aW9uOiAnY3JlYXRlJ1xuICAgICAgcmVzdWx0OiBBd2FpdGVkPFJldHVyblR5cGU8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2NyZWF0ZSddPj5cbiAgICB9XG4gIHwge1xuICAgICAgYXJnczogUGFyYW1ldGVyczxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZGVsZXRlJ10+WzBdXG4gICAgICBvcGVyYXRpb246ICdkZWxldGUnXG4gICAgICByZXN1bHQ6IEF3YWl0ZWQ8UmV0dXJuVHlwZTxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZGVsZXRlJ10+PlxuICAgIH1cbiAgfCB7XG4gICAgICBhcmdzOiBQYXJhbWV0ZXJzPEFmdGVyT3BlcmF0aW9uTWFwPFQ+WydkZWxldGVCeUlEJ10+WzBdXG4gICAgICBvcGVyYXRpb246ICdkZWxldGVCeUlEJ1xuICAgICAgcmVzdWx0OiBBd2FpdGVkPFJldHVyblR5cGU8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2RlbGV0ZUJ5SUQnXT4+XG4gICAgfVxuICB8IHtcbiAgICAgIGFyZ3M6IFBhcmFtZXRlcnM8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2ZpbmQnXT5bMF1cbiAgICAgIG9wZXJhdGlvbjogJ2ZpbmQnXG4gICAgICByZXN1bHQ6IEF3YWl0ZWQ8UmV0dXJuVHlwZTxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZmluZCddPj5cbiAgICB9XG4gIHwge1xuICAgICAgYXJnczogUGFyYW1ldGVyczxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZmluZEJ5SUQnXT5bMF1cbiAgICAgIG9wZXJhdGlvbjogJ2ZpbmRCeUlEJ1xuICAgICAgcmVzdWx0OiBBd2FpdGVkPFJldHVyblR5cGU8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2ZpbmRCeUlEJ10+PlxuICAgIH1cbiAgfCB7XG4gICAgICBhcmdzOiBQYXJhbWV0ZXJzPEFmdGVyT3BlcmF0aW9uTWFwPFQ+Wydmb3Jnb3RQYXNzd29yZCddPlswXVxuICAgICAgb3BlcmF0aW9uOiAnZm9yZ290UGFzc3dvcmQnXG4gICAgICByZXN1bHQ6IEF3YWl0ZWQ8UmV0dXJuVHlwZTxBZnRlck9wZXJhdGlvbk1hcDxUPlsnZm9yZ290UGFzc3dvcmQnXT4+XG4gICAgfVxuICB8IHtcbiAgICAgIGFyZ3M6IFBhcmFtZXRlcnM8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ2xvZ2luJ10+WzBdXG4gICAgICBvcGVyYXRpb246ICdsb2dpbidcbiAgICAgIHJlc3VsdDogQXdhaXRlZDxSZXR1cm5UeXBlPEFmdGVyT3BlcmF0aW9uTWFwPFQ+Wydsb2dpbiddPj5cbiAgICB9XG4gIHwge1xuICAgICAgYXJnczogUGFyYW1ldGVyczxBZnRlck9wZXJhdGlvbk1hcDxUPlsncmVmcmVzaCddPlswXVxuICAgICAgb3BlcmF0aW9uOiAncmVmcmVzaCdcbiAgICAgIHJlc3VsdDogQXdhaXRlZDxSZXR1cm5UeXBlPEFmdGVyT3BlcmF0aW9uTWFwPFQ+WydyZWZyZXNoJ10+PlxuICAgIH1cbiAgfCB7XG4gICAgICBhcmdzOiBQYXJhbWV0ZXJzPEFmdGVyT3BlcmF0aW9uTWFwPFQ+Wyd1cGRhdGUnXT5bMF1cbiAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZSdcbiAgICAgIHJlc3VsdDogQXdhaXRlZDxSZXR1cm5UeXBlPEFmdGVyT3BlcmF0aW9uTWFwPFQ+Wyd1cGRhdGUnXT4+XG4gICAgfVxuICB8IHtcbiAgICAgIGFyZ3M6IFBhcmFtZXRlcnM8QWZ0ZXJPcGVyYXRpb25NYXA8VD5bJ3VwZGF0ZUJ5SUQnXT5bMF1cbiAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZUJ5SUQnXG4gICAgICByZXN1bHQ6IEF3YWl0ZWQ8UmV0dXJuVHlwZTxBZnRlck9wZXJhdGlvbk1hcDxUPlsndXBkYXRlQnlJRCddPj5cbiAgICB9XG4pXG5cbi8vIGV4cG9ydCB0eXBlIEFmdGVyT3BlcmF0aW9uSG9vayA9IHR5cGVvZiBidWlsZEFmdGVyT3BlcmF0aW9uO1xuXG5leHBvcnQgY29uc3QgYnVpbGRBZnRlck9wZXJhdGlvbiA9IGFzeW5jIDxcbiAgVCBleHRlbmRzIFR5cGVXaXRoSUQgPSBhbnksXG4gIE8gZXh0ZW5kcyBrZXlvZiBBZnRlck9wZXJhdGlvbk1hcDxUPiA9IGtleW9mIEFmdGVyT3BlcmF0aW9uTWFwPFQ+LFxuPihcbiAgb3BlcmF0aW9uQXJnczogT21pdDxBZnRlck9wZXJhdGlvbkFyZzxUPiwgJ3JlcSc+ICYgeyBvcGVyYXRpb246IE8gfSxcbik6IFByb21pc2U8QXdhaXRlZDxSZXR1cm5UeXBlPEFmdGVyT3BlcmF0aW9uTWFwPFQ+W09dPj4+ID0+IHtcbiAgY29uc3QgeyBhcmdzLCBjb2xsZWN0aW9uLCBvcGVyYXRpb24sIHJlc3VsdCB9ID0gb3BlcmF0aW9uQXJnc1xuXG4gIGxldCBuZXdSZXN1bHQgPSByZXN1bHRcblxuICBhd2FpdCBhcmdzLmNvbGxlY3Rpb24uY29uZmlnLmhvb2tzLmFmdGVyT3BlcmF0aW9uLnJlZHVjZShcbiAgICBhc3luYyAocHJpb3JIb29rLCBob29rOiBBZnRlck9wZXJhdGlvbkhvb2s8VD4pID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICBjb25zdCBob29rUmVzdWx0ID0gYXdhaXQgaG9vayh7XG4gICAgICAgIGFyZ3MsXG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcmVxOiBhcmdzLnJlcSxcbiAgICAgICAgcmVzdWx0OiBuZXdSZXN1bHQsXG4gICAgICB9IGFzIEFmdGVyT3BlcmF0aW9uQXJnPFQ+KVxuXG4gICAgICBpZiAoaG9va1Jlc3VsdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIG5ld1Jlc3VsdCA9IGhvb2tSZXN1bHRcbiAgICAgIH1cbiAgICB9LFxuICAgIFByb21pc2UucmVzb2x2ZSgpLFxuICApXG5cbiAgcmV0dXJuIG5ld1Jlc3VsdFxufVxuIl0sIm5hbWVzIjpbImJ1aWxkQWZ0ZXJPcGVyYXRpb24iLCJvcGVyYXRpb25BcmdzIiwiYXJncyIsImNvbGxlY3Rpb24iLCJvcGVyYXRpb24iLCJyZXN1bHQiLCJuZXdSZXN1bHQiLCJjb25maWciLCJob29rcyIsImFmdGVyT3BlcmF0aW9uIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImhvb2tSZXN1bHQiLCJyZXEiLCJ1bmRlZmluZWQiLCJQcm9taXNlIiwicmVzb2x2ZSJdLCJtYXBwaW5ncyI6IkFBa0ZBLCtEQUErRDtBQUUvRCxPQUFPLE1BQU1BLHNCQUFzQixPQUlqQ0M7SUFFQSxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxTQUFTLEVBQUVDLE1BQU0sRUFBRSxHQUFHSjtJQUVoRCxJQUFJSyxZQUFZRDtJQUVoQixNQUFNSCxLQUFLQyxVQUFVLENBQUNJLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDQyxjQUFjLENBQUNDLE1BQU0sQ0FDdEQsT0FBT0MsV0FBV0M7UUFDaEIsTUFBTUQ7UUFFTixNQUFNRSxhQUFhLE1BQU1ELEtBQUs7WUFDNUJWO1lBQ0FDO1lBQ0FDO1lBQ0FVLEtBQUtaLEtBQUtZLEdBQUc7WUFDYlQsUUFBUUM7UUFDVjtRQUVBLElBQUlPLGVBQWVFLFdBQVc7WUFDNUJULFlBQVlPO1FBQ2Q7SUFDRixHQUNBRyxRQUFRQyxPQUFPO0lBR2pCLE9BQU9YO0FBQ1QsRUFBQyJ9
@@ -1,4 +1,4 @@
1
- import type { Config, SanitizedConfig } from './types';
1
+ import type { Config, SanitizedConfig } from './types.js';
2
2
  /**
3
3
  * @description Builds and validates Payload configuration
4
4
  * @param config Payload Config
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/config/build.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAItD;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAa1E"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/config/build.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAIzD;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAa1E"}
@@ -1,24 +1,18 @@
1
- /* eslint-disable no-use-before-define */ /* eslint-disable no-nested-ternary */ "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "buildConfig", {
6
- enumerable: true,
7
- get: function() {
8
- return buildConfig;
9
- }
10
- });
11
- const _sanitize = require("./sanitize");
12
- async function buildConfig(config) {
1
+ /* eslint-disable no-use-before-define */ /* eslint-disable no-nested-ternary */ import { sanitizeConfig } from './sanitize.js';
2
+ /**
3
+ * @description Builds and validates Payload configuration
4
+ * @param config Payload Config
5
+ * @returns Built and sanitized Payload Config
6
+ */ export async function buildConfig(config) {
13
7
  if (Array.isArray(config.plugins)) {
14
8
  const configAfterPlugins = await config.plugins.reduce(async (acc, plugin)=>{
15
9
  const configAfterPlugin = await acc;
16
10
  return plugin(configAfterPlugin);
17
11
  }, Promise.resolve(config));
18
- const sanitizedConfig = (0, _sanitize.sanitizeConfig)(configAfterPlugins);
12
+ const sanitizedConfig = sanitizeConfig(configAfterPlugins);
19
13
  return sanitizedConfig;
20
14
  }
21
- return (0, _sanitize.sanitizeConfig)(config);
15
+ return sanitizeConfig(config);
22
16
  }
23
17
 
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvYnVpbGQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tdXNlLWJlZm9yZS1kZWZpbmUgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLW5lc3RlZC10ZXJuYXJ5ICovXG5pbXBvcnQgdHlwZSB7IENvbmZpZywgU2FuaXRpemVkQ29uZmlnIH0gZnJvbSAnLi90eXBlcydcblxuaW1wb3J0IHsgc2FuaXRpemVDb25maWcgfSBmcm9tICcuL3Nhbml0aXplJ1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBCdWlsZHMgYW5kIHZhbGlkYXRlcyBQYXlsb2FkIGNvbmZpZ3VyYXRpb25cbiAqIEBwYXJhbSBjb25maWcgUGF5bG9hZCBDb25maWdcbiAqIEByZXR1cm5zIEJ1aWx0IGFuZCBzYW5pdGl6ZWQgUGF5bG9hZCBDb25maWdcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGJ1aWxkQ29uZmlnKGNvbmZpZzogQ29uZmlnKTogUHJvbWlzZTxTYW5pdGl6ZWRDb25maWc+IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoY29uZmlnLnBsdWdpbnMpKSB7XG4gICAgY29uc3QgY29uZmlnQWZ0ZXJQbHVnaW5zID0gYXdhaXQgY29uZmlnLnBsdWdpbnMucmVkdWNlKGFzeW5jIChhY2MsIHBsdWdpbikgPT4ge1xuICAgICAgY29uc3QgY29uZmlnQWZ0ZXJQbHVnaW4gPSBhd2FpdCBhY2NcbiAgICAgIHJldHVybiBwbHVnaW4oY29uZmlnQWZ0ZXJQbHVnaW4pXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKGNvbmZpZykpXG5cbiAgICBjb25zdCBzYW5pdGl6ZWRDb25maWcgPSBzYW5pdGl6ZUNvbmZpZyhjb25maWdBZnRlclBsdWdpbnMpXG5cbiAgICByZXR1cm4gc2FuaXRpemVkQ29uZmlnXG4gIH1cblxuICByZXR1cm4gc2FuaXRpemVDb25maWcoY29uZmlnKVxufVxuIl0sIm5hbWVzIjpbImJ1aWxkQ29uZmlnIiwiY29uZmlnIiwiQXJyYXkiLCJpc0FycmF5IiwicGx1Z2lucyIsImNvbmZpZ0FmdGVyUGx1Z2lucyIsInJlZHVjZSIsImFjYyIsInBsdWdpbiIsImNvbmZpZ0FmdGVyUGx1Z2luIiwiUHJvbWlzZSIsInJlc29sdmUiLCJzYW5pdGl6ZWRDb25maWciLCJzYW5pdGl6ZUNvbmZpZyJdLCJtYXBwaW5ncyI6IkFBQUEsdUNBQXVDLEdBQ3ZDLG9DQUFvQzs7OzsrQkFVZEE7OztlQUFBQTs7OzBCQVBTO0FBT3hCLGVBQWVBLFlBQVlDLE1BQWM7SUFDOUMsSUFBSUMsTUFBTUMsT0FBTyxDQUFDRixPQUFPRyxPQUFPLEdBQUc7UUFDakMsTUFBTUMscUJBQXFCLE1BQU1KLE9BQU9HLE9BQU8sQ0FBQ0UsTUFBTSxDQUFDLE9BQU9DLEtBQUtDO1lBQ2pFLE1BQU1DLG9CQUFvQixNQUFNRjtZQUNoQyxPQUFPQyxPQUFPQztRQUNoQixHQUFHQyxRQUFRQyxPQUFPLENBQUNWO1FBRW5CLE1BQU1XLGtCQUFrQkMsSUFBQUEsd0JBQWMsRUFBQ1I7UUFFdkMsT0FBT087SUFDVDtJQUVBLE9BQU9DLElBQUFBLHdCQUFjLEVBQUNaO0FBQ3hCIn0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvYnVpbGQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tdXNlLWJlZm9yZS1kZWZpbmUgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLW5lc3RlZC10ZXJuYXJ5ICovXG5pbXBvcnQgdHlwZSB7IENvbmZpZywgU2FuaXRpemVkQ29uZmlnIH0gZnJvbSAnLi90eXBlcy5qcydcblxuaW1wb3J0IHsgc2FuaXRpemVDb25maWcgfSBmcm9tICcuL3Nhbml0aXplLmpzJ1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBCdWlsZHMgYW5kIHZhbGlkYXRlcyBQYXlsb2FkIGNvbmZpZ3VyYXRpb25cbiAqIEBwYXJhbSBjb25maWcgUGF5bG9hZCBDb25maWdcbiAqIEByZXR1cm5zIEJ1aWx0IGFuZCBzYW5pdGl6ZWQgUGF5bG9hZCBDb25maWdcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGJ1aWxkQ29uZmlnKGNvbmZpZzogQ29uZmlnKTogUHJvbWlzZTxTYW5pdGl6ZWRDb25maWc+IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoY29uZmlnLnBsdWdpbnMpKSB7XG4gICAgY29uc3QgY29uZmlnQWZ0ZXJQbHVnaW5zID0gYXdhaXQgY29uZmlnLnBsdWdpbnMucmVkdWNlKGFzeW5jIChhY2MsIHBsdWdpbikgPT4ge1xuICAgICAgY29uc3QgY29uZmlnQWZ0ZXJQbHVnaW4gPSBhd2FpdCBhY2NcbiAgICAgIHJldHVybiBwbHVnaW4oY29uZmlnQWZ0ZXJQbHVnaW4pXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKGNvbmZpZykpXG5cbiAgICBjb25zdCBzYW5pdGl6ZWRDb25maWcgPSBzYW5pdGl6ZUNvbmZpZyhjb25maWdBZnRlclBsdWdpbnMpXG5cbiAgICByZXR1cm4gc2FuaXRpemVkQ29uZmlnXG4gIH1cblxuICByZXR1cm4gc2FuaXRpemVDb25maWcoY29uZmlnKVxufVxuIl0sIm5hbWVzIjpbInNhbml0aXplQ29uZmlnIiwiYnVpbGRDb25maWciLCJjb25maWciLCJBcnJheSIsImlzQXJyYXkiLCJwbHVnaW5zIiwiY29uZmlnQWZ0ZXJQbHVnaW5zIiwicmVkdWNlIiwiYWNjIiwicGx1Z2luIiwiY29uZmlnQWZ0ZXJQbHVnaW4iLCJQcm9taXNlIiwicmVzb2x2ZSIsInNhbml0aXplZENvbmZpZyJdLCJtYXBwaW5ncyI6IkFBQUEsdUNBQXVDLEdBQ3ZDLG9DQUFvQyxHQUdwQyxTQUFTQSxjQUFjLFFBQVEsZ0JBQWU7QUFFOUM7Ozs7Q0FJQyxHQUNELE9BQU8sZUFBZUMsWUFBWUMsTUFBYztJQUM5QyxJQUFJQyxNQUFNQyxPQUFPLENBQUNGLE9BQU9HLE9BQU8sR0FBRztRQUNqQyxNQUFNQyxxQkFBcUIsTUFBTUosT0FBT0csT0FBTyxDQUFDRSxNQUFNLENBQUMsT0FBT0MsS0FBS0M7WUFDakUsTUFBTUMsb0JBQW9CLE1BQU1GO1lBQ2hDLE9BQU9DLE9BQU9DO1FBQ2hCLEdBQUdDLFFBQVFDLE9BQU8sQ0FBQ1Y7UUFFbkIsTUFBTVcsa0JBQWtCYixlQUFlTTtRQUV2QyxPQUFPTztJQUNUO0lBRUEsT0FBT2IsZUFBZUU7QUFDeEIifQ==