emdash 0.18.0 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (408) hide show
  1. package/dist/api/route-utils.d.mts +2 -2
  2. package/dist/api/route-utils.mjs +14 -14
  3. package/dist/api/schemas/index.d.mts +2 -2
  4. package/dist/api/schemas/index.mjs +3 -3
  5. package/dist/{api-Cs7DAACP.mjs → api-BZ6bhjYs.mjs} +88 -16
  6. package/dist/api-BZ6bhjYs.mjs.map +1 -0
  7. package/dist/{apply-BWMV4Zmw.mjs → apply-hQkKKBCf.mjs} +23 -23
  8. package/dist/apply-hQkKKBCf.mjs.map +1 -0
  9. package/dist/astro/index.d.mts +8 -8
  10. package/dist/astro/index.d.mts.map +1 -1
  11. package/dist/astro/index.mjs +113 -23
  12. package/dist/astro/index.mjs.map +1 -1
  13. package/dist/astro/middleware/auth.d.mts +7 -7
  14. package/dist/astro/middleware/auth.mjs +2 -2
  15. package/dist/astro/middleware/redirect.mjs +4 -4
  16. package/dist/astro/middleware/request-context.mjs +2 -2
  17. package/dist/astro/middleware.d.mts +26 -4
  18. package/dist/astro/middleware.d.mts.map +1 -1
  19. package/dist/astro/middleware.mjs +205 -173
  20. package/dist/astro/middleware.mjs.map +1 -1
  21. package/dist/astro/routes/api/admin/allowed-domains/_domain_.mjs +5 -5
  22. package/dist/astro/routes/api/admin/allowed-domains/index.mjs +5 -5
  23. package/dist/astro/routes/api/admin/api-tokens/_id_.mjs +2 -2
  24. package/dist/astro/routes/api/admin/api-tokens/index.mjs +3 -3
  25. package/dist/astro/routes/api/admin/byline-fields/_slug_/usage.mjs +5 -5
  26. package/dist/astro/routes/api/admin/byline-fields/_slug_.mjs +8 -8
  27. package/dist/astro/routes/api/admin/byline-fields/index.mjs +8 -8
  28. package/dist/astro/routes/api/admin/byline-fields/reorder.mjs +8 -8
  29. package/dist/astro/routes/api/admin/bylines/_id_/index.mjs +12 -12
  30. package/dist/astro/routes/api/admin/bylines/_id_/translations.mjs +12 -12
  31. package/dist/astro/routes/api/admin/bylines/index.mjs +12 -12
  32. package/dist/astro/routes/api/admin/comments/_id_/status.mjs +11 -11
  33. package/dist/astro/routes/api/admin/comments/_id_.mjs +5 -5
  34. package/dist/astro/routes/api/admin/comments/bulk.mjs +8 -8
  35. package/dist/astro/routes/api/admin/comments/counts.mjs +5 -5
  36. package/dist/astro/routes/api/admin/comments/index.mjs +8 -8
  37. package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.mjs +5 -5
  38. package/dist/astro/routes/api/admin/hooks/exclusive/index.mjs +4 -4
  39. package/dist/astro/routes/api/admin/oauth-clients/_id_.mjs +3 -3
  40. package/dist/astro/routes/api/admin/oauth-clients/index.mjs +3 -3
  41. package/dist/astro/routes/api/admin/plugins/_id_/disable.mjs +31 -31
  42. package/dist/astro/routes/api/admin/plugins/_id_/enable.mjs +31 -31
  43. package/dist/astro/routes/api/admin/plugins/_id_/index.mjs +30 -30
  44. package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs +30 -30
  45. package/dist/astro/routes/api/admin/plugins/_id_/update.mjs +30 -30
  46. package/dist/astro/routes/api/admin/plugins/index.mjs +30 -30
  47. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.mjs +3 -3
  48. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs +30 -30
  49. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs +30 -30
  50. package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs +30 -30
  51. package/dist/astro/routes/api/admin/plugins/registry/_id_/uninstall.mjs +30 -30
  52. package/dist/astro/routes/api/admin/plugins/registry/_id_/update.mjs +31 -31
  53. package/dist/astro/routes/api/admin/plugins/registry/artifact.mjs +30 -30
  54. package/dist/astro/routes/api/admin/plugins/registry/install.mjs +31 -31
  55. package/dist/astro/routes/api/admin/plugins/updates.mjs +30 -30
  56. package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs +30 -30
  57. package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.mjs +3 -3
  58. package/dist/astro/routes/api/admin/themes/marketplace/index.mjs +30 -30
  59. package/dist/astro/routes/api/admin/users/_id_/disable.mjs +3 -3
  60. package/dist/astro/routes/api/admin/users/_id_/enable.mjs +2 -2
  61. package/dist/astro/routes/api/admin/users/_id_/index.mjs +6 -6
  62. package/dist/astro/routes/api/admin/users/_id_/send-recovery.mjs +4 -4
  63. package/dist/astro/routes/api/admin/users/index.mjs +5 -5
  64. package/dist/astro/routes/api/auth/dev-bypass.mjs +3 -3
  65. package/dist/astro/routes/api/auth/invite/accept.mjs +2 -2
  66. package/dist/astro/routes/api/auth/invite/complete.mjs +6 -6
  67. package/dist/astro/routes/api/auth/invite/index.mjs +7 -7
  68. package/dist/astro/routes/api/auth/invite/register-options.mjs +6 -6
  69. package/dist/astro/routes/api/auth/logout.mjs +2 -2
  70. package/dist/astro/routes/api/auth/magic-link/send.mjs +8 -8
  71. package/dist/astro/routes/api/auth/magic-link/verify.mjs +2 -2
  72. package/dist/astro/routes/api/auth/me.mjs +6 -6
  73. package/dist/astro/routes/api/auth/oauth/_provider_/callback.mjs +2 -2
  74. package/dist/astro/routes/api/auth/passkey/_id_.mjs +5 -5
  75. package/dist/astro/routes/api/auth/passkey/index.mjs +2 -2
  76. package/dist/astro/routes/api/auth/passkey/options.mjs +7 -7
  77. package/dist/astro/routes/api/auth/passkey/register/options.mjs +6 -6
  78. package/dist/astro/routes/api/auth/passkey/register/verify.mjs +6 -6
  79. package/dist/astro/routes/api/auth/passkey/verify.mjs +6 -6
  80. package/dist/astro/routes/api/auth/signup/complete.mjs +6 -6
  81. package/dist/astro/routes/api/auth/signup/request.mjs +8 -8
  82. package/dist/astro/routes/api/auth/signup/verify.mjs +2 -2
  83. package/dist/astro/routes/api/comments/_collection_/_contentId_/index.mjs +11 -11
  84. package/dist/astro/routes/api/content/_collection_/_id_/compare.mjs +3 -3
  85. package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs +6 -5
  86. package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs.map +1 -1
  87. package/dist/astro/routes/api/content/_collection_/_id_/duplicate.mjs +3 -3
  88. package/dist/astro/routes/api/content/_collection_/_id_/permanent.mjs +3 -3
  89. package/dist/astro/routes/api/content/_collection_/_id_/preview-url.mjs +8 -8
  90. package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs +9 -8
  91. package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs.map +1 -1
  92. package/dist/astro/routes/api/content/_collection_/_id_/restore.mjs +3 -3
  93. package/dist/astro/routes/api/content/_collection_/_id_/revisions.mjs +3 -3
  94. package/dist/astro/routes/api/content/_collection_/_id_/schedule.d.mts.map +1 -1
  95. package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs +12 -10
  96. package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs.map +1 -1
  97. package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.mjs +11 -11
  98. package/dist/astro/routes/api/content/_collection_/_id_/translations.mjs +3 -3
  99. package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs +6 -5
  100. package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs.map +1 -1
  101. package/dist/astro/routes/api/content/_collection_/_id_.mjs +9 -8
  102. package/dist/astro/routes/api/content/_collection_/_id_.mjs.map +1 -1
  103. package/dist/astro/routes/api/content/_collection_/authors.d.mts +8 -0
  104. package/dist/astro/routes/api/content/_collection_/authors.d.mts.map +1 -0
  105. package/dist/astro/routes/api/content/_collection_/authors.mjs +19 -0
  106. package/dist/astro/routes/api/content/_collection_/authors.mjs.map +1 -0
  107. package/dist/astro/routes/api/content/_collection_/index.mjs +6 -6
  108. package/dist/astro/routes/api/content/_collection_/trash.mjs +6 -6
  109. package/dist/astro/routes/api/dashboard.mjs +7 -7
  110. package/dist/astro/routes/api/dev/emails.mjs +2 -2
  111. package/dist/astro/routes/api/import/probe.d.mts +2 -2
  112. package/dist/astro/routes/api/import/probe.mjs +6 -6
  113. package/dist/astro/routes/api/import/wordpress/analyze.mjs +4 -4
  114. package/dist/astro/routes/api/import/wordpress/execute.d.mts +7 -7
  115. package/dist/astro/routes/api/import/wordpress/execute.mjs +9 -9
  116. package/dist/astro/routes/api/import/wordpress/media.mjs +6 -6
  117. package/dist/astro/routes/api/import/wordpress/prepare.mjs +9 -9
  118. package/dist/astro/routes/api/import/wordpress/rewrite-urls.mjs +8 -8
  119. package/dist/astro/routes/api/import/wordpress-plugin/analyze.mjs +6 -6
  120. package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs +9 -9
  121. package/dist/astro/routes/api/manifest.mjs +3 -3
  122. package/dist/astro/routes/api/mcp.mjs +28 -28
  123. package/dist/astro/routes/api/media/_id_/confirm.mjs +6 -6
  124. package/dist/astro/routes/api/media/_id_.mjs +6 -6
  125. package/dist/astro/routes/api/media/file/_...key_.mjs +2 -2
  126. package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.mjs +3 -3
  127. package/dist/astro/routes/api/media/providers/_providerId_/index.mjs +3 -3
  128. package/dist/astro/routes/api/media/providers/index.mjs +3 -3
  129. package/dist/astro/routes/api/media/upload-url.mjs +6 -6
  130. package/dist/astro/routes/api/media.mjs +7 -7
  131. package/dist/astro/routes/api/menus/_name_/items/_id_.mjs +7 -7
  132. package/dist/astro/routes/api/menus/_name_/items.mjs +7 -7
  133. package/dist/astro/routes/api/menus/_name_/reorder.mjs +7 -7
  134. package/dist/astro/routes/api/menus/_name_/translations.mjs +7 -7
  135. package/dist/astro/routes/api/menus/_name_.mjs +7 -7
  136. package/dist/astro/routes/api/menus/index.mjs +7 -7
  137. package/dist/astro/routes/api/oauth/authorize.mjs +1 -1
  138. package/dist/astro/routes/api/oauth/device/authorize.mjs +4 -4
  139. package/dist/astro/routes/api/oauth/device/code.mjs +5 -5
  140. package/dist/astro/routes/api/oauth/device/token.mjs +5 -5
  141. package/dist/astro/routes/api/oauth/register.mjs +2 -2
  142. package/dist/astro/routes/api/oauth/token/refresh.mjs +4 -4
  143. package/dist/astro/routes/api/oauth/token/revoke.mjs +4 -4
  144. package/dist/astro/routes/api/oauth/token.mjs +4 -4
  145. package/dist/astro/routes/api/openapi.json.mjs +17 -3
  146. package/dist/astro/routes/api/openapi.json.mjs.map +1 -1
  147. package/dist/astro/routes/api/plugins/_pluginId_/_...path_.mjs +3 -3
  148. package/dist/astro/routes/api/redirects/404s/index.mjs +9 -9
  149. package/dist/astro/routes/api/redirects/404s/summary.mjs +9 -9
  150. package/dist/astro/routes/api/redirects/_id_.mjs +10 -10
  151. package/dist/astro/routes/api/redirects/index.mjs +10 -10
  152. package/dist/astro/routes/api/revisions/_revisionId_/index.mjs +3 -3
  153. package/dist/astro/routes/api/revisions/_revisionId_/restore.mjs +3 -3
  154. package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs +30 -30
  155. package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs +30 -30
  156. package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs +30 -30
  157. package/dist/astro/routes/api/schema/collections/_slug_/index.mjs +30 -30
  158. package/dist/astro/routes/api/schema/collections/index.mjs +30 -30
  159. package/dist/astro/routes/api/schema/index.mjs +6 -6
  160. package/dist/astro/routes/api/schema/orphans/_slug_.mjs +30 -30
  161. package/dist/astro/routes/api/schema/orphans/index.mjs +30 -30
  162. package/dist/astro/routes/api/search/enable.mjs +9 -9
  163. package/dist/astro/routes/api/search/index.mjs +8 -8
  164. package/dist/astro/routes/api/search/rebuild.mjs +9 -9
  165. package/dist/astro/routes/api/search/stats.mjs +6 -6
  166. package/dist/astro/routes/api/search/suggest.mjs +8 -8
  167. package/dist/astro/routes/api/sections/_slug_.mjs +8 -8
  168. package/dist/astro/routes/api/sections/index.mjs +8 -8
  169. package/dist/astro/routes/api/settings/email.mjs +5 -5
  170. package/dist/astro/routes/api/settings.mjs +12 -12
  171. package/dist/astro/routes/api/setup/admin-verify.mjs +6 -6
  172. package/dist/astro/routes/api/setup/admin.mjs +6 -6
  173. package/dist/astro/routes/api/setup/dev-bypass.mjs +18 -18
  174. package/dist/astro/routes/api/setup/dev-reset.mjs +3 -3
  175. package/dist/astro/routes/api/setup/index.mjs +21 -21
  176. package/dist/astro/routes/api/setup/status.mjs +3 -3
  177. package/dist/astro/routes/api/snapshot.mjs +5 -5
  178. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_/translations.mjs +11 -11
  179. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.mjs +11 -11
  180. package/dist/astro/routes/api/taxonomies/_name_/terms/index.mjs +11 -11
  181. package/dist/astro/routes/api/taxonomies/index.mjs +11 -11
  182. package/dist/astro/routes/api/themes/preview.mjs +5 -5
  183. package/dist/astro/routes/api/typegen.mjs +5 -5
  184. package/dist/astro/routes/api/well-known/auth.mjs +1 -1
  185. package/dist/astro/routes/api/widget-areas/_name_/reorder.mjs +6 -6
  186. package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.mjs +8 -8
  187. package/dist/astro/routes/api/widget-areas/_name_/widgets.mjs +8 -8
  188. package/dist/astro/routes/api/widget-areas/_name_.mjs +5 -5
  189. package/dist/astro/routes/api/widget-areas/index.mjs +8 -8
  190. package/dist/astro/routes/api/widget-components.mjs +2 -2
  191. package/dist/astro/routes/robots.txt.mjs +6 -6
  192. package/dist/astro/routes/sitemap-_collection_.xml.mjs +6 -6
  193. package/dist/astro/routes/sitemap.xml.mjs +6 -6
  194. package/dist/astro/types.d.mts +15 -8
  195. package/dist/astro/types.d.mts.map +1 -1
  196. package/dist/{authorize-CotM4Yiu.mjs → authorize-C_8t2KGa.mjs} +2 -2
  197. package/dist/{authorize-CotM4Yiu.mjs.map → authorize-C_8t2KGa.mjs.map} +1 -1
  198. package/dist/{byline-CWQ9aSoz.mjs → byline-DUx48sJp.mjs} +6 -6
  199. package/dist/{byline-CWQ9aSoz.mjs.map → byline-DUx48sJp.mjs.map} +1 -1
  200. package/dist/{byline-fields-Dr-xcb6S.mjs → byline-fields-51kg6Vuv.mjs} +3 -3
  201. package/dist/{byline-fields-Dr-xcb6S.mjs.map → byline-fields-51kg6Vuv.mjs.map} +1 -1
  202. package/dist/{byline-fields-DC3Wkk-U.mjs → byline-fields-C_OsR-KF.mjs} +2 -2
  203. package/dist/{byline-fields-DC3Wkk-U.mjs.map → byline-fields-C_OsR-KF.mjs.map} +1 -1
  204. package/dist/{byline-fields-BNy7Ng1U.d.mts → byline-fields-DYXKDuNX.d.mts} +26 -2
  205. package/dist/byline-fields-DYXKDuNX.d.mts.map +1 -0
  206. package/dist/{byline-registry-CxK5g559.mjs → byline-registry-CWP7I71B.mjs} +3 -3
  207. package/dist/{byline-registry-CxK5g559.mjs.map → byline-registry-CWP7I71B.mjs.map} +1 -1
  208. package/dist/{bylines-LJMgENMI.mjs → bylines-Cx5n-WqP.mjs} +3 -3
  209. package/dist/{bylines-LJMgENMI.mjs.map → bylines-Cx5n-WqP.mjs.map} +1 -1
  210. package/dist/{bylines-BJSva1Un.mjs → bylines-wurS258E.mjs} +50 -6
  211. package/dist/{bylines-BJSva1Un.mjs.map → bylines-wurS258E.mjs.map} +1 -1
  212. package/dist/{cache-lZL7SgVb.mjs → cache-B_HzASVT.mjs} +3 -3
  213. package/dist/{cache-lZL7SgVb.mjs.map → cache-B_HzASVT.mjs.map} +1 -1
  214. package/dist/{chunks-BU-vP9Dh.mjs → chunks-BerYVuve.mjs} +2 -2
  215. package/dist/{chunks-BU-vP9Dh.mjs.map → chunks-BerYVuve.mjs.map} +1 -1
  216. package/dist/cli/index.mjs +40 -27
  217. package/dist/cli/index.mjs.map +1 -1
  218. package/dist/client/cf-access.d.mts +1 -1
  219. package/dist/client/index.d.mts +1 -1
  220. package/dist/{comment-C4jVbCM8.mjs → comment-sqQxNpN3.mjs} +2 -2
  221. package/dist/{comment-C4jVbCM8.mjs.map → comment-sqQxNpN3.mjs.map} +1 -1
  222. package/dist/{comments-BTAbC0Ek.mjs → comments-CJ0RZsYR.mjs} +3 -3
  223. package/dist/{comments-BTAbC0Ek.mjs.map → comments-CJ0RZsYR.mjs.map} +1 -1
  224. package/dist/{content-CyqOmOzm.mjs → content-BIlVx-RX.mjs} +132 -43
  225. package/dist/content-BIlVx-RX.mjs.map +1 -0
  226. package/dist/{context-DZ7bEh5-.mjs → context-GG52SPgh.mjs} +10 -10
  227. package/dist/{context-DZ7bEh5-.mjs.map → context-GG52SPgh.mjs.map} +1 -1
  228. package/dist/{cron-DZovZUnC.mjs → cron-BJ2ClIlj.mjs} +4 -3
  229. package/dist/cron-BJ2ClIlj.mjs.map +1 -0
  230. package/dist/{dashboard-B5WQpNTP.mjs → dashboard-2JgAMWxK.mjs} +4 -4
  231. package/dist/{dashboard-B5WQpNTP.mjs.map → dashboard-2JgAMWxK.mjs.map} +1 -1
  232. package/dist/db/index.d.mts +2 -2
  233. package/dist/db/index.mjs +1 -1
  234. package/dist/{device-flow-ptLrVINd.mjs → device-flow-s6_q3T7A.mjs} +2 -2
  235. package/dist/{device-flow-ptLrVINd.mjs.map → device-flow-s6_q3T7A.mjs.map} +1 -1
  236. package/dist/{error-DJOsMVSt.mjs → error-RwM4dD35.mjs} +2 -2
  237. package/dist/{error-DJOsMVSt.mjs.map → error-RwM4dD35.mjs.map} +1 -1
  238. package/dist/{fts-manager-DR1ERA0c.mjs → fts-manager-1RgHmopc.mjs} +2 -2
  239. package/dist/{fts-manager-DR1ERA0c.mjs.map → fts-manager-1RgHmopc.mjs.map} +1 -1
  240. package/dist/{index-D60_SzHG.d.mts → index-BpYeJO1E.d.mts} +2 -2
  241. package/dist/{index-D60_SzHG.d.mts.map → index-BpYeJO1E.d.mts.map} +1 -1
  242. package/dist/{index-CjKdMZ3U.d.mts → index-FfiTQJq2.d.mts} +199 -17
  243. package/dist/index-FfiTQJq2.d.mts.map +1 -0
  244. package/dist/index.d.mts +9 -9
  245. package/dist/index.mjs +43 -43
  246. package/dist/{load-6ZrRhepW.mjs → load-B84ohfBk.mjs} +2 -2
  247. package/dist/{load-6ZrRhepW.mjs.map → load-B84ohfBk.mjs.map} +1 -1
  248. package/dist/{loader-Dyx8dhFV.mjs → loader-CpZKpFz0.mjs} +32 -30
  249. package/dist/loader-CpZKpFz0.mjs.map +1 -0
  250. package/dist/media/index.mjs +1 -1
  251. package/dist/media/local-runtime.d.mts +7 -7
  252. package/dist/media/local-runtime.mjs +6 -6
  253. package/dist/{media-C-oovGCG.mjs → media-JOf3pNkw.mjs} +2 -2
  254. package/dist/{media-C-oovGCG.mjs.map → media-JOf3pNkw.mjs.map} +1 -1
  255. package/dist/{menus-DugoYwTX.mjs → menus-DX4_E01q.mjs} +3 -3
  256. package/dist/{menus-DugoYwTX.mjs.map → menus-DX4_E01q.mjs.map} +1 -1
  257. package/dist/{menus-BKkxXCmd.mjs → menus-Dp9xporj.mjs} +86 -9
  258. package/dist/menus-Dp9xporj.mjs.map +1 -0
  259. package/dist/{normalize-DVV8nbrL.mjs → normalize-CK5o04zr.mjs} +2 -2
  260. package/dist/{normalize-DVV8nbrL.mjs.map → normalize-CK5o04zr.mjs.map} +1 -1
  261. package/dist/{oauth-authorization-DvBAL75d.mjs → oauth-authorization-1aPAYjiC.mjs} +2 -2
  262. package/dist/{oauth-authorization-DvBAL75d.mjs.map → oauth-authorization-1aPAYjiC.mjs.map} +1 -1
  263. package/dist/{options-BL4X94qY.mjs → options-BPCVnesz.mjs} +1 -1
  264. package/dist/{options-BL4X94qY.mjs.map → options-BPCVnesz.mjs.map} +1 -1
  265. package/dist/{options-tb7DJROi.d.mts → options-D4MnavW_.d.mts} +3 -3
  266. package/dist/{options-tb7DJROi.d.mts.map → options-D4MnavW_.d.mts.map} +1 -1
  267. package/dist/{parse-BBkFmLVr.mjs → parse-CrGndy1A.mjs} +2 -2
  268. package/dist/{parse-BBkFmLVr.mjs.map → parse-CrGndy1A.mjs.map} +1 -1
  269. package/dist/{patterns-CqG5Ya3i.mjs → patterns-p-RBdTbM.mjs} +1 -1
  270. package/dist/{patterns-CqG5Ya3i.mjs.map → patterns-p-RBdTbM.mjs.map} +1 -1
  271. package/dist/plugin-utils.d.mts +7 -7
  272. package/dist/plugins/adapt-sandbox-entry.d.mts +7 -7
  273. package/dist/{query-Ctlq1aOk.mjs → query-BFQ029Ts.mjs} +21 -15
  274. package/dist/query-BFQ029Ts.mjs.map +1 -0
  275. package/dist/{rate-limit-CH6W6ikK.mjs → rate-limit-ClFFUga6.mjs} +2 -2
  276. package/dist/{rate-limit-CH6W6ikK.mjs.map → rate-limit-ClFFUga6.mjs.map} +1 -1
  277. package/dist/{redirect-C6tJA7tk.mjs → redirect-CRWIt8Zj.mjs} +3 -3
  278. package/dist/{redirect-C6tJA7tk.mjs.map → redirect-CRWIt8Zj.mjs.map} +1 -1
  279. package/dist/{redirects-C0L9JUk4.mjs → redirects-DEygMrRO.mjs} +25 -3
  280. package/dist/redirects-DEygMrRO.mjs.map +1 -0
  281. package/dist/{redirects-CacE9eQa.mjs → redirects-OIu6vQ2i.mjs} +5 -5
  282. package/dist/{redirects-CacE9eQa.mjs.map → redirects-OIu6vQ2i.mjs.map} +1 -1
  283. package/dist/{registry-CIDxZbhh.mjs → registry-brYh-rAT.mjs} +6 -6
  284. package/dist/{registry-CIDxZbhh.mjs.map → registry-brYh-rAT.mjs.map} +1 -1
  285. package/dist/{request-cache-BYMs-BGX.mjs → request-cache-D32LpnmI.mjs} +1 -1
  286. package/dist/{request-cache-BYMs-BGX.mjs.map → request-cache-D32LpnmI.mjs.map} +1 -1
  287. package/dist/{runner-pt6Wl-l-.mjs → runner--4wMWwKM.mjs} +217 -166
  288. package/dist/runner--4wMWwKM.mjs.map +1 -0
  289. package/dist/{runner-DM1yR5qd.d.mts → runner-BcRuXq_h.d.mts} +2 -2
  290. package/dist/{runner-DM1yR5qd.d.mts.map → runner-BcRuXq_h.d.mts.map} +1 -1
  291. package/dist/runtime.d.mts +7 -7
  292. package/dist/runtime.mjs +2 -2
  293. package/dist/{schema-B4tk0HAG.mjs → schema-CS7Eg5gh.mjs} +5 -5
  294. package/dist/{schema-B4tk0HAG.mjs.map → schema-CS7Eg5gh.mjs.map} +1 -1
  295. package/dist/{search-f-fNfwab.mjs → search-o-aQzHI1.mjs} +4 -4
  296. package/dist/{search-f-fNfwab.mjs.map → search-o-aQzHI1.mjs.map} +1 -1
  297. package/dist/{secrets-YYbTgB1w.mjs → secrets-C_ZtRos3.mjs} +2 -2
  298. package/dist/{secrets-YYbTgB1w.mjs.map → secrets-C_ZtRos3.mjs.map} +1 -1
  299. package/dist/{sections-biElLfT9.mjs → sections-DhsZ0ns9.mjs} +3 -3
  300. package/dist/{sections-biElLfT9.mjs.map → sections-DhsZ0ns9.mjs.map} +1 -1
  301. package/dist/seed/index.d.mts +2 -2
  302. package/dist/seed/index.mjs +16 -16
  303. package/dist/seo/index.d.mts +1 -1
  304. package/dist/{seo-BR39kvTF.mjs → seo-B5e6y9Wk.mjs} +2 -2
  305. package/dist/{seo-BR39kvTF.mjs.map → seo-B5e6y9Wk.mjs.map} +1 -1
  306. package/dist/{service-BhR2acnc.mjs → service-DAxg8RPR.mjs} +2 -2
  307. package/dist/{service-BhR2acnc.mjs.map → service-DAxg8RPR.mjs.map} +1 -1
  308. package/dist/{settings-b5zW1R1T.mjs → settings-B1p-gPUK.mjs} +5 -5
  309. package/dist/{settings-b5zW1R1T.mjs.map → settings-B1p-gPUK.mjs.map} +1 -1
  310. package/dist/{settings-D_NJvjgN.mjs → settings-DIsbHTRE.mjs} +3 -3
  311. package/dist/{settings-D_NJvjgN.mjs.map → settings-DIsbHTRE.mjs.map} +1 -1
  312. package/dist/{setup-complete-VoEZfasi.mjs → setup-complete-Yuv78yua.mjs} +2 -2
  313. package/dist/{setup-complete-VoEZfasi.mjs.map → setup-complete-Yuv78yua.mjs.map} +1 -1
  314. package/dist/{site-url-Cm8-sJy7.mjs → site-url-mEVmwIFi.mjs} +2 -2
  315. package/dist/{site-url-Cm8-sJy7.mjs.map → site-url-mEVmwIFi.mjs.map} +1 -1
  316. package/dist/{taxonomies-Crtzy4MT.mjs → taxonomies-BEW7S5AI.mjs} +7 -6
  317. package/dist/taxonomies-BEW7S5AI.mjs.map +1 -0
  318. package/dist/{taxonomies-Mhn9rjTQ.mjs → taxonomies-UusDXv3C.mjs} +4 -4
  319. package/dist/{taxonomies-Mhn9rjTQ.mjs.map → taxonomies-UusDXv3C.mjs.map} +1 -1
  320. package/dist/{taxonomy-DTZrIQpi.mjs → taxonomy-CdllE4oq.mjs} +3 -3
  321. package/dist/{taxonomy-DTZrIQpi.mjs.map → taxonomy-CdllE4oq.mjs.map} +1 -1
  322. package/dist/{transaction-NQj4VJ7Z.mjs → transaction-x2tJQ-A1.mjs} +1 -1
  323. package/dist/{transaction-NQj4VJ7Z.mjs.map → transaction-x2tJQ-A1.mjs.map} +1 -1
  324. package/dist/{transport-OnMNbsIA.d.mts → transport-BwQeeY2p.d.mts} +1 -1
  325. package/dist/{transport-OnMNbsIA.d.mts.map → transport-BwQeeY2p.d.mts.map} +1 -1
  326. package/dist/{types-K3MDsxpy.mjs → types-BXSUSAjt.mjs} +16 -3
  327. package/dist/{types-K3MDsxpy.mjs.map → types-BXSUSAjt.mjs.map} +1 -1
  328. package/dist/{types-D8bhH891.mjs → types-DZk_y-MU.mjs} +1 -1
  329. package/dist/{types-D8bhH891.mjs.map → types-DZk_y-MU.mjs.map} +1 -1
  330. package/dist/{types-DawhLFwy.d.mts → types-OT_Es5mp.d.mts} +26 -1
  331. package/dist/{types-DawhLFwy.d.mts.map → types-OT_Es5mp.d.mts.map} +1 -1
  332. package/dist/{types-i8_uzhMD.d.mts → types-WVmpZBJV.d.mts} +18 -3
  333. package/dist/types-WVmpZBJV.d.mts.map +1 -0
  334. package/dist/{user-DzEUl5zA.mjs → user-C0um7wrg.mjs} +18 -2
  335. package/dist/user-C0um7wrg.mjs.map +1 -0
  336. package/dist/{validate-Dy6nkNls.d.mts → validate-BPAHUSge.d.mts} +10 -2
  337. package/dist/validate-BPAHUSge.d.mts.map +1 -0
  338. package/dist/{validate-JCXcsqiY.mjs → validate-ZP9Dvg0P.mjs} +6 -3
  339. package/dist/validate-ZP9Dvg0P.mjs.map +1 -0
  340. package/dist/{validation-Bq-VyKJg.mjs → validation-CE5i4q0c.mjs} +5 -5
  341. package/dist/{validation-Bq-VyKJg.mjs.map → validation-CE5i4q0c.mjs.map} +1 -1
  342. package/dist/version-Dw0JXu45.mjs +7 -0
  343. package/dist/{version-CnS-Cr8A.mjs.map → version-Dw0JXu45.mjs.map} +1 -1
  344. package/dist/{widgets-Bap1eS1X.mjs → widgets-ClEnYQCH.mjs} +2 -2
  345. package/dist/{widgets-Bap1eS1X.mjs.map → widgets-ClEnYQCH.mjs.map} +1 -1
  346. package/dist/{zod-generator-BSDpkqSH.mjs → zod-generator-Djo_VHCt.mjs} +2 -2
  347. package/dist/{zod-generator-BSDpkqSH.mjs.map → zod-generator-Djo_VHCt.mjs.map} +1 -1
  348. package/package.json +5 -5
  349. package/src/api/handlers/content.ts +107 -8
  350. package/src/api/handlers/index.ts +2 -0
  351. package/src/api/openapi/document.ts +25 -0
  352. package/src/api/schemas/content.ts +33 -0
  353. package/src/astro/integration/index.ts +98 -0
  354. package/src/astro/integration/routes.ts +6 -0
  355. package/src/astro/integration/virtual-modules.ts +39 -0
  356. package/src/astro/integration/vite-config.ts +12 -0
  357. package/src/astro/middleware.ts +28 -0
  358. package/src/astro/routes/api/content/[collection]/[id]/discard-draft.ts +4 -2
  359. package/src/astro/routes/api/content/[collection]/[id]/publish.ts +4 -2
  360. package/src/astro/routes/api/content/[collection]/[id]/schedule.ts +8 -4
  361. package/src/astro/routes/api/content/[collection]/[id]/unpublish.ts +4 -2
  362. package/src/astro/routes/api/content/[collection]/[id].ts +4 -2
  363. package/src/astro/routes/api/content/[collection]/authors.ts +34 -0
  364. package/src/astro/types.ts +8 -1
  365. package/src/bylines/index.ts +57 -0
  366. package/src/cli/commands/export-seed.ts +28 -12
  367. package/src/components/EmDashImage.astro +22 -4
  368. package/src/components/Image.astro +20 -3
  369. package/src/database/migrations/043_content_references.ts +121 -0
  370. package/src/database/migrations/runner.ts +2 -0
  371. package/src/database/repositories/content.ts +225 -67
  372. package/src/database/repositories/index.ts +7 -0
  373. package/src/database/repositories/relation.ts +467 -0
  374. package/src/database/repositories/types.ts +31 -0
  375. package/src/database/repositories/user.ts +18 -0
  376. package/src/database/types.ts +34 -0
  377. package/src/emdash-runtime.ts +141 -42
  378. package/src/index.ts +8 -1
  379. package/src/loader.ts +67 -34
  380. package/src/media/responsive.ts +125 -0
  381. package/src/plugins/cron.ts +3 -2
  382. package/src/plugins/index.ts +5 -0
  383. package/src/plugins/scheduler/node.ts +9 -2
  384. package/src/query.ts +32 -5
  385. package/src/scheduled-publish.ts +153 -0
  386. package/src/seed/apply.ts +16 -6
  387. package/src/seed/types.ts +9 -0
  388. package/src/seed/validate.ts +15 -0
  389. package/src/taxonomies/index.ts +1 -0
  390. package/src/virtual-modules.d.ts +11 -0
  391. package/dist/api-Cs7DAACP.mjs.map +0 -1
  392. package/dist/apply-BWMV4Zmw.mjs.map +0 -1
  393. package/dist/byline-fields-BNy7Ng1U.d.mts.map +0 -1
  394. package/dist/content-CyqOmOzm.mjs.map +0 -1
  395. package/dist/cron-DZovZUnC.mjs.map +0 -1
  396. package/dist/index-CjKdMZ3U.d.mts.map +0 -1
  397. package/dist/loader-Dyx8dhFV.mjs.map +0 -1
  398. package/dist/menus-BKkxXCmd.mjs.map +0 -1
  399. package/dist/query-Ctlq1aOk.mjs.map +0 -1
  400. package/dist/redirects-C0L9JUk4.mjs.map +0 -1
  401. package/dist/runner-pt6Wl-l-.mjs.map +0 -1
  402. package/dist/taxonomies-Crtzy4MT.mjs.map +0 -1
  403. package/dist/types-i8_uzhMD.d.mts.map +0 -1
  404. package/dist/user-DzEUl5zA.mjs.map +0 -1
  405. package/dist/validate-Dy6nkNls.d.mts.map +0 -1
  406. package/dist/validate-JCXcsqiY.mjs.map +0 -1
  407. package/dist/version-CnS-Cr8A.mjs +0 -7
  408. package/src/plugins/scheduler/piggyback.ts +0 -71
