payload 4.0.0-internal.5f0cd13 → 4.0.0-internal.688c4d0

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 (378) hide show
  1. package/dist/admin/RichText.d.ts +22 -2
  2. package/dist/admin/RichText.d.ts.map +1 -1
  3. package/dist/admin/RichText.js.map +1 -1
  4. package/dist/admin/adapters/devReload.d.ts +9 -0
  5. package/dist/admin/adapters/devReload.d.ts.map +1 -0
  6. package/dist/admin/adapters/devReload.js +6 -0
  7. package/dist/admin/adapters/devReload.js.map +1 -0
  8. package/dist/admin/adapters/index.d.ts +3 -0
  9. package/dist/admin/adapters/index.d.ts.map +1 -1
  10. package/dist/admin/adapters/index.js.map +1 -1
  11. package/dist/admin/adapters/render.d.ts +16 -0
  12. package/dist/admin/adapters/render.d.ts.map +1 -0
  13. package/dist/admin/adapters/render.js +7 -0
  14. package/dist/admin/adapters/render.js.map +1 -0
  15. package/dist/admin/adapters/views.d.ts +36 -0
  16. package/dist/admin/adapters/views.d.ts.map +1 -0
  17. package/dist/admin/adapters/views.js +7 -0
  18. package/dist/admin/adapters/views.js.map +1 -0
  19. package/dist/admin/fields/Row.d.ts +2 -2
  20. package/dist/admin/fields/Row.d.ts.map +1 -1
  21. package/dist/admin/fields/Row.js.map +1 -1
  22. package/dist/admin/forms/Description.d.ts +2 -2
  23. package/dist/admin/forms/Description.d.ts.map +1 -1
  24. package/dist/admin/forms/Description.js.map +1 -1
  25. package/dist/admin/forms/Field.d.ts +8 -3
  26. package/dist/admin/forms/Field.d.ts.map +1 -1
  27. package/dist/admin/forms/Field.js.map +1 -1
  28. package/dist/admin/forms/Form.d.ts +29 -0
  29. package/dist/admin/forms/Form.d.ts.map +1 -1
  30. package/dist/admin/forms/Form.js.map +1 -1
  31. package/dist/admin/functions/index.d.ts +9 -0
  32. package/dist/admin/functions/index.d.ts.map +1 -1
  33. package/dist/admin/functions/index.js.map +1 -1
  34. package/dist/admin/types.d.ts +2 -2
  35. package/dist/admin/types.d.ts.map +1 -1
  36. package/dist/admin/types.js.map +1 -1
  37. package/dist/admin/views/dashboard.d.ts +7 -0
  38. package/dist/admin/views/dashboard.d.ts.map +1 -1
  39. package/dist/admin/views/dashboard.js.map +1 -1
  40. package/dist/admin/views/document.d.ts +5 -3
  41. package/dist/admin/views/document.d.ts.map +1 -1
  42. package/dist/admin/views/document.js.map +1 -1
  43. package/dist/admin/views/list.d.ts +5 -0
  44. package/dist/admin/views/list.d.ts.map +1 -1
  45. package/dist/admin/views/list.js.map +1 -1
  46. package/dist/auth/baseFields/apiKey.d.ts +10 -2
  47. package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
  48. package/dist/auth/baseFields/apiKey.js +35 -24
  49. package/dist/auth/baseFields/apiKey.js.map +1 -1
  50. package/dist/auth/defaultAccess.d.ts +1 -1
  51. package/dist/auth/defaultAccess.d.ts.map +1 -1
  52. package/dist/auth/defaultAccess.js +1 -1
  53. package/dist/auth/defaultAccess.js.map +1 -1
  54. package/dist/auth/defaultUser.d.ts.map +1 -1
  55. package/dist/auth/defaultUser.js +2 -1
  56. package/dist/auth/defaultUser.js.map +1 -1
  57. package/dist/auth/getAuthFields.js +2 -2
  58. package/dist/auth/getAuthFields.js.map +1 -1
  59. package/dist/bin/build.d.ts +25 -0
  60. package/dist/bin/build.d.ts.map +1 -0
  61. package/dist/bin/build.js +80 -0
  62. package/dist/bin/build.js.map +1 -0
  63. package/dist/bin/build.spec.js +170 -0
  64. package/dist/bin/build.spec.js.map +1 -0
  65. package/dist/bin/generateImportMap/index.d.ts.map +1 -1
  66. package/dist/bin/generateImportMap/index.js +8 -5
  67. package/dist/bin/generateImportMap/index.js.map +1 -1
  68. package/dist/bin/generateImportMap/iterateCollections.d.ts.map +1 -1
  69. package/dist/bin/generateImportMap/iterateCollections.js +1 -0
  70. package/dist/bin/generateImportMap/iterateCollections.js.map +1 -1
  71. package/dist/bin/generateImportMap/iterateConfig.d.ts.map +1 -1
  72. package/dist/bin/generateImportMap/iterateConfig.js +1 -0
  73. package/dist/bin/generateImportMap/iterateConfig.js.map +1 -1
  74. package/dist/bin/generateImportMap/utilities/resolveImportMapFilePath.d.ts +5 -1
  75. package/dist/bin/generateImportMap/utilities/resolveImportMapFilePath.d.ts.map +1 -1
  76. package/dist/bin/generateImportMap/utilities/resolveImportMapFilePath.js +24 -18
  77. package/dist/bin/generateImportMap/utilities/resolveImportMapFilePath.js.map +1 -1
  78. package/dist/bin/generateTypes.d.ts +3 -2
  79. package/dist/bin/generateTypes.d.ts.map +1 -1
  80. package/dist/bin/generateTypes.js +4 -0
  81. package/dist/bin/generateTypes.js.map +1 -1
  82. package/dist/bin/index.d.ts.map +1 -1
  83. package/dist/bin/index.js +9 -0
  84. package/dist/bin/index.js.map +1 -1
  85. package/dist/bin/loadEnv.d.ts +3 -1
  86. package/dist/bin/loadEnv.d.ts.map +1 -1
  87. package/dist/bin/loadEnv.js +40 -10
  88. package/dist/bin/loadEnv.js.map +1 -1
  89. package/dist/collections/config/defaults.js +2 -2
  90. package/dist/collections/config/defaults.js.map +1 -1
  91. package/dist/collections/config/defaults.spec.js +47 -0
  92. package/dist/collections/config/defaults.spec.js.map +1 -0
  93. package/dist/collections/config/sanitize.d.ts.map +1 -1
  94. package/dist/collections/config/sanitize.js +1 -11
  95. package/dist/collections/config/sanitize.js.map +1 -1
  96. package/dist/collections/config/types.d.ts +5 -7
  97. package/dist/collections/config/types.d.ts.map +1 -1
  98. package/dist/collections/config/types.js.map +1 -1
  99. package/dist/collections/endpoints/create.d.ts.map +1 -1
  100. package/dist/collections/endpoints/create.js +0 -2
  101. package/dist/collections/endpoints/create.js.map +1 -1
  102. package/dist/collections/endpoints/updateByID.d.ts.map +1 -1
  103. package/dist/collections/endpoints/updateByID.js +1 -2
  104. package/dist/collections/endpoints/updateByID.js.map +1 -1
  105. package/dist/collections/operations/count.d.ts.map +1 -1
  106. package/dist/collections/operations/count.js +1 -0
  107. package/dist/collections/operations/count.js.map +1 -1
  108. package/dist/collections/operations/create.d.ts +0 -1
  109. package/dist/collections/operations/create.d.ts.map +1 -1
  110. package/dist/collections/operations/create.js +15 -6
  111. package/dist/collections/operations/create.js.map +1 -1
  112. package/dist/collections/operations/delete.d.ts.map +1 -1
  113. package/dist/collections/operations/delete.js +3 -0
  114. package/dist/collections/operations/delete.js.map +1 -1
  115. package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
  116. package/dist/collections/operations/local/duplicate.js.map +1 -1
  117. package/dist/collections/operations/local/find.d.ts.map +1 -1
  118. package/dist/collections/operations/local/find.js.map +1 -1
  119. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  120. package/dist/collections/operations/local/findByID.js.map +1 -1
  121. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  122. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  123. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  124. package/dist/collections/operations/local/findVersions.js.map +1 -1
  125. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  126. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  127. package/dist/collections/operations/local/update.d.ts +4 -8
  128. package/dist/collections/operations/local/update.d.ts.map +1 -1
  129. package/dist/collections/operations/local/update.js +1 -2
  130. package/dist/collections/operations/local/update.js.map +1 -1
  131. package/dist/collections/operations/update.d.ts +0 -1
  132. package/dist/collections/operations/update.d.ts.map +1 -1
  133. package/dist/collections/operations/update.js +1 -2
  134. package/dist/collections/operations/update.js.map +1 -1
  135. package/dist/collections/operations/updateByID.d.ts +0 -1
  136. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  137. package/dist/collections/operations/updateByID.js +1 -5
  138. package/dist/collections/operations/updateByID.js.map +1 -1
  139. package/dist/collections/operations/utilities/update.d.ts +1 -2
  140. package/dist/collections/operations/utilities/update.d.ts.map +1 -1
  141. package/dist/collections/operations/utilities/update.js +64 -65
  142. package/dist/collections/operations/utilities/update.js.map +1 -1
  143. package/dist/config/client.js.map +1 -1
  144. package/dist/config/orderable/index.d.ts.map +1 -1
  145. package/dist/config/orderable/index.js +23 -0
  146. package/dist/config/orderable/index.js.map +1 -1
  147. package/dist/config/types.d.ts +18 -18
  148. package/dist/config/types.d.ts.map +1 -1
  149. package/dist/config/types.js +1 -0
  150. package/dist/config/types.js.map +1 -1
  151. package/dist/database/getLocalizedPaths.d.ts.map +1 -1
  152. package/dist/database/getLocalizedPaths.js +1 -1
  153. package/dist/database/getLocalizedPaths.js.map +1 -1
  154. package/dist/database/migrations/migrationsCollection.d.ts.map +1 -1
  155. package/dist/database/migrations/migrationsCollection.js +2 -1
  156. package/dist/database/migrations/migrationsCollection.js.map +1 -1
  157. package/dist/exports/migrations.d.ts +5 -13
  158. package/dist/exports/migrations.d.ts.map +1 -1
  159. package/dist/exports/migrations.js +5 -13
  160. package/dist/exports/migrations.js.map +1 -1
  161. package/dist/exports/shared.d.ts +20 -0
  162. package/dist/exports/shared.d.ts.map +1 -1
  163. package/dist/exports/shared.js +20 -0
  164. package/dist/exports/shared.js.map +1 -1
  165. package/dist/fields/config/client.d.ts +2 -2
  166. package/dist/fields/config/client.d.ts.map +1 -1
  167. package/dist/fields/config/client.js +11 -12
  168. package/dist/fields/config/client.js.map +1 -1
  169. package/dist/fields/config/sanitize.d.ts.map +1 -1
  170. package/dist/fields/config/sanitize.js +1 -4
  171. package/dist/fields/config/sanitize.js.map +1 -1
  172. package/dist/fields/config/types.d.ts +5 -20
  173. package/dist/fields/config/types.d.ts.map +1 -1
  174. package/dist/fields/config/types.js.map +1 -1
  175. package/dist/fields/hooks/afterChange/promise.js +1 -1
  176. package/dist/fields/hooks/afterChange/promise.js.map +1 -1
  177. package/dist/fields/hooks/afterRead/promise.js +2 -2
  178. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  179. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  180. package/dist/fields/hooks/beforeChange/promise.js +3 -3
  181. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  182. package/dist/fields/hooks/beforeDuplicate/promise.js +2 -2
  183. package/dist/fields/hooks/beforeDuplicate/promise.js.map +1 -1
  184. package/dist/fields/hooks/beforeValidate/promise.js +1 -1
  185. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  186. package/dist/fields/validations.d.ts.map +1 -1
  187. package/dist/fields/validations.js +5 -4
  188. package/dist/fields/validations.js.map +1 -1
  189. package/dist/globals/config/sanitize.d.ts.map +1 -1
  190. package/dist/globals/config/sanitize.js +2 -6
  191. package/dist/globals/config/sanitize.js.map +1 -1
  192. package/dist/globals/config/sanitize.spec.js +43 -0
  193. package/dist/globals/config/sanitize.spec.js.map +1 -0
  194. package/dist/globals/endpoints/update.d.ts.map +1 -1
  195. package/dist/globals/endpoints/update.js +0 -2
  196. package/dist/globals/endpoints/update.js.map +1 -1
  197. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  198. package/dist/globals/operations/local/findOne.js.map +1 -1
  199. package/dist/globals/operations/local/update.d.ts +4 -6
  200. package/dist/globals/operations/local/update.d.ts.map +1 -1
  201. package/dist/globals/operations/local/update.js +1 -2
  202. package/dist/globals/operations/local/update.js.map +1 -1
  203. package/dist/globals/operations/update.d.ts +0 -1
  204. package/dist/globals/operations/update.d.ts.map +1 -1
  205. package/dist/globals/operations/update.js +52 -58
  206. package/dist/globals/operations/update.js.map +1 -1
  207. package/dist/index.bundled.d.ts +300 -147
  208. package/dist/index.d.ts +13 -12
  209. package/dist/index.d.ts.map +1 -1
  210. package/dist/index.js +53 -35
  211. package/dist/index.js.map +1 -1
  212. package/dist/kv/adapters/DatabaseKVAdapter.d.ts.map +1 -1
  213. package/dist/kv/adapters/DatabaseKVAdapter.js +1 -0
  214. package/dist/kv/adapters/DatabaseKVAdapter.js.map +1 -1
  215. package/dist/locked-documents/config.d.ts.map +1 -1
  216. package/dist/locked-documents/config.js +2 -1
  217. package/dist/locked-documents/config.js.map +1 -1
  218. package/dist/preferences/config.d.ts.map +1 -1
  219. package/dist/preferences/config.js +2 -1
  220. package/dist/preferences/config.js.map +1 -1
  221. package/dist/query-presets/config.d.ts.map +1 -1
  222. package/dist/query-presets/config.js +2 -1
  223. package/dist/query-presets/config.js.map +1 -1
  224. package/dist/queues/config/collection.d.ts.map +1 -1
  225. package/dist/queues/config/collection.js +2 -1
  226. package/dist/queues/config/collection.js.map +1 -1
  227. package/dist/queues/config/generateJobsJSONSchemas.js +2 -2
  228. package/dist/queues/config/generateJobsJSONSchemas.js.map +1 -1
  229. package/dist/queues/config/global.d.ts.map +1 -1
  230. package/dist/queues/config/global.js +2 -1
  231. package/dist/queues/config/global.js.map +1 -1
  232. package/dist/uploads/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
  233. package/dist/uploads/fetchAPI-multipart/processMultipart.js +14 -1
  234. package/dist/uploads/fetchAPI-multipart/processMultipart.js.map +1 -1
  235. package/dist/uploads/generateFileData.d.ts +2 -1
  236. package/dist/uploads/generateFileData.d.ts.map +1 -1
  237. package/dist/uploads/generateFileData.js +5 -2
  238. package/dist/uploads/generateFileData.js.map +1 -1
  239. package/dist/uploads/safeFetch.d.ts.map +1 -1
  240. package/dist/uploads/safeFetch.js +11 -5
  241. package/dist/uploads/safeFetch.js.map +1 -1
  242. package/dist/utilities/appendDateTimezoneSelectFields.js +2 -2
  243. package/dist/utilities/appendDateTimezoneSelectFields.js.map +1 -1
  244. package/dist/utilities/configToJSONSchema.d.ts +25 -0
  245. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  246. package/dist/utilities/configToJSONSchema.js +76 -34
  247. package/dist/utilities/configToJSONSchema.js.map +1 -1
  248. package/dist/utilities/configToJSONSchema.spec.js +215 -29
  249. package/dist/utilities/configToJSONSchema.spec.js.map +1 -1
  250. package/dist/utilities/deepCopyObject.d.ts.map +1 -1
  251. package/dist/utilities/deepCopyObject.js +8 -0
  252. package/dist/utilities/deepCopyObject.js.map +1 -1
  253. package/dist/utilities/dependencies/dependencyChecker.js +1 -1
  254. package/dist/utilities/dependencies/dependencyChecker.js.map +1 -1
  255. package/dist/utilities/dependencies/getDependencies.d.ts.map +1 -1
  256. package/dist/utilities/dependencies/getDependencies.js +5 -5
  257. package/dist/utilities/dependencies/getDependencies.js.map +1 -1
  258. package/dist/utilities/dynamicImport.js +1 -1
  259. package/dist/utilities/dynamicImport.js.map +1 -1
  260. package/dist/utilities/filterDataToSelectedLocales.d.ts.map +1 -1
  261. package/dist/utilities/filterDataToSelectedLocales.js +5 -12
  262. package/dist/utilities/filterDataToSelectedLocales.js.map +1 -1
  263. package/dist/utilities/filterDataToSelectedLocales.spec.js +1 -2
  264. package/dist/utilities/filterDataToSelectedLocales.spec.js.map +1 -1
  265. package/dist/utilities/flattenAllFields.d.ts.map +1 -1
  266. package/dist/utilities/flattenAllFields.js +7 -22
  267. package/dist/utilities/flattenAllFields.js.map +1 -1
  268. package/dist/utilities/formatErrors.d.ts.map +1 -1
  269. package/dist/utilities/formatErrors.js +3 -1
  270. package/dist/utilities/formatErrors.js.map +1 -1
  271. package/dist/utilities/getEntityPermissions/populateFieldPermissions.d.ts.map +1 -1
  272. package/dist/utilities/getEntityPermissions/populateFieldPermissions.js +5 -5
  273. package/dist/utilities/getEntityPermissions/populateFieldPermissions.js.map +1 -1
  274. package/dist/utilities/getFieldByPath.d.ts.map +1 -1
  275. package/dist/utilities/getFieldByPath.js +1 -1
  276. package/dist/utilities/getFieldByPath.js.map +1 -1
  277. package/dist/utilities/getRequestLanguage.d.ts +2 -2
  278. package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
  279. package/dist/utilities/getRequestLanguage.js.map +1 -1
  280. package/dist/utilities/getVersionsConfig.js.map +1 -1
  281. package/dist/utilities/handleEndpoints.d.ts.map +1 -1
  282. package/dist/utilities/handleEndpoints.js +7 -3
  283. package/dist/utilities/handleEndpoints.js.map +1 -1
  284. package/dist/utilities/isRSCEnabled.d.ts +12 -0
  285. package/dist/utilities/isRSCEnabled.d.ts.map +1 -0
  286. package/dist/utilities/isRSCEnabled.js +14 -0
  287. package/dist/utilities/isRSCEnabled.js.map +1 -0
  288. package/dist/utilities/mergeLocalizedData.d.ts +14 -4
  289. package/dist/utilities/mergeLocalizedData.d.ts.map +1 -1
  290. package/dist/utilities/mergeLocalizedData.js +54 -46
  291. package/dist/utilities/mergeLocalizedData.js.map +1 -1
  292. package/dist/utilities/mergeLocalizedData.spec.js +23 -23
  293. package/dist/utilities/mergeLocalizedData.spec.js.map +1 -1
  294. package/dist/utilities/parseParams/index.d.ts +2 -5
  295. package/dist/utilities/parseParams/index.d.ts.map +1 -1
  296. package/dist/utilities/parseParams/index.js.map +1 -1
  297. package/dist/utilities/parseParams/index.spec.js +0 -9
  298. package/dist/utilities/parseParams/index.spec.js.map +1 -1
  299. package/dist/utilities/telemetry/conf/envPaths.d.ts.map +1 -1
  300. package/dist/utilities/telemetry/conf/envPaths.js +31 -40
  301. package/dist/utilities/telemetry/conf/envPaths.js.map +1 -1
  302. package/dist/utilities/transformColumnPreferences.js +4 -2
  303. package/dist/utilities/transformColumnPreferences.js.map +1 -1
  304. package/dist/utilities/traverseFields.d.ts.map +1 -1
  305. package/dist/utilities/traverseFields.js +2 -4
  306. package/dist/utilities/traverseFields.js.map +1 -1
  307. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  308. package/dist/utilities/traverseForLocalizedFields.js +3 -0
  309. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  310. package/dist/versions/baseFields.d.ts +1 -2
  311. package/dist/versions/baseFields.d.ts.map +1 -1
  312. package/dist/versions/baseFields.js +0 -13
  313. package/dist/versions/baseFields.js.map +1 -1
  314. package/dist/versions/buildCollectionFields.d.ts.map +1 -1
  315. package/dist/versions/buildCollectionFields.js +0 -2
  316. package/dist/versions/buildCollectionFields.js.map +1 -1
  317. package/dist/versions/buildGlobalFields.d.ts.map +1 -1
  318. package/dist/versions/buildGlobalFields.js +0 -2
  319. package/dist/versions/buildGlobalFields.js.map +1 -1
  320. package/dist/versions/buildSingleLocalePublishData.d.ts +32 -0
  321. package/dist/versions/buildSingleLocalePublishData.d.ts.map +1 -0
  322. package/dist/versions/buildSingleLocalePublishData.js +37 -0
  323. package/dist/versions/buildSingleLocalePublishData.js.map +1 -0
  324. package/dist/versions/saveVersion.d.ts +0 -2
  325. package/dist/versions/saveVersion.d.ts.map +1 -1
  326. package/dist/versions/saveVersion.js +12 -17
  327. package/dist/versions/saveVersion.js.map +1 -1
  328. package/dist/versions/schedule/job.d.ts.map +1 -1
  329. package/dist/versions/schedule/job.js +2 -9
  330. package/dist/versions/schedule/job.js.map +1 -1
  331. package/dist/versions/types.d.ts +2 -15
  332. package/dist/versions/types.d.ts.map +1 -1
  333. package/dist/versions/types.js.map +1 -1
  334. package/package.json +8 -5
  335. package/dist/database/migrations/templates/localizeStatus.d.ts +0 -10
  336. package/dist/database/migrations/templates/localizeStatus.d.ts.map +0 -1
  337. package/dist/database/migrations/templates/localizeStatus.js +0 -54
  338. package/dist/database/migrations/templates/localizeStatus.js.map +0 -1
  339. package/dist/versions/migrations/localizeStatus/index.d.ts +0 -12
  340. package/dist/versions/migrations/localizeStatus/index.d.ts.map +0 -1
  341. package/dist/versions/migrations/localizeStatus/index.js +0 -33
  342. package/dist/versions/migrations/localizeStatus/index.js.map +0 -1
  343. package/dist/versions/migrations/localizeStatus/mongo/down.d.ts +0 -9
  344. package/dist/versions/migrations/localizeStatus/mongo/down.d.ts.map +0 -1
  345. package/dist/versions/migrations/localizeStatus/mongo/down.js +0 -112
  346. package/dist/versions/migrations/localizeStatus/mongo/down.js.map +0 -1
  347. package/dist/versions/migrations/localizeStatus/mongo/index.d.ts +0 -8
  348. package/dist/versions/migrations/localizeStatus/mongo/index.d.ts.map +0 -1
  349. package/dist/versions/migrations/localizeStatus/mongo/index.js +0 -8
  350. package/dist/versions/migrations/localizeStatus/mongo/index.js.map +0 -1
  351. package/dist/versions/migrations/localizeStatus/mongo/up.d.ts +0 -9
  352. package/dist/versions/migrations/localizeStatus/mongo/up.d.ts.map +0 -1
  353. package/dist/versions/migrations/localizeStatus/mongo/up.js +0 -220
  354. package/dist/versions/migrations/localizeStatus/mongo/up.js.map +0 -1
  355. package/dist/versions/migrations/localizeStatus/sql/down.d.ts +0 -11
  356. package/dist/versions/migrations/localizeStatus/sql/down.d.ts.map +0 -1
  357. package/dist/versions/migrations/localizeStatus/sql/down.js +0 -213
  358. package/dist/versions/migrations/localizeStatus/sql/down.js.map +0 -1
  359. package/dist/versions/migrations/localizeStatus/sql/index.d.ts +0 -8
  360. package/dist/versions/migrations/localizeStatus/sql/index.d.ts.map +0 -1
  361. package/dist/versions/migrations/localizeStatus/sql/index.js +0 -8
  362. package/dist/versions/migrations/localizeStatus/sql/index.js.map +0 -1
  363. package/dist/versions/migrations/localizeStatus/sql/migrateMainCollection.d.ts +0 -13
  364. package/dist/versions/migrations/localizeStatus/sql/migrateMainCollection.d.ts.map +0 -1
  365. package/dist/versions/migrations/localizeStatus/sql/migrateMainCollection.js +0 -51
  366. package/dist/versions/migrations/localizeStatus/sql/migrateMainCollection.js.map +0 -1
  367. package/dist/versions/migrations/localizeStatus/sql/migrateMainGlobal.d.ts +0 -13
  368. package/dist/versions/migrations/localizeStatus/sql/migrateMainGlobal.d.ts.map +0 -1
  369. package/dist/versions/migrations/localizeStatus/sql/migrateMainGlobal.js +0 -54
  370. package/dist/versions/migrations/localizeStatus/sql/migrateMainGlobal.js.map +0 -1
  371. package/dist/versions/migrations/localizeStatus/sql/up.d.ts +0 -11
  372. package/dist/versions/migrations/localizeStatus/sql/up.d.ts.map +0 -1
  373. package/dist/versions/migrations/localizeStatus/sql/up.js +0 -277
  374. package/dist/versions/migrations/localizeStatus/sql/up.js.map +0 -1
  375. package/dist/versions/saveSnapshot.d.ts +0 -18
  376. package/dist/versions/saveSnapshot.d.ts.map +0 -1
  377. package/dist/versions/saveSnapshot.js +0 -38
  378. package/dist/versions/saveSnapshot.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/getAuthFields.ts"],"sourcesContent":["import type { Field, TextField } from '../fields/config/types.js'\nimport type { IncomingAuthType } from './types.js'\n\nimport { accountLockFields } from './baseFields/accountLock.js'\nimport { apiKeyFields } from './baseFields/apiKey.js'\nimport { baseAuthFields } from './baseFields/auth.js'\nimport { emailFieldConfig } from './baseFields/email.js'\nimport { sessionsFieldConfig } from './baseFields/sessions.js'\nimport { usernameFieldConfig } from './baseFields/username.js'\nimport { verificationFields } from './baseFields/verification.js'\n\nexport const getBaseAuthFields = (authConfig: IncomingAuthType): Field[] => {\n const authFields: Field[] = []\n\n if (authConfig.useAPIKey) {\n authFields.push(...apiKeyFields)\n }\n\n if (\n !authConfig.disableLocalStrategy ||\n (typeof authConfig.disableLocalStrategy === 'object' &&\n authConfig.disableLocalStrategy.enableFields)\n ) {\n const emailField = { ...emailFieldConfig }\n let usernameField: TextField | undefined\n\n if (authConfig.loginWithUsername) {\n usernameField = { ...usernameFieldConfig }\n if (typeof authConfig.loginWithUsername === 'object') {\n if (authConfig.loginWithUsername.requireEmail === false) {\n emailField.required = false\n }\n if (authConfig.loginWithUsername.requireUsername === false) {\n usernameField.required = false\n }\n if (authConfig.loginWithUsername.allowEmailLogin === false) {\n emailField.unique = false\n }\n }\n }\n\n authFields.push(emailField)\n if (usernameField) {\n authFields.push(usernameField)\n }\n\n authFields.push(...baseAuthFields)\n\n if (authConfig.verify) {\n authFields.push(...verificationFields)\n }\n\n if (authConfig?.maxLoginAttempts && authConfig.maxLoginAttempts > 0) {\n authFields.push(...accountLockFields)\n }\n\n if (authConfig.useSessions) {\n authFields.push(sessionsFieldConfig)\n }\n }\n\n return authFields\n}\n"],"names":["accountLockFields","apiKeyFields","baseAuthFields","emailFieldConfig","sessionsFieldConfig","usernameFieldConfig","verificationFields","getBaseAuthFields","authConfig","authFields","useAPIKey","push","disableLocalStrategy","enableFields","emailField","usernameField","loginWithUsername","requireEmail","required","requireUsername","allowEmailLogin","unique","verify","maxLoginAttempts","useSessions"],"mappings":"AAGA,SAASA,iBAAiB,QAAQ,8BAA6B;AAC/D,SAASC,YAAY,QAAQ,yBAAwB;AACrD,SAASC,cAAc,QAAQ,uBAAsB;AACrD,SAASC,gBAAgB,QAAQ,wBAAuB;AACxD,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,kBAAkB,QAAQ,+BAA8B;AAEjE,OAAO,MAAMC,oBAAoB,CAACC;IAChC,MAAMC,aAAsB,EAAE;IAE9B,IAAID,WAAWE,SAAS,EAAE;QACxBD,WAAWE,IAAI,IAAIV;IACrB;IAEA,IACE,CAACO,WAAWI,oBAAoB,IAC/B,OAAOJ,WAAWI,oBAAoB,KAAK,YAC1CJ,WAAWI,oBAAoB,CAACC,YAAY,EAC9C;QACA,MAAMC,aAAa;YAAE,GAAGX,gBAAgB;QAAC;QACzC,IAAIY;QAEJ,IAAIP,WAAWQ,iBAAiB,EAAE;YAChCD,gBAAgB;gBAAE,GAAGV,mBAAmB;YAAC;YACzC,IAAI,OAAOG,WAAWQ,iBAAiB,KAAK,UAAU;gBACpD,IAAIR,WAAWQ,iBAAiB,CAACC,YAAY,KAAK,OAAO;oBACvDH,WAAWI,QAAQ,GAAG;gBACxB;gBACA,IAAIV,WAAWQ,iBAAiB,CAACG,eAAe,KAAK,OAAO;oBAC1DJ,cAAcG,QAAQ,GAAG;gBAC3B;gBACA,IAAIV,WAAWQ,iBAAiB,CAACI,eAAe,KAAK,OAAO;oBAC1DN,WAAWO,MAAM,GAAG;gBACtB;YACF;QACF;QAEAZ,WAAWE,IAAI,CAACG;QAChB,IAAIC,eAAe;YACjBN,WAAWE,IAAI,CAACI;QAClB;QAEAN,WAAWE,IAAI,IAAIT;QAEnB,IAAIM,WAAWc,MAAM,EAAE;YACrBb,WAAWE,IAAI,IAAIL;QACrB;QAEA,IAAIE,YAAYe,oBAAoBf,WAAWe,gBAAgB,GAAG,GAAG;YACnEd,WAAWE,IAAI,IAAIX;QACrB;QAEA,IAAIQ,WAAWgB,WAAW,EAAE;YAC1Bf,WAAWE,IAAI,CAACP;QAClB;IACF;IAEA,OAAOK;AACT,EAAC"}
