dineway 0.1.8 → 0.1.11

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 (690) hide show
  1. package/LICENSE +9 -0
  2. package/README.md +63 -17
  3. package/dist/activity-events-BsMaXdJa.mjs +540 -0
  4. package/dist/allowed-origins-DG86sH8U.mjs +68 -0
  5. package/dist/api/route-utils.d.mts +41 -0
  6. package/dist/api/route-utils.mjs +26 -0
  7. package/dist/api/schemas/index.d.mts +3 -0
  8. package/dist/api/schemas/index.mjs +6 -0
  9. package/dist/api/schemas/setup.d.mts +42 -0
  10. package/dist/api/schemas/setup.mjs +39 -0
  11. package/dist/api-Cmy8Rjk5.mjs +2704 -0
  12. package/dist/api-tokens-Bu3ez1MO.mjs +153 -0
  13. package/dist/api-tokens-DzloJxuh.mjs +3 -0
  14. package/dist/{apply-iVSqz2qs.mjs → apply-Co5imxxT.mjs} +15 -689
  15. package/dist/astro/index.d.mts +10 -6
  16. package/dist/astro/index.mjs +86 -11
  17. package/dist/astro/middleware/auth.d.mts +10 -7
  18. package/dist/astro/middleware/auth.mjs +19 -104
  19. package/dist/astro/middleware/redirect.mjs +24 -14
  20. package/dist/astro/middleware/request-context.mjs +9 -6
  21. package/dist/astro/middleware/setup.mjs +1 -1
  22. package/dist/astro/middleware.mjs +86 -145
  23. package/dist/astro/routes/PluginRegistry.d.mts +14 -0
  24. package/dist/astro/routes/PluginRegistry.mjs +24 -0
  25. package/dist/astro/routes/api/admin/allowed-domains/_domain_.d.mts +14 -0
  26. package/dist/astro/routes/api/admin/allowed-domains/_domain_.mjs +65 -0
  27. package/dist/astro/routes/api/admin/allowed-domains/index.d.mts +14 -0
  28. package/dist/astro/routes/api/admin/allowed-domains/index.mjs +65 -0
  29. package/dist/astro/routes/api/admin/api-tokens/_id_.d.mts +10 -0
  30. package/dist/astro/routes/api/admin/api-tokens/_id_.mjs +33 -0
  31. package/dist/astro/routes/api/admin/api-tokens/index.d.mts +16 -0
  32. package/dist/astro/routes/api/admin/api-tokens/index.mjs +59 -0
  33. package/dist/astro/routes/api/admin/briefing.d.mts +7 -0
  34. package/dist/astro/routes/api/admin/briefing.mjs +71 -0
  35. package/dist/astro/routes/api/admin/bylines/_id_/index.d.mts +9 -0
  36. package/dist/astro/routes/api/admin/bylines/_id_/index.mjs +74 -0
  37. package/dist/astro/routes/api/admin/bylines/index.d.mts +8 -0
  38. package/dist/astro/routes/api/admin/bylines/index.mjs +61 -0
  39. package/dist/astro/routes/api/admin/comments/_id_/status.d.mts +7 -0
  40. package/dist/astro/routes/api/admin/comments/_id_/status.mjs +80 -0
  41. package/dist/astro/routes/api/admin/comments/_id_.d.mts +14 -0
  42. package/dist/astro/routes/api/admin/comments/_id_.mjs +46 -0
  43. package/dist/astro/routes/api/admin/comments/bulk.d.mts +7 -0
  44. package/dist/astro/routes/api/admin/comments/bulk.mjs +36 -0
  45. package/dist/astro/routes/api/admin/comments/counts.d.mts +7 -0
  46. package/dist/astro/routes/api/admin/comments/counts.mjs +24 -0
  47. package/dist/astro/routes/api/admin/comments/index.d.mts +10 -0
  48. package/dist/astro/routes/api/admin/comments/index.mjs +40 -0
  49. package/dist/astro/routes/api/admin/context/_id_/history.d.mts +7 -0
  50. package/dist/astro/routes/api/admin/context/_id_/history.mjs +45 -0
  51. package/dist/astro/routes/api/admin/context/_id_/index.d.mts +7 -0
  52. package/dist/astro/routes/api/admin/context/_id_/index.mjs +45 -0
  53. package/dist/astro/routes/api/admin/context/_id_/review.d.mts +7 -0
  54. package/dist/astro/routes/api/admin/context/_id_/review.mjs +60 -0
  55. package/dist/astro/routes/api/admin/context/_id_/supersede.d.mts +7 -0
  56. package/dist/astro/routes/api/admin/context/_id_/supersede.mjs +63 -0
  57. package/dist/astro/routes/api/admin/context/diff.d.mts +7 -0
  58. package/dist/astro/routes/api/admin/context/diff.mjs +49 -0
  59. package/dist/astro/routes/api/admin/context/index.d.mts +8 -0
  60. package/dist/astro/routes/api/admin/context/index.mjs +71 -0
  61. package/dist/astro/routes/api/admin/context/stale.d.mts +7 -0
  62. package/dist/astro/routes/api/admin/context/stale.mjs +49 -0
  63. package/dist/astro/routes/api/admin/hitl-requests/_id_/index.d.mts +7 -0
  64. package/dist/astro/routes/api/admin/hitl-requests/_id_/index.mjs +51 -0
  65. package/dist/astro/routes/api/admin/hitl-requests/_id_/resolve.d.mts +7 -0
  66. package/dist/astro/routes/api/admin/hitl-requests/_id_/resolve.mjs +67 -0
  67. package/dist/astro/routes/api/admin/hitl-requests/index.d.mts +7 -0
  68. package/dist/astro/routes/api/admin/hitl-requests/index.mjs +55 -0
  69. package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.d.mts +7 -0
  70. package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.mjs +98 -0
  71. package/dist/astro/routes/api/admin/hooks/exclusive/index.d.mts +7 -0
  72. package/dist/astro/routes/api/admin/hooks/exclusive/index.mjs +33 -0
  73. package/dist/astro/routes/api/admin/oauth-clients/_id_.d.mts +18 -0
  74. package/dist/astro/routes/api/admin/oauth-clients/_id_.mjs +79 -0
  75. package/dist/astro/routes/api/admin/oauth-clients/index.d.mts +14 -0
  76. package/dist/astro/routes/api/admin/oauth-clients/index.mjs +58 -0
  77. package/dist/astro/routes/api/admin/plugins/_id_/disable.d.mts +7 -0
  78. package/dist/astro/routes/api/admin/plugins/_id_/disable.mjs +89 -0
  79. package/dist/astro/routes/api/admin/plugins/_id_/enable.d.mts +7 -0
  80. package/dist/astro/routes/api/admin/plugins/_id_/enable.mjs +89 -0
  81. package/dist/astro/routes/api/admin/plugins/_id_/index.d.mts +7 -0
  82. package/dist/astro/routes/api/admin/plugins/_id_/index.mjs +54 -0
  83. package/dist/astro/routes/api/admin/plugins/_id_/uninstall.d.mts +7 -0
  84. package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs +98 -0
  85. package/dist/astro/routes/api/admin/plugins/_id_/update.d.mts +7 -0
  86. package/dist/astro/routes/api/admin/plugins/_id_/update.mjs +131 -0
  87. package/dist/astro/routes/api/admin/plugins/index.d.mts +7 -0
  88. package/dist/astro/routes/api/admin/plugins/index.mjs +52 -0
  89. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.d.mts +7 -0
  90. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.mjs +36 -0
  91. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.d.mts +7 -0
  92. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs +54 -0
  93. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.d.mts +7 -0
  94. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs +128 -0
  95. package/dist/astro/routes/api/admin/plugins/marketplace/index.d.mts +7 -0
  96. package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs +61 -0
  97. package/dist/astro/routes/api/admin/plugins/updates.d.mts +7 -0
  98. package/dist/astro/routes/api/admin/plugins/updates.mjs +52 -0
  99. package/dist/astro/routes/api/admin/review-requests/_id_/index.d.mts +7 -0
  100. package/dist/astro/routes/api/admin/review-requests/_id_/index.mjs +26 -0
  101. package/dist/astro/routes/api/admin/review-requests/_id_/resolve.d.mts +7 -0
  102. package/dist/astro/routes/api/admin/review-requests/_id_/resolve.mjs +97 -0
  103. package/dist/astro/routes/api/admin/review-requests/index.d.mts +7 -0
  104. package/dist/astro/routes/api/admin/review-requests/index.mjs +31 -0
  105. package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.d.mts +7 -0
  106. package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs +54 -0
  107. package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.d.mts +7 -0
  108. package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.mjs +36 -0
  109. package/dist/astro/routes/api/admin/themes/marketplace/index.d.mts +7 -0
  110. package/dist/astro/routes/api/admin/themes/marketplace/index.mjs +70 -0
  111. package/dist/astro/routes/api/admin/users/_id_/disable.d.mts +7 -0
  112. package/dist/astro/routes/api/admin/users/_id_/disable.mjs +38 -0
  113. package/dist/astro/routes/api/admin/users/_id_/enable.d.mts +7 -0
  114. package/dist/astro/routes/api/admin/users/_id_/enable.mjs +29 -0
  115. package/dist/astro/routes/api/admin/users/_id_/index.d.mts +8 -0
  116. package/dist/astro/routes/api/admin/users/_id_/index.mjs +104 -0
  117. package/dist/astro/routes/api/admin/users/_id_/send-recovery.d.mts +7 -0
  118. package/dist/astro/routes/api/admin/users/_id_/send-recovery.mjs +43 -0
  119. package/dist/astro/routes/api/admin/users/index.d.mts +7 -0
  120. package/dist/astro/routes/api/admin/users/index.mjs +54 -0
  121. package/dist/astro/routes/api/auth/dev-bypass.d.mts +8 -0
  122. package/dist/astro/routes/api/auth/dev-bypass.mjs +81 -0
  123. package/dist/astro/routes/api/auth/invite/accept.d.mts +7 -0
  124. package/dist/astro/routes/api/auth/invite/accept.mjs +31 -0
  125. package/dist/astro/routes/api/auth/invite/complete.d.mts +7 -0
  126. package/dist/astro/routes/api/auth/invite/complete.mjs +54 -0
  127. package/dist/astro/routes/api/auth/invite/index.d.mts +7 -0
  128. package/dist/astro/routes/api/auth/invite/index.mjs +51 -0
  129. package/dist/astro/routes/api/auth/invite/register-options.d.mts +7 -0
  130. package/dist/astro/routes/api/auth/invite/register-options.mjs +44 -0
  131. package/dist/astro/routes/api/auth/logout.d.mts +7 -0
  132. package/dist/astro/routes/api/auth/logout.mjs +24 -0
  133. package/dist/astro/routes/api/auth/magic-link/send.d.mts +7 -0
  134. package/dist/astro/routes/api/auth/magic-link/send.mjs +48 -0
  135. package/dist/astro/routes/api/auth/magic-link/verify.d.mts +7 -0
  136. package/dist/astro/routes/api/auth/magic-link/verify.mjs +32 -0
  137. package/dist/astro/routes/api/auth/me.d.mts +13 -0
  138. package/dist/astro/routes/api/auth/me.mjs +41 -0
  139. package/dist/astro/routes/api/auth/mode.d.mts +7 -0
  140. package/dist/astro/routes/api/auth/mode.mjs +28 -0
  141. package/dist/astro/routes/api/auth/oauth/_provider_/callback.d.mts +7 -0
  142. package/dist/astro/routes/api/auth/oauth/_provider_/callback.mjs +114 -0
  143. package/dist/astro/routes/api/auth/oauth/_provider_.d.mts +7 -0
  144. package/dist/astro/routes/api/auth/oauth/_provider_.mjs +58 -0
  145. package/dist/astro/routes/api/auth/passkey/_id_.d.mts +14 -0
  146. package/dist/astro/routes/api/auth/passkey/_id_.mjs +62 -0
  147. package/dist/astro/routes/api/auth/passkey/index.d.mts +7 -0
  148. package/dist/astro/routes/api/auth/passkey/index.mjs +25 -0
  149. package/dist/astro/routes/api/auth/passkey/options.d.mts +7 -0
  150. package/dist/astro/routes/api/auth/passkey/options.mjs +46 -0
  151. package/dist/astro/routes/api/auth/passkey/register/options.d.mts +7 -0
  152. package/dist/astro/routes/api/auth/passkey/register/options.mjs +44 -0
  153. package/dist/astro/routes/api/auth/passkey/register/verify.d.mts +7 -0
  154. package/dist/astro/routes/api/auth/passkey/register/verify.mjs +59 -0
  155. package/dist/astro/routes/api/auth/passkey/verify.d.mts +7 -0
  156. package/dist/astro/routes/api/auth/passkey/verify.mjs +47 -0
  157. package/dist/astro/routes/api/auth/signup/complete.d.mts +7 -0
  158. package/dist/astro/routes/api/auth/signup/complete.mjs +55 -0
  159. package/dist/astro/routes/api/auth/signup/request.d.mts +7 -0
  160. package/dist/astro/routes/api/auth/signup/request.mjs +44 -0
  161. package/dist/astro/routes/api/auth/signup/verify.d.mts +7 -0
  162. package/dist/astro/routes/api/auth/signup/verify.mjs +32 -0
  163. package/dist/astro/routes/api/comments/_collection_/_contentId_/index.d.mts +14 -0
  164. package/dist/astro/routes/api/comments/_collection_/_contentId_/index.mjs +193 -0
  165. package/dist/astro/routes/api/content/_collection_/_id_/compare.d.mts +7 -0
  166. package/dist/astro/routes/api/content/_collection_/_id_/compare.mjs +17 -0
  167. package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.d.mts +7 -0
  168. package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs +36 -0
  169. package/dist/astro/routes/api/content/_collection_/_id_/duplicate.d.mts +7 -0
  170. package/dist/astro/routes/api/content/_collection_/_id_/duplicate.mjs +39 -0
  171. package/dist/astro/routes/api/content/_collection_/_id_/permanent.d.mts +7 -0
  172. package/dist/astro/routes/api/content/_collection_/_id_/permanent.mjs +31 -0
  173. package/dist/astro/routes/api/content/_collection_/_id_/preview-url.d.mts +7 -0
  174. package/dist/astro/routes/api/content/_collection_/_id_/preview-url.mjs +78 -0
  175. package/dist/astro/routes/api/content/_collection_/_id_/publish.d.mts +7 -0
  176. package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs +92 -0
  177. package/dist/astro/routes/api/content/_collection_/_id_/restore.d.mts +7 -0
  178. package/dist/astro/routes/api/content/_collection_/_id_/restore.mjs +36 -0
  179. package/dist/astro/routes/api/content/_collection_/_id_/revisions.d.mts +7 -0
  180. package/dist/astro/routes/api/content/_collection_/_id_/revisions.mjs +19 -0
  181. package/dist/astro/routes/api/content/_collection_/_id_/schedule.d.mts +8 -0
  182. package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs +75 -0
  183. package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.d.mts +14 -0
  184. package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.mjs +85 -0
  185. package/dist/astro/routes/api/content/_collection_/_id_/translations.d.mts +7 -0
  186. package/dist/astro/routes/api/content/_collection_/_id_/translations.mjs +40 -0
  187. package/dist/astro/routes/api/content/_collection_/_id_/unpublish.d.mts +7 -0
  188. package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs +36 -0
  189. package/dist/astro/routes/api/content/_collection_/_id_.d.mts +9 -0
  190. package/dist/astro/routes/api/content/_collection_/_id_.mjs +114 -0
  191. package/dist/astro/routes/api/content/_collection_/index.d.mts +8 -0
  192. package/dist/astro/routes/api/content/_collection_/index.mjs +74 -0
  193. package/dist/astro/routes/api/content/_collection_/trash.d.mts +7 -0
  194. package/dist/astro/routes/api/content/_collection_/trash.mjs +23 -0
  195. package/dist/astro/routes/api/dashboard.d.mts +7 -0
  196. package/dist/astro/routes/api/dashboard.mjs +26 -0
  197. package/dist/astro/routes/api/dev/emails.d.mts +8 -0
  198. package/dist/astro/routes/api/dev/emails.mjs +17 -0
  199. package/dist/astro/routes/api/health.d.mts +7 -0
  200. package/dist/astro/routes/api/health.mjs +34 -0
  201. package/dist/astro/routes/api/import/probe.d.mts +17 -0
  202. package/dist/astro/routes/api/import/probe.mjs +33 -0
  203. package/dist/astro/routes/api/import/wordpress/analyze.d.mts +87 -0
  204. package/dist/astro/routes/api/import/wordpress/analyze.mjs +305 -0
  205. package/dist/astro/routes/api/import/wordpress/execute.d.mts +37 -0
  206. package/dist/astro/routes/api/import/wordpress/execute.mjs +197 -0
  207. package/dist/astro/routes/api/import/wordpress/media.d.mts +35 -0
  208. package/dist/astro/routes/api/import/wordpress/media.mjs +222 -0
  209. package/dist/astro/routes/api/import/wordpress/prepare.d.mts +19 -0
  210. package/dist/astro/routes/api/import/wordpress/prepare.mjs +155 -0
  211. package/dist/astro/routes/api/import/wordpress/rewrite-urls.d.mts +21 -0
  212. package/dist/astro/routes/api/import/wordpress/rewrite-urls.mjs +289 -0
  213. package/dist/astro/routes/api/import/wordpress-plugin/analyze.d.mts +15 -0
  214. package/dist/astro/routes/api/import/wordpress-plugin/analyze.mjs +69 -0
  215. package/dist/astro/routes/api/import/wordpress-plugin/callback.d.mts +7 -0
  216. package/dist/astro/routes/api/import/wordpress-plugin/callback.mjs +28 -0
  217. package/dist/astro/routes/api/import/wordpress-plugin/execute.d.mts +19 -0
  218. package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs +268 -0
  219. package/dist/astro/routes/api/manifest.d.mts +7 -0
  220. package/dist/astro/routes/api/manifest.mjs +50 -0
  221. package/dist/astro/routes/api/mcp.d.mts +15 -0
  222. package/dist/astro/routes/api/mcp.mjs +2700 -0
  223. package/dist/astro/routes/api/media/_id_/confirm.d.mts +10 -0
  224. package/dist/astro/routes/api/media/_id_/confirm.mjs +59 -0
  225. package/dist/astro/routes/api/media/_id_.d.mts +22 -0
  226. package/dist/astro/routes/api/media/_id_.mjs +81 -0
  227. package/dist/astro/routes/api/media/file/_...key_.d.mts +7 -0
  228. package/dist/astro/routes/api/media/file/_...key_.mjs +49 -0
  229. package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.d.mts +14 -0
  230. package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.mjs +49 -0
  231. package/dist/astro/routes/api/media/providers/_providerId_/index.d.mts +14 -0
  232. package/dist/astro/routes/api/media/providers/_providerId_/index.mjs +72 -0
  233. package/dist/astro/routes/api/media/providers/index.d.mts +10 -0
  234. package/dist/astro/routes/api/media/providers/index.mjs +18 -0
  235. package/dist/astro/routes/api/media/upload-url.d.mts +10 -0
  236. package/dist/astro/routes/api/media/upload-url.mjs +82 -0
  237. package/dist/astro/routes/api/media.d.mts +16 -0
  238. package/dist/astro/routes/api/media.mjs +137 -0
  239. package/dist/astro/routes/api/menus/_name_/items.d.mts +9 -0
  240. package/{src/astro/routes/api/menus/[name]/items.ts → dist/astro/routes/api/menus/_name_/items.mjs} +63 -105
  241. package/dist/astro/routes/api/menus/_name_/reorder.d.mts +7 -0
  242. package/dist/astro/routes/api/menus/_name_/reorder.mjs +77 -0
  243. package/dist/astro/routes/api/menus/_name_.d.mts +9 -0
  244. package/dist/astro/routes/api/menus/_name_.mjs +123 -0
  245. package/dist/astro/routes/api/menus/index.d.mts +8 -0
  246. package/dist/astro/routes/api/menus/index.mjs +84 -0
  247. package/dist/astro/routes/api/oauth/authorize.d.mts +8 -0
  248. package/dist/astro/routes/api/oauth/authorize.mjs +265 -0
  249. package/dist/astro/routes/api/oauth/device/authorize.d.mts +7 -0
  250. package/dist/astro/routes/api/oauth/device/authorize.mjs +30 -0
  251. package/dist/astro/routes/api/oauth/device/code.d.mts +7 -0
  252. package/dist/astro/routes/api/oauth/device/code.mjs +34 -0
  253. package/dist/astro/routes/api/oauth/device/token.d.mts +7 -0
  254. package/dist/astro/routes/api/oauth/device/token.mjs +45 -0
  255. package/dist/astro/routes/api/oauth/register.d.mts +8 -0
  256. package/dist/astro/routes/api/oauth/register.mjs +115 -0
  257. package/dist/astro/routes/api/oauth/token/refresh.d.mts +7 -0
  258. package/dist/astro/routes/api/oauth/token/refresh.mjs +28 -0
  259. package/dist/astro/routes/api/oauth/token/revoke.d.mts +7 -0
  260. package/dist/astro/routes/api/oauth/token/revoke.mjs +25 -0
  261. package/dist/astro/routes/api/oauth/token.d.mts +8 -0
  262. package/dist/astro/routes/api/oauth/token.mjs +138 -0
  263. package/dist/astro/routes/api/openapi.json.d.mts +7 -0
  264. package/dist/astro/routes/api/openapi.json.mjs +2638 -0
  265. package/dist/astro/routes/api/plugins/_pluginId_/_...path_.d.mts +11 -0
  266. package/dist/astro/routes/api/plugins/_pluginId_/_...path_.mjs +77 -0
  267. package/dist/astro/routes/api/redirects/404s/index.d.mts +9 -0
  268. package/dist/astro/routes/api/redirects/404s/index.mjs +62 -0
  269. package/dist/astro/routes/api/redirects/404s/summary.d.mts +7 -0
  270. package/dist/astro/routes/api/redirects/404s/summary.mjs +34 -0
  271. package/dist/astro/routes/api/redirects/_id_.d.mts +9 -0
  272. package/dist/astro/routes/api/redirects/_id_.mjs +152 -0
  273. package/dist/astro/routes/api/redirects/index.d.mts +8 -0
  274. package/dist/astro/routes/api/redirects/index.mjs +97 -0
  275. package/dist/astro/routes/api/revisions/_revisionId_/index.d.mts +7 -0
  276. package/dist/astro/routes/api/revisions/_revisionId_/index.mjs +16 -0
  277. package/dist/astro/routes/api/revisions/_revisionId_/restore.d.mts +7 -0
  278. package/dist/astro/routes/api/revisions/_revisionId_/restore.mjs +23 -0
  279. package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.d.mts +9 -0
  280. package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs +98 -0
  281. package/dist/astro/routes/api/schema/collections/_slug_/fields/index.d.mts +8 -0
  282. package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs +80 -0
  283. package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.d.mts +7 -0
  284. package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs +67 -0
  285. package/dist/astro/routes/api/schema/collections/_slug_/index.d.mts +9 -0
  286. package/dist/astro/routes/api/schema/collections/_slug_/index.mjs +97 -0
  287. package/dist/astro/routes/api/schema/collections/index.d.mts +8 -0
  288. package/dist/astro/routes/api/schema/collections/index.mjs +77 -0
  289. package/dist/astro/routes/api/schema/index.d.mts +7 -0
  290. package/dist/astro/routes/api/schema/index.mjs +79 -0
  291. package/dist/astro/routes/api/schema/orphans/_slug_.d.mts +7 -0
  292. package/dist/astro/routes/api/schema/orphans/_slug_.mjs +58 -0
  293. package/dist/astro/routes/api/schema/orphans/index.d.mts +7 -0
  294. package/dist/astro/routes/api/schema/orphans/index.mjs +53 -0
  295. package/dist/astro/routes/api/search/enable.d.mts +15 -0
  296. package/dist/astro/routes/api/search/enable.mjs +55 -0
  297. package/dist/astro/routes/api/search/index.d.mts +16 -0
  298. package/dist/astro/routes/api/search/index.mjs +52 -0
  299. package/dist/astro/routes/api/search/rebuild.d.mts +13 -0
  300. package/dist/astro/routes/api/search/rebuild.mjs +48 -0
  301. package/dist/astro/routes/api/search/stats.d.mts +10 -0
  302. package/dist/astro/routes/api/search/stats.mjs +28 -0
  303. package/dist/astro/routes/api/search/suggest.d.mts +15 -0
  304. package/dist/astro/routes/api/search/suggest.mjs +43 -0
  305. package/dist/astro/routes/api/sections/_slug_.d.mts +9 -0
  306. package/dist/astro/routes/api/sections/_slug_.mjs +156 -0
  307. package/dist/astro/routes/api/sections/index.d.mts +8 -0
  308. package/dist/astro/routes/api/sections/index.mjs +99 -0
  309. package/dist/astro/routes/api/settings/email.d.mts +17 -0
  310. package/dist/astro/routes/api/settings/email.mjs +102 -0
  311. package/dist/astro/routes/api/settings.d.mts +20 -0
  312. package/dist/astro/routes/api/settings.mjs +101 -0
  313. package/dist/astro/routes/api/setup/admin-verify.d.mts +7 -0
  314. package/dist/astro/routes/api/setup/admin-verify.mjs +67 -0
  315. package/dist/astro/routes/api/setup/admin.d.mts +7 -0
  316. package/dist/astro/routes/api/setup/admin.mjs +68 -0
  317. package/dist/astro/routes/api/setup/dev-bypass.d.mts +8 -0
  318. package/dist/astro/routes/api/setup/dev-bypass.mjs +137 -0
  319. package/dist/astro/routes/api/setup/dev-reset.d.mts +7 -0
  320. package/dist/astro/routes/api/setup/dev-reset.mjs +22 -0
  321. package/dist/astro/routes/api/setup/index.d.mts +7 -0
  322. package/dist/astro/routes/api/setup/index.mjs +93 -0
  323. package/dist/astro/routes/api/setup/status.d.mts +7 -0
  324. package/dist/astro/routes/api/setup/status.mjs +57 -0
  325. package/dist/astro/routes/api/snapshot.d.mts +7 -0
  326. package/dist/astro/routes/api/snapshot.mjs +227 -0
  327. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.d.mts +18 -0
  328. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.mjs +189 -0
  329. package/dist/astro/routes/api/taxonomies/_name_/terms/index.d.mts +14 -0
  330. package/dist/astro/routes/api/taxonomies/_name_/terms/index.mjs +113 -0
  331. package/dist/astro/routes/api/taxonomies/index.d.mts +14 -0
  332. package/dist/astro/routes/api/taxonomies/index.mjs +103 -0
  333. package/dist/astro/routes/api/themes/preview.d.mts +7 -0
  334. package/dist/astro/routes/api/themes/preview.mjs +47 -0
  335. package/dist/astro/routes/api/typegen.d.mts +17 -0
  336. package/dist/astro/routes/api/typegen.mjs +75 -0
  337. package/dist/astro/routes/api/well-known/auth.d.mts +7 -0
  338. package/dist/astro/routes/api/well-known/auth.mjs +42 -0
  339. package/dist/astro/routes/api/well-known/oauth-authorization-server.d.mts +7 -0
  340. package/dist/astro/routes/api/well-known/oauth-authorization-server.mjs +33 -0
  341. package/dist/astro/routes/api/well-known/oauth-protected-resource.d.mts +7 -0
  342. package/dist/astro/routes/api/well-known/oauth-protected-resource.mjs +21 -0
  343. package/dist/astro/routes/api/widget-areas/_name_/reorder.d.mts +7 -0
  344. package/dist/astro/routes/api/widget-areas/_name_/reorder.mjs +88 -0
  345. package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.d.mts +8 -0
  346. package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.mjs +158 -0
  347. package/dist/astro/routes/api/widget-areas/_name_/widgets.d.mts +7 -0
  348. package/dist/astro/routes/api/widget-areas/_name_/widgets.mjs +104 -0
  349. package/dist/astro/routes/api/widget-areas/_name_.d.mts +8 -0
  350. package/dist/astro/routes/api/widget-areas/_name_.mjs +99 -0
  351. package/dist/astro/routes/api/widget-areas/index.d.mts +8 -0
  352. package/dist/astro/routes/api/widget-areas/index.mjs +108 -0
  353. package/dist/astro/routes/api/widget-components.d.mts +7 -0
  354. package/dist/astro/routes/api/widget-components.mjs +15 -0
  355. package/dist/astro/routes/robots.txt.d.mts +7 -0
  356. package/dist/astro/routes/robots.txt.mjs +60 -0
  357. package/dist/astro/routes/sitemap-_collection_.xml.d.mts +7 -0
  358. package/dist/astro/routes/sitemap-_collection_.xml.mjs +70 -0
  359. package/dist/astro/routes/sitemap.xml.d.mts +7 -0
  360. package/dist/astro/routes/sitemap.xml.mjs +63 -0
  361. package/dist/astro/types.d.mts +41 -9
  362. package/dist/auth/providers/github-admin.d.mts +9 -0
  363. package/dist/auth/providers/github-admin.mjs +27 -0
  364. package/dist/auth/providers/github.d.mts +12 -0
  365. package/dist/auth/providers/github.mjs +17 -0
  366. package/dist/auth/providers/google-admin.d.mts +9 -0
  367. package/dist/auth/providers/google-admin.mjs +43 -0
  368. package/dist/auth/providers/google.d.mts +12 -0
  369. package/dist/auth/providers/google.mjs +17 -0
  370. package/dist/auth-control-guard-DKUe_1oa.mjs +13 -0
  371. package/dist/authorize-BBj8C6Y8.mjs +36 -0
  372. package/dist/briefing-BrXCuMEE.mjs +1294 -0
  373. package/dist/briefing-ClWw4mc9.mjs +29 -0
  374. package/dist/{byline-OhH2dlRu.mjs → byline-naZxOPSa.mjs} +3 -3
  375. package/dist/{bylines-BGpD9_hy.mjs → bylines-BcOPh6Ej.mjs} +20 -53
  376. package/dist/bylines-HfUKum_j.d.mts +2023 -0
  377. package/dist/{cache-BdSY-gQN.mjs → cache-DEbQ13c9.mjs} +21 -11
  378. package/dist/challenge-store-DHMgBGOq.mjs +48 -0
  379. package/dist/cli/index.mjs +142 -22
  380. package/dist/client/external-auth-headers.d.mts +1 -1
  381. package/dist/client/index.d.mts +1 -1
  382. package/dist/client/index.mjs +3 -3
  383. package/dist/comment-DFO-gWDH.mjs +246 -0
  384. package/dist/comments-Gy3zLBaP.mjs +186 -0
  385. package/dist/components-DND2rd3D.mjs +107 -0
  386. package/dist/{content-DWi4d0rT.mjs → content-CyLkb-qH.mjs} +33 -44
  387. package/dist/context-bE5Kyvcj.mjs +184 -0
  388. package/dist/context-nxMyOe3p.mjs +849 -0
  389. package/dist/context-route-helpers-D-6uCQ0S.mjs +45 -0
  390. package/dist/context-types-C-LwdAxx.mjs +23 -0
  391. package/dist/cron-DGzVTtJp.mjs +263 -0
  392. package/dist/dashboard-DqnYU8EU.mjs +120 -0
  393. package/dist/db/index.d.mts +3 -3
  394. package/dist/db/libsql.d.mts +1 -1
  395. package/dist/db/libsql.mjs +3 -3
  396. package/dist/db/postgres.d.mts +1 -1
  397. package/dist/db/sqlite.d.mts +1 -1
  398. package/dist/db/sqlite.mjs +1 -2
  399. package/dist/device-flow-7AhWNwCK.mjs +487 -0
  400. package/dist/email-console-CgLVZbcn.mjs +36 -0
  401. package/dist/entity-aliases-C0v-yNET.mjs +51 -0
  402. package/dist/error-DEGjx2Xw.mjs +435 -0
  403. package/dist/escape-mNZr4t2A.mjs +8 -0
  404. package/dist/experimental-workflows-DldxJlqV.mjs +38 -0
  405. package/dist/fts-manager-B1pTNEG_.mjs +297 -0
  406. package/dist/hash-CDX7M0ze.mjs +32 -0
  407. package/dist/hitl-requests-Bx3Bkk9l.mjs +118 -0
  408. package/dist/hitl-route-helpers-DMmJRS7B.mjs +96 -0
  409. package/dist/import-DD3f2jkc.mjs +243 -0
  410. package/dist/import-DVZcYlDp.mjs +1323 -0
  411. package/dist/index-CkljPf5F.d.mts +227 -0
  412. package/dist/index.d.mts +15 -11
  413. package/dist/index.mjs +60 -22
  414. package/dist/{loader-sMG4TZ-u.mjs → loader-PZnPxFLc.mjs} +42 -5
  415. package/dist/{manifest-schema-D1MSVnoI.mjs → manifest-schema-DYoCQ5np.mjs} +22 -10
  416. package/dist/media/index.d.mts +1 -1
  417. package/dist/media/index.mjs +2 -1
  418. package/dist/media/local-runtime.d.mts +11 -7
  419. package/dist/media/local-runtime.mjs +3 -3
  420. package/dist/{media-DMTr80Gv.mjs → media-_7Fxdu45.mjs} +1 -1
  421. package/dist/menus-BacxVCCo.mjs +312 -0
  422. package/dist/menus-CrzHokKj.mjs +3502 -0
  423. package/dist/normalize-C49G_o1k.mjs +126 -0
  424. package/dist/oauth-authorization-C1qiw4hd.mjs +283 -0
  425. package/dist/oauth-clients-CvWatf5p.mjs +298 -0
  426. package/dist/oauth-state-store-hSdzxsEe.mjs +48 -0
  427. package/dist/oauth-user-lookup-B4OcmsLV.mjs +25 -0
  428. package/dist/options-z8VVg1Ll.mjs +114 -0
  429. package/dist/page/index.d.mts +2 -2
  430. package/dist/parse-BeQXIt1U.mjs +88 -0
  431. package/dist/passkey-config-Daqs5fjq.mjs +42 -0
  432. package/dist/{patterns-CrCYkMBb.mjs → patterns-K0DLqWir.mjs} +53 -1
  433. package/dist/{placeholder-Cp8g5Emj.mjs → placeholder-C2P5fKa4.mjs} +1 -126
  434. package/dist/plugins/adapt-sandbox-entry.d.mts +9 -5
  435. package/dist/plugins/adapt-sandbox-entry.mjs +4 -4
  436. package/dist/preview-C_4DyVox.mjs +788 -0
  437. package/dist/public-url-BB_umF5G.mjs +71 -0
  438. package/dist/{query-kDmwCsHh.mjs → query-RiobVwB5.mjs} +93 -19
  439. package/dist/rate-limit-CbJoj_fT.mjs +112 -0
  440. package/dist/{redirect-DnEWAkVg.mjs → redirect-CGl64yOX.mjs} +9 -5
  441. package/dist/redirect-ClSmMOtC.mjs +16 -0
  442. package/dist/redirects-B69T59hK.mjs +499 -0
  443. package/dist/redirects-CqaxraTO.mjs +1070 -0
  444. package/dist/{registry-C0zjeB9P.mjs → registry-C-_hxLqa.mjs} +26 -294
  445. package/dist/request-meta-Bd0mQfiS.mjs +130 -0
  446. package/dist/review-requests-C2DIHwlJ.mjs +148 -0
  447. package/dist/review-requests-DIyjw-K_.mjs +79 -0
  448. package/dist/{runner-CFI6B6J2.d.mts → runner-9eIQXuc2.d.mts} +1 -1
  449. package/dist/{index-yvc6E_17.d.mts → runtime-C4-7y7xK.d.mts} +1539 -2007
  450. package/dist/runtime.d.mts +10 -6
  451. package/dist/runtime.mjs +3 -3
  452. package/dist/schema-BNpI53of.mjs +40 -0
  453. package/dist/search-DM6CVti3.mjs +337 -0
  454. package/dist/secrets-dI8zzTV7.mjs +160 -0
  455. package/dist/sections-DZFyAQXd.mjs +338 -0
  456. package/dist/seed/index.d.mts +2 -2
  457. package/dist/seed/index.mjs +18 -13
  458. package/dist/seo/index.d.mts +1 -1
  459. package/dist/seo-BBgTCOYU.mjs +85 -0
  460. package/dist/seo-CUQctrog.mjs +129 -0
  461. package/dist/service-CSfcQguB.mjs +194 -0
  462. package/dist/settings-4XnpVMOS.mjs +223 -0
  463. package/dist/settings-Bw93cLfe.mjs +50 -0
  464. package/dist/setup-complete-DidsDQ1e.mjs +21 -0
  465. package/dist/setup-nonce-pml1PMKo.mjs +17 -0
  466. package/dist/sidecar-client-vzwV98K4.mjs +66 -0
  467. package/dist/site-activity-B8FjLIVh.mjs +104 -0
  468. package/dist/site-context-Bpu_Paur.mjs +4122 -0
  469. package/dist/site-url-CYIcO0Tj.mjs +12 -0
  470. package/dist/slugify-PDTDtMXp.mjs +30 -0
  471. package/dist/ssrf-CmM76lLV.mjs +248 -0
  472. package/dist/storage/local.d.mts +1 -1
  473. package/dist/storage/local.mjs +1 -1
  474. package/dist/storage/s3.d.mts +1 -1
  475. package/dist/storage/s3.mjs +2 -2
  476. package/dist/{taxonomies-1s5PaS_8.mjs → taxonomies-BvBgfzn3.mjs} +11 -7
  477. package/dist/taxonomies-CpqGcIJD.mjs +355 -0
  478. package/dist/taxonomy-D5cbhc8u.mjs +165 -0
  479. package/dist/{tokens-CJz9ubV6.mjs → tokens-DLTo4dO2.mjs} +1 -1
  480. package/dist/{transport-DB5eDN4x.mjs → transport-C9e_h-BF.mjs} +5 -4
  481. package/dist/trusted-proxy-Bi0Cuk5n.mjs +30 -0
  482. package/dist/{types-BawVha09.mjs → types-Bs6lTBBW.mjs} +1 -1
  483. package/dist/types-C982qI5I.d.mts +344 -0
  484. package/dist/types-D4XVOt01.d.mts +165 -0
  485. package/dist/{types-Cj0KMIZV.d.mts → types-DgfUZqcd.d.mts} +54 -16
  486. package/dist/{types-BuMDPy5C.d.mts → types-IPACEM14.d.mts} +6 -0
  487. package/dist/user-CcXq-zoL.mjs +154 -0
  488. package/dist/utils-D2in-zwy.mjs +285 -0
  489. package/dist/{validate-BZ5wnLLp.mjs → validate-BJgA6TW_.mjs} +1 -1
  490. package/dist/{validate-IPf8n4Fj.d.mts → validate-JCZihRIa.d.mts} +3 -3
  491. package/dist/version-DH53KCQd.mjs +6 -0
  492. package/dist/widgets-B7Q_7bxN.mjs +104 -0
  493. package/dist/wordpress-slugs-BevajWrC.mjs +14 -0
  494. package/dist/zod-generator-DBVP8D0P.mjs +132 -0
  495. package/locals.d.ts +1 -6
  496. package/package.json +96 -41
  497. package/src/components/DinewayHead.astro +8 -4
  498. package/src/components/DinewayImage.astro +7 -5
  499. package/src/components/DinewayMedia.astro +9 -3
  500. package/src/components/Gallery.astro +5 -3
  501. package/src/components/Image.astro +5 -1
  502. package/src/components/InlinePortableTextEditor.tsx +68 -19
  503. package/dist/error-BmL6QipT.mjs +0 -30
  504. package/dist/search-Hlm6g8Td.mjs +0 -11200
  505. package/dist/version-DxxaFHZ_.mjs +0 -6
  506. package/src/astro/routes/PluginRegistry.tsx +0 -21
  507. package/src/astro/routes/api/admin/allowed-domains/[domain].ts +0 -112
  508. package/src/astro/routes/api/admin/allowed-domains/index.ts +0 -108
  509. package/src/astro/routes/api/admin/api-tokens/[id].ts +0 -44
  510. package/src/astro/routes/api/admin/api-tokens/index.ts +0 -90
  511. package/src/astro/routes/api/admin/briefing.ts +0 -76
  512. package/src/astro/routes/api/admin/bylines/[id]/index.ts +0 -90
  513. package/src/astro/routes/api/admin/bylines/index.ts +0 -74
  514. package/src/astro/routes/api/admin/comments/[id]/status.ts +0 -120
  515. package/src/astro/routes/api/admin/comments/[id].ts +0 -64
  516. package/src/astro/routes/api/admin/comments/bulk.ts +0 -42
  517. package/src/astro/routes/api/admin/comments/counts.ts +0 -30
  518. package/src/astro/routes/api/admin/comments/index.ts +0 -46
  519. package/src/astro/routes/api/admin/context/[id]/history.ts +0 -35
  520. package/src/astro/routes/api/admin/context/[id]/index.ts +0 -35
  521. package/src/astro/routes/api/admin/context/[id]/review.ts +0 -57
  522. package/src/astro/routes/api/admin/context/[id]/supersede.ts +0 -58
  523. package/src/astro/routes/api/admin/context/diff.ts +0 -35
  524. package/src/astro/routes/api/admin/context/index.ts +0 -69
  525. package/src/astro/routes/api/admin/context/stale.ts +0 -35
  526. package/src/astro/routes/api/admin/hitl-requests/[id]/index.ts +0 -38
  527. package/src/astro/routes/api/admin/hitl-requests/[id]/resolve.ts +0 -54
  528. package/src/astro/routes/api/admin/hitl-requests/index.ts +0 -38
  529. package/src/astro/routes/api/admin/hooks/exclusive/[hookName].ts +0 -132
  530. package/src/astro/routes/api/admin/hooks/exclusive/index.ts +0 -51
  531. package/src/astro/routes/api/admin/oauth-clients/[id].ts +0 -137
  532. package/src/astro/routes/api/admin/oauth-clients/index.ts +0 -95
  533. package/src/astro/routes/api/admin/plugins/[id]/disable.ts +0 -91
  534. package/src/astro/routes/api/admin/plugins/[id]/enable.ts +0 -91
  535. package/src/astro/routes/api/admin/plugins/[id]/index.ts +0 -38
  536. package/src/astro/routes/api/admin/plugins/[id]/uninstall.ts +0 -98
  537. package/src/astro/routes/api/admin/plugins/[id]/update.ts +0 -154
  538. package/src/astro/routes/api/admin/plugins/index.ts +0 -32
  539. package/src/astro/routes/api/admin/plugins/marketplace/[id]/icon.ts +0 -62
  540. package/src/astro/routes/api/admin/plugins/marketplace/[id]/index.ts +0 -33
  541. package/src/astro/routes/api/admin/plugins/marketplace/[id]/install.ts +0 -135
  542. package/src/astro/routes/api/admin/plugins/marketplace/index.ts +0 -38
  543. package/src/astro/routes/api/admin/plugins/updates.ts +0 -28
  544. package/src/astro/routes/api/admin/review-requests/[id]/index.ts +0 -35
  545. package/src/astro/routes/api/admin/review-requests/[id]/resolve.ts +0 -52
  546. package/src/astro/routes/api/admin/review-requests/index.ts +0 -35
  547. package/src/astro/routes/api/admin/themes/marketplace/[id]/index.ts +0 -33
  548. package/src/astro/routes/api/admin/themes/marketplace/[id]/thumbnail.ts +0 -62
  549. package/src/astro/routes/api/admin/themes/marketplace/index.ts +0 -45
  550. package/src/astro/routes/api/admin/users/[id]/disable.ts +0 -72
  551. package/src/astro/routes/api/admin/users/[id]/enable.ts +0 -48
  552. package/src/astro/routes/api/admin/users/[id]/index.ts +0 -166
  553. package/src/astro/routes/api/admin/users/[id]/send-recovery.ts +0 -72
  554. package/src/astro/routes/api/admin/users/index.ts +0 -66
  555. package/src/astro/routes/api/auth/dev-bypass.ts +0 -139
  556. package/src/astro/routes/api/auth/invite/accept.ts +0 -52
  557. package/src/astro/routes/api/auth/invite/complete.ts +0 -86
  558. package/src/astro/routes/api/auth/invite/index.ts +0 -99
  559. package/src/astro/routes/api/auth/invite/register-options.ts +0 -73
  560. package/src/astro/routes/api/auth/logout.ts +0 -40
  561. package/src/astro/routes/api/auth/magic-link/send.ts +0 -90
  562. package/src/astro/routes/api/auth/magic-link/verify.ts +0 -71
  563. package/src/astro/routes/api/auth/me.ts +0 -60
  564. package/src/astro/routes/api/auth/oauth/[provider]/callback.ts +0 -221
  565. package/src/astro/routes/api/auth/oauth/[provider].ts +0 -120
  566. package/src/astro/routes/api/auth/passkey/[id].ts +0 -124
  567. package/src/astro/routes/api/auth/passkey/index.ts +0 -54
  568. package/src/astro/routes/api/auth/passkey/options.ts +0 -85
  569. package/src/astro/routes/api/auth/passkey/register/options.ts +0 -88
  570. package/src/astro/routes/api/auth/passkey/register/verify.ts +0 -119
  571. package/src/astro/routes/api/auth/passkey/verify.ts +0 -72
  572. package/src/astro/routes/api/auth/signup/complete.ts +0 -87
  573. package/src/astro/routes/api/auth/signup/request.ts +0 -89
  574. package/src/astro/routes/api/auth/signup/verify.ts +0 -53
  575. package/src/astro/routes/api/comments/[collection]/[contentId]/index.ts +0 -310
  576. package/src/astro/routes/api/content/[collection]/[id]/compare.ts +0 -28
  577. package/src/astro/routes/api/content/[collection]/[id]/discard-draft.ts +0 -68
  578. package/src/astro/routes/api/content/[collection]/[id]/duplicate.ts +0 -77
  579. package/src/astro/routes/api/content/[collection]/[id]/permanent.ts +0 -42
  580. package/src/astro/routes/api/content/[collection]/[id]/preview-url.ts +0 -107
  581. package/src/astro/routes/api/content/[collection]/[id]/publish.ts +0 -100
  582. package/src/astro/routes/api/content/[collection]/[id]/restore.ts +0 -64
  583. package/src/astro/routes/api/content/[collection]/[id]/revisions.ts +0 -31
  584. package/src/astro/routes/api/content/[collection]/[id]/schedule.ts +0 -129
  585. package/src/astro/routes/api/content/[collection]/[id]/terms/[taxonomy].ts +0 -143
  586. package/src/astro/routes/api/content/[collection]/[id]/translations.ts +0 -50
  587. package/src/astro/routes/api/content/[collection]/[id]/unpublish.ts +0 -69
  588. package/src/astro/routes/api/content/[collection]/[id].ts +0 -173
  589. package/src/astro/routes/api/content/[collection]/index.ts +0 -103
  590. package/src/astro/routes/api/content/[collection]/trash.ts +0 -33
  591. package/src/astro/routes/api/dashboard.ts +0 -32
  592. package/src/astro/routes/api/dev/emails.ts +0 -36
  593. package/src/astro/routes/api/health.ts +0 -54
  594. package/src/astro/routes/api/import/probe.ts +0 -47
  595. package/src/astro/routes/api/import/wordpress/analyze.ts +0 -523
  596. package/src/astro/routes/api/import/wordpress/execute.ts +0 -330
  597. package/src/astro/routes/api/import/wordpress/media.ts +0 -338
  598. package/src/astro/routes/api/import/wordpress/prepare.ts +0 -212
  599. package/src/astro/routes/api/import/wordpress/rewrite-urls.ts +0 -425
  600. package/src/astro/routes/api/import/wordpress-plugin/analyze.ts +0 -111
  601. package/src/astro/routes/api/import/wordpress-plugin/callback.ts +0 -58
  602. package/src/astro/routes/api/import/wordpress-plugin/execute.ts +0 -399
  603. package/src/astro/routes/api/manifest.ts +0 -75
  604. package/src/astro/routes/api/mcp.ts +0 -125
  605. package/src/astro/routes/api/media/[id]/confirm.ts +0 -93
  606. package/src/astro/routes/api/media/[id].ts +0 -145
  607. package/src/astro/routes/api/media/file/[...key].ts +0 -79
  608. package/src/astro/routes/api/media/providers/[providerId]/[itemId].ts +0 -91
  609. package/src/astro/routes/api/media/providers/[providerId]/index.ts +0 -111
  610. package/src/astro/routes/api/media/providers/index.ts +0 -30
  611. package/src/astro/routes/api/media/upload-url.ts +0 -146
  612. package/src/astro/routes/api/media.ts +0 -204
  613. package/src/astro/routes/api/menus/[name]/reorder.ts +0 -79
  614. package/src/astro/routes/api/menus/[name].ts +0 -145
  615. package/src/astro/routes/api/menus/index.ts +0 -91
  616. package/src/astro/routes/api/oauth/authorize.ts +0 -430
  617. package/src/astro/routes/api/oauth/device/authorize.ts +0 -45
  618. package/src/astro/routes/api/oauth/device/code.ts +0 -56
  619. package/src/astro/routes/api/oauth/device/token.ts +0 -70
  620. package/src/astro/routes/api/oauth/register.ts +0 -182
  621. package/src/astro/routes/api/oauth/token/refresh.ts +0 -38
  622. package/src/astro/routes/api/oauth/token/revoke.ts +0 -38
  623. package/src/astro/routes/api/oauth/token.ts +0 -195
  624. package/src/astro/routes/api/openapi.json.ts +0 -33
  625. package/src/astro/routes/api/plugins/[pluginId]/[...path].ts +0 -109
  626. package/src/astro/routes/api/redirects/404s/index.ts +0 -72
  627. package/src/astro/routes/api/redirects/404s/summary.ts +0 -33
  628. package/src/astro/routes/api/redirects/[id].ts +0 -183
  629. package/src/astro/routes/api/redirects/index.ts +0 -100
  630. package/src/astro/routes/api/revisions/[revisionId]/index.ts +0 -29
  631. package/src/astro/routes/api/revisions/[revisionId]/restore.ts +0 -62
  632. package/src/astro/routes/api/schema/collections/[slug]/fields/[fieldSlug].ts +0 -104
  633. package/src/astro/routes/api/schema/collections/[slug]/fields/index.ts +0 -67
  634. package/src/astro/routes/api/schema/collections/[slug]/fields/reorder.ts +0 -45
  635. package/src/astro/routes/api/schema/collections/[slug]/index.ts +0 -107
  636. package/src/astro/routes/api/schema/collections/index.ts +0 -61
  637. package/src/astro/routes/api/schema/index.ts +0 -109
  638. package/src/astro/routes/api/schema/orphans/[slug].ts +0 -36
  639. package/src/astro/routes/api/schema/orphans/index.ts +0 -26
  640. package/src/astro/routes/api/search/enable.ts +0 -64
  641. package/src/astro/routes/api/search/index.ts +0 -52
  642. package/src/astro/routes/api/search/rebuild.ts +0 -72
  643. package/src/astro/routes/api/search/stats.ts +0 -35
  644. package/src/astro/routes/api/search/suggest.ts +0 -50
  645. package/src/astro/routes/api/sections/[slug].ts +0 -203
  646. package/src/astro/routes/api/sections/index.ts +0 -107
  647. package/src/astro/routes/api/settings/email.ts +0 -150
  648. package/src/astro/routes/api/settings.ts +0 -116
  649. package/src/astro/routes/api/setup/admin-verify.ts +0 -122
  650. package/src/astro/routes/api/setup/admin.ts +0 -104
  651. package/src/astro/routes/api/setup/dev-bypass.ts +0 -200
  652. package/src/astro/routes/api/setup/dev-reset.ts +0 -40
  653. package/src/astro/routes/api/setup/index.ts +0 -128
  654. package/src/astro/routes/api/setup/status.ts +0 -122
  655. package/src/astro/routes/api/snapshot.ts +0 -76
  656. package/src/astro/routes/api/taxonomies/[name]/terms/[slug].ts +0 -232
  657. package/src/astro/routes/api/taxonomies/[name]/terms/index.ts +0 -131
  658. package/src/astro/routes/api/taxonomies/index.ts +0 -114
  659. package/src/astro/routes/api/themes/preview.ts +0 -78
  660. package/src/astro/routes/api/typegen.ts +0 -114
  661. package/src/astro/routes/api/well-known/auth.ts +0 -71
  662. package/src/astro/routes/api/well-known/oauth-authorization-server.ts +0 -48
  663. package/src/astro/routes/api/well-known/oauth-protected-resource.ts +0 -39
  664. package/src/astro/routes/api/widget-areas/[name]/reorder.ts +0 -114
  665. package/src/astro/routes/api/widget-areas/[name]/widgets/[id].ts +0 -213
  666. package/src/astro/routes/api/widget-areas/[name]/widgets.ts +0 -126
  667. package/src/astro/routes/api/widget-areas/[name].ts +0 -135
  668. package/src/astro/routes/api/widget-areas/index.ts +0 -149
  669. package/src/astro/routes/api/widget-components.ts +0 -22
  670. package/src/astro/routes/robots.txt.ts +0 -81
  671. package/src/astro/routes/sitemap-[collection].xml.ts +0 -104
  672. package/src/astro/routes/sitemap.xml.ts +0 -92
  673. /package/dist/{adapters-C2ypTrZZ.d.mts → adapters-BLDldpJg.d.mts} +0 -0
  674. /package/{src → dist}/astro/routes/admin.astro +0 -0
  675. /package/dist/{base64-F8-DUraK.mjs → base64-Cz-aU0X1.mjs} +0 -0
  676. /package/dist/{chunks--4F8ddV4.mjs → chunks-D_jVet6z.mjs} +0 -0
  677. /package/dist/{config-BXwuX8Bx.mjs → config-CAMFxGaV.mjs} +0 -0
  678. /package/dist/{db-errors-CEqD7qH9.mjs → db-errors-DKUg_NgF.mjs} +0 -0
  679. /package/dist/{default-VjJyuuG9.mjs → default-C3PZN-bz.mjs} +0 -0
  680. /package/dist/{load-Coc9HpHH.mjs → load-D-9NhLmF.mjs} +0 -0
  681. /package/dist/{mode-47goXBBK.mjs → mode-C80mAZQv.mjs} +0 -0
  682. /package/dist/{placeholder--wOi4TbO.d.mts → placeholder-CHkLckzK.d.mts} +0 -0
  683. /package/dist/{request-cache-Dk5qPSOx.mjs → request-cache-DHMRr2Lf.mjs} +0 -0
  684. /package/dist/{transaction-Cn2rjY78.mjs → transaction-x2tJQ-A1.mjs} +0 -0
  685. /package/dist/{transport-Wge_IzKl.d.mts → transport-6RefuBdV.d.mts} +0 -0
  686. /package/dist/{types-griIBQOQ.mjs → types-B9gKVOHk.mjs} +0 -0
  687. /package/dist/{types-CWbdtiux.d.mts → types-B9qVtiHb.d.mts} +0 -0
  688. /package/dist/{types-COeOq9nK.mjs → types-DL7Y8D_t.mjs} +0 -0
  689. /package/dist/{types-BzcUjoqg.d.mts → types-Djdp0cZO.d.mts} +0 -0
  690. /package/dist/{types-DOrVigru.d.mts → types-Du8jreyC.d.mts} +0 -0
