dineway 0.1.9 → 0.1.12

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 (720) hide show
  1. package/README.md +63 -17
  2. package/dist/activity-events-B4wp7CrU.mjs +540 -0
  3. package/dist/allowed-origins-C1AKK9AT.mjs +68 -0
  4. package/dist/api/route-utils.d.mts +42 -0
  5. package/dist/api/route-utils.mjs +26 -0
  6. package/dist/api/schemas/index.d.mts +3 -0
  7. package/dist/api/schemas/index.mjs +6 -0
  8. package/dist/api/schemas/setup.d.mts +42 -0
  9. package/dist/api/schemas/setup.mjs +39 -0
  10. package/dist/api-BR7Y0GBo.mjs +2704 -0
  11. package/dist/api-tokens-CPjC3zf8.mjs +3 -0
  12. package/dist/api-tokens-D7UjLbdt.mjs +153 -0
  13. package/dist/{apply-iVSqz2qs.mjs → apply-Bm5QgdrE.mjs} +15 -689
  14. package/dist/astro/index.d.mts +11 -6
  15. package/dist/astro/index.mjs +86 -11
  16. package/dist/astro/middleware/auth.d.mts +11 -7
  17. package/dist/astro/middleware/auth.mjs +19 -104
  18. package/dist/astro/middleware/redirect.mjs +24 -14
  19. package/dist/astro/middleware/request-context.mjs +9 -6
  20. package/dist/astro/middleware/setup.mjs +1 -1
  21. package/dist/astro/middleware.mjs +88 -145
  22. package/dist/astro/routes/PluginRegistry.d.mts +14 -0
  23. package/dist/astro/routes/PluginRegistry.mjs +24 -0
  24. package/dist/astro/routes/api/admin/allowed-domains/_domain_.d.mts +14 -0
  25. package/dist/astro/routes/api/admin/allowed-domains/_domain_.mjs +65 -0
  26. package/dist/astro/routes/api/admin/allowed-domains/index.d.mts +14 -0
  27. package/dist/astro/routes/api/admin/allowed-domains/index.mjs +65 -0
  28. package/dist/astro/routes/api/admin/api-tokens/_id_.d.mts +10 -0
  29. package/dist/astro/routes/api/admin/api-tokens/_id_.mjs +33 -0
  30. package/dist/astro/routes/api/admin/api-tokens/index.d.mts +16 -0
  31. package/dist/astro/routes/api/admin/api-tokens/index.mjs +59 -0
  32. package/dist/astro/routes/api/admin/briefing.d.mts +7 -0
  33. package/dist/astro/routes/api/admin/briefing.mjs +71 -0
  34. package/dist/astro/routes/api/admin/bylines/_id_/index.d.mts +9 -0
  35. package/dist/astro/routes/api/admin/bylines/_id_/index.mjs +74 -0
  36. package/dist/astro/routes/api/admin/bylines/index.d.mts +8 -0
  37. package/dist/astro/routes/api/admin/bylines/index.mjs +61 -0
  38. package/dist/astro/routes/api/admin/comments/_id_/status.d.mts +7 -0
  39. package/dist/astro/routes/api/admin/comments/_id_/status.mjs +80 -0
  40. package/dist/astro/routes/api/admin/comments/_id_.d.mts +14 -0
  41. package/dist/astro/routes/api/admin/comments/_id_.mjs +46 -0
  42. package/dist/astro/routes/api/admin/comments/bulk.d.mts +7 -0
  43. package/dist/astro/routes/api/admin/comments/bulk.mjs +36 -0
  44. package/dist/astro/routes/api/admin/comments/counts.d.mts +7 -0
  45. package/dist/astro/routes/api/admin/comments/counts.mjs +24 -0
  46. package/dist/astro/routes/api/admin/comments/index.d.mts +10 -0
  47. package/dist/astro/routes/api/admin/comments/index.mjs +40 -0
  48. package/dist/astro/routes/api/admin/context/_id_/history.d.mts +7 -0
  49. package/dist/astro/routes/api/admin/context/_id_/history.mjs +46 -0
  50. package/dist/astro/routes/api/admin/context/_id_/index.d.mts +7 -0
  51. package/dist/astro/routes/api/admin/context/_id_/index.mjs +46 -0
  52. package/dist/astro/routes/api/admin/context/_id_/review.d.mts +7 -0
  53. package/dist/astro/routes/api/admin/context/_id_/review.mjs +61 -0
  54. package/dist/astro/routes/api/admin/context/_id_/supersede.d.mts +7 -0
  55. package/dist/astro/routes/api/admin/context/_id_/supersede.mjs +64 -0
  56. package/dist/astro/routes/api/admin/context/diff.d.mts +7 -0
  57. package/dist/astro/routes/api/admin/context/diff.mjs +50 -0
  58. package/dist/astro/routes/api/admin/context/index.d.mts +8 -0
  59. package/dist/astro/routes/api/admin/context/index.mjs +72 -0
  60. package/dist/astro/routes/api/admin/context/stale.d.mts +7 -0
  61. package/dist/astro/routes/api/admin/context/stale.mjs +50 -0
  62. package/dist/astro/routes/api/admin/hitl-requests/_id_/index.d.mts +7 -0
  63. package/dist/astro/routes/api/admin/hitl-requests/_id_/index.mjs +52 -0
  64. package/dist/astro/routes/api/admin/hitl-requests/_id_/resolve.d.mts +7 -0
  65. package/dist/astro/routes/api/admin/hitl-requests/_id_/resolve.mjs +68 -0
  66. package/dist/astro/routes/api/admin/hitl-requests/index.d.mts +7 -0
  67. package/dist/astro/routes/api/admin/hitl-requests/index.mjs +56 -0
  68. package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.d.mts +7 -0
  69. package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.mjs +99 -0
  70. package/dist/astro/routes/api/admin/hooks/exclusive/index.d.mts +7 -0
  71. package/dist/astro/routes/api/admin/hooks/exclusive/index.mjs +33 -0
  72. package/dist/astro/routes/api/admin/oauth-clients/_id_.d.mts +18 -0
  73. package/dist/astro/routes/api/admin/oauth-clients/_id_.mjs +79 -0
  74. package/dist/astro/routes/api/admin/oauth-clients/index.d.mts +14 -0
  75. package/dist/astro/routes/api/admin/oauth-clients/index.mjs +58 -0
  76. package/dist/astro/routes/api/admin/plugins/_id_/disable.d.mts +7 -0
  77. package/dist/astro/routes/api/admin/plugins/_id_/disable.mjs +90 -0
  78. package/dist/astro/routes/api/admin/plugins/_id_/enable.d.mts +7 -0
  79. package/dist/astro/routes/api/admin/plugins/_id_/enable.mjs +90 -0
  80. package/dist/astro/routes/api/admin/plugins/_id_/index.d.mts +7 -0
  81. package/dist/astro/routes/api/admin/plugins/_id_/index.mjs +55 -0
  82. package/dist/astro/routes/api/admin/plugins/_id_/uninstall.d.mts +7 -0
  83. package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs +99 -0
  84. package/dist/astro/routes/api/admin/plugins/_id_/update.d.mts +7 -0
  85. package/dist/astro/routes/api/admin/plugins/_id_/update.mjs +132 -0
  86. package/dist/astro/routes/api/admin/plugins/index.d.mts +7 -0
  87. package/dist/astro/routes/api/admin/plugins/index.mjs +53 -0
  88. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.d.mts +7 -0
  89. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.mjs +36 -0
  90. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.d.mts +7 -0
  91. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs +55 -0
  92. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.d.mts +7 -0
  93. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs +129 -0
  94. package/dist/astro/routes/api/admin/plugins/marketplace/index.d.mts +7 -0
  95. package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs +62 -0
  96. package/dist/astro/routes/api/admin/plugins/updates.d.mts +7 -0
  97. package/dist/astro/routes/api/admin/plugins/updates.mjs +53 -0
  98. package/dist/astro/routes/api/admin/review-requests/_id_/index.d.mts +7 -0
  99. package/dist/astro/routes/api/admin/review-requests/_id_/index.mjs +26 -0
  100. package/dist/astro/routes/api/admin/review-requests/_id_/resolve.d.mts +7 -0
  101. package/dist/astro/routes/api/admin/review-requests/_id_/resolve.mjs +98 -0
  102. package/dist/astro/routes/api/admin/review-requests/index.d.mts +7 -0
  103. package/dist/astro/routes/api/admin/review-requests/index.mjs +31 -0
  104. package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.d.mts +7 -0
  105. package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs +55 -0
  106. package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.d.mts +7 -0
  107. package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.mjs +36 -0
  108. package/dist/astro/routes/api/admin/themes/marketplace/index.d.mts +7 -0
  109. package/dist/astro/routes/api/admin/themes/marketplace/index.mjs +71 -0
  110. package/dist/astro/routes/api/admin/users/_id_/disable.d.mts +7 -0
  111. package/dist/astro/routes/api/admin/users/_id_/disable.mjs +38 -0
  112. package/dist/astro/routes/api/admin/users/_id_/enable.d.mts +7 -0
  113. package/dist/astro/routes/api/admin/users/_id_/enable.mjs +29 -0
  114. package/dist/astro/routes/api/admin/users/_id_/index.d.mts +8 -0
  115. package/dist/astro/routes/api/admin/users/_id_/index.mjs +104 -0
  116. package/dist/astro/routes/api/admin/users/_id_/send-recovery.d.mts +7 -0
  117. package/dist/astro/routes/api/admin/users/_id_/send-recovery.mjs +43 -0
  118. package/dist/astro/routes/api/admin/users/index.d.mts +7 -0
  119. package/dist/astro/routes/api/admin/users/index.mjs +54 -0
  120. package/dist/astro/routes/api/auth/dev-bypass.d.mts +8 -0
  121. package/dist/astro/routes/api/auth/dev-bypass.mjs +81 -0
  122. package/dist/astro/routes/api/auth/invite/accept.d.mts +7 -0
  123. package/dist/astro/routes/api/auth/invite/accept.mjs +31 -0
  124. package/dist/astro/routes/api/auth/invite/complete.d.mts +7 -0
  125. package/dist/astro/routes/api/auth/invite/complete.mjs +54 -0
  126. package/dist/astro/routes/api/auth/invite/index.d.mts +7 -0
  127. package/dist/astro/routes/api/auth/invite/index.mjs +51 -0
  128. package/dist/astro/routes/api/auth/invite/register-options.d.mts +7 -0
  129. package/dist/astro/routes/api/auth/invite/register-options.mjs +44 -0
  130. package/dist/astro/routes/api/auth/logout.d.mts +7 -0
  131. package/dist/astro/routes/api/auth/logout.mjs +24 -0
  132. package/dist/astro/routes/api/auth/magic-link/send.d.mts +7 -0
  133. package/dist/astro/routes/api/auth/magic-link/send.mjs +48 -0
  134. package/dist/astro/routes/api/auth/magic-link/verify.d.mts +7 -0
  135. package/dist/astro/routes/api/auth/magic-link/verify.mjs +32 -0
  136. package/dist/astro/routes/api/auth/me.d.mts +13 -0
  137. package/dist/astro/routes/api/auth/me.mjs +41 -0
  138. package/dist/astro/routes/api/auth/mode.d.mts +7 -0
  139. package/dist/astro/routes/api/auth/mode.mjs +28 -0
  140. package/dist/astro/routes/api/auth/oauth/_provider_/callback.d.mts +7 -0
  141. package/dist/astro/routes/api/auth/oauth/_provider_/callback.mjs +114 -0
  142. package/dist/astro/routes/api/auth/oauth/_provider_.d.mts +7 -0
  143. package/dist/astro/routes/api/auth/oauth/_provider_.mjs +58 -0
  144. package/dist/astro/routes/api/auth/passkey/_id_.d.mts +14 -0
  145. package/dist/astro/routes/api/auth/passkey/_id_.mjs +62 -0
  146. package/dist/astro/routes/api/auth/passkey/index.d.mts +7 -0
  147. package/dist/astro/routes/api/auth/passkey/index.mjs +25 -0
  148. package/dist/astro/routes/api/auth/passkey/options.d.mts +7 -0
  149. package/dist/astro/routes/api/auth/passkey/options.mjs +46 -0
  150. package/dist/astro/routes/api/auth/passkey/register/options.d.mts +7 -0
  151. package/dist/astro/routes/api/auth/passkey/register/options.mjs +44 -0
  152. package/dist/astro/routes/api/auth/passkey/register/verify.d.mts +7 -0
  153. package/dist/astro/routes/api/auth/passkey/register/verify.mjs +59 -0
  154. package/dist/astro/routes/api/auth/passkey/verify.d.mts +7 -0
  155. package/dist/astro/routes/api/auth/passkey/verify.mjs +47 -0
  156. package/dist/astro/routes/api/auth/signup/complete.d.mts +7 -0
  157. package/dist/astro/routes/api/auth/signup/complete.mjs +55 -0
  158. package/dist/astro/routes/api/auth/signup/request.d.mts +7 -0
  159. package/dist/astro/routes/api/auth/signup/request.mjs +44 -0
  160. package/dist/astro/routes/api/auth/signup/verify.d.mts +7 -0
  161. package/dist/astro/routes/api/auth/signup/verify.mjs +32 -0
  162. package/dist/astro/routes/api/comments/_collection_/_contentId_/index.d.mts +14 -0
  163. package/dist/astro/routes/api/comments/_collection_/_contentId_/index.mjs +193 -0
  164. package/dist/astro/routes/api/content/_collection_/_id_/compare.d.mts +7 -0
  165. package/dist/astro/routes/api/content/_collection_/_id_/compare.mjs +17 -0
  166. package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.d.mts +7 -0
  167. package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs +36 -0
  168. package/dist/astro/routes/api/content/_collection_/_id_/duplicate.d.mts +7 -0
  169. package/dist/astro/routes/api/content/_collection_/_id_/duplicate.mjs +39 -0
  170. package/dist/astro/routes/api/content/_collection_/_id_/permanent.d.mts +7 -0
  171. package/dist/astro/routes/api/content/_collection_/_id_/permanent.mjs +31 -0
  172. package/dist/astro/routes/api/content/_collection_/_id_/preview-url.d.mts +7 -0
  173. package/dist/astro/routes/api/content/_collection_/_id_/preview-url.mjs +78 -0
  174. package/dist/astro/routes/api/content/_collection_/_id_/publish.d.mts +7 -0
  175. package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs +93 -0
  176. package/dist/astro/routes/api/content/_collection_/_id_/restore.d.mts +7 -0
  177. package/dist/astro/routes/api/content/_collection_/_id_/restore.mjs +36 -0
  178. package/dist/astro/routes/api/content/_collection_/_id_/revisions.d.mts +7 -0
  179. package/dist/astro/routes/api/content/_collection_/_id_/revisions.mjs +19 -0
  180. package/dist/astro/routes/api/content/_collection_/_id_/schedule.d.mts +8 -0
  181. package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs +75 -0
  182. package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.d.mts +14 -0
  183. package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.mjs +85 -0
  184. package/dist/astro/routes/api/content/_collection_/_id_/translations.d.mts +7 -0
  185. package/dist/astro/routes/api/content/_collection_/_id_/translations.mjs +40 -0
  186. package/dist/astro/routes/api/content/_collection_/_id_/unpublish.d.mts +7 -0
  187. package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs +36 -0
  188. package/dist/astro/routes/api/content/_collection_/_id_.d.mts +9 -0
  189. package/dist/astro/routes/api/content/_collection_/_id_.mjs +114 -0
  190. package/dist/astro/routes/api/content/_collection_/index.d.mts +8 -0
  191. package/dist/astro/routes/api/content/_collection_/index.mjs +74 -0
  192. package/dist/astro/routes/api/content/_collection_/trash.d.mts +7 -0
  193. package/dist/astro/routes/api/content/_collection_/trash.mjs +23 -0
  194. package/dist/astro/routes/api/dashboard.d.mts +7 -0
  195. package/dist/astro/routes/api/dashboard.mjs +26 -0
  196. package/dist/astro/routes/api/dev/emails.d.mts +8 -0
  197. package/dist/astro/routes/api/dev/emails.mjs +17 -0
  198. package/dist/astro/routes/api/health.d.mts +7 -0
  199. package/dist/astro/routes/api/health.mjs +34 -0
  200. package/dist/astro/routes/api/import/probe.d.mts +17 -0
  201. package/dist/astro/routes/api/import/probe.mjs +33 -0
  202. package/dist/astro/routes/api/import/wordpress/analyze.d.mts +87 -0
  203. package/dist/astro/routes/api/import/wordpress/analyze.mjs +305 -0
  204. package/dist/astro/routes/api/import/wordpress/execute.d.mts +37 -0
  205. package/dist/astro/routes/api/import/wordpress/execute.mjs +198 -0
  206. package/dist/astro/routes/api/import/wordpress/media.d.mts +35 -0
  207. package/dist/astro/routes/api/import/wordpress/media.mjs +222 -0
  208. package/dist/astro/routes/api/import/wordpress/prepare.d.mts +19 -0
  209. package/dist/astro/routes/api/import/wordpress/prepare.mjs +156 -0
  210. package/dist/astro/routes/api/import/wordpress/rewrite-urls.d.mts +21 -0
  211. package/dist/astro/routes/api/import/wordpress/rewrite-urls.mjs +290 -0
  212. package/dist/astro/routes/api/import/wordpress-plugin/analyze.d.mts +15 -0
  213. package/dist/astro/routes/api/import/wordpress-plugin/analyze.mjs +69 -0
  214. package/dist/astro/routes/api/import/wordpress-plugin/callback.d.mts +7 -0
  215. package/dist/astro/routes/api/import/wordpress-plugin/callback.mjs +28 -0
  216. package/dist/astro/routes/api/import/wordpress-plugin/execute.d.mts +19 -0
  217. package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs +269 -0
  218. package/dist/astro/routes/api/manifest.d.mts +7 -0
  219. package/dist/astro/routes/api/manifest.mjs +50 -0
  220. package/dist/astro/routes/api/mcp.d.mts +15 -0
  221. package/dist/astro/routes/api/mcp.mjs +2701 -0
  222. package/dist/astro/routes/api/media/_id_/confirm.d.mts +10 -0
  223. package/dist/astro/routes/api/media/_id_/confirm.mjs +59 -0
  224. package/dist/astro/routes/api/media/_id_.d.mts +22 -0
  225. package/dist/astro/routes/api/media/_id_.mjs +81 -0
  226. package/dist/astro/routes/api/media/file/_...key_.d.mts +7 -0
  227. package/dist/astro/routes/api/media/file/_...key_.mjs +49 -0
  228. package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.d.mts +14 -0
  229. package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.mjs +49 -0
  230. package/dist/astro/routes/api/media/providers/_providerId_/index.d.mts +14 -0
  231. package/dist/astro/routes/api/media/providers/_providerId_/index.mjs +72 -0
  232. package/dist/astro/routes/api/media/providers/index.d.mts +10 -0
  233. package/dist/astro/routes/api/media/providers/index.mjs +18 -0
  234. package/dist/astro/routes/api/media/upload-url.d.mts +10 -0
  235. package/dist/astro/routes/api/media/upload-url.mjs +82 -0
  236. package/dist/astro/routes/api/media.d.mts +16 -0
  237. package/dist/astro/routes/api/media.mjs +137 -0
  238. package/dist/astro/routes/api/menus/_name_/items.d.mts +9 -0
  239. package/dist/astro/routes/api/menus/_name_/items.mjs +165 -0
  240. package/dist/astro/routes/api/menus/_name_/reorder.d.mts +7 -0
  241. package/dist/astro/routes/api/menus/_name_/reorder.mjs +78 -0
  242. package/dist/astro/routes/api/menus/_name_.d.mts +9 -0
  243. package/dist/astro/routes/api/menus/_name_.mjs +124 -0
  244. package/dist/astro/routes/api/menus/index.d.mts +8 -0
  245. package/dist/astro/routes/api/menus/index.mjs +85 -0
  246. package/dist/astro/routes/api/oauth/authorize.d.mts +8 -0
  247. package/dist/astro/routes/api/oauth/authorize.mjs +265 -0
  248. package/dist/astro/routes/api/oauth/device/authorize.d.mts +7 -0
  249. package/dist/astro/routes/api/oauth/device/authorize.mjs +30 -0
  250. package/dist/astro/routes/api/oauth/device/code.d.mts +7 -0
  251. package/dist/astro/routes/api/oauth/device/code.mjs +34 -0
  252. package/dist/astro/routes/api/oauth/device/token.d.mts +7 -0
  253. package/dist/astro/routes/api/oauth/device/token.mjs +45 -0
  254. package/dist/astro/routes/api/oauth/register.d.mts +8 -0
  255. package/dist/astro/routes/api/oauth/register.mjs +115 -0
  256. package/dist/astro/routes/api/oauth/token/refresh.d.mts +7 -0
  257. package/dist/astro/routes/api/oauth/token/refresh.mjs +28 -0
  258. package/dist/astro/routes/api/oauth/token/revoke.d.mts +7 -0
  259. package/dist/astro/routes/api/oauth/token/revoke.mjs +25 -0
  260. package/dist/astro/routes/api/oauth/token.d.mts +8 -0
  261. package/dist/astro/routes/api/oauth/token.mjs +138 -0
  262. package/dist/astro/routes/api/openapi.json.d.mts +7 -0
  263. package/dist/astro/routes/api/openapi.json.mjs +2638 -0
  264. package/dist/astro/routes/api/plugins/_pluginId_/_...path_.d.mts +11 -0
  265. package/dist/astro/routes/api/plugins/_pluginId_/_...path_.mjs +77 -0
  266. package/dist/astro/routes/api/redirects/404s/index.d.mts +9 -0
  267. package/dist/astro/routes/api/redirects/404s/index.mjs +62 -0
  268. package/dist/astro/routes/api/redirects/404s/summary.d.mts +7 -0
  269. package/dist/astro/routes/api/redirects/404s/summary.mjs +34 -0
  270. package/dist/astro/routes/api/redirects/_id_.d.mts +9 -0
  271. package/dist/astro/routes/api/redirects/_id_.mjs +153 -0
  272. package/dist/astro/routes/api/redirects/index.d.mts +8 -0
  273. package/dist/astro/routes/api/redirects/index.mjs +98 -0
  274. package/dist/astro/routes/api/revisions/_revisionId_/index.d.mts +7 -0
  275. package/dist/astro/routes/api/revisions/_revisionId_/index.mjs +16 -0
  276. package/dist/astro/routes/api/revisions/_revisionId_/restore.d.mts +7 -0
  277. package/dist/astro/routes/api/revisions/_revisionId_/restore.mjs +23 -0
  278. package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.d.mts +9 -0
  279. package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs +99 -0
  280. package/dist/astro/routes/api/schema/collections/_slug_/fields/index.d.mts +8 -0
  281. package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs +81 -0
  282. package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.d.mts +7 -0
  283. package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs +68 -0
  284. package/dist/astro/routes/api/schema/collections/_slug_/index.d.mts +9 -0
  285. package/dist/astro/routes/api/schema/collections/_slug_/index.mjs +98 -0
  286. package/dist/astro/routes/api/schema/collections/index.d.mts +8 -0
  287. package/dist/astro/routes/api/schema/collections/index.mjs +78 -0
  288. package/dist/astro/routes/api/schema/index.d.mts +7 -0
  289. package/dist/astro/routes/api/schema/index.mjs +79 -0
  290. package/dist/astro/routes/api/schema/orphans/_slug_.d.mts +7 -0
  291. package/dist/astro/routes/api/schema/orphans/_slug_.mjs +59 -0
  292. package/dist/astro/routes/api/schema/orphans/index.d.mts +7 -0
  293. package/dist/astro/routes/api/schema/orphans/index.mjs +54 -0
  294. package/dist/astro/routes/api/search/enable.d.mts +15 -0
  295. package/dist/astro/routes/api/search/enable.mjs +55 -0
  296. package/dist/astro/routes/api/search/index.d.mts +16 -0
  297. package/dist/astro/routes/api/search/index.mjs +52 -0
  298. package/dist/astro/routes/api/search/rebuild.d.mts +13 -0
  299. package/dist/astro/routes/api/search/rebuild.mjs +48 -0
  300. package/dist/astro/routes/api/search/stats.d.mts +10 -0
  301. package/dist/astro/routes/api/search/stats.mjs +28 -0
  302. package/dist/astro/routes/api/search/suggest.d.mts +15 -0
  303. package/dist/astro/routes/api/search/suggest.mjs +43 -0
  304. package/dist/astro/routes/api/sections/_slug_.d.mts +9 -0
  305. package/dist/astro/routes/api/sections/_slug_.mjs +157 -0
  306. package/dist/astro/routes/api/sections/index.d.mts +8 -0
  307. package/dist/astro/routes/api/sections/index.mjs +100 -0
  308. package/dist/astro/routes/api/settings/email.d.mts +17 -0
  309. package/dist/astro/routes/api/settings/email.mjs +102 -0
  310. package/dist/astro/routes/api/settings.d.mts +20 -0
  311. package/dist/astro/routes/api/settings.mjs +102 -0
  312. package/dist/astro/routes/api/setup/admin-verify.d.mts +7 -0
  313. package/dist/astro/routes/api/setup/admin-verify.mjs +67 -0
  314. package/dist/astro/routes/api/setup/admin.d.mts +7 -0
  315. package/dist/astro/routes/api/setup/admin.mjs +68 -0
  316. package/dist/astro/routes/api/setup/dev-bypass.d.mts +8 -0
  317. package/dist/astro/routes/api/setup/dev-bypass.mjs +137 -0
  318. package/dist/astro/routes/api/setup/dev-reset.d.mts +7 -0
  319. package/dist/astro/routes/api/setup/dev-reset.mjs +22 -0
  320. package/dist/astro/routes/api/setup/index.d.mts +7 -0
  321. package/dist/astro/routes/api/setup/index.mjs +93 -0
  322. package/dist/astro/routes/api/setup/status.d.mts +7 -0
  323. package/dist/astro/routes/api/setup/status.mjs +57 -0
  324. package/dist/astro/routes/api/snapshot.d.mts +7 -0
  325. package/dist/astro/routes/api/snapshot.mjs +227 -0
  326. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.d.mts +18 -0
  327. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.mjs +190 -0
  328. package/dist/astro/routes/api/taxonomies/_name_/terms/index.d.mts +14 -0
  329. package/dist/astro/routes/api/taxonomies/_name_/terms/index.mjs +114 -0
  330. package/dist/astro/routes/api/taxonomies/index.d.mts +14 -0
  331. package/dist/astro/routes/api/taxonomies/index.mjs +104 -0
  332. package/dist/astro/routes/api/themes/preview.d.mts +7 -0
  333. package/dist/astro/routes/api/themes/preview.mjs +47 -0
  334. package/dist/astro/routes/api/typegen.d.mts +17 -0
  335. package/dist/astro/routes/api/typegen.mjs +75 -0
  336. package/dist/astro/routes/api/well-known/auth.d.mts +7 -0
  337. package/dist/astro/routes/api/well-known/auth.mjs +42 -0
  338. package/dist/astro/routes/api/well-known/oauth-authorization-server.d.mts +7 -0
  339. package/dist/astro/routes/api/well-known/oauth-authorization-server.mjs +33 -0
  340. package/dist/astro/routes/api/well-known/oauth-protected-resource.d.mts +7 -0
  341. package/dist/astro/routes/api/well-known/oauth-protected-resource.mjs +21 -0
  342. package/dist/astro/routes/api/widget-areas/_name_/reorder.d.mts +7 -0
  343. package/dist/astro/routes/api/widget-areas/_name_/reorder.mjs +89 -0
  344. package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.d.mts +8 -0
  345. package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.mjs +159 -0
  346. package/dist/astro/routes/api/widget-areas/_name_/widgets.d.mts +7 -0
  347. package/dist/astro/routes/api/widget-areas/_name_/widgets.mjs +105 -0
  348. package/dist/astro/routes/api/widget-areas/_name_.d.mts +8 -0
  349. package/dist/astro/routes/api/widget-areas/_name_.mjs +100 -0
  350. package/dist/astro/routes/api/widget-areas/index.d.mts +8 -0
  351. package/dist/astro/routes/api/widget-areas/index.mjs +109 -0
  352. package/dist/astro/routes/api/widget-components.d.mts +7 -0
  353. package/dist/astro/routes/api/widget-components.mjs +15 -0
  354. package/dist/astro/routes/robots.txt.d.mts +7 -0
  355. package/dist/astro/routes/robots.txt.mjs +60 -0
  356. package/dist/astro/routes/sitemap-_collection_.xml.d.mts +7 -0
  357. package/dist/astro/routes/sitemap-_collection_.xml.mjs +70 -0
  358. package/dist/astro/routes/sitemap.xml.d.mts +7 -0
  359. package/dist/astro/routes/sitemap.xml.mjs +63 -0
  360. package/dist/astro/types.d.mts +42 -9
  361. package/dist/auth/providers/github-admin.d.mts +9 -0
  362. package/dist/auth/providers/github-admin.mjs +27 -0
  363. package/dist/auth/providers/github.d.mts +12 -0
  364. package/dist/auth/providers/github.mjs +17 -0
  365. package/dist/auth/providers/google-admin.d.mts +9 -0
  366. package/dist/auth/providers/google-admin.mjs +43 -0
  367. package/dist/auth/providers/google.d.mts +12 -0
  368. package/dist/auth/providers/google.mjs +17 -0
  369. package/dist/auth-control-guard-DOZ3UCsP.mjs +13 -0
  370. package/dist/authorize-BAdbMCwC.mjs +36 -0
  371. package/dist/briefing-MVYe_Uyf.mjs +1294 -0
  372. package/dist/briefing-rty4O-wa.mjs +29 -0
  373. package/dist/{byline-OhH2dlRu.mjs → byline-naZxOPSa.mjs} +3 -3
  374. package/dist/{bylines-BGpD9_hy.mjs → bylines-C4LIBOOO.mjs} +20 -53
  375. package/dist/bylines-eVVCuOe4.d.mts +2023 -0
  376. package/dist/{cache-BdSY-gQN.mjs → cache-DEbQ13c9.mjs} +21 -11
  377. package/dist/challenge-store-DDTbisbf.mjs +48 -0
  378. package/dist/cli/index.mjs +142 -22
  379. package/dist/client/external-auth-headers.d.mts +1 -1
  380. package/dist/client/index.d.mts +1 -1
  381. package/dist/client/index.mjs +3 -3
  382. package/dist/comment-DFO-gWDH.mjs +246 -0
  383. package/dist/comments--BsZ9pqA.mjs +186 -0
  384. package/dist/components-BPknylYg.mjs +107 -0
  385. package/dist/{content-DWi4d0rT.mjs → content-CyLkb-qH.mjs} +33 -44
  386. package/dist/context-CNIkMzot.mjs +849 -0
  387. package/dist/context-DNfcm853.mjs +184 -0
  388. package/dist/context-route-helpers-MurhoxWF.mjs +45 -0
  389. package/dist/context-types-C-LwdAxx.mjs +23 -0
  390. package/dist/cron-CKxvBrRT.mjs +263 -0
  391. package/dist/dashboard-DqnYU8EU.mjs +120 -0
  392. package/dist/db/index.d.mts +3 -3
  393. package/dist/db/libsql.d.mts +1 -1
  394. package/dist/db/libsql.mjs +3 -3
  395. package/dist/db/postgres.d.mts +1 -1
  396. package/dist/db/sqlite.d.mts +1 -1
  397. package/dist/db/sqlite.mjs +1 -2
  398. package/dist/device-flow-BGEH5jfn.mjs +487 -0
  399. package/dist/email-console-CuefUXfX.mjs +36 -0
  400. package/dist/entity-aliases-C0v-yNET.mjs +51 -0
  401. package/dist/error-BMUPwxgx.mjs +435 -0
  402. package/dist/escape-BRVaw1Ai.mjs +8 -0
  403. package/dist/experimental-workflows-C9X7yblQ.mjs +38 -0
  404. package/dist/fts-manager-B1pTNEG_.mjs +297 -0
  405. package/dist/hash-CDX7M0ze.mjs +32 -0
  406. package/dist/hitl-requests-ChT32Ilo.mjs +118 -0
  407. package/dist/hitl-route-helpers-CSit54Ru.mjs +96 -0
  408. package/dist/import-BHRLhXAn.mjs +1323 -0
  409. package/dist/import-CNcKWTbp.mjs +243 -0
  410. package/dist/index-CYfhYgXd.d.mts +227 -0
  411. package/dist/index-EUAWaIxW.d.mts +835 -0
  412. package/dist/index.d.mts +17 -11
  413. package/dist/index.mjs +63 -22
  414. package/dist/jsonld-D2gUY4kA.d.mts +141 -0
  415. package/dist/{loader-sMG4TZ-u.mjs → loader-PZnPxFLc.mjs} +42 -5
  416. package/dist/{manifest-schema-D1MSVnoI.mjs → manifest-schema-CgFJAp0H.mjs} +22 -10
  417. package/dist/media/index.d.mts +2 -1
  418. package/dist/media/index.mjs +2 -1
  419. package/dist/media/local-runtime.d.mts +12 -7
  420. package/dist/media/local-runtime.mjs +3 -3
  421. package/dist/{media-DMTr80Gv.mjs → media-_7Fxdu45.mjs} +1 -1
  422. package/dist/menus-DS3_5nWY.mjs +312 -0
  423. package/dist/menus-DYW_UHjv.mjs +256 -0
  424. package/dist/normalize-C49G_o1k.mjs +126 -0
  425. package/dist/oauth-authorization-DxGjiWKL.mjs +283 -0
  426. package/dist/oauth-clients-DxO_NO7k.mjs +298 -0
  427. package/dist/oauth-state-store-C5UFhzwD.mjs +48 -0
  428. package/dist/oauth-user-lookup-Bi0ek9eM.mjs +25 -0
  429. package/dist/options-z8VVg1Ll.mjs +114 -0
  430. package/dist/page/index.d.mts +2 -139
  431. package/dist/page/index.mjs +1 -427
  432. package/dist/parse-C9106ehs.mjs +88 -0
  433. package/dist/passkey-config-BRSZx4pW.mjs +42 -0
  434. package/dist/{patterns-CrCYkMBb.mjs → patterns-K0DLqWir.mjs} +53 -1
  435. package/dist/placeholder-Bh1dfUOd.d.mts +40 -0
  436. package/dist/{placeholder-Cp8g5Emj.mjs → placeholder-C2P5fKa4.mjs} +1 -126
  437. package/dist/plugins/adapt-sandbox-entry.d.mts +10 -5
  438. package/dist/plugins/adapt-sandbox-entry.mjs +4 -4
  439. package/dist/plugins-D7-ILNib.mjs +3249 -0
  440. package/dist/preview-DvYRU-Oy.mjs +788 -0
  441. package/dist/provider-loader-BiQ6lNmf.d.mts +20 -0
  442. package/dist/provider-loader-C21b9OpH.mjs +36 -0
  443. package/dist/public-url-Cun8N3NU.mjs +71 -0
  444. package/dist/{query-kDmwCsHh.mjs → query-B9BO5goQ.mjs} +93 -19
  445. package/dist/query-CsbOywSY.mjs +35 -0
  446. package/dist/rate-limit-DmVTHI5v.mjs +112 -0
  447. package/dist/{redirect-DnEWAkVg.mjs → redirect-CGl64yOX.mjs} +9 -5
  448. package/dist/redirect-COZy-3iY.mjs +16 -0
  449. package/dist/redirects-Cgi_cZfN.mjs +499 -0
  450. package/dist/redirects-lrlmYXVE.mjs +1023 -0
  451. package/dist/{registry-C0zjeB9P.mjs → registry-C-_hxLqa.mjs} +26 -294
  452. package/dist/request-meta-DixlNKKa.mjs +130 -0
  453. package/dist/review-requests-C2DIHwlJ.mjs +148 -0
  454. package/dist/review-requests-DIyjw-K_.mjs +79 -0
  455. package/dist/{runner-CFI6B6J2.d.mts → runner-BU6Lo1ZS.d.mts} +1 -1
  456. package/dist/{index-yvc6E_17.d.mts → runtime-Db4LbNVZ.d.mts} +1188 -2484
  457. package/dist/runtime.d.mts +11 -24
  458. package/dist/runtime.mjs +4 -38
  459. package/dist/schema-BECjUhP8.mjs +8 -0
  460. package/dist/search-DqTHQqtV.mjs +337 -0
  461. package/dist/secrets-CkoJ9zN0.mjs +160 -0
  462. package/dist/sections-B61OxnfB.mjs +338 -0
  463. package/dist/seed/index.d.mts +2 -2
  464. package/dist/seed/index.mjs +18 -13
  465. package/dist/seo/index.d.mts +1 -1
  466. package/dist/seo-C007Luwn.mjs +85 -0
  467. package/dist/seo-CUQctrog.mjs +129 -0
  468. package/dist/seo-contributions-B1fWCnqY.mjs +429 -0
  469. package/dist/service-CyOsm0R6.mjs +194 -0
  470. package/dist/settings-DGtLLSaz.mjs +237 -0
  471. package/dist/settings-Dzgswvg4.mjs +50 -0
  472. package/dist/setup-complete-ChilE-da.mjs +21 -0
  473. package/dist/setup-nonce-BpmLXAuu.mjs +17 -0
  474. package/dist/sidecar-client-B1C6Cf80.mjs +66 -0
  475. package/dist/site-activity-B8FjLIVh.mjs +104 -0
  476. package/dist/site-context-WBxoD99D.mjs +4122 -0
  477. package/dist/site-url-BP7k7OCe.mjs +12 -0
  478. package/dist/slugify-PDTDtMXp.mjs +30 -0
  479. package/dist/ssrf-DDwRxF6B.mjs +248 -0
  480. package/dist/storage/local.d.mts +1 -1
  481. package/dist/storage/local.mjs +1 -1
  482. package/dist/storage/s3.d.mts +1 -1
  483. package/dist/storage/s3.mjs +2 -2
  484. package/dist/{taxonomies-1s5PaS_8.mjs → taxonomies-D2aZGuns.mjs} +11 -7
  485. package/dist/taxonomies-z6Lz91BC.mjs +355 -0
  486. package/dist/taxonomy-D5cbhc8u.mjs +165 -0
  487. package/dist/{tokens-CJz9ubV6.mjs → tokens-BOJw-D9F.mjs} +1 -1
  488. package/dist/{transport-DB5eDN4x.mjs → transport-D3i4yWRE.mjs} +5 -4
  489. package/dist/trusted-proxy-BbaZfkT9.mjs +30 -0
  490. package/dist/types-0Vr68fc2.d.mts +344 -0
  491. package/dist/types-BFmjniC2.d.mts +165 -0
  492. package/dist/{types-BawVha09.mjs → types-Bs6lTBBW.mjs} +1 -1
  493. package/dist/{types-BuMDPy5C.d.mts → types-C0mmVRJN.d.mts} +6 -0
  494. package/dist/{placeholder--wOi4TbO.d.mts → types-OPs5Q_sX.d.mts} +1 -38
  495. package/dist/{types-Cj0KMIZV.d.mts → types-Q616b2Hn.d.mts} +54 -16
  496. package/dist/ui/client-runtime.d.mts +12 -0
  497. package/dist/ui/client-runtime.mjs +32 -0
  498. package/dist/ui/server-runtime.d.mts +33 -0
  499. package/dist/ui/server-runtime.mjs +80 -0
  500. package/dist/url-DNjT2abR.mjs +49 -0
  501. package/dist/user-CcXq-zoL.mjs +154 -0
  502. package/dist/utils-C0ONdBul.mjs +285 -0
  503. package/dist/{validate-IPf8n4Fj.d.mts → validate-BwmQEbu8.d.mts} +3 -3
  504. package/dist/{validate-BZ5wnLLp.mjs → validate-C7TzfamJ.mjs} +1 -1
  505. package/dist/version-D3vDb22n.mjs +6 -0
  506. package/dist/widgets-B7DRpZvy.mjs +104 -0
  507. package/dist/wordpress-slugs-CnporCYH.mjs +14 -0
  508. package/dist/zod-generator-DBVP8D0P.mjs +132 -0
  509. package/locals.d.ts +1 -6
  510. package/package.json +81 -11
  511. package/src/components/Button.astro +1 -1
  512. package/src/components/CommentForm.astro +1 -1
  513. package/src/components/Comments.astro +1 -3
  514. package/src/components/DinewayBodyEnd.astro +5 -3
  515. package/src/components/DinewayBodyStart.astro +5 -3
  516. package/src/components/DinewayHead.astro +15 -9
  517. package/src/components/DinewayImage.astro +12 -8
  518. package/src/components/DinewayMedia.astro +15 -6
  519. package/src/components/Embed.astro +1 -2
  520. package/src/components/File.astro +1 -1
  521. package/src/components/Gallery.astro +5 -3
  522. package/src/components/HtmlBlock.astro +1 -1
  523. package/src/components/Image.astro +9 -3
  524. package/src/components/InlinePortableTextEditor.tsx +69 -20
  525. package/src/components/PortableText.astro +1 -1
  526. package/src/components/WidgetArea.astro +1 -1
  527. package/src/components/WidgetRenderer.astro +1 -3
  528. package/src/components/marks/Link.astro +1 -1
  529. package/src/components/widgets/Archives.astro +1 -1
  530. package/src/components/widgets/Categories.astro +1 -1
  531. package/src/components/widgets/RecentPosts.astro +1 -1
  532. package/src/components/widgets/Tags.astro +1 -1
  533. package/dist/error-BmL6QipT.mjs +0 -30
  534. package/dist/search-DxopAWxs.mjs +0 -11200
  535. package/dist/version-BPz1imu2.mjs +0 -6
  536. package/src/astro/routes/PluginRegistry.tsx +0 -21
  537. package/src/astro/routes/api/admin/allowed-domains/[domain].ts +0 -112
  538. package/src/astro/routes/api/admin/allowed-domains/index.ts +0 -108
  539. package/src/astro/routes/api/admin/api-tokens/[id].ts +0 -44
  540. package/src/astro/routes/api/admin/api-tokens/index.ts +0 -90
  541. package/src/astro/routes/api/admin/briefing.ts +0 -76
  542. package/src/astro/routes/api/admin/bylines/[id]/index.ts +0 -90
  543. package/src/astro/routes/api/admin/bylines/index.ts +0 -74
  544. package/src/astro/routes/api/admin/comments/[id]/status.ts +0 -120
  545. package/src/astro/routes/api/admin/comments/[id].ts +0 -64
  546. package/src/astro/routes/api/admin/comments/bulk.ts +0 -42
  547. package/src/astro/routes/api/admin/comments/counts.ts +0 -30
  548. package/src/astro/routes/api/admin/comments/index.ts +0 -46
  549. package/src/astro/routes/api/admin/context/[id]/history.ts +0 -35
  550. package/src/astro/routes/api/admin/context/[id]/index.ts +0 -35
  551. package/src/astro/routes/api/admin/context/[id]/review.ts +0 -57
  552. package/src/astro/routes/api/admin/context/[id]/supersede.ts +0 -58
  553. package/src/astro/routes/api/admin/context/diff.ts +0 -35
  554. package/src/astro/routes/api/admin/context/index.ts +0 -69
  555. package/src/astro/routes/api/admin/context/stale.ts +0 -35
  556. package/src/astro/routes/api/admin/hitl-requests/[id]/index.ts +0 -38
  557. package/src/astro/routes/api/admin/hitl-requests/[id]/resolve.ts +0 -54
  558. package/src/astro/routes/api/admin/hitl-requests/index.ts +0 -38
  559. package/src/astro/routes/api/admin/hooks/exclusive/[hookName].ts +0 -132
  560. package/src/astro/routes/api/admin/hooks/exclusive/index.ts +0 -51
  561. package/src/astro/routes/api/admin/oauth-clients/[id].ts +0 -137
  562. package/src/astro/routes/api/admin/oauth-clients/index.ts +0 -95
  563. package/src/astro/routes/api/admin/plugins/[id]/disable.ts +0 -91
  564. package/src/astro/routes/api/admin/plugins/[id]/enable.ts +0 -91
  565. package/src/astro/routes/api/admin/plugins/[id]/index.ts +0 -38
  566. package/src/astro/routes/api/admin/plugins/[id]/uninstall.ts +0 -98
  567. package/src/astro/routes/api/admin/plugins/[id]/update.ts +0 -154
  568. package/src/astro/routes/api/admin/plugins/index.ts +0 -32
  569. package/src/astro/routes/api/admin/plugins/marketplace/[id]/icon.ts +0 -62
  570. package/src/astro/routes/api/admin/plugins/marketplace/[id]/index.ts +0 -33
  571. package/src/astro/routes/api/admin/plugins/marketplace/[id]/install.ts +0 -135
  572. package/src/astro/routes/api/admin/plugins/marketplace/index.ts +0 -38
  573. package/src/astro/routes/api/admin/plugins/updates.ts +0 -28
  574. package/src/astro/routes/api/admin/review-requests/[id]/index.ts +0 -35
  575. package/src/astro/routes/api/admin/review-requests/[id]/resolve.ts +0 -52
  576. package/src/astro/routes/api/admin/review-requests/index.ts +0 -35
  577. package/src/astro/routes/api/admin/themes/marketplace/[id]/index.ts +0 -33
  578. package/src/astro/routes/api/admin/themes/marketplace/[id]/thumbnail.ts +0 -62
  579. package/src/astro/routes/api/admin/themes/marketplace/index.ts +0 -45
  580. package/src/astro/routes/api/admin/users/[id]/disable.ts +0 -72
  581. package/src/astro/routes/api/admin/users/[id]/enable.ts +0 -48
  582. package/src/astro/routes/api/admin/users/[id]/index.ts +0 -166
  583. package/src/astro/routes/api/admin/users/[id]/send-recovery.ts +0 -72
  584. package/src/astro/routes/api/admin/users/index.ts +0 -66
  585. package/src/astro/routes/api/auth/dev-bypass.ts +0 -139
  586. package/src/astro/routes/api/auth/invite/accept.ts +0 -52
  587. package/src/astro/routes/api/auth/invite/complete.ts +0 -86
  588. package/src/astro/routes/api/auth/invite/index.ts +0 -99
  589. package/src/astro/routes/api/auth/invite/register-options.ts +0 -73
  590. package/src/astro/routes/api/auth/logout.ts +0 -40
  591. package/src/astro/routes/api/auth/magic-link/send.ts +0 -90
  592. package/src/astro/routes/api/auth/magic-link/verify.ts +0 -71
  593. package/src/astro/routes/api/auth/me.ts +0 -60
  594. package/src/astro/routes/api/auth/oauth/[provider]/callback.ts +0 -221
  595. package/src/astro/routes/api/auth/oauth/[provider].ts +0 -120
  596. package/src/astro/routes/api/auth/passkey/[id].ts +0 -124
  597. package/src/astro/routes/api/auth/passkey/index.ts +0 -54
  598. package/src/astro/routes/api/auth/passkey/options.ts +0 -85
  599. package/src/astro/routes/api/auth/passkey/register/options.ts +0 -88
  600. package/src/astro/routes/api/auth/passkey/register/verify.ts +0 -119
  601. package/src/astro/routes/api/auth/passkey/verify.ts +0 -72
  602. package/src/astro/routes/api/auth/signup/complete.ts +0 -87
  603. package/src/astro/routes/api/auth/signup/request.ts +0 -89
  604. package/src/astro/routes/api/auth/signup/verify.ts +0 -53
  605. package/src/astro/routes/api/comments/[collection]/[contentId]/index.ts +0 -310
  606. package/src/astro/routes/api/content/[collection]/[id]/compare.ts +0 -28
  607. package/src/astro/routes/api/content/[collection]/[id]/discard-draft.ts +0 -68
  608. package/src/astro/routes/api/content/[collection]/[id]/duplicate.ts +0 -77
  609. package/src/astro/routes/api/content/[collection]/[id]/permanent.ts +0 -42
  610. package/src/astro/routes/api/content/[collection]/[id]/preview-url.ts +0 -107
  611. package/src/astro/routes/api/content/[collection]/[id]/publish.ts +0 -100
  612. package/src/astro/routes/api/content/[collection]/[id]/restore.ts +0 -64
  613. package/src/astro/routes/api/content/[collection]/[id]/revisions.ts +0 -31
  614. package/src/astro/routes/api/content/[collection]/[id]/schedule.ts +0 -129
  615. package/src/astro/routes/api/content/[collection]/[id]/terms/[taxonomy].ts +0 -143
  616. package/src/astro/routes/api/content/[collection]/[id]/translations.ts +0 -50
  617. package/src/astro/routes/api/content/[collection]/[id]/unpublish.ts +0 -69
  618. package/src/astro/routes/api/content/[collection]/[id].ts +0 -173
  619. package/src/astro/routes/api/content/[collection]/index.ts +0 -103
  620. package/src/astro/routes/api/content/[collection]/trash.ts +0 -33
  621. package/src/astro/routes/api/dashboard.ts +0 -32
  622. package/src/astro/routes/api/dev/emails.ts +0 -36
  623. package/src/astro/routes/api/health.ts +0 -54
  624. package/src/astro/routes/api/import/probe.ts +0 -47
  625. package/src/astro/routes/api/import/wordpress/analyze.ts +0 -523
  626. package/src/astro/routes/api/import/wordpress/execute.ts +0 -330
  627. package/src/astro/routes/api/import/wordpress/media.ts +0 -338
  628. package/src/astro/routes/api/import/wordpress/prepare.ts +0 -212
  629. package/src/astro/routes/api/import/wordpress/rewrite-urls.ts +0 -425
  630. package/src/astro/routes/api/import/wordpress-plugin/analyze.ts +0 -111
  631. package/src/astro/routes/api/import/wordpress-plugin/callback.ts +0 -58
  632. package/src/astro/routes/api/import/wordpress-plugin/execute.ts +0 -399
  633. package/src/astro/routes/api/manifest.ts +0 -75
  634. package/src/astro/routes/api/mcp.ts +0 -125
  635. package/src/astro/routes/api/media/[id]/confirm.ts +0 -93
  636. package/src/astro/routes/api/media/[id].ts +0 -145
  637. package/src/astro/routes/api/media/file/[...key].ts +0 -79
  638. package/src/astro/routes/api/media/providers/[providerId]/[itemId].ts +0 -91
  639. package/src/astro/routes/api/media/providers/[providerId]/index.ts +0 -111
  640. package/src/astro/routes/api/media/providers/index.ts +0 -30
  641. package/src/astro/routes/api/media/upload-url.ts +0 -146
  642. package/src/astro/routes/api/media.ts +0 -204
  643. package/src/astro/routes/api/menus/[name]/items.ts +0 -206
  644. package/src/astro/routes/api/menus/[name]/reorder.ts +0 -79
  645. package/src/astro/routes/api/menus/[name].ts +0 -145
  646. package/src/astro/routes/api/menus/index.ts +0 -91
  647. package/src/astro/routes/api/oauth/authorize.ts +0 -430
  648. package/src/astro/routes/api/oauth/device/authorize.ts +0 -45
  649. package/src/astro/routes/api/oauth/device/code.ts +0 -56
  650. package/src/astro/routes/api/oauth/device/token.ts +0 -70
  651. package/src/astro/routes/api/oauth/register.ts +0 -182
  652. package/src/astro/routes/api/oauth/token/refresh.ts +0 -38
  653. package/src/astro/routes/api/oauth/token/revoke.ts +0 -38
  654. package/src/astro/routes/api/oauth/token.ts +0 -195
  655. package/src/astro/routes/api/openapi.json.ts +0 -33
  656. package/src/astro/routes/api/plugins/[pluginId]/[...path].ts +0 -109
  657. package/src/astro/routes/api/redirects/404s/index.ts +0 -72
  658. package/src/astro/routes/api/redirects/404s/summary.ts +0 -33
  659. package/src/astro/routes/api/redirects/[id].ts +0 -183
  660. package/src/astro/routes/api/redirects/index.ts +0 -100
  661. package/src/astro/routes/api/revisions/[revisionId]/index.ts +0 -29
  662. package/src/astro/routes/api/revisions/[revisionId]/restore.ts +0 -62
  663. package/src/astro/routes/api/schema/collections/[slug]/fields/[fieldSlug].ts +0 -104
  664. package/src/astro/routes/api/schema/collections/[slug]/fields/index.ts +0 -67
  665. package/src/astro/routes/api/schema/collections/[slug]/fields/reorder.ts +0 -45
  666. package/src/astro/routes/api/schema/collections/[slug]/index.ts +0 -107
  667. package/src/astro/routes/api/schema/collections/index.ts +0 -61
  668. package/src/astro/routes/api/schema/index.ts +0 -109
  669. package/src/astro/routes/api/schema/orphans/[slug].ts +0 -36
  670. package/src/astro/routes/api/schema/orphans/index.ts +0 -26
  671. package/src/astro/routes/api/search/enable.ts +0 -64
  672. package/src/astro/routes/api/search/index.ts +0 -52
  673. package/src/astro/routes/api/search/rebuild.ts +0 -72
  674. package/src/astro/routes/api/search/stats.ts +0 -35
  675. package/src/astro/routes/api/search/suggest.ts +0 -50
  676. package/src/astro/routes/api/sections/[slug].ts +0 -203
  677. package/src/astro/routes/api/sections/index.ts +0 -107
  678. package/src/astro/routes/api/settings/email.ts +0 -150
  679. package/src/astro/routes/api/settings.ts +0 -116
  680. package/src/astro/routes/api/setup/admin-verify.ts +0 -122
  681. package/src/astro/routes/api/setup/admin.ts +0 -104
  682. package/src/astro/routes/api/setup/dev-bypass.ts +0 -200
  683. package/src/astro/routes/api/setup/dev-reset.ts +0 -40
  684. package/src/astro/routes/api/setup/index.ts +0 -128
  685. package/src/astro/routes/api/setup/status.ts +0 -122
  686. package/src/astro/routes/api/snapshot.ts +0 -76
  687. package/src/astro/routes/api/taxonomies/[name]/terms/[slug].ts +0 -232
  688. package/src/astro/routes/api/taxonomies/[name]/terms/index.ts +0 -131
  689. package/src/astro/routes/api/taxonomies/index.ts +0 -114
  690. package/src/astro/routes/api/themes/preview.ts +0 -78
  691. package/src/astro/routes/api/typegen.ts +0 -114
  692. package/src/astro/routes/api/well-known/auth.ts +0 -71
  693. package/src/astro/routes/api/well-known/oauth-authorization-server.ts +0 -48
  694. package/src/astro/routes/api/well-known/oauth-protected-resource.ts +0 -39
  695. package/src/astro/routes/api/widget-areas/[name]/reorder.ts +0 -114
  696. package/src/astro/routes/api/widget-areas/[name]/widgets/[id].ts +0 -213
  697. package/src/astro/routes/api/widget-areas/[name]/widgets.ts +0 -126
  698. package/src/astro/routes/api/widget-areas/[name].ts +0 -135
  699. package/src/astro/routes/api/widget-areas/index.ts +0 -149
  700. package/src/astro/routes/api/widget-components.ts +0 -22
  701. package/src/astro/routes/robots.txt.ts +0 -81
  702. package/src/astro/routes/sitemap-[collection].xml.ts +0 -104
  703. package/src/astro/routes/sitemap.xml.ts +0 -92
  704. /package/dist/{adapters-C2ypTrZZ.d.mts → adapters-DuLQZhRY.d.mts} +0 -0
  705. /package/{src → dist}/astro/routes/admin.astro +0 -0
  706. /package/dist/{base64-F8-DUraK.mjs → base64-Cz-aU0X1.mjs} +0 -0
  707. /package/dist/{chunks--4F8ddV4.mjs → chunks-D_jVet6z.mjs} +0 -0
  708. /package/dist/{config-BXwuX8Bx.mjs → config-CAMFxGaV.mjs} +0 -0
  709. /package/dist/{db-errors-CEqD7qH9.mjs → db-errors-DyZkswzF.mjs} +0 -0
  710. /package/dist/{default-VjJyuuG9.mjs → default-D4ngTpW8.mjs} +0 -0
  711. /package/dist/{load-Coc9HpHH.mjs → load-B2XtDw__.mjs} +0 -0
  712. /package/dist/{mode-47goXBBK.mjs → mode-DUhxwUhv.mjs} +0 -0
  713. /package/dist/{request-cache-Dk5qPSOx.mjs → request-cache-DHMRr2Lf.mjs} +0 -0
  714. /package/dist/{transaction-Cn2rjY78.mjs → transaction-x2tJQ-A1.mjs} +0 -0
  715. /package/dist/{transport-Wge_IzKl.d.mts → transport-BXe1AM79.d.mts} +0 -0
  716. /package/dist/{types-CWbdtiux.d.mts → types-B7kpsMJ3.d.mts} +0 -0
  717. /package/dist/{types-BzcUjoqg.d.mts → types-DJlpx5Ay.d.mts} +0 -0
  718. /package/dist/{types-COeOq9nK.mjs → types-DL7Y8D_t.mjs} +0 -0
  719. /package/dist/{types-DOrVigru.d.mts → types-DZPw8Rru.d.mts} +0 -0
  720. /package/dist/{types-griIBQOQ.mjs → types-fAInWQDO.mjs} +0 -0