1
+ {"version":3,"sources":["../../src/auth/getAuthFields.ts"],"sourcesContent":["import type { Field, TextField } from '../fields/config/types.js'\nimport type { IncomingAuthType } from './types.js'\n\nimport { accountLockFields } from './baseFields/accountLock.js'\nimport { createAPIKeyFields } from './baseFields/apiKey.js'\nimport { baseAuthFields } from './baseFields/auth.js'\nimport { emailFieldConfig } from './baseFields/email.js'\nimport { sessionsFieldConfig } from './baseFields/sessions.js'\nimport { usernameFieldConfig } from './baseFields/username.js'\nimport { verificationFields } from './baseFields/verification.js'\n\nexport const getBaseAuthFields = (authConfig: IncomingAuthType): Field[] => {\n const authFields: Field[] = []\n\n if (authConfig.useAPIKey) {\n authFields.push(...createAPIKeyFields())\n }\n\n if (\n !authConfig.disableLocalStrategy ||\n (typeof authConfig.disableLocalStrategy === 'object' &&\n authConfig.disableLocalStrategy.enableFields)\n ) {\n const emailField = { ...emailFieldConfig }\n let usernameField: TextField | undefined\n\n if (authConfig.loginWithUsername) {\n usernameField = { ...usernameFieldConfig }\n if (typeof authConfig.loginWithUsername === 'object') {\n if (authConfig.loginWithUsername.requireEmail === false) {\n emailField.required = false\n }\n if (authConfig.loginWithUsername.requireUsername === false) {\n usernameField.required = false\n }\n if (authConfig.loginWithUsername.allowEmailLogin === false) {\n emailField.unique = false\n }\n }\n }\n\n authFields.push(emailField)\n if (usernameField) {\n authFields.push(usernameField)\n }\n\n authFields.push(...baseAuthFields)\n\n if (authConfig.verify) {\n authFields.push(...verificationFields)\n }\n\n if (authConfig?.maxLoginAttempts && authConfig.maxLoginAttempts > 0) {\n authFields.push(...accountLockFields)\n }\n\n if (authConfig.useSessions) {\n authFields.push(sessionsFieldConfig)\n }\n }\n\n return authFields\n}\n"],"names":["accountLockFields","createAPIKeyFields","baseAuthFields","emailFieldConfig","sessionsFieldConfig","usernameFieldConfig","verificationFields","getBaseAuthFields","authConfig","authFields","useAPIKey","push","disableLocalStrategy","enableFields","emailField","usernameField","loginWithUsername","requireEmail","required","requireUsername","allowEmailLogin","unique","verify","maxLoginAttempts","useSessions"],"mappings":"AAGA,SAASA,iBAAiB,QAAQ,8BAA6B;AAC/D,SAASC,kBAAkB,QAAQ,yBAAwB;AAC3D,SAASC,cAAc,QAAQ,uBAAsB;AACrD,SAASC,gBAAgB,QAAQ,wBAAuB;AACxD,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,kBAAkB,QAAQ,+BAA8B;AAEjE,OAAO,MAAMC,oBAAoB,CAACC;IAChC,MAAMC,aAAsB,EAAE;IAE9B,IAAID,WAAWE,SAAS,EAAE;QACxBD,WAAWE,IAAI,IAAIV;IACrB;IAEA,IACE,CAACO,WAAWI,oBAAoB,IAC/B,OAAOJ,WAAWI,oBAAoB,KAAK,YAC1CJ,WAAWI,oBAAoB,CAACC,YAAY,EAC9C;QACA,MAAMC,aAAa;YAAE,GAAGX,gBAAgB;QAAC;QACzC,IAAIY;QAEJ,IAAIP,WAAWQ,iBAAiB,EAAE;YAChCD,gBAAgB;gBAAE,GAAGV,mBAAmB;YAAC;YACzC,IAAI,OAAOG,WAAWQ,iBAAiB,KAAK,UAAU;gBACpD,IAAIR,WAAWQ,iBAAiB,CAACC,YAAY,KAAK,OAAO;oBACvDH,WAAWI,QAAQ,GAAG;gBACxB;gBACA,IAAIV,WAAWQ,iBAAiB,CAACG,eAAe,KAAK,OAAO;oBAC1DJ,cAAcG,QAAQ,GAAG;gBAC3B;gBACA,IAAIV,WAAWQ,iBAAiB,CAACI,eAAe,KAAK,OAAO;oBAC1DN,WAAWO,MAAM,GAAG;gBACtB;YACF;QACF;QAEAZ,WAAWE,IAAI,CAACG;QAChB,IAAIC,eAAe;YACjBN,WAAWE,IAAI,CAACI;QAClB;QAEAN,WAAWE,IAAI,IAAIT;QAEnB,IAAIM,WAAWc,MAAM,EAAE;YACrBb,WAAWE,IAAI,IAAIL;QACrB;QAEA,IAAIE,YAAYe,oBAAoBf,WAAWe,gBAAgB,GAAG,GAAG;YACnEd,WAAWE,IAAI,IAAIX;QACrB;QAEA,IAAIQ,WAAWgB,WAAW,EAAE;YAC1Bf,WAAWE,IAAI,CAACP;QAClB;IACF;IAEA,OAAOK;AACT,EAAC"}
@@ -0,0 +1,25 @@
1
+ import type { SanitizedConfig } from '../config/types.js';
2
+ /**
3
+ * `payload build` — generate the import map (and types) so they are on disk
4
+ * before `next build` statically imports them, then run the project's Next.js
5
+ * build, forwarding any extra CLI args verbatim.
6
+ *
7
+ * Owns its own process lifecycle: it exits with `next build`'s exit code, or
8
+ * exits 1 if pre-build generation fails (never builds against a stale map).
9
+ */
10
+ export declare function build({ config }: {
11
+ config: SanitizedConfig;
12
+ }): Promise<void>;
13
+ /**
14
+ * Resolve the project's `next` binary from its own manifest, robust to a future
15
+ * `exports` field and to internal layout changes. Resolving from `cwd` (not
16
+ * PATH) works whether `payload build` runs via an npm script or `npx`.
17
+ */
18
+ export declare function resolveNextBin(cwd?: string): string;
19
+ /**
20
+ * Forward the raw args that follow the `build` subcommand to `next build`,
21
+ * dropping payload-only flags. Uses raw argv (not minimist) so flags like
22
+ * `--turbopack` or `--experimental-build-mode` pass through verbatim.
23
+ */
24
+ export declare function getForwardedArgs(argv?: string[]): string[];
25
+ //# sourceMappingURL=build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/bin/build.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAKzD;;;;;;;GAOG;AACH,wBAAsB,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,eAAe,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgClF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAmBlE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,MAAM,EAA0B,GAAG,MAAM,EAAE,CAIjF"}
@@ -0,0 +1,80 @@
1
+ /* eslint-disable no-console */ import { spawn } from 'node:child_process';
2
+ import { readFileSync } from 'node:fs';
3
+ import { createRequire } from 'node:module';
4
+ import path from 'node:path';
5
+ import { generateImportMap } from './generateImportMap/index.js';
6
+ import { generateTypes } from './generateTypes.js';
7
+ /**
8
+ * `payload build` — generate the import map (and types) so they are on disk
9
+ * before `next build` statically imports them, then run the project's Next.js
10
+ * build, forwarding any extra CLI args verbatim.
11
+ *
12
+ * Owns its own process lifecycle: it exits with `next build`'s exit code, or
13
+ * exits 1 if pre-build generation fails (never builds against a stale map).
14
+ */ export async function build({ config }) {
15
+ const skipTypes = process.argv.includes('--no-types');
16
+ try {
17
+ await generateImportMap(config, {
18
+ log: true
19
+ });
20
+ if (!skipTypes) {
21
+ await generateTypes(config, {
22
+ log: true
23
+ });
24
+ }
25
+ } catch (err) {
26
+ console.error('Pre-build generation failed:');
27
+ console.error(err);
28
+ return process.exit(1);
29
+ }
30
+ const nextBin = resolveNextBin();
31
+ const forwardedArgs = getForwardedArgs();
32
+ const exitCode = await new Promise((resolve)=>{
33
+ const child = spawn(process.execPath, [
34
+ nextBin,
35
+ 'build',
36
+ ...forwardedArgs
37
+ ], {
38
+ stdio: 'inherit'
39
+ });
40
+ child.on('error', (err)=>{
41
+ console.error('Failed to run next build:');
42
+ console.error(err);
43
+ resolve(1);
44
+ });
45
+ child.on('exit', (code)=>{
46
+ resolve(code ?? 0);
47
+ });
48
+ });
49
+ process.exit(exitCode);
50
+ }
51
+ /**
52
+ * Resolve the project's `next` binary from its own manifest, robust to a future
53
+ * `exports` field and to internal layout changes. Resolving from `cwd` (not
54
+ * PATH) works whether `payload build` runs via an npm script or `npx`.
55
+ */ export function resolveNextBin(cwd = process.cwd()) {
56
+ const require = createRequire(path.join(cwd, 'package.json'));
57
+ let nextPkgPath;
58
+ try {
59
+ nextPkgPath = require.resolve('next/package.json');
60
+ } catch {
61
+ throw new Error('Could not resolve "next" from the current project. Is Next.js installed?');
62
+ }
63
+ const nextPkg = JSON.parse(readFileSync(nextPkgPath, 'utf8'));
64
+ const binField = typeof nextPkg.bin === 'string' ? nextPkg.bin : nextPkg.bin?.next;
65
+ if (!binField) {
66
+ throw new Error('Could not determine the "next" binary path from next/package.json.');
67
+ }
68
+ return path.join(path.dirname(nextPkgPath), binField);
69
+ }
70
+ /**
71
+ * Forward the raw args that follow the `build` subcommand to `next build`,
72
+ * dropping payload-only flags. Uses raw argv (not minimist) so flags like
73
+ * `--turbopack` or `--experimental-build-mode` pass through verbatim.
74
+ */ export function getForwardedArgs(argv = process.argv.slice(2)) {
75
+ const buildIndex = argv.indexOf('build');
76
+ const rest = buildIndex === -1 ? argv : argv.slice(buildIndex + 1);
77
+ return rest.filter((arg)=>arg !== '--no-types');
78
+ }
79
+
80
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/bin/build.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport { spawn } from 'node:child_process'\nimport { readFileSync } from 'node:fs'\nimport { createRequire } from 'node:module'\nimport path from 'node:path'\n\nimport type { SanitizedConfig } from '../config/types.js'\n\nimport { generateImportMap } from './generateImportMap/index.js'\nimport { generateTypes } from './generateTypes.js'\n\n/**\n * `payload build` — generate the import map (and types) so they are on disk\n * before `next build` statically imports them, then run the project's Next.js\n * build, forwarding any extra CLI args verbatim.\n *\n * Owns its own process lifecycle: it exits with `next build`'s exit code, or\n * exits 1 if pre-build generation fails (never builds against a stale map).\n */\nexport async function build({ config }: { config: SanitizedConfig }): Promise<void> {\n const skipTypes = process.argv.includes('--no-types')\n\n try {\n await generateImportMap(config, { log: true })\n if (!skipTypes) {\n await generateTypes(config, { log: true })\n }\n } catch (err) {\n console.error('Pre-build generation failed:')\n console.error(err)\n return process.exit(1)\n }\n\n const nextBin = resolveNextBin()\n const forwardedArgs = getForwardedArgs()\n\n const exitCode = await new Promise<number>((resolve) => {\n const child = spawn(process.execPath, [nextBin, 'build', ...forwardedArgs], {\n stdio: 'inherit',\n })\n child.on('error', (err) => {\n console.error('Failed to run next build:')\n console.error(err)\n resolve(1)\n })\n child.on('exit', (code) => {\n resolve(code ?? 0)\n })\n })\n\n process.exit(exitCode)\n}\n\n/**\n * Resolve the project's `next` binary from its own manifest, robust to a future\n * `exports` field and to internal layout changes. Resolving from `cwd` (not\n * PATH) works whether `payload build` runs via an npm script or `npx`.\n */\nexport function resolveNextBin(cwd: string = process.cwd()): string {\n const require = createRequire(path.join(cwd, 'package.json'))\n\n let nextPkgPath: string\n try {\n nextPkgPath = require.resolve('next/package.json')\n } catch {\n throw new Error('Could not resolve \"next\" from the current project. Is Next.js installed?')\n }\n\n const nextPkg = JSON.parse(readFileSync(nextPkgPath, 'utf8')) as {\n bin?: Record<string, string> | string\n }\n const binField = typeof nextPkg.bin === 'string' ? nextPkg.bin : nextPkg.bin?.next\n if (!binField) {\n throw new Error('Could not determine the \"next\" binary path from next/package.json.')\n }\n\n return path.join(path.dirname(nextPkgPath), binField)\n}\n\n/**\n * Forward the raw args that follow the `build` subcommand to `next build`,\n * dropping payload-only flags. Uses raw argv (not minimist) so flags like\n * `--turbopack` or `--experimental-build-mode` pass through verbatim.\n */\nexport function getForwardedArgs(argv: string[] = process.argv.slice(2)): string[] {\n const buildIndex = argv.indexOf('build')\n const rest = buildIndex === -1 ? argv : argv.slice(buildIndex + 1)\n return rest.filter((arg) => arg !== '--no-types')\n}\n"],"names":["spawn","readFileSync","createRequire","path","generateImportMap","generateTypes","build","config","skipTypes","process","argv","includes","log","err","console","error","exit","nextBin","resolveNextBin","forwardedArgs","getForwardedArgs","exitCode","Promise","resolve","child","execPath","stdio","on","code","cwd","require","join","nextPkgPath","Error","nextPkg","JSON","parse","binField","bin","next","dirname","slice","buildIndex","indexOf","rest","filter","arg"],"mappings":"AAAA,6BAA6B,GAC7B,SAASA,KAAK,QAAQ,qBAAoB;AAC1C,SAASC,YAAY,QAAQ,UAAS;AACtC,SAASC,aAAa,QAAQ,cAAa;AAC3C,OAAOC,UAAU,YAAW;AAI5B,SAASC,iBAAiB,QAAQ,+BAA8B;AAChE,SAASC,aAAa,QAAQ,qBAAoB;AAElD;;;;;;;CAOC,GACD,OAAO,eAAeC,MAAM,EAAEC,MAAM,EAA+B;IACjE,MAAMC,YAAYC,QAAQC,IAAI,CAACC,QAAQ,CAAC;IAExC,IAAI;QACF,MAAMP,kBAAkBG,QAAQ;YAAEK,KAAK;QAAK;QAC5C,IAAI,CAACJ,WAAW;YACd,MAAMH,cAAcE,QAAQ;gBAAEK,KAAK;YAAK;QAC1C;IACF,EAAE,OAAOC,KAAK;QACZC,QAAQC,KAAK,CAAC;QACdD,QAAQC,KAAK,CAACF;QACd,OAAOJ,QAAQO,IAAI,CAAC;IACtB;IAEA,MAAMC,UAAUC;IAChB,MAAMC,gBAAgBC;IAEtB,MAAMC,WAAW,MAAM,IAAIC,QAAgB,CAACC;QAC1C,MAAMC,QAAQxB,MAAMS,QAAQgB,QAAQ,EAAE;YAACR;YAAS;eAAYE;SAAc,EAAE;YAC1EO,OAAO;QACT;QACAF,MAAMG,EAAE,CAAC,SAAS,CAACd;YACjBC,QAAQC,KAAK,CAAC;YACdD,QAAQC,KAAK,CAACF;YACdU,QAAQ;QACV;QACAC,MAAMG,EAAE,CAAC,QAAQ,CAACC;YAChBL,QAAQK,QAAQ;QAClB;IACF;IAEAnB,QAAQO,IAAI,CAACK;AACf;AAEA;;;;CAIC,GACD,OAAO,SAASH,eAAeW,MAAcpB,QAAQoB,GAAG,EAAE;IACxD,MAAMC,UAAU5B,cAAcC,KAAK4B,IAAI,CAACF,KAAK;IAE7C,IAAIG;IACJ,IAAI;QACFA,cAAcF,QAAQP,OAAO,CAAC;IAChC,EAAE,OAAM;QACN,MAAM,IAAIU,MAAM;IAClB;IAEA,MAAMC,UAAUC,KAAKC,KAAK,CAACnC,aAAa+B,aAAa;IAGrD,MAAMK,WAAW,OAAOH,QAAQI,GAAG,KAAK,WAAWJ,QAAQI,GAAG,GAAGJ,QAAQI,GAAG,EAAEC;IAC9E,IAAI,CAACF,UAAU;QACb,MAAM,IAAIJ,MAAM;IAClB;IAEA,OAAO9B,KAAK4B,IAAI,CAAC5B,KAAKqC,OAAO,CAACR,cAAcK;AAC9C;AAEA;;;;CAIC,GACD,OAAO,SAASjB,iBAAiBV,OAAiBD,QAAQC,IAAI,CAAC+B,KAAK,CAAC,EAAE;IACrE,MAAMC,aAAahC,KAAKiC,OAAO,CAAC;IAChC,MAAMC,OAAOF,eAAe,CAAC,IAAIhC,OAAOA,KAAK+B,KAAK,CAACC,aAAa;IAChE,OAAOE,KAAKC,MAAM,CAAC,CAACC,MAAQA,QAAQ;AACtC"}
@@ -0,0 +1,170 @@
1
+ import { describe, expect, it, vi, beforeEach, afterEach } from 'vitest';
2
+ // Default fake child auto-fires `exit(0)` synchronously so ordering/generation
3
+ // tests resolve. Specific tests override via `mockReturnValueOnce` to drive the
4
+ // exit/error handlers manually.
5
+ const spawnMock = vi.fn(()=>({
6
+ on (event, cb) {
7
+ if (event === 'exit') {
8
+ cb(0);
9
+ }
10
+ return this;
11
+ }
12
+ }));
13
+ const generateImportMapMock = vi.fn(async ()=>{});
14
+ const generateTypesMock = vi.fn(async ()=>{});
15
+ vi.mock('node:child_process', ()=>({
16
+ spawn: spawnMock
17
+ }));
18
+ vi.mock('./generateImportMap/index.js', ()=>({
19
+ generateImportMap: generateImportMapMock
20
+ }));
21
+ vi.mock('./generateTypes.js', ()=>({
22
+ generateTypes: generateTypesMock
23
+ }));
24
+ // Imported after mocks are registered
25
+ const { build, getForwardedArgs, resolveNextBin } = await import('./build.js');
26
+ const fakeConfig = {};
27
+ describe('getForwardedArgs', ()=>{
28
+ it('returns args after the build token and strips --no-types', ()=>{
29
+ expect(getForwardedArgs([
30
+ 'build',
31
+ '--turbopack',
32
+ '--no-types',
33
+ 'foo'
34
+ ])).toEqual([
35
+ '--turbopack',
36
+ 'foo'
37
+ ]);
38
+ });
39
+ it('returns empty array when only build is present', ()=>{
40
+ expect(getForwardedArgs([
41
+ 'build'
42
+ ])).toEqual([]);
43
+ });
44
+ });
45
+ describe('resolveNextBin', ()=>{
46
+ it('resolves next bin from the current project', ()=>{
47
+ // next is installed at the repo root; resolving from cwd must succeed
48
+ const binPath = resolveNextBin(process.cwd());
49
+ expect(binPath).toMatch(/next[\\/].*bin[\\/]next$/);
50
+ });
51
+ it('throws a clear error when next cannot be resolved', ()=>{
52
+ expect(()=>resolveNextBin('/nonexistent-project-root')).toThrow(/next/i);
53
+ });
54
+ });
55
+ describe('build', ()=>{
56
+ let exitMock;
57
+ let originalArgv;
58
+ beforeEach(()=>{
59
+ spawnMock.mockClear();
60
+ generateImportMapMock.mockClear();
61
+ generateTypesMock.mockClear();
62
+ originalArgv = process.argv;
63
+ process.argv = [
64
+ 'node',
65
+ 'payload',
66
+ 'build'
67
+ ];
68
+ exitMock = vi.spyOn(process, 'exit').mockImplementation(()=>undefined);
69
+ });
70
+ afterEach(()=>{
71
+ process.argv = originalArgv;
72
+ exitMock.mockRestore();
73
+ });
74
+ it('generates the import map before spawning, and generates types by default', async ()=>{
75
+ await build({
76
+ config: fakeConfig
77
+ });
78
+ expect(generateImportMapMock).toHaveBeenCalledTimes(1);
79
+ expect(generateTypesMock).toHaveBeenCalledTimes(1);
80
+ expect(spawnMock).toHaveBeenCalledTimes(1);
81
+ expect(generateImportMapMock.mock.invocationCallOrder[0]).toBeLessThan(spawnMock.mock.invocationCallOrder[0]);
82
+ });
83
+ it('skips type generation with --no-types', async ()=>{
84
+ process.argv = [
85
+ 'node',
86
+ 'payload',
87
+ 'build',
88
+ '--no-types'
89
+ ];
90
+ await build({
91
+ config: fakeConfig
92
+ });
93
+ expect(generateImportMapMock).toHaveBeenCalledTimes(1);
94
+ expect(generateTypesMock).not.toHaveBeenCalled();
95
+ expect(spawnMock).toHaveBeenCalledTimes(1);
96
+ });
97
+ it('exits 1 and does not spawn when generation fails', async ()=>{
98
+ generateImportMapMock.mockRejectedValueOnce(new Error('boom'));
99
+ await build({
100
+ config: fakeConfig
101
+ });
102
+ expect(exitMock).toHaveBeenCalledWith(1);
103
+ expect(spawnMock).not.toHaveBeenCalled();
104
+ });
105
+ it('spawns next build with forwarded args and propagates the child exit code', async ()=>{
106
+ process.argv = [
107
+ 'node',
108
+ 'payload',
109
+ 'build',
110
+ '--turbopack'
111
+ ];
112
+ let exitCb;
113
+ spawnMock.mockReturnValueOnce({
114
+ on (event, cb) {
115
+ if (event === 'exit') {
116
+ exitCb = cb;
117
+ }
118
+ return this;
119
+ }
120
+ });
121
+ const buildPromise = build({
122
+ config: fakeConfig
123
+ });
124
+ // generation awaits before spawn; let those microtasks settle
125
+ await vi.waitFor(()=>expect(spawnMock).toHaveBeenCalledTimes(1));
126
+ const [execPath, spawnArgs, opts] = spawnMock.mock.calls[0];
127
+ expect(execPath).toBe(process.execPath);
128
+ expect(spawnArgs[1]).toBe('build');
129
+ expect(spawnArgs).toContain('--turbopack');
130
+ expect(opts).toEqual({
131
+ stdio: 'inherit'
132
+ });
133
+ // Simulate the child exiting with a non-zero code
134
+ exitCb?.(2);
135
+ await buildPromise;
136
+ expect(exitMock).toHaveBeenCalledWith(2);
137
+ });
138
+ it('does not exit until the spawned child exits, then propagates its code', async ()=>{
139
+ let exitCb;
140
+ spawnMock.mockReturnValueOnce({
141
+ on (event, cb) {
142
+ if (event === 'exit') {
143
+ exitCb = cb;
144
+ }
145
+ return this;
146
+ }
147
+ });
148
+ let resolved = false;
149
+ const buildPromise = build({
150
+ config: fakeConfig
151
+ }).then(()=>{
152
+ resolved = true;
153
+ });
154
+ // Wait for generation to settle and the child to be spawned. build() must
155
+ // still be pending because the child has not exited yet.
156
+ await vi.waitFor(()=>expect(exitCb).toBeDefined());
157
+ // Flush all pending microtasks; the OLD (buggy) build() resolved here
158
+ // without awaiting the child, so this assertion catches the race.
159
+ await new Promise((r)=>setTimeout(r, 0));
160
+ expect(resolved).toBe(false);
161
+ expect(exitMock).not.toHaveBeenCalled();
162
+ // Child exits non-zero -> build() must exit with that exact code
163
+ exitCb?.(3);
164
+ await buildPromise;
165
+ expect(resolved).toBe(true);
166
+ expect(exitMock).toHaveBeenCalledWith(3);
167
+ });
168
+ });
169
+
170
+ //# sourceMappingURL=build.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/bin/build.spec.ts"],"sourcesContent":["import { describe, expect, it, vi, beforeEach, afterEach } from 'vitest'\n\n// Default fake child auto-fires `exit(0)` synchronously so ordering/generation\n// tests resolve. Specific tests override via `mockReturnValueOnce` to drive the\n// exit/error handlers manually.\nconst spawnMock = vi.fn(() => ({\n on(event: string, cb: (arg?: never) => void) {\n if (event === 'exit') {\n cb(0 as never)\n }\n return this\n },\n}))\nconst generateImportMapMock = vi.fn(async () => {})\nconst generateTypesMock = vi.fn(async () => {})\n\nvi.mock('node:child_process', () => ({ spawn: spawnMock }))\nvi.mock('./generateImportMap/index.js', () => ({ generateImportMap: generateImportMapMock }))\nvi.mock('./generateTypes.js', () => ({ generateTypes: generateTypesMock }))\n\n// Imported after mocks are registered\nconst { build, getForwardedArgs, resolveNextBin } = await import('./build.js')\n\nconst fakeConfig = {} as never\n\ndescribe('getForwardedArgs', () => {\n it('returns args after the build token and strips --no-types', () => {\n expect(getForwardedArgs(['build', '--turbopack', '--no-types', 'foo'])).toEqual([\n '--turbopack',\n 'foo',\n ])\n })\n\n it('returns empty array when only build is present', () => {\n expect(getForwardedArgs(['build'])).toEqual([])\n })\n})\n\ndescribe('resolveNextBin', () => {\n it('resolves next bin from the current project', () => {\n // next is installed at the repo root; resolving from cwd must succeed\n const binPath = resolveNextBin(process.cwd())\n expect(binPath).toMatch(/next[\\\\/].*bin[\\\\/]next$/)\n })\n\n it('throws a clear error when next cannot be resolved', () => {\n expect(() => resolveNextBin('/nonexistent-project-root')).toThrow(/next/i)\n })\n})\n\ndescribe('build', () => {\n let exitMock: ReturnType<typeof vi.spyOn>\n let originalArgv: string[]\n\n beforeEach(() => {\n spawnMock.mockClear()\n generateImportMapMock.mockClear()\n generateTypesMock.mockClear()\n originalArgv = process.argv\n process.argv = ['node', 'payload', 'build']\n exitMock = vi.spyOn(process, 'exit').mockImplementation((() => undefined) as never)\n })\n\n afterEach(() => {\n process.argv = originalArgv\n exitMock.mockRestore()\n })\n\n it('generates the import map before spawning, and generates types by default', async () => {\n await build({ config: fakeConfig })\n\n expect(generateImportMapMock).toHaveBeenCalledTimes(1)\n expect(generateTypesMock).toHaveBeenCalledTimes(1)\n expect(spawnMock).toHaveBeenCalledTimes(1)\n expect(generateImportMapMock.mock.invocationCallOrder[0]).toBeLessThan(\n spawnMock.mock.invocationCallOrder[0],\n )\n })\n\n it('skips type generation with --no-types', async () => {\n process.argv = ['node', 'payload', 'build', '--no-types']\n\n await build({ config: fakeConfig })\n\n expect(generateImportMapMock).toHaveBeenCalledTimes(1)\n expect(generateTypesMock).not.toHaveBeenCalled()\n expect(spawnMock).toHaveBeenCalledTimes(1)\n })\n\n it('exits 1 and does not spawn when generation fails', async () => {\n generateImportMapMock.mockRejectedValueOnce(new Error('boom'))\n\n await build({ config: fakeConfig })\n\n expect(exitMock).toHaveBeenCalledWith(1)\n expect(spawnMock).not.toHaveBeenCalled()\n })\n\n it('spawns next build with forwarded args and propagates the child exit code', async () => {\n process.argv = ['node', 'payload', 'build', '--turbopack']\n let exitCb: ((code: number | null) => void) | undefined\n spawnMock.mockReturnValueOnce({\n on(event: string, cb: (code: number | null) => void) {\n if (event === 'exit') {\n exitCb = cb\n }\n return this\n },\n })\n\n const buildPromise = build({ config: fakeConfig })\n\n // generation awaits before spawn; let those microtasks settle\n await vi.waitFor(() => expect(spawnMock).toHaveBeenCalledTimes(1))\n const [execPath, spawnArgs, opts] = spawnMock.mock.calls[0]\n expect(execPath).toBe(process.execPath)\n expect(spawnArgs[1]).toBe('build')\n expect(spawnArgs).toContain('--turbopack')\n expect(opts).toEqual({ stdio: 'inherit' })\n\n // Simulate the child exiting with a non-zero code\n exitCb?.(2)\n await buildPromise\n expect(exitMock).toHaveBeenCalledWith(2)\n })\n\n it('does not exit until the spawned child exits, then propagates its code', async () => {\n let exitCb: ((code: number | null) => void) | undefined\n spawnMock.mockReturnValueOnce({\n on(event: string, cb: (code: number | null) => void) {\n if (event === 'exit') {\n exitCb = cb\n }\n return this\n },\n })\n\n let resolved = false\n const buildPromise = build({ config: fakeConfig }).then(() => {\n resolved = true\n })\n\n // Wait for generation to settle and the child to be spawned. build() must\n // still be pending because the child has not exited yet.\n await vi.waitFor(() => expect(exitCb).toBeDefined())\n // Flush all pending microtasks; the OLD (buggy) build() resolved here\n // without awaiting the child, so this assertion catches the race.\n await new Promise((r) => setTimeout(r, 0))\n expect(resolved).toBe(false)\n expect(exitMock).not.toHaveBeenCalled()\n\n // Child exits non-zero -> build() must exit with that exact code\n exitCb?.(3)\n await buildPromise\n expect(resolved).toBe(true)\n expect(exitMock).toHaveBeenCalledWith(3)\n })\n})\n"],"names":["describe","expect","it","vi","beforeEach","afterEach","spawnMock","fn","on","event","cb","generateImportMapMock","generateTypesMock","mock","spawn","generateImportMap","generateTypes","build","getForwardedArgs","resolveNextBin","fakeConfig","toEqual","binPath","process","cwd","toMatch","toThrow","exitMock","originalArgv","mockClear","argv","spyOn","mockImplementation","undefined","mockRestore","config","toHaveBeenCalledTimes","invocationCallOrder","toBeLessThan","not","toHaveBeenCalled","mockRejectedValueOnce","Error","toHaveBeenCalledWith","exitCb","mockReturnValueOnce","buildPromise","waitFor","execPath","spawnArgs","opts","calls","toBe","toContain","stdio","resolved","then","toBeDefined","Promise","r","setTimeout"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,EAAE,EAAEC,EAAE,EAAEC,UAAU,EAAEC,SAAS,QAAQ,SAAQ;AAExE,+EAA+E;AAC/E,gFAAgF;AAChF,gCAAgC;AAChC,MAAMC,YAAYH,GAAGI,EAAE,CAAC,IAAO,CAAA;QAC7BC,IAAGC,KAAa,EAAEC,EAAyB;YACzC,IAAID,UAAU,QAAQ;gBACpBC,GAAG;YACL;YACA,OAAO,IAAI;QACb;IACF,CAAA;AACA,MAAMC,wBAAwBR,GAAGI,EAAE,CAAC,WAAa;AACjD,MAAMK,oBAAoBT,GAAGI,EAAE,CAAC,WAAa;AAE7CJ,GAAGU,IAAI,CAAC,sBAAsB,IAAO,CAAA;QAAEC,OAAOR;IAAU,CAAA;AACxDH,GAAGU,IAAI,CAAC,gCAAgC,IAAO,CAAA;QAAEE,mBAAmBJ;IAAsB,CAAA;AAC1FR,GAAGU,IAAI,CAAC,sBAAsB,IAAO,CAAA;QAAEG,eAAeJ;IAAkB,CAAA;AAExE,sCAAsC;AACtC,MAAM,EAAEK,KAAK,EAAEC,gBAAgB,EAAEC,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC;AAEjE,MAAMC,aAAa,CAAC;AAEpBpB,SAAS,oBAAoB;IAC3BE,GAAG,4DAA4D;QAC7DD,OAAOiB,iBAAiB;YAAC;YAAS;YAAe;YAAc;SAAM,GAAGG,OAAO,CAAC;YAC9E;YACA;SACD;IACH;IAEAnB,GAAG,kDAAkD;QACnDD,OAAOiB,iBAAiB;YAAC;SAAQ,GAAGG,OAAO,CAAC,EAAE;IAChD;AACF;AAEArB,SAAS,kBAAkB;IACzBE,GAAG,8CAA8C;QAC/C,sEAAsE;QACtE,MAAMoB,UAAUH,eAAeI,QAAQC,GAAG;QAC1CvB,OAAOqB,SAASG,OAAO,CAAC;IAC1B;IAEAvB,GAAG,qDAAqD;QACtDD,OAAO,IAAMkB,eAAe,8BAA8BO,OAAO,CAAC;IACpE;AACF;AAEA1B,SAAS,SAAS;IAChB,IAAI2B;IACJ,IAAIC;IAEJxB,WAAW;QACTE,UAAUuB,SAAS;QACnBlB,sBAAsBkB,SAAS;QAC/BjB,kBAAkBiB,SAAS;QAC3BD,eAAeL,QAAQO,IAAI;QAC3BP,QAAQO,IAAI,GAAG;YAAC;YAAQ;YAAW;SAAQ;QAC3CH,WAAWxB,GAAG4B,KAAK,CAACR,SAAS,QAAQS,kBAAkB,CAAE,IAAMC;IACjE;IAEA5B,UAAU;QACRkB,QAAQO,IAAI,GAAGF;QACfD,SAASO,WAAW;IACtB;IAEAhC,GAAG,4EAA4E;QAC7E,MAAMe,MAAM;YAAEkB,QAAQf;QAAW;QAEjCnB,OAAOU,uBAAuByB,qBAAqB,CAAC;QACpDnC,OAAOW,mBAAmBwB,qBAAqB,CAAC;QAChDnC,OAAOK,WAAW8B,qBAAqB,CAAC;QACxCnC,OAAOU,sBAAsBE,IAAI,CAACwB,mBAAmB,CAAC,EAAE,EAAEC,YAAY,CACpEhC,UAAUO,IAAI,CAACwB,mBAAmB,CAAC,EAAE;IAEzC;IAEAnC,GAAG,yCAAyC;QAC1CqB,QAAQO,IAAI,GAAG;YAAC;YAAQ;YAAW;YAAS;SAAa;QAEzD,MAAMb,MAAM;YAAEkB,QAAQf;QAAW;QAEjCnB,OAAOU,uBAAuByB,qBAAqB,CAAC;QACpDnC,OAAOW,mBAAmB2B,GAAG,CAACC,gBAAgB;QAC9CvC,OAAOK,WAAW8B,qBAAqB,CAAC;IAC1C;IAEAlC,GAAG,oDAAoD;QACrDS,sBAAsB8B,qBAAqB,CAAC,IAAIC,MAAM;QAEtD,MAAMzB,MAAM;YAAEkB,QAAQf;QAAW;QAEjCnB,OAAO0B,UAAUgB,oBAAoB,CAAC;QACtC1C,OAAOK,WAAWiC,GAAG,CAACC,gBAAgB;IACxC;IAEAtC,GAAG,4EAA4E;QAC7EqB,QAAQO,IAAI,GAAG;YAAC;YAAQ;YAAW;YAAS;SAAc;QAC1D,IAAIc;QACJtC,UAAUuC,mBAAmB,CAAC;YAC5BrC,IAAGC,KAAa,EAAEC,EAAiC;gBACjD,IAAID,UAAU,QAAQ;oBACpBmC,SAASlC;gBACX;gBACA,OAAO,IAAI;YACb;QACF;QAEA,MAAMoC,eAAe7B,MAAM;YAAEkB,QAAQf;QAAW;QAEhD,8DAA8D;QAC9D,MAAMjB,GAAG4C,OAAO,CAAC,IAAM9C,OAAOK,WAAW8B,qBAAqB,CAAC;QAC/D,MAAM,CAACY,UAAUC,WAAWC,KAAK,GAAG5C,UAAUO,IAAI,CAACsC,KAAK,CAAC,EAAE;QAC3DlD,OAAO+C,UAAUI,IAAI,CAAC7B,QAAQyB,QAAQ;QACtC/C,OAAOgD,SAAS,CAAC,EAAE,EAAEG,IAAI,CAAC;QAC1BnD,OAAOgD,WAAWI,SAAS,CAAC;QAC5BpD,OAAOiD,MAAM7B,OAAO,CAAC;YAAEiC,OAAO;QAAU;QAExC,kDAAkD;QAClDV,SAAS;QACT,MAAME;QACN7C,OAAO0B,UAAUgB,oBAAoB,CAAC;IACxC;IAEAzC,GAAG,yEAAyE;QAC1E,IAAI0C;QACJtC,UAAUuC,mBAAmB,CAAC;YAC5BrC,IAAGC,KAAa,EAAEC,EAAiC;gBACjD,IAAID,UAAU,QAAQ;oBACpBmC,SAASlC;gBACX;gBACA,OAAO,IAAI;YACb;QACF;QAEA,IAAI6C,WAAW;QACf,MAAMT,eAAe7B,MAAM;YAAEkB,QAAQf;QAAW,GAAGoC,IAAI,CAAC;YACtDD,WAAW;QACb;QAEA,0EAA0E;QAC1E,yDAAyD;QACzD,MAAMpD,GAAG4C,OAAO,CAAC,IAAM9C,OAAO2C,QAAQa,WAAW;QACjD,sEAAsE;QACtE,kEAAkE;QAClE,MAAM,IAAIC,QAAQ,CAACC,IAAMC,WAAWD,GAAG;QACvC1D,OAAOsD,UAAUH,IAAI,CAAC;QACtBnD,OAAO0B,UAAUY,GAAG,CAACC,gBAAgB;QAErC,iEAAiE;QACjEI,SAAS;QACT,MAAME;QACN7C,OAAOsD,UAAUH,IAAI,CAAC;QACtBnD,OAAO0B,UAAUgB,oBAAoB,CAAC;IACxC;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAO9E,KAAK,gBAAgB,GAAG,MAAM,CAAA;AAC9B,KAAK,eAAe,GAAG,MAAM,CAAA;AAC7B,KAAK,UAAU,GAAG,MAAM,CAAA;AACxB,KAAK,cAAc,GAAG,MAAM,CAAA;AAE5B;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAA;CACzC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,UAAU,EAAE,gBAAgB,GAAG;QAC9B,IAAI,EAAE,UAAU,CAAA;QAChB,SAAS,EAAE,eAAe,CAAA;KAC3B,CAAA;CACF,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,CAAC,IAAI,EAAE,cAAc,GAAG,GAAG,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,KAAK,IAAI,CAAA;AAE/F,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAA,CAAC;;;OAGb;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,GAAG,EAAE,OAAO,CAAA;CACb,GACA,OAAO,CAAC,IAAI,CAAC,CA8Ef;AAED,wBAAsB,cAAc,CAAC,EACnC,YAAY,EACZ,KAAK,EACL,SAAS,EACT,iBAAiB,EACjB,GAAG,GACJ,EAAE;IACD,YAAY,EAAE,iBAAiB,CAAA;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB,EAAE,MAAM,CAAA;IACzB,GAAG,CAAC,EAAE,OAAO,CAAA;CACd,iBAoCA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAQ9E,KAAK,gBAAgB,GAAG,MAAM,CAAA;AAC9B,KAAK,eAAe,GAAG,MAAM,CAAA;AAC7B,KAAK,UAAU,GAAG,MAAM,CAAA;AACxB,KAAK,cAAc,GAAG,MAAM,CAAA;AAE5B;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAA;CACzC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,UAAU,EAAE,gBAAgB,GAAG;QAC9B,IAAI,EAAE,UAAU,CAAA;QAChB,SAAS,EAAE,eAAe,CAAA;KAC3B,CAAA;CACF,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,CAAC,IAAI,EAAE,cAAc,GAAG,GAAG,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,KAAK,IAAI,CAAA;AAE/F,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAA,CAAC;;;OAGb;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,GAAG,EAAE,OAAO,CAAA;CACb,GACA,OAAO,CAAC,IAAI,CAAC,CA+Ef;AAED,wBAAsB,cAAc,CAAC,EACnC,YAAY,EACZ,KAAK,EACL,SAAS,EACT,iBAAiB,EACjB,GAAG,GACJ,EAAE;IACD,YAAY,EAAE,iBAAiB,CAAA;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB,EAAE,MAAM,CAAA;IACzB,GAAG,CAAC,EAAE,OAAO,CAAA;CACd,iBAqCA"}
@@ -1,13 +1,15 @@
1
- /* eslint-disable no-console */ import fs from 'fs/promises';
1
+ import fs from 'fs/promises';
2
2
  import process from 'node:process';