@@ -1,111 +0,0 @@
1
- /**
2
- * WordPress Plugin analyze endpoint
3
- *
4
- * POST /_dineway/api/import/wordpress-plugin/analyze
5
- *
6
- * Analyzes a WordPress site with Dineway Exporter plugin installed.
7
- * Returns content counts, schema compatibility, etc.
8
- */
9
-
10
- import type { APIRoute } from "astro";
11
- import { SchemaRegistry } from "dineway";
12
-
13
- import { requirePerm } from "#api/authorize.js";
14
- import { apiError, apiSuccess, handleError } from "#api/error.js";
15
- import { isParseError, parseBody } from "#api/parse.js";
16
- import { wpPluginAnalyzeBody } from "#api/schemas.js";
17
- import { getSource } from "#import/index.js";
18
- import { resolveAndValidateExternalUrl, SsrfError } from "#import/ssrf.js";
19
- import type { ImportAnalysis } from "#import/types.js";
20
- import type { DinewayHandlers } from "#types";
21
-
22
- export const prerender = false;
23
-
24
- export interface WpPluginAnalyzeResponse {
25
- success: boolean;
26
- analysis?: ImportAnalysis;
27
- error?: { message: string };
28
- }
29
-
30
- export const POST: APIRoute = async ({ request, locals }) => {
31
- const { dineway, user } = locals;
32
-
33
- const denied = requirePerm(user, "import:execute");
34
- if (denied) return denied;
35
-
36
- try {
37
- const body = await parseBody(request, wpPluginAnalyzeBody);
38
- if (isParseError(body)) return body;
39
-
40
- // SSRF: reject internal/private network targets before import work starts.
41
- try {
42
- await resolveAndValidateExternalUrl(body.url);
43
- } catch (e) {
44
- const msg = e instanceof SsrfError ? e.message : "Invalid URL";
45
- return apiError("SSRF_BLOCKED", msg, 400);
46
- }
47
-
48
- // Get the WordPress plugin source
49
- const source = getSource("wordpress-plugin");
50
- if (!source) {
51
- return apiError("NOT_CONFIGURED", "WordPress plugin source not available", 500);
52
- }
53
-
54
- // Build context with existing collections info
55
- const existingCollections = await fetchExistingCollections(dineway?.db);
56
-
57
- // Analyze the site
58
- const analysis = await source.analyze(
59
- { type: "url", url: body.url, token: body.token },
60
- {
61
- db: dineway?.db,
62
- getExistingCollections: async () => existingCollections,
63
- },
64
- );
65
-
66
- return apiSuccess({
67
- success: true,
68
- analysis,
69
- });
70
- } catch (error) {
71
- return handleError(error, "Failed to analyze WordPress site", "WP_PLUGIN_ANALYZE_ERROR");
72
- }
73
- };
74
-
75
- /** Existing collection info from schema registry */
76
- interface ExistingCollection {
77
- slug: string;
78
- fields: Map<string, { type: string }>;
79
- }
80
-
81
- /** Fetch collections and their fields from schema registry */
82
- async function fetchExistingCollections(
83
- db: DinewayHandlers["db"] | undefined,
84
- ): Promise<Map<string, ExistingCollection>> {
85
- const result = new Map<string, ExistingCollection>();
86
-
87
- if (!db) return result;
88
-
89
- try {
90
- const registry = new SchemaRegistry(db);
91
- const collections = await registry.listCollections();
92
-
93
- for (const collection of collections) {
94
- const fields = await registry.listFields(collection.id);
95
- const fieldMap = new Map<string, { type: string }>();
96
-
97
- for (const field of fields) {
98
- fieldMap.set(field.slug, { type: field.type });
99
- }
100
-
101
- result.set(collection.slug, {
102
- slug: collection.slug,
103
- fields: fieldMap,
104
- });
105
- }
106
- } catch (error) {
107
- console.warn("Could not fetch schema registry:", error);
108
- }
109
-
110
- return result;
111
- }
@@ -1,58 +0,0 @@
1
- /**
2
- * WordPress Application Password OAuth callback
3
- *
4
- * GET /_dineway/api/import/wordpress-plugin/callback
5
- *
6
- * WordPress redirects here after user approves the application password.
7
- * We receive the credentials and redirect to the admin import UI with a token.
8
- */
9
-
10
- import type { APIRoute } from "astro";
11
-
12
- import { encodeBase64 } from "#utils/base64.js";
13
-
14
- export const prerender = false;
15
-
16
- export const GET: APIRoute = async ({ url, cookies, redirect }) => {
17
- // WordPress sends these params on success:
18
- // - site_url: The WordPress site URL
19
- // - user_login: The username
20
- // - password: The newly created application password
21
- //
22
- // On rejection, it redirects to reject_url (if provided) or just doesn't include credentials
23
-
24
- const siteUrl = url.searchParams.get("site_url");
25
- const userLogin = url.searchParams.get("user_login");
26
- const password = url.searchParams.get("password");
27
-
28
- // Check if this is a rejection (no credentials)
29
- if (!siteUrl || !userLogin || !password) {
30
- return redirect("/_dineway/admin/import/wordpress?error=auth_rejected");
31
- }
32
-
33
- // Create the Basic Auth token
34
- const token = encodeBase64(`${userLogin}:${password}`);
35
-
36
- // Store credentials in a short-lived cookie (5 minutes)
37
- // This allows the import UI to retrieve them
38
- const authData = JSON.stringify({
39
- siteUrl,
40
- userLogin,
41
- token,
42
- timestamp: Date.now(),
43
- });
44
-
45
- // Base64 encode the auth data for cookie storage
46
- const encodedAuth = encodeBase64(authData);
47
-
48
- cookies.set("dineway_wp_auth", encodedAuth, {
49
- path: "/_dineway/",
50
- maxAge: 300, // 5 minutes
51
- httpOnly: false, // Needs to be readable by JS
52
- secure: url.protocol === "https:",
53
- sameSite: "lax",
54
- });
55
-
56
- // Redirect to import UI - it will pick up the cookie
57
- return redirect("/_dineway/admin/import/wordpress?auth=success");
58
- };
@@ -1,399 +0,0 @@
1
- /**
2
- * WordPress Plugin execute import endpoint
3
- *
4
- * POST /_dineway/api/import/wordpress-plugin/execute
5
- *
6
- * Imports content from WordPress via Dineway Exporter plugin API.
7
- */
8
-
9
- import type { APIRoute } from "astro";
10
- import { ContentRepository, SchemaRegistry } from "dineway";
11
- import { z } from "zod";
12
-
13
- import { requirePerm } from "#api/authorize.js";
14
- import { apiError, apiSuccess, handleError } from "#api/error.js";
15
- import {
16
- ensureWorkflowHitlRouteRequest,
17
- hitlRequiredRouteError,
18
- resolveHitlRouteActor,
19
- } from "#api/hitl-route-helpers.js";
20
- import { isParseError, parseBody } from "#api/parse.js";
21
- import { wpPluginExecuteBody } from "#api/schemas.js";
22
- import { BylineRepository } from "#db/repositories/byline.js";
23
- import { getSource } from "#import/index.js";
24
- import { resolveAndValidateExternalUrl, SsrfError } from "#import/ssrf.js";
25
- import type { ImportConfig, ImportResult, NormalizedItem } from "#import/types.js";
26
- import { resolveImportByline } from "#import/utils.js";
27
- import type { FieldType } from "#schema/types.js";
28
- import { RiskPolicyEvaluator, WordPressImportHitlPayloadBuilder } from "#site-context/index.js";
29
- import type { DinewayHandlers, DinewayManifest } from "#types";
30
- import { slugify } from "#utils/slugify.js";
31
-
32
- export const prerender = false;
33
-
34
- const wpPluginExecuteRouteBody = wpPluginExecuteBody.extend({
35
- hitlRequestId: z.string().min(1).optional(),
36
- });
37
-
38
- export interface WpPluginImportConfig extends ImportConfig {
39
- /** Author mappings (WP author login -> Dineway user ID) */
40
- authorMappings?: Record<string, string | null>;
41
- }
42
-
43
- export interface WpPluginImportResponse {
44
- success: boolean;
45
- result?: ImportResult;
46
- error?: { message: string };
47
- }
48
-
49
- export const POST: APIRoute = async ({ request, locals }) => {
50
- const { dineway, dinewayManifest, user } = locals;
51
-
52
- const denied = requirePerm(user, "import:execute");
53
- if (denied) return denied;
54
-
55
- if (!dineway?.handleContentCreate) {
56
- return apiError("NOT_CONFIGURED", "Dineway is not configured", 500);
57
- }
58
-
59
- try {
60
- const body = await parseBody(request, wpPluginExecuteRouteBody);
61
- if (isParseError(body)) return body;
62
-
63
- // SSRF: reject internal/private network targets before import work starts.
64
- try {
65
- await resolveAndValidateExternalUrl(body.url);
66
- } catch (e) {
67
- const msg = e instanceof SsrfError ? e.message : "Invalid URL";
68
- return apiError("SSRF_BLOCKED", msg, 400);
69
- }
70
-
71
- // eslint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- Zod schema output narrowed to WpPluginImportConfig
72
- const config = body.config as unknown as WpPluginImportConfig;
73
-
74
- // Get the WordPress plugin source
75
- const source = getSource("wordpress-plugin");
76
- if (!source) {
77
- return apiError("NOT_CONFIGURED", "WordPress plugin source not available", 500);
78
- }
79
-
80
- // Build the list of post types to fetch
81
- const postTypes = Object.entries(config.postTypeMappings)
82
- .filter(([_, mapping]) => mapping.enabled)
83
- .map(([postType]) => postType);
84
-
85
- if (postTypes.length === 0) {
86
- return apiError("VALIDATION_ERROR", "No post types selected for import", 400);
87
- }
88
-
89
- console.log("[WP Plugin Import] Starting import for:", body.url);
90
- console.log("[WP Plugin Import] Post types:", postTypes);
91
-
92
- const sourceInput = { type: "url", url: body.url, token: body.token } as const;
93
- const actor = resolveHitlRouteActor(locals);
94
- const evaluator = new RiskPolicyEvaluator({
95
- db: dineway.db,
96
- handlers: dineway,
97
- });
98
- let items: AsyncIterable<NormalizedItem> | Iterable<NormalizedItem>;
99
-
100
- if (evaluator.requiresWorkflowHitl(actor.identity)) {
101
- const fetchedItems = await collectPluginItems(
102
- source.fetchContent(sourceInput, { postTypes, includeDrafts: true }),
103
- );
104
- const action = await new WordPressImportHitlPayloadBuilder().buildPluginExecuteRequest({
105
- siteUrl: body.url,
106
- config,
107
- items: fetchedItems,
108
- });
109
- const decision = await evaluator.evaluateWorkflowHitl({
110
- actor: actor.identity,
111
- hitlRequestId: body.hitlRequestId,
112
- action,
113
- });
114
- if (!decision.allowed) {
115
- const ensured = await ensureWorkflowHitlRouteRequest(dineway.db, locals, decision.action);
116
- return hitlRequiredRouteError(decision, ensured);
117
- }
118
- items = fetchedItems;
119
- } else {
120
- items = source.fetchContent(sourceInput, { postTypes, includeDrafts: true });
121
- }
122
-
123
- // Import content (including drafts since we have auth)
124
- const result = await importContent(items, config, dineway, dinewayManifest);
125
-
126
- console.log("[WP Plugin Import] Import result:", JSON.stringify(result, null, 2));
127
-
128
- return apiSuccess({
129
- success: true,
130
- result,
131
- });
132
- } catch (error) {
133
- return handleError(error, "Failed to import from WordPress", "WP_PLUGIN_IMPORT_ERROR");
134
- }
135
- };
136
-
137
- /** Fields that should be auto-created if they don't exist */
138
- const IMPORT_FIELDS: Array<{
139
- slug: string;
140
- label: string;
141
- type: FieldType;
142
- check: (item: NormalizedItem) => boolean;
143
- }> = [
144
- {
145
- slug: "title",
146
- label: "Title",
147
- type: "string",
148
- check: () => true,
149
- },
150
- {
151
- slug: "content",
152
- label: "Content",
153
- type: "portableText",
154
- check: () => true,
155
- },
156
- {
157
- slug: "excerpt",
158
- label: "Excerpt",
159
- type: "text",
160
- check: (item) => !!item.excerpt,
161
- },
162
- {
163
- slug: "featured_image",
164
- label: "Featured Image",
165
- type: "image",
166
- check: (item) => !!item.featuredImage,
167
- },
168
- ];
169
-
170
- async function importContent(
171
- items: AsyncIterable<NormalizedItem> | Iterable<NormalizedItem>,
172
- config: WpPluginImportConfig,
173
- dineway: DinewayHandlers,
174
- manifest: DinewayManifest,
175
- ): Promise<ImportResult> {
176
- const result: ImportResult = {
177
- success: true,
178
- imported: 0,
179
- skipped: 0,
180
- errors: [],
181
- byCollection: {},
182
- };
183
-
184
- // Create content repository for checking existing items
185
- const contentRepo = new ContentRepository(dineway.db);
186
- const bylineRepo = new BylineRepository(dineway.db);
187
- const bylineCache = new Map<string, string>();
188
- const schemaRegistry = new SchemaRegistry(dineway.db);
189
-
190
- // Track which collections have had fields ensured
191
- const ensuredCollections = new Set<string>();
192
-
193
- // Track source translationGroup -> Dineway item ID for translation linking.
194
- // Maps source-side translation group ID to the Dineway ID of the first item
195
- // imported for that group (the default-locale item).
196
- const translationGroupMap = new Map<string, string>();
197
-
198
- for await (const item of items) {
199
- console.log("[WP Plugin Import] Processing item:", {
200
- sourceId: item.sourceId,
201
- title: item.title,
202
- postType: item.postType,
203
- status: item.status,
204
- contentBlocks: Array.isArray(item.content) ? item.content.length : 0,
205
- featuredImage: item.featuredImage,
206
- locale: item.locale,
207
- translationGroup: item.translationGroup,
208
- });
209
-
210
- const mapping = config.postTypeMappings[item.postType];
211
-
212
- // Skip if not mapped or disabled
213
- if (!mapping || !mapping.enabled) {
214
- result.skipped++;
215
- continue;
216
- }
217
-
218
- const collection = mapping.collection;
219
-
220
- // Check if collection exists in manifest
221
- if (!manifest?.collections[collection]) {
222
- result.errors.push({
223
- title: item.title || "Untitled",
224
- error: `Collection "${collection}" does not exist`,
225
- });
226
- continue;
227
- }
228
-
229
- try {
230
- // Ensure required fields exist in the collection schema (once per collection)
231
- if (!ensuredCollections.has(collection)) {
232
- for (const field of IMPORT_FIELDS) {
233
- if (field.check(item)) {
234
- const existingField = await schemaRegistry.getField(collection, field.slug);
235
- if (!existingField) {
236
- console.log(
237
- `[WP Plugin Import] Creating missing field "${field.slug}" in collection "${collection}"`,
238
- );
239
- try {
240
- await schemaRegistry.createField(collection, {
241
- slug: field.slug,
242
- label: field.label,
243
- type: field.type,
244
- required: false,
245
- });
246
- } catch (e) {
247
- // Field might already exist from concurrent creation
248
- console.log(
249
- `[WP Plugin Import] Field "${field.slug}" creation skipped:`,
250
- e instanceof Error ? e.message : e,
251
- );
252
- }
253
- }
254
- }
255
- }
256
- ensuredCollections.add(collection);
257
- }
258
-
259
- // Generate slug from item slug or title
260
- const slug = item.slug || slugify(item.title || `post-${item.sourceId}`);
261
-
262
- // Check if already exists (idempotency) — locale-aware lookup
263
- if (config.skipExisting) {
264
- const existing = await contentRepo.findBySlug(collection, slug, item.locale);
265
- if (existing) {
266
- // Still track the translation group mapping for later items
267
- if (item.translationGroup) {
268
- translationGroupMap.set(item.translationGroup, existing.id);
269
- }
270
- result.skipped++;
271
- continue;
272
- }
273
- }
274
-
275
- // Map WordPress status to Dineway status
276
- const status = mapStatus(item.status);
277
-
278
- // Build data object - add all applicable fields
279
- const data: Record<string, unknown> = {};
280
-
281
- // Add standard fields
282
- data.title = item.title || "Untitled";
283
- data.content = item.content;
284
-
285
- if (item.excerpt) {
286
- data.excerpt = item.excerpt;
287
- }
288
- if (item.featuredImage) {
289
- data.featured_image = item.featuredImage;
290
- console.log("[WP Plugin Import] Adding featured_image:", item.featuredImage);
291
- }
292
-
293
- // Note: ACF/Yoast/RankMath fields are not added automatically
294
- // They would need matching fields in the Dineway schema
295
-
296
- // Resolve author ID from mappings
297
- let authorId: string | undefined;
298
- if (config.authorMappings && item.author) {
299
- const mappedUserId = config.authorMappings[item.author];
300
- if (mappedUserId !== undefined && mappedUserId !== null) {
301
- authorId = mappedUserId;
302
- }
303
- }
304
-
305
- const bylineId = await resolveImportByline(
306
- item.author,
307
- item.author, // display name fallback is the login
308
- authorId,
309
- bylineRepo,
310
- bylineCache,
311
- );
312
-
313
- // Resolve translation link: if this item has a translationGroup and
314
- // we've already imported another item in the same group, link them.
315
- let translationOf: string | undefined;
316
- if (item.translationGroup) {
317
- const existingGroupItem = translationGroupMap.get(item.translationGroup);
318
- if (existingGroupItem) {
319
- translationOf = existingGroupItem;
320
- }
321
- }
322
-
323
- // Preserve original dates from the source
324
- const itemDateTime = item.date?.getTime();
325
- const createdAt =
326
- itemDateTime !== undefined && !Number.isNaN(itemDateTime)
327
- ? item.date.toISOString()
328
- : undefined;
329
- const publishedAt = status === "published" && createdAt ? createdAt : undefined;
330
-
331
- // Create the content item
332
- const createResult = await dineway.handleContentCreate(collection, {
333
- data,
334
- slug,
335
- status,
336
- authorId,
337
- bylines: bylineId ? [{ bylineId }] : undefined,
338
- locale: item.locale,
339
- translationOf,
340
- createdAt,
341
- publishedAt,
342
- });
343
-
344
- if (createResult.success) {
345
- result.imported++;
346
- result.byCollection[collection] = (result.byCollection[collection] || 0) + 1;
347
-
348
- // Track translation group: first item in a group establishes the mapping
349
- if (item.translationGroup && !translationGroupMap.has(item.translationGroup)) {
350
- // eslint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- handler success data includes id
351
- const createdData = createResult.data as { id?: string } | undefined;
352
- if (createdData?.id) {
353
- translationGroupMap.set(item.translationGroup, createdData.id);
354
- }
355
- }
356
- } else {
357
- result.errors.push({
358
- title: item.title || "Untitled",
359
- error:
360
- typeof createResult.error === "object" && createResult.error !== null
361
- ? (createResult.error as { message?: string }).message || "Unknown error"
362
- : String(createResult.error),
363
- });
364
- }
365
- } catch (error) {
366
- console.error(`Import error for "${item.title || "Untitled"}":`, error);
367
- result.errors.push({
368
- title: item.title || "Untitled",
369
- error: error instanceof Error && error.message ? error.message : "Failed to import item",
370
- });
371
- }
372
- }
373
-
374
- result.success = result.errors.length === 0;
375
- return result;
376
- }
377
-
378
- function mapStatus(wpStatus: string | undefined): string {
379
- switch (wpStatus) {
380
- case "publish":
381
- return "published";
382
- case "draft":
383
- return "draft";
384
- case "pending":
385
- return "draft";
386
- case "private":
387
- return "draft";
388
- default:
389
- return "draft";
390
- }
391
- }
392
-
393
- async function collectPluginItems(items: AsyncIterable<NormalizedItem>): Promise<NormalizedItem[]> {
394
- const collected: NormalizedItem[] = [];
395
- for await (const item of items) {
396
- collected.push(item);
397
- }
398
- return collected;
399
- }
@@ -1,75 +0,0 @@
1
- /**
2
- * Admin manifest endpoint - injected by Dineway integration
3
- *
4
- * GET /_dineway/api/manifest
5
- *
6
- * Returns the admin manifest with collection definitions and plugin info.
7
- * The manifest is generated from the user's live.config.ts at runtime.
8
- */
9
-
10
- import type { APIRoute } from "astro";
11
-
12
- import { getAuthMode } from "#auth/mode.js";
13
-
14
- import { experimentalSiteContextWorkflowsEnabled } from "../../../site-context/experimental-workflows.js";
15
- import { COMMIT, VERSION } from "../../../version.js";
16
- import { getStoredConfig } from "../../integration/runtime.js";
17
- import type { DinewayManifest } from "../../types.js";
18
-
19
- export const prerender = false;
20
-
21
- export const GET: APIRoute = async ({ locals }) => {
22
- const { dinewayManifest, dineway } = locals;
23
-
24
- // Determine auth mode from config
25
- const authMode = getAuthMode(dineway?.config);
26
- const adminBranding = dinewayManifest?.admin ?? dineway?.config.admin ?? getStoredConfig()?.admin;
27
-
28
- // Check if self-signup is enabled (any allowed domain with enabled = 1)
29
- // Only relevant for passkey auth — external auth providers handle their own signup
30
- let signupEnabled = false;
31
- if (dineway?.db && authMode.type === "passkey") {
32
- try {
33
- const { sql } = await import("kysely");
34
- const result = await sql<{ cnt: unknown }>`
35
- SELECT COUNT(*) as cnt FROM allowed_domains WHERE enabled = 1
36
- `.execute(dineway.db);
37
- signupEnabled = Number(result.rows[0]?.cnt ?? 0) > 0;
38
- } catch {
39
- // Table may not exist yet, that's fine
40
- }
41
- }
42
-
43
- const manifest: DinewayManifest = dinewayManifest
44
- ? {
45
- ...dinewayManifest,
46
- features: {
47
- ...dinewayManifest.features,
48
- siteContextWorkflows: experimentalSiteContextWorkflowsEnabled(),
49
- },
50
- authMode: authMode.type === "external" ? authMode.providerType : "passkey",
51
- signupEnabled,
52
- admin: adminBranding,
53
- }
54
- : {
55
- version: VERSION,
56
- commit: COMMIT,
57
- hash: "default",
58
- collections: {},
59
- plugins: {},
60
- features: { siteContextWorkflows: experimentalSiteContextWorkflowsEnabled() },
61
- taxonomies: [],
62
- authMode: "passkey",
63
- signupEnabled,
64
- admin: adminBranding,
65
- };
66
-
67
- return Response.json(
68
- { data: manifest },
69
- {
70
- headers: {
71
- "Cache-Control": "private, no-store",
72
- },
73
- },
74
- );
75
- };