@@ -1,9 +1,9 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
4
- import { i as parseQuery, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
5
- import { D as usersListQuery } from "../../../../../redirects-C0L9JUk4.mjs";
6
- import "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
4
+ import { i as parseQuery, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
5
+ import { D as usersListQuery } from "../../../../../redirects-DEygMrRO.mjs";
6
+ import "../../../../../byline-fields-51kg6Vuv.mjs";
7
7
  import "../../../../../api/schemas/index.mjs";
8
8
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
9
9
  import { Role } from "@emdash-cms/auth";
@@ -1,8 +1,8 @@
1
- import { i as runMigrations } from "../../../../runner-pt6Wl-l-.mjs";
1
+ import { i as runMigrations } from "../../../../runner--4wMWwKM.mjs";
2
2
  import "../../../../dialect-helpers-DRI5pyY3.mjs";
3
3
  import "../../../../base64-CqR-7kqF.mjs";
4
- import "../../../../types-K3MDsxpy.mjs";
5
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../error-DJOsMVSt.mjs";
4
+ import "../../../../types-BXSUSAjt.mjs";
5
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../error-RwM4dD35.mjs";
6
6
  import { t as escapeHtml } from "../../../../escape-bIyGoW5W.mjs";
7
7
  import { t as isSafeRedirect } from "../../../../redirect-Cw3JTlmj.mjs";
8
8
  import { ulid } from "ulidx";
@@ -1,6 +1,6 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
4
4
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
5
5
  import { InviteError, roleFromLevel, validateInvite } from "@emdash-cms/auth";
6
6
 
@@ -1,10 +1,10 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
5
- import { n as parseBody, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../redirects-C0L9JUk4.mjs";
7
- import { y as inviteCompleteBody } from "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
5
+ import { n as parseBody, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../redirects-DEygMrRO.mjs";
7
+ import { y as inviteCompleteBody } from "../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../api/schemas/index.mjs";
9
9
  import { n as getPublicOrigin } from "../../../../../public-url-egRHCy1m.mjs";
10
10
  import { n as validateAllowedOrigins, t as getConfiguredAllowedOrigins } from "../../../../../allowed-origins-CyYLEJkp.mjs";
@@ -1,12 +1,12 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
5
- import { n as parseBody, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../redirects-C0L9JUk4.mjs";
7
- import { b as inviteCreateBody } from "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
5
+ import { n as parseBody, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../redirects-DEygMrRO.mjs";
7
+ import { b as inviteCreateBody } from "../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../api/schemas/index.mjs";
9
- import { t as getSiteBaseUrl } from "../../../../../site-url-Cm8-sJy7.mjs";
9
+ import { t as getSiteBaseUrl } from "../../../../../site-url-mEVmwIFi.mjs";
10
10
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
11
11
  import { InviteError, Role, createInvite } from "@emdash-cms/auth";
12
12
 
@@ -1,10 +1,10 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
5
- import { n as parseBody, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../redirects-C0L9JUk4.mjs";
7
- import { x as inviteRegisterOptionsBody } from "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
5
+ import { n as parseBody, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../redirects-DEygMrRO.mjs";
7
+ import { x as inviteRegisterOptionsBody } from "../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../api/schemas/index.mjs";
9
9
  import { n as getPublicOrigin } from "../../../../../public-url-egRHCy1m.mjs";
10
10
  import { n as createChallengeStore } from "../../../../../challenge-store-DGwuCc4R.mjs";
@@ -1,6 +1,6 @@
1
1
  import "../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../types-K3MDsxpy.mjs";
3
- import { n as apiSuccess, r as handleError } from "../../../../error-DJOsMVSt.mjs";
2
+ import "../../../../types-BXSUSAjt.mjs";
3
+ import { n as apiSuccess, r as handleError } from "../../../../error-RwM4dD35.mjs";
4
4
  import { t as isSafeRedirect } from "../../../../redirect-Cw3JTlmj.mjs";
5
5
 
6
6
  //#region src/astro/routes/api/auth/logout.ts
@@ -1,14 +1,14 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
5
- import { n as parseBody, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../redirects-C0L9JUk4.mjs";
7
- import { S as magicLinkSendBody } from "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, t as apiError } from "../../../../../error-RwM4dD35.mjs";
5
+ import { n as parseBody, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../redirects-DEygMrRO.mjs";
7
+ import { S as magicLinkSendBody } from "../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../api/schemas/index.mjs";
9
9
  import { t as getTrustedProxyHeaders } from "../../../../../trusted-proxy-B4AfnoAp.mjs";
10
- import { t as getSiteBaseUrl } from "../../../../../site-url-Cm8-sJy7.mjs";
11
- import { n as getClientIp, t as checkRateLimit } from "../../../../../rate-limit-CH6W6ikK.mjs";
10
+ import { t as getSiteBaseUrl } from "../../../../../site-url-mEVmwIFi.mjs";
11
+ import { n as getClientIp, t as checkRateLimit } from "../../../../../rate-limit-ClFFUga6.mjs";
12
12
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
13
13
  import { sendMagicLink } from "@emdash-cms/auth";
14
14
 
@@ -1,6 +1,6 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { t as apiError } from "../../../../../error-DJOsMVSt.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { t as apiError } from "../../../../../error-RwM4dD35.mjs";
4
4
  import { t as isSafeRedirect } from "../../../../../redirect-Cw3JTlmj.mjs";
5
5
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
6
6
  import { MagicLinkError, verifyMagicLink } from "@emdash-cms/auth";
@@ -1,10 +1,10 @@
1
1
  import "../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../types-K3MDsxpy.mjs";
3
- import { t as UserRepository } from "../../../../user-DzEUl5zA.mjs";
4
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../error-DJOsMVSt.mjs";
5
- import { n as parseBody, t as isParseError } from "../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../redirects-C0L9JUk4.mjs";
7
- import { v as authMeActionBody } from "../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../types-BXSUSAjt.mjs";
3
+ import { t as UserRepository } from "../../../../user-C0um7wrg.mjs";
4
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../error-RwM4dD35.mjs";
5
+ import { n as parseBody, t as isParseError } from "../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../redirects-DEygMrRO.mjs";
7
+ import { v as authMeActionBody } from "../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../api/schemas/index.mjs";
9
9
 
10
10
  //#region src/astro/routes/api/auth/me.ts
@@ -1,6 +1,6 @@
1
- import { t as OptionsRepository } from "../../../../../../options-BL4X94qY.mjs";
1
+ import { t as OptionsRepository } from "../../../../../../options-BPCVnesz.mjs";
2
2
  import { n as getPublicOrigin } from "../../../../../../public-url-egRHCy1m.mjs";
3
- import { t as finalizeSetup } from "../../../../../../setup-complete-VoEZfasi.mjs";
3
+ import { t as finalizeSetup } from "../../../../../../setup-complete-Yuv78yua.mjs";
4
4
  import { t as createOAuthStateStore } from "../../../../../../oauth-state-store-BJ7YtrfD.mjs";
5
5
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
6
6
  import { OAuthError, Role, handleOAuthCallback } from "@emdash-cms/auth";
@@ -1,9 +1,9 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
4
- import { n as parseBody, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
5
- import "../../../../../redirects-C0L9JUk4.mjs";
6
- import { E as passkeyRenameBody } from "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
4
+ import { n as parseBody, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
5
+ import "../../../../../redirects-DEygMrRO.mjs";
6
+ import { E as passkeyRenameBody } from "../../../../../byline-fields-51kg6Vuv.mjs";
7
7
  import "../../../../../api/schemas/index.mjs";
8
8
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
9
9
 
@@ -1,6 +1,6 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
4
4
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
5
5
 
6
6
  //#region src/astro/routes/api/auth/passkey/index.ts
@@ -1,16 +1,16 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
5
- import { r as parseOptionalBody, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../redirects-C0L9JUk4.mjs";
7
- import { C as passkeyOptionsBody } from "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
5
+ import { r as parseOptionalBody, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../redirects-DEygMrRO.mjs";
7
+ import { C as passkeyOptionsBody } from "../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../api/schemas/index.mjs";
9
9
  import { t as getTrustedProxyHeaders } from "../../../../../trusted-proxy-B4AfnoAp.mjs";
10
10
  import { n as getPublicOrigin } from "../../../../../public-url-egRHCy1m.mjs";
11
11
  import { n as createChallengeStore, t as cleanupExpiredChallenges } from "../../../../../challenge-store-DGwuCc4R.mjs";
12
12
  import { t as getPasskeyConfig } from "../../../../../passkey-config-BDVM86Tj.mjs";
13
- import { n as getClientIp, r as rateLimitResponse, t as checkRateLimit } from "../../../../../rate-limit-CH6W6ikK.mjs";
13
+ import { n as getClientIp, r as rateLimitResponse, t as checkRateLimit } from "../../../../../rate-limit-ClFFUga6.mjs";
14
14
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
15
15
  import { generateAuthenticationOptions } from "@emdash-cms/auth/passkey";
16
16
 
@@ -1,10 +1,10 @@
1
1
  import "../../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
5
- import { r as parseOptionalBody, t as isParseError } from "../../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../../redirects-C0L9JUk4.mjs";
7
- import { w as passkeyRegisterOptionsBody } from "../../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
5
+ import { r as parseOptionalBody, t as isParseError } from "../../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../../redirects-DEygMrRO.mjs";
7
+ import { w as passkeyRegisterOptionsBody } from "../../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../../api/schemas/index.mjs";
9
9
  import { n as getPublicOrigin } from "../../../../../../public-url-egRHCy1m.mjs";
10
10
  import { n as createChallengeStore } from "../../../../../../challenge-store-DGwuCc4R.mjs";
@@ -1,10 +1,10 @@
1
1
  import "../../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
5
- import { n as parseBody, t as isParseError } from "../../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../../redirects-C0L9JUk4.mjs";
7
- import { T as passkeyRegisterVerifyBody } from "../../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
5
+ import { n as parseBody, t as isParseError } from "../../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../../redirects-DEygMrRO.mjs";
7
+ import { T as passkeyRegisterVerifyBody } from "../../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../../api/schemas/index.mjs";
9
9
  import { n as getPublicOrigin } from "../../../../../../public-url-egRHCy1m.mjs";
10
10
  import { n as validateAllowedOrigins, t as getConfiguredAllowedOrigins } from "../../../../../../allowed-origins-CyYLEJkp.mjs";
@@ -1,10 +1,10 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
5
- import { n as parseBody, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../redirects-C0L9JUk4.mjs";
7
- import { D as passkeyVerifyBody } from "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
5
+ import { n as parseBody, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../redirects-DEygMrRO.mjs";
7
+ import { D as passkeyVerifyBody } from "../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../api/schemas/index.mjs";
9
9
  import { n as getPublicOrigin } from "../../../../../public-url-egRHCy1m.mjs";
10
10
  import { n as validateAllowedOrigins, t as getConfiguredAllowedOrigins } from "../../../../../allowed-origins-CyYLEJkp.mjs";
@@ -1,10 +1,10 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
5
- import { n as parseBody, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../redirects-C0L9JUk4.mjs";
7
- import { O as signupCompleteBody } from "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
5
+ import { n as parseBody, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../redirects-DEygMrRO.mjs";
7
+ import { O as signupCompleteBody } from "../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../api/schemas/index.mjs";
9
9
  import { n as getPublicOrigin } from "../../../../../public-url-egRHCy1m.mjs";
10
10
  import { n as validateAllowedOrigins, t as getConfiguredAllowedOrigins } from "../../../../../allowed-origins-CyYLEJkp.mjs";
@@ -1,14 +1,14 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { t as OptionsRepository } from "../../../../../options-BL4X94qY.mjs";
4
- import { n as apiSuccess, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
5
- import { n as parseBody, t as isParseError } from "../../../../../parse-BBkFmLVr.mjs";
6
- import "../../../../../redirects-C0L9JUk4.mjs";
7
- import { k as signupRequestBody } from "../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { t as OptionsRepository } from "../../../../../options-BPCVnesz.mjs";
4
+ import { n as apiSuccess, t as apiError } from "../../../../../error-RwM4dD35.mjs";
5
+ import { n as parseBody, t as isParseError } from "../../../../../parse-CrGndy1A.mjs";
6
+ import "../../../../../redirects-DEygMrRO.mjs";
7
+ import { k as signupRequestBody } from "../../../../../byline-fields-51kg6Vuv.mjs";
8
8
  import "../../../../../api/schemas/index.mjs";
9
9
  import { t as getTrustedProxyHeaders } from "../../../../../trusted-proxy-B4AfnoAp.mjs";
10
- import { t as getSiteBaseUrl } from "../../../../../site-url-Cm8-sJy7.mjs";
11
- import { n as getClientIp, t as checkRateLimit } from "../../../../../rate-limit-CH6W6ikK.mjs";
10
+ import { t as getSiteBaseUrl } from "../../../../../site-url-mEVmwIFi.mjs";
11
+ import { n as getClientIp, t as checkRateLimit } from "../../../../../rate-limit-ClFFUga6.mjs";
12
12
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
13
13
  import { requestSignup } from "@emdash-cms/auth";
14
14
 
@@ -1,6 +1,6 @@
1
1
  import "../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../types-K3MDsxpy.mjs";
3
- import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-DJOsMVSt.mjs";
2
+ import "../../../../../types-BXSUSAjt.mjs";
3
+ import { n as apiSuccess, r as handleError, t as apiError } from "../../../../../error-RwM4dD35.mjs";
4
4
  import { createKyselyAdapter } from "@emdash-cms/auth/adapters/kysely";
5
5
  import { SignupError, roleFromLevel, validateSignupToken } from "@emdash-cms/auth";
6
6
 
@@ -1,18 +1,18 @@
1
1
  import { t as validateIdentifier } from "../../../../../../validate-VPnKoIzW.mjs";
2
2
  import "../../../../../../base64-CqR-7kqF.mjs";
3
- import "../../../../../../types-K3MDsxpy.mjs";
4
- import { t as CommentRepository } from "../../../../../../comment-C4jVbCM8.mjs";
5
- import "../../../../../../options-BL4X94qY.mjs";
6
- import { a as unwrapResult, i as requireDb, n as apiSuccess, r as handleError, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
7
- import { n as parseBody, t as isParseError } from "../../../../../../parse-BBkFmLVr.mjs";
8
- import { yt as createCommentBody } from "../../../../../../redirects-C0L9JUk4.mjs";
9
- import "../../../../../../byline-fields-Dr-xcb6S.mjs";
3
+ import "../../../../../../types-BXSUSAjt.mjs";
4
+ import { t as CommentRepository } from "../../../../../../comment-sqQxNpN3.mjs";
5
+ import "../../../../../../options-BPCVnesz.mjs";
6
+ import { a as unwrapResult, i as requireDb, n as apiSuccess, r as handleError, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
7
+ import { n as parseBody, t as isParseError } from "../../../../../../parse-CrGndy1A.mjs";
8
+ import { yt as createCommentBody } from "../../../../../../redirects-DEygMrRO.mjs";
9
+ import "../../../../../../byline-fields-51kg6Vuv.mjs";
10
10
  import "../../../../../../api/schemas/index.mjs";
11
11
  import { t as extractRequestMeta } from "../../../../../../request-meta-7ByVLxB-.mjs";
12
- import { i as resolveSecretsCached } from "../../../../../../secrets-YYbTgB1w.mjs";
13
- import { c as hashIp, s as handleCommentList, t as checkRateLimit } from "../../../../../../comments-BTAbC0Ek.mjs";
14
- import { t as getSiteBaseUrl } from "../../../../../../site-url-Cm8-sJy7.mjs";
15
- import { i as sendCommentNotification, t as createComment } from "../../../../../../service-BhR2acnc.mjs";
12
+ import { i as resolveSecretsCached } from "../../../../../../secrets-C_ZtRos3.mjs";
13
+ import { c as hashIp, s as handleCommentList, t as checkRateLimit } from "../../../../../../comments-CJ0RZsYR.mjs";
14
+ import { t as getSiteBaseUrl } from "../../../../../../site-url-mEVmwIFi.mjs";
15
+ import { i as sendCommentNotification, t as createComment } from "../../../../../../service-DAxg8RPR.mjs";
16
16
 
17
17
  //#region src/astro/routes/api/comments/[collection]/[contentId]/index.ts
18
18
  const prerender = false;
@@ -1,7 +1,7 @@
1
1
  import "../../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../../types-K3MDsxpy.mjs";
3
- import { a as unwrapResult, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
4
- import { n as requirePerm } from "../../../../../../authorize-CotM4Yiu.mjs";
2
+ import "../../../../../../types-BXSUSAjt.mjs";
3
+ import { a as unwrapResult, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
4
+ import { n as requirePerm } from "../../../../../../authorize-C_8t2KGa.mjs";
5
5
 
6
6
  //#region src/astro/routes/api/content/[collection]/[id]/compare.ts
7
7
  const prerender = false;
@@ -1,16 +1,17 @@
1
1
  import "../../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../../types-K3MDsxpy.mjs";
3
- import { a as unwrapResult, o as mapErrorStatus, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
4
- import { t as requireOwnerPerm } from "../../../../../../authorize-CotM4Yiu.mjs";
2
+ import "../../../../../../types-BXSUSAjt.mjs";
3
+ import { a as unwrapResult, o as mapErrorStatus, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
4
+ import { t as requireOwnerPerm } from "../../../../../../authorize-C_8t2KGa.mjs";
5
5
 
6
6
  //#region src/astro/routes/api/content/[collection]/[id]/discard-draft.ts
7
7
  const prerender = false;
8
- const POST = async ({ params, locals, cache }) => {
8
+ const POST = async ({ params, locals, url, cache }) => {
9
9
  const { emdash, user } = locals;
10
10
  const collection = params.collection;
11
11
  const id = params.id;
12
12
  if (!emdash?.handleContentDiscardDraft || !emdash?.handleContentGet) return apiError("NOT_CONFIGURED", "EmDash is not initialized", 500);
13
- const existing = await emdash.handleContentGet(collection, id);
13
+ const locale = url.searchParams.get("locale") || void 0;
14
+ const existing = await emdash.handleContentGet(collection, id, locale);
14
15
  if (!existing.success) return apiError(existing.error?.code ?? "UNKNOWN_ERROR", existing.error?.message ?? "Unknown error", mapErrorStatus(existing.error?.code));
15
16
  const existingData = existing.data && typeof existing.data === "object" ? existing.data : void 0;
16
17
  const existingItem = existingData?.item && typeof existingData.item === "object" ? existingData.item : existingData;
@@ -1 +1 @@
1
- {"version":3,"file":"discard-draft.mjs","names":[],"sources":["../../../../../../../src/astro/routes/api/content/[collection]/[id]/discard-draft.ts"],"sourcesContent":["/**\n * Discard draft changes - reverts to live version\n *\n * POST /_emdash/api/content/{collection}/{id}/discard-draft\n */\n\nimport type { APIRoute } from \"astro\";\n\nimport { requireOwnerPerm } from \"#api/authorize.js\";\nimport { apiError, mapErrorStatus, unwrapResult } from \"#api/error.js\";\n\nexport const prerender = false;\n\nexport const POST: APIRoute = async ({ params, locals, cache }) => {\n\tconst { emdash, user } = locals;\n\tconst collection = params.collection!;\n\tconst id = params.id!;\n\n\tif (!emdash?.handleContentDiscardDraft || !emdash?.handleContentGet) {\n\t\treturn apiError(\"NOT_CONFIGURED\", \"EmDash is not initialized\", 500);\n\t}\n\n\t// Fetch item to check ownership\n\tconst existing = await emdash.handleContentGet(collection, id);\n\tif (!existing.success) {\n\t\treturn apiError(\n\t\t\texisting.error?.code ?? \"UNKNOWN_ERROR\",\n\t\t\texisting.error?.message ?? \"Unknown error\",\n\t\t\tmapErrorStatus(existing.error?.code),\n\t\t);\n\t}\n\tconst existingData =\n\t\texisting.data && typeof existing.data === \"object\"\n\t\t\t? // eslint-disable-next-line typescript/no-unsafe-type-assertion -- handler returns unknown data; narrowed by typeof check above\n\t\t\t\t(existing.data as Record<string, unknown>)\n\t\t\t: undefined;\n\t// Handler returns { item, _rev } — extract the item for ownership check\n\tconst existingItem =\n\t\texistingData?.item && typeof existingData.item === \"object\"\n\t\t\t? // eslint-disable-next-line typescript/no-unsafe-type-assertion -- narrowed by typeof check above\n\t\t\t\t(existingData.item as Record<string, unknown>)\n\t\t\t: existingData;\n\tconst authorId = typeof existingItem?.authorId === \"string\" ? existingItem.authorId : \"\";\n\tconst denied = requireOwnerPerm(user, authorId, \"content:edit_own\", \"content:edit_any\");\n\tif (denied) return denied;\n\n\tconst resolvedId = typeof existingItem?.id === \"string\" ? existingItem.id : id;\n\n\tconst result = await emdash.handleContentDiscardDraft(collection, resolvedId);\n\n\tif (!result.success) return unwrapResult(result);\n\n\tif (cache?.enabled) await cache.invalidate({ tags: [collection, resolvedId] });\n\n\treturn unwrapResult(result);\n};\n"],"mappings":";;;;;;AAWA,MAAa,YAAY;AAEzB,MAAa,OAAiB,OAAO,EAAE,QAAQ,QAAQ,YAAY;CAClE,MAAM,EAAE,QAAQ,SAAS;CACzB,MAAM,aAAa,OAAO;CAC1B,MAAM,KAAK,OAAO;AAElB,KAAI,CAAC,QAAQ,6BAA6B,CAAC,QAAQ,iBAClD,QAAO,SAAS,kBAAkB,6BAA6B,IAAI;CAIpE,MAAM,WAAW,MAAM,OAAO,iBAAiB,YAAY,GAAG;AAC9D,KAAI,CAAC,SAAS,QACb,QAAO,SACN,SAAS,OAAO,QAAQ,iBACxB,SAAS,OAAO,WAAW,iBAC3B,eAAe,SAAS,OAAO,KAAK,CACpC;CAEF,MAAM,eACL,SAAS,QAAQ,OAAO,SAAS,SAAS,WAEvC,SAAS,OACT;CAEJ,MAAM,eACL,cAAc,QAAQ,OAAO,aAAa,SAAS,WAEhD,aAAa,OACb;CAEJ,MAAM,SAAS,iBAAiB,MADf,OAAO,cAAc,aAAa,WAAW,aAAa,WAAW,IACtC,oBAAoB,mBAAmB;AACvF,KAAI,OAAQ,QAAO;CAEnB,MAAM,aAAa,OAAO,cAAc,OAAO,WAAW,aAAa,KAAK;CAE5E,MAAM,SAAS,MAAM,OAAO,0BAA0B,YAAY,WAAW;AAE7E,KAAI,CAAC,OAAO,QAAS,QAAO,aAAa,OAAO;AAEhD,KAAI,OAAO,QAAS,OAAM,MAAM,WAAW,EAAE,MAAM,CAAC,YAAY,WAAW,EAAE,CAAC;AAE9E,QAAO,aAAa,OAAO"}
1
+ {"version":3,"file":"discard-draft.mjs","names":[],"sources":["../../../../../../../src/astro/routes/api/content/[collection]/[id]/discard-draft.ts"],"sourcesContent":["/**\n * Discard draft changes - reverts to live version\n *\n * POST /_emdash/api/content/{collection}/{id}/discard-draft\n */\n\nimport type { APIRoute } from \"astro\";\n\nimport { requireOwnerPerm } from \"#api/authorize.js\";\nimport { apiError, mapErrorStatus, unwrapResult } from \"#api/error.js\";\n\nexport const prerender = false;\n\nexport const POST: APIRoute = async ({ params, locals, url, cache }) => {\n\tconst { emdash, user } = locals;\n\tconst collection = params.collection!;\n\tconst id = params.id!;\n\n\tif (!emdash?.handleContentDiscardDraft || !emdash?.handleContentGet) {\n\t\treturn apiError(\"NOT_CONFIGURED\", \"EmDash is not initialized\", 500);\n\t}\n\n\tconst locale = url.searchParams.get(\"locale\") || undefined;\n\n\t// Fetch item to check ownership\n\tconst existing = await emdash.handleContentGet(collection, id, locale);\n\tif (!existing.success) {\n\t\treturn apiError(\n\t\t\texisting.error?.code ?? \"UNKNOWN_ERROR\",\n\t\t\texisting.error?.message ?? \"Unknown error\",\n\t\t\tmapErrorStatus(existing.error?.code),\n\t\t);\n\t}\n\tconst existingData =\n\t\texisting.data && typeof existing.data === \"object\"\n\t\t\t? // eslint-disable-next-line typescript/no-unsafe-type-assertion -- handler returns unknown data; narrowed by typeof check above\n\t\t\t\t(existing.data as Record<string, unknown>)\n\t\t\t: undefined;\n\t// Handler returns { item, _rev } — extract the item for ownership check\n\tconst existingItem =\n\t\texistingData?.item && typeof existingData.item === \"object\"\n\t\t\t? // eslint-disable-next-line typescript/no-unsafe-type-assertion -- narrowed by typeof check above\n\t\t\t\t(existingData.item as Record<string, unknown>)\n\t\t\t: existingData;\n\tconst authorId = typeof existingItem?.authorId === \"string\" ? existingItem.authorId : \"\";\n\tconst denied = requireOwnerPerm(user, authorId, \"content:edit_own\", \"content:edit_any\");\n\tif (denied) return denied;\n\n\tconst resolvedId = typeof existingItem?.id === \"string\" ? existingItem.id : id;\n\n\tconst result = await emdash.handleContentDiscardDraft(collection, resolvedId);\n\n\tif (!result.success) return unwrapResult(result);\n\n\tif (cache?.enabled) await cache.invalidate({ tags: [collection, resolvedId] });\n\n\treturn unwrapResult(result);\n};\n"],"mappings":";;;;;;AAWA,MAAa,YAAY;AAEzB,MAAa,OAAiB,OAAO,EAAE,QAAQ,QAAQ,KAAK,YAAY;CACvE,MAAM,EAAE,QAAQ,SAAS;CACzB,MAAM,aAAa,OAAO;CAC1B,MAAM,KAAK,OAAO;AAElB,KAAI,CAAC,QAAQ,6BAA6B,CAAC,QAAQ,iBAClD,QAAO,SAAS,kBAAkB,6BAA6B,IAAI;CAGpE,MAAM,SAAS,IAAI,aAAa,IAAI,SAAS,IAAI;CAGjD,MAAM,WAAW,MAAM,OAAO,iBAAiB,YAAY,IAAI,OAAO;AACtE,KAAI,CAAC,SAAS,QACb,QAAO,SACN,SAAS,OAAO,QAAQ,iBACxB,SAAS,OAAO,WAAW,iBAC3B,eAAe,SAAS,OAAO,KAAK,CACpC;CAEF,MAAM,eACL,SAAS,QAAQ,OAAO,SAAS,SAAS,WAEvC,SAAS,OACT;CAEJ,MAAM,eACL,cAAc,QAAQ,OAAO,aAAa,SAAS,WAEhD,aAAa,OACb;CAEJ,MAAM,SAAS,iBAAiB,MADf,OAAO,cAAc,aAAa,WAAW,aAAa,WAAW,IACtC,oBAAoB,mBAAmB;AACvF,KAAI,OAAQ,QAAO;CAEnB,MAAM,aAAa,OAAO,cAAc,OAAO,WAAW,aAAa,KAAK;CAE5E,MAAM,SAAS,MAAM,OAAO,0BAA0B,YAAY,WAAW;AAE7E,KAAI,CAAC,OAAO,QAAS,QAAO,aAAa,OAAO;AAEhD,KAAI,OAAO,QAAS,OAAM,MAAM,WAAW,EAAE,MAAM,CAAC,YAAY,WAAW,EAAE,CAAC;AAE9E,QAAO,aAAa,OAAO"}
@@ -1,7 +1,7 @@
1
1
  import "../../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../../types-K3MDsxpy.mjs";
3
- import { a as unwrapResult, o as mapErrorStatus, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
4
- import { n as requirePerm, t as requireOwnerPerm } from "../../../../../../authorize-CotM4Yiu.mjs";
2
+ import "../../../../../../types-BXSUSAjt.mjs";
3
+ import { a as unwrapResult, o as mapErrorStatus, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
4
+ import { n as requirePerm, t as requireOwnerPerm } from "../../../../../../authorize-C_8t2KGa.mjs";
5
5
 
6
6
  //#region src/astro/routes/api/content/[collection]/[id]/duplicate.ts
7
7
  const prerender = false;
@@ -1,7 +1,7 @@
1
1
  import "../../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../../types-K3MDsxpy.mjs";
3
- import { a as unwrapResult, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
4
- import { n as requirePerm } from "../../../../../../authorize-CotM4Yiu.mjs";
2
+ import "../../../../../../types-BXSUSAjt.mjs";
3
+ import { a as unwrapResult, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
4
+ import { n as requirePerm } from "../../../../../../authorize-C_8t2KGa.mjs";
5
5
 
6
6
  //#region src/astro/routes/api/content/[collection]/[id]/permanent.ts
7
7
  const prerender = false;
@@ -1,16 +1,16 @@
1
1
  import { n as getI18nConfig } from "../../../../../../config-CVssduLe.mjs";
2
2
  import "../../../../../../base64-CqR-7kqF.mjs";
3
- import "../../../../../../types-K3MDsxpy.mjs";
4
- import "../../../../../../options-BL4X94qY.mjs";
5
- import { a as unwrapResult, n as apiSuccess, r as handleError, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
6
- import { r as parseOptionalBody, t as isParseError } from "../../../../../../parse-BBkFmLVr.mjs";
7
- import { rn as contentPreviewUrlBody } from "../../../../../../redirects-C0L9JUk4.mjs";
8
- import "../../../../../../byline-fields-Dr-xcb6S.mjs";
3
+ import "../../../../../../types-BXSUSAjt.mjs";
4
+ import "../../../../../../options-BPCVnesz.mjs";
5
+ import { a as unwrapResult, n as apiSuccess, r as handleError, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
6
+ import { r as parseOptionalBody, t as isParseError } from "../../../../../../parse-CrGndy1A.mjs";
7
+ import { an as contentPreviewUrlBody } from "../../../../../../redirects-DEygMrRO.mjs";
8
+ import "../../../../../../byline-fields-51kg6Vuv.mjs";
9
9
  import "../../../../../../api/schemas/index.mjs";
10
10
  import "../../../../../../tokens-Bx2afeT-.mjs";
11
11
  import { i as getPreviewUrl } from "../../../../../../preview-BfuRkVKW.mjs";
12
- import { i as resolveSecretsCached } from "../../../../../../secrets-YYbTgB1w.mjs";
13
- import { n as requirePerm } from "../../../../../../authorize-CotM4Yiu.mjs";
12
+ import { i as resolveSecretsCached } from "../../../../../../secrets-C_ZtRos3.mjs";
13
+ import { n as requirePerm } from "../../../../../../authorize-C_8t2KGa.mjs";
14
14
 
15
15
  //#region src/astro/routes/api/content/[collection]/[id]/preview-url.ts
16
16
  const prerender = false;
@@ -1,11 +1,11 @@
1
1
  import "../../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../../types-K3MDsxpy.mjs";
3
- import { a as unwrapResult, o as mapErrorStatus, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
4
- import { r as parseOptionalBody, t as isParseError } from "../../../../../../parse-BBkFmLVr.mjs";
5
- import { in as contentPublishBody } from "../../../../../../redirects-C0L9JUk4.mjs";
6
- import "../../../../../../byline-fields-Dr-xcb6S.mjs";
2
+ import "../../../../../../types-BXSUSAjt.mjs";
3
+ import { a as unwrapResult, o as mapErrorStatus, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
4
+ import { r as parseOptionalBody, t as isParseError } from "../../../../../../parse-CrGndy1A.mjs";
5
+ import { on as contentPublishBody } from "../../../../../../redirects-DEygMrRO.mjs";
6
+ import "../../../../../../byline-fields-51kg6Vuv.mjs";
7
7
  import "../../../../../../api/schemas/index.mjs";
8
- import { t as requireOwnerPerm } from "../../../../../../authorize-CotM4Yiu.mjs";
8
+ import { t as requireOwnerPerm } from "../../../../../../authorize-C_8t2KGa.mjs";
9
9
  import { hasPermission } from "@emdash-cms/auth";
10
10
 
11
11
  //#region src/astro/routes/api/content/[collection]/[id]/publish.ts
@@ -21,14 +21,15 @@ import { hasPermission } from "@emdash-cms/auth";
21
21
  * falls back to the current time on first publish.
22
22
  */
23
23
  const prerender = false;
24
- const POST = async ({ params, request, locals, cache }) => {
24
+ const POST = async ({ params, request, locals, url, cache }) => {
25
25
  const { emdash, user } = locals;
26
26
  const collection = params.collection;
27
27
  const id = params.id;
28
28
  if (!emdash?.handleContentPublish || !emdash?.handleContentGet) return apiError("NOT_CONFIGURED", "EmDash is not initialized", 500);
29
29
  const body = await parseOptionalBody(request, contentPublishBody, {});
30
30
  if (isParseError(body)) return body;
31
- const existing = await emdash.handleContentGet(collection, id);
31
+ const locale = url.searchParams.get("locale") || void 0;
32
+ const existing = await emdash.handleContentGet(collection, id, locale);
32
33
  if (!existing.success) return apiError(existing.error?.code ?? "UNKNOWN_ERROR", existing.error?.message ?? "Unknown error", mapErrorStatus(existing.error?.code));
33
34
  const existingData = existing.data && typeof existing.data === "object" ? existing.data : void 0;
34
35
  const existingItem = existingData?.item && typeof existingData.item === "object" ? existingData.item : existingData;
@@ -1 +1 @@
1
- {"version":3,"file":"publish.mjs","names":[],"sources":["../../../../../../../src/astro/routes/api/content/[collection]/[id]/publish.ts"],"sourcesContent":["/**\n * Publish content - promotes draft to live\n *\n * POST /_emdash/api/content/{collection}/{id}/publish\n *\n * Optional JSON body: { publishedAt?: string }\n * publishedAt — ISO 8601 datetime to backdate the publish (e.g. when\n * migrating content). Writing publishedAt requires content:publish_any.\n * Without it, the existing published_at is preserved on re-publish and\n * falls back to the current time on first publish.\n */\n\nimport { hasPermission } from \"@emdash-cms/auth\";\nimport type { APIRoute } from \"astro\";\n\nimport { requireOwnerPerm } from \"#api/authorize.js\";\nimport { apiError, mapErrorStatus, unwrapResult } from \"#api/error.js\";\nimport { isParseError, parseOptionalBody } from \"#api/parse.js\";\nimport { contentPublishBody } from \"#api/schemas.js\";\n\nexport const prerender = false;\n\nexport const POST: APIRoute = async ({ params, request, locals, cache }) => {\n\tconst { emdash, user } = locals;\n\tconst collection = params.collection!;\n\tconst id = params.id!;\n\n\tif (!emdash?.handleContentPublish || !emdash?.handleContentGet) {\n\t\treturn apiError(\"NOT_CONFIGURED\", \"EmDash is not initialized\", 500);\n\t}\n\n\t// Body is optional — empty body means use the legacy behavior (preserve\n\t// or default published_at). Pass `publishedAt` to backdate.\n\tconst body = await parseOptionalBody(request, contentPublishBody, {});\n\tif (isParseError(body)) return body;\n\n\t// Fetch item to check ownership\n\tconst existing = await emdash.handleContentGet(collection, id);\n\tif (!existing.success) {\n\t\treturn apiError(\n\t\t\texisting.error?.code ?? \"UNKNOWN_ERROR\",\n\t\t\texisting.error?.message ?? \"Unknown error\",\n\t\t\tmapErrorStatus(existing.error?.code),\n\t\t);\n\t}\n\n\tconst existingData =\n\t\texisting.data && typeof existing.data === \"object\"\n\t\t\t? // eslint-disable-next-line typescript/no-unsafe-type-assertion -- handler returns unknown data; narrowed by typeof check above\n\t\t\t\t(existing.data as Record<string, unknown>)\n\t\t\t: undefined;\n\tconst existingItem =\n\t\texistingData?.item && typeof existingData.item === \"object\"\n\t\t\t? // eslint-disable-next-line typescript/no-unsafe-type-assertion -- narrowed by typeof check above\n\t\t\t\t(existingData.item as Record<string, unknown>)\n\t\t\t: existingData;\n\tconst authorId = typeof existingItem?.authorId === \"string\" ? existingItem.authorId : \"\";\n\tconst denied = requireOwnerPerm(user, authorId, \"content:publish_own\", \"content:publish_any\");\n\tif (denied) return denied;\n\n\t// Schema narrows `publishedAt` to `string | undefined`; null is rejected\n\t// at the schema layer (publish has no semantic meaning for \"clear\").\n\tconst publishedAt = body?.publishedAt;\n\n\t// Backdating overwrites historical record — gate behind publish_any\n\t// regardless of ownership.\n\tif (publishedAt !== undefined && !hasPermission(user, \"content:publish_any\")) {\n\t\treturn apiError(\n\t\t\t\"FORBIDDEN\",\n\t\t\t\"Setting publishedAt requires content:publish_any permission\",\n\t\t\t403,\n\t\t);\n\t}\n\n\tconst resolvedId = typeof existingItem?.id === \"string\" ? existingItem.id : id;\n\n\tconst result = await emdash.handleContentPublish(collection, resolvedId, {\n\t\tpublishedAt,\n\t});\n\n\tif (!result.success) return unwrapResult(result);\n\n\tif (cache?.enabled) await cache.invalidate({ tags: [collection, resolvedId] });\n\n\treturn unwrapResult(result);\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAoBA,MAAa,YAAY;AAEzB,MAAa,OAAiB,OAAO,EAAE,QAAQ,SAAS,QAAQ,YAAY;CAC3E,MAAM,EAAE,QAAQ,SAAS;CACzB,MAAM,aAAa,OAAO;CAC1B,MAAM,KAAK,OAAO;AAElB,KAAI,CAAC,QAAQ,wBAAwB,CAAC,QAAQ,iBAC7C,QAAO,SAAS,kBAAkB,6BAA6B,IAAI;CAKpE,MAAM,OAAO,MAAM,kBAAkB,SAAS,oBAAoB,EAAE,CAAC;AACrE,KAAI,aAAa,KAAK,CAAE,QAAO;CAG/B,MAAM,WAAW,MAAM,OAAO,iBAAiB,YAAY,GAAG;AAC9D,KAAI,CAAC,SAAS,QACb,QAAO,SACN,SAAS,OAAO,QAAQ,iBACxB,SAAS,OAAO,WAAW,iBAC3B,eAAe,SAAS,OAAO,KAAK,CACpC;CAGF,MAAM,eACL,SAAS,QAAQ,OAAO,SAAS,SAAS,WAEvC,SAAS,OACT;CACJ,MAAM,eACL,cAAc,QAAQ,OAAO,aAAa,SAAS,WAEhD,aAAa,OACb;CAEJ,MAAM,SAAS,iBAAiB,MADf,OAAO,cAAc,aAAa,WAAW,aAAa,WAAW,IACtC,uBAAuB,sBAAsB;AAC7F,KAAI,OAAQ,QAAO;CAInB,MAAM,cAAc,MAAM;AAI1B,KAAI,gBAAgB,UAAa,CAAC,cAAc,MAAM,sBAAsB,CAC3E,QAAO,SACN,aACA,+DACA,IACA;CAGF,MAAM,aAAa,OAAO,cAAc,OAAO,WAAW,aAAa,KAAK;CAE5E,MAAM,SAAS,MAAM,OAAO,qBAAqB,YAAY,YAAY,EACxE,aACA,CAAC;AAEF,KAAI,CAAC,OAAO,QAAS,QAAO,aAAa,OAAO;AAEhD,KAAI,OAAO,QAAS,OAAM,MAAM,WAAW,EAAE,MAAM,CAAC,YAAY,WAAW,EAAE,CAAC;AAE9E,QAAO,aAAa,OAAO"}
1
+ {"version":3,"file":"publish.mjs","names":[],"sources":["../../../../../../../src/astro/routes/api/content/[collection]/[id]/publish.ts"],"sourcesContent":["/**\n * Publish content - promotes draft to live\n *\n * POST /_emdash/api/content/{collection}/{id}/publish\n *\n * Optional JSON body: { publishedAt?: string }\n * publishedAt — ISO 8601 datetime to backdate the publish (e.g. when\n * migrating content). Writing publishedAt requires content:publish_any.\n * Without it, the existing published_at is preserved on re-publish and\n * falls back to the current time on first publish.\n */\n\nimport { hasPermission } from \"@emdash-cms/auth\";\nimport type { APIRoute } from \"astro\";\n\nimport { requireOwnerPerm } from \"#api/authorize.js\";\nimport { apiError, mapErrorStatus, unwrapResult } from \"#api/error.js\";\nimport { isParseError, parseOptionalBody } from \"#api/parse.js\";\nimport { contentPublishBody } from \"#api/schemas.js\";\n\nexport const prerender = false;\n\nexport const POST: APIRoute = async ({ params, request, locals, url, cache }) => {\n\tconst { emdash, user } = locals;\n\tconst collection = params.collection!;\n\tconst id = params.id!;\n\n\tif (!emdash?.handleContentPublish || !emdash?.handleContentGet) {\n\t\treturn apiError(\"NOT_CONFIGURED\", \"EmDash is not initialized\", 500);\n\t}\n\n\t// Body is optional — empty body means use the legacy behavior (preserve\n\t// or default published_at). Pass `publishedAt` to backdate.\n\tconst body = await parseOptionalBody(request, contentPublishBody, {});\n\tif (isParseError(body)) return body;\n\n\tconst locale = url.searchParams.get(\"locale\") || undefined;\n\n\t// Fetch item to check ownership\n\tconst existing = await emdash.handleContentGet(collection, id, locale);\n\tif (!existing.success) {\n\t\treturn apiError(\n\t\t\texisting.error?.code ?? \"UNKNOWN_ERROR\",\n\t\t\texisting.error?.message ?? \"Unknown error\",\n\t\t\tmapErrorStatus(existing.error?.code),\n\t\t);\n\t}\n\n\tconst existingData =\n\t\texisting.data && typeof existing.data === \"object\"\n\t\t\t? // eslint-disable-next-line typescript/no-unsafe-type-assertion -- handler returns unknown data; narrowed by typeof check above\n\t\t\t\t(existing.data as Record<string, unknown>)\n\t\t\t: undefined;\n\tconst existingItem =\n\t\texistingData?.item && typeof existingData.item === \"object\"\n\t\t\t? // eslint-disable-next-line typescript/no-unsafe-type-assertion -- narrowed by typeof check above\n\t\t\t\t(existingData.item as Record<string, unknown>)\n\t\t\t: existingData;\n\tconst authorId = typeof existingItem?.authorId === \"string\" ? existingItem.authorId : \"\";\n\tconst denied = requireOwnerPerm(user, authorId, \"content:publish_own\", \"content:publish_any\");\n\tif (denied) return denied;\n\n\t// Schema narrows `publishedAt` to `string | undefined`; null is rejected\n\t// at the schema layer (publish has no semantic meaning for \"clear\").\n\tconst publishedAt = body?.publishedAt;\n\n\t// Backdating overwrites historical record — gate behind publish_any\n\t// regardless of ownership.\n\tif (publishedAt !== undefined && !hasPermission(user, \"content:publish_any\")) {\n\t\treturn apiError(\n\t\t\t\"FORBIDDEN\",\n\t\t\t\"Setting publishedAt requires content:publish_any permission\",\n\t\t\t403,\n\t\t);\n\t}\n\n\tconst resolvedId = typeof existingItem?.id === \"string\" ? existingItem.id : id;\n\n\tconst result = await emdash.handleContentPublish(collection, resolvedId, {\n\t\tpublishedAt,\n\t});\n\n\tif (!result.success) return unwrapResult(result);\n\n\tif (cache?.enabled) await cache.invalidate({ tags: [collection, resolvedId] });\n\n\treturn unwrapResult(result);\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAoBA,MAAa,YAAY;AAEzB,MAAa,OAAiB,OAAO,EAAE,QAAQ,SAAS,QAAQ,KAAK,YAAY;CAChF,MAAM,EAAE,QAAQ,SAAS;CACzB,MAAM,aAAa,OAAO;CAC1B,MAAM,KAAK,OAAO;AAElB,KAAI,CAAC,QAAQ,wBAAwB,CAAC,QAAQ,iBAC7C,QAAO,SAAS,kBAAkB,6BAA6B,IAAI;CAKpE,MAAM,OAAO,MAAM,kBAAkB,SAAS,oBAAoB,EAAE,CAAC;AACrE,KAAI,aAAa,KAAK,CAAE,QAAO;CAE/B,MAAM,SAAS,IAAI,aAAa,IAAI,SAAS,IAAI;CAGjD,MAAM,WAAW,MAAM,OAAO,iBAAiB,YAAY,IAAI,OAAO;AACtE,KAAI,CAAC,SAAS,QACb,QAAO,SACN,SAAS,OAAO,QAAQ,iBACxB,SAAS,OAAO,WAAW,iBAC3B,eAAe,SAAS,OAAO,KAAK,CACpC;CAGF,MAAM,eACL,SAAS,QAAQ,OAAO,SAAS,SAAS,WAEvC,SAAS,OACT;CACJ,MAAM,eACL,cAAc,QAAQ,OAAO,aAAa,SAAS,WAEhD,aAAa,OACb;CAEJ,MAAM,SAAS,iBAAiB,MADf,OAAO,cAAc,aAAa,WAAW,aAAa,WAAW,IACtC,uBAAuB,sBAAsB;AAC7F,KAAI,OAAQ,QAAO;CAInB,MAAM,cAAc,MAAM;AAI1B,KAAI,gBAAgB,UAAa,CAAC,cAAc,MAAM,sBAAsB,CAC3E,QAAO,SACN,aACA,+DACA,IACA;CAGF,MAAM,aAAa,OAAO,cAAc,OAAO,WAAW,aAAa,KAAK;CAE5E,MAAM,SAAS,MAAM,OAAO,qBAAqB,YAAY,YAAY,EACxE,aACA,CAAC;AAEF,KAAI,CAAC,OAAO,QAAS,QAAO,aAAa,OAAO;AAEhD,KAAI,OAAO,QAAS,OAAM,MAAM,WAAW,EAAE,MAAM,CAAC,YAAY,WAAW,EAAE,CAAC;AAE9E,QAAO,aAAa,OAAO"}
@@ -1,7 +1,7 @@
1
1
  import "../../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../../types-K3MDsxpy.mjs";
3
- import { a as unwrapResult, o as mapErrorStatus, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
4
- import { t as requireOwnerPerm } from "../../../../../../authorize-CotM4Yiu.mjs";
2
+ import "../../../../../../types-BXSUSAjt.mjs";
3
+ import { a as unwrapResult, o as mapErrorStatus, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
4
+ import { t as requireOwnerPerm } from "../../../../../../authorize-C_8t2KGa.mjs";
5
5
 
6
6
  //#region src/astro/routes/api/content/[collection]/[id]/restore.ts
7
7
  const prerender = false;
@@ -1,7 +1,7 @@
1
1
  import "../../../../../../base64-CqR-7kqF.mjs";
2
- import "../../../../../../types-K3MDsxpy.mjs";
3
- import { a as unwrapResult, t as apiError } from "../../../../../../error-DJOsMVSt.mjs";
4
- import { n as requirePerm } from "../../../../../../authorize-CotM4Yiu.mjs";
2
+ import "../../../../../../types-BXSUSAjt.mjs";
3
+ import { a as unwrapResult, t as apiError } from "../../../../../../error-RwM4dD35.mjs";
4
+ import { n as requirePerm } from "../../../../../../authorize-C_8t2KGa.mjs";
5
5
 
6
6
  //#region src/astro/routes/api/content/[collection]/[id]/revisions.ts
7
7
  const prerender = false;
@@ -1 +1 @@
1
- {"version":3,"file":"schedule.d.mts","names":[],"sources":["../../../../../../../src/astro/routes/api/content/[collection]/[id]/schedule.ts"],"mappings":";;;cAca,SAAA;AAAA,cAsBA,IAAA,EAAM,QAAA;AAAA,cAkCN,MAAA,EAAQ,QAAA"}
1
+ {"version":3,"file":"schedule.d.mts","names":[],"sources":["../../../../../../../src/astro/routes/api/content/[collection]/[id]/schedule.ts"],"mappings":";;;cAca,SAAA;AAAA,cAsBA,IAAA,EAAM,QAAA;AAAA,cAoCN,MAAA,EAAQ,QAAA"}