3
+ import { getLogger } from '../../utilities/logger.js';
3
4
  import { iterateConfig } from './iterateConfig.js';
4
5
  import { addPayloadComponentToImportMap } from './utilities/addPayloadComponentToImportMap.js';
5
6
  import { getImportMapToBaseDirPath } from './utilities/getImportMapToBaseDirPath.js';
6
7
  import { resolveImportMapFilePath } from './utilities/resolveImportMapFilePath.js';
7
8
  export async function generateImportMap(config, options) {
9
+ const logger = getLogger('payload', 'sync');
8
10
  const shouldLog = options?.log ?? true;
9
11
  if (shouldLog) {
10
- console.log('Generating import map');
12
+ logger.info('Generating import map');
11
13
  }
12
14
  const importMap = {};
13
15
  const imports = {};
@@ -35,7 +37,7 @@ export async function generateImportMap(config, options) {
35
37
  return;
36
38
  }
37
39
  if (typeof payloadComponent !== 'object' && typeof payloadComponent !== 'string') {
38
- console.error(payloadComponent);
40
+ logger.error(payloadComponent);
39
41
  throw new Error('addToImportMap > Payload component must be an object or a string');
40
42
  }
41
43
  if (Array.isArray(payloadComponent)) {
@@ -72,6 +74,7 @@ export async function generateImportMap(config, options) {
72
74
  });
73
75
  }
