@payloadcms/next 3.0.0-alpha.8 → 3.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (801) hide show
  1. package/dist/config.js +2 -12
  2. package/dist/config.js.map +1 -0
  3. package/dist/elements/LeaveWithoutSaving/index.js +25 -76
  4. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -0
  5. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +1 -1
  6. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +11 -29
  7. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -0
  8. package/dist/exports/layouts.d.ts +2 -0
  9. package/dist/exports/layouts.d.ts.map +1 -0
  10. package/dist/exports/layouts.js +3 -0
  11. package/dist/exports/layouts.js.map +1 -0
  12. package/dist/exports/routes.d.ts +3 -0
  13. package/dist/exports/routes.d.ts.map +1 -0
  14. package/dist/exports/routes.js +4 -0
  15. package/dist/exports/routes.js.map +1 -0
  16. package/dist/exports/utilities.d.ts +3 -0
  17. package/dist/exports/utilities.d.ts.map +1 -0
  18. package/dist/exports/utilities.js +4 -0
  19. package/dist/exports/utilities.js.map +1 -0
  20. package/dist/exports/views.d.ts +4 -0
  21. package/dist/exports/views.d.ts.map +1 -0
  22. package/dist/exports/views.js +5 -0
  23. package/dist/exports/views.js.map +1 -0
  24. package/dist/index.js +3 -35
  25. package/dist/index.js.map +1 -0
  26. package/dist/layouts/Root/index.d.ts.map +1 -1
  27. package/dist/layouts/Root/index.js +62 -77
  28. package/dist/layouts/Root/index.js.map +1 -0
  29. package/dist/next-fileupload/fileFactory.d.ts +2 -2
  30. package/dist/next-fileupload/fileFactory.d.ts.map +1 -1
  31. package/dist/next-fileupload/fileFactory.js +9 -19
  32. package/dist/next-fileupload/fileFactory.js.map +1 -0
  33. package/dist/next-fileupload/handlers.d.ts +2 -2
  34. package/dist/next-fileupload/handlers.d.ts.map +1 -1
  35. package/dist/next-fileupload/handlers.js +25 -89
  36. package/dist/next-fileupload/handlers.js.map +1 -0
  37. package/dist/next-fileupload/index.d.ts +1 -1
  38. package/dist/next-fileupload/index.js +10 -25
  39. package/dist/next-fileupload/index.js.map +1 -0
  40. package/dist/next-fileupload/isEligibleRequest.js +2 -12
  41. package/dist/next-fileupload/isEligibleRequest.js.map +1 -0
  42. package/dist/next-fileupload/processMultipart.d.ts +1 -1
  43. package/dist/next-fileupload/processMultipart.d.ts.map +1 -1
  44. package/dist/next-fileupload/processMultipart.js +33 -46
  45. package/dist/next-fileupload/processMultipart.js.map +1 -0
  46. package/dist/next-fileupload/processNested.js +4 -14
  47. package/dist/next-fileupload/processNested.js.map +1 -0
  48. package/dist/next-fileupload/uploadTimer.js +2 -12
  49. package/dist/next-fileupload/uploadTimer.js.map +1 -0
  50. package/dist/next-fileupload/utilities.d.ts +1 -1
  51. package/dist/next-fileupload/utilities.d.ts.map +1 -1
  52. package/dist/next-fileupload/utilities.js +31 -76
  53. package/dist/next-fileupload/utilities.js.map +1 -0
  54. package/dist/next-stream-file/index.d.ts +4 -0
  55. package/dist/next-stream-file/index.d.ts.map +1 -1
  56. package/dist/next-stream-file/index.js +6 -21
  57. package/dist/next-stream-file/index.js.map +1 -0
  58. package/dist/prod/payload/favicon.svg +15 -0
  59. package/dist/prod/payload/og-image.png +0 -0
  60. package/dist/prod/styles.css +1 -0
  61. package/dist/routes/graphql/handler.d.ts.map +1 -1
  62. package/dist/routes/graphql/handler.js +19 -36
  63. package/dist/routes/graphql/handler.js.map +1 -0
  64. package/dist/routes/graphql/index.d.ts +2 -2
  65. package/dist/routes/graphql/index.d.ts.map +1 -1
  66. package/dist/routes/graphql/index.js +3 -21
  67. package/dist/routes/graphql/index.js.map +1 -0
  68. package/dist/routes/graphql/playground.js +6 -16
  69. package/dist/routes/graphql/playground.js.map +1 -0
  70. package/dist/routes/index.d.ts +2 -3
  71. package/dist/routes/index.d.ts.map +1 -1
  72. package/dist/routes/index.js +3 -37
  73. package/dist/routes/index.js.map +1 -0
  74. package/dist/routes/rest/auth/access.d.ts +1 -1
  75. package/dist/routes/rest/auth/access.d.ts.map +1 -1
  76. package/dist/routes/rest/auth/access.js +6 -21
  77. package/dist/routes/rest/auth/access.js.map +1 -0
  78. package/dist/routes/rest/auth/forgotPassword.d.ts +1 -1
  79. package/dist/routes/rest/auth/forgotPassword.d.ts.map +1 -1
  80. package/dist/routes/rest/auth/forgotPassword.js +6 -21
  81. package/dist/routes/rest/auth/forgotPassword.js.map +1 -0
  82. package/dist/routes/rest/auth/init.d.ts +1 -1
  83. package/dist/routes/rest/auth/init.d.ts.map +1 -1
  84. package/dist/routes/rest/auth/init.js +4 -14
  85. package/dist/routes/rest/auth/init.js.map +1 -0
  86. package/dist/routes/rest/auth/login.d.ts +1 -1
  87. package/dist/routes/rest/auth/login.d.ts.map +1 -1
  88. package/dist/routes/rest/auth/login.js +10 -25
  89. package/dist/routes/rest/auth/login.js.map +1 -0
  90. package/dist/routes/rest/auth/logout.d.ts +1 -1
  91. package/dist/routes/rest/auth/logout.d.ts.map +1 -1
  92. package/dist/routes/rest/auth/logout.js +9 -24
  93. package/dist/routes/rest/auth/logout.js.map +1 -0
  94. package/dist/routes/rest/auth/me.d.ts +1 -1
  95. package/dist/routes/rest/auth/me.d.ts.map +1 -1
  96. package/dist/routes/rest/auth/me.js +8 -23
  97. package/dist/routes/rest/auth/me.js.map +1 -0
  98. package/dist/routes/rest/auth/refresh.d.ts +1 -1
  99. package/dist/routes/rest/auth/refresh.d.ts.map +1 -1
  100. package/dist/routes/rest/auth/refresh.js +11 -25
  101. package/dist/routes/rest/auth/refresh.js.map +1 -0
  102. package/dist/routes/rest/auth/registerFirstUser.d.ts +1 -1
  103. package/dist/routes/rest/auth/registerFirstUser.d.ts.map +1 -1
  104. package/dist/routes/rest/auth/registerFirstUser.js +12 -25
  105. package/dist/routes/rest/auth/registerFirstUser.js.map +1 -0
  106. package/dist/routes/rest/auth/resetPassword.d.ts +1 -1
  107. package/dist/routes/rest/auth/resetPassword.d.ts.map +1 -1
  108. package/dist/routes/rest/auth/resetPassword.js +8 -23
  109. package/dist/routes/rest/auth/resetPassword.js.map +1 -0
  110. package/dist/routes/rest/auth/unlock.d.ts +1 -1
  111. package/dist/routes/rest/auth/unlock.d.ts.map +1 -1
  112. package/dist/routes/rest/auth/unlock.js +6 -21
  113. package/dist/routes/rest/auth/unlock.js.map +1 -0
  114. package/dist/routes/rest/auth/verifyEmail.d.ts +1 -1
  115. package/dist/routes/rest/auth/verifyEmail.d.ts.map +1 -1
  116. package/dist/routes/rest/auth/verifyEmail.js +6 -21
  117. package/dist/routes/rest/auth/verifyEmail.js.map +1 -0
  118. package/dist/routes/rest/buildFormState.d.ts +3 -3
  119. package/dist/routes/rest/buildFormState.d.ts.map +1 -1
  120. package/dist/routes/rest/buildFormState.js +143 -79
  121. package/dist/routes/rest/buildFormState.js.map +1 -0
  122. package/dist/routes/rest/checkEndpoints.d.ts.map +1 -1
  123. package/dist/routes/rest/checkEndpoints.js +4 -19
  124. package/dist/routes/rest/checkEndpoints.js.map +1 -0
  125. package/dist/routes/rest/collections/create.d.ts +1 -1
  126. package/dist/routes/rest/collections/create.d.ts.map +1 -1
  127. package/dist/routes/rest/collections/create.js +10 -24
  128. package/dist/routes/rest/collections/create.js.map +1 -0
  129. package/dist/routes/rest/collections/delete.d.ts +1 -1
  130. package/dist/routes/rest/collections/delete.d.ts.map +1 -1
  131. package/dist/routes/rest/collections/delete.js +13 -31
  132. package/dist/routes/rest/collections/delete.js.map +1 -0
  133. package/dist/routes/rest/collections/deleteByID.d.ts +1 -1
  134. package/dist/routes/rest/collections/deleteByID.d.ts.map +1 -1
  135. package/dist/routes/rest/collections/deleteByID.js +9 -24
  136. package/dist/routes/rest/collections/deleteByID.js.map +1 -0
  137. package/dist/routes/rest/collections/docAccess.d.ts +1 -1
  138. package/dist/routes/rest/collections/docAccess.d.ts.map +1 -1
  139. package/dist/routes/rest/collections/docAccess.js +6 -21
  140. package/dist/routes/rest/collections/docAccess.js.map +1 -0
  141. package/dist/routes/rest/collections/duplicate.d.ts +3 -0
  142. package/dist/routes/rest/collections/duplicate.d.ts.map +1 -0
  143. package/dist/routes/rest/collections/duplicate.js +28 -0
  144. package/dist/routes/rest/collections/duplicate.js.map +1 -0
  145. package/dist/routes/rest/collections/find.d.ts +1 -1
  146. package/dist/routes/rest/collections/find.d.ts.map +1 -1
  147. package/dist/routes/rest/collections/find.js +11 -29
  148. package/dist/routes/rest/collections/find.js.map +1 -0
  149. package/dist/routes/rest/collections/findByID.d.ts +1 -1
  150. package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
  151. package/dist/routes/rest/collections/findByID.js +8 -23
  152. package/dist/routes/rest/collections/findByID.js.map +1 -0
  153. package/dist/routes/rest/collections/findVersionByID.d.ts +1 -1
  154. package/dist/routes/rest/collections/findVersionByID.d.ts.map +1 -1
  155. package/dist/routes/rest/collections/findVersionByID.js +8 -23
  156. package/dist/routes/rest/collections/findVersionByID.js.map +1 -0
  157. package/dist/routes/rest/collections/findVersions.d.ts +1 -1
  158. package/dist/routes/rest/collections/findVersions.d.ts.map +1 -1
  159. package/dist/routes/rest/collections/findVersions.js +11 -29
  160. package/dist/routes/rest/collections/findVersions.js.map +1 -0
  161. package/dist/routes/rest/collections/preview.d.ts +3 -0
  162. package/dist/routes/rest/collections/preview.d.ts.map +1 -0
  163. package/dist/routes/rest/collections/preview.js +36 -0
  164. package/dist/routes/rest/collections/preview.js.map +1 -0
  165. package/dist/routes/rest/collections/restoreVersion.d.ts +1 -1
  166. package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
  167. package/dist/routes/rest/collections/restoreVersion.js +8 -23
  168. package/dist/routes/rest/collections/restoreVersion.js.map +1 -0
  169. package/dist/routes/rest/collections/update.d.ts +1 -1
  170. package/dist/routes/rest/collections/update.d.ts.map +1 -1
  171. package/dist/routes/rest/collections/update.js +13 -31
  172. package/dist/routes/rest/collections/update.js.map +1 -0
  173. package/dist/routes/rest/collections/updateByID.d.ts +1 -1
  174. package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
  175. package/dist/routes/rest/collections/updateByID.js +8 -23
  176. package/dist/routes/rest/collections/updateByID.js.map +1 -0
  177. package/dist/routes/rest/files/checkFileAccess.d.ts +7 -0
  178. package/dist/routes/rest/files/checkFileAccess.d.ts.map +1 -0
  179. package/dist/routes/rest/files/checkFileAccess.js +50 -0
  180. package/dist/routes/rest/files/checkFileAccess.js.map +1 -0
  181. package/dist/routes/rest/files/getFile.d.ts +9 -0
  182. package/dist/routes/rest/files/getFile.d.ts.map +1 -0
  183. package/dist/routes/rest/files/getFile.js +52 -0
  184. package/dist/routes/rest/files/getFile.js.map +1 -0
  185. package/dist/routes/rest/globals/docAccess.d.ts +1 -1
  186. package/dist/routes/rest/globals/docAccess.d.ts.map +1 -1
  187. package/dist/routes/rest/globals/docAccess.js +6 -21
  188. package/dist/routes/rest/globals/docAccess.js.map +1 -0
  189. package/dist/routes/rest/globals/findOne.d.ts +1 -1
  190. package/dist/routes/rest/globals/findOne.d.ts.map +1 -1
  191. package/dist/routes/rest/globals/findOne.js +10 -25
  192. package/dist/routes/rest/globals/findOne.js.map +1 -0
  193. package/dist/routes/rest/globals/findVersionByID.d.ts +1 -1
  194. package/dist/routes/rest/globals/findVersionByID.d.ts.map +1 -1
  195. package/dist/routes/rest/globals/findVersionByID.js +8 -23
  196. package/dist/routes/rest/globals/findVersionByID.js.map +1 -0
  197. package/dist/routes/rest/globals/findVersions.d.ts +1 -1
  198. package/dist/routes/rest/globals/findVersions.d.ts.map +1 -1
  199. package/dist/routes/rest/globals/findVersions.js +11 -29
  200. package/dist/routes/rest/globals/findVersions.js.map +1 -0
  201. package/dist/routes/rest/globals/preview.d.ts +3 -0
  202. package/dist/routes/rest/globals/preview.d.ts.map +1 -0
  203. package/dist/routes/rest/globals/preview.js +35 -0
  204. package/dist/routes/rest/globals/preview.js.map +1 -0
  205. package/dist/routes/rest/globals/restoreVersion.d.ts +1 -1
  206. package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
  207. package/dist/routes/rest/globals/restoreVersion.js +8 -23
  208. package/dist/routes/rest/globals/restoreVersion.js.map +1 -0
  209. package/dist/routes/rest/globals/update.d.ts +1 -1
  210. package/dist/routes/rest/globals/update.d.ts.map +1 -1
  211. package/dist/routes/rest/globals/update.js +10 -25
  212. package/dist/routes/rest/globals/update.js.map +1 -0
  213. package/dist/routes/rest/index.d.ts.map +1 -1
  214. package/dist/routes/rest/index.js +129 -122
  215. package/dist/routes/rest/index.js.map +1 -0
  216. package/dist/routes/rest/{RouteError.d.ts → routeError.d.ts} +3 -3
  217. package/dist/routes/rest/routeError.d.ts.map +1 -0
  218. package/dist/routes/rest/routeError.js +93 -0
  219. package/dist/routes/rest/routeError.js.map +1 -0
  220. package/dist/routes/rest/types.js +2 -5
  221. package/dist/routes/rest/types.js.map +1 -0
  222. package/dist/scss/app.scss +2 -2
  223. package/dist/utilities/buildFieldSchemaMap/index.d.ts +4 -0
  224. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -0
  225. package/dist/utilities/buildFieldSchemaMap/index.js +28 -0
  226. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -0
  227. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts +14 -0
  228. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -0
  229. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +72 -0
  230. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -0
  231. package/dist/utilities/buildFieldSchemaMap/types.d.ts +3 -0
  232. package/dist/utilities/buildFieldSchemaMap/types.d.ts.map +1 -0
  233. package/dist/utilities/buildFieldSchemaMap/types.js +3 -0
  234. package/dist/utilities/buildFieldSchemaMap/types.js.map +1 -0
  235. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  236. package/dist/utilities/createPayloadRequest.js +29 -32
  237. package/dist/utilities/createPayloadRequest.js.map +1 -0
  238. package/dist/utilities/getDataAndFile.js +6 -16
  239. package/dist/utilities/getDataAndFile.js.map +1 -0
  240. package/dist/utilities/getNextI18n.d.ts +2 -2
  241. package/dist/utilities/getNextI18n.d.ts.map +1 -1
  242. package/dist/utilities/getNextI18n.js +10 -24
  243. package/dist/utilities/getNextI18n.js.map +1 -0
  244. package/dist/utilities/getPayloadHMR.d.ts +4 -0
  245. package/dist/utilities/getPayloadHMR.d.ts.map +1 -0
  246. package/dist/utilities/getPayloadHMR.js +75 -0
  247. package/dist/utilities/getPayloadHMR.js.map +1 -0
  248. package/dist/utilities/getRequestLanguage.d.ts +6 -3
  249. package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
  250. package/dist/utilities/getRequestLanguage.js +6 -16
  251. package/dist/utilities/getRequestLanguage.js.map +1 -0
  252. package/dist/utilities/getRequestLocales.js +2 -12
  253. package/dist/utilities/getRequestLocales.js.map +1 -0
  254. package/dist/utilities/initPage.d.ts +4 -16
  255. package/dist/utilities/initPage.d.ts.map +1 -1
  256. package/dist/utilities/initPage.js +70 -54
  257. package/dist/utilities/initPage.js.map +1 -0
  258. package/dist/utilities/meta.js +5 -15
  259. package/dist/utilities/meta.js.map +1 -0
  260. package/dist/utilities/timestamp.d.ts +2 -0
  261. package/dist/utilities/timestamp.d.ts.map +1 -0
  262. package/dist/utilities/timestamp.js +7 -0
  263. package/dist/utilities/timestamp.js.map +1 -0
  264. package/dist/views/API/RenderJSON/index.js +17 -69
  265. package/dist/views/API/RenderJSON/index.js.map +1 -0
  266. package/dist/views/API/index.client.d.ts +1 -2
  267. package/dist/views/API/index.client.d.ts.map +1 -1
  268. package/dist/views/API/index.client.js +58 -106
  269. package/dist/views/API/index.client.js.map +1 -0
  270. package/dist/views/API/index.d.ts +2 -3
  271. package/dist/views/API/index.d.ts.map +1 -1
  272. package/dist/views/API/index.js +5 -25
  273. package/dist/views/API/index.js.map +1 -0
  274. package/dist/views/API/meta.d.ts +1 -1
  275. package/dist/views/API/meta.d.ts.map +1 -1
  276. package/dist/views/API/meta.js +4 -14
  277. package/dist/views/API/meta.js.map +1 -0
  278. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  279. package/dist/views/Account/Settings/index.js +16 -30
  280. package/dist/views/Account/Settings/index.js.map +1 -0
  281. package/dist/views/Account/ToggleTheme/index.js +10 -59
  282. package/dist/views/Account/ToggleTheme/index.js.map +1 -0
  283. package/dist/views/Account/index.d.ts +3 -12
  284. package/dist/views/Account/index.d.ts.map +1 -1
  285. package/dist/views/Account/index.js +43 -152
  286. package/dist/views/Account/index.js.map +1 -0
  287. package/dist/views/Account/meta.d.ts +3 -0
  288. package/dist/views/Account/meta.d.ts.map +1 -0
  289. package/dist/views/Account/meta.js +11 -0
  290. package/dist/views/Account/meta.js.map +1 -0
  291. package/dist/views/CreateFirstUser/index.client.d.ts +2 -0
  292. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  293. package/dist/views/CreateFirstUser/index.client.js +15 -22
  294. package/dist/views/CreateFirstUser/index.client.js.map +1 -0
  295. package/dist/views/CreateFirstUser/index.d.ts +3 -17
  296. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  297. package/dist/views/CreateFirstUser/index.js +23 -64
  298. package/dist/views/CreateFirstUser/index.js.map +1 -0
  299. package/dist/views/CreateFirstUser/meta.d.ts +3 -0
  300. package/dist/views/CreateFirstUser/meta.d.ts.map +1 -0
  301. package/dist/views/CreateFirstUser/meta.js +11 -0
  302. package/dist/views/CreateFirstUser/meta.js.map +1 -0
  303. package/dist/views/Dashboard/Default/index.client.d.ts +4 -2
  304. package/dist/views/Dashboard/Default/index.client.d.ts.map +1 -1
  305. package/dist/views/Dashboard/Default/index.client.js +35 -82
  306. package/dist/views/Dashboard/Default/index.client.js.map +1 -0
  307. package/dist/views/Dashboard/Default/index.d.ts +4 -3
  308. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  309. package/dist/views/Dashboard/Default/index.js +17 -31
  310. package/dist/views/Dashboard/Default/index.js.map +1 -0
  311. package/dist/views/Dashboard/index.d.ts +3 -14
  312. package/dist/views/Dashboard/index.d.ts.map +1 -1
  313. package/dist/views/Dashboard/index.js +18 -113
  314. package/dist/views/Dashboard/index.js.map +1 -0
  315. package/dist/views/Dashboard/meta.d.ts +3 -0
  316. package/dist/views/Dashboard/meta.d.ts.map +1 -0
  317. package/dist/views/Dashboard/meta.js +11 -0
  318. package/dist/views/Dashboard/meta.js.map +1 -0
  319. package/dist/views/Document/getCustomViewByKey.d.ts +2 -2
  320. package/dist/views/Document/getCustomViewByKey.d.ts.map +1 -1
  321. package/dist/views/Document/getCustomViewByKey.js +2 -12
  322. package/dist/views/Document/getCustomViewByKey.js.map +1 -0
  323. package/dist/views/Document/getCustomViewByRoute.d.ts +8 -0
  324. package/dist/views/Document/getCustomViewByRoute.d.ts.map +1 -0
  325. package/dist/views/Document/getCustomViewByRoute.js +22 -0
  326. package/dist/views/Document/getCustomViewByRoute.js.map +1 -0
  327. package/dist/views/Document/getMetaBySegment.d.ts +6 -16
  328. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  329. package/dist/views/Document/getMetaBySegment.js +39 -86
  330. package/dist/views/Document/getMetaBySegment.js.map +1 -0
  331. package/dist/views/Document/getViewsFromConfig.d.ts +12 -9
  332. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  333. package/dist/views/Document/getViewsFromConfig.js +198 -121
  334. package/dist/views/Document/getViewsFromConfig.js.map +1 -0
  335. package/dist/views/Document/index.d.ts +4 -22
  336. package/dist/views/Document/index.d.ts.map +1 -1
  337. package/dist/views/Document/index.js +115 -192
  338. package/dist/views/Document/index.js.map +1 -0
  339. package/dist/views/Document/meta.d.ts +3 -0
  340. package/dist/views/Document/meta.d.ts.map +1 -0
  341. package/dist/views/Document/meta.js +4 -0
  342. package/dist/views/Document/meta.js.map +1 -0
  343. package/dist/views/Edit/Default/Auth/APIKey.d.ts +1 -2
  344. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
  345. package/dist/views/Edit/Default/Auth/APIKey.js +37 -78
  346. package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -0
  347. package/dist/views/Edit/Default/Auth/index.d.ts +2 -3
  348. package/dist/views/Edit/Default/Auth/index.d.ts.map +1 -1
  349. package/dist/views/Edit/Default/Auth/index.js +42 -93
  350. package/dist/views/Edit/Default/Auth/index.js.map +1 -0
  351. package/dist/views/Edit/Default/Auth/types.js +2 -5
  352. package/dist/views/Edit/Default/Auth/types.js.map +1 -0
  353. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts +5 -4
  354. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts.map +1 -1
  355. package/dist/views/Edit/Default/SetDocumentTitle/index.js +27 -39
  356. package/dist/views/Edit/Default/SetDocumentTitle/index.js.map +1 -0
  357. package/dist/views/Edit/Default/SetStepNav/index.d.ts +1 -2
  358. package/dist/views/Edit/Default/SetStepNav/index.d.ts.map +1 -1
  359. package/dist/views/Edit/Default/SetStepNav/index.js +17 -23
  360. package/dist/views/Edit/Default/SetStepNav/index.js.map +1 -0
  361. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  362. package/dist/views/Edit/Default/index.js +109 -109
  363. package/dist/views/Edit/Default/index.js.map +1 -0
  364. package/dist/views/Edit/Default/types.js +2 -5
  365. package/dist/views/Edit/Default/types.js.map +1 -0
  366. package/dist/views/Edit/index.client.d.ts +1 -2
  367. package/dist/views/Edit/index.client.d.ts.map +1 -1
  368. package/dist/views/Edit/index.client.js +11 -94
  369. package/dist/views/Edit/index.client.js.map +1 -0
  370. package/dist/views/Edit/index.d.ts +2 -3
  371. package/dist/views/Edit/index.d.ts.map +1 -1
  372. package/dist/views/Edit/index.js +5 -25
  373. package/dist/views/Edit/index.js.map +1 -0
  374. package/dist/views/Edit/meta.d.ts +1 -1
  375. package/dist/views/Edit/meta.d.ts.map +1 -1
  376. package/dist/views/Edit/meta.js +11 -21
  377. package/dist/views/Edit/meta.js.map +1 -0
  378. package/dist/views/Edit/sanitizeEditViewProps.d.ts +1 -2
  379. package/dist/views/Edit/sanitizeEditViewProps.d.ts.map +1 -1
  380. package/dist/views/Edit/sanitizeEditViewProps.js +5 -18
  381. package/dist/views/Edit/sanitizeEditViewProps.js.map +1 -0
  382. package/dist/views/ForgotPassword/index.d.ts +4 -12
  383. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  384. package/dist/views/ForgotPassword/index.js +27 -91
  385. package/dist/views/ForgotPassword/index.js.map +1 -0
  386. package/dist/views/ForgotPassword/meta.d.ts +3 -0
  387. package/dist/views/ForgotPassword/meta.d.ts.map +1 -0
  388. package/dist/views/ForgotPassword/meta.js +11 -0
  389. package/dist/views/ForgotPassword/meta.js.map +1 -0
  390. package/dist/views/List/Default/index.d.ts.map +1 -1
  391. package/dist/views/List/Default/index.js +80 -109
  392. package/dist/views/List/Default/index.js.map +1 -0
  393. package/dist/views/List/Default/types.d.ts +3 -2
  394. package/dist/views/List/Default/types.d.ts.map +1 -1
  395. package/dist/views/List/Default/types.js +2 -5
  396. package/dist/views/List/Default/types.js.map +1 -0
  397. package/dist/views/List/index.d.ts +3 -20
  398. package/dist/views/List/index.d.ts.map +1 -1
  399. package/dist/views/List/index.js +69 -114
  400. package/dist/views/List/index.js.map +1 -0
  401. package/dist/views/List/meta.d.ts +7 -0
  402. package/dist/views/List/meta.d.ts.map +1 -0
  403. package/dist/views/List/meta.js +19 -0
  404. package/dist/views/List/meta.js.map +1 -0
  405. package/dist/views/LivePreview/Context/collisionDetection.js +6 -14
  406. package/dist/views/LivePreview/Context/collisionDetection.js.map +1 -0
  407. package/dist/views/LivePreview/Context/context.d.ts +2 -2
  408. package/dist/views/LivePreview/Context/context.d.ts.map +1 -1
  409. package/dist/views/LivePreview/Context/context.js +4 -22
  410. package/dist/views/LivePreview/Context/context.js.map +1 -0
  411. package/dist/views/LivePreview/Context/index.d.ts +5 -3
  412. package/dist/views/LivePreview/Context/index.d.ts.map +1 -1
  413. package/dist/views/LivePreview/Context/index.js +38 -93
  414. package/dist/views/LivePreview/Context/index.js.map +1 -0
  415. package/dist/views/LivePreview/Context/sizeReducer.js +2 -12
  416. package/dist/views/LivePreview/Context/sizeReducer.js.map +1 -0
  417. package/dist/views/LivePreview/Device/index.js +10 -61
  418. package/dist/views/LivePreview/Device/index.js.map +1 -0
  419. package/dist/views/LivePreview/DeviceContainer/index.js +6 -21
  420. package/dist/views/LivePreview/DeviceContainer/index.js.map +1 -0
  421. package/dist/views/LivePreview/IFrame/index.d.ts +4 -3
  422. package/dist/views/LivePreview/IFrame/index.d.ts.map +1 -1
  423. package/dist/views/LivePreview/IFrame/index.js +6 -58
  424. package/dist/views/LivePreview/IFrame/index.js.map +1 -0
  425. package/dist/views/LivePreview/Preview/index.d.ts +1 -1
  426. package/dist/views/LivePreview/Preview/index.d.ts.map +1 -1
  427. package/dist/views/LivePreview/Preview/index.js +23 -72
  428. package/dist/views/LivePreview/Preview/index.js.map +1 -0
  429. package/dist/views/LivePreview/Toolbar/Controls/index.d.ts +1 -1
  430. package/dist/views/LivePreview/Toolbar/Controls/index.d.ts.map +1 -1
  431. package/dist/views/LivePreview/Toolbar/Controls/index.js +24 -37
  432. package/dist/views/LivePreview/Toolbar/Controls/index.js.map +1 -0
  433. package/dist/views/LivePreview/Toolbar/SizeInput/index.js +9 -61
  434. package/dist/views/LivePreview/Toolbar/SizeInput/index.js.map +1 -0
  435. package/dist/views/LivePreview/Toolbar/index.d.ts +1 -1
  436. package/dist/views/LivePreview/Toolbar/index.d.ts.map +1 -1
  437. package/dist/views/LivePreview/Toolbar/index.js +16 -32
  438. package/dist/views/LivePreview/Toolbar/index.js.map +1 -0
  439. package/dist/views/LivePreview/ToolbarArea/index.js +6 -22
  440. package/dist/views/LivePreview/ToolbarArea/index.js.map +1 -0
  441. package/dist/views/LivePreview/index.client.d.ts +2 -3
  442. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  443. package/dist/views/LivePreview/index.client.js +83 -106
  444. package/dist/views/LivePreview/index.client.js.map +1 -0
  445. package/dist/views/LivePreview/index.d.ts +2 -2
  446. package/dist/views/LivePreview/index.d.ts.map +1 -1
  447. package/dist/views/LivePreview/index.js +34 -30
  448. package/dist/views/LivePreview/index.js.map +1 -0
  449. package/dist/views/LivePreview/meta.d.ts +1 -1
  450. package/dist/views/LivePreview/meta.d.ts.map +1 -1
  451. package/dist/views/LivePreview/meta.js +11 -21
  452. package/dist/views/LivePreview/meta.js.map +1 -0
  453. package/dist/views/LivePreview/usePopupWindow.d.ts.map +1 -1
  454. package/dist/views/LivePreview/usePopupWindow.js +11 -21
  455. package/dist/views/LivePreview/usePopupWindow.js.map +1 -0
  456. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  457. package/dist/views/Login/LoginForm/index.js +22 -36
  458. package/dist/views/Login/LoginForm/index.js.map +1 -0
  459. package/dist/views/Login/index.d.ts +4 -15
  460. package/dist/views/Login/index.d.ts.map +1 -1
  461. package/dist/views/Login/index.js +16 -88
  462. package/dist/views/Login/index.js.map +1 -0
  463. package/dist/views/Login/meta.d.ts +3 -0
  464. package/dist/views/Login/meta.d.ts.map +1 -0
  465. package/dist/views/Login/meta.js +11 -0
  466. package/dist/views/Login/meta.js.map +1 -0
  467. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  468. package/dist/views/Logout/LogoutClient.js +15 -69
  469. package/dist/views/Logout/LogoutClient.js.map +1 -0
  470. package/dist/views/Logout/index.d.ts +5 -17
  471. package/dist/views/Logout/index.d.ts.map +1 -1
  472. package/dist/views/Logout/index.js +12 -53
  473. package/dist/views/Logout/index.js.map +1 -0
  474. package/dist/views/Logout/meta.d.ts +3 -0
  475. package/dist/views/Logout/meta.d.ts.map +1 -0
  476. package/dist/views/Logout/meta.js +11 -0
  477. package/dist/views/Logout/meta.js.map +1 -0
  478. package/dist/views/NotFound/index.client.d.ts +6 -0
  479. package/dist/views/NotFound/index.client.d.ts.map +1 -0
  480. package/dist/views/NotFound/index.client.js +41 -0
  481. package/dist/views/NotFound/index.client.js.map +1 -0
  482. package/dist/views/NotFound/index.d.ts +26 -5
  483. package/dist/views/NotFound/index.d.ts.map +1 -1
  484. package/dist/views/NotFound/index.js +34 -45
  485. package/dist/views/NotFound/index.js.map +1 -0
  486. package/dist/views/NotFound/index.scss +1 -0
  487. package/dist/views/NotFound/meta.d.ts +8 -0
  488. package/dist/views/NotFound/meta.d.ts.map +1 -0
  489. package/dist/views/NotFound/meta.js +11 -0
  490. package/dist/views/NotFound/meta.js.map +1 -0
  491. package/dist/views/ResetPassword/index.d.ts +4 -17
  492. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  493. package/dist/views/ResetPassword/index.js +34 -62
  494. package/dist/views/ResetPassword/index.js.map +1 -0
  495. package/dist/views/ResetPassword/meta.d.ts +3 -0
  496. package/dist/views/ResetPassword/meta.d.ts.map +1 -0
  497. package/dist/views/ResetPassword/meta.js +11 -0
  498. package/dist/views/ResetPassword/meta.js.map +1 -0
  499. package/dist/views/Root/getCustomViewByRoute.d.ts +6 -0
  500. package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -0
  501. package/dist/views/Root/getCustomViewByRoute.js +19 -0
  502. package/dist/views/Root/getCustomViewByRoute.js.map +1 -0
  503. package/dist/views/Root/getViewFromConfig.d.ts +18 -0
  504. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -0
  505. package/dist/views/Root/getViewFromConfig.js +138 -0
  506. package/dist/views/Root/getViewFromConfig.js.map +1 -0
  507. package/dist/views/Root/index.d.ts +13 -6
  508. package/dist/views/Root/index.d.ts.map +1 -1
  509. package/dist/views/Root/index.js +43 -226
  510. package/dist/views/Root/index.js.map +1 -0
  511. package/dist/views/Root/isPathMatchingRoute.d.ts +8 -0
  512. package/dist/views/Root/isPathMatchingRoute.d.ts.map +1 -0
  513. package/dist/views/Root/isPathMatchingRoute.js +16 -0
  514. package/dist/views/Root/isPathMatchingRoute.js.map +1 -0
  515. package/dist/views/Root/meta.d.ts +14 -0
  516. package/dist/views/Root/meta.d.ts.map +1 -0
  517. package/dist/views/Root/meta.js +159 -0
  518. package/dist/views/Root/meta.js.map +1 -0
  519. package/dist/views/Unauthorized/index.d.ts +4 -11
  520. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  521. package/dist/views/Unauthorized/index.js +18 -42
  522. package/dist/views/Unauthorized/index.js.map +1 -0
  523. package/dist/views/Unauthorized/index.scss +36 -0
  524. package/dist/views/Unauthorized/meta.d.ts +3 -0
  525. package/dist/views/Unauthorized/meta.d.ts.map +1 -0
  526. package/dist/views/Unauthorized/meta.js +11 -0
  527. package/dist/views/Unauthorized/meta.js.map +1 -0
  528. package/dist/views/Verify/index.d.ts +4 -17
  529. package/dist/views/Verify/index.d.ts.map +1 -1
  530. package/dist/views/Verify/index.js +14 -55
  531. package/dist/views/Verify/index.js.map +1 -0
  532. package/dist/views/Verify/meta.d.ts +3 -0
  533. package/dist/views/Verify/meta.d.ts.map +1 -0
  534. package/dist/views/Verify/meta.js +11 -0
  535. package/dist/views/Verify/meta.js.map +1 -0
  536. package/dist/views/Version/Default/SetStepNav.d.ts +4 -3
  537. package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
  538. package/dist/views/Version/Default/SetStepNav.js +36 -28
  539. package/dist/views/Version/Default/SetStepNav.js.map +1 -0
  540. package/dist/views/Version/Default/index.d.ts +1 -1
  541. package/dist/views/Version/Default/index.d.ts.map +1 -1
  542. package/dist/views/Version/Default/index.js +53 -93
  543. package/dist/views/Version/Default/index.js.map +1 -0
  544. package/dist/views/Version/Default/types.d.ts +4 -9
  545. package/dist/views/Version/Default/types.d.ts.map +1 -1
  546. package/dist/views/Version/Default/types.js +2 -5
  547. package/dist/views/Version/Default/types.js.map +1 -0
  548. package/dist/views/Version/RenderFieldsToDiff/Label/index.js +4 -20
  549. package/dist/views/Version/RenderFieldsToDiff/Label/index.js.map +1 -0
  550. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts +1 -1
  551. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  552. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +31 -47
  553. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -0
  554. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.d.ts +1 -1
  555. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.d.ts.map +1 -1
  556. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js +10 -26
  557. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js.map +1 -0
  558. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +1 -1
  559. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  560. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +20 -35
  561. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -0
  562. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.d.ts.map +1 -1
  563. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js +7 -62
  564. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js.map +1 -0
  565. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +6 -2
  566. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  567. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +16 -31
  568. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -0
  569. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +6 -2
  570. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  571. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +11 -26
  572. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -0
  573. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.d.ts.map +1 -1
  574. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js +7 -62
  575. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js.map +1 -0
  576. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +1 -1
  577. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  578. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +11 -27
  579. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -0
  580. package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.js +2 -12
  581. package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.js.map +1 -0
  582. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +54 -19
  583. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  584. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +25 -40
  585. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -0
  586. package/dist/views/Version/RenderFieldsToDiff/fields/styles.js +2 -12
  587. package/dist/views/Version/RenderFieldsToDiff/fields/styles.js.map +1 -0
  588. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +1 -1
  589. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +1 -1
  590. package/dist/views/Version/RenderFieldsToDiff/fields/types.js +2 -5
  591. package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -0
  592. package/dist/views/Version/RenderFieldsToDiff/index.d.ts +1 -1
  593. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  594. package/dist/views/Version/RenderFieldsToDiff/index.js +28 -43
  595. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -0
  596. package/dist/views/Version/RenderFieldsToDiff/types.d.ts +2 -2
  597. package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -1
  598. package/dist/views/Version/RenderFieldsToDiff/types.js +2 -5
  599. package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -0
  600. package/dist/views/Version/Restore/index.d.ts +1 -1
  601. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  602. package/dist/views/Version/Restore/index.js +24 -71
  603. package/dist/views/Version/Restore/index.js.map +1 -0
  604. package/dist/views/Version/Restore/types.d.ts +1 -1
  605. package/dist/views/Version/Restore/types.d.ts.map +1 -1
  606. package/dist/views/Version/Restore/types.js +2 -5
  607. package/dist/views/Version/Restore/types.js.map +1 -0
  608. package/dist/views/Version/SelectComparison/index.d.ts +1 -1
  609. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  610. package/dist/views/Version/SelectComparison/index.js +53 -90
  611. package/dist/views/Version/SelectComparison/index.js.map +1 -0
  612. package/dist/views/Version/SelectComparison/types.d.ts +1 -1
  613. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
  614. package/dist/views/Version/SelectComparison/types.js +2 -5
  615. package/dist/views/Version/SelectComparison/types.js.map +1 -0
  616. package/dist/views/Version/SelectLocales/index.d.ts +1 -1
  617. package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
  618. package/dist/views/Version/SelectLocales/index.js +11 -25
  619. package/dist/views/Version/SelectLocales/index.js.map +1 -0
  620. package/dist/views/Version/SelectLocales/types.d.ts +4 -4
  621. package/dist/views/Version/SelectLocales/types.d.ts.map +1 -1
  622. package/dist/views/Version/SelectLocales/types.js +2 -5
  623. package/dist/views/Version/SelectLocales/types.js.map +1 -0
  624. package/dist/views/Version/index.d.ts +2 -2
  625. package/dist/views/Version/index.d.ts.map +1 -1
  626. package/dist/views/Version/index.js +35 -42
  627. package/dist/views/Version/index.js.map +1 -0
  628. package/dist/views/Version/meta.d.ts +1 -1
  629. package/dist/views/Version/meta.d.ts.map +1 -1
  630. package/dist/views/Version/meta.js +13 -19
  631. package/dist/views/Version/meta.js.map +1 -0
  632. package/dist/views/Version/shared.js +3 -21
  633. package/dist/views/Version/shared.js.map +1 -0
  634. package/dist/views/Versions/buildColumns.d.ts +2 -2
  635. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  636. package/dist/views/Versions/buildColumns.js +36 -42
  637. package/dist/views/Versions/buildColumns.js.map +1 -0
  638. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  639. package/dist/views/Versions/cells/AutosaveCell/index.js +10 -59
  640. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -0
  641. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
  642. package/dist/views/Versions/cells/CreatedAt/index.js +18 -25
  643. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -0
  644. package/dist/views/Versions/cells/ID/index.js +6 -57
  645. package/dist/views/Versions/cells/ID/index.js.map +1 -0
  646. package/dist/views/Versions/index.client.d.ts +1 -6
  647. package/dist/views/Versions/index.client.d.ts.map +1 -1
  648. package/dist/views/Versions/index.client.js +31 -117
  649. package/dist/views/Versions/index.client.js.map +1 -0
  650. package/dist/views/Versions/index.d.ts +2 -3
  651. package/dist/views/Versions/index.d.ts.map +1 -1
  652. package/dist/views/Versions/index.js +40 -72
  653. package/dist/views/Versions/index.js.map +1 -0
  654. package/dist/views/Versions/meta.d.ts +1 -1
  655. package/dist/views/Versions/meta.d.ts.map +1 -1
  656. package/dist/views/Versions/meta.js +7 -17
  657. package/dist/views/Versions/meta.js.map +1 -0
  658. package/dist/views/Versions/types.js +2 -5
  659. package/dist/views/Versions/types.js.map +1 -0
  660. package/dist/webpackEntry.d.ts +5 -0
  661. package/dist/webpackEntry.d.ts.map +1 -0
  662. package/dist/webpackEntry.js +6 -0
  663. package/dist/webpackEntry.js.map +1 -0
  664. package/dist/withPayload.d.ts +2 -1
  665. package/dist/withPayload.d.ts.map +1 -1
  666. package/dist/withPayload.js +3 -8
  667. package/dist/withPayload.js.map +1 -0
  668. package/package.json +36 -52
  669. package/src/index.js +1 -0
  670. package/dist/295bdb5117ce718dc7ce.woff2 +0 -1
  671. package/dist/3dec23c585a4abb5db73.woff +0 -1
  672. package/dist/542802f243f0fcaf55b3.woff2 +0 -1
  673. package/dist/5e5b3593b8911609ead8.woff +0 -1
  674. package/dist/64ee2a3127da82b7ea68.woff2 +0 -1
  675. package/dist/67a3a8f8301a0429df2d.woff +0 -1
  676. package/dist/8d0dc94a123c04b123f0.woff +0 -1
  677. package/dist/94db87589768ca1eec3c.woff2 +0 -1
  678. package/dist/997a8ea7da8ec3068210.woff2 +0 -1
  679. package/dist/9ab00e972f6f94ca3ff4.woff +0 -1
  680. package/dist/ab1f8b95d9d1911a4a3e.woff +0 -1
  681. package/dist/ba5a15d71add74a81bb9.woff +0 -1
  682. package/dist/bd2c036744af4b004ea6.woff2 +0 -1
  683. package/dist/bin/index.d.ts +0 -2
  684. package/dist/bin/index.d.ts.map +0 -1
  685. package/dist/bin/index.js +0 -37
  686. package/dist/bin/install.d.ts +0 -4
  687. package/dist/bin/install.d.ts.map +0 -1
  688. package/dist/bin/install.js +0 -77
  689. package/dist/cc56c782af93204aba75.woff +0 -1
  690. package/dist/d377d6e20b542fe3b375.woff2 +0 -1
  691. package/dist/e415ace668b22ac52c65.woff2 +0 -1
  692. package/dist/exports/index.d.ts +0 -2
  693. package/dist/exports/index.d.ts.map +0 -1
  694. package/dist/exports/index.js +0 -13
  695. package/dist/graphql/registerSchema.d.ts +0 -2
  696. package/dist/graphql/registerSchema.d.ts.map +0 -1
  697. package/dist/graphql/registerSchema.js +0 -3
  698. package/dist/index.d.ts +0 -7
  699. package/dist/index.d.ts.map +0 -1
  700. package/dist/layouts/Admin/index.d.ts +0 -12
  701. package/dist/layouts/Admin/index.d.ts.map +0 -1
  702. package/dist/layouts/Admin/index.js +0 -44
  703. package/dist/layouts/Document/index.d.ts +0 -14
  704. package/dist/layouts/Document/index.d.ts.map +0 -1
  705. package/dist/layouts/Document/index.js +0 -82
  706. package/dist/routes/rest/RouteError.d.ts.map +0 -1
  707. package/dist/routes/rest/RouteError.js +0 -104
  708. package/dist/routes/rest/[collection]/file/[filename]/route.d.ts +0 -8
  709. package/dist/routes/rest/[collection]/file/[filename]/route.d.ts.map +0 -1
  710. package/dist/routes/rest/[collection]/file/[filename]/route.js +0 -116
  711. package/dist/styles.css +0 -1
  712. package/dist/utilities/auth.d.ts +0 -10
  713. package/dist/utilities/auth.d.ts.map +0 -1
  714. package/dist/utilities/auth.js +0 -42
  715. package/dist/utilities/createClientConfig.d.ts +0 -5
  716. package/dist/utilities/createClientConfig.d.ts.map +0 -1
  717. package/dist/utilities/createClientConfig.js +0 -120
  718. package/dist/utilities/getNextT.d.ts +0 -7
  719. package/dist/utilities/getNextT.d.ts.map +0 -1
  720. package/dist/utilities/getNextT.js +0 -28
  721. package/dist/views/Document/getCustomViewByPath.d.ts +0 -4
  722. package/dist/views/Document/getCustomViewByPath.d.ts.map +0 -1
  723. package/dist/views/Document/getCustomViewByPath.js +0 -26
  724. package/dist/views/Edit/Default/RenderCustomView.d.ts +0 -2
  725. package/dist/views/Edit/Default/RenderCustomView.d.ts.map +0 -1
  726. package/dist/views/Edit/Default/RenderCustomView.js +0 -3
  727. package/dist/views/Edit/types.d.js +0 -7
  728. package/dist/views/Edit/types.d.ts +0 -32
  729. package/dist/views/Edit/types.d.ts.map +0 -1
  730. package/dist/views/Edit/types.js +0 -6
  731. package/dist/views/List/Default/Cell/cellTypes.spec.js +0 -234
  732. package/dist/views/List/Default/Cell/fields/Array/index.d.ts +0 -7
  733. package/dist/views/List/Default/Cell/fields/Array/index.d.ts.map +0 -1
  734. package/dist/views/List/Default/Cell/fields/Array/index.js +0 -27
  735. package/dist/views/List/Default/Cell/fields/Blocks/index.d.ts +0 -8
  736. package/dist/views/List/Default/Cell/fields/Blocks/index.d.ts.map +0 -1
  737. package/dist/views/List/Default/Cell/fields/Blocks/index.js +0 -45
  738. package/dist/views/List/Default/Cell/fields/Checkbox/index.d.ts +0 -5
  739. package/dist/views/List/Default/Cell/fields/Checkbox/index.d.ts.map +0 -1
  740. package/dist/views/List/Default/Cell/fields/Checkbox/index.js +0 -23
  741. package/dist/views/List/Default/Cell/fields/Checkbox/index.scss +0 -22
  742. package/dist/views/List/Default/Cell/fields/Code/index.d.ts +0 -8
  743. package/dist/views/List/Default/Cell/fields/Code/index.d.ts.map +0 -1
  744. package/dist/views/List/Default/Cell/fields/Code/index.js +0 -29
  745. package/dist/views/List/Default/Cell/fields/Code/index.scss +0 -27
  746. package/dist/views/List/Default/Cell/fields/Date/index.d.ts +0 -7
  747. package/dist/views/List/Default/Cell/fields/Date/index.d.ts.map +0 -1
  748. package/dist/views/List/Default/Cell/fields/Date/index.js +0 -26
  749. package/dist/views/List/Default/Cell/fields/File/index.d.ts +0 -7
  750. package/dist/views/List/Default/Cell/fields/File/index.d.ts.map +0 -1
  751. package/dist/views/List/Default/Cell/fields/File/index.js +0 -39
  752. package/dist/views/List/Default/Cell/fields/File/index.scss +0 -23
  753. package/dist/views/List/Default/Cell/fields/JSON/index.d.ts +0 -5
  754. package/dist/views/List/Default/Cell/fields/JSON/index.d.ts.map +0 -1
  755. package/dist/views/List/Default/Cell/fields/JSON/index.js +0 -26
  756. package/dist/views/List/Default/Cell/fields/JSON/index.scss +0 -22
  757. package/dist/views/List/Default/Cell/fields/Relationship/index.d.ts +0 -9
  758. package/dist/views/List/Default/Cell/fields/Relationship/index.d.ts.map +0 -1
  759. package/dist/views/List/Default/Cell/fields/Relationship/index.js +0 -121
  760. package/dist/views/List/Default/Cell/fields/Relationship/index.scss +0 -3
  761. package/dist/views/List/Default/Cell/fields/Richtext/index.d.ts +0 -2
  762. package/dist/views/List/Default/Cell/fields/Richtext/index.d.ts.map +0 -1
  763. package/dist/views/List/Default/Cell/fields/Richtext/index.js +0 -3
  764. package/dist/views/List/Default/Cell/fields/Select/index.d.ts +0 -7
  765. package/dist/views/List/Default/Cell/fields/Select/index.d.ts.map +0 -1
  766. package/dist/views/List/Default/Cell/fields/Select/index.js +0 -40
  767. package/dist/views/List/Default/Cell/fields/Textarea/index.d.ts +0 -4
  768. package/dist/views/List/Default/Cell/fields/Textarea/index.d.ts.map +0 -1
  769. package/dist/views/List/Default/Cell/fields/Textarea/index.js +0 -23
  770. package/dist/views/List/Default/Cell/fields/index.d.ts +0 -17
  771. package/dist/views/List/Default/Cell/fields/index.d.ts.map +0 -1
  772. package/dist/views/List/Default/Cell/fields/index.js +0 -36
  773. package/dist/views/List/Default/Cell/index.d.ts +0 -4
  774. package/dist/views/List/Default/Cell/index.d.ts.map +0 -1
  775. package/dist/views/List/Default/Cell/index.js +0 -89
  776. package/dist/views/List/Default/RelationshipProvider/index.d.ts +0 -20
  777. package/dist/views/List/Default/RelationshipProvider/index.d.ts.map +0 -1
  778. package/dist/views/List/Default/RelationshipProvider/index.js +0 -153
  779. package/dist/views/List/Default/RelationshipProvider/reducer.d.ts +0 -19
  780. package/dist/views/List/Default/RelationshipProvider/reducer.d.ts.map +0 -1
  781. package/dist/views/List/Default/RelationshipProvider/reducer.js +0 -55
  782. package/dist/views/Unauthorized/UnauthorizedClient.d.ts +0 -5
  783. package/dist/views/Unauthorized/UnauthorizedClient.d.ts.map +0 -1
  784. package/dist/views/Unauthorized/UnauthorizedClient.js +0 -27
  785. package/src/index.ts +0 -6
  786. /package/dist/{static/SuisseIntl-Bold.2211c494.woff → prod/payload/SuisseIntl-Bold.woff} +0 -0
  787. /package/dist/{static/SuisseIntl-Bold.9c7dfd00.woff2 → prod/payload/SuisseIntl-Bold.woff2} +0 -0
  788. /package/dist/{static/SuisseIntl-Medium.d7aeda9e.woff → prod/payload/SuisseIntl-Medium.woff} +0 -0
  789. /package/dist/{static/SuisseIntl-Medium.5b718d97.woff2 → prod/payload/SuisseIntl-Medium.woff2} +0 -0
  790. /package/dist/{static/SuisseIntl-SemiBold.e7caa9e1.woff → prod/payload/SuisseIntl-SemiBold.woff} +0 -0
  791. /package/dist/{static/SuisseIntl-SemiBold.40ad7515.woff2 → prod/payload/SuisseIntl-SemiBold.woff2} +0 -0
  792. /package/dist/{static/SuisseIntl.8b4ddd0d.woff → prod/payload/SuisseIntl.woff} +0 -0
  793. /package/dist/{static/SuisseIntl.51922ceb.woff2 → prod/payload/SuisseIntl.woff2} +0 -0
  794. /package/dist/{static/merriweather-v30-latin-900.efe8f6a3.woff → prod/payload/merriweather-v30-latin-900.woff} +0 -0
  795. /package/dist/{static/merriweather-v30-latin-900.52244336.woff2 → prod/payload/merriweather-v30-latin-900.woff2} +0 -0
  796. /package/dist/{static/merriweather-v30-latin-900italic.78b8935f.woff → prod/payload/merriweather-v30-latin-900italic.woff} +0 -0
  797. /package/dist/{static/merriweather-v30-latin-900italic.f53bb8d4.woff2 → prod/payload/merriweather-v30-latin-900italic.woff2} +0 -0
  798. /package/dist/{static/merriweather-v30-latin-italic.8f612153.woff → prod/payload/merriweather-v30-latin-italic.woff} +0 -0
  799. /package/dist/{static/merriweather-v30-latin-italic.a1cfdc5b.woff2 → prod/payload/merriweather-v30-latin-italic.woff2} +0 -0
  800. /package/dist/{static/merriweather-v30-latin-regular.787999a6.woff → prod/payload/merriweather-v30-latin-regular.woff} +0 -0
  801. /package/dist/{static/merriweather-v30-latin-regular.e009f214.woff2 → prod/payload/merriweather-v30-latin-regular.woff2} +0 -0