@@ -1,20 +1,20 @@
1
1
  import { t as __exportAll } from "./chunk-ClPoSABd.mjs";
2
- import { i as matchPattern, n as interpolateDestination, t as compilePattern } from "./patterns-CrCYkMBb.mjs";
2
+ import { i as matchPattern, n as interpolateDestination, t as compilePattern } from "./patterns-K0DLqWir.mjs";
3
3
 
4
4
  //#region src/redirects/cache.ts
5
5
  var cache_exports = /* @__PURE__ */ __exportAll({
6
6
  compileRedirectRules: () => compileRedirectRules,
7
- getCachedPatternRules: () => getCachedPatternRules,
7
+ getCachedRedirects: () => getCachedRedirects,
8
8
  invalidateRedirectCache: () => invalidateRedirectCache,
9
9
  matchCachedPatterns: () => matchCachedPatterns,
10
- setCachedPatternRules: () => setCachedPatternRules
10
+ setCachedRedirects: () => setCachedRedirects
11
11
  });
12
- let cachedPatternRules = null;
12
+ let cachedRedirects = null;
13
13
  function invalidateRedirectCache() {
14
- cachedPatternRules = null;
14
+ cachedRedirects = null;
15
15
  }
16
- function getCachedPatternRules() {
17
- return cachedPatternRules;
16
+ function getCachedRedirects() {
17
+ return cachedRedirects;
18
18
  }
19
19
  function compileRedirectRules(redirects) {
20
20
  return redirects.map((redirect) => ({
@@ -22,9 +22,19 @@ function compileRedirectRules(redirects) {
22
22
  compiled: compilePattern(redirect.source)
23
23
  }));
24
24
  }
25
- function setCachedPatternRules(redirects) {
26
- cachedPatternRules = compileRedirectRules(redirects);
27
- return cachedPatternRules;
25
+ function setCachedRedirects(redirects) {
26
+ const exact = /* @__PURE__ */ new Map();
27
+ const patterns = [];
28
+ for (const redirect of redirects) if (redirect.isPattern) patterns.push({
29
+ redirect,
30
+ compiled: compilePattern(redirect.source)
31
+ });
32
+ else exact.set(redirect.source, redirect);
33
+ cachedRedirects = {
34
+ exact,
35
+ patterns
36
+ };
37
+ return cachedRedirects;
28
38
  }
29
39
  function matchCachedPatterns(rules, pathname) {
30
40
  for (const { redirect, compiled } of rules) {
@@ -39,4 +49,4 @@ function matchCachedPatterns(rules, pathname) {
39
49
  }
40
50
 
41
51
  //#endregion
42
- export { matchCachedPatterns as a, invalidateRedirectCache as i, compileRedirectRules as n, setCachedPatternRules as o, getCachedPatternRules as r, cache_exports as t };
52
+ export { matchCachedPatterns as a, invalidateRedirectCache as i, compileRedirectRules as n, setCachedRedirects as o, getCachedRedirects as r, cache_exports as t };
@@ -0,0 +1,48 @@
1
+ //#region src/auth/challenge-store.ts
2
+ function createChallengeStore(db) {
3
+ return {
4
+ async set(challenge, data) {
5
+ const expiresAt = new Date(data.expiresAt).toISOString();
6
+ await db.insertInto("auth_challenges").values({
7
+ challenge,
8
+ type: data.type,
9
+ user_id: data.userId ?? null,
10
+ data: null,
11
+ expires_at: expiresAt
12
+ }).onConflict((oc) => oc.column("challenge").doUpdateSet({
13
+ type: data.type,
14
+ user_id: data.userId ?? null,
15
+ expires_at: expiresAt
16
+ })).execute();
17
+ },
18
+ async get(challenge) {
19
+ const row = await db.selectFrom("auth_challenges").selectAll().where("challenge", "=", challenge).executeTakeFirst();
20
+ if (!row) return null;
21
+ const expiresAt = new Date(row.expires_at).getTime();
22
+ if (expiresAt < Date.now()) {
23
+ await this.delete(challenge);
24
+ return null;
25
+ }
26
+ return {
27
+ type: row.type === "registration" ? "registration" : "authentication",
28
+ userId: row.user_id ?? void 0,
29
+ expiresAt
30
+ };
31
+ },
32
+ async delete(challenge) {
33
+ await db.deleteFrom("auth_challenges").where("challenge", "=", challenge).execute();
34
+ }
35
+ };
36
+ }
37
+ /**
38
+ * Clean up expired challenges.
39
+ * Should be called periodically (e.g., on startup, or via cron).
40
+ */
41
+ async function cleanupExpiredChallenges(db) {
42
+ const now = (/* @__PURE__ */ new Date()).toISOString();
43
+ const result = await db.deleteFrom("auth_challenges").where("expires_at", "<", now).executeTakeFirst();
44
+ return Number(result.numDeletedRows ?? 0);
45
+ }
46
+
47
+ //#endregion
48
+ export { createChallengeStore as n, cleanupExpiredChallenges as t };
@@ -3,31 +3,38 @@ import { t as __exportAll } from "../chunk-ClPoSABd.mjs";
3
3
  import { n as createDatabase } from "../connection-BCNICDWN.mjs";
4
4
  import { s as listTablesLike } from "../dialect-helpers-DhTzaUxP.mjs";
5
5
  import { r as runMigrations, t as getMigrationStatus } from "../runner-DWZm2KQm.mjs";
6
- import { t as ContentRepository } from "../content-DWi4d0rT.mjs";
7
- import { i as encodeBase64url } from "../base64-F8-DUraK.mjs";
8
- import "../types-BawVha09.mjs";
9
- import { t as MediaRepository } from "../media-DMTr80Gv.mjs";
10
- import { m as TaxonomyRepository, p as OptionsRepository, t as applySeed } from "../apply-iVSqz2qs.mjs";
11
- import "../redirect-DnEWAkVg.mjs";
12
- import "../byline-OhH2dlRu.mjs";
13
- import { r as isI18nEnabled } from "../config-BXwuX8Bx.mjs";
14
- import { n as SchemaRegistry } from "../registry-C0zjeB9P.mjs";
15
- import "../loader-sMG4TZ-u.mjs";
16
- import "../request-cache-Dk5qPSOx.mjs";
17
- import { i as pluginManifestSchema } from "../manifest-schema-D1MSVnoI.mjs";
18
- import { t as validateSeed } from "../validate-BZ5wnLLp.mjs";
19
- import { LocalStorage } from "../storage/local.mjs";
6
+ import { t as ContentRepository } from "../content-CyLkb-qH.mjs";
7
+ import { i as encodeBase64url } from "../base64-Cz-aU0X1.mjs";
8
+ import "../types-Bs6lTBBW.mjs";
9
+ import { t as MediaRepository } from "../media-_7Fxdu45.mjs";
10
+ import { t as TaxonomyRepository } from "../taxonomy-D5cbhc8u.mjs";
11
+ import { t as OptionsRepository } from "../options-z8VVg1Ll.mjs";
12
+ import "../redirect-CGl64yOX.mjs";
13
+ import "../byline-naZxOPSa.mjs";
14
+ import { r as isI18nEnabled } from "../config-CAMFxGaV.mjs";
15
+ import "../fts-manager-B1pTNEG_.mjs";
16
+ import { n as SchemaRegistry } from "../registry-C-_hxLqa.mjs";
17
+ import "../loader-PZnPxFLc.mjs";
18
+ import "../settings-DGtLLSaz.mjs";
19
+ import "../request-cache-DHMRr2Lf.mjs";
20
+ import { i as pluginManifestSchema } from "../manifest-schema-CgFJAp0H.mjs";
21
+ import "../ssrf-DDwRxF6B.mjs";
22
+ import { t as validateSeed } from "../validate-C7TzfamJ.mjs";
23
+ import { t as applySeed } from "../apply-Bm5QgdrE.mjs";
24
+ import { n as fingerprintKey, r as generateEncryptionKey, t as DinewaySecretsError } from "../secrets-CkoJ9zN0.mjs";
25
+ import { o as convertDataForRead } from "../transport-D3i4yWRE.mjs";
20
26
  import { createHeaderAwareFetch, customHeadersInterceptor, isRedirectResponse, resolveCustomHeaders } from "../client/external-auth-headers.mjs";
21
27
  import { DinewayClient } from "../client/index.mjs";
28
+ import { LocalStorage } from "../storage/local.mjs";
22
29
  import { imageSize } from "image-size";
23
30
  import { createGzipDecoder, unpackTar } from "modern-tar";
24
31
  import { createHash } from "node:crypto";
25
32
  import { createWriteStream, existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
26
33
  import { basename, dirname, extname, isAbsolute, join, resolve } from "node:path";
27
- import { access, copyFile, mkdir, readFile, readdir, rm, stat, symlink, writeFile } from "node:fs/promises";
28
34
  import { defineCommand, runCommand, runMain } from "citty";
29
35
  import consola, { consola as consola$1 } from "consola";
30
36
  import pc from "picocolors";
37
+ import { access, copyFile, mkdir, readFile, readdir, rm, stat, symlink, writeFile } from "node:fs/promises";
31
38
  import { homedir } from "node:os";
32
39
  import { createInterface } from "node:readline/promises";
33
40
  import { spawn } from "node:child_process";
@@ -135,7 +142,10 @@ function readStore() {
135
142
  return {};
136
143
  }
137
144
  function writeStore(store) {
138
- mkdirSync(getConfigDir(), { recursive: true });
145
+ mkdirSync(getConfigDir(), {
146
+ recursive: true,
147
+ mode: 448
148
+ });
139
149
  writeFileSync(getCredentialPath(), JSON.stringify(store, null, " "), {
140
150
  encoding: "utf-8",
141
151
  mode: 384
@@ -484,7 +494,16 @@ const getCommand$3 = defineCommand({
484
494
  });
485
495
  if (!args.published && item.draftRevisionId) {
486
496
  const comparison = await client.compare(args.collection, args.id);
487
- if (comparison.hasChanges && comparison.draft) item.data = comparison.draft;
497
+ if (comparison.hasChanges && comparison.draft) {
498
+ item.data = comparison.draft;
499
+ if (!args.raw && item.data) {
500
+ const fields = (await client.collection(args.collection)).fields.map((field) => ({
501
+ slug: field.slug,
502
+ type: field.type
503
+ }));
504
+ item.data = convertDataForRead(item.data, fields, false);
505
+ }
506
+ }
488
507
  }
489
508
  output(item, args);
490
509
  } catch (error) {
@@ -627,6 +646,7 @@ const deleteCommand$2 = defineCommand({
627
646
  configureOutputMode(args);
628
647
  try {
629
648
  await createClientFromArgs(args).delete(args.collection, args.id);
649
+ output({ success: true }, args);
630
650
  consola$1.success(`Deleted ${args.collection}/${args.id}`);
631
651
  } catch (error) {
632
652
  consola$1.error(error instanceof Error ? error.message : "Unknown error");
@@ -660,6 +680,7 @@ const publishCommand$1 = defineCommand({
660
680
  configureOutputMode(args);
661
681
  try {
662
682
  await createClientFromArgs(args).publish(args.collection, args.id, { reviewRequestId: args["review-request-id"] });
683
+ output({ success: true }, args);
663
684
  consola$1.success(`Published ${args.collection}/${args.id}`);
664
685
  } catch (error) {
665
686
  consola$1.error(error instanceof Error ? error.message : "Unknown error");
@@ -689,6 +710,7 @@ const unpublishCommand = defineCommand({
689
710
  configureOutputMode(args);
690
711
  try {
691
712
  await createClientFromArgs(args).unpublish(args.collection, args.id);
713
+ output({ success: true }, args);
692
714
  consola$1.success(`Unpublished ${args.collection}/${args.id}`);
693
715
  } catch (error) {
694
716
  consola$1.error(error instanceof Error ? error.message : "Unknown error");
@@ -723,6 +745,7 @@ const scheduleCommand = defineCommand({
723
745
  configureOutputMode(args);
724
746
  try {
725
747
  await createClientFromArgs(args).schedule(args.collection, args.id, { at: args.at });
748
+ output({ success: true }, args);
726
749
  consola$1.success(`Scheduled ${args.collection}/${args.id} for ${args.at}`);
727
750
  } catch (error) {
728
751
  consola$1.error(error instanceof Error ? error.message : "Unknown error");
@@ -752,6 +775,7 @@ const restoreCommand = defineCommand({
752
775
  configureOutputMode(args);
753
776
  try {
754
777
  await createClientFromArgs(args).restore(args.collection, args.id);
778
+ output({ success: true }, args);
755
779
  consola$1.success(`Restored ${args.collection}/${args.id}`);
756
780
  } catch (error) {
757
781
  consola$1.error(error instanceof Error ? error.message : "Unknown error");
@@ -2773,7 +2797,8 @@ const whoamiCommand = defineCommand({
2773
2797
  })
2774
2798
  });
2775
2799
  if (refreshRes.ok) {
2776
- const refreshed = await refreshRes.json();
2800
+ const json = await refreshRes.json();
2801
+ const refreshed = json.data && typeof json.data === "object" && "access_token" in json.data ? json.data : json;
2777
2802
  token = refreshed.access_token;
2778
2803
  saveCredentials(baseUrl, {
2779
2804
  ...cred,
@@ -3057,8 +3082,8 @@ const MAX_SCREENSHOTS = 5;
3057
3082
  const MAX_SCREENSHOT_WIDTH = 1920;
3058
3083
  const MAX_SCREENSHOT_HEIGHT = 1080;
3059
3084
  const ICON_SIZE = 256;
3060
- /** Matches require("node:xxx") / require("xxx") / import("node:xxx") in bundled output */
3061
- const NODE_BUILTIN_IMPORT_RE = /(?:import|require)\s*\(?["'](?:node:)?([a-z_]+)["']\)?/g;
3085
+ /** Matches Node.js built-in imports in bundled output. */
3086
+ const NODE_BUILTIN_IMPORT_RE = /(?:import|export|require)\s*(?:\(|[^(]*?\bfrom\s+)["'](?:node:)?([a-z_]+)(?:\/[^"']*)?\s*["']\)?/g;
3062
3087
  const LEADING_DOT_SLASH_RE = /^\.\//;
3063
3088
  const DIST_PREFIX_RE = /^dist\//;
3064
3089
  const MJS_EXT_RE = /\.m?js$/;
@@ -3549,8 +3574,8 @@ const bundleCommand = defineCommand({
3549
3574
  hasErrors = true;
3550
3575
  }
3551
3576
  }
3552
- if (manifest.capabilities.includes("network:fetch:any")) consola.warn("Plugin declares unrestricted network access (network:fetch:any) — it can make requests to any host");
3553
- else if (manifest.capabilities.includes("network:fetch") && manifest.allowedHosts.length === 0) consola.warn("Plugin declares network:fetch capability but no allowedHosts — all fetch requests will be blocked");
3577
+ if (manifest.capabilities.includes("network:request:unrestricted")) consola.warn("Plugin declares unrestricted network access (network:request:unrestricted) — it can make requests to any host");
3578
+ else if (manifest.capabilities.includes("network:request") && manifest.allowedHosts.length === 0) consola.warn("Plugin declares network:request capability but no allowedHosts — all fetch requests will be blocked");
3554
3579
  if (resolvedPlugin.admin?.portableTextBlocks && resolvedPlugin.admin.portableTextBlocks.length > 0) consola.warn("Plugin declares portableTextBlocks — these require trusted mode and will be ignored in sandboxed plugins");
3555
3580
  if (resolvedPlugin.admin?.entry) consola.warn("Plugin declares admin.entry — custom React components require trusted mode. Use Block Kit for sandboxed admin pages");
3556
3581
  if (resolvedPlugin.hooks["page:fragments"]) consola.warn("Plugin declares page:fragments hook — this is trusted-only and will not work in sandboxed mode");
@@ -4502,6 +4527,99 @@ const searchCommand = defineCommand({
4502
4527
  }
4503
4528
  });
4504
4529
 
4530
+ //#endregion
4531
+ //#region src/cli/commands/secrets.ts
4532
+ /**
4533
+ * Secrets CLI commands.
4534
+ */
4535
+ const KEY_VAR_NAME = "DINEWAY_ENCRYPTION_KEY";
4536
+ const POPULATED_KEY_LINE_PATTERN = /^DINEWAY_ENCRYPTION_KEY=.+$/m;
4537
+ const ANY_KEY_LINE_PATTERN = /^DINEWAY_ENCRYPTION_KEY=.*$/m;
4538
+ function writeEncryptionKeyToFile(targetPath, value, force) {
4539
+ const existing = existsSync(targetPath) ? readFileSync(targetPath, "utf-8") : "";
4540
+ if (POPULATED_KEY_LINE_PATTERN.test(existing) && !force) return "skipped";
4541
+ const newLine = `${KEY_VAR_NAME}=${value}`;
4542
+ let next;
4543
+ if (ANY_KEY_LINE_PATTERN.test(existing)) {
4544
+ next = existing.replace(ANY_KEY_LINE_PATTERN, newLine);
4545
+ if (!next.endsWith("\n")) next += "\n";
4546
+ } else next = `${existing}${existing.length === 0 || existing.endsWith("\n") ? "" : "\n"}${newLine}\n`;
4547
+ writeFileSync(targetPath, next);
4548
+ return "wrote";
4549
+ }
4550
+ const generateCommand = defineCommand({
4551
+ meta: {
4552
+ name: "generate",
4553
+ description: "Generate a new Dineway encryption key"
4554
+ },
4555
+ args: {
4556
+ write: {
4557
+ type: "string",
4558
+ description: "Optional dotenv file path to write the key to"
4559
+ },
4560
+ force: {
4561
+ type: "boolean",
4562
+ description: "When used with --write, overwrite an existing entry",
4563
+ default: false
4564
+ }
4565
+ },
4566
+ run({ args }) {
4567
+ const value = generateEncryptionKey();
4568
+ if (args.write) {
4569
+ if (writeEncryptionKeyToFile(resolve(process.cwd(), args.write), value, args.force) === "skipped") {
4570
+ consola$1.info(`${KEY_VAR_NAME} already set in ${pc.cyan(args.write)}; leaving it alone. Pass ${pc.bold("--force")} to replace it.`);
4571
+ return;
4572
+ }
4573
+ consola$1.log("");
4574
+ consola$1.log(`${pc.bold("Wrote")} ${pc.cyan(KEY_VAR_NAME)} to ${pc.cyan(args.write)}`);
4575
+ consola$1.log("");
4576
+ consola$1.log(pc.yellow("Keep this file out of version control."));
4577
+ consola$1.log("");
4578
+ return;
4579
+ }
4580
+ process.stdout.write(`${value}\n`);
4581
+ process.stderr.write([
4582
+ "",
4583
+ pc.bold("Dineway encryption key generated."),
4584
+ "",
4585
+ `Set ${pc.cyan(KEY_VAR_NAME)} in your environment.`,
4586
+ "",
4587
+ pc.yellow("Keep this value secret. Losing it means encrypted secrets are unreadable."),
4588
+ ""
4589
+ ].join("\n"));
4590
+ }
4591
+ });
4592
+ const fingerprintCommand = defineCommand({
4593
+ meta: {
4594
+ name: "fingerprint",
4595
+ description: "Print the kid (8-char fingerprint) for an encryption key"
4596
+ },
4597
+ args: { key: {
4598
+ type: "positional",
4599
+ description: "The full key value with the dineway_enc_v1_ prefix",
4600
+ required: true
4601
+ } },
4602
+ async run({ args }) {
4603
+ try {
4604
+ const kid = await fingerprintKey(args.key);
4605
+ process.stdout.write(`${kid}\n`);
4606
+ } catch (error) {
4607
+ consola$1.error(error instanceof DinewaySecretsError ? error.message : "Failed to fingerprint key");
4608
+ process.exit(1);
4609
+ }
4610
+ }
4611
+ });
4612
+ const secretsCommand = defineCommand({
4613
+ meta: {
4614
+ name: "secrets",
4615
+ description: "Manage Dineway secrets"
4616
+ },
4617
+ subCommands: {
4618
+ generate: generateCommand,
4619
+ fingerprint: fingerprintCommand
4620
+ }
4621
+ });
4622
+
4505
4623
  //#endregion
4506
4624
  //#region src/cli/commands/seed.ts
4507
4625
  /**
@@ -4864,6 +4982,7 @@ const typesCommand = defineCommand({
4864
4982
  * - dev: Run dev server with a local or remote database
4865
4983
  * - seed: Apply a seed file to the database
4866
4984
  * - export-seed: Export database schema and content as a seed file
4985
+ * - secrets: Generate and inspect Dineway secrets
4867
4986
  * - auth: Authentication utilities (secret generation)
4868
4987
  * - login/logout/whoami: Session management
4869
4988
  * - content: Create, read, update, delete content
@@ -4889,6 +5008,7 @@ runMain(defineCommand({
4889
5008
  doctor: doctorCommand,
4890
5009
  seed: seedCommand,
4891
5010
  "export-seed": exportSeedCommand,
5011
+ secrets: secretsCommand,
4892
5012
  auth: authCommand,
4893
5013
  login: loginCommand,
4894
5014
  logout: logoutCommand,
@@ -1,4 +1,4 @@
1
- import { t as Interceptor } from "../transport-Wge_IzKl.mjs";
1
+ import { t as Interceptor } from "../transport-BXe1AM79.mjs";
2
2
 
3
3
  //#region src/client/external-auth-headers.d.ts
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { a as tokenInterceptor, i as devBypassInterceptor, n as createTransport, r as csrfInterceptor, t as Interceptor } from "../transport-Wge_IzKl.mjs";
1
+ import { a as tokenInterceptor, i as devBypassInterceptor, n as createTransport, r as csrfInterceptor, t as Interceptor } from "../transport-BXe1AM79.mjs";
2
2
 
3
3
  //#region src/client/portable-text.d.ts
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { a as tokenInterceptor, c as markdownToPortableText, i as refreshInterceptor, l as portableTextToMarkdown, n as csrfInterceptor, o as convertDataForRead, r as devBypassInterceptor, s as convertDataForWrite, t as createTransport } from "../transport-DB5eDN4x.mjs";
1
+ import { a as tokenInterceptor, c as markdownToPortableText, i as refreshInterceptor, l as portableTextToMarkdown, n as csrfInterceptor, o as convertDataForRead, r as devBypassInterceptor, s as convertDataForWrite, t as createTransport } from "../transport-D3i4yWRE.mjs";
2
2
  import mime from "mime/lite";
3
3
 
4
4
  //#region src/client/index.ts
@@ -263,7 +263,7 @@ var DinewayClient = class {
263
263
  }
264
264
  /** List taxonomies */
265
265
  async taxonomies() {
266
- return (await this.request("GET", "/taxonomies")).items;
266
+ return (await this.request("GET", "/taxonomies")).taxonomies;
267
267
  }
268
268
  /** List terms in a taxonomy */
269
269
  async terms(taxonomy, options) {
@@ -279,7 +279,7 @@ var DinewayClient = class {
279
279
  }
280
280
  /** List menus */
281
281
  async menus() {
282
- return (await this.request("GET", "/menus")).items;
282
+ return this.request("GET", "/menus");
283
283
  }
284
284
  /** Get a menu with its items */
285
285
  async menu(name) {
@@ -0,0 +1,246 @@
1
+ import { n as decodeCursor, r as encodeCursor } from "./types-Bs6lTBBW.mjs";
2
+ import { sql } from "kysely";
3
+ import { ulid } from "ulidx";
4
+
5
+ //#region src/database/repositories/comment.ts
6
+ /** Matches LIKE wildcard characters and the escape character itself */
7
+ const LIKE_ESCAPE_RE = /[%_\\]/g;
8
+ var CommentRepository = class CommentRepository {
9
+ constructor(db) {
10
+ this.db = db;
11
+ }
12
+ /**
13
+ * Create a new comment
14
+ */
15
+ async create(input) {
16
+ const id = ulid();
17
+ const now = (/* @__PURE__ */ new Date()).toISOString();
18
+ await this.db.insertInto("_dineway_comments").values({
19
+ id,
20
+ collection: input.collection,
21
+ content_id: input.contentId,
22
+ parent_id: input.parentId ?? null,
23
+ author_name: input.authorName,
24
+ author_email: input.authorEmail,
25
+ author_user_id: input.authorUserId ?? null,
26
+ body: input.body,
27
+ status: input.status ?? "pending",
28
+ ip_hash: input.ipHash ?? null,
29
+ user_agent: input.userAgent ?? null,
30
+ moderation_metadata: input.moderationMetadata ? JSON.stringify(input.moderationMetadata) : null,
31
+ created_at: now,
32
+ updated_at: now
33
+ }).execute();
34
+ const comment = await this.findById(id);
35
+ if (!comment) throw new Error("Failed to create comment");
36
+ return comment;
37
+ }
38
+ /**
39
+ * Find comment by ID
40
+ */
41
+ async findById(id) {
42
+ const row = await this.db.selectFrom("_dineway_comments").selectAll().where("id", "=", id).executeTakeFirst();
43
+ return row ? this.rowToComment(row) : null;
44
+ }
45
+ /**
46
+ * Find comments for a content item with optional status filter.
47
+ * Results are ordered by created_at ASC (oldest first) for display.
48
+ */
49
+ async findByContent(collection, contentId, options = {}) {
50
+ const limit = Math.min(options.limit || 50, 100);
51
+ let query = this.db.selectFrom("_dineway_comments").selectAll().where("collection", "=", collection).where("content_id", "=", contentId);
52
+ if (options.status) query = query.where("status", "=", options.status);
53
+ if (options.cursor) {
54
+ const decoded = decodeCursor(options.cursor);
55
+ if (decoded) query = query.where((eb) => eb.or([eb("created_at", ">", decoded.orderValue), eb.and([eb("created_at", "=", decoded.orderValue), eb("id", ">", decoded.id)])]));
56
+ }
57
+ query = query.orderBy("created_at", "asc").orderBy("id", "asc").limit(limit + 1);
58
+ const rows = await query.execute();
59
+ const hasMore = rows.length > limit;
60
+ const items = rows.slice(0, limit).map((r) => this.rowToComment(r));
61
+ const result = { items };
62
+ if (hasMore && items.length > 0) {
63
+ const last = items.at(-1);
64
+ result.nextCursor = encodeCursor(last.createdAt, last.id);
65
+ }
66
+ return result;
67
+ }
68
+ /**
69
+ * Find comments by status (moderation inbox).
70
+ * Results are ordered by created_at DESC (newest first).
71
+ */
72
+ async findByStatus(status, options = {}) {
73
+ const limit = Math.min(options.limit || 50, 100);
74
+ let query = this.db.selectFrom("_dineway_comments").selectAll().where("status", "=", status);
75
+ if (options.collection) query = query.where("collection", "=", options.collection);
76
+ if (options.search) {
77
+ const term = `%${options.search.replace(LIKE_ESCAPE_RE, (ch) => `\\${ch}`)}%`;
78
+ query = query.where((eb) => eb.or([
79
+ sql`author_name LIKE ${term} ESCAPE '\\'`,
80
+ sql`author_email LIKE ${term} ESCAPE '\\'`,
81
+ sql`body LIKE ${term} ESCAPE '\\'`
82
+ ]));
83
+ }
84
+ if (options.cursor) {
85
+ const decoded = decodeCursor(options.cursor);
86
+ if (decoded) query = query.where((eb) => eb.or([eb("created_at", "<", decoded.orderValue), eb.and([eb("created_at", "=", decoded.orderValue), eb("id", "<", decoded.id)])]));
87
+ }
88
+ query = query.orderBy("created_at", "desc").orderBy("id", "desc").limit(limit + 1);
89
+ const rows = await query.execute();
90
+ const hasMore = rows.length > limit;
91
+ const items = rows.slice(0, limit).map((r) => this.rowToComment(r));
92
+ const result = { items };
93
+ if (hasMore && items.length > 0) {
94
+ const last = items.at(-1);
95
+ result.nextCursor = encodeCursor(last.createdAt, last.id);
96
+ }
97
+ return result;
98
+ }
99
+ /**
100
+ * Update comment status
101
+ */
102
+ async updateStatus(id, status) {
103
+ const now = (/* @__PURE__ */ new Date()).toISOString();
104
+ await this.db.updateTable("_dineway_comments").set({
105
+ status,
106
+ updated_at: now
107
+ }).where("id", "=", id).execute();
108
+ return this.findById(id);
109
+ }
110
+ /**
111
+ * Bulk update comment statuses
112
+ */
113
+ async bulkUpdateStatus(ids, status) {
114
+ if (ids.length === 0) return 0;
115
+ const now = (/* @__PURE__ */ new Date()).toISOString();
116
+ const result = await this.db.updateTable("_dineway_comments").set({
117
+ status,
118
+ updated_at: now
119
+ }).where("id", "in", ids).executeTakeFirst();
120
+ return Number(result.numUpdatedRows ?? 0);
121
+ }
122
+ /**
123
+ * Hard-delete a single comment. Replies cascade via FK.
124
+ */
125
+ async delete(id) {
126
+ return ((await this.db.deleteFrom("_dineway_comments").where("id", "=", id).executeTakeFirst()).numDeletedRows ?? 0) > 0;
127
+ }
128
+ /**
129
+ * Bulk hard-delete comments
130
+ */
131
+ async bulkDelete(ids) {
132
+ if (ids.length === 0) return 0;
133
+ const result = await this.db.deleteFrom("_dineway_comments").where("id", "in", ids).executeTakeFirst();
134
+ return Number(result.numDeletedRows ?? 0);
135
+ }
136
+ /**
137
+ * Delete all comments for a content item (cascade on content deletion)
138
+ */
139
+ async deleteByContent(collection, contentId) {
140
+ const result = await this.db.deleteFrom("_dineway_comments").where("collection", "=", collection).where("content_id", "=", contentId).executeTakeFirst();
141
+ return Number(result.numDeletedRows ?? 0);
142
+ }
143
+ /**
144
+ * Count comments for a content item, optionally filtered by status
145
+ */
146
+ async countByContent(collection, contentId, status) {
147
+ let query = this.db.selectFrom("_dineway_comments").select((eb) => eb.fn.count("id").as("count")).where("collection", "=", collection).where("content_id", "=", contentId);
148
+ if (status) query = query.where("status", "=", status);
149
+ const result = await query.executeTakeFirst();
150
+ return Number(result?.count ?? 0);
151
+ }
152
+ /**
153
+ * Count comments grouped by status (for inbox badges)
154
+ *
155
+ * Uses four parallel COUNT queries with WHERE filters to leverage partial indexes
156
+ * (idx_comments_pending, idx_comments_approved, idx_comments_spam, idx_comments_trash)
157
+ * instead of a full table GROUP BY scan.
158
+ */
159
+ async countByStatus() {
160
+ const [pending, approved, spam, trash] = await Promise.all([
161
+ this.db.selectFrom("_dineway_comments").select((eb) => eb.fn.count("id").as("count")).where("status", "=", "pending").executeTakeFirst(),
162
+ this.db.selectFrom("_dineway_comments").select((eb) => eb.fn.count("id").as("count")).where("status", "=", "approved").executeTakeFirst(),
163
+ this.db.selectFrom("_dineway_comments").select((eb) => eb.fn.count("id").as("count")).where("status", "=", "spam").executeTakeFirst(),
164
+ this.db.selectFrom("_dineway_comments").select((eb) => eb.fn.count("id").as("count")).where("status", "=", "trash").executeTakeFirst()
165
+ ]);
166
+ return {
167
+ pending: Number(pending?.count ?? 0),
168
+ approved: Number(approved?.count ?? 0),
169
+ spam: Number(spam?.count ?? 0),
170
+ trash: Number(trash?.count ?? 0)
171
+ };
172
+ }
173
+ /**
174
+ * Count approved comments from a given email address.
175
+ * Used for "first time commenter" moderation logic.
176
+ */
177
+ async countApprovedByEmail(email) {
178
+ const result = await this.db.selectFrom("_dineway_comments").select((eb) => eb.fn.count("id").as("count")).where("author_email", "=", email).where("status", "=", "approved").executeTakeFirst();
179
+ return Number(result?.count ?? 0);
180
+ }
181
+ /**
182
+ * Update the moderation metadata JSON on a comment
183
+ */
184
+ async updateModerationMetadata(id, metadata) {
185
+ await this.db.updateTable("_dineway_comments").set({ moderation_metadata: JSON.stringify(metadata) }).where("id", "=", id).execute();
186
+ }
187
+ /**
188
+ * Assemble a flat list of comments into a threaded structure (1-level nesting)
189
+ */
190
+ static assembleThreads(comments) {
191
+ const roots = [];
192
+ const childrenMap = /* @__PURE__ */ new Map();
193
+ for (const comment of comments) if (comment.parentId) {
194
+ const siblings = childrenMap.get(comment.parentId) ?? [];
195
+ siblings.push(comment);
196
+ childrenMap.set(comment.parentId, siblings);
197
+ } else roots.push(comment);
198
+ return roots.map((root) => ({
199
+ ...root,
200
+ _replies: childrenMap.get(root.id) ?? []
201
+ }));
202
+ }
203
+ /**
204
+ * Convert a Comment to its public-facing shape
205
+ */
206
+ static toPublicComment(comment) {
207
+ const pub = {
208
+ id: comment.id,
209
+ parentId: comment.parentId,
210
+ authorName: comment.authorName,
211
+ isRegisteredUser: comment.authorUserId !== null,
212
+ body: comment.body,
213
+ createdAt: comment.createdAt
214
+ };
215
+ if (comment._replies && comment._replies.length > 0) pub.replies = comment._replies.map((r) => CommentRepository.toPublicComment(r));
216
+ return pub;
217
+ }
218
+ rowToComment(row) {
219
+ return {
220
+ id: row.id,
221
+ collection: row.collection,
222
+ contentId: row.content_id,
223
+ parentId: row.parent_id,
224
+ authorName: row.author_name,
225
+ authorEmail: row.author_email,
226
+ authorUserId: row.author_user_id,
227
+ body: row.body,
228
+ status: row.status,
229
+ ipHash: row.ip_hash,
230
+ userAgent: row.user_agent,
231
+ moderationMetadata: row.moderation_metadata ? safeJsonParse(row.moderation_metadata) : null,
232
+ createdAt: row.created_at,
233
+ updatedAt: row.updated_at
234
+ };
235
+ }
236
+ };
237
+ function safeJsonParse(value) {
238
+ try {
239
+ return JSON.parse(value);
240
+ } catch {
241
+ return null;
242
+ }
243
+ }
244
+
245
+ //#endregion
246
+ export { CommentRepository as t };