74
76
  export async function writeImportMap({ componentMap, force, importMap, importMapFilePath, log }) {
77
+ const logger = getLogger('payload', 'sync');
75
78
  const imports = [];
76
79
  for (const [identifier, { path, specifier }] of Object.entries(importMap)){
77
80
  imports.push(`import { ${specifier} as ${identifier} } from '${path}'`);
@@ -92,13 +95,13 @@ ${mapKeys.join(',\n')}
92
95
  const currentImportMap = await fs.readFile(importMapFilePath, 'utf-8');
93
96
  if (currentImportMap?.trim() === importMapOutputFile?.trim()) {
94
97
  if (log) {
95
- console.log('No new imports found, skipping writing import map');
98
+ logger.info('No new imports found, skipping writing import map');
96
99
  }
97
100
  return;
98
101
  }
99
102
  }
100
103
  if (log) {
101
- console.log('Writing import map to', importMapFilePath);
104
+ logger.info(`Writing import map to ${importMapFilePath}`);
102
105
  }
103
106
  await fs.writeFile(importMapFilePath, importMapOutputFile);
104
107
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/generateImportMap/index.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport fs from 'fs/promises'\nimport process from 'node:process'\n\nimport type { PayloadComponent, SanitizedConfig } from '../../config/types.js'\n\nimport { iterateConfig } from './iterateConfig.js'\nimport { addPayloadComponentToImportMap } from './utilities/addPayloadComponentToImportMap.js'\nimport { getImportMapToBaseDirPath } from './utilities/getImportMapToBaseDirPath.js'\nimport { resolveImportMapFilePath } from './utilities/resolveImportMapFilePath.js'\n\ntype ImportIdentifier = string\ntype ImportSpecifier = string\ntype ImportPath = string\ntype UserImportPath = string\n\n/**\n * Import Map before being written to the file. Only contains all paths\n */\nexport type InternalImportMap = {\n [path: UserImportPath]: ImportIdentifier\n}\n\n/**\n * Imports of the import map.\n */\nexport type Imports = {\n [identifier: ImportIdentifier]: {\n path: ImportPath\n specifier: ImportSpecifier\n }\n}\n\n/**\n * Import Map after being imported from the actual import map. Contains all the actual imported components\n */\nexport type ImportMap = {\n [path: UserImportPath]: any\n}\n\nexport type AddToImportMap = (payloadComponent?: PayloadComponent | PayloadComponent[]) => void\n\nexport async function generateImportMap(\n config: SanitizedConfig,\n options?: {\n force?: boolean /**\n * If true, will not throw an error if the import map file path cannot be resolved\n Instead, it will return silently.\n */\n ignoreResolveError?: boolean\n log: boolean\n },\n): Promise<void> {\n const shouldLog = options?.log ?? true\n\n if (shouldLog) {\n console.log('Generating import map')\n }\n\n const importMap: InternalImportMap = {}\n const imports: Imports = {}\n\n // Determine the root directory of the project - usually the directory where the src or app folder is located\n const rootDir = process.env.ROOT_DIR ?? process.cwd()\n\n const baseDir = config.admin.importMap.baseDir ?? process.cwd()\n\n const importMapFilePath = await resolveImportMapFilePath({\n adminRoute: config.routes.admin,\n importMapFile: config?.admin?.importMap?.importMapFile,\n rootDir,\n })\n\n if (importMapFilePath instanceof Error) {\n if (options?.ignoreResolveError) {\n return\n } else {\n throw importMapFilePath\n }\n }\n\n const importMapToBaseDirPath = getImportMapToBaseDirPath({\n baseDir,\n importMapPath: importMapFilePath,\n })\n\n const addToImportMap: AddToImportMap = (payloadComponent) => {\n if (!payloadComponent) {\n return\n }\n\n if (typeof payloadComponent !== 'object' && typeof payloadComponent !== 'string') {\n console.error(payloadComponent)\n throw new Error('addToImportMap > Payload component must be an object or a string')\n }\n\n if (Array.isArray(payloadComponent)) {\n for (const component of payloadComponent) {\n addPayloadComponentToImportMap({\n importMap,\n importMapToBaseDirPath,\n imports,\n payloadComponent: component,\n })\n }\n } else {\n addPayloadComponentToImportMap({\n importMap,\n importMapToBaseDirPath,\n imports,\n payloadComponent,\n })\n }\n }\n\n iterateConfig({\n addToImportMap,\n baseDir: config.admin.importMap.baseDir,\n config,\n importMap,\n imports,\n })\n\n await writeImportMap({\n componentMap: importMap,\n force: options?.force,\n importMap: imports,\n importMapFilePath,\n log: shouldLog,\n })\n}\n\nexport async function writeImportMap({\n componentMap,\n force,\n importMap,\n importMapFilePath,\n log,\n}: {\n componentMap: InternalImportMap\n force?: boolean\n importMap: Imports\n importMapFilePath: string\n log?: boolean\n}) {\n const imports: string[] = []\n for (const [identifier, { path, specifier }] of Object.entries(importMap)) {\n imports.push(`import { ${specifier} as ${identifier} } from '${path}'`)\n }\n\n const mapKeys: string[] = []\n for (const [userPath, identifier] of Object.entries(componentMap)) {\n mapKeys.push(` \"${userPath}\": ${identifier}`)\n }\n\n const importMapOutputFile = `${imports.join('\\n')}\n\n/** @type import('payload').ImportMap */\nexport const importMap = {\n${mapKeys.join(',\\n')}\n}\n`\n\n if (!force) {\n // Read current import map and check in the IMPORTS if there are any new imports. If not, don't write the file.\n const currentImportMap = await fs.readFile(importMapFilePath, 'utf-8')\n\n if (currentImportMap?.trim() === importMapOutputFile?.trim()) {\n if (log) {\n console.log('No new imports found, skipping writing import map')\n }\n return\n }\n }\n\n if (log) {\n console.log('Writing import map to', importMapFilePath)\n }\n\n await fs.writeFile(importMapFilePath, importMapOutputFile)\n}\n"],"names":["fs","process","iterateConfig","addPayloadComponentToImportMap","getImportMapToBaseDirPath","resolveImportMapFilePath","generateImportMap","config","options","shouldLog","log","console","importMap","imports","rootDir","env","ROOT_DIR","cwd","baseDir","admin","importMapFilePath","adminRoute","routes","importMapFile","Error","ignoreResolveError","importMapToBaseDirPath","importMapPath","addToImportMap","payloadComponent","error","Array","isArray","component","writeImportMap","componentMap","force","identifier","path","specifier","Object","entries","push","mapKeys","userPath","importMapOutputFile","join","currentImportMap","readFile","trim","writeFile"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/bin/generateImportMap/index.ts"],"sourcesContent":["import fs from 'fs/promises'\nimport process from 'node:process'\n\nimport type { PayloadComponent, SanitizedConfig } from '../../config/types.js'\n\nimport { getLogger } from '../../utilities/logger.js'\nimport { iterateConfig } from './iterateConfig.js'\nimport { addPayloadComponentToImportMap } from './utilities/addPayloadComponentToImportMap.js'\nimport { getImportMapToBaseDirPath } from './utilities/getImportMapToBaseDirPath.js'\nimport { resolveImportMapFilePath } from './utilities/resolveImportMapFilePath.js'\n\ntype ImportIdentifier = string\ntype ImportSpecifier = string\ntype ImportPath = string\ntype UserImportPath = string\n\n/**\n * Import Map before being written to the file. Only contains all paths\n */\nexport type InternalImportMap = {\n [path: UserImportPath]: ImportIdentifier\n}\n\n/**\n * Imports of the import map.\n */\nexport type Imports = {\n [identifier: ImportIdentifier]: {\n path: ImportPath\n specifier: ImportSpecifier\n }\n}\n\n/**\n * Import Map after being imported from the actual import map. Contains all the actual imported components\n */\nexport type ImportMap = {\n [path: UserImportPath]: any\n}\n\nexport type AddToImportMap = (payloadComponent?: PayloadComponent | PayloadComponent[]) => void\n\nexport async function generateImportMap(\n config: SanitizedConfig,\n options?: {\n force?: boolean /**\n * If true, will not throw an error if the import map file path cannot be resolved\n Instead, it will return silently.\n */\n ignoreResolveError?: boolean\n log: boolean\n },\n): Promise<void> {\n const logger = getLogger('payload', 'sync')\n const shouldLog = options?.log ?? true\n\n if (shouldLog) {\n logger.info('Generating import map')\n }\n\n const importMap: InternalImportMap = {}\n const imports: Imports = {}\n\n // Determine the root directory of the project - usually the directory where the src or app folder is located\n const rootDir = process.env.ROOT_DIR ?? process.cwd()\n\n const baseDir = config.admin.importMap.baseDir ?? process.cwd()\n\n const importMapFilePath = await resolveImportMapFilePath({\n adminRoute: config.routes.admin,\n importMapFile: config?.admin?.importMap?.importMapFile,\n rootDir,\n })\n\n if (importMapFilePath instanceof Error) {\n if (options?.ignoreResolveError) {\n return\n } else {\n throw importMapFilePath\n }\n }\n\n const importMapToBaseDirPath = getImportMapToBaseDirPath({\n baseDir,\n importMapPath: importMapFilePath,\n })\n\n const addToImportMap: AddToImportMap = (payloadComponent) => {\n if (!payloadComponent) {\n return\n }\n\n if (typeof payloadComponent !== 'object' && typeof payloadComponent !== 'string') {\n logger.error(payloadComponent)\n throw new Error('addToImportMap > Payload component must be an object or a string')\n }\n\n if (Array.isArray(payloadComponent)) {\n for (const component of payloadComponent) {\n addPayloadComponentToImportMap({\n importMap,\n importMapToBaseDirPath,\n imports,\n payloadComponent: component,\n })\n }\n } else {\n addPayloadComponentToImportMap({\n importMap,\n importMapToBaseDirPath,\n imports,\n payloadComponent,\n })\n }\n }\n\n iterateConfig({\n addToImportMap,\n baseDir: config.admin.importMap.baseDir,\n config,\n importMap,\n imports,\n })\n\n await writeImportMap({\n componentMap: importMap,\n force: options?.force,\n importMap: imports,\n importMapFilePath,\n log: shouldLog,\n })\n}\n\nexport async function writeImportMap({\n componentMap,\n force,\n importMap,\n importMapFilePath,\n log,\n}: {\n componentMap: InternalImportMap\n force?: boolean\n importMap: Imports\n importMapFilePath: string\n log?: boolean\n}) {\n const logger = getLogger('payload', 'sync')\n const imports: string[] = []\n for (const [identifier, { path, specifier }] of Object.entries(importMap)) {\n imports.push(`import { ${specifier} as ${identifier} } from '${path}'`)\n }\n\n const mapKeys: string[] = []\n for (const [userPath, identifier] of Object.entries(componentMap)) {\n mapKeys.push(` \"${userPath}\": ${identifier}`)\n }\n\n const importMapOutputFile = `${imports.join('\\n')}\n\n/** @type import('payload').ImportMap */\nexport const importMap = {\n${mapKeys.join(',\\n')}\n}\n`\n\n if (!force) {\n // Read current import map and check in the IMPORTS if there are any new imports. If not, don't write the file.\n const currentImportMap = await fs.readFile(importMapFilePath, 'utf-8')\n\n if (currentImportMap?.trim() === importMapOutputFile?.trim()) {\n if (log) {\n logger.info('No new imports found, skipping writing import map')\n }\n return\n }\n }\n\n if (log) {\n logger.info(`Writing import map to ${importMapFilePath}`)\n }\n\n await fs.writeFile(importMapFilePath, importMapOutputFile)\n}\n"],"names":["fs","process","getLogger","iterateConfig","addPayloadComponentToImportMap","getImportMapToBaseDirPath","resolveImportMapFilePath","generateImportMap","config","options","logger","shouldLog","log","info","importMap","imports","rootDir","env","ROOT_DIR","cwd","baseDir","admin","importMapFilePath","adminRoute","routes","importMapFile","Error","ignoreResolveError","importMapToBaseDirPath","importMapPath","addToImportMap","payloadComponent","error","Array","isArray","component","writeImportMap","componentMap","force","identifier","path","specifier","Object","entries","push","mapKeys","userPath","importMapOutputFile","join","currentImportMap","readFile","trim","writeFile"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"iterateCollections.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateCollections.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAI5E,wBAAgB,kBAAkB,CAAC,EACjC,cAAc,EACd,OAAO,EACP,WAAW,EACX,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,yBAAyB,EAAE,CAAA;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QAiEA"}
1
+ {"version":3,"file":"iterateCollections.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateCollections.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAI5E,wBAAgB,kBAAkB,CAAC,EACjC,cAAc,EACd,OAAO,EACP,WAAW,EACX,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,yBAAyB,EAAE,CAAA;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QAkEA"}
@@ -44,6 +44,7 @@ export function iterateCollections({ addToImportMap, baseDir, collections, confi
44
44
  }
45
45
  addToImportMap(collection.admin?.components?.views?.list?.Component);
46
46
  addToImportMap(collection.admin?.components?.views?.list?.actions);
47
+ addToImportMap(collection.admin?.components?.views?.list?.NoResults);
47
48
  // Register custom collection view components (any key other than 'edit' and 'list')
48
49
  if (collection.admin?.components?.views) {
49
50
  for (const [key, view] of Object.entries(collection.admin.components.views)){
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/generateImportMap/iterateCollections.ts"],"sourcesContent":["import type { AdminViewConfig } from '../../admin/views/index.js'\nimport type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { SanitizedConfig } from '../../config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\nimport { genImportMapIterateFields } from './iterateFields.js'\n\nexport function iterateCollections({\n addToImportMap,\n baseDir,\n collections,\n config,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n collections: SanitizedCollectionConfig[]\n config: SanitizedConfig\n importMap: InternalImportMap\n imports: Imports\n}) {\n for (const collection of collections) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: collection.fields,\n importMap,\n imports,\n })\n\n addToImportMap(collection.admin?.components?.afterList)\n addToImportMap(collection.admin?.components?.listMenuItems)\n addToImportMap(collection.admin?.components?.afterListTable)\n addToImportMap(collection.admin?.components?.beforeList)\n addToImportMap(collection.admin?.components?.beforeListTable)\n addToImportMap(collection.admin?.components?.Description)\n\n addToImportMap(collection.admin?.components?.edit?.beforeDocumentControls)\n addToImportMap(collection.admin?.components?.edit?.BeforeDocumentMeta)\n addToImportMap(collection.admin?.components?.edit?.editMenuItems)\n addToImportMap(collection.admin?.components?.edit?.PreviewButton)\n addToImportMap(collection.admin?.components?.edit?.PublishButton)\n addToImportMap(collection.admin?.components?.edit?.SaveButton)\n addToImportMap(collection.admin?.components?.edit?.SaveDraftButton)\n addToImportMap(collection.admin?.components?.edit?.Status)\n addToImportMap(collection.admin?.components?.edit?.UnpublishButton)\n addToImportMap(collection.admin?.components?.edit?.Upload)\n\n if (collection.upload?.admin?.components?.controls) {\n addToImportMap(collection.upload?.admin?.components?.controls)\n }\n\n if (collection.admin?.components?.views?.edit) {\n for (const editViewConfig of Object.values(collection.admin?.components?.views?.edit)) {\n if ('Component' in editViewConfig) {\n addToImportMap(editViewConfig?.Component)\n }\n\n if ('actions' in editViewConfig) {\n addToImportMap(editViewConfig?.actions)\n }\n\n if ('tab' in editViewConfig) {\n addToImportMap(editViewConfig?.tab?.Component)\n addToImportMap(editViewConfig?.tab?.Pill)\n }\n }\n }\n\n addToImportMap(collection.admin?.components?.views?.list?.Component)\n addToImportMap(collection.admin?.components?.views?.list?.actions)\n\n // Register custom collection view components (any key other than 'edit' and 'list')\n if (collection.admin?.components?.views) {\n for (const [key, view] of Object.entries(collection.admin.components.views)) {\n if (key === 'edit' || key === 'list') {\n continue\n }\n if (view && typeof view === 'object' && 'Component' in view && 'path' in view) {\n addToImportMap((view as AdminViewConfig).Component)\n }\n }\n }\n }\n}\n"],"names":["genImportMapIterateFields","iterateCollections","addToImportMap","baseDir","collections","config","importMap","imports","collection","fields","admin","components","afterList","listMenuItems","afterListTable","beforeList","beforeListTable","Description","edit","beforeDocumentControls","BeforeDocumentMeta","editMenuItems","PreviewButton","PublishButton","SaveButton","SaveDraftButton","Status","UnpublishButton","Upload","upload","controls","views","editViewConfig","Object","values","Component","actions","tab","Pill","list","key","view","entries"],"mappings":"AAKA,SAASA,yBAAyB,QAAQ,qBAAoB;AAE9D,OAAO,SAASC,mBAAmB,EACjCC,cAAc,EACdC,OAAO,EACPC,WAAW,EACXC,MAAM,EACNC,SAAS,EACTC,OAAO,EAQR;IACC,KAAK,MAAMC,cAAcJ,YAAa;QACpCJ,0BAA0B;YACxBE;YACAC;YACAE;YACAI,QAAQD,WAAWC,MAAM;YACzBH;YACAC;QACF;QAEAL,eAAeM,WAAWE,KAAK,EAAEC,YAAYC;QAC7CV,eAAeM,WAAWE,KAAK,EAAEC,YAAYE;QAC7CX,eAAeM,WAAWE,KAAK,EAAEC,YAAYG;QAC7CZ,eAAeM,WAAWE,KAAK,EAAEC,YAAYI;QAC7Cb,eAAeM,WAAWE,KAAK,EAAEC,YAAYK;QAC7Cd,eAAeM,WAAWE,KAAK,EAAEC,YAAYM;QAE7Cf,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMC;QACnDjB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAME;QACnDlB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMG;QACnDnB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMI;QACnDpB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMK;QACnDrB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMM;QACnDtB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMO;QACnDvB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMQ;QACnDxB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMS;QACnDzB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMU;QAEnD,IAAIpB,WAAWqB,MAAM,EAAEnB,OAAOC,YAAYmB,UAAU;YAClD5B,eAAeM,WAAWqB,MAAM,EAAEnB,OAAOC,YAAYmB;QACvD;QAEA,IAAItB,WAAWE,KAAK,EAAEC,YAAYoB,OAAOb,MAAM;YAC7C,KAAK,MAAMc,kBAAkBC,OAAOC,MAAM,CAAC1B,WAAWE,KAAK,EAAEC,YAAYoB,OAAOb,MAAO;gBACrF,IAAI,eAAec,gBAAgB;oBACjC9B,eAAe8B,gBAAgBG;gBACjC;gBAEA,IAAI,aAAaH,gBAAgB;oBAC/B9B,eAAe8B,gBAAgBI;gBACjC;gBAEA,IAAI,SAASJ,gBAAgB;oBAC3B9B,eAAe8B,gBAAgBK,KAAKF;oBACpCjC,eAAe8B,gBAAgBK,KAAKC;gBACtC;YACF;QACF;QAEApC,eAAeM,WAAWE,KAAK,EAAEC,YAAYoB,OAAOQ,MAAMJ;QAC1DjC,eAAeM,WAAWE,KAAK,EAAEC,YAAYoB,OAAOQ,MAAMH;QAE1D,oFAAoF;QACpF,IAAI5B,WAAWE,KAAK,EAAEC,YAAYoB,OAAO;YACvC,KAAK,MAAM,CAACS,KAAKC,KAAK,IAAIR,OAAOS,OAAO,CAAClC,WAAWE,KAAK,CAACC,UAAU,CAACoB,KAAK,EAAG;gBAC3E,IAAIS,QAAQ,UAAUA,QAAQ,QAAQ;oBACpC;gBACF;gBACA,IAAIC,QAAQ,OAAOA,SAAS,YAAY,eAAeA,QAAQ,UAAUA,MAAM;oBAC7EvC,eAAe,AAACuC,KAAyBN,SAAS;gBACpD;YACF;QACF;IACF;AACF"}
1
+ {"version":3,"sources":["../../../src/bin/generateImportMap/iterateCollections.ts"],"sourcesContent":["import type { AdminViewConfig } from '../../admin/views/index.js'\nimport type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { SanitizedConfig } from '../../config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\nimport { genImportMapIterateFields } from './iterateFields.js'\n\nexport function iterateCollections({\n addToImportMap,\n baseDir,\n collections,\n config,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n collections: SanitizedCollectionConfig[]\n config: SanitizedConfig\n importMap: InternalImportMap\n imports: Imports\n}) {\n for (const collection of collections) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: collection.fields,\n importMap,\n imports,\n })\n\n addToImportMap(collection.admin?.components?.afterList)\n addToImportMap(collection.admin?.components?.listMenuItems)\n addToImportMap(collection.admin?.components?.afterListTable)\n addToImportMap(collection.admin?.components?.beforeList)\n addToImportMap(collection.admin?.components?.beforeListTable)\n addToImportMap(collection.admin?.components?.Description)\n\n addToImportMap(collection.admin?.components?.edit?.beforeDocumentControls)\n addToImportMap(collection.admin?.components?.edit?.BeforeDocumentMeta)\n addToImportMap(collection.admin?.components?.edit?.editMenuItems)\n addToImportMap(collection.admin?.components?.edit?.PreviewButton)\n addToImportMap(collection.admin?.components?.edit?.PublishButton)\n addToImportMap(collection.admin?.components?.edit?.SaveButton)\n addToImportMap(collection.admin?.components?.edit?.SaveDraftButton)\n addToImportMap(collection.admin?.components?.edit?.Status)\n addToImportMap(collection.admin?.components?.edit?.UnpublishButton)\n addToImportMap(collection.admin?.components?.edit?.Upload)\n\n if (collection.upload?.admin?.components?.controls) {\n addToImportMap(collection.upload?.admin?.components?.controls)\n }\n\n if (collection.admin?.components?.views?.edit) {\n for (const editViewConfig of Object.values(collection.admin?.components?.views?.edit)) {\n if ('Component' in editViewConfig) {\n addToImportMap(editViewConfig?.Component)\n }\n\n if ('actions' in editViewConfig) {\n addToImportMap(editViewConfig?.actions)\n }\n\n if ('tab' in editViewConfig) {\n addToImportMap(editViewConfig?.tab?.Component)\n addToImportMap(editViewConfig?.tab?.Pill)\n }\n }\n }\n\n addToImportMap(collection.admin?.components?.views?.list?.Component)\n addToImportMap(collection.admin?.components?.views?.list?.actions)\n addToImportMap(collection.admin?.components?.views?.list?.NoResults)\n\n // Register custom collection view components (any key other than 'edit' and 'list')\n if (collection.admin?.components?.views) {\n for (const [key, view] of Object.entries(collection.admin.components.views)) {\n if (key === 'edit' || key === 'list') {\n continue\n }\n if (view && typeof view === 'object' && 'Component' in view && 'path' in view) {\n addToImportMap((view as AdminViewConfig).Component)\n }\n }\n }\n }\n}\n"],"names":["genImportMapIterateFields","iterateCollections","addToImportMap","baseDir","collections","config","importMap","imports","collection","fields","admin","components","afterList","listMenuItems","afterListTable","beforeList","beforeListTable","Description","edit","beforeDocumentControls","BeforeDocumentMeta","editMenuItems","PreviewButton","PublishButton","SaveButton","SaveDraftButton","Status","UnpublishButton","Upload","upload","controls","views","editViewConfig","Object","values","Component","actions","tab","Pill","list","NoResults","key","view","entries"],"mappings":"AAKA,SAASA,yBAAyB,QAAQ,qBAAoB;AAE9D,OAAO,SAASC,mBAAmB,EACjCC,cAAc,EACdC,OAAO,EACPC,WAAW,EACXC,MAAM,EACNC,SAAS,EACTC,OAAO,EAQR;IACC,KAAK,MAAMC,cAAcJ,YAAa;QACpCJ,0BAA0B;YACxBE;YACAC;YACAE;YACAI,QAAQD,WAAWC,MAAM;YACzBH;YACAC;QACF;QAEAL,eAAeM,WAAWE,KAAK,EAAEC,YAAYC;QAC7CV,eAAeM,WAAWE,KAAK,EAAEC,YAAYE;QAC7CX,eAAeM,WAAWE,KAAK,EAAEC,YAAYG;QAC7CZ,eAAeM,WAAWE,KAAK,EAAEC,YAAYI;QAC7Cb,eAAeM,WAAWE,KAAK,EAAEC,YAAYK;QAC7Cd,eAAeM,WAAWE,KAAK,EAAEC,YAAYM;QAE7Cf,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMC;QACnDjB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAME;QACnDlB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMG;QACnDnB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMI;QACnDpB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMK;QACnDrB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMM;QACnDtB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMO;QACnDvB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMQ;QACnDxB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMS;QACnDzB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMU;QAEnD,IAAIpB,WAAWqB,MAAM,EAAEnB,OAAOC,YAAYmB,UAAU;YAClD5B,eAAeM,WAAWqB,MAAM,EAAEnB,OAAOC,YAAYmB;QACvD;QAEA,IAAItB,WAAWE,KAAK,EAAEC,YAAYoB,OAAOb,MAAM;YAC7C,KAAK,MAAMc,kBAAkBC,OAAOC,MAAM,CAAC1B,WAAWE,KAAK,EAAEC,YAAYoB,OAAOb,MAAO;gBACrF,IAAI,eAAec,gBAAgB;oBACjC9B,eAAe8B,gBAAgBG;gBACjC;gBAEA,IAAI,aAAaH,gBAAgB;oBAC/B9B,eAAe8B,gBAAgBI;gBACjC;gBAEA,IAAI,SAASJ,gBAAgB;oBAC3B9B,eAAe8B,gBAAgBK,KAAKF;oBACpCjC,eAAe8B,gBAAgBK,KAAKC;gBACtC;YACF;QACF;QAEApC,eAAeM,WAAWE,KAAK,EAAEC,YAAYoB,OAAOQ,MAAMJ;QAC1DjC,eAAeM,WAAWE,KAAK,EAAEC,YAAYoB,OAAOQ,MAAMH;QAC1DlC,eAAeM,WAAWE,KAAK,EAAEC,YAAYoB,OAAOQ,MAAMC;QAE1D,oFAAoF;QACpF,IAAIhC,WAAWE,KAAK,EAAEC,YAAYoB,OAAO;YACvC,KAAK,MAAM,CAACU,KAAKC,KAAK,IAAIT,OAAOU,OAAO,CAACnC,WAAWE,KAAK,CAACC,UAAU,CAACoB,KAAK,EAAG;gBAC3E,IAAIU,QAAQ,UAAUA,QAAQ,QAAQ;oBACpC;gBACF;gBACA,IAAIC,QAAQ,OAAOA,SAAS,YAAY,eAAeA,QAAQ,UAAUA,MAAM;oBAC7ExC,eAAe,AAACwC,KAAyBP,SAAS;gBACpD;YACF;QACF;IACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"iterateConfig.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAM5E,wBAAgB,aAAa,CAAC,EAC5B,cAAc,EACd,OAAO,EACP,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QA0HA"}
1
+ {"version":3,"file":"iterateConfig.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAM5E,wBAAgB,aAAa,CAAC,EAC5B,cAAc,EACd,OAAO,EACP,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QA2HA"}
@@ -38,6 +38,7 @@ export function iterateConfig({ addToImportMap, baseDir, config, importMap, impo
38
38
  addToImportMap(config.admin?.components?.header);
39
39
  addToImportMap(config.admin?.components?.logout?.Button);
40
40
  addToImportMap(config.admin?.components?.settingsMenu);
41
+ addToImportMap(config.admin?.components?.userMenuSettingsItems);
41
42
  addToImportMap(config.admin?.components?.graphics?.Icon);
42
43
  addToImportMap(config.admin?.components?.graphics?.Logo);
43
44
  addToImportMap(config.admin?.components?.actions);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/generateImportMap/iterateConfig.ts"],"sourcesContent":["import type { SanitizedConfig } from '../../config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\nimport { iterateCollections } from './iterateCollections.js'\nimport { genImportMapIterateFields } from './iterateFields.js'\nimport { iterateGlobals } from './iterateGlobals.js'\n\nexport function iterateConfig({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n config: SanitizedConfig\n importMap: InternalImportMap\n imports: Imports\n}) {\n iterateCollections({\n addToImportMap,\n baseDir,\n collections: config.collections,\n config,\n importMap,\n imports,\n })\n\n iterateGlobals({\n addToImportMap,\n baseDir,\n config,\n globals: config.globals,\n importMap,\n imports,\n })\n\n if (config?.blocks) {\n const blocks = Object.values(config.blocks)\n if (blocks?.length) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: blocks,\n importMap,\n imports,\n })\n }\n }\n\n if (typeof config.admin?.avatar === 'object') {\n addToImportMap(config.admin?.avatar?.Component)\n }\n\n addToImportMap(config.admin?.components?.Nav)\n addToImportMap(config.admin?.components?.header)\n addToImportMap(config.admin?.components?.logout?.Button)\n addToImportMap(config.admin?.components?.settingsMenu)\n addToImportMap(config.admin?.components?.graphics?.Icon)\n addToImportMap(config.admin?.components?.graphics?.Logo)\n\n addToImportMap(config.admin?.components?.actions)\n addToImportMap(config.admin?.components?.afterDashboard)\n addToImportMap(config.admin?.components?.afterLogin)\n addToImportMap(config.admin?.components?.afterNav)\n addToImportMap(config.admin?.components?.afterNavLinks)\n addToImportMap(config.admin?.components?.beforeDashboard)\n addToImportMap(config.admin?.components?.beforeLogin)\n addToImportMap(config.admin?.components?.beforeNav)\n addToImportMap(config.admin?.components?.beforeNavLinks)\n\n addToImportMap(config.admin?.components?.providers)\n\n // Sidebar tabs\n if (config.admin?.components?.sidebar?.tabs?.length) {\n for (const tab of config.admin.components.sidebar.tabs) {\n addToImportMap(tab.components.Icon)\n addToImportMap(tab.components.Content)\n }\n }\n\n if (config.admin?.components?.views) {\n if (Object.keys(config.admin?.components?.views)?.length) {\n for (const key in config.admin?.components?.views) {\n const adminViewConfig = config.admin?.components?.views[key]\n addToImportMap(adminViewConfig?.Component)\n }\n }\n }\n\n if (config.admin?.dashboard?.widgets?.length) {\n for (const dashboardWidget of config.admin.dashboard.widgets) {\n addToImportMap(dashboardWidget.Component)\n if (dashboardWidget.fields?.length) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: dashboardWidget.fields,\n importMap,\n imports,\n })\n }\n }\n }\n\n if (config?.admin?.importMap?.generators?.length) {\n for (const generator of config.admin.importMap.generators) {\n generator({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n })\n }\n }\n\n if (config?.admin?.dependencies) {\n for (const dependency of Object.values(config.admin.dependencies)) {\n addToImportMap(dependency.path)\n }\n }\n\n /*\n if (\n config?.editor &&\n typeof config.editor === 'object' &&\n config.editor.generateImportMap &&\n typeof config.editor.generateImportMap === 'function'\n ) {\n config.editor.generateImportMap({\n addToImportMap,\n baseDir,\n componentMap,\n config,\n importMap,\n })\n }*/ // No need to do that here since in the sanitized editor config, this root editor is already added to the field editor - and we already process that in iterateFields\n}\n"],"names":["iterateCollections","genImportMapIterateFields","iterateGlobals","iterateConfig","addToImportMap","baseDir","config","importMap","imports","collections","globals","blocks","Object","values","length","fields","admin","avatar","Component","components","Nav","header","logout","Button","settingsMenu","graphics","Icon","Logo","actions","afterDashboard","afterLogin","afterNav","afterNavLinks","beforeDashboard","beforeLogin","beforeNav","beforeNavLinks","providers","sidebar","tabs","tab","Content","views","keys","key","adminViewConfig","dashboard","widgets","dashboardWidget","generators","generator","dependencies","dependency","path"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/bin/generateImportMap/iterateConfig.ts"],"sourcesContent":["import type { SanitizedConfig } from '../../config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\nimport { iterateCollections } from './iterateCollections.js'\nimport { genImportMapIterateFields } from './iterateFields.js'\nimport { iterateGlobals } from './iterateGlobals.js'\n\nexport function iterateConfig({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n config: SanitizedConfig\n importMap: InternalImportMap\n imports: Imports\n}) {\n iterateCollections({\n addToImportMap,\n baseDir,\n collections: config.collections,\n config,\n importMap,\n imports,\n })\n\n iterateGlobals({\n addToImportMap,\n baseDir,\n config,\n globals: config.globals,\n importMap,\n imports,\n })\n\n if (config?.blocks) {\n const blocks = Object.values(config.blocks)\n if (blocks?.length) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: blocks,\n importMap,\n imports,\n })\n }\n }\n\n if (typeof config.admin?.avatar === 'object') {\n addToImportMap(config.admin?.avatar?.Component)\n }\n\n addToImportMap(config.admin?.components?.Nav)\n addToImportMap(config.admin?.components?.header)\n addToImportMap(config.admin?.components?.logout?.Button)\n addToImportMap(config.admin?.components?.settingsMenu)\n addToImportMap(config.admin?.components?.userMenuSettingsItems)\n addToImportMap(config.admin?.components?.graphics?.Icon)\n addToImportMap(config.admin?.components?.graphics?.Logo)\n\n addToImportMap(config.admin?.components?.actions)\n addToImportMap(config.admin?.components?.afterDashboard)\n addToImportMap(config.admin?.components?.afterLogin)\n addToImportMap(config.admin?.components?.afterNav)\n addToImportMap(config.admin?.components?.afterNavLinks)\n addToImportMap(config.admin?.components?.beforeDashboard)\n addToImportMap(config.admin?.components?.beforeLogin)\n addToImportMap(config.admin?.components?.beforeNav)\n addToImportMap(config.admin?.components?.beforeNavLinks)\n\n addToImportMap(config.admin?.components?.providers)\n\n // Sidebar tabs\n if (config.admin?.components?.sidebar?.tabs?.length) {\n for (const tab of config.admin.components.sidebar.tabs) {\n addToImportMap(tab.components.Icon)\n addToImportMap(tab.components.Content)\n }\n }\n\n if (config.admin?.components?.views) {\n if (Object.keys(config.admin?.components?.views)?.length) {\n for (const key in config.admin?.components?.views) {\n const adminViewConfig = config.admin?.components?.views[key]\n addToImportMap(adminViewConfig?.Component)\n }\n }\n }\n\n if (config.admin?.dashboard?.widgets?.length) {\n for (const dashboardWidget of config.admin.dashboard.widgets) {\n addToImportMap(dashboardWidget.Component)\n if (dashboardWidget.fields?.length) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: dashboardWidget.fields,\n importMap,\n imports,\n })\n }\n }\n }\n\n if (config?.admin?.importMap?.generators?.length) {\n for (const generator of config.admin.importMap.generators) {\n generator({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n })\n }\n }\n\n if (config?.admin?.dependencies) {\n for (const dependency of Object.values(config.admin.dependencies)) {\n addToImportMap(dependency.path)\n }\n }\n\n /*\n if (\n config?.editor &&\n typeof config.editor === 'object' &&\n config.editor.generateImportMap &&\n typeof config.editor.generateImportMap === 'function'\n ) {\n config.editor.generateImportMap({\n addToImportMap,\n baseDir,\n componentMap,\n config,\n importMap,\n })\n }*/ // No need to do that here since in the sanitized editor config, this root editor is already added to the field editor - and we already process that in iterateFields\n}\n"],"names":["iterateCollections","genImportMapIterateFields","iterateGlobals","iterateConfig","addToImportMap","baseDir","config","importMap","imports","collections","globals","blocks","Object","values","length","fields","admin","avatar","Component","components","Nav","header","logout","Button","settingsMenu","userMenuSettingsItems","graphics","Icon","Logo","actions","afterDashboard","afterLogin","afterNav","afterNavLinks","beforeDashboard","beforeLogin","beforeNav","beforeNavLinks","providers","sidebar","tabs","tab","Content","views","keys","key","adminViewConfig","dashboard","widgets","dashboardWidget","generators","generator","dependencies","dependency","path"],"mappings":"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"}
@@ -1,8 +1,12 @@
1
1
  /**
2
2
  * Returns the path to the import map file. If the import map file is not found, it throws an error.
3
+ *
4
+ * @param candidateDirectories - Optional array of directory paths to search for the import map.
5
+ * Defaults to Next.js app directory convention. Framework adapters can provide their own.
3
6
  */
4
- export declare function resolveImportMapFilePath({ adminRoute, importMapFile, rootDir, }: {
7
+ export declare function resolveImportMapFilePath({ adminRoute, candidateDirectories, importMapFile, rootDir, }: {
5
8
  adminRoute?: string;
9
+ candidateDirectories?: string[];
6
10
  importMapFile?: string;
7
11
  rootDir: string;
8
12
  }): Promise<Error | string>;
@@ -1 +1 @@
1
- {"version":3,"file":"resolveImportMapFilePath.d.ts","sourceRoot":"","sources":["../../../../src/bin/generateImportMap/utilities/resolveImportMapFilePath.ts"],"names":[],"mappings":"AAYA;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,EAC7C,UAAqB,EACrB,aAAa,EACb,OAAO,GACR,EAAE;IACD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;CAChB,GAAG,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,CAmC1B"}
1
+ {"version":3,"file":"resolveImportMapFilePath.d.ts","sourceRoot":"","sources":["../../../../src/bin/generateImportMap/utilities/resolveImportMapFilePath.ts"],"names":[],"mappings":"AAqBA;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAAC,EAC7C,UAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,OAAO,GACR,EAAE;IACD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;CAChB,GAAG,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,CAkC1B"}