@@ -1,13 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "isEligibleRequest", {
6
- enumerable: true,
7
- get: function() {
8
- return isEligibleRequest;
9
- }
10
- });
11
1
  const ACCEPTABLE_CONTENT_TYPE = /^multipart\/['"()+-_]+(?:; ?['"()+-_]*)+$/i;
12
2
  const UNACCEPTABLE_METHODS = new Set([
13
3
  'GET',
@@ -25,7 +15,7 @@ const hasAcceptableContentType = (req)=>{
25
15
  const contType = req.headers.get('content-type');
26
16
  return contType.includes('boundary=') && ACCEPTABLE_CONTENT_TYPE.test(contType);
27
17
  };
28
- const isEligibleRequest = (req)=>{
18
+ export const isEligibleRequest = (req)=>{
29
19
  try {
30
20
  return hasBody(req) && hasAcceptableMethod(req) && hasAcceptableContentType(req);
31
21
  } catch (e) {
@@ -33,4 +23,4 @@ const isEligibleRequest = (req)=>{
33
23
  }
34
24
  };
35
25
 
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9uZXh0LWZpbGV1cGxvYWQvaXNFbGlnaWJsZVJlcXVlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgQUNDRVBUQUJMRV9DT05URU5UX1RZUEUgPSAvXm11bHRpcGFydFxcL1snXCIoKSstX10rKD86OyA/WydcIigpKy1fXSopKyQvaVxuY29uc3QgVU5BQ0NFUFRBQkxFX01FVEhPRFMgPSBuZXcgU2V0KFsnR0VUJywgJ0hFQUQnLCAnREVMRVRFJywgJ09QVElPTlMnLCAnQ09OTkVDVCcsICdUUkFDRSddKVxuXG5jb25zdCBoYXNCb2R5ID0gKHJlcTogUmVxdWVzdCk6IGJvb2xlYW4gPT4ge1xuICByZXR1cm4gQm9vbGVhbihcbiAgICByZXEuaGVhZGVycy5nZXQoJ3RyYW5zZmVyLWVuY29kaW5nJykgfHxcbiAgICAgIChyZXEuaGVhZGVycy5nZXQoJ2NvbnRlbnQtbGVuZ3RoJykgJiYgcmVxLmhlYWRlcnMuZ2V0KCdjb250ZW50LWxlbmd0aCcpICE9PSAnMCcpLFxuICApXG59XG5cbmNvbnN0IGhhc0FjY2VwdGFibGVNZXRob2QgPSAocmVxOiBSZXF1ZXN0KTogYm9vbGVhbiA9PiAhVU5BQ0NFUFRBQkxFX01FVEhPRFMuaGFzKHJlcS5tZXRob2QpXG5cbmNvbnN0IGhhc0FjY2VwdGFibGVDb250ZW50VHlwZSA9IChyZXE6IFJlcXVlc3QpOiBib29sZWFuID0+IHtcbiAgY29uc3QgY29udFR5cGUgPSByZXEuaGVhZGVycy5nZXQoJ2NvbnRlbnQtdHlwZScpXG4gIHJldHVybiBjb250VHlwZS5pbmNsdWRlcygnYm91bmRhcnk9JykgJiYgQUNDRVBUQUJMRV9DT05URU5UX1RZUEUudGVzdChjb250VHlwZSlcbn1cblxuZXhwb3J0IGNvbnN0IGlzRWxpZ2libGVSZXF1ZXN0ID0gKHJlcTogUmVxdWVzdCk6IGJvb2xlYW4gPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBoYXNCb2R5KHJlcSkgJiYgaGFzQWNjZXB0YWJsZU1ldGhvZChyZXEpICYmIGhhc0FjY2VwdGFibGVDb250ZW50VHlwZShyZXEpXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxufVxuIl0sIm5hbWVzIjpbImlzRWxpZ2libGVSZXF1ZXN0IiwiQUNDRVBUQUJMRV9DT05URU5UX1RZUEUiLCJVTkFDQ0VQVEFCTEVfTUVUSE9EUyIsIlNldCIsImhhc0JvZHkiLCJyZXEiLCJCb29sZWFuIiwiaGVhZGVycyIsImdldCIsImhhc0FjY2VwdGFibGVNZXRob2QiLCJoYXMiLCJtZXRob2QiLCJoYXNBY2NlcHRhYmxlQ29udGVudFR5cGUiLCJjb250VHlwZSIsImluY2x1ZGVzIiwidGVzdCIsImUiXSwibWFwcGluZ3MiOiI7Ozs7K0JBaUJhQTs7O2VBQUFBOzs7QUFqQmIsTUFBTUMsMEJBQTBCO0FBQ2hDLE1BQU1DLHVCQUF1QixJQUFJQyxJQUFJO0lBQUM7SUFBTztJQUFRO0lBQVU7SUFBVztJQUFXO0NBQVE7QUFFN0YsTUFBTUMsVUFBVSxDQUFDQztJQUNmLE9BQU9DLFFBQ0xELElBQUlFLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDLHdCQUNiSCxJQUFJRSxPQUFPLENBQUNDLEdBQUcsQ0FBQyxxQkFBcUJILElBQUlFLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDLHNCQUFzQjtBQUVsRjtBQUVBLE1BQU1DLHNCQUFzQixDQUFDSixNQUEwQixDQUFDSCxxQkFBcUJRLEdBQUcsQ0FBQ0wsSUFBSU0sTUFBTTtBQUUzRixNQUFNQywyQkFBMkIsQ0FBQ1A7SUFDaEMsTUFBTVEsV0FBV1IsSUFBSUUsT0FBTyxDQUFDQyxHQUFHLENBQUM7SUFDakMsT0FBT0ssU0FBU0MsUUFBUSxDQUFDLGdCQUFnQmIsd0JBQXdCYyxJQUFJLENBQUNGO0FBQ3hFO0FBRU8sTUFBTWIsb0JBQW9CLENBQUNLO0lBQ2hDLElBQUk7UUFDRixPQUFPRCxRQUFRQyxRQUFRSSxvQkFBb0JKLFFBQVFPLHlCQUF5QlA7SUFDOUUsRUFBRSxPQUFPVyxHQUFHO1FBQ1YsT0FBTztJQUNUO0FBQ0YifQ==
26
+ //# sourceMappingURL=isEligibleRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/next-fileupload/isEligibleRequest.ts"],"sourcesContent":["const ACCEPTABLE_CONTENT_TYPE = /^multipart\\/['\"()+-_]+(?:; ?['\"()+-_]*)+$/i\nconst UNACCEPTABLE_METHODS = new Set(['GET', 'HEAD', 'DELETE', 'OPTIONS', 'CONNECT', 'TRACE'])\n\nconst hasBody = (req: Request): boolean => {\n return Boolean(\n req.headers.get('transfer-encoding') ||\n (req.headers.get('content-length') && req.headers.get('content-length') !== '0'),\n )\n}\n\nconst hasAcceptableMethod = (req: Request): boolean => !UNACCEPTABLE_METHODS.has(req.method)\n\nconst hasAcceptableContentType = (req: Request): boolean => {\n const contType = req.headers.get('content-type')\n return contType.includes('boundary=') && ACCEPTABLE_CONTENT_TYPE.test(contType)\n}\n\nexport const isEligibleRequest = (req: Request): boolean => {\n try {\n return hasBody(req) && hasAcceptableMethod(req) && hasAcceptableContentType(req)\n } catch (e) {\n return false\n }\n}\n"],"names":["ACCEPTABLE_CONTENT_TYPE","UNACCEPTABLE_METHODS","Set","hasBody","req","Boolean","headers","get","hasAcceptableMethod","has","method","hasAcceptableContentType","contType","includes","test","isEligibleRequest","e"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,MAAMA,0BAA0B;AAChC,MAAMC,uBAAuB,IAAIC,IAAI;IAAC;IAAO;IAAQ;IAAU;IAAW;IAAW;CAAQ;AAE7F,MAAMC,UAAU,CAACC;IACf,OAAOC,QACLD,IAAIE,OAAO,CAACC,GAAG,CAAC,wBACbH,IAAIE,OAAO,CAACC,GAAG,CAAC,qBAAqBH,IAAIE,OAAO,CAACC,GAAG,CAAC,sBAAsB;AAElF;AAEA,MAAMC,sBAAsB,CAACJ,MAA0B,CAACH,qBAAqBQ,GAAG,CAACL,IAAIM,MAAM;AAE3F,MAAMC,2BAA2B,CAACP;IAChC,MAAMQ,WAAWR,IAAIE,OAAO,CAACC,GAAG,CAAC;IACjC,OAAOK,SAASC,QAAQ,CAAC,gBAAgBb,wBAAwBc,IAAI,CAACF;AACxE;AAEA,OAAO,MAAMG,oBAAoB,CAACX;IAChC,IAAI;QACF,OAAOD,QAAQC,QAAQI,oBAAoBJ,QAAQO,yBAAyBP;IAC9E,EAAE,OAAOY,GAAG;QACV,OAAO;IACT;AACF,EAAC"}
@@ -1,4 +1,4 @@
1
- import type { NextFileUploadOptions, NextFileUploadResponse } from '.';
1
+ import type { NextFileUploadOptions, NextFileUploadResponse } from './index.js';
2
2
  type ProcessMultipart = (args: {
3
3
  options: NextFileUploadOptions;
4
4
  request: Request;
@@ -1 +1 @@
1
- {"version":3,"file":"processMultipart.d.ts","sourceRoot":"","sources":["../../src/next-fileupload/processMultipart.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,GAAG,CAAA;AAUtE,KAAK,gBAAgB,GAAG,CAAC,IAAI,EAAE;IAC7B,OAAO,EAAE,qBAAqB,CAAA;IAC9B,OAAO,EAAE,OAAO,CAAA;CACjB,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAA;AACrC,eAAO,MAAM,gBAAgB,EAAE,gBAmJ9B,CAAA"}
1
+ {"version":3,"file":"processMultipart.d.ts","sourceRoot":"","sources":["../../src/next-fileupload/processMultipart.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAU/E,KAAK,gBAAgB,GAAG,CAAC,IAAI,EAAE;IAC7B,OAAO,EAAE,qBAAqB,CAAA;IAC9B,OAAO,EAAE,OAAO,CAAA;CACjB,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAA;AACrC,eAAO,MAAM,gBAAgB,EAAE,gBAqJ9B,CAAA"}
@@ -1,27 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "processMultipart", {
6
- enumerable: true,
7
- get: function() {
8
- return processMultipart;
9
- }
10
- });
11
- const _busboy = /*#__PURE__*/ _interop_require_default(require("busboy"));
12
- const _errors = require("payload/errors");
13
- const _fileFactory = require("./fileFactory");
14
- const _handlers = require("./handlers");
15
- const _processNested = require("./processNested");
16
- const _uploadTimer = require("./uploadTimer");
17
- const _utilities = require("./utilities");
18
- function _interop_require_default(obj) {
19
- return obj && obj.__esModule ? obj : {
20
- default: obj
21
- };
22
- }
1
+ import Busboy from 'busboy';
2
+ import { APIError } from 'payload/errors';
3
+ import { fileFactory } from './fileFactory.js';
4
+ import { memHandler, tempFileHandler } from './handlers.js';
5
+ import { processNested } from './processNested.js';
6
+ import { createUploadTimer } from './uploadTimer.js';
7
+ import { buildFields, debugLog, isFunc, parseFileName } from './utilities.js';
23
8
  const waitFlushProperty = Symbol('wait flush property symbol');
24
- const processMultipart = async ({ options, request })=>{
9
+ export const processMultipart = async ({ options, request })=>{
25
10
  let parsingRequest = true;
26
11
  const result = {
27
12
  fields: undefined,
@@ -31,37 +16,37 @@ const processMultipart = async ({ options, request })=>{
31
16
  request.headers.forEach((value, name)=>{
32
17
  headersObject[name] = value;
33
18
  });
34
- const busboy = (0, _busboy.default)({
19
+ const busboy = Busboy({
35
20
  ...options,
36
21
  headers: headersObject
37
22
  });
38
23
  // Build multipart req.body fields
39
24
  busboy.on('field', (field, val)=>{
40
- result.fields = (0, _utilities.buildFields)(result.fields, field, val);
25
+ result.fields = buildFields(result.fields, field, val);
41
26
  });
42
27
  // Build req.files fields
43
28
  busboy.on('file', (field, file, info)=>{
44
29
  // Parse file name(cutting huge names, decoding, etc..).
45
30
  const { encoding, filename: name, mimeType: mime } = info;
46
- const filename = (0, _utilities.parseFileName)(options, name);
31
+ const filename = parseFileName(options, name);
47
32
  // Define methods and handlers for upload process.
48
- const { cleanup, complete, dataHandler, getFilePath, getFileSize, getHash, getWritePromise } = options.useTempFiles ? (0, _handlers.tempFileHandler)(options, field, filename) // Upload into temporary file.
49
- : (0, _handlers.memHandler)(options, field, filename) // Upload into RAM.
33
+ const { cleanup, complete, dataHandler, getFilePath, getFileSize, getHash, getWritePromise } = options.useTempFiles ? tempFileHandler(options, field, filename) // Upload into temporary file.
34
+ : memHandler(options, field, filename) // Upload into RAM.
50
35
  ;
51
36
  const writePromise = options.useTempFiles ? getWritePromise().catch((err)=>{
52
37
  busboy.end();
53
38
  cleanup();
54
39
  }) : getWritePromise();
55
- const uploadTimer = (0, _uploadTimer.createUploadTimer)(options.uploadTimeout, ()=>{
40
+ const uploadTimer = createUploadTimer(options.uploadTimeout, ()=>{
56
41
  file.removeAllListeners('data');
57
42
  file.resume();
58
43
  const err = new Error(`Upload timeout for ${field}->${filename}, bytes:${getFileSize()}`);
59
44
  return file.destroy(err);
60
45
  });
61
46
  file.on('limit', ()=>{
62
- (0, _utilities.debugLog)(options, `Size limit reached for ${field}->${filename}, bytes:${getFileSize()}`);
47
+ debugLog(options, `Size limit reached for ${field}->${filename}, bytes:${getFileSize()}`);
63
48
  uploadTimer.clear();
64
- if ((0, _utilities.isFunc)(options.limitHandler)) {
49
+ if (isFunc(options.limitHandler)) {
65
50
  options.limitHandler({
66
51
  request,
67
52
  size: getFileSize()
@@ -69,10 +54,10 @@ const processMultipart = async ({ options, request })=>{
69
54
  }
70
55
  // Return error and cleanup files if abortOnLimit set.
71
56
  if (options.abortOnLimit) {
72
- (0, _utilities.debugLog)(options, `Aborting upload because of size limit ${field}->${filename}.`);
57
+ debugLog(options, `Aborting upload because of size limit ${field}->${filename}.`);
73
58
  cleanup();
74
59
  parsingRequest = false;
75
- throw new _errors.APIError(options.responseOnLimit, 413, {
60
+ throw new APIError(options.responseOnLimit, 413, {
76
61
  size: getFileSize()
77
62
  });
78
63
  }
@@ -83,16 +68,16 @@ const processMultipart = async ({ options, request })=>{
83
68
  });
84
69
  file.on('end', ()=>{
85
70
  const size = getFileSize();
86
- (0, _utilities.debugLog)(options, `Upload finished ${field}->${filename}, bytes:${size}`);
71
+ debugLog(options, `Upload finished ${field}->${filename}, bytes:${size}`);
87
72
  uploadTimer.clear();
88
73
  if (!name && size === 0) {
89
74
  if (options.useTempFiles) {
90
75
  cleanup();
91
- (0, _utilities.debugLog)(options, `Removing the empty file ${field}->${filename}`);
76
+ debugLog(options, `Removing the empty file ${field}->${filename}`);
92
77
  }
93
- return (0, _utilities.debugLog)(options, `Don't add file instance if original name and size are empty`);
78
+ return debugLog(options, `Don't add file instance if original name and size are empty`);
94
79
  }
95
- result.files = (0, _utilities.buildFields)(result.files, field, (0, _fileFactory.fileFactory)({
80
+ result.files = buildFields(result.files, field, fileFactory({
96
81
  name: filename,
97
82
  buffer: complete(),
98
83
  encoding,
@@ -109,17 +94,17 @@ const processMultipart = async ({ options, request })=>{
109
94
  });
110
95
  file.on('error', (err)=>{
111
96
  uploadTimer.clear();
112
- (0, _utilities.debugLog)(options, `File Error: ${err.message}`);
97
+ debugLog(options, `File Error: ${err.message}`);
113
98
  cleanup();
114
99
  });
115
- (0, _utilities.debugLog)(options, `New upload started ${field}->${filename}, bytes:${getFileSize()}`);
100
+ debugLog(options, `New upload started ${field}->${filename}, bytes:${getFileSize()}`);
116
101
  uploadTimer.set();
117
102
  });
118
103
  busboy.on('finish', ()=>{
119
- (0, _utilities.debugLog)(options, `Busboy finished parsing request.`);
104
+ debugLog(options, `Busboy finished parsing request.`);
120
105
  if (options.parseNested) {
121
- result.fields = (0, _processNested.processNested)(result.fields);
122
- result.files = (0, _processNested.processNested)(result.files);
106
+ result.fields = processNested(result.fields);
107
+ result.files = processNested(result.files);
123
108
  }
124
109
  if (request[waitFlushProperty]) {
125
110
  Promise.all(request[waitFlushProperty]).then(()=>{
@@ -128,9 +113,9 @@ const processMultipart = async ({ options, request })=>{
128
113
  }
129
114
  });
130
115
  busboy.on('error', (err)=>{
131
- (0, _utilities.debugLog)(options, `Busboy error`);
116
+ debugLog(options, `Busboy error`);
132
117
  parsingRequest = false;
133
- throw new _errors.APIError('Busboy error parsing multipart request', 500);
118
+ throw new APIError('Busboy error parsing multipart request', 500);
134
119
  });
135
120
  const reader = request.body.getReader();
136
121
  while(parsingRequest){
@@ -138,9 +123,11 @@ const processMultipart = async ({ options, request })=>{
138
123
  if (done) {
139
124
  parsingRequest = false;
140
125
  }
141
- busboy.write(value);
126
+ if (value) {
127
+ busboy.write(value);
128
+ }
142
129
  }
143
130
  return result;
144
131
  };
145
132
 
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9uZXh0LWZpbGV1cGxvYWQvcHJvY2Vzc011bHRpcGFydC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQnVzYm95IGZyb20gJ2J1c2JveSdcbmltcG9ydCB7IEFQSUVycm9yIH0gZnJvbSAncGF5bG9hZC9lcnJvcnMnXG5cbmltcG9ydCB0eXBlIHsgTmV4dEZpbGVVcGxvYWRPcHRpb25zLCBOZXh0RmlsZVVwbG9hZFJlc3BvbnNlIH0gZnJvbSAnLidcblxuaW1wb3J0IHsgZmlsZUZhY3RvcnkgfSBmcm9tICcuL2ZpbGVGYWN0b3J5J1xuaW1wb3J0IHsgbWVtSGFuZGxlciwgdGVtcEZpbGVIYW5kbGVyIH0gZnJvbSAnLi9oYW5kbGVycydcbmltcG9ydCB7IHByb2Nlc3NOZXN0ZWQgfSBmcm9tICcuL3Byb2Nlc3NOZXN0ZWQnXG5pbXBvcnQgeyBjcmVhdGVVcGxvYWRUaW1lciB9IGZyb20gJy4vdXBsb2FkVGltZXInXG5pbXBvcnQgeyBidWlsZEZpZWxkcywgZGVidWdMb2csIGlzRnVuYywgcGFyc2VGaWxlTmFtZSB9IGZyb20gJy4vdXRpbGl0aWVzJ1xuXG5jb25zdCB3YWl0Rmx1c2hQcm9wZXJ0eSA9IFN5bWJvbCgnd2FpdCBmbHVzaCBwcm9wZXJ0eSBzeW1ib2wnKVxuXG50eXBlIFByb2Nlc3NNdWx0aXBhcnQgPSAoYXJnczoge1xuICBvcHRpb25zOiBOZXh0RmlsZVVwbG9hZE9wdGlvbnNcbiAgcmVxdWVzdDogUmVxdWVzdFxufSkgPT4gUHJvbWlzZTxOZXh0RmlsZVVwbG9hZFJlc3BvbnNlPlxuZXhwb3J0IGNvbnN0IHByb2Nlc3NNdWx0aXBhcnQ6IFByb2Nlc3NNdWx0aXBhcnQgPSBhc3luYyAoeyBvcHRpb25zLCByZXF1ZXN0IH0pID0+IHtcbiAgbGV0IHBhcnNpbmdSZXF1ZXN0ID0gdHJ1ZVxuICBjb25zdCByZXN1bHQ6IE5leHRGaWxlVXBsb2FkUmVzcG9uc2UgPSB7XG4gICAgZmllbGRzOiB1bmRlZmluZWQsXG4gICAgZmlsZXM6IHVuZGVmaW5lZCxcbiAgfVxuXG4gIGNvbnN0IGhlYWRlcnNPYmplY3QgPSB7fVxuICByZXF1ZXN0LmhlYWRlcnMuZm9yRWFjaCgodmFsdWUsIG5hbWUpID0+IHtcbiAgICBoZWFkZXJzT2JqZWN0W25hbWVdID0gdmFsdWVcbiAgfSlcblxuICBjb25zdCBidXNib3kgPSBCdXNib3koeyAuLi5vcHRpb25zLCBoZWFkZXJzOiBoZWFkZXJzT2JqZWN0IH0pXG5cbiAgLy8gQnVpbGQgbXVsdGlwYXJ0IHJlcS5ib2R5IGZpZWxkc1xuICBidXNib3kub24oJ2ZpZWxkJywgKGZpZWxkLCB2YWwpID0+IHtcbiAgICByZXN1bHQuZmllbGRzID0gYnVpbGRGaWVsZHMocmVzdWx0LmZpZWxkcywgZmllbGQsIHZhbClcbiAgfSlcblxuICAvLyBCdWlsZCByZXEuZmlsZXMgZmllbGRzXG4gIGJ1c2JveS5vbignZmlsZScsIChmaWVsZCwgZmlsZSwgaW5mbykgPT4ge1xuICAgIC8vIFBhcnNlIGZpbGUgbmFtZShjdXR0aW5nIGh1Z2UgbmFtZXMsIGRlY29kaW5nLCBldGMuLikuXG4gICAgY29uc3QgeyBlbmNvZGluZywgZmlsZW5hbWU6IG5hbWUsIG1pbWVUeXBlOiBtaW1lIH0gPSBpbmZvXG4gICAgY29uc3QgZmlsZW5hbWUgPSBwYXJzZUZpbGVOYW1lKG9wdGlvbnMsIG5hbWUpXG5cbiAgICAvLyBEZWZpbmUgbWV0aG9kcyBhbmQgaGFuZGxlcnMgZm9yIHVwbG9hZCBwcm9jZXNzLlxuICAgIGNvbnN0IHsgY2xlYW51cCwgY29tcGxldGUsIGRhdGFIYW5kbGVyLCBnZXRGaWxlUGF0aCwgZ2V0RmlsZVNpemUsIGdldEhhc2gsIGdldFdyaXRlUHJvbWlzZSB9ID1cbiAgICAgIG9wdGlvbnMudXNlVGVtcEZpbGVzXG4gICAgICAgID8gdGVtcEZpbGVIYW5kbGVyKG9wdGlvbnMsIGZpZWxkLCBmaWxlbmFtZSkgLy8gVXBsb2FkIGludG8gdGVtcG9yYXJ5IGZpbGUuXG4gICAgICAgIDogbWVtSGFuZGxlcihvcHRpb25zLCBmaWVsZCwgZmlsZW5hbWUpIC8vIFVwbG9hZCBpbnRvIFJBTS5cblxuICAgIGNvbnN0IHdyaXRlUHJvbWlzZSA9IG9wdGlvbnMudXNlVGVtcEZpbGVzXG4gICAgICA/IGdldFdyaXRlUHJvbWlzZSgpLmNhdGNoKChlcnIpID0+IHtcbiAgICAgICAgICBidXNib3kuZW5kKClcbiAgICAgICAgICBjbGVhbnVwKClcbiAgICAgICAgfSlcbiAgICAgIDogZ2V0V3JpdGVQcm9taXNlKClcblxuICAgIGNvbnN0IHVwbG9hZFRpbWVyID0gY3JlYXRlVXBsb2FkVGltZXIob3B0aW9ucy51cGxvYWRUaW1lb3V0LCAoKSA9PiB7XG4gICAgICBmaWxlLnJlbW92ZUFsbExpc3RlbmVycygnZGF0YScpXG4gICAgICBmaWxlLnJlc3VtZSgpXG4gICAgICBjb25zdCBlcnIgPSBuZXcgRXJyb3IoYFVwbG9hZCB0aW1lb3V0IGZvciAke2ZpZWxkfS0+JHtmaWxlbmFtZX0sIGJ5dGVzOiR7Z2V0RmlsZVNpemUoKX1gKVxuICAgICAgcmV0dXJuIGZpbGUuZGVzdHJveShlcnIpXG4gICAgfSlcblxuICAgIGZpbGUub24oJ2xpbWl0JywgKCkgPT4ge1xuICAgICAgZGVidWdMb2cob3B0aW9ucywgYFNpemUgbGltaXQgcmVhY2hlZCBmb3IgJHtmaWVsZH0tPiR7ZmlsZW5hbWV9LCBieXRlczoke2dldEZpbGVTaXplKCl9YClcbiAgICAgIHVwbG9hZFRpbWVyLmNsZWFyKClcblxuICAgICAgaWYgKGlzRnVuYyhvcHRpb25zLmxpbWl0SGFuZGxlcikpIHtcbiAgICAgICAgb3B0aW9ucy5saW1pdEhhbmRsZXIoeyByZXF1ZXN0LCBzaXplOiBnZXRGaWxlU2l6ZSgpIH0pXG4gICAgICB9XG5cbiAgICAgIC8vIFJldHVybiBlcnJvciBhbmQgY2xlYW51cCBmaWxlcyBpZiBhYm9ydE9uTGltaXQgc2V0LlxuICAgICAgaWYgKG9wdGlvbnMuYWJvcnRPbkxpbWl0KSB7XG4gICAgICAgIGRlYnVnTG9nKG9wdGlvbnMsIGBBYm9ydGluZyB1cGxvYWQgYmVjYXVzZSBvZiBzaXplIGxpbWl0ICR7ZmllbGR9LT4ke2ZpbGVuYW1lfS5gKVxuICAgICAgICBjbGVhbnVwKClcbiAgICAgICAgcGFyc2luZ1JlcXVlc3QgPSBmYWxzZVxuICAgICAgICB0aHJvdyBuZXcgQVBJRXJyb3Iob3B0aW9ucy5yZXNwb25zZU9uTGltaXQsIDQxMywgeyBzaXplOiBnZXRGaWxlU2l6ZSgpIH0pXG4gICAgICB9XG4gICAgfSlcblxuICAgIGZpbGUub24oJ2RhdGEnLCAoZGF0YSkgPT4ge1xuICAgICAgdXBsb2FkVGltZXIuc2V0KClcbiAgICAgIGRhdGFIYW5kbGVyKGRhdGEpXG4gICAgfSlcblxuICAgIGZpbGUub24oJ2VuZCcsICgpID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBnZXRGaWxlU2l6ZSgpXG4gICAgICBkZWJ1Z0xvZyhvcHRpb25zLCBgVXBsb2FkIGZpbmlzaGVkICR7ZmllbGR9LT4ke2ZpbGVuYW1lfSwgYnl0ZXM6JHtzaXplfWApXG4gICAgICB1cGxvYWRUaW1lci5jbGVhcigpXG5cbiAgICAgIGlmICghbmFtZSAmJiBzaXplID09PSAwKSB7XG4gICAgICAgIGlmIChvcHRpb25zLnVzZVRlbXBGaWxlcykge1xuICAgICAgICAgIGNsZWFudXAoKVxuICAgICAgICAgIGRlYnVnTG9nKG9wdGlvbnMsIGBSZW1vdmluZyB0aGUgZW1wdHkgZmlsZSAke2ZpZWxkfS0+JHtmaWxlbmFtZX1gKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZWJ1Z0xvZyhvcHRpb25zLCBgRG9uJ3QgYWRkIGZpbGUgaW5zdGFuY2UgaWYgb3JpZ2luYWwgbmFtZSBhbmQgc2l6ZSBhcmUgZW1wdHlgKVxuICAgICAgfVxuXG4gICAgICByZXN1bHQuZmlsZXMgPSBidWlsZEZpZWxkcyhcbiAgICAgICAgcmVzdWx0LmZpbGVzLFxuICAgICAgICBmaWVsZCxcbiAgICAgICAgZmlsZUZhY3RvcnkoXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogZmlsZW5hbWUsXG4gICAgICAgICAgICBidWZmZXI6IGNvbXBsZXRlKCksXG4gICAgICAgICAgICBlbmNvZGluZyxcbiAgICAgICAgICAgIGhhc2g6IGdldEhhc2goKSxcbiAgICAgICAgICAgIG1pbWV0eXBlOiBtaW1lLFxuICAgICAgICAgICAgc2l6ZSxcbiAgICAgICAgICAgIHRlbXBGaWxlUGF0aDogZ2V0RmlsZVBhdGgoKSxcbiAgICAgICAgICAgIHRydW5jYXRlZDogQm9vbGVhbigndHJ1bmNhdGVkJyBpbiBmaWxlICYmIGZpbGUudHJ1bmNhdGVkKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICksXG4gICAgICApXG5cbiAgICAgIGlmICghcmVxdWVzdFt3YWl0Rmx1c2hQcm9wZXJ0eV0pIHtcbiAgICAgICAgcmVxdWVzdFt3YWl0Rmx1c2hQcm9wZXJ0eV0gPSBbXVxuICAgICAgfVxuICAgICAgcmVxdWVzdFt3YWl0Rmx1c2hQcm9wZXJ0eV0ucHVzaCh3cml0ZVByb21pc2UpXG4gICAgfSlcblxuICAgIGZpbGUub24oJ2Vycm9yJywgKGVycikgPT4ge1xuICAgICAgdXBsb2FkVGltZXIuY2xlYXIoKVxuICAgICAgZGVidWdMb2cob3B0aW9ucywgYEZpbGUgRXJyb3I6ICR7ZXJyLm1lc3NhZ2V9YClcbiAgICAgIGNsZWFudXAoKVxuICAgIH0pXG5cbiAgICBkZWJ1Z0xvZyhvcHRpb25zLCBgTmV3IHVwbG9hZCBzdGFydGVkICR7ZmllbGR9LT4ke2ZpbGVuYW1lfSwgYnl0ZXM6JHtnZXRGaWxlU2l6ZSgpfWApXG4gICAgdXBsb2FkVGltZXIuc2V0KClcbiAgfSlcblxuICBidXNib3kub24oJ2ZpbmlzaCcsICgpID0+IHtcbiAgICBkZWJ1Z0xvZyhvcHRpb25zLCBgQnVzYm95IGZpbmlzaGVkIHBhcnNpbmcgcmVxdWVzdC5gKVxuICAgIGlmIChvcHRpb25zLnBhcnNlTmVzdGVkKSB7XG4gICAgICByZXN1bHQuZmllbGRzID0gcHJvY2Vzc05lc3RlZChyZXN1bHQuZmllbGRzKVxuICAgICAgcmVzdWx0LmZpbGVzID0gcHJvY2Vzc05lc3RlZChyZXN1bHQuZmlsZXMpXG4gICAgfVxuXG4gICAgaWYgKHJlcXVlc3Rbd2FpdEZsdXNoUHJvcGVydHldKSB7XG4gICAgICBQcm9taXNlLmFsbChyZXF1ZXN0W3dhaXRGbHVzaFByb3BlcnR5XSkudGhlbigoKSA9PiB7XG4gICAgICAgIGRlbGV0ZSByZXF1ZXN0W3dhaXRGbHVzaFByb3BlcnR5XVxuICAgICAgfSlcbiAgICB9XG4gIH0pXG5cbiAgYnVzYm95Lm9uKCdlcnJvcicsIChlcnIpID0+IHtcbiAgICBkZWJ1Z0xvZyhvcHRpb25zLCBgQnVzYm95IGVycm9yYClcbiAgICBwYXJzaW5nUmVxdWVzdCA9IGZhbHNlXG4gICAgdGhyb3cgbmV3IEFQSUVycm9yKCdCdXNib3kgZXJyb3IgcGFyc2luZyBtdWx0aXBhcnQgcmVxdWVzdCcsIDUwMClcbiAgfSlcblxuICBjb25zdCByZWFkZXIgPSByZXF1ZXN0LmJvZHkuZ2V0UmVhZGVyKClcblxuICB3aGlsZSAocGFyc2luZ1JlcXVlc3QpIHtcbiAgICBjb25zdCB7IGRvbmUsIHZhbHVlIH0gPSBhd2FpdCByZWFkZXIucmVhZCgpXG5cbiAgICBpZiAoZG9uZSkge1xuICAgICAgcGFyc2luZ1JlcXVlc3QgPSBmYWxzZVxuICAgIH1cblxuICAgIGJ1c2JveS53cml0ZSh2YWx1ZSlcbiAgfVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJwcm9jZXNzTXVsdGlwYXJ0Iiwid2FpdEZsdXNoUHJvcGVydHkiLCJTeW1ib2wiLCJvcHRpb25zIiwicmVxdWVzdCIsInBhcnNpbmdSZXF1ZXN0IiwicmVzdWx0IiwiZmllbGRzIiwidW5kZWZpbmVkIiwiZmlsZXMiLCJoZWFkZXJzT2JqZWN0IiwiaGVhZGVycyIsImZvckVhY2giLCJ2YWx1ZSIsIm5hbWUiLCJidXNib3kiLCJCdXNib3kiLCJvbiIsImZpZWxkIiwidmFsIiwiYnVpbGRGaWVsZHMiLCJmaWxlIiwiaW5mbyIsImVuY29kaW5nIiwiZmlsZW5hbWUiLCJtaW1lVHlwZSIsIm1pbWUiLCJwYXJzZUZpbGVOYW1lIiwiY2xlYW51cCIsImNvbXBsZXRlIiwiZGF0YUhhbmRsZXIiLCJnZXRGaWxlUGF0aCIsImdldEZpbGVTaXplIiwiZ2V0SGFzaCIsImdldFdyaXRlUHJvbWlzZSIsInVzZVRlbXBGaWxlcyIsInRlbXBGaWxlSGFuZGxlciIsIm1lbUhhbmRsZXIiLCJ3cml0ZVByb21pc2UiLCJjYXRjaCIsImVyciIsImVuZCIsInVwbG9hZFRpbWVyIiwiY3JlYXRlVXBsb2FkVGltZXIiLCJ1cGxvYWRUaW1lb3V0IiwicmVtb3ZlQWxsTGlzdGVuZXJzIiwicmVzdW1lIiwiRXJyb3IiLCJkZXN0cm95IiwiZGVidWdMb2ciLCJjbGVhciIsImlzRnVuYyIsImxpbWl0SGFuZGxlciIsInNpemUiLCJhYm9ydE9uTGltaXQiLCJBUElFcnJvciIsInJlc3BvbnNlT25MaW1pdCIsImRhdGEiLCJzZXQiLCJmaWxlRmFjdG9yeSIsImJ1ZmZlciIsImhhc2giLCJtaW1ldHlwZSIsInRlbXBGaWxlUGF0aCIsInRydW5jYXRlZCIsIkJvb2xlYW4iLCJwdXNoIiwibWVzc2FnZSIsInBhcnNlTmVzdGVkIiwicHJvY2Vzc05lc3RlZCIsIlByb21pc2UiLCJhbGwiLCJ0aGVuIiwicmVhZGVyIiwiYm9keSIsImdldFJlYWRlciIsImRvbmUiLCJyZWFkIiwid3JpdGUiXSwibWFwcGluZ3MiOiI7Ozs7K0JBaUJhQTs7O2VBQUFBOzs7K0RBakJNO3dCQUNNOzZCQUlHOzBCQUNnQjsrQkFDZDs2QkFDSTsyQkFDMkI7Ozs7OztBQUU3RCxNQUFNQyxvQkFBb0JDLE9BQU87QUFNMUIsTUFBTUYsbUJBQXFDLE9BQU8sRUFBRUcsT0FBTyxFQUFFQyxPQUFPLEVBQUU7SUFDM0UsSUFBSUMsaUJBQWlCO0lBQ3JCLE1BQU1DLFNBQWlDO1FBQ3JDQyxRQUFRQztRQUNSQyxPQUFPRDtJQUNUO0lBRUEsTUFBTUUsZ0JBQWdCLENBQUM7SUFDdkJOLFFBQVFPLE9BQU8sQ0FBQ0MsT0FBTyxD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
133
+ //# sourceMappingURL=processMultipart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/next-fileupload/processMultipart.ts"],"sourcesContent":["import Busboy from 'busboy'\nimport { APIError } from 'payload/errors'\n\nimport type { NextFileUploadOptions, NextFileUploadResponse } from './index.js'\n\nimport { fileFactory } from './fileFactory.js'\nimport { memHandler, tempFileHandler } from './handlers.js'\nimport { processNested } from './processNested.js'\nimport { createUploadTimer } from './uploadTimer.js'\nimport { buildFields, debugLog, isFunc, parseFileName } from './utilities.js'\n\nconst waitFlushProperty = Symbol('wait flush property symbol')\n\ntype ProcessMultipart = (args: {\n options: NextFileUploadOptions\n request: Request\n}) => Promise<NextFileUploadResponse>\nexport const processMultipart: ProcessMultipart = async ({ options, request }) => {\n let parsingRequest = true\n const result: NextFileUploadResponse = {\n fields: undefined,\n files: undefined,\n }\n\n const headersObject = {}\n request.headers.forEach((value, name) => {\n headersObject[name] = value\n })\n\n const busboy = Busboy({ ...options, headers: headersObject })\n\n // Build multipart req.body fields\n busboy.on('field', (field, val) => {\n result.fields = buildFields(result.fields, field, val)\n })\n\n // Build req.files fields\n busboy.on('file', (field, file, info) => {\n // Parse file name(cutting huge names, decoding, etc..).\n const { encoding, filename: name, mimeType: mime } = info\n const filename = parseFileName(options, name)\n\n // Define methods and handlers for upload process.\n const { cleanup, complete, dataHandler, getFilePath, getFileSize, getHash, getWritePromise } =\n options.useTempFiles\n ? tempFileHandler(options, field, filename) // Upload into temporary file.\n : memHandler(options, field, filename) // Upload into RAM.\n\n const writePromise = options.useTempFiles\n ? getWritePromise().catch((err) => {\n busboy.end()\n cleanup()\n })\n : getWritePromise()\n\n const uploadTimer = createUploadTimer(options.uploadTimeout, () => {\n file.removeAllListeners('data')\n file.resume()\n const err = new Error(`Upload timeout for ${field}->${filename}, bytes:${getFileSize()}`)\n return file.destroy(err)\n })\n\n file.on('limit', () => {\n debugLog(options, `Size limit reached for ${field}->${filename}, bytes:${getFileSize()}`)\n uploadTimer.clear()\n\n if (isFunc(options.limitHandler)) {\n options.limitHandler({ request, size: getFileSize() })\n }\n\n // Return error and cleanup files if abortOnLimit set.\n if (options.abortOnLimit) {\n debugLog(options, `Aborting upload because of size limit ${field}->${filename}.`)\n cleanup()\n parsingRequest = false\n throw new APIError(options.responseOnLimit, 413, { size: getFileSize() })\n }\n })\n\n file.on('data', (data) => {\n uploadTimer.set()\n dataHandler(data)\n })\n\n file.on('end', () => {\n const size = getFileSize()\n debugLog(options, `Upload finished ${field}->${filename}, bytes:${size}`)\n uploadTimer.clear()\n\n if (!name && size === 0) {\n if (options.useTempFiles) {\n cleanup()\n debugLog(options, `Removing the empty file ${field}->${filename}`)\n }\n return debugLog(options, `Don't add file instance if original name and size are empty`)\n }\n\n result.files = buildFields(\n result.files,\n field,\n fileFactory(\n {\n name: filename,\n buffer: complete(),\n encoding,\n hash: getHash(),\n mimetype: mime,\n size,\n tempFilePath: getFilePath(),\n truncated: Boolean('truncated' in file && file.truncated),\n },\n options,\n ),\n )\n\n if (!request[waitFlushProperty]) {\n request[waitFlushProperty] = []\n }\n request[waitFlushProperty].push(writePromise)\n })\n\n file.on('error', (err) => {\n uploadTimer.clear()\n debugLog(options, `File Error: ${err.message}`)\n cleanup()\n })\n\n debugLog(options, `New upload started ${field}->${filename}, bytes:${getFileSize()}`)\n uploadTimer.set()\n })\n\n busboy.on('finish', () => {\n debugLog(options, `Busboy finished parsing request.`)\n if (options.parseNested) {\n result.fields = processNested(result.fields)\n result.files = processNested(result.files)\n }\n\n if (request[waitFlushProperty]) {\n Promise.all(request[waitFlushProperty]).then(() => {\n delete request[waitFlushProperty]\n })\n }\n })\n\n busboy.on('error', (err) => {\n debugLog(options, `Busboy error`)\n parsingRequest = false\n throw new APIError('Busboy error parsing multipart request', 500)\n })\n\n const reader = request.body.getReader()\n\n while (parsingRequest) {\n const { done, value } = await reader.read()\n\n if (done) {\n parsingRequest = false\n }\n\n if (value) {\n busboy.write(value)\n }\n }\n\n return result\n}\n"],"names":["Busboy","APIError","fileFactory","memHandler","tempFileHandler","processNested","createUploadTimer","buildFields","debugLog","isFunc","parseFileName","waitFlushProperty","Symbol","processMultipart","options","request","parsingRequest","result","fields","undefined","files","headersObject","headers","forEach","value","name","busboy","on","field","val","file","info","encoding","filename","mimeType","mime","cleanup","complete","dataHandler","getFilePath","getFileSize","getHash","getWritePromise","useTempFiles","writePromise","catch","err","end","uploadTimer","uploadTimeout","removeAllListeners","resume","Error","destroy","clear","limitHandler","size","abortOnLimit","responseOnLimit","data","set","buffer","hash","mimetype","tempFilePath","truncated","Boolean","push","message","parseNested","Promise","all","then","reader","body","getReader","done","read","write"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,15 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "processNested", {
6
- enumerable: true,
7
- get: function() {
8
- return processNested;
9
- }
10
- });
11
- const _utilities = require("./utilities");
12
- const processNested = function(data) {
1
+ import { isSafeFromPollution } from './utilities.js';
2
+ export const processNested = function(data) {
13
3
  if (!data || data.length < 1) return Object.create(null);
14
4
  const d = Object.create(null), keys = Object.keys(data);
15
5
  for(let i = 0; i < keys.length; i++){
@@ -17,7 +7,7 @@ const processNested = function(data) {
17
7
  for(let index = 0; index < keyParts.length; index++){
18
8
  const k = keyParts[index];
19
9
  // Ensure we don't allow prototype pollution
20
- if (!(0, _utilities.isSafeFromPollution)(current, k)) {
10
+ if (!isSafeFromPollution(current, k)) {
21
11
  continue;
22
12
  }
23
13
  if (index >= keyParts.length - 1) {
@@ -31,4 +21,4 @@ const processNested = function(data) {
31
21
  return d;
32
22
  };
33
23
 
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9uZXh0LWZpbGV1cGxvYWQvcHJvY2Vzc05lc3RlZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1NhZmVGcm9tUG9sbHV0aW9uIH0gZnJvbSAnLi91dGlsaXRpZXMnXG5cbmV4cG9ydCBjb25zdCBwcm9jZXNzTmVzdGVkID0gZnVuY3Rpb24gKGRhdGEpIHtcbiAgaWYgKCFkYXRhIHx8IGRhdGEubGVuZ3RoIDwgMSkgcmV0dXJuIE9iamVjdC5jcmVhdGUobnVsbClcblxuICBjb25zdCBkID0gT2JqZWN0LmNyZWF0ZShudWxsKSxcbiAgICBrZXlzID0gT2JqZWN0LmtleXMoZGF0YSlcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICBsZXQga2V5ID0ga2V5c1tpXSxcbiAgICAgIHZhbHVlID0gZGF0YVtrZXldLFxuICAgICAgY3VycmVudCA9IGQsXG4gICAgICBrZXlQYXJ0cyA9IGtleS5yZXBsYWNlKG5ldyBSZWdFeHAoL1xcWy9nKSwgJy4nKS5yZXBsYWNlKG5ldyBSZWdFeHAoL1xcXS9nKSwgJycpLnNwbGl0KCcuJylcblxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBrZXlQYXJ0cy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGNvbnN0IGsgPSBrZXlQYXJ0c1tpbmRleF1cblxuICAgICAgLy8gRW5zdXJlIHdlIGRvbid0IGFsbG93IHByb3RvdHlwZSBwb2xsdXRpb25cbiAgICAgIGlmICghaXNTYWZlRnJvbVBvbGx1dGlvbihjdXJyZW50LCBrKSkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBpZiAoaW5kZXggPj0ga2V5UGFydHMubGVuZ3RoIC0gMSkge1xuICAgICAgICBjdXJyZW50W2tdID0gdmFsdWVcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghY3VycmVudFtrXSkgY3VycmVudFtrXSA9ICFrZXlQYXJ0c1tpbmRleCArIDFdID8gW10gOiBPYmplY3QuY3JlYXRlKG51bGwpXG4gICAgICAgIGN1cnJlbnQgPSBjdXJyZW50W2tdXG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBkXG59XG4iXSwibmFtZXMiOlsicHJvY2Vzc05lc3RlZCIsImRhdGEiLCJsZW5ndGgiLCJPYmplY3QiLCJjcmVhdGUiLCJkIiwia2V5cyIsImkiLCJrZXkiLCJ2YWx1ZSIsImN1cnJlbnQiLCJrZXlQYXJ0cyIsInJlcGxhY2UiLCJSZWdFeHAiLCJzcGxpdCIsImluZGV4IiwiayIsImlzU2FmZUZyb21Qb2xsdXRpb24iXSwibWFwcGluZ3MiOiI7Ozs7K0JBRWFBOzs7ZUFBQUE7OzsyQkFGdUI7QUFFN0IsTUFBTUEsZ0JBQWdCLFNBQVVDLElBQUk7SUFDekMsSUFBSSxDQUFDQSxRQUFRQSxLQUFLQyxNQUFNLEdBQUcsR0FBRyxPQUFPQyxPQUFPQyxNQUFNLENBQUM7SUFFbkQsTUFBTUMsSUFBSUYsT0FBT0MsTUFBTSxDQUFDLE9BQ3RCRSxPQUFPSCxPQUFPRyxJQUFJLENBQUNMO0lBRXJCLElBQUssSUFBSU0sSUFBSSxHQUFHQSxJQUFJRCxLQUFLSixNQUFNLEVBQUVLLElBQUs7UUFDcEMsSUFBSUMsTUFBTUYsSUFBSSxDQUFDQyxFQUFFLEVBQ2ZFLFFBQVFSLElBQUksQ0FBQ08sSUFBSSxFQUNqQkUsVUFBVUwsR0FDVk0sV0FBV0gsSUFBSUksT0FBTyxDQUFDLElBQUlDLE9BQU8sUUFBUSxLQUFLRCxPQUFPLENBQUMsSUFBSUMsT0FBTyxRQUFRLElBQUlDLEtBQUssQ0FBQztRQUV0RixJQUFLLElBQUlDLFFBQVEsR0FBR0EsUUFBUUosU0FBU1QsTUFBTSxFQUFFYSxRQUFTO1lBQ3BELE1BQU1DLElBQUlMLFFBQVEsQ0FBQ0ksTUFBTTtZQUV6Qiw0Q0FBNEM7WUFDNUMsSUFBSSxDQUFDRSxJQUFBQSw4QkFBbUIsRUFBQ1AsU0FBU00sSUFBSTtnQkFDcEM7WUFDRjtZQUVBLElBQUlELFNBQVNKLFNBQVNULE1BQU0sR0FBRyxHQUFHO2dCQUNoQ1EsT0FBTyxDQUFDTSxFQUFFLEdBQUdQO1lBQ2YsT0FBTztnQkFDTCxJQUFJLENBQUNDLE9BQU8sQ0FBQ00sRUFBRSxFQUFFTixPQUFPLENBQUNNLEVBQUUsR0FBRyxDQUFDTCxRQUFRLENBQUNJLFFBQVEsRUFBRSxHQUFHLEVBQUUsR0FBR1osT0FBT0MsTUFBTSxDQUFDO2dCQUN4RU0sVUFBVUEsT0FBTyxDQUFDTSxFQUFFO1lBQ3RCO1FBQ0Y7SUFDRjtJQUNBLE9BQU9YO0FBQ1QifQ==
24
+ //# sourceMappingURL=processNested.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/next-fileupload/processNested.ts"],"sourcesContent":["import { isSafeFromPollution } from './utilities.js'\n\nexport const processNested = function (data) {\n if (!data || data.length < 1) return Object.create(null)\n\n const d = Object.create(null),\n keys = Object.keys(data)\n\n for (let i = 0; i < keys.length; i++) {\n let key = keys[i],\n value = data[key],\n current = d,\n keyParts = key.replace(new RegExp(/\\[/g), '.').replace(new RegExp(/\\]/g), '').split('.')\n\n for (let index = 0; index < keyParts.length; index++) {\n const k = keyParts[index]\n\n // Ensure we don't allow prototype pollution\n if (!isSafeFromPollution(current, k)) {\n continue\n }\n\n if (index >= keyParts.length - 1) {\n current[k] = value\n } else {\n if (!current[k]) current[k] = !keyParts[index + 1] ? [] : Object.create(null)\n current = current[k]\n }\n }\n }\n return d\n}\n"],"names":["isSafeFromPollution","processNested","data","length","Object","create","d","keys","i","key","value","current","keyParts","replace","RegExp","split","index","k"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,mBAAmB,QAAQ,iBAAgB;AAEpD,OAAO,MAAMC,gBAAgB,SAAUC,IAAI;IACzC,IAAI,CAACA,QAAQA,KAAKC,MAAM,GAAG,GAAG,OAAOC,OAAOC,MAAM,CAAC;IAEnD,MAAMC,IAAIF,OAAOC,MAAM,CAAC,OACtBE,OAAOH,OAAOG,IAAI,CAACL;IAErB,IAAK,IAAIM,IAAI,GAAGA,IAAID,KAAKJ,MAAM,EAAEK,IAAK;QACpC,IAAIC,MAAMF,IAAI,CAACC,EAAE,EACfE,QAAQR,IAAI,CAACO,IAAI,EACjBE,UAAUL,GACVM,WAAWH,IAAII,OAAO,CAAC,IAAIC,OAAO,QAAQ,KAAKD,OAAO,CAAC,IAAIC,OAAO,QAAQ,IAAIC,KAAK,CAAC;QAEtF,IAAK,IAAIC,QAAQ,GAAGA,QAAQJ,SAAST,MAAM,EAAEa,QAAS;YACpD,MAAMC,IAAIL,QAAQ,CAACI,MAAM;YAEzB,4CAA4C;YAC5C,IAAI,CAAChB,oBAAoBW,SAASM,IAAI;gBACpC;YACF;YAEA,IAAID,SAASJ,SAAST,MAAM,GAAG,GAAG;gBAChCQ,OAAO,CAACM,EAAE,GAAGP;YACf,OAAO;gBACL,IAAI,CAACC,OAAO,CAACM,EAAE,EAAEN,OAAO,CAACM,EAAE,GAAG,CAACL,QAAQ,CAACI,QAAQ,EAAE,GAAG,EAAE,GAAGZ,OAAOC,MAAM,CAAC;gBACxEM,UAAUA,OAAO,CAACM,EAAE;YACtB;QACF;IACF;IACA,OAAOX;AACT,EAAC"}
@@ -1,14 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "createUploadTimer", {
6
- enumerable: true,
7
- get: function() {
8
- return createUploadTimer;
9
- }
10
- });
11
- const createUploadTimer = (timeout = 0, callback = ()=>{})=>{
1
+ export const createUploadTimer = (timeout = 0, callback = ()=>{})=>{
12
2
  let timer = null;
13
3
  const clear = ()=>{
14
4
  clearTimeout(timer);
@@ -26,4 +16,4 @@ const createUploadTimer = (timeout = 0, callback = ()=>{})=>{
26
16
  };
27
17
  };
28
18
 
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9uZXh0LWZpbGV1cGxvYWQvdXBsb2FkVGltZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsidHlwZSBDcmVhdGVVcGxvYWRUaW1lciA9IChcbiAgdGltZW91dD86IG51bWJlcixcbiAgY2FsbGJhY2s/OiAoKSA9PiB2b2lkLFxuKSA9PiB7XG4gIGNsZWFyOiAoKSA9PiB2b2lkXG4gIHNldDogKCkgPT4gYm9vbGVhblxufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlVXBsb2FkVGltZXI6IENyZWF0ZVVwbG9hZFRpbWVyID0gKHRpbWVvdXQgPSAwLCBjYWxsYmFjayA9ICgpID0+IHt9KSA9PiB7XG4gIGxldCB0aW1lciA9IG51bGxcblxuICBjb25zdCBjbGVhciA9ICgpID0+IHtcbiAgICBjbGVhclRpbWVvdXQodGltZXIpXG4gIH1cblxuICBjb25zdCBzZXQgPSAoKSA9PiB7XG4gICAgLy8gRG8gbm90IHN0YXJ0IGEgdGltZXIgaWYgemVybyB0aW1lb3V0IG9yIGl0IGhhc24ndCBiZWVuIHNldC5cbiAgICBpZiAoIXRpbWVvdXQpIHJldHVybiBmYWxzZVxuICAgIGNsZWFyKClcbiAgICB0aW1lciA9IHNldFRpbWVvdXQoY2FsbGJhY2ssIHRpbWVvdXQpXG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIHJldHVybiB7IGNsZWFyLCBzZXQgfVxufVxuIl0sIm5hbWVzIjpbImNyZWF0ZVVwbG9hZFRpbWVyIiwidGltZW91dCIsImNhbGxiYWNrIiwidGltZXIiLCJjbGVhciIsImNsZWFyVGltZW91dCIsInNldCIsInNldFRpbWVvdXQiXSwibWFwcGluZ3MiOiI7Ozs7K0JBUWFBOzs7ZUFBQUE7OztBQUFOLE1BQU1BLG9CQUF1QyxDQUFDQyxVQUFVLENBQUMsRUFBRUMsV0FBVyxLQUFPLENBQUM7SUFDbkYsSUFBSUMsUUFBUTtJQUVaLE1BQU1DLFFBQVE7UUFDWkMsYUFBYUY7SUFDZjtJQUVBLE1BQU1HLE1BQU07UUFDViw4REFBOEQ7UUFDOUQsSUFBSSxDQUFDTCxTQUFTLE9BQU87UUFDckJHO1FBQ0FELFFBQVFJLFdBQVdMLFVBQVVEO1FBQzdCLE9BQU87SUFDVDtJQUVBLE9BQU87UUFBRUc7UUFBT0U7SUFBSTtBQUN0QiJ9
19
+ //# sourceMappingURL=uploadTimer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/next-fileupload/uploadTimer.ts"],"sourcesContent":["type CreateUploadTimer = (\n timeout?: number,\n callback?: () => void,\n) => {\n clear: () => void\n set: () => boolean\n}\n\nexport const createUploadTimer: CreateUploadTimer = (timeout = 0, callback = () => {}) => {\n let timer = null\n\n const clear = () => {\n clearTimeout(timer)\n }\n\n const set = () => {\n // Do not start a timer if zero timeout or it hasn't been set.\n if (!timeout) return false\n clear()\n timer = setTimeout(callback, timeout)\n return true\n }\n\n return { clear, set }\n}\n"],"names":["createUploadTimer","timeout","callback","timer","clear","clearTimeout","set","setTimeout"],"rangeMappings":";;;;;;;;;;;;;;;;","mappings":"AAQA,OAAO,MAAMA,oBAAuC,CAACC,UAAU,CAAC,EAAEC,WAAW,KAAO,CAAC;IACnF,IAAIC,QAAQ;IAEZ,MAAMC,QAAQ;QACZC,aAAaF;IACf;IAEA,MAAMG,MAAM;QACV,8DAA8D;QAC9D,IAAI,CAACL,SAAS,OAAO;QACrBG;QACAD,QAAQI,WAAWL,UAAUD;QAC7B,OAAO;IACT;IAEA,OAAO;QAAEG;QAAOE;IAAI;AACtB,EAAC"}
@@ -1,4 +1,4 @@
1
- import type { NextFileUploadOptions } from '.';
1
+ import type { NextFileUploadOptions } from './index.js';
2
2
  /**
3
3
  * Logs message to console if options.debug option set to true.
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../src/next-fileupload/utilities.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,GAAG,CAAA;AAW9C;;GAEG;AACH,eAAO,MAAM,QAAQ,YAAa,qBAAqB,OAAO,MAAM,YAKnE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,YAAY,MAAM,WAG7C,CAAA;AAED,KAAK,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAA;AACvC,eAAO,MAAM,MAAM,UAAW,GAAG,sBAEhC,CAAA;AAQD;;;GAGG;AACH,KAAK,eAAe,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,KAAK,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAA;AAClG,eAAO,MAAM,eAAe,EAAE,eAU7B,CAAA;AAOD;;GAEG;AACH,KAAK,mBAAmB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;AAC9D,eAAO,MAAM,mBAAmB,EAAE,mBAQjC,CAAA;AAED;;GAEG;AACH,KAAK,WAAW,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;AACpE,eAAO,MAAM,WAAW,EAAE,WAoBzB,CAAA;AAED;;;GAGG;AACH,KAAK,eAAe,GAAG,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAA;AAC9F,eAAO,MAAM,eAAe,EAAE,eAQ7B,CAAA;AAED;;GAEG;AACH,KAAK,UAAU,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,KAAK,IAAI,CAAA;AAC3E,eAAO,MAAM,UAAU,EAAE,UACM,CAAA;AA4B/B;;;GAGG;AACH,KAAK,QAAQ,GAAG,CACd,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,KAC9C,IAAI,CAAA;AACT,eAAO,MAAM,QAAQ,EAAE,QASnB,CAAA;AAEJ;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,oDAwB5B,CAAA;AA+BD;;GAEG;AACH,KAAK,sBAAsB,GAAG,CAC5B,iBAAiB,EAAE,OAAO,GAAG,MAAM,EACnC,QAAQ,EAAE,MAAM,KACb;IACH,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AACD,eAAO,MAAM,sBAAsB,EAAE,sBAwBpC,CAAA;AAED;;GAEG;AACH,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;AAC9E,eAAO,MAAM,aAAa,EAAE,aAmB3B,CAAA"}
1
+ {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../src/next-fileupload/utilities.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAWvD;;GAEG;AACH,eAAO,MAAM,QAAQ,YAAa,qBAAqB,OAAO,MAAM,YAKnE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,YAAY,MAAM,WAG7C,CAAA;AAED,KAAK,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAA;AACvC,eAAO,MAAM,MAAM,UAAW,GAAG,sBAEhC,CAAA;AAQD;;;GAGG;AACH,KAAK,eAAe,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,KAAK,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAA;AAClG,eAAO,MAAM,eAAe,EAAE,eAU7B,CAAA;AAOD;;GAEG;AACH,KAAK,mBAAmB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;AAC9D,eAAO,MAAM,mBAAmB,EAAE,mBAQjC,CAAA;AAED;;GAEG;AACH,KAAK,WAAW,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;AACpE,eAAO,MAAM,WAAW,EAAE,WAoBzB,CAAA;AAED;;;GAGG;AACH,KAAK,eAAe,GAAG,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAA;AAC9F,eAAO,MAAM,eAAe,EAAE,eAQ7B,CAAA;AAED;;GAEG;AACH,KAAK,UAAU,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,KAAK,IAAI,CAAA;AAC3E,eAAO,MAAM,UAAU,EAAE,UACM,CAAA;AA4B/B;;;GAGG;AACH,KAAK,QAAQ,GAAG,CACd,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,KAC9C,IAAI,CAAA;AACT,eAAO,MAAM,QAAQ,EAAE,QASnB,CAAA;AAEJ;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,oDAwB5B,CAAA;AA+BD;;GAEG;AACH,KAAK,sBAAsB,GAAG,CAC5B,iBAAiB,EAAE,OAAO,GAAG,MAAM,EACnC,QAAQ,EAAE,MAAM,KACb;IACH,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AACD,eAAO,MAAM,sBAAsB,EAAE,sBAwBpC,CAAA;AAED;;GAEG;AACH,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;AAC9E,eAAO,MAAM,aAAa,EAAE,aAmB3B,CAAA"}
@@ -1,59 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
6
- for(var name in all)Object.defineProperty(target, name, {
7
- enumerable: true,
8
- get: all[name]
9
- });
10
- }
11
- _export(exports, {
12
- buildFields: function() {
13
- return buildFields;
14
- },
15
- checkAndMakeDir: function() {
16
- return checkAndMakeDir;
17
- },
18
- debugLog: function() {
19
- return debugLog;
20
- },
21
- deleteFile: function() {
22
- return deleteFile;
23
- },
24
- getTempFilename: function() {
25
- return getTempFilename;
26
- },
27
- isFunc: function() {
28
- return isFunc;
29
- },
30
- isSafeFromPollution: function() {
31
- return isSafeFromPollution;
32
- },
33
- moveFile: function() {
34
- return moveFile;
35
- },
36
- parseFileName: function() {
37
- return parseFileName;
38
- },
39
- parseFileNameExtension: function() {
40
- return parseFileNameExtension;
41
- },
42
- promiseCallback: function() {
43
- return promiseCallback;
44
- },
45
- saveBufferToFile: function() {
46
- return saveBufferToFile;
47
- }
48
- });
49
- const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
50
- const _path = /*#__PURE__*/ _interop_require_default(require("path"));
51
- const _stream = require("stream");
52
- function _interop_require_default(obj) {
53
- return obj && obj.__esModule ? obj : {
54
- default: obj
55
- };
56
- }
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import { Readable } from 'stream';
57
4
  // Parameters for safe file name parsing.
58
5
  const SAFE_FILE_NAME_REGEX = /[^\w-]/g;
59
6
  const MAX_EXTENSION_LENGTH = 3;
@@ -61,22 +8,26 @@ const MAX_EXTENSION_LENGTH = 3;
61
8
  const TEMP_COUNTER_MAX = 65536;
62
9
  const TEMP_PREFIX = 'tmp';
63
10
  let tempCounter = 0;
64
- const debugLog = (options, msg)=>{
11
+ /**
12
+ * Logs message to console if options.debug option set to true.
13
+ */ export const debugLog = (options, msg)=>{
65
14
  const opts = options || {};
66
15
  if (!opts.debug) return false;
67
16
  console.log(`Express-file-upload: ${msg}`) // eslint-disable-line
68
17
  ;
69
18
  return true;
70
19
  };
71
- const getTempFilename = (prefix = TEMP_PREFIX)=>{
20
+ /**
21
+ * Generates unique temporary file name. e.g. tmp-5000-156788789789.
22
+ */ export const getTempFilename = (prefix = TEMP_PREFIX)=>{
72
23
  tempCounter = tempCounter >= TEMP_COUNTER_MAX ? 1 : tempCounter + 1;
73
24
  return `${prefix}-${tempCounter}-${Date.now()}`;
74
25
  };
75
- const isFunc = (value)=>{
26
+ export const isFunc = (value)=>{
76
27
  return typeof value === 'function';
77
28
  };
78
29
  const errorFunc = (resolve, reject)=>isFunc(reject) ? reject : resolve;
79
- const promiseCallback = (resolve, reject)=>{
30
+ export const promiseCallback = (resolve, reject)=>{
80
31
  let hasFired = false;
81
32
  return (err)=>{
82
33
  if (hasFired) {
@@ -90,7 +41,7 @@ const promiseCallback = (resolve, reject)=>{
90
41
  // Used by isSafeFromPollution
91
42
  const OBJECT_PROTOTYPE_KEYS = Object.getOwnPropertyNames(Object.prototype);
92
43
  const ARRAY_PROTOTYPE_KEYS = Object.getOwnPropertyNames(Array.prototype);
93
- const isSafeFromPollution = (base, key)=>{
44
+ export const isSafeFromPollution = (base, key)=>{
94
45
  // We perform an instanceof check instead of Array.isArray as the former is more
95
46
  // permissive for cases in which the object as an Array prototype but was not constructed
96
47
  // via an Array constructor or literal.
@@ -98,7 +49,7 @@ const isSafeFromPollution = (base, key)=>{
98
49
  const TOUCHES_OBJECT_PROTOTYPE = OBJECT_PROTOTYPE_KEYS.includes(key);
99
50
  return !TOUCHES_ARRAY_PROTOTYPE && !TOUCHES_OBJECT_PROTOTYPE;
100
51
  };
101
- const buildFields = (instance, field, value)=>{
52
+ export const buildFields = (instance, field, value)=>{
102
53
  // Do nothing if value is not set.
103
54
  if (value === null || value === undefined) return instance;
104
55
  instance = instance || Object.create(null);
@@ -121,18 +72,18 @@ const buildFields = (instance, field, value)=>{
121
72
  }
122
73
  return instance;
123
74
  };
124
- const checkAndMakeDir = (fileUploadOptions, filePath)=>{
75
+ export const checkAndMakeDir = (fileUploadOptions, filePath)=>{
125
76
  if (!fileUploadOptions.createParentPath) return false;
126
77
  // Check whether folder for the file exists.
127
- const parentPath = _path.default.dirname(filePath);
78
+ const parentPath = path.dirname(filePath);
128
79
  // Create folder if it doesn't exist.
129
- if (!_fs.default.existsSync(parentPath)) _fs.default.mkdirSync(parentPath, {
80
+ if (!fs.existsSync(parentPath)) fs.mkdirSync(parentPath, {
130
81
  recursive: true
131
82
  });
132
83
  // Checks folder again and return a results.
133
- return _fs.default.existsSync(parentPath);
84
+ return fs.existsSync(parentPath);
134
85
  };
135
- const deleteFile = (filePath, callback)=>_fs.default.unlink(filePath, callback);
86
+ export const deleteFile = (filePath, callback)=>fs.unlink(filePath, callback);
136
87
  const copyFile = (src, dst, callback)=>{
137
88
  // cbCalled flag and runCb helps to run cb only once.
138
89
  let cbCalled = false;
@@ -142,10 +93,10 @@ const copyFile = (src, dst, callback)=>{
142
93
  callback(err);
143
94
  };
144
95
  // Create read stream
145
- const readable = _fs.default.createReadStream(src);
96
+ const readable = fs.createReadStream(src);
146
97
  readable.on('error', runCb);
147
98
  // Create write stream
148
- const writable = _fs.default.createWriteStream(dst);
99
+ const writable = fs.createWriteStream(dst);
149
100
  writable.on('error', (err)=>{
150
101
  readable.destroy();
151
102
  runCb(err);
@@ -154,7 +105,7 @@ const copyFile = (src, dst, callback)=>{
154
105
  // Copy file via piping streams.
155
106
  readable.pipe(writable);
156
107
  };
157
- const moveFile = (src, dst, callback)=>_fs.default.rename(src, dst, (err)=>{
108
+ export const moveFile = (src, dst, callback)=>fs.rename(src, dst, (err)=>{
158
109
  if (err) {
159
110
  // Try to copy file if rename didn't work.
160
111
  copyFile(src, dst, (cpErr)=>cpErr ? callback(cpErr) : deleteFile(src, callback));
@@ -163,19 +114,23 @@ const moveFile = (src, dst, callback)=>_fs.default.rename(src, dst, (err)=>{
163
114
  // File was renamed successfully: Add true to the callback to indicate that.
164
115
  callback(null, true);
165
116
  });
166
- const saveBufferToFile = (buffer, filePath, callback)=>{
117
+ /**
118
+ * Save buffer data to a file.
119
+ * @param {Buffer} buffer - buffer to save to a file.
120
+ * @param {string} filePath - path to a file.
121
+ */ export const saveBufferToFile = (buffer, filePath, callback)=>{
167
122
  if (!Buffer.isBuffer(buffer)) {
168
123
  return callback(new Error('buffer variable should be type of Buffer!'));
169
124
  }
170
125
  // Setup readable stream from buffer.
171
126
  let streamData = buffer;
172
- const readStream = new _stream.Readable();
127
+ const readStream = new Readable();
173
128
  readStream._read = ()=>{
174
129
  readStream.push(streamData);
175
130
  streamData = null;
176
131
  };
177
132
  // Setup file system writable stream.
178
- const fstream = _fs.default.createWriteStream(filePath);
133
+ const fstream = fs.createWriteStream(filePath);
179
134
  // console.log("Calling saveBuffer");
180
135
  fstream.on('error', (err)=>{
181
136
  // console.log("err cb")
@@ -212,7 +167,7 @@ const saveBufferToFile = (buffer, filePath, callback)=>{
212
167
  }).join('');
213
168
  }
214
169
  };
215
- const parseFileNameExtension = (preserveExtension, fileName)=>{
170
+ export const parseFileNameExtension = (preserveExtension, fileName)=>{
216
171
  const defaultResult = {
217
172
  name: fileName,
218
173
  extension: ''
@@ -232,7 +187,7 @@ const parseFileNameExtension = (preserveExtension, fileName)=>{
232
187
  extension: maxExtLength ? extension : ''
233
188
  };
234
189
  };
235
- const parseFileName = (opts, fileName)=>{
190
+ export const parseFileName = (opts, fileName)=>{
236
191
  // Check fileName argument
237
192
  if (!fileName || typeof fileName !== 'string') return getTempFilename();
238
193
  // Cut off file name if it's length more then 255.
@@ -249,4 +204,4 @@ const parseFileName = (opts, fileName)=>{
249
204
  return name.replace(nameRegex, '').concat(extension);
250
205
  };
251
206
 
252
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9uZXh0LWZpbGV1cGxvYWQvdXRpbGl0aWVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBmcyBmcm9tICdmcydcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnXG5pbXBvcnQgeyBSZWFkYWJsZSB9IGZyb20gJ3N0cmVhbSdcblxuaW1wb3J0IHR5cGUgeyBOZXh0RmlsZVVwbG9hZE9wdGlvbnMgfSBmcm9tICcuJ1xuXG4vLyBQYXJhbWV0ZXJzIGZvciBzYWZlIGZpbGUgbmFtZSBwYXJzaW5nLlxuY29uc3QgU0FGRV9GSUxFX05BTUVfUkVHRVggPSAvW15cXHctXS9nXG5jb25zdCBNQVhfRVhURU5TSU9OX0xFTkdUSCA9IDNcblxuLy8gUGFyYW1ldGVycyB0byBnZW5lcmF0ZSB1bmlxdWUgdGVtcG9yYXJ5IGZpbGUgbmFtZXM6XG5jb25zdCBURU1QX0NPVU5URVJfTUFYID0gNjU1MzZcbmNvbnN0IFRFTVBfUFJFRklYID0gJ3RtcCdcbmxldCB0ZW1wQ291bnRlciA9IDBcblxuLyoqXG4gKiBMb2dzIG1lc3NhZ2UgdG8gY29uc29sZSBpZiBvcHRpb25zLmRlYnVnIG9wdGlvbiBzZXQgdG8gdHJ1ZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGRlYnVnTG9nID0gKG9wdGlvbnM6IE5leHRGaWxlVXBsb2FkT3B0aW9ucywgbXNnOiBzdHJpbmcpID0+IHtcbiAgY29uc3Qgb3B0cyA9IG9wdGlvbnMgfHwge31cbiAgaWYgKCFvcHRzLmRlYnVnKSByZXR1cm4gZmFsc2VcbiAgY29uc29sZS5sb2coYEV4cHJlc3MtZmlsZS11cGxvYWQ6ICR7bXNnfWApIC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbiAgcmV0dXJuIHRydWVcbn1cblxuLyoqXG4gKiBHZW5lcmF0ZXMgdW5pcXVlIHRlbXBvcmFyeSBmaWxlIG5hbWUuIGUuZy4gdG1wLTUwMDAtMTU2Nzg4Nzg5Nzg5LlxuICovXG5leHBvcnQgY29uc3QgZ2V0VGVtcEZpbGVuYW1lID0gKHByZWZpeDogc3RyaW5nID0gVEVNUF9QUkVGSVgpID0+IHtcbiAgdGVtcENvdW50ZXIgPSB0ZW1wQ291bnRlciA+PSBURU1QX0NPVU5URVJfTUFYID8gMSA6IHRlbXBDb3VudGVyICsgMVxuICByZXR1cm4gYCR7cHJlZml4fS0ke3RlbXBDb3VudGVyfS0ke0RhdGUubm93KCl9YFxufVxuXG50eXBlIEZ1bmNUeXBlID0gKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnlcbmV4cG9ydCBjb25zdCBpc0Z1bmMgPSAodmFsdWU6IGFueSk6IHZhbHVlIGlzIEZ1bmNUeXBlID0+IHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJ1xufVxuXG4vKipcbiAqIFNldCBlcnJvckZ1bmMgdG8gdGhlIHNhbWUgdmFsdWUgYXMgc3VjY2Vzc0Z1bmMgZm9yIGNhbGxiYWNrIG1vZGUuXG4gKi9cbnR5cGUgRXJyb3JGdW5jID0gKHJlc29sdmU6ICgpID0+IHZvaWQsIHJlamVjdDogKGVycjogRXJyb3IpID0+IHZvaWQpID0+IChlcnI6IEVycm9yKSA9PiB2b2lkXG5jb25zdCBlcnJvckZ1bmM6IEVycm9yRnVuYyA9IChyZXNvbHZlLCByZWplY3QpID0+IChpc0Z1bmMocmVqZWN0KSA/IHJlamVjdCA6IHJlc29sdmUpXG5cbi8qKlxuICogUmV0dXJuIGEgY2FsbGJhY2sgZnVuY3Rpb24gZm9yIHByb21pc2UgcmVzb2xlL3JlamVjdCBhcmdzLlxuICogRW5zdXJlcyB0aGF0IGNhbGxiYWNrIGlzIGNhbGxlZCBvbmx5IG9uY2UuXG4gKi9cbnR5cGUgUHJvbWlzZUNhbGxiYWNrID0gKHJlc29sdmU6ICgpID0+IHZvaWQsIHJlamVjdDogKGVycjogRXJyb3IpID0+IHZvaWQpID0+IChlcnI6IEVycm9yKSA9PiB2b2lkXG5leHBvcnQgY29uc3QgcHJvbWlzZUNhbGxiYWNrOiBQcm9taXNlQ2FsbGJhY2sgPSAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gIGxldCBoYXNGaXJlZCA9IGZhbHNlXG4gIHJldHVybiAoZXJyOiBFcnJvcikgPT4ge1xuICAgIGlmIChoYXNGaXJlZCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaGFzRmlyZWQgPSB0cnVlXG4gICAgcmV0dXJuIGVyciA/IGVycm9yRnVuYyhyZXNvbHZlLCByZWplY3QpKGVycikgOiByZXNvbHZlKClcbiAgfVxufVxuXG4vLyBUaGUgZGVmYXVsdCBwcm90b3R5cGVzIGZvciBib3RoIG9iamVjdHMgYW5kIGFycmF5cy5cbi8vIFVzZWQgYnkgaXNTYWZlRnJvbVBvbGx1dGlvblxuY29uc3QgT0JKRUNUX1BST1RPVFlQRV9LRVlTID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoT2JqZWN0LnByb3RvdHlwZSlcbmNvbnN0IEFSUkFZX1BST1RPVFlQRV9LRVlTID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoQXJyYXkucHJvdG90eXBlKVxuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciBhIGtleSBpbnNlcnRpb24gaW50byBhbiBvYmplY3QgY291bGQgcmVzdWx0IGluIGEgcHJvdG90eXBlIHBvbGx1dGlvblxuICovXG50eXBlIElzU2FmZUZyb21Qb2xsdXRpb24gPSAoYmFzZTogYW55LCBrZXk6IHN0cmluZykgPT4gYm9vbGVhblxuZXhwb3J0IGNvbnN0IGlzU2FmZUZyb21Qb2xsdXRpb246IElzU2FmZUZyb21Qb2xsdXRpb24gPSAoYmFzZSwga2V5KSA9PiB7XG4gIC8vIFdlIHBlcmZvcm0gYW4gaW5zdGFuY2VvZiBjaGVjayBpbnN0ZWFkIG9mIEFycmF5LmlzQXJyYXkgYXMgdGhlIGZvcm1lciBpcyBtb3JlXG4gIC8vIHBlcm1pc3NpdmUgZm9yIGNhc2VzIGluIHdoaWNoIHRoZSBvYmplY3QgYXMgYW4gQXJyYXkgcHJvdG90eXBlIGJ1dCB3YXMgbm90IGNvbnN0cnVjdGVkXG4gIC8vIHZpYSBhbiBBcnJheSBjb25zdHJ1Y3RvciBvciBsaXRlcmFsLlxuICBjb25zdCBUT1VDSEVTX0FSUkFZX1BST1RPVFlQRSA9IGJhc2UgaW5zdGFuY2VvZiBBcnJheSAmJiBBUlJBWV9QUk9UT1RZUEVfS0VZUy5pbmNsdWRlcyhrZXkpXG4gIGNvbnN0IFRPVUNIRVNfT0JKRUNUX1BST1RPVFlQRSA9IE9CSkVDVF9QUk9UT1RZUEVfS0VZUy5pbmNsdWRlcyhrZXkpXG5cbiAgcmV0dXJuICFUT1VDSEVTX0FSUkFZX1BST1RPVFlQRSAmJiAhVE9VQ0hFU19PQkpFQ1RfUFJPVE9UWVBFXG59XG5cbi8qKlxuICogQnVpbGQgcmVxdWVzdCBmaWVsZC9maWxlIG9iamVjdHMgdG8gcmV0dXJuXG4gKi9cbnR5cGUgQnVpbGRGaWVsZHMgPSAoaW5zdGFuY2U6IGFueSwgZmllbGQ6IHN0cmluZywgdmFsdWU6IGFueSkgPT4gYW55XG5leHBvcnQgY29uc3QgYnVpbGRGaWVsZHM6IEJ1aWxkRmllbGRzID0gKGluc3RhbmNlLCBmaWVsZCwgdmFsdWUpID0+IHtcbiAgLy8gRG8gbm90aGluZyBpZiB2YWx1ZSBpcyBub3Qgc2V0LlxuICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGluc3RhbmNlXG4gIGluc3RhbmNlID0gaW5zdGFuY2UgfHwgT2JqZWN0LmNyZWF0ZShudWxsKVxuXG4gIGlmICghaXNTYWZlRnJvbVBvbGx1dGlvbihpbnN0YW5jZSwgZmllbGQpKSB7XG4gICAgcmV0dXJuIGluc3RhbmNlXG4gIH1cbiAgLy8gTm9uLWFycmF5IGZpZWxkc1xuICBpZiAoIWluc3RhbmNlW2ZpZWxkXSkge1xuICAgIGluc3RhbmNlW2ZpZWxkXSA9IHZhbHVlXG4gICAgcmV0dXJuIGluc3RhbmNlXG4gIH1cbiAgLy8gQXJyYXkgZmllbGRzXG4gIGlmIChpbnN0YW5jZVtmaWVsZF0gaW5zdGFuY2VvZiBBcnJheSkge1xuICAgIGluc3RhbmNlW2ZpZWxkXS5wdXNoKHZhbHVlKVxuICB9IGVsc2Uge1xuICAgIGluc3RhbmNlW2ZpZWxkXSA9IFtpbnN0YW5jZVtmaWVsZF0sIHZhbHVlXVxuICB9XG4gIHJldHVybiBpbnN0YW5jZVxufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBmb2xkZXIgaWYgaXQgZG9lcyBub3QgZXhpc3RcbiAqIGZvciBmaWxlIHNwZWNpZmllZCBpbiB0aGUgcGF0aCB2YXJpYWJsZVxuICovXG50eXBlIENoZWNrQW5kTWFrZURpciA9IChmaWxlVXBsb2FkT3B0aW9uczogTmV4dEZpbGVVcGxvYWRPcHRpb25zLCBmaWxlUGF0aDogc3RyaW5nKSA9PiBib29sZWFuXG5leHBvcnQgY29uc3QgY2hlY2tBbmRNYWtlRGlyOiBDaGVja0FuZE1ha2VEaXIgPSAoZmlsZVVwbG9hZE9wdGlvbnMsIGZpbGVQYXRoKSA9PiB7XG4gIGlmICghZmlsZVVwbG9hZE9wdGlvbnMuY3JlYXRlUGFyZW50UGF0aCkgcmV0dXJuIGZhbHNlXG4gIC8vIENoZWNrIHdoZXRoZXIgZm9sZGVyIGZvciB0aGUgZmlsZSBleGlzdHMuXG4gIGNvbnN0IHBhcmVudFBhdGggPSBwYXRoLmRpcm5hbWUoZmlsZVBhdGgpXG4gIC8vIENyZWF0ZSBmb2xkZXIgaWYgaXQgZG9lc24ndCBleGlzdC5cbiAgaWYgKCFmcy5leGlzdHNTeW5jKHBhcmVudFBhdGgpKSBmcy5ta2RpclN5bmMocGFyZW50UGF0aCwgeyByZWN1cnNpdmU6IHRydWUgfSlcbiAgLy8gQ2hlY2tzIGZvbGRlciBhZ2FpbiBhbmQgcmV0dXJuIGEgcmVzdWx0cy5cbiAgcmV0dXJuIGZzLmV4aXN0c1N5bmMocGFyZW50UGF0aClcbn1cblxuLyoqXG4gKiBEZWxldGUgYSBmaWxlLlxuICovXG50eXBlIERlbGV0ZUZpbGUgPSAoZmlsZVBhdGg6IHN0cmluZywgY2FsbGJhY2s6IChhcmdzOiBhbnkpID0+IHZvaWQpID0+IHZvaWRcbmV4cG9ydCBjb25zdCBkZWxldGVGaWxlOiBEZWxldGVGaWxlID0gKGZpbGVQYXRoLCBjYWxsYmFjazogKGFyZ3MpID0+IHZvaWQpID0+XG4gIGZzLnVubGluayhmaWxlUGF0aCwgY2FsbGJhY2spXG5cbi8qKlxuICogQ29weSBmaWxlIHZpYSBzdHJlYW1zXG4gKi9cbnR5cGUgQ29weUZpbGUgPSAoc3JjOiBzdHJpbmcsIGRzdDogc3RyaW5nLCBjYWxsYmFjazogKGVycjogRXJyb3IpID0+IHZvaWQpID0+IHZvaWRcbmNvbnN0IGNvcHlGaWxlOiBDb3B5RmlsZSA9IChzcmMsIGRzdCwgY2FsbGJhY2spID0+IHtcbiAgLy8gY2JDYWxsZWQgZmxhZyBhbmQgcnVuQ2IgaGVscHMgdG8gcnVuIGNiIG9ubHkgb25jZS5cbiAgbGV0IGNiQ2FsbGVkID0gZmFsc2VcbiAgY29uc3QgcnVuQ2IgPSAoZXJyPzogRXJyb3IpID0+IHtcbiAgICBpZiAoY2JDYWxsZWQpIHJldHVyblxuICAgIGNiQ2FsbGVkID0gdHJ1ZVxuICAgIGNhbGxiYWNrKGVycilcbiAgfVxuICAvLyBDcmVhdGUgcmVhZCBzdHJlYW1cbiAgY29uc3QgcmVhZGFibGUgPSBmcy5jcmVhdGVSZWFkU3RyZWFtKHNyYylcbiAgcmVhZGFibGUub24oJ2Vycm9yJywgcnVuQ2IpXG4gIC8vIENyZWF0ZSB3cml0ZSBzdHJlYW1cbiAgY29uc3Qgd3JpdGFibGUgPSBmcy5jcmVhdGVXcml0ZVN0cmVhbShkc3QpXG4gIHdyaXRhYmxlLm9uKCdlcnJvcicsIChlcnI6IEVycm9yKSA9PiB7XG4gICAgcmVhZGFibGUuZGVzdHJveSgpXG4gICAgcnVuQ2IoZXJyKVxuICB9KVxuICB3cml0YWJsZS5vbignY2xvc2UnLCAoKSA9PiBydW5DYigpKVxuICAvLyBDb3B5IGZpbGUgdmlhIHBpcGluZyBzdHJlYW1zLlxuICByZWFkYWJsZS5waXBlKHdyaXRhYmxlKVxufVxuXG4vKipcbiAqIG1vdmVGaWxlOiBtb3ZlcyB0aGUgZmlsZSBmcm9tIHNyYyB0byBkc3QuXG4gKiBGaXJzdGx5IHRyeWluZyB0byByZW5hbWUgdGhlIGZpbGUgaWYgbm8gbHVjayBjb3B5aW5nIGl0IHRvIGRzdCBhbmQgdGhlbiBkZWxldGluZyBzcmMuXG4gKi9cbnR5cGUgTW92ZUZpbGUgPSAoXG4gIHNyYzogc3RyaW5nLFxuICBkc3Q6IHN0cmluZyxcbiAgY2FsbGJhY2s6IChlcnI6IEVycm9yLCByZW5hbWVkPzogYm9vbGVhbikgPT4gdm9pZCxcbikgPT4gdm9pZFxuZXhwb3J0IGNvbnN0IG1vdmVGaWxlOiBNb3ZlRmlsZSA9IChzcmMsIGRzdCwgY2FsbGJhY2spID0+XG4gIGZzLnJlbmFtZShzcmMsIGRzdCwgKGVycikgPT4ge1xuICAgIGlmIChlcnIpIHtcbiAgICAgIC8vIFRyeSB0byBjb3B5IGZpbGUgaWYgcmVuYW1lIGRpZG4ndCB3b3JrLlxuICAgICAgY29weUZpbGUoc3JjLCBkc3QsIChjcEVycikgPT4gKGNwRXJyID8gY2FsbGJhY2soY3BFcnIpIDogZGVsZXRlRmlsZShzcmMsIGNhbGxiYWNrKSkpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgLy8gRmlsZSB3YXMgcmVuYW1lZCBzdWNjZXNzZnVsbHk6IEFkZCB0cnVlIHRvIHRoZSBjYWxsYmFjayB0byBpbmRpY2F0ZSB0aGF0LlxuICAgIGNhbGxiYWNrKG51bGwsIHRydWUpXG4gIH0pXG5cbi8qKlxuICogU2F2ZSBidWZmZXIgZGF0YSB0byBhIGZpbGUuXG4gKiBAcGFyYW0ge0J1ZmZlcn0gYnVmZmVyIC0gYnVmZmVyIHRvIHNhdmUgdG8gYSBmaWxlLlxuICogQHBhcmFtIHtzdHJpbmd9IGZpbGVQYXRoIC0gcGF0aCB0byBhIGZpbGUuXG4gKi9cbmV4cG9ydCBjb25zdCBzYXZlQnVmZmVyVG9GaWxlID0gKGJ1ZmZlciwgZmlsZVBhdGgsIGNhbGxiYWNrKSA9PiB7XG4gIGlmICghQnVmZmVyLmlzQnVmZmVyKGJ1ZmZlcikpIHtcbiAgICByZXR1cm4gY2FsbGJhY2sobmV3IEVycm9yKCdidWZmZXIgdmFyaWFibGUgc2hvdWxkIGJlIHR5cGUgb2YgQnVmZmVyIScpKVxuICB9XG4gIC8vIFNldHVwIHJlYWRhYmxlIHN0cmVhbSBmcm9tIGJ1ZmZlci5cbiAgbGV0IHN0cmVhbURhdGEgPSBidWZmZXJcbiAgY29uc3QgcmVhZFN0cmVhbSA9IG5ldyBSZWFkYWJsZSgpXG4gIHJlYWRTdHJlYW0uX3JlYWQgPSAoKSA9PiB7XG4gICAgcmVhZFN0cmVhbS5wdXNoKHN0cmVhbURhdGEpXG4gICAgc3RyZWFtRGF0YSA9IG51bGxcbiAgfVxuICAvLyBTZXR1cCBmaWxlIHN5c3RlbSB3cml0YWJsZSBzdHJlYW0uXG4gIGNvbnN0IGZzdHJlYW0gPSBmcy5jcmVhdGVXcml0ZVN0cmVhbShmaWxlUGF0aClcbiAgLy8gY29uc29sZS5sb2coXCJDYWxsaW5nIHNhdmVCdWZmZXJcIik7XG4gIGZzdHJlYW0ub24oJ2Vycm9yJywgKGVycikgPT4ge1xuICAgIC8vIGNvbnNvbGUubG9nKFwiZXJyIGNiXCIpXG4gICAgY2FsbGJhY2soZXJyKVxuICB9KVxuICBmc3RyZWFtLm9uKCdjbG9zZScsICgpID0+IHtcbiAgICAvLyBjb25zb2xlLmxvZyhcImNsb3NlIGNiXCIpO1xuICAgIGNhbGxiYWNrKClcbiAgfSlcbiAgLy8gQ29weSBmaWxlIHZpYSBwaXBpbmcgc3RyZWFtcy5cbiAgcmVhZFN0cmVhbS5waXBlKGZzdHJlYW0pXG59XG5cbi8qKlxuICogRGVjb2RlcyB1cmlFbmNvZGVkIGZpbGUgbmFtZXMuXG4gKiBAcGFyYW0ge09iamVjdH0gb3B0cyAtIG1pZGRsZXdhcmUgb3B0aW9ucy5cbiAqIEBwYXJhbSBmaWxlTmFtZSB7U3RyaW5nfSAtIGZpbGUgbmFtZSB0byBkZWNvZGUuXG4gKiBAcmV0dXJucyB7U3RyaW5nfVxuICovXG5jb25zdCB1cmlEZWNvZGVGaWxlTmFtZSA9IChvcHRzLCBmaWxlTmFtZSkgPT4ge1xuICBpZiAoIW9wdHMgfHwgIW9wdHMudXJpRGVjb2RlRmlsZU5hbWVzKSB7XG4gICAgcmV0dXJuIGZpbGVOYW1lXG4gIH1cbiAgLy8gRGVjb2RlIGZpbGUgbmFtZSBmcm9tIFVSSSB3aXRoIGNoZWNraW5nIFVSSSBtYWxmb3JtZWQgZXJyb3JzLlxuICAvLyBTZWUgSXNzdWUgaHR0cHM6Ly9naXRodWIuY29tL3JpY2hhcmRnaXJnZXMvZXhwcmVzcy1maWxldXBsb2FkL2lzc3Vlcy8zNDIuXG4gIHRyeSB7XG4gICAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChmaWxlTmFtZSlcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgY29uc3QgbWF0Y2hlciA9IC8oJVthLWZcXGRdezJ9KS9naVxuICAgIHJldHVybiBmaWxlTmFtZVxuICAgICAgLnNwbGl0KG1hdGNoZXIpXG4gICAgICAubWFwKChzdHIpID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHN0cilcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgcmV0dXJuICcnXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICAuam9pbignJylcbiAgfVxufVxuXG4vKipcbiAqIFBhcnNlcyBmaWxlbmFtZSBhbmQgZXh0ZW5zaW9uIGFuZCByZXR1cm5zIG9iamVjdCB7bmFtZSwgZXh0ZW5zaW9ufS5cbiAqL1xudHlwZSBQYXJzZUZpbGVOYW1lRXh0ZW5zaW9uID0gKFxuICBwcmVzZXJ2ZUV4dGVuc2lvbjogYm9vbGVhbiB8IG51bWJlcixcbiAgZmlsZU5hbWU6IHN0cmluZyxcbikgPT4ge1xuICBleHRlbnNpb246IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbn1cbmV4cG9ydCBjb25zdCBwYXJzZUZpbGVOYW1lRXh0ZW5zaW9uOiBQYXJzZUZpbGVOYW1lRXh0ZW5zaW9uID0gKHByZXNlcnZlRXh0ZW5zaW9uLCBmaWxlTmFtZSkgPT4ge1xuICBjb25zdCBkZWZhdWx0UmVzdWx0ID0ge1xuICAgIG5hbWU6IGZpbGVOYW1lLFxuICAgIGV4dGVuc2lvbjogJycsXG4gIH1cbiAgaWYgKCFwcmVzZXJ2ZUV4dGVuc2lvbikgcmV0dXJuIGRlZmF1bHRSZXN1bHRcblxuICAvLyBEZWZpbmUgbWF4aW11bSBleHRlbnNpb24gbGVuZ3RoXG4gIGNvbnN0IG1heEV4dExlbmd0aCA9XG4gICAgdHlwZW9mIHByZXNlcnZlRXh0ZW5zaW9uID09PSAnYm9vbGVhbicgPyBNQVhfRVhURU5TSU9OX0xFTkdUSCA6IHByZXNlcnZlRXh0ZW5zaW9uXG5cbiAgY29uc3QgbmFtZVBhcnRzID0gZmlsZU5hbWUuc3BsaXQoJy4nKVxuICBpZiAobmFtZVBhcnRzLmxlbmd0aCA8IDIpIHJldHVybiBkZWZhdWx0UmVzdWx0XG5cbiAgbGV0IGV4dGVuc2lvbiA9IG5hbWVQYXJ0cy5wb3AoKVxuICBpZiAoZXh0ZW5zaW9uLmxlbmd0aCA+IG1heEV4dExlbmd0aCAmJiBtYXhFeHRMZW5ndGggPiAwKSB7XG4gICAgbmFtZVBhcnRzW25hbWVQYXJ0cy5sZW5ndGggLSAxXSArPSAnLicgKyBleHRlbnNpb24uc3Vic3RyKDAsIGV4dGVuc2lvbi5sZW5ndGggLSBtYXhFeHRMZW5ndGgpXG4gICAgZXh0ZW5zaW9uID0gZXh0ZW5zaW9uLnN1YnN0cigtbWF4RXh0TGVuZ3RoKVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBuYW1lUGFydHMuam9pbignLicpLFxuICAgIGV4dGVuc2lvbjogbWF4RXh0TGVuZ3RoID8gZXh0ZW5zaW9uIDogJycsXG4gIH1cbn1cblxuLyoqXG4gKiBQYXJzZSBmaWxlIG5hbWUgYW5kIGV4dGVuc2lvbi5cbiAqL1xudHlwZSBQYXJzZUZpbGVOYW1lID0gKG9wdHM6IE5leHRGaWxlVXBsb2FkT3B0aW9ucywgZmlsZU5hbWU6IHN0cmluZykgPT4gc3RyaW5nXG5leHBvcnQgY29uc3QgcGFyc2VGaWxlTmFtZTogUGFyc2VGaWxlTmFtZSA9IChvcHRzLCBmaWxlTmFtZSkgPT4ge1xuICAvLyBDaGVjayBmaWxlTmFtZSBhcmd1bWVudFxuICBpZiAoIWZpbGVOYW1lIHx8IHR5cGVvZiBmaWxlTmFtZSAhPT0gJ3N0cmluZycpIHJldHVybiBnZXRUZW1wRmlsZW5hbWUoKVxuICAvLyBDdXQgb2ZmIGZpbGUgbmFtZSBpZiBpdCdzIGxlbmd0aCBtb3JlIHRoZW4gMjU1LlxuICBsZXQgcGFyc2VkTmFtZSA9IGZpbGVOYW1lLmxlbmd0aCA8PSAyNTUgPyBmaWxlTmFtZSA6IGZpbGVOYW1lLnN1YnN0cigwLCAyNTUpXG4gIC8vIERlY29kZSBmaWxlIG5hbWUgaWYgdXJpRGVjb2RlRmlsZU5hbWVzIG9wdGlvbiBzZXQgdHJ1ZS5cbiAgcGFyc2VkTmFtZSA9IHVyaURlY29kZUZpbGVOYW1lKG9wdHMsIHBhcnNlZE5hbWUpXG4gIC8vIFN0b3AgcGFyc2luZyBmaWxlIG5hbWUgaWYgc2FmZUZpbGVOYW1lcyBvcHRpb25zIGhhc24ndCBiZWVuIHNldC5cbiAgaWYgKCFvcHRzLnNhZmVGaWxlTmFtZXMpIHJldHVybiBwYXJzZWROYW1lXG4gIC8vIFNldCByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHRoZSBmaWxlIG5hbWUuXG4gIGNvbnN0IG5hbWVSZWdleCA9XG4gICAgdHlwZW9mIG9wdHMuc2FmZUZpbGVOYW1lcyA9PT0gJ29iamVjdCcgJiYgb3B0cy5zYWZlRmlsZU5hbWVzIGluc3RhbmNlb2YgUmVnRXhwXG4gICAgICA/IG9wdHMuc2FmZUZpbGVOYW1lc1xuICAgICAgOiBTQUZFX0ZJTEVfTkFNRV9SRUdFWFxuICAvLyBQYXJzZSBmaWxlIG5hbWUgZXh0ZW5zaW9uLlxuICBsZXQgeyBuYW1lLCBleHRlbnNpb24gfSA9IHBhcnNlRmlsZU5hbWVFeHRlbnNpb24ob3B0cy5wcmVzZXJ2ZUV4dGVuc2lvbiwgcGFyc2VkTmFtZSlcbiAgaWYgKGV4dGVuc2lvbi5sZW5ndGgpIGV4dGVuc2lvbiA9ICcuJyArIGV4dGVuc2lvbi5yZXBsYWNlKG5hbWVSZWdleCwgJycpXG5cbiAgcmV0dXJuIG5hbWUucmVwbGFjZShuYW1lUmVnZXgsICcnKS5jb25jYXQoZXh0ZW5zaW9uKVxufVxuIl0sIm5hbWVzIjpbImJ1aWxkRmllbGRzIiwiY2hlY2tBbmRNYWtlRGlyIiwiZGVidWdMb2ciLCJkZWxldGVGaWxlIiwiZ2V0VGVtcEZpbGVuYW1lIiwiaXNGdW5jIiwiaXNTYWZlRnJvbVBvbGx1dGlvbiIsIm1vdmVGaWxlIiwicGFyc2VGaWxlTmFtZSIsInBhcnNlRmlsZU5hbWVFeHRlbnNpb24iLCJwcm9taXNlQ2FsbGJhY2siLCJzYXZlQnVmZmVyVG9GaWxlIiwiU0FGRV9GSUxFX05BTUVfUkVHRVgiLCJNQVhfRVhURU5TSU9OX0xFTkdUSCIsIlRFTVBfQ09VTlRFUl9NQVgiLCJURU1QX1BSRUZJWCIsInRlbXBDb3VudGVyIiwib3B0aW9ucyIsIm1zZyIsIm9wdHMiLCJkZWJ1ZyIsImNvbnNvbGUiLCJsb2ciLCJwcmVmaXgiLCJEYXRlIiwibm93IiwidmFsdWUiLCJlcnJvckZ1bmMiLCJyZXNvbHZlIiwicmVqZWN0IiwiaGFzRmlyZWQiLCJlcnIiLCJPQkpFQ1RfUFJPVE9UWVBFX0tFWVMiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwicHJvdG90eXBlIiwiQVJSQVlfUFJPVE9UWVBFX0tFWVMiLCJBcnJheSIsImJhc2UiLCJrZXkiLCJUT1VDSEVTX0FSUkFZX1BST1RPVFlQRSIsImluY2x1ZGVzIiwiVE9VQ0hFU19PQkpFQ1RfUFJPVE9UWVBFIiwiaW5zdGFuY2UiLCJmaWVsZCIsInVuZGVmaW5lZCIsImNyZWF0ZSIsInB1c2giLCJmaWxlVXBsb2FkT3B0aW9ucyIsImZpbGVQYXRoIiwiY3JlYXRlUGFyZW50UGF0aCIsInBhcmVudFBhdGgiLCJwYXRoIiwiZGlybmFtZSIsImZzIiwiZXhpc3RzU3luYyIsIm1rZGlyU3luYyIsInJlY3Vyc2l2ZSIsImNhbGxiYWNrIiwidW5saW5rIiwiY29weUZpbGUiLCJzcmMiLCJkc3QiLCJjYkNhbGxlZCIsInJ1bkNiIiwicmVhZGFibGUiLCJjcmVhdGVSZWFkU3RyZWFtIiwib24iLCJ3cml0YWJsZSIsImNyZWF0ZVdyaXRlU3RyZWFtIiwiZGVzdHJveSIsInBpcGUiLCJyZW5hbWUiLCJjcEVyciIsImJ1ZmZlciIsIkJ1ZmZlciIsImlzQnVmZmVyIiwiRXJyb3IiLCJzdHJlYW1EYXRhIiwicmVhZFN0cmVhbSIsIlJlYWRhYmxlIiwiX3JlYWQiLCJmc3RyZWFtIiwidXJpRGVjb2RlRmlsZU5hbWUiLCJmaWxlTmFtZSIsInVyaURlY29kZUZpbGVOYW1lcyIsImRlY29kZVVSSUNvbXBvbmVudCIsIm1hdGNoZXIiLCJzcGxpdCIsIm1hcCIsInN0ciIsImpvaW4iLCJwcmVzZXJ2ZUV4dGVuc2lvbiIsImRlZmF1bHRSZXN1bHQiLCJuYW1lIiwiZXh0ZW5zaW9uIiwibWF4RXh0TGVuZ3RoIiwibmFtZVBhcnRzIiwibGVuZ3RoIiwicG9wIiwic3Vic3RyIiwicGFyc2VkTmFtZSIsInNhZmVGaWxlTmFtZXMiLCJuYW1lUmVnZXgiLCJSZWdFeHAiLCJyZXBsYWNlIiwiY29uY2F0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQW9GYUEsV0FBVztlQUFYQTs7SUEyQkFDLGVBQWU7ZUFBZkE7O0lBN0ZBQyxRQUFRO2VBQVJBOztJQTJHQUMsVUFBVTtlQUFWQTs7SUFqR0FDLGVBQWU7ZUFBZkE7O0lBTUFDLE1BQU07ZUFBTkE7O0lBb0NBQyxtQkFBbUI7ZUFBbkJBOztJQTZGQUMsUUFBUTtlQUFSQTs7SUErR0FDLGFBQWE7ZUFBYkE7O0lBOUJBQyxzQkFBc0I7ZUFBdEJBOztJQW5NQUMsZUFBZTtlQUFmQTs7SUFrSUFDLGdCQUFnQjtlQUFoQkE7OzsyREFuTEU7NkRBQ0U7d0JBQ1E7Ozs7OztBQUl6Qix5Q0FBeUM7QUFDekMsTUFBTUMsdUJBQXVCO0FBQzdCLE1BQU1DLHVCQUF1QjtBQUU3QixzREFBc0Q7QUFDdEQsTUFBTUMsbUJBQW1CO0FBQ3pCLE1BQU1DLGNBQWM7QUFDcEIsSUFBSUMsY0FBYztBQUtYLE1BQU1kLFdBQVcsQ0FBQ2UsU0FBZ0NDO0lBQ3ZELE1BQU1DLE9BQU9GLFdBQVcsQ0FBQztJQUN6QixJQUFJLENBQUNFLEtBQUtDLEtBQUssRUFBRSxPQUFPO0lBQ3hCQyxRQUFRQyxHQUFHLENBQUMsQ0FBQyxxQkFBcUIsRUFBRUosSUFBSSxDQUFDLEVBQUUsc0JBQXNCOztJQUNqRSxPQUFPO0FBQ1Q7QUFLTyxNQUFNZCxrQkFBa0IsQ0FBQ21CLFNBQWlCUixXQUFXO0lBQzFEQyxjQUFjQSxlQUFlRixtQkFBbUIsSUFBSUUsY0FBYztJQUNsRSxPQUFPLENBQUMsRUFBRU8sT0FBTyxDQUFDLEVBQUVQLFlBQVksQ0FBQyxFQUFFUSxLQUFLQyxHQUFHLEdBQUcsQ0FBQztBQUNq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
207
+ //# sourceMappingURL=utilities.js.map