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.
- package/README.md +63 -17
- package/dist/activity-events-B4wp7CrU.mjs +540 -0
- package/dist/allowed-origins-C1AKK9AT.mjs +68 -0
- package/dist/api/route-utils.d.mts +42 -0
- package/dist/api/route-utils.mjs +26 -0
- package/dist/api/schemas/index.d.mts +3 -0
- package/dist/api/schemas/index.mjs +6 -0
- package/dist/api/schemas/setup.d.mts +42 -0
- package/dist/api/schemas/setup.mjs +39 -0
- package/dist/api-BR7Y0GBo.mjs +2704 -0
- package/dist/api-tokens-CPjC3zf8.mjs +3 -0
- package/dist/api-tokens-D7UjLbdt.mjs +153 -0
- package/dist/{apply-iVSqz2qs.mjs → apply-Bm5QgdrE.mjs} +15 -689
- package/dist/astro/index.d.mts +11 -6
- package/dist/astro/index.mjs +86 -11
- package/dist/astro/middleware/auth.d.mts +11 -7
- package/dist/astro/middleware/auth.mjs +19 -104
- package/dist/astro/middleware/redirect.mjs +24 -14
- package/dist/astro/middleware/request-context.mjs +9 -6
- package/dist/astro/middleware/setup.mjs +1 -1
- package/dist/astro/middleware.mjs +88 -145
- package/dist/astro/routes/PluginRegistry.d.mts +14 -0
- package/dist/astro/routes/PluginRegistry.mjs +24 -0
- package/dist/astro/routes/api/admin/allowed-domains/_domain_.d.mts +14 -0
- package/dist/astro/routes/api/admin/allowed-domains/_domain_.mjs +65 -0
- package/dist/astro/routes/api/admin/allowed-domains/index.d.mts +14 -0
- package/dist/astro/routes/api/admin/allowed-domains/index.mjs +65 -0
- package/dist/astro/routes/api/admin/api-tokens/_id_.d.mts +10 -0
- package/dist/astro/routes/api/admin/api-tokens/_id_.mjs +33 -0
- package/dist/astro/routes/api/admin/api-tokens/index.d.mts +16 -0
- package/dist/astro/routes/api/admin/api-tokens/index.mjs +59 -0
- package/dist/astro/routes/api/admin/briefing.d.mts +7 -0
- package/dist/astro/routes/api/admin/briefing.mjs +71 -0
- package/dist/astro/routes/api/admin/bylines/_id_/index.d.mts +9 -0
- package/dist/astro/routes/api/admin/bylines/_id_/index.mjs +74 -0
- package/dist/astro/routes/api/admin/bylines/index.d.mts +8 -0
- package/dist/astro/routes/api/admin/bylines/index.mjs +61 -0
- package/dist/astro/routes/api/admin/comments/_id_/status.d.mts +7 -0
- package/dist/astro/routes/api/admin/comments/_id_/status.mjs +80 -0
- package/dist/astro/routes/api/admin/comments/_id_.d.mts +14 -0
- package/dist/astro/routes/api/admin/comments/_id_.mjs +46 -0
- package/dist/astro/routes/api/admin/comments/bulk.d.mts +7 -0
- package/dist/astro/routes/api/admin/comments/bulk.mjs +36 -0
- package/dist/astro/routes/api/admin/comments/counts.d.mts +7 -0
- package/dist/astro/routes/api/admin/comments/counts.mjs +24 -0
- package/dist/astro/routes/api/admin/comments/index.d.mts +10 -0
- package/dist/astro/routes/api/admin/comments/index.mjs +40 -0
- package/dist/astro/routes/api/admin/context/_id_/history.d.mts +7 -0
- package/dist/astro/routes/api/admin/context/_id_/history.mjs +46 -0
- package/dist/astro/routes/api/admin/context/_id_/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/context/_id_/index.mjs +46 -0
- package/dist/astro/routes/api/admin/context/_id_/review.d.mts +7 -0
- package/dist/astro/routes/api/admin/context/_id_/review.mjs +61 -0
- package/dist/astro/routes/api/admin/context/_id_/supersede.d.mts +7 -0
- package/dist/astro/routes/api/admin/context/_id_/supersede.mjs +64 -0
- package/dist/astro/routes/api/admin/context/diff.d.mts +7 -0
- package/dist/astro/routes/api/admin/context/diff.mjs +50 -0
- package/dist/astro/routes/api/admin/context/index.d.mts +8 -0
- package/dist/astro/routes/api/admin/context/index.mjs +72 -0
- package/dist/astro/routes/api/admin/context/stale.d.mts +7 -0
- package/dist/astro/routes/api/admin/context/stale.mjs +50 -0
- package/dist/astro/routes/api/admin/hitl-requests/_id_/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/hitl-requests/_id_/index.mjs +52 -0
- package/dist/astro/routes/api/admin/hitl-requests/_id_/resolve.d.mts +7 -0
- package/dist/astro/routes/api/admin/hitl-requests/_id_/resolve.mjs +68 -0
- package/dist/astro/routes/api/admin/hitl-requests/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/hitl-requests/index.mjs +56 -0
- package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.d.mts +7 -0
- package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.mjs +99 -0
- package/dist/astro/routes/api/admin/hooks/exclusive/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/hooks/exclusive/index.mjs +33 -0
- package/dist/astro/routes/api/admin/oauth-clients/_id_.d.mts +18 -0
- package/dist/astro/routes/api/admin/oauth-clients/_id_.mjs +79 -0
- package/dist/astro/routes/api/admin/oauth-clients/index.d.mts +14 -0
- package/dist/astro/routes/api/admin/oauth-clients/index.mjs +58 -0
- package/dist/astro/routes/api/admin/plugins/_id_/disable.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/_id_/disable.mjs +90 -0
- package/dist/astro/routes/api/admin/plugins/_id_/enable.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/_id_/enable.mjs +90 -0
- package/dist/astro/routes/api/admin/plugins/_id_/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/_id_/index.mjs +55 -0
- package/dist/astro/routes/api/admin/plugins/_id_/uninstall.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs +99 -0
- package/dist/astro/routes/api/admin/plugins/_id_/update.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/_id_/update.mjs +132 -0
- package/dist/astro/routes/api/admin/plugins/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/index.mjs +53 -0
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.mjs +36 -0
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs +55 -0
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs +129 -0
- package/dist/astro/routes/api/admin/plugins/marketplace/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs +62 -0
- package/dist/astro/routes/api/admin/plugins/updates.d.mts +7 -0
- package/dist/astro/routes/api/admin/plugins/updates.mjs +53 -0
- package/dist/astro/routes/api/admin/review-requests/_id_/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/review-requests/_id_/index.mjs +26 -0
- package/dist/astro/routes/api/admin/review-requests/_id_/resolve.d.mts +7 -0
- package/dist/astro/routes/api/admin/review-requests/_id_/resolve.mjs +98 -0
- package/dist/astro/routes/api/admin/review-requests/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/review-requests/index.mjs +31 -0
- package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs +55 -0
- package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.d.mts +7 -0
- package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.mjs +36 -0
- package/dist/astro/routes/api/admin/themes/marketplace/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/themes/marketplace/index.mjs +71 -0
- package/dist/astro/routes/api/admin/users/_id_/disable.d.mts +7 -0
- package/dist/astro/routes/api/admin/users/_id_/disable.mjs +38 -0
- package/dist/astro/routes/api/admin/users/_id_/enable.d.mts +7 -0
- package/dist/astro/routes/api/admin/users/_id_/enable.mjs +29 -0
- package/dist/astro/routes/api/admin/users/_id_/index.d.mts +8 -0
- package/dist/astro/routes/api/admin/users/_id_/index.mjs +104 -0
- package/dist/astro/routes/api/admin/users/_id_/send-recovery.d.mts +7 -0
- package/dist/astro/routes/api/admin/users/_id_/send-recovery.mjs +43 -0
- package/dist/astro/routes/api/admin/users/index.d.mts +7 -0
- package/dist/astro/routes/api/admin/users/index.mjs +54 -0
- package/dist/astro/routes/api/auth/dev-bypass.d.mts +8 -0
- package/dist/astro/routes/api/auth/dev-bypass.mjs +81 -0
- package/dist/astro/routes/api/auth/invite/accept.d.mts +7 -0
- package/dist/astro/routes/api/auth/invite/accept.mjs +31 -0
- package/dist/astro/routes/api/auth/invite/complete.d.mts +7 -0
- package/dist/astro/routes/api/auth/invite/complete.mjs +54 -0
- package/dist/astro/routes/api/auth/invite/index.d.mts +7 -0
- package/dist/astro/routes/api/auth/invite/index.mjs +51 -0
- package/dist/astro/routes/api/auth/invite/register-options.d.mts +7 -0
- package/dist/astro/routes/api/auth/invite/register-options.mjs +44 -0
- package/dist/astro/routes/api/auth/logout.d.mts +7 -0
- package/dist/astro/routes/api/auth/logout.mjs +24 -0
- package/dist/astro/routes/api/auth/magic-link/send.d.mts +7 -0
- package/dist/astro/routes/api/auth/magic-link/send.mjs +48 -0
- package/dist/astro/routes/api/auth/magic-link/verify.d.mts +7 -0
- package/dist/astro/routes/api/auth/magic-link/verify.mjs +32 -0
- package/dist/astro/routes/api/auth/me.d.mts +13 -0
- package/dist/astro/routes/api/auth/me.mjs +41 -0
- package/dist/astro/routes/api/auth/mode.d.mts +7 -0
- package/dist/astro/routes/api/auth/mode.mjs +28 -0
- package/dist/astro/routes/api/auth/oauth/_provider_/callback.d.mts +7 -0
- package/dist/astro/routes/api/auth/oauth/_provider_/callback.mjs +114 -0
- package/dist/astro/routes/api/auth/oauth/_provider_.d.mts +7 -0
- package/dist/astro/routes/api/auth/oauth/_provider_.mjs +58 -0
- package/dist/astro/routes/api/auth/passkey/_id_.d.mts +14 -0
- package/dist/astro/routes/api/auth/passkey/_id_.mjs +62 -0
- package/dist/astro/routes/api/auth/passkey/index.d.mts +7 -0
- package/dist/astro/routes/api/auth/passkey/index.mjs +25 -0
- package/dist/astro/routes/api/auth/passkey/options.d.mts +7 -0
- package/dist/astro/routes/api/auth/passkey/options.mjs +46 -0
- package/dist/astro/routes/api/auth/passkey/register/options.d.mts +7 -0
- package/dist/astro/routes/api/auth/passkey/register/options.mjs +44 -0
- package/dist/astro/routes/api/auth/passkey/register/verify.d.mts +7 -0
- package/dist/astro/routes/api/auth/passkey/register/verify.mjs +59 -0
- package/dist/astro/routes/api/auth/passkey/verify.d.mts +7 -0
- package/dist/astro/routes/api/auth/passkey/verify.mjs +47 -0
- package/dist/astro/routes/api/auth/signup/complete.d.mts +7 -0
- package/dist/astro/routes/api/auth/signup/complete.mjs +55 -0
- package/dist/astro/routes/api/auth/signup/request.d.mts +7 -0
- package/dist/astro/routes/api/auth/signup/request.mjs +44 -0
- package/dist/astro/routes/api/auth/signup/verify.d.mts +7 -0
- package/dist/astro/routes/api/auth/signup/verify.mjs +32 -0
- package/dist/astro/routes/api/comments/_collection_/_contentId_/index.d.mts +14 -0
- package/dist/astro/routes/api/comments/_collection_/_contentId_/index.mjs +193 -0
- package/dist/astro/routes/api/content/_collection_/_id_/compare.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/compare.mjs +17 -0
- package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs +36 -0
- package/dist/astro/routes/api/content/_collection_/_id_/duplicate.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/duplicate.mjs +39 -0
- package/dist/astro/routes/api/content/_collection_/_id_/permanent.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/permanent.mjs +31 -0
- package/dist/astro/routes/api/content/_collection_/_id_/preview-url.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/preview-url.mjs +78 -0
- package/dist/astro/routes/api/content/_collection_/_id_/publish.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs +93 -0
- package/dist/astro/routes/api/content/_collection_/_id_/restore.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/restore.mjs +36 -0
- package/dist/astro/routes/api/content/_collection_/_id_/revisions.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/revisions.mjs +19 -0
- package/dist/astro/routes/api/content/_collection_/_id_/schedule.d.mts +8 -0
- package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs +75 -0
- package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.d.mts +14 -0
- package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.mjs +85 -0
- package/dist/astro/routes/api/content/_collection_/_id_/translations.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/translations.mjs +40 -0
- package/dist/astro/routes/api/content/_collection_/_id_/unpublish.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs +36 -0
- package/dist/astro/routes/api/content/_collection_/_id_.d.mts +9 -0
- package/dist/astro/routes/api/content/_collection_/_id_.mjs +114 -0
- package/dist/astro/routes/api/content/_collection_/index.d.mts +8 -0
- package/dist/astro/routes/api/content/_collection_/index.mjs +74 -0
- package/dist/astro/routes/api/content/_collection_/trash.d.mts +7 -0
- package/dist/astro/routes/api/content/_collection_/trash.mjs +23 -0
- package/dist/astro/routes/api/dashboard.d.mts +7 -0
- package/dist/astro/routes/api/dashboard.mjs +26 -0
- package/dist/astro/routes/api/dev/emails.d.mts +8 -0
- package/dist/astro/routes/api/dev/emails.mjs +17 -0
- package/dist/astro/routes/api/health.d.mts +7 -0
- package/dist/astro/routes/api/health.mjs +34 -0
- package/dist/astro/routes/api/import/probe.d.mts +17 -0
- package/dist/astro/routes/api/import/probe.mjs +33 -0
- package/dist/astro/routes/api/import/wordpress/analyze.d.mts +87 -0
- package/dist/astro/routes/api/import/wordpress/analyze.mjs +305 -0
- package/dist/astro/routes/api/import/wordpress/execute.d.mts +37 -0
- package/dist/astro/routes/api/import/wordpress/execute.mjs +198 -0
- package/dist/astro/routes/api/import/wordpress/media.d.mts +35 -0
- package/dist/astro/routes/api/import/wordpress/media.mjs +222 -0
- package/dist/astro/routes/api/import/wordpress/prepare.d.mts +19 -0
- package/dist/astro/routes/api/import/wordpress/prepare.mjs +156 -0
- package/dist/astro/routes/api/import/wordpress/rewrite-urls.d.mts +21 -0
- package/dist/astro/routes/api/import/wordpress/rewrite-urls.mjs +290 -0
- package/dist/astro/routes/api/import/wordpress-plugin/analyze.d.mts +15 -0
- package/dist/astro/routes/api/import/wordpress-plugin/analyze.mjs +69 -0
- package/dist/astro/routes/api/import/wordpress-plugin/callback.d.mts +7 -0
- package/dist/astro/routes/api/import/wordpress-plugin/callback.mjs +28 -0
- package/dist/astro/routes/api/import/wordpress-plugin/execute.d.mts +19 -0
- package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs +269 -0
- package/dist/astro/routes/api/manifest.d.mts +7 -0
- package/dist/astro/routes/api/manifest.mjs +50 -0
- package/dist/astro/routes/api/mcp.d.mts +15 -0
- package/dist/astro/routes/api/mcp.mjs +2701 -0
- package/dist/astro/routes/api/media/_id_/confirm.d.mts +10 -0
- package/dist/astro/routes/api/media/_id_/confirm.mjs +59 -0
- package/dist/astro/routes/api/media/_id_.d.mts +22 -0
- package/dist/astro/routes/api/media/_id_.mjs +81 -0
- package/dist/astro/routes/api/media/file/_...key_.d.mts +7 -0
- package/dist/astro/routes/api/media/file/_...key_.mjs +49 -0
- package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.d.mts +14 -0
- package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.mjs +49 -0
- package/dist/astro/routes/api/media/providers/_providerId_/index.d.mts +14 -0
- package/dist/astro/routes/api/media/providers/_providerId_/index.mjs +72 -0
- package/dist/astro/routes/api/media/providers/index.d.mts +10 -0
- package/dist/astro/routes/api/media/providers/index.mjs +18 -0
- package/dist/astro/routes/api/media/upload-url.d.mts +10 -0
- package/dist/astro/routes/api/media/upload-url.mjs +82 -0
- package/dist/astro/routes/api/media.d.mts +16 -0
- package/dist/astro/routes/api/media.mjs +137 -0
- package/dist/astro/routes/api/menus/_name_/items.d.mts +9 -0
- package/dist/astro/routes/api/menus/_name_/items.mjs +165 -0
- package/dist/astro/routes/api/menus/_name_/reorder.d.mts +7 -0
- package/dist/astro/routes/api/menus/_name_/reorder.mjs +78 -0
- package/dist/astro/routes/api/menus/_name_.d.mts +9 -0
- package/dist/astro/routes/api/menus/_name_.mjs +124 -0
- package/dist/astro/routes/api/menus/index.d.mts +8 -0
- package/dist/astro/routes/api/menus/index.mjs +85 -0
- package/dist/astro/routes/api/oauth/authorize.d.mts +8 -0
- package/dist/astro/routes/api/oauth/authorize.mjs +265 -0
- package/dist/astro/routes/api/oauth/device/authorize.d.mts +7 -0
- package/dist/astro/routes/api/oauth/device/authorize.mjs +30 -0
- package/dist/astro/routes/api/oauth/device/code.d.mts +7 -0
- package/dist/astro/routes/api/oauth/device/code.mjs +34 -0
- package/dist/astro/routes/api/oauth/device/token.d.mts +7 -0
- package/dist/astro/routes/api/oauth/device/token.mjs +45 -0
- package/dist/astro/routes/api/oauth/register.d.mts +8 -0
- package/dist/astro/routes/api/oauth/register.mjs +115 -0
- package/dist/astro/routes/api/oauth/token/refresh.d.mts +7 -0
- package/dist/astro/routes/api/oauth/token/refresh.mjs +28 -0
- package/dist/astro/routes/api/oauth/token/revoke.d.mts +7 -0
- package/dist/astro/routes/api/oauth/token/revoke.mjs +25 -0
- package/dist/astro/routes/api/oauth/token.d.mts +8 -0
- package/dist/astro/routes/api/oauth/token.mjs +138 -0
- package/dist/astro/routes/api/openapi.json.d.mts +7 -0
- package/dist/astro/routes/api/openapi.json.mjs +2638 -0
- package/dist/astro/routes/api/plugins/_pluginId_/_...path_.d.mts +11 -0
- package/dist/astro/routes/api/plugins/_pluginId_/_...path_.mjs +77 -0
- package/dist/astro/routes/api/redirects/404s/index.d.mts +9 -0
- package/dist/astro/routes/api/redirects/404s/index.mjs +62 -0
- package/dist/astro/routes/api/redirects/404s/summary.d.mts +7 -0
- package/dist/astro/routes/api/redirects/404s/summary.mjs +34 -0
- package/dist/astro/routes/api/redirects/_id_.d.mts +9 -0
- package/dist/astro/routes/api/redirects/_id_.mjs +153 -0
- package/dist/astro/routes/api/redirects/index.d.mts +8 -0
- package/dist/astro/routes/api/redirects/index.mjs +98 -0
- package/dist/astro/routes/api/revisions/_revisionId_/index.d.mts +7 -0
- package/dist/astro/routes/api/revisions/_revisionId_/index.mjs +16 -0
- package/dist/astro/routes/api/revisions/_revisionId_/restore.d.mts +7 -0
- package/dist/astro/routes/api/revisions/_revisionId_/restore.mjs +23 -0
- package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.d.mts +9 -0
- package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs +99 -0
- package/dist/astro/routes/api/schema/collections/_slug_/fields/index.d.mts +8 -0
- package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs +81 -0
- package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.d.mts +7 -0
- package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs +68 -0
- package/dist/astro/routes/api/schema/collections/_slug_/index.d.mts +9 -0
- package/dist/astro/routes/api/schema/collections/_slug_/index.mjs +98 -0
- package/dist/astro/routes/api/schema/collections/index.d.mts +8 -0
- package/dist/astro/routes/api/schema/collections/index.mjs +78 -0
- package/dist/astro/routes/api/schema/index.d.mts +7 -0
- package/dist/astro/routes/api/schema/index.mjs +79 -0
- package/dist/astro/routes/api/schema/orphans/_slug_.d.mts +7 -0
- package/dist/astro/routes/api/schema/orphans/_slug_.mjs +59 -0
- package/dist/astro/routes/api/schema/orphans/index.d.mts +7 -0
- package/dist/astro/routes/api/schema/orphans/index.mjs +54 -0
- package/dist/astro/routes/api/search/enable.d.mts +15 -0
- package/dist/astro/routes/api/search/enable.mjs +55 -0
- package/dist/astro/routes/api/search/index.d.mts +16 -0
- package/dist/astro/routes/api/search/index.mjs +52 -0
- package/dist/astro/routes/api/search/rebuild.d.mts +13 -0
- package/dist/astro/routes/api/search/rebuild.mjs +48 -0
- package/dist/astro/routes/api/search/stats.d.mts +10 -0
- package/dist/astro/routes/api/search/stats.mjs +28 -0
- package/dist/astro/routes/api/search/suggest.d.mts +15 -0
- package/dist/astro/routes/api/search/suggest.mjs +43 -0
- package/dist/astro/routes/api/sections/_slug_.d.mts +9 -0
- package/dist/astro/routes/api/sections/_slug_.mjs +157 -0
- package/dist/astro/routes/api/sections/index.d.mts +8 -0
- package/dist/astro/routes/api/sections/index.mjs +100 -0
- package/dist/astro/routes/api/settings/email.d.mts +17 -0
- package/dist/astro/routes/api/settings/email.mjs +102 -0
- package/dist/astro/routes/api/settings.d.mts +20 -0
- package/dist/astro/routes/api/settings.mjs +102 -0
- package/dist/astro/routes/api/setup/admin-verify.d.mts +7 -0
- package/dist/astro/routes/api/setup/admin-verify.mjs +67 -0
- package/dist/astro/routes/api/setup/admin.d.mts +7 -0
- package/dist/astro/routes/api/setup/admin.mjs +68 -0
- package/dist/astro/routes/api/setup/dev-bypass.d.mts +8 -0
- package/dist/astro/routes/api/setup/dev-bypass.mjs +137 -0
- package/dist/astro/routes/api/setup/dev-reset.d.mts +7 -0
- package/dist/astro/routes/api/setup/dev-reset.mjs +22 -0
- package/dist/astro/routes/api/setup/index.d.mts +7 -0
- package/dist/astro/routes/api/setup/index.mjs +93 -0
- package/dist/astro/routes/api/setup/status.d.mts +7 -0
- package/dist/astro/routes/api/setup/status.mjs +57 -0
- package/dist/astro/routes/api/snapshot.d.mts +7 -0
- package/dist/astro/routes/api/snapshot.mjs +227 -0
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.d.mts +18 -0
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.mjs +190 -0
- package/dist/astro/routes/api/taxonomies/_name_/terms/index.d.mts +14 -0
- package/dist/astro/routes/api/taxonomies/_name_/terms/index.mjs +114 -0
- package/dist/astro/routes/api/taxonomies/index.d.mts +14 -0
- package/dist/astro/routes/api/taxonomies/index.mjs +104 -0
- package/dist/astro/routes/api/themes/preview.d.mts +7 -0
- package/dist/astro/routes/api/themes/preview.mjs +47 -0
- package/dist/astro/routes/api/typegen.d.mts +17 -0
- package/dist/astro/routes/api/typegen.mjs +75 -0
- package/dist/astro/routes/api/well-known/auth.d.mts +7 -0
- package/dist/astro/routes/api/well-known/auth.mjs +42 -0
- package/dist/astro/routes/api/well-known/oauth-authorization-server.d.mts +7 -0
- package/dist/astro/routes/api/well-known/oauth-authorization-server.mjs +33 -0
- package/dist/astro/routes/api/well-known/oauth-protected-resource.d.mts +7 -0
- package/dist/astro/routes/api/well-known/oauth-protected-resource.mjs +21 -0
- package/dist/astro/routes/api/widget-areas/_name_/reorder.d.mts +7 -0
- package/dist/astro/routes/api/widget-areas/_name_/reorder.mjs +89 -0
- package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.d.mts +8 -0
- package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.mjs +159 -0
- package/dist/astro/routes/api/widget-areas/_name_/widgets.d.mts +7 -0
- package/dist/astro/routes/api/widget-areas/_name_/widgets.mjs +105 -0
- package/dist/astro/routes/api/widget-areas/_name_.d.mts +8 -0
- package/dist/astro/routes/api/widget-areas/_name_.mjs +100 -0
- package/dist/astro/routes/api/widget-areas/index.d.mts +8 -0
- package/dist/astro/routes/api/widget-areas/index.mjs +109 -0
- package/dist/astro/routes/api/widget-components.d.mts +7 -0
- package/dist/astro/routes/api/widget-components.mjs +15 -0
- package/dist/astro/routes/robots.txt.d.mts +7 -0
- package/dist/astro/routes/robots.txt.mjs +60 -0
- package/dist/astro/routes/sitemap-_collection_.xml.d.mts +7 -0
- package/dist/astro/routes/sitemap-_collection_.xml.mjs +70 -0
- package/dist/astro/routes/sitemap.xml.d.mts +7 -0
- package/dist/astro/routes/sitemap.xml.mjs +63 -0
- package/dist/astro/types.d.mts +42 -9
- package/dist/auth/providers/github-admin.d.mts +9 -0
- package/dist/auth/providers/github-admin.mjs +27 -0
- package/dist/auth/providers/github.d.mts +12 -0
- package/dist/auth/providers/github.mjs +17 -0
- package/dist/auth/providers/google-admin.d.mts +9 -0
- package/dist/auth/providers/google-admin.mjs +43 -0
- package/dist/auth/providers/google.d.mts +12 -0
- package/dist/auth/providers/google.mjs +17 -0
- package/dist/auth-control-guard-DOZ3UCsP.mjs +13 -0
- package/dist/authorize-BAdbMCwC.mjs +36 -0
- package/dist/briefing-MVYe_Uyf.mjs +1294 -0
- package/dist/briefing-rty4O-wa.mjs +29 -0
- package/dist/{byline-OhH2dlRu.mjs → byline-naZxOPSa.mjs} +3 -3
- package/dist/{bylines-BGpD9_hy.mjs → bylines-C4LIBOOO.mjs} +20 -53
- package/dist/bylines-eVVCuOe4.d.mts +2023 -0
- package/dist/{cache-BdSY-gQN.mjs → cache-DEbQ13c9.mjs} +21 -11
- package/dist/challenge-store-DDTbisbf.mjs +48 -0
- package/dist/cli/index.mjs +142 -22
- package/dist/client/external-auth-headers.d.mts +1 -1
- package/dist/client/index.d.mts +1 -1
- package/dist/client/index.mjs +3 -3
- package/dist/comment-DFO-gWDH.mjs +246 -0
- package/dist/comments--BsZ9pqA.mjs +186 -0
- package/dist/components-BPknylYg.mjs +107 -0
- package/dist/{content-DWi4d0rT.mjs → content-CyLkb-qH.mjs} +33 -44
- package/dist/context-CNIkMzot.mjs +849 -0
- package/dist/context-DNfcm853.mjs +184 -0
- package/dist/context-route-helpers-MurhoxWF.mjs +45 -0
- package/dist/context-types-C-LwdAxx.mjs +23 -0
- package/dist/cron-CKxvBrRT.mjs +263 -0
- package/dist/dashboard-DqnYU8EU.mjs +120 -0
- package/dist/db/index.d.mts +3 -3
- package/dist/db/libsql.d.mts +1 -1
- package/dist/db/libsql.mjs +3 -3
- package/dist/db/postgres.d.mts +1 -1
- package/dist/db/sqlite.d.mts +1 -1
- package/dist/db/sqlite.mjs +1 -2
- package/dist/device-flow-BGEH5jfn.mjs +487 -0
- package/dist/email-console-CuefUXfX.mjs +36 -0
- package/dist/entity-aliases-C0v-yNET.mjs +51 -0
- package/dist/error-BMUPwxgx.mjs +435 -0
- package/dist/escape-BRVaw1Ai.mjs +8 -0
- package/dist/experimental-workflows-C9X7yblQ.mjs +38 -0
- package/dist/fts-manager-B1pTNEG_.mjs +297 -0
- package/dist/hash-CDX7M0ze.mjs +32 -0
- package/dist/hitl-requests-ChT32Ilo.mjs +118 -0
- package/dist/hitl-route-helpers-CSit54Ru.mjs +96 -0
- package/dist/import-BHRLhXAn.mjs +1323 -0
- package/dist/import-CNcKWTbp.mjs +243 -0
- package/dist/index-CYfhYgXd.d.mts +227 -0
- package/dist/index-EUAWaIxW.d.mts +835 -0
- package/dist/index.d.mts +17 -11
- package/dist/index.mjs +63 -22
- package/dist/jsonld-D2gUY4kA.d.mts +141 -0
- package/dist/{loader-sMG4TZ-u.mjs → loader-PZnPxFLc.mjs} +42 -5
- package/dist/{manifest-schema-D1MSVnoI.mjs → manifest-schema-CgFJAp0H.mjs} +22 -10
- package/dist/media/index.d.mts +2 -1
- package/dist/media/index.mjs +2 -1
- package/dist/media/local-runtime.d.mts +12 -7
- package/dist/media/local-runtime.mjs +3 -3
- package/dist/{media-DMTr80Gv.mjs → media-_7Fxdu45.mjs} +1 -1
- package/dist/menus-DS3_5nWY.mjs +312 -0
- package/dist/menus-DYW_UHjv.mjs +256 -0
- package/dist/normalize-C49G_o1k.mjs +126 -0
- package/dist/oauth-authorization-DxGjiWKL.mjs +283 -0
- package/dist/oauth-clients-DxO_NO7k.mjs +298 -0
- package/dist/oauth-state-store-C5UFhzwD.mjs +48 -0
- package/dist/oauth-user-lookup-Bi0ek9eM.mjs +25 -0
- package/dist/options-z8VVg1Ll.mjs +114 -0
- package/dist/page/index.d.mts +2 -139
- package/dist/page/index.mjs +1 -427
- package/dist/parse-C9106ehs.mjs +88 -0
- package/dist/passkey-config-BRSZx4pW.mjs +42 -0
- package/dist/{patterns-CrCYkMBb.mjs → patterns-K0DLqWir.mjs} +53 -1
- package/dist/placeholder-Bh1dfUOd.d.mts +40 -0
- package/dist/{placeholder-Cp8g5Emj.mjs → placeholder-C2P5fKa4.mjs} +1 -126
- package/dist/plugins/adapt-sandbox-entry.d.mts +10 -5
- package/dist/plugins/adapt-sandbox-entry.mjs +4 -4
- package/dist/plugins-D7-ILNib.mjs +3249 -0
- package/dist/preview-DvYRU-Oy.mjs +788 -0
- package/dist/provider-loader-BiQ6lNmf.d.mts +20 -0
- package/dist/provider-loader-C21b9OpH.mjs +36 -0
- package/dist/public-url-Cun8N3NU.mjs +71 -0
- package/dist/{query-kDmwCsHh.mjs → query-B9BO5goQ.mjs} +93 -19
- package/dist/query-CsbOywSY.mjs +35 -0
- package/dist/rate-limit-DmVTHI5v.mjs +112 -0
- package/dist/{redirect-DnEWAkVg.mjs → redirect-CGl64yOX.mjs} +9 -5
- package/dist/redirect-COZy-3iY.mjs +16 -0
- package/dist/redirects-Cgi_cZfN.mjs +499 -0
- package/dist/redirects-lrlmYXVE.mjs +1023 -0
- package/dist/{registry-C0zjeB9P.mjs → registry-C-_hxLqa.mjs} +26 -294
- package/dist/request-meta-DixlNKKa.mjs +130 -0
- package/dist/review-requests-C2DIHwlJ.mjs +148 -0
- package/dist/review-requests-DIyjw-K_.mjs +79 -0
- package/dist/{runner-CFI6B6J2.d.mts → runner-BU6Lo1ZS.d.mts} +1 -1
- package/dist/{index-yvc6E_17.d.mts → runtime-Db4LbNVZ.d.mts} +1188 -2484
- package/dist/runtime.d.mts +11 -24
- package/dist/runtime.mjs +4 -38
- package/dist/schema-BECjUhP8.mjs +8 -0
- package/dist/search-DqTHQqtV.mjs +337 -0
- package/dist/secrets-CkoJ9zN0.mjs +160 -0
- package/dist/sections-B61OxnfB.mjs +338 -0
- package/dist/seed/index.d.mts +2 -2
- package/dist/seed/index.mjs +18 -13
- package/dist/seo/index.d.mts +1 -1
- package/dist/seo-C007Luwn.mjs +85 -0
- package/dist/seo-CUQctrog.mjs +129 -0
- package/dist/seo-contributions-B1fWCnqY.mjs +429 -0
- package/dist/service-CyOsm0R6.mjs +194 -0
- package/dist/settings-DGtLLSaz.mjs +237 -0
- package/dist/settings-Dzgswvg4.mjs +50 -0
- package/dist/setup-complete-ChilE-da.mjs +21 -0
- package/dist/setup-nonce-BpmLXAuu.mjs +17 -0
- package/dist/sidecar-client-B1C6Cf80.mjs +66 -0
- package/dist/site-activity-B8FjLIVh.mjs +104 -0
- package/dist/site-context-WBxoD99D.mjs +4122 -0
- package/dist/site-url-BP7k7OCe.mjs +12 -0
- package/dist/slugify-PDTDtMXp.mjs +30 -0
- package/dist/ssrf-DDwRxF6B.mjs +248 -0
- package/dist/storage/local.d.mts +1 -1
- package/dist/storage/local.mjs +1 -1
- package/dist/storage/s3.d.mts +1 -1
- package/dist/storage/s3.mjs +2 -2
- package/dist/{taxonomies-1s5PaS_8.mjs → taxonomies-D2aZGuns.mjs} +11 -7
- package/dist/taxonomies-z6Lz91BC.mjs +355 -0
- package/dist/taxonomy-D5cbhc8u.mjs +165 -0
- package/dist/{tokens-CJz9ubV6.mjs → tokens-BOJw-D9F.mjs} +1 -1
- package/dist/{transport-DB5eDN4x.mjs → transport-D3i4yWRE.mjs} +5 -4
- package/dist/trusted-proxy-BbaZfkT9.mjs +30 -0
- package/dist/types-0Vr68fc2.d.mts +344 -0
- package/dist/types-BFmjniC2.d.mts +165 -0
- package/dist/{types-BawVha09.mjs → types-Bs6lTBBW.mjs} +1 -1
- package/dist/{types-BuMDPy5C.d.mts → types-C0mmVRJN.d.mts} +6 -0
- package/dist/{placeholder--wOi4TbO.d.mts → types-OPs5Q_sX.d.mts} +1 -38
- package/dist/{types-Cj0KMIZV.d.mts → types-Q616b2Hn.d.mts} +54 -16
- package/dist/ui/client-runtime.d.mts +12 -0
- package/dist/ui/client-runtime.mjs +32 -0
- package/dist/ui/server-runtime.d.mts +33 -0
- package/dist/ui/server-runtime.mjs +80 -0
- package/dist/url-DNjT2abR.mjs +49 -0
- package/dist/user-CcXq-zoL.mjs +154 -0
- package/dist/utils-C0ONdBul.mjs +285 -0
- package/dist/{validate-IPf8n4Fj.d.mts → validate-BwmQEbu8.d.mts} +3 -3
- package/dist/{validate-BZ5wnLLp.mjs → validate-C7TzfamJ.mjs} +1 -1
- package/dist/version-D3vDb22n.mjs +6 -0
- package/dist/widgets-B7DRpZvy.mjs +104 -0
- package/dist/wordpress-slugs-CnporCYH.mjs +14 -0
- package/dist/zod-generator-DBVP8D0P.mjs +132 -0
- package/locals.d.ts +1 -6
- package/package.json +81 -11
- package/src/components/Button.astro +1 -1
- package/src/components/CommentForm.astro +1 -1
- package/src/components/Comments.astro +1 -3
- package/src/components/DinewayBodyEnd.astro +5 -3
- package/src/components/DinewayBodyStart.astro +5 -3
- package/src/components/DinewayHead.astro +15 -9
- package/src/components/DinewayImage.astro +12 -8
- package/src/components/DinewayMedia.astro +15 -6
- package/src/components/Embed.astro +1 -2
- package/src/components/File.astro +1 -1
- package/src/components/Gallery.astro +5 -3
- package/src/components/HtmlBlock.astro +1 -1
- package/src/components/Image.astro +9 -3
- package/src/components/InlinePortableTextEditor.tsx +69 -20
- package/src/components/PortableText.astro +1 -1
- package/src/components/WidgetArea.astro +1 -1
- package/src/components/WidgetRenderer.astro +1 -3
- package/src/components/marks/Link.astro +1 -1
- package/src/components/widgets/Archives.astro +1 -1
- package/src/components/widgets/Categories.astro +1 -1
- package/src/components/widgets/RecentPosts.astro +1 -1
- package/src/components/widgets/Tags.astro +1 -1
- package/dist/error-BmL6QipT.mjs +0 -30
- package/dist/search-DxopAWxs.mjs +0 -11200
- package/dist/version-BPz1imu2.mjs +0 -6
- package/src/astro/routes/PluginRegistry.tsx +0 -21
- package/src/astro/routes/api/admin/allowed-domains/[domain].ts +0 -112
- package/src/astro/routes/api/admin/allowed-domains/index.ts +0 -108
- package/src/astro/routes/api/admin/api-tokens/[id].ts +0 -44
- package/src/astro/routes/api/admin/api-tokens/index.ts +0 -90
- package/src/astro/routes/api/admin/briefing.ts +0 -76
- package/src/astro/routes/api/admin/bylines/[id]/index.ts +0 -90
- package/src/astro/routes/api/admin/bylines/index.ts +0 -74
- package/src/astro/routes/api/admin/comments/[id]/status.ts +0 -120
- package/src/astro/routes/api/admin/comments/[id].ts +0 -64
- package/src/astro/routes/api/admin/comments/bulk.ts +0 -42
- package/src/astro/routes/api/admin/comments/counts.ts +0 -30
- package/src/astro/routes/api/admin/comments/index.ts +0 -46
- package/src/astro/routes/api/admin/context/[id]/history.ts +0 -35
- package/src/astro/routes/api/admin/context/[id]/index.ts +0 -35
- package/src/astro/routes/api/admin/context/[id]/review.ts +0 -57
- package/src/astro/routes/api/admin/context/[id]/supersede.ts +0 -58
- package/src/astro/routes/api/admin/context/diff.ts +0 -35
- package/src/astro/routes/api/admin/context/index.ts +0 -69
- package/src/astro/routes/api/admin/context/stale.ts +0 -35
- package/src/astro/routes/api/admin/hitl-requests/[id]/index.ts +0 -38
- package/src/astro/routes/api/admin/hitl-requests/[id]/resolve.ts +0 -54
- package/src/astro/routes/api/admin/hitl-requests/index.ts +0 -38
- package/src/astro/routes/api/admin/hooks/exclusive/[hookName].ts +0 -132
- package/src/astro/routes/api/admin/hooks/exclusive/index.ts +0 -51
- package/src/astro/routes/api/admin/oauth-clients/[id].ts +0 -137
- package/src/astro/routes/api/admin/oauth-clients/index.ts +0 -95
- package/src/astro/routes/api/admin/plugins/[id]/disable.ts +0 -91
- package/src/astro/routes/api/admin/plugins/[id]/enable.ts +0 -91
- package/src/astro/routes/api/admin/plugins/[id]/index.ts +0 -38
- package/src/astro/routes/api/admin/plugins/[id]/uninstall.ts +0 -98
- package/src/astro/routes/api/admin/plugins/[id]/update.ts +0 -154
- package/src/astro/routes/api/admin/plugins/index.ts +0 -32
- package/src/astro/routes/api/admin/plugins/marketplace/[id]/icon.ts +0 -62
- package/src/astro/routes/api/admin/plugins/marketplace/[id]/index.ts +0 -33
- package/src/astro/routes/api/admin/plugins/marketplace/[id]/install.ts +0 -135
- package/src/astro/routes/api/admin/plugins/marketplace/index.ts +0 -38
- package/src/astro/routes/api/admin/plugins/updates.ts +0 -28
- package/src/astro/routes/api/admin/review-requests/[id]/index.ts +0 -35
- package/src/astro/routes/api/admin/review-requests/[id]/resolve.ts +0 -52
- package/src/astro/routes/api/admin/review-requests/index.ts +0 -35
- package/src/astro/routes/api/admin/themes/marketplace/[id]/index.ts +0 -33
- package/src/astro/routes/api/admin/themes/marketplace/[id]/thumbnail.ts +0 -62
- package/src/astro/routes/api/admin/themes/marketplace/index.ts +0 -45
- package/src/astro/routes/api/admin/users/[id]/disable.ts +0 -72
- package/src/astro/routes/api/admin/users/[id]/enable.ts +0 -48
- package/src/astro/routes/api/admin/users/[id]/index.ts +0 -166
- package/src/astro/routes/api/admin/users/[id]/send-recovery.ts +0 -72
- package/src/astro/routes/api/admin/users/index.ts +0 -66
- package/src/astro/routes/api/auth/dev-bypass.ts +0 -139
- package/src/astro/routes/api/auth/invite/accept.ts +0 -52
- package/src/astro/routes/api/auth/invite/complete.ts +0 -86
- package/src/astro/routes/api/auth/invite/index.ts +0 -99
- package/src/astro/routes/api/auth/invite/register-options.ts +0 -73
- package/src/astro/routes/api/auth/logout.ts +0 -40
- package/src/astro/routes/api/auth/magic-link/send.ts +0 -90
- package/src/astro/routes/api/auth/magic-link/verify.ts +0 -71
- package/src/astro/routes/api/auth/me.ts +0 -60
- package/src/astro/routes/api/auth/oauth/[provider]/callback.ts +0 -221
- package/src/astro/routes/api/auth/oauth/[provider].ts +0 -120
- package/src/astro/routes/api/auth/passkey/[id].ts +0 -124
- package/src/astro/routes/api/auth/passkey/index.ts +0 -54
- package/src/astro/routes/api/auth/passkey/options.ts +0 -85
- package/src/astro/routes/api/auth/passkey/register/options.ts +0 -88
- package/src/astro/routes/api/auth/passkey/register/verify.ts +0 -119
- package/src/astro/routes/api/auth/passkey/verify.ts +0 -72
- package/src/astro/routes/api/auth/signup/complete.ts +0 -87
- package/src/astro/routes/api/auth/signup/request.ts +0 -89
- package/src/astro/routes/api/auth/signup/verify.ts +0 -53
- package/src/astro/routes/api/comments/[collection]/[contentId]/index.ts +0 -310
- package/src/astro/routes/api/content/[collection]/[id]/compare.ts +0 -28
- package/src/astro/routes/api/content/[collection]/[id]/discard-draft.ts +0 -68
- package/src/astro/routes/api/content/[collection]/[id]/duplicate.ts +0 -77
- package/src/astro/routes/api/content/[collection]/[id]/permanent.ts +0 -42
- package/src/astro/routes/api/content/[collection]/[id]/preview-url.ts +0 -107
- package/src/astro/routes/api/content/[collection]/[id]/publish.ts +0 -100
- package/src/astro/routes/api/content/[collection]/[id]/restore.ts +0 -64
- package/src/astro/routes/api/content/[collection]/[id]/revisions.ts +0 -31
- package/src/astro/routes/api/content/[collection]/[id]/schedule.ts +0 -129
- package/src/astro/routes/api/content/[collection]/[id]/terms/[taxonomy].ts +0 -143
- package/src/astro/routes/api/content/[collection]/[id]/translations.ts +0 -50
- package/src/astro/routes/api/content/[collection]/[id]/unpublish.ts +0 -69
- package/src/astro/routes/api/content/[collection]/[id].ts +0 -173
- package/src/astro/routes/api/content/[collection]/index.ts +0 -103
- package/src/astro/routes/api/content/[collection]/trash.ts +0 -33
- package/src/astro/routes/api/dashboard.ts +0 -32
- package/src/astro/routes/api/dev/emails.ts +0 -36
- package/src/astro/routes/api/health.ts +0 -54
- package/src/astro/routes/api/import/probe.ts +0 -47
- package/src/astro/routes/api/import/wordpress/analyze.ts +0 -523
- package/src/astro/routes/api/import/wordpress/execute.ts +0 -330
- package/src/astro/routes/api/import/wordpress/media.ts +0 -338
- package/src/astro/routes/api/import/wordpress/prepare.ts +0 -212
- package/src/astro/routes/api/import/wordpress/rewrite-urls.ts +0 -425
- package/src/astro/routes/api/import/wordpress-plugin/analyze.ts +0 -111
- package/src/astro/routes/api/import/wordpress-plugin/callback.ts +0 -58
- package/src/astro/routes/api/import/wordpress-plugin/execute.ts +0 -399
- package/src/astro/routes/api/manifest.ts +0 -75
- package/src/astro/routes/api/mcp.ts +0 -125
- package/src/astro/routes/api/media/[id]/confirm.ts +0 -93
- package/src/astro/routes/api/media/[id].ts +0 -145
- package/src/astro/routes/api/media/file/[...key].ts +0 -79
- package/src/astro/routes/api/media/providers/[providerId]/[itemId].ts +0 -91
- package/src/astro/routes/api/media/providers/[providerId]/index.ts +0 -111
- package/src/astro/routes/api/media/providers/index.ts +0 -30
- package/src/astro/routes/api/media/upload-url.ts +0 -146
- package/src/astro/routes/api/media.ts +0 -204
- package/src/astro/routes/api/menus/[name]/items.ts +0 -206
- package/src/astro/routes/api/menus/[name]/reorder.ts +0 -79
- package/src/astro/routes/api/menus/[name].ts +0 -145
- package/src/astro/routes/api/menus/index.ts +0 -91
- package/src/astro/routes/api/oauth/authorize.ts +0 -430
- package/src/astro/routes/api/oauth/device/authorize.ts +0 -45
- package/src/astro/routes/api/oauth/device/code.ts +0 -56
- package/src/astro/routes/api/oauth/device/token.ts +0 -70
- package/src/astro/routes/api/oauth/register.ts +0 -182
- package/src/astro/routes/api/oauth/token/refresh.ts +0 -38
- package/src/astro/routes/api/oauth/token/revoke.ts +0 -38
- package/src/astro/routes/api/oauth/token.ts +0 -195
- package/src/astro/routes/api/openapi.json.ts +0 -33
- package/src/astro/routes/api/plugins/[pluginId]/[...path].ts +0 -109
- package/src/astro/routes/api/redirects/404s/index.ts +0 -72
- package/src/astro/routes/api/redirects/404s/summary.ts +0 -33
- package/src/astro/routes/api/redirects/[id].ts +0 -183
- package/src/astro/routes/api/redirects/index.ts +0 -100
- package/src/astro/routes/api/revisions/[revisionId]/index.ts +0 -29
- package/src/astro/routes/api/revisions/[revisionId]/restore.ts +0 -62
- package/src/astro/routes/api/schema/collections/[slug]/fields/[fieldSlug].ts +0 -104
- package/src/astro/routes/api/schema/collections/[slug]/fields/index.ts +0 -67
- package/src/astro/routes/api/schema/collections/[slug]/fields/reorder.ts +0 -45
- package/src/astro/routes/api/schema/collections/[slug]/index.ts +0 -107
- package/src/astro/routes/api/schema/collections/index.ts +0 -61
- package/src/astro/routes/api/schema/index.ts +0 -109
- package/src/astro/routes/api/schema/orphans/[slug].ts +0 -36
- package/src/astro/routes/api/schema/orphans/index.ts +0 -26
- package/src/astro/routes/api/search/enable.ts +0 -64
- package/src/astro/routes/api/search/index.ts +0 -52
- package/src/astro/routes/api/search/rebuild.ts +0 -72
- package/src/astro/routes/api/search/stats.ts +0 -35
- package/src/astro/routes/api/search/suggest.ts +0 -50
- package/src/astro/routes/api/sections/[slug].ts +0 -203
- package/src/astro/routes/api/sections/index.ts +0 -107
- package/src/astro/routes/api/settings/email.ts +0 -150
- package/src/astro/routes/api/settings.ts +0 -116
- package/src/astro/routes/api/setup/admin-verify.ts +0 -122
- package/src/astro/routes/api/setup/admin.ts +0 -104
- package/src/astro/routes/api/setup/dev-bypass.ts +0 -200
- package/src/astro/routes/api/setup/dev-reset.ts +0 -40
- package/src/astro/routes/api/setup/index.ts +0 -128
- package/src/astro/routes/api/setup/status.ts +0 -122
- package/src/astro/routes/api/snapshot.ts +0 -76
- package/src/astro/routes/api/taxonomies/[name]/terms/[slug].ts +0 -232
- package/src/astro/routes/api/taxonomies/[name]/terms/index.ts +0 -131
- package/src/astro/routes/api/taxonomies/index.ts +0 -114
- package/src/astro/routes/api/themes/preview.ts +0 -78
- package/src/astro/routes/api/typegen.ts +0 -114
- package/src/astro/routes/api/well-known/auth.ts +0 -71
- package/src/astro/routes/api/well-known/oauth-authorization-server.ts +0 -48
- package/src/astro/routes/api/well-known/oauth-protected-resource.ts +0 -39
- package/src/astro/routes/api/widget-areas/[name]/reorder.ts +0 -114
- package/src/astro/routes/api/widget-areas/[name]/widgets/[id].ts +0 -213
- package/src/astro/routes/api/widget-areas/[name]/widgets.ts +0 -126
- package/src/astro/routes/api/widget-areas/[name].ts +0 -135
- package/src/astro/routes/api/widget-areas/index.ts +0 -149
- package/src/astro/routes/api/widget-components.ts +0 -22
- package/src/astro/routes/robots.txt.ts +0 -81
- package/src/astro/routes/sitemap-[collection].xml.ts +0 -104
- package/src/astro/routes/sitemap.xml.ts +0 -92
- /package/dist/{adapters-C2ypTrZZ.d.mts → adapters-DuLQZhRY.d.mts} +0 -0
- /package/{src → dist}/astro/routes/admin.astro +0 -0
- /package/dist/{base64-F8-DUraK.mjs → base64-Cz-aU0X1.mjs} +0 -0
- /package/dist/{chunks--4F8ddV4.mjs → chunks-D_jVet6z.mjs} +0 -0
- /package/dist/{config-BXwuX8Bx.mjs → config-CAMFxGaV.mjs} +0 -0
- /package/dist/{db-errors-CEqD7qH9.mjs → db-errors-DyZkswzF.mjs} +0 -0
- /package/dist/{default-VjJyuuG9.mjs → default-D4ngTpW8.mjs} +0 -0
- /package/dist/{load-Coc9HpHH.mjs → load-B2XtDw__.mjs} +0 -0
- /package/dist/{mode-47goXBBK.mjs → mode-DUhxwUhv.mjs} +0 -0
- /package/dist/{request-cache-Dk5qPSOx.mjs → request-cache-DHMRr2Lf.mjs} +0 -0
- /package/dist/{transaction-Cn2rjY78.mjs → transaction-x2tJQ-A1.mjs} +0 -0
- /package/dist/{transport-Wge_IzKl.d.mts → transport-BXe1AM79.d.mts} +0 -0
- /package/dist/{types-CWbdtiux.d.mts → types-B7kpsMJ3.d.mts} +0 -0
- /package/dist/{types-BzcUjoqg.d.mts → types-DJlpx5Ay.d.mts} +0 -0
- /package/dist/{types-COeOq9nK.mjs → types-DL7Y8D_t.mjs} +0 -0
- /package/dist/{types-DOrVigru.d.mts → types-DZPw8Rru.d.mts} +0 -0
- /package/dist/{types-griIBQOQ.mjs → types-fAInWQDO.mjs} +0 -0
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { m as FieldType } from "./types-
|
|
1
|
+
import { m as FieldType } from "./types-C0mmVRJN.mjs";
|
|
2
2
|
import { z } from "astro/zod";
|
|
3
|
+
import "react/jsx-runtime";
|
|
3
4
|
import { JSX } from "astro/jsx-runtime";
|
|
4
5
|
|
|
5
|
-
//#region ../blocks/dist/validation-
|
|
6
|
+
//#region ../blocks/dist/validation-b1zbwCOE.d.ts
|
|
6
7
|
//#region src/types.d.ts
|
|
7
8
|
interface ConfirmDialog {
|
|
8
9
|
title: string;
|
|
@@ -99,13 +100,32 @@ interface RadioElement {
|
|
|
99
100
|
}>;
|
|
100
101
|
initial_value?: string;
|
|
101
102
|
}
|
|
102
|
-
|
|
103
|
+
interface MediaPickerElement {
|
|
104
|
+
type: "media_picker";
|
|
105
|
+
action_id: string;
|
|
106
|
+
label: string;
|
|
107
|
+
mime_type_filter?: string;
|
|
108
|
+
initial_value?: string;
|
|
109
|
+
placeholder?: string;
|
|
110
|
+
}
|
|
111
|
+
type RepeaterSubField = TextInputElement | NumberInputElement | SelectElement | ToggleElement;
|
|
112
|
+
interface RepeaterElement {
|
|
113
|
+
type: "repeater";
|
|
114
|
+
action_id: string;
|
|
115
|
+
label: string;
|
|
116
|
+
item_label?: string;
|
|
117
|
+
fields: RepeaterSubField[];
|
|
118
|
+
min_items?: number;
|
|
119
|
+
max_items?: number;
|
|
120
|
+
initial_value?: Array<Record<string, unknown>>;
|
|
121
|
+
}
|
|
122
|
+
type Element = ButtonElement | TextInputElement | NumberInputElement | SelectElement | ToggleElement | SecretInputElement | CheckboxElement | DateInputElement | ComboboxElement | RadioElement | MediaPickerElement | RepeaterElement;
|
|
103
123
|
//#endregion
|
|
104
124
|
//#region src/plugins/types.d.ts
|
|
105
125
|
/**
|
|
106
126
|
* Plugin capabilities determine what APIs are available in context
|
|
107
127
|
*/
|
|
108
|
-
type PluginCapability = "network:
|
|
128
|
+
type PluginCapability = "network:request" | "network:request:unrestricted" | "content:read" | "content:write" | "media:read" | "media:write" | "users:read" | "email:send" | "hooks.email-transport:register" | "hooks.email-events:register" | "hooks.page-fragments:register";
|
|
109
129
|
/**
|
|
110
130
|
* Storage collection declaration in plugin definition
|
|
111
131
|
*/
|
|
@@ -354,7 +374,7 @@ interface MediaAccessWithWrite extends MediaAccess {
|
|
|
354
374
|
delete(id: string): Promise<boolean>;
|
|
355
375
|
}
|
|
356
376
|
/**
|
|
357
|
-
* HTTP client interface - requires network:
|
|
377
|
+
* HTTP client interface - requires network:request capability
|
|
358
378
|
*/
|
|
359
379
|
interface HttpAccess {
|
|
360
380
|
fetch(url: string, init?: RequestInit): Promise<Response>;
|
|
@@ -391,7 +411,7 @@ interface UserInfo {
|
|
|
391
411
|
createdAt: string;
|
|
392
412
|
}
|
|
393
413
|
/**
|
|
394
|
-
* User access interface - requires read
|
|
414
|
+
* User access interface - requires users:read capability
|
|
395
415
|
*/
|
|
396
416
|
interface UserAccess {
|
|
397
417
|
/** Get a user by ID */
|
|
@@ -421,11 +441,11 @@ interface PluginContext<TStorage extends PluginStorageConfig = PluginStorageConf
|
|
|
421
441
|
storage: PluginStorage<TStorage>;
|
|
422
442
|
/** Key-value store for config and state */
|
|
423
443
|
kv: KVAccess;
|
|
424
|
-
/** Content access - only if read
|
|
444
|
+
/** Content access - only if content:read or content:write capability */
|
|
425
445
|
content?: ContentAccess | ContentAccessWithWrite;
|
|
426
|
-
/** Media access - only if read
|
|
446
|
+
/** Media access - only if media:read or media:write capability */
|
|
427
447
|
media?: MediaAccess | MediaAccessWithWrite;
|
|
428
|
-
/** HTTP client - only if network:
|
|
448
|
+
/** HTTP client - only if network:request capability */
|
|
429
449
|
http?: HttpAccess;
|
|
430
450
|
/** Logger - always available */
|
|
431
451
|
log: LogAccess;
|
|
@@ -433,7 +453,7 @@ interface PluginContext<TStorage extends PluginStorageConfig = PluginStorageConf
|
|
|
433
453
|
site: SiteInfo;
|
|
434
454
|
/** URL helper - generates absolute URLs from paths. Always available. */
|
|
435
455
|
url(path: string): string;
|
|
436
|
-
/** User access - only if read
|
|
456
|
+
/** User access - only if users:read capability */
|
|
437
457
|
users?: UserAccess;
|
|
438
458
|
/** Cron task scheduling - always available, scoped to plugin */
|
|
439
459
|
cron?: CronAccess;
|
|
@@ -481,8 +501,8 @@ type CronHandler = (event: CronEvent, ctx: PluginContext) => Promise<void>;
|
|
|
481
501
|
*
|
|
482
502
|
* Related capabilities:
|
|
483
503
|
* - `email:send` — grants ctx.email (this interface)
|
|
484
|
-
* - `email:
|
|
485
|
-
* - `email:
|
|
504
|
+
* - `hooks.email-transport:register` — allows registering the `email:deliver` exclusive hook
|
|
505
|
+
* - `hooks.email-events:register` — allows registering `email:beforeSend` / `email:afterSend` hooks
|
|
486
506
|
*/
|
|
487
507
|
interface EmailAccess {
|
|
488
508
|
send(message: EmailMessage): Promise<void>;
|
|
@@ -976,7 +996,7 @@ interface PluginDashboardWidget {
|
|
|
976
996
|
/**
|
|
977
997
|
* Settings field types (for admin UI generation)
|
|
978
998
|
*/
|
|
979
|
-
type SettingFieldType = "string" | "number" | "boolean" | "select" | "secret";
|
|
999
|
+
type SettingFieldType = "string" | "number" | "boolean" | "select" | "secret" | "url" | "email";
|
|
980
1000
|
interface BaseSettingField {
|
|
981
1001
|
type: SettingFieldType;
|
|
982
1002
|
label: string;
|
|
@@ -1008,7 +1028,17 @@ interface SelectSettingField extends BaseSettingField {
|
|
|
1008
1028
|
interface SecretSettingField extends BaseSettingField {
|
|
1009
1029
|
type: "secret";
|
|
1010
1030
|
}
|
|
1011
|
-
|
|
1031
|
+
interface UrlSettingField extends BaseSettingField {
|
|
1032
|
+
type: "url";
|
|
1033
|
+
default?: string;
|
|
1034
|
+
placeholder?: string;
|
|
1035
|
+
}
|
|
1036
|
+
interface EmailSettingField extends BaseSettingField {
|
|
1037
|
+
type: "email";
|
|
1038
|
+
default?: string;
|
|
1039
|
+
placeholder?: string;
|
|
1040
|
+
}
|
|
1041
|
+
type SettingField = StringSettingField | NumberSettingField | BooleanSettingField | SelectSettingField | SecretSettingField | UrlSettingField | EmailSettingField;
|
|
1012
1042
|
/**
|
|
1013
1043
|
* Block Kit element for block editing fields.
|
|
1014
1044
|
* This is the `Element` discriminated union from `@dineway-ai/blocks`.
|
|
@@ -1031,6 +1061,14 @@ interface PortableTextBlockConfig {
|
|
|
1031
1061
|
placeholder?: string;
|
|
1032
1062
|
/** Block Kit form fields for the editing UI. If declared, replaces the simple URL input. */
|
|
1033
1063
|
fields?: PortableTextBlockField[];
|
|
1064
|
+
/**
|
|
1065
|
+
* Optional display category in the slash menu. Defaults to "Embeds".
|
|
1066
|
+
*
|
|
1067
|
+
* Plugin authors should pick a meaningful category that reflects what the
|
|
1068
|
+
* block actually is, for example "Sections", "Marketing", "Media",
|
|
1069
|
+
* "Embeds", or "Layout".
|
|
1070
|
+
*/
|
|
1071
|
+
category?: string;
|
|
1034
1072
|
}
|
|
1035
1073
|
/**
|
|
1036
1074
|
* Configuration for a field widget type contributed by a plugin.
|
|
@@ -1074,7 +1112,7 @@ interface PluginDefinition<TStorage extends PluginStorageConfig = PluginStorageC
|
|
|
1074
1112
|
version: string;
|
|
1075
1113
|
/** Declared capabilities */
|
|
1076
1114
|
capabilities?: PluginCapability[];
|
|
1077
|
-
/** Allowed hosts for network:
|
|
1115
|
+
/** Allowed hosts for network:request (wildcards supported: *.example.com) */
|
|
1078
1116
|
allowedHosts?: string[];
|
|
1079
1117
|
/** Storage collections with indexes */
|
|
1080
1118
|
storage?: TStorage;
|
|
@@ -1206,4 +1244,4 @@ interface PluginManifest {
|
|
|
1206
1244
|
admin: PluginAdminConfig;
|
|
1207
1245
|
}
|
|
1208
1246
|
//#endregion
|
|
1209
|
-
export { StandardHookEntry as $, PageMetadataContribution as A, PluginDefinition as B, MediaAccess as C, PageFragmentContribution as D, ModerationDecision as E, PluginAdminConfig as F, PortableTextBlockConfig as G, PluginManifest as H, PluginAdminExports as I, RequestMeta as J, PortableTextBlockField as K, PluginAdminPage as L, PageMetadataHandler as M, PageMetadataLinkRel as N, PageFragmentEvent as O, PagePlacement as P, RouteContext as Q, PluginCapability as R, LogAccess as S, MediaUploadEvent as T, PluginRoute as U, PluginHooks as V, PluginStorageConfig as W, ResolvedPlugin as X, ResolvedHook as Y, ResolvedPluginHooks as Z, FieldWidgetConfig as _, CommentAfterModerateEvent as a,
|
|
1247
|
+
export { StandardHookEntry as $, PageMetadataContribution as A, PluginDefinition as B, MediaAccess as C, PageFragmentContribution as D, ModerationDecision as E, PluginAdminConfig as F, PortableTextBlockConfig as G, PluginManifest as H, PluginAdminExports as I, RequestMeta as J, PortableTextBlockField as K, PluginAdminPage as L, PageMetadataHandler as M, PageMetadataLinkRel as N, PageFragmentEvent as O, PagePlacement as P, RouteContext as Q, PluginCapability as R, LogAccess as S, MediaUploadEvent as T, PluginRoute as U, PluginHooks as V, PluginStorageConfig as W, ResolvedPlugin as X, ResolvedHook as Y, ResolvedPluginHooks as Z, FieldWidgetConfig as _, CommentAfterModerateEvent as a, StorageCollectionConfig as at, HttpAccess as b, CommentBeforeCreateHandler as c, Element as ct, ContentAccess as d, StandardHookHandler as et, ContentDeleteEvent as f, EmailMessage as g, CronEvent as h, CommentAfterCreateHandler as i, StorageCollection as it, PageMetadataEvent as j, PageFragmentHandler as k, CommentModerateEvent as l, ContentPublishStateChangeEvent as m, CollectionCommentSettings as n, StandardRouteEntry as nt, CommentAfterModerateHandler as o, StoredComment as ot, ContentHookEvent as p, PublicPageContext as q, CommentAfterCreateEvent as r, StandardRouteHandler as rt, CommentBeforeCreateEvent as s, isStandardPluginDefinition as st, BreadcrumbItem as t, StandardPluginDefinition as tt, CommentModerateHandler as u, HookConfig as v, MediaItem as w, KVAccess as x, HookName as y, PluginContext as z };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
//#region src/media/thumbnail.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Compute thumbnail dimensions that fit within a THUMBNAIL_MAX_DIMENSION box,
|
|
4
|
+
* preserving aspect ratio. Both output dimensions are clamped to at least 1.
|
|
5
|
+
* Never upscales (scale is capped at 1).
|
|
6
|
+
*/
|
|
7
|
+
declare function computeThumbnailSize(width: number, height: number): {
|
|
8
|
+
width: number;
|
|
9
|
+
height: number;
|
|
10
|
+
};
|
|
11
|
+
//#endregion
|
|
12
|
+
export { computeThumbnailSize };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
//#region src/media/thumbnail.ts
|
|
2
|
+
/**
|
|
3
|
+
* Thumbnail sizing for client-side placeholder generation.
|
|
4
|
+
*
|
|
5
|
+
* When the browser generates a thumbnail to send to the server for blurhash
|
|
6
|
+
* generation, the thumbnail dimensions must fit within a bounded box. Naively
|
|
7
|
+
* fixing one dimension and deriving the other from the aspect ratio can
|
|
8
|
+
* explode for extreme aspect ratios (e.g. a 100×840000 image would produce a
|
|
9
|
+
* 64×537600 canvas), defeating the purpose of the thumbnail.
|
|
10
|
+
*/
|
|
11
|
+
/** Max dimension (px) for client-generated upload thumbnails. */
|
|
12
|
+
const THUMBNAIL_MAX_DIMENSION = 64;
|
|
13
|
+
/**
|
|
14
|
+
* Compute thumbnail dimensions that fit within a THUMBNAIL_MAX_DIMENSION box,
|
|
15
|
+
* preserving aspect ratio. Both output dimensions are clamped to at least 1.
|
|
16
|
+
* Never upscales (scale is capped at 1).
|
|
17
|
+
*/
|
|
18
|
+
function computeThumbnailSize(width, height) {
|
|
19
|
+
if (width <= 0 || height <= 0) return {
|
|
20
|
+
width: 1,
|
|
21
|
+
height: 1
|
|
22
|
+
};
|
|
23
|
+
const maxDim = Math.max(width, height);
|
|
24
|
+
const scale = Math.min(1, THUMBNAIL_MAX_DIMENSION / maxDim);
|
|
25
|
+
return {
|
|
26
|
+
width: Math.max(1, Math.round(width * scale)),
|
|
27
|
+
height: Math.max(1, Math.round(height * scale))
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
//#endregion
|
|
32
|
+
export { computeThumbnailSize };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import "../types-DZPw8Rru.mjs";
|
|
2
|
+
import { A as PageMetadataContribution, q as PublicPageContext } from "../types-Q616b2Hn.mjs";
|
|
3
|
+
import { t as MediaReference } from "../types-C0mmVRJN.mjs";
|
|
4
|
+
import { a as EmbedResult, i as EmbedOptions, m as MediaValue, o as ImageEmbed } from "../types-OPs5Q_sX.mjs";
|
|
5
|
+
import { H as getSiteSettings, R as getComments, St as PublicComment, T as getMenu, _ as getTaxonomyTerms, ft as sanitizeHref, l as Widget, pt as getCollectionInfo, rt as getEditMeta, t as getWidgetArea, tt as getDinewayCollection } from "../index-EUAWaIxW.mjs";
|
|
6
|
+
import { a as generateSiteSeoContributions, d as resolvePageMetadata, i as generateBaseSeoContributions, o as renderFragments, u as renderPageMetadata } from "../jsonld-D2gUY4kA.mjs";
|
|
7
|
+
import { getPageRuntime } from "../page/index.mjs";
|
|
8
|
+
import { t as getMediaProvider } from "../provider-loader-BiQ6lNmf.mjs";
|
|
9
|
+
|
|
10
|
+
//#region src/utils/sanitize.d.ts
|
|
11
|
+
/**
|
|
12
|
+
* Sanitize HTML content to prevent XSS attacks.
|
|
13
|
+
*
|
|
14
|
+
* Allows standard formatting tags, images, iframes (from specific providers),
|
|
15
|
+
* and basic attributes.
|
|
16
|
+
*/
|
|
17
|
+
declare function sanitizeContent(html: string): string;
|
|
18
|
+
//#endregion
|
|
19
|
+
//#region src/media/url.d.ts
|
|
20
|
+
interface RenderMediaRef {
|
|
21
|
+
storageKey?: string;
|
|
22
|
+
url?: string;
|
|
23
|
+
id?: string;
|
|
24
|
+
}
|
|
25
|
+
declare function buildRenderMediaUrl(resolve: ((key: string) => string) | undefined, ref: RenderMediaRef): string;
|
|
26
|
+
//#endregion
|
|
27
|
+
//#region src/page/site-identity.d.ts
|
|
28
|
+
interface SiteIdentityInput {
|
|
29
|
+
favicon?: MediaReference;
|
|
30
|
+
}
|
|
31
|
+
declare function renderSiteIdentity(input: SiteIdentityInput | undefined): string;
|
|
32
|
+
//#endregion
|
|
33
|
+
export { type EmbedOptions, type EmbedResult, type ImageEmbed, type MediaValue, type PageMetadataContribution, type PublicComment, type PublicPageContext, type Widget, buildRenderMediaUrl, generateBaseSeoContributions, generateSiteSeoContributions, getCollectionInfo, getComments, getDinewayCollection, getEditMeta, getMediaProvider, getMenu, getPageRuntime, getSiteSettings, getTaxonomyTerms, getWidgetArea, renderFragments, renderPageMetadata, renderSiteIdentity, resolvePageMetadata, sanitizeContent, sanitizeHref };
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import "../dialect-helpers-DhTzaUxP.mjs";
|
|
2
|
+
import "../base64-Cz-aU0X1.mjs";
|
|
3
|
+
import "../types-Bs6lTBBW.mjs";
|
|
4
|
+
import "../media-_7Fxdu45.mjs";
|
|
5
|
+
import "../comment-DFO-gWDH.mjs";
|
|
6
|
+
import "../options-z8VVg1Ll.mjs";
|
|
7
|
+
import "../fts-manager-B1pTNEG_.mjs";
|
|
8
|
+
import "../registry-C-_hxLqa.mjs";
|
|
9
|
+
import "../loader-PZnPxFLc.mjs";
|
|
10
|
+
import { i as getSiteSettings, s as buildRenderMediaUrl } from "../settings-DGtLLSaz.mjs";
|
|
11
|
+
import "../request-cache-DHMRr2Lf.mjs";
|
|
12
|
+
import { t as getCollectionInfo } from "../query-CsbOywSY.mjs";
|
|
13
|
+
import { a as getTaxonomyTerms } from "../taxonomies-D2aZGuns.mjs";
|
|
14
|
+
import { n as sanitizeHref } from "../url-DNjT2abR.mjs";
|
|
15
|
+
import { r as getEditMeta, t as getDinewayCollection } from "../query-B9BO5goQ.mjs";
|
|
16
|
+
import { i as getComments, t as getMenu } from "../menus-DYW_UHjv.mjs";
|
|
17
|
+
import { t as getWidgetArea } from "../widgets-B7DRpZvy.mjs";
|
|
18
|
+
import { t as getMediaProvider } from "../provider-loader-C21b9OpH.mjs";
|
|
19
|
+
import { c as escapeHtmlAttr, l as renderPageMetadata, n as generateSiteSeoContributions, o as renderFragments, t as generateBaseSeoContributions, u as resolvePageMetadata } from "../seo-contributions-B1fWCnqY.mjs";
|
|
20
|
+
import { getPageRuntime } from "../page/index.mjs";
|
|
21
|
+
import sanitizeHtml from "sanitize-html";
|
|
22
|
+
|
|
23
|
+
//#region src/utils/sanitize.ts
|
|
24
|
+
/**
|
|
25
|
+
* Sanitize HTML content to prevent XSS attacks.
|
|
26
|
+
*
|
|
27
|
+
* Allows standard formatting tags, images, iframes (from specific providers),
|
|
28
|
+
* and basic attributes.
|
|
29
|
+
*/
|
|
30
|
+
function sanitizeContent(html) {
|
|
31
|
+
return sanitizeHtml(html, {
|
|
32
|
+
allowedTags: [
|
|
33
|
+
...sanitizeHtml.defaults.allowedTags,
|
|
34
|
+
"img",
|
|
35
|
+
"span",
|
|
36
|
+
"iframe"
|
|
37
|
+
],
|
|
38
|
+
allowedAttributes: {
|
|
39
|
+
...sanitizeHtml.defaults.allowedAttributes,
|
|
40
|
+
"*": [
|
|
41
|
+
"class",
|
|
42
|
+
"id",
|
|
43
|
+
"data-*"
|
|
44
|
+
],
|
|
45
|
+
iframe: [
|
|
46
|
+
"src",
|
|
47
|
+
"width",
|
|
48
|
+
"height",
|
|
49
|
+
"frameborder",
|
|
50
|
+
"allow",
|
|
51
|
+
"allowfullscreen"
|
|
52
|
+
],
|
|
53
|
+
img: [
|
|
54
|
+
"src",
|
|
55
|
+
"srcset",
|
|
56
|
+
"alt",
|
|
57
|
+
"title",
|
|
58
|
+
"width",
|
|
59
|
+
"height",
|
|
60
|
+
"loading"
|
|
61
|
+
]
|
|
62
|
+
},
|
|
63
|
+
allowedIframeHostnames: ["www.youtube.com", "player.vimeo.com"]
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
//#endregion
|
|
68
|
+
//#region src/page/site-identity.ts
|
|
69
|
+
function renderSiteIdentity(input) {
|
|
70
|
+
if (!input) return "";
|
|
71
|
+
const favicon = input.favicon;
|
|
72
|
+
if (!favicon?.url) return "";
|
|
73
|
+
let tag = `<link rel="icon" href="${escapeHtmlAttr(favicon.url)}"`;
|
|
74
|
+
if (favicon.contentType) tag += ` type="${escapeHtmlAttr(favicon.contentType)}"`;
|
|
75
|
+
tag += ">";
|
|
76
|
+
return tag;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
//#endregion
|
|
80
|
+
export { buildRenderMediaUrl, generateBaseSeoContributions, generateSiteSeoContributions, getCollectionInfo, getComments, getDinewayCollection, getEditMeta, getMediaProvider, getMenu, getPageRuntime, getSiteSettings, getTaxonomyTerms, getWidgetArea, renderFragments, renderPageMetadata, renderSiteIdentity, resolvePageMetadata, sanitizeContent, sanitizeHref };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
//#region src/utils/url.ts
|
|
2
|
+
/**
|
|
3
|
+
* URL scheme validation utilities
|
|
4
|
+
*
|
|
5
|
+
* Prevents XSS via dangerous URL schemes (javascript:, data:, vbscript:, etc.)
|
|
6
|
+
* by allowlisting known-safe schemes before rendering into href attributes.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Matches URLs that are safe to render in href attributes.
|
|
10
|
+
*
|
|
11
|
+
* Allowed:
|
|
12
|
+
* - http:// and https://
|
|
13
|
+
* - mailto: and tel:
|
|
14
|
+
* - Relative paths (starting with /)
|
|
15
|
+
* - Fragment links (starting with #)
|
|
16
|
+
* - Protocol-relative URLs are NOT allowed (starting with //) as they can
|
|
17
|
+
* redirect to attacker-controlled hosts.
|
|
18
|
+
*/
|
|
19
|
+
const SAFE_URL_SCHEME_RE = /^(https?:|mailto:|tel:|\/(?!\/)|#)/i;
|
|
20
|
+
/**
|
|
21
|
+
* Returns the URL unchanged if it uses a safe scheme, otherwise returns "#".
|
|
22
|
+
*
|
|
23
|
+
* Use this at the render layer as the primary defense against XSS via
|
|
24
|
+
* dangerous URL schemes like `javascript:`, `data:`, or `vbscript:`.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```ts
|
|
28
|
+
* sanitizeHref("https://example.com") // "https://example.com"
|
|
29
|
+
* sanitizeHref("/about") // "/about"
|
|
30
|
+
* sanitizeHref("#section") // "#section"
|
|
31
|
+
* sanitizeHref("mailto:a@b.com") // "mailto:a@b.com"
|
|
32
|
+
* sanitizeHref("javascript:alert(1)") // "#"
|
|
33
|
+
* sanitizeHref("data:text/html,<script>") // "#"
|
|
34
|
+
* sanitizeHref("") // "#"
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
function sanitizeHref(url) {
|
|
38
|
+
if (!url) return "#";
|
|
39
|
+
return SAFE_URL_SCHEME_RE.test(url) ? url : "#";
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Returns true if the URL uses a safe scheme for rendering in href attributes.
|
|
43
|
+
*/
|
|
44
|
+
function isSafeHref(url) {
|
|
45
|
+
return SAFE_URL_SCHEME_RE.test(url);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
//#endregion
|
|
49
|
+
export { sanitizeHref as n, isSafeHref as t };
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { n as decodeCursor, r as encodeCursor } from "./types-Bs6lTBBW.mjs";
|
|
2
|
+
import { ulid } from "ulidx";
|
|
3
|
+
|
|
4
|
+
//#region src/database/repositories/user.ts
|
|
5
|
+
/**
|
|
6
|
+
* User repository for CRUD operations
|
|
7
|
+
*/
|
|
8
|
+
var UserRepository = class UserRepository {
|
|
9
|
+
constructor(db) {
|
|
10
|
+
this.db = db;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Create a new user
|
|
14
|
+
*/
|
|
15
|
+
async create(input) {
|
|
16
|
+
const id = ulid();
|
|
17
|
+
const row = {
|
|
18
|
+
id,
|
|
19
|
+
email: input.email.toLowerCase(),
|
|
20
|
+
name: input.name ?? null,
|
|
21
|
+
role: UserRepository.resolveRole(input.role ?? 10),
|
|
22
|
+
avatar_url: input.avatarUrl ?? null,
|
|
23
|
+
email_verified: 0,
|
|
24
|
+
data: input.data ? JSON.stringify(input.data) : null
|
|
25
|
+
};
|
|
26
|
+
await this.db.insertInto("users").values(row).execute();
|
|
27
|
+
const user = await this.findById(id);
|
|
28
|
+
if (!user) throw new Error("Failed to create user");
|
|
29
|
+
return user;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Find user by ID
|
|
33
|
+
*/
|
|
34
|
+
async findById(id) {
|
|
35
|
+
const row = await this.db.selectFrom("users").selectAll().where("id", "=", id).executeTakeFirst();
|
|
36
|
+
return row ? this.rowToUser(row) : null;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Find user by email (case-insensitive)
|
|
40
|
+
*/
|
|
41
|
+
async findByEmail(email) {
|
|
42
|
+
const row = await this.db.selectFrom("users").selectAll().where("email", "=", email.toLowerCase()).executeTakeFirst();
|
|
43
|
+
return row ? this.rowToUser(row) : null;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* List all users with cursor-based pagination
|
|
47
|
+
*/
|
|
48
|
+
async findMany(options = {}) {
|
|
49
|
+
const limit = Math.min(Math.max(1, options.limit || 50), 100);
|
|
50
|
+
let query = this.db.selectFrom("users").selectAll().orderBy("created_at", "desc").orderBy("id", "desc").limit(limit + 1);
|
|
51
|
+
if (options.role !== void 0) query = query.where("role", "=", UserRepository.resolveRole(options.role));
|
|
52
|
+
if (options.cursor) {
|
|
53
|
+
const decoded = decodeCursor(options.cursor);
|
|
54
|
+
if (decoded) query = query.where((eb) => eb.or([eb("created_at", "<", decoded.orderValue), eb.and([eb("created_at", "=", decoded.orderValue), eb("id", "<", decoded.id)])]));
|
|
55
|
+
}
|
|
56
|
+
const rows = await query.execute();
|
|
57
|
+
const items = rows.slice(0, limit).map((row) => this.rowToUser(row));
|
|
58
|
+
const result = { items };
|
|
59
|
+
if (rows.length > limit && items.length > 0) {
|
|
60
|
+
const last = items.at(-1);
|
|
61
|
+
result.nextCursor = encodeCursor(last.createdAt, last.id);
|
|
62
|
+
}
|
|
63
|
+
return result;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Update a user
|
|
67
|
+
*/
|
|
68
|
+
async update(id, input) {
|
|
69
|
+
if (!await this.findById(id)) return null;
|
|
70
|
+
const updates = {};
|
|
71
|
+
if (input.name !== void 0) updates.name = input.name;
|
|
72
|
+
if (input.role !== void 0) updates.role = UserRepository.resolveRole(input.role);
|
|
73
|
+
if (input.avatarUrl !== void 0) updates.avatar_url = input.avatarUrl;
|
|
74
|
+
if (input.data !== void 0) updates.data = JSON.stringify(input.data);
|
|
75
|
+
if (Object.keys(updates).length > 0) await this.db.updateTable("users").set(updates).where("id", "=", id).execute();
|
|
76
|
+
return this.findById(id);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Delete a user
|
|
80
|
+
*/
|
|
81
|
+
async delete(id) {
|
|
82
|
+
return ((await this.db.deleteFrom("users").where("id", "=", id).executeTakeFirst()).numDeletedRows ?? 0) > 0;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Count users
|
|
86
|
+
*/
|
|
87
|
+
async count(role) {
|
|
88
|
+
let query = this.db.selectFrom("users").select((eb) => eb.fn.count("id").as("count"));
|
|
89
|
+
if (role !== void 0) query = query.where("role", "=", UserRepository.resolveRole(role));
|
|
90
|
+
const result = await query.executeTakeFirst();
|
|
91
|
+
return Number(result?.count || 0);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Check if email exists
|
|
95
|
+
*/
|
|
96
|
+
async emailExists(email) {
|
|
97
|
+
return !!await this.db.selectFrom("users").select("id").where("email", "=", email.toLowerCase()).executeTakeFirst();
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Convert database row to User object
|
|
101
|
+
*/
|
|
102
|
+
rowToUser(row) {
|
|
103
|
+
return {
|
|
104
|
+
id: row.id,
|
|
105
|
+
email: row.email,
|
|
106
|
+
name: row.name,
|
|
107
|
+
role: UserRepository.toRole(row.role),
|
|
108
|
+
avatarUrl: row.avatar_url,
|
|
109
|
+
emailVerified: row.email_verified === 1,
|
|
110
|
+
data: row.data ? JSON.parse(row.data) : null,
|
|
111
|
+
createdAt: row.created_at
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
/** Map of role name strings to numeric levels */
|
|
115
|
+
static ROLE_NAME_TO_LEVEL = {
|
|
116
|
+
subscriber: 10,
|
|
117
|
+
contributor: 20,
|
|
118
|
+
author: 30,
|
|
119
|
+
editor: 40,
|
|
120
|
+
admin: 50
|
|
121
|
+
};
|
|
122
|
+
/** Valid numeric role levels */
|
|
123
|
+
static VALID_LEVELS = new Set([
|
|
124
|
+
10,
|
|
125
|
+
20,
|
|
126
|
+
30,
|
|
127
|
+
40,
|
|
128
|
+
50
|
|
129
|
+
]);
|
|
130
|
+
/**
|
|
131
|
+
* Resolve a role name or number to a valid numeric UserRole.
|
|
132
|
+
* Accepts both string names ("admin") and numeric levels (50).
|
|
133
|
+
*/
|
|
134
|
+
static resolveRole(role) {
|
|
135
|
+
if (typeof role === "string") {
|
|
136
|
+
const level = UserRepository.ROLE_NAME_TO_LEVEL[role];
|
|
137
|
+
if (level === void 0) throw new Error(`Invalid role name: ${role}`);
|
|
138
|
+
return level;
|
|
139
|
+
}
|
|
140
|
+
if (!UserRepository.VALID_LEVELS.has(role)) throw new Error(`Invalid role level: ${role}`);
|
|
141
|
+
return role;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Convert a raw DB integer to a typed UserRole.
|
|
145
|
+
* Falls back to subscriber (10) for unknown values.
|
|
146
|
+
*/
|
|
147
|
+
static toRole(level) {
|
|
148
|
+
if (UserRepository.VALID_LEVELS.has(level)) return level;
|
|
149
|
+
return 10;
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
|
|
153
|
+
//#endregion
|
|
154
|
+
export { UserRepository as